lzMultiByteDecompress - 2023.1 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.1 English
#include "lz_decompress.hpp"
template <
    int PARALLEL_BYTES,
    int HISTORY_SIZE,
    class SIZE_DT = uint8_t,
    class SIZE_OFFSET = ap_uint<16>
    >
void lzMultiByteDecompress (
    hls::stream <SIZE_DT>& litlenStream,
    hls::stream <ap_uint <PARALLEL_BYTES*8>>& litStream,
    hls::stream <SIZE_OFFSET>& offsetStream,
    hls::stream <SIZE_DT>& matchlenStream,
    hls::stream <ap_uint < (PARALLEL_BYTES*8)+PARALLEL_BYTES>>& outStream
    )

This module writes the literals to the output stream as it is and when match length and offset are read, the literals will be read from the local dictionary based on offset until match length. This module can process data in parallel defined by PARALLEL_BYTES template argument.

Parameters:

PARALLEL_BYTES number of bytes processed in parallel (4, 8)
HISTORY_SIZE history size
SIZE_DT input data type
SIZE_OFFSET offset data type
litlenStream literal length stream
litStream literals only stream
offsetStream offset only stream
matchlenStream match length only stream
outStream output stream