The following figure shows the block diagram of the example design for this core. The example design applies to all the configurations of the Decompression Mode.
The example design has two sets of block memories, one to store the compressed data and the other to store the decompressed data. Once the reset is released for the example design, the control logic sends the compressed data on the AXI4-Stream interface to the DUT. The control logic takes the decompressed data from the DUT and compares it with the data present in the block memory. The self-checking logic in the control logic block flags the Data Mismatch error port coming from the example design.
The block memories are filled with the required data using the MEM files. The MEM files corresponding to a sample compressed and a decompressed file are given along with the example design. There are different MEM files for different configurations of the core. For example, there is one MEM file for a 128-bit Input Data Width configuration and another for a 256-bit Input Data Width configuration.
Using the parameters in the example design top file, a custom file can also be given in the form of MEM files. In the example design, <component_name>_exdes.v is the top file. Compressed size and decompressed size for the custom file can be modified using the COMP_SIZE and DECOMP_SIZE parameters present in the example design top file. The custom compressed data and decompressed data MEM files can be put in the COMP_MEM and DECOMP_MEM parameters present in the example design top file.
The format of a MEM file compared to the hexdump of the file should look like Figure 2.