Global Namespace
// namespaces
namespace xf
namespace xf::compression
namespace xf::compression::details
// typedefs
typedef ap_uint <IN_BITWIDTH> in_t
typedef ap_uint <OUT_BITWIDTH> out_t
typedef ap_uint <IN_BITWIDTH> in_t
typedef ap_uint <OUT_BITWIDTH> out_t
typedef ap_uint <IN_BITWIDTH> in_t
typedef ap_uint <OUT_BITWIDTH> out_t
typedef ap_axiu <16, 0, 0, 0> in_t
typedef ap_axiu <64, 0, 0, 0> out_t
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_uint <c_streamWidth> data_t
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, 32, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, 32, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_uint <32> compressd_dt
typedef ap_uint <64> lz4_compressd_dt
typedef ap_uint <8> uintV_t
typedef ap_uint <32> data_t
typedef ap_uint <512> data_t
typedef ap_uint <32> compressd_dt
typedef ap_uint <8> uintV_t
typedef ap_uint <OUTPUT_BYTES*8> uintV_t
typedef ap_uint < (OUTPUT_BYTES*8)+8> uintS_t
typedef ap_uint <512> data_t
typedef ap_uint <8> uintV_t
typedef ap_uint <32> compressd_dt
typedef ap_uint <8> uintV_t
typedef ap_uint <MULTIPLE_BYTES*8> uintS_t
typedef ap_uint < (MULTIPLE_BYTES*8)+8> uintV_t
typedef ap_uint <MULTIPLE_BYTES*8> uintS_t
typedef ap_uint < (MULTIPLE_BYTES*8)+8> uintV_t
typedef ap_axiu <16, 0, 0, 0> in_t
typedef ap_axiu <MULTIPLE_BYTES*8, TUSER_WIDTH, 0, 0> out_t
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
typedef ap_axiu <GMEM_DWIDTH, 0, 0, 0> in_dT
typedef ap_axiu <GMEM_DWIDTH, TUSER_DWIDTH, 0, 0> out_dT
typedef ap_axiu <32, 0, 0, 0> size_dT
// structs
template <
class DST,
int VEC_LEN,
int DS_DWIDTH,
int STROBE_DWIDTH = maxBitsUsed(VEC_LEN)
>
struct DSVectorPack
template <
int CODE_LEN,
int STROBE_DWIDTH = maxBitsUsed(CODE_LEN)
>
struct HuffmanCodePack
template <
int DATAWIDTH,
int VEC_LEN,
int STROBE_DWIDTH = maxBitsUsed(VEC_LEN)
>
struct IntVectorPack
// global variables
const uint8_t fixed_litml_op[STABLE_SIZE]
const uint8_t fixed_litml_bits[STABLE_SIZE]
const uint16_t fixed_litml_val[STABLE_SIZE]
const int c_gmemBurstSize
const int c_gmemBurstSize
const int gz_max_literal_count
const auto c_maxBits
const auto c_literals
const auto c_lengthCodes
const auto c_literalCodes
const auto c_distanceCodes
const auto c_blCodes
const auto c_heapSize
const auto c_maxBlBits
const auto c_reusePrevBlen
const auto c_reuseZeroBlen
const auto c_reuseZeroBlen7
const auto c_fixedDecoder
const auto c_dynamicDecoder
const auto c_fullDecoder
const uint16_t c_frequency_bits
const uint16_t c_codeword_bits
const uint16_t c_litCodeCount
const uint16_t c_dstCodeCount
const uint16_t c_blnCodeCount
const uint16_t c_maxCodeBits
const uint16_t c_maxBLCodeBits
const uint16_t c_length_codes
const uint16_t c_max_match
const uint16_t c_min_match
const uint16_t c_distance_codes
const uint8_t length_code[c_max_match+1]
const uint8_t dist_code[512]
const uint16_t base_dist[c_distance_codes]
const uint8_t base_length[c_length_codes]
const uint16_t lit_code_fixed[]
const ap_uint <4> lit_blen_fixed[]
const uint16_t dist_codes_fixed[]
const ap_uint <4> dist_blen_fixed[]
auto constexpr PARALLEL_BYTES
auto constexpr CONST_SIZE
auto constexpr HOST_BUFFER_SIZE
auto constexpr c_size
auto constexpr ADLER32
auto constexpr CRC32
auto constexpr CHECKSUM_MODE
auto constexpr PARALLEL_BYTE
auto constexpr CONST_SIZE
auto constexpr HOST_BUFFER_SIZE
auto constexpr c_size
auto constexpr W
auto constexpr HOST_BUFFER_SIZE
auto constexpr PARALLEL_BYTE
auto constexpr CONST_SIZE
auto constexpr HOST_BUFFER_SIZE
auto constexpr c_size
auto constexpr W
auto constexpr HOST_BUFFER_SIZE
const uint32_t sizeof_in
const uint32_t strbSize
const uint32_t sizeof_in
const uint32_t strbSize
const uint32_t sizeof_in
const uint32_t strbSize
const uint32_t sizeof_in
const uint32_t strbSize
constexpr uint32_t strbSize
constexpr uint32_t c_size
constexpr uint32_t cc_size
const uint32_t c_size
const uint32_t c_size
const uint32_t c_size
const int c_streamWidth
constexpr uint32_t c_size
const uint32_t c_size
const uint32_t c_size
const uint32_t c_size
int const c_minMatch
int const c_matchLevel
int const c_minOffset
int const c_lz4MaxLiteralCount
const uint32_t c_size
const uint32_t c_csize
const uint32_t c_size
const uint32_t c_csize
const uint32_t c_size
const uint32_t c_csize
const uint32_t c_no_blocks
const uint32_t c_inSizeV
const uint32_t c_noElements
const uint32_t c_inSizeV
int const c_minMatch
const int c_snappyMaxLiteralStream
int const c_factor
const uint32_t sizeof_in
const uint32_t strbSize
const uint32_t c_size
const uint32_t c_size
const uint32_t c_size
const uint32_t c_size
// macros
#define AOP
#define AOP
#define BLOCK_LENGTH
#define BLOCK_LENGTH
#define BLOCK_LENGTH
#define BLOCK_LENGTH
#define BLOCK_LENGTH
#define BLOCK_SIZE
#define BLOCK_SIZE
#define BLOCK_SIZE
#define BLOCK_SIZE
#define BLOCK_SIZE
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BLOCK_SIZE_IN_KB
#define BSIZE_IN_KB
#define BSIZE_IN_KB
#define BURST_SIZE
#define BURST_SIZE
#define BYTE_CNT
#define BYTE_CNT
#define CMP_CORES
#define CONST_SIZE
#define CONST_SIZE
#define CONST_SIZE
#define CONST_SIZE
#define DISABLE_DEPENDENCE
#define DISABLE_DEPENDENCE
#define GET_DIFF_IF_BIG( \
x, \
y \
)
#define GET_DIFF_IF_BIG( \
x, \
y \
)
#define GMEM_BURST_SIZE
#define GMEM_BURST_SIZE
#define GMEM_BURST_SIZE
#define GMEM_BURST_SIZE
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GMEM_DWIDTH
#define GZIP_FORMAT
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HISTORY_SIZE
#define HOST_BUFFER_SIZE
#define HUFFMAN_TYPE
#define HUFFMAN_TYPE
#define HUFFMAN_TYPE
#define HUFFMAN_TYPE
#define HUFFMAN_TYPE
#define HUFFMAN_TYPE
#define INPUT_BYTES
#define INPUT_SIZE
#define INPUT_SIZE
#define INPUT_SIZE_IN_MB
#define INPUT_SIZE_IN_MB
#define INSIZE_RANGE_14BIT
#define INSIZE_RANGE_21BIT
#define INSIZE_RANGE_7BIT
#define IN_BITWIDTH
#define IN_BITWIDTH
#define IN_BITWIDTH
#define IN_BITWIDTH
#define IN_BITWIDTH
#define IN_DATAWIDTH
#define IN_DATAWIDTH
#define LL_MODEL
#define LL_MODEL
#define LL_MODEL
#define LL_MODEL
#define LL_MODEL
#define LL_MODEL
#define LOW_OFFSET
#define LOW_OFFSET
#define LOW_OFFSET
#define LOW_OFFSET
#define LOW_OFFSET
#define LOW_OFFSET
#define LZ_MAX_OFFSET_LIMIT
#define LZ_MAX_OFFSET_LIMIT
#define MARKER
#define MATCH_LEN
#define MATCH_LEN
#define MAX_LIT_COUNT
#define MAX_LIT_COUNT
#define MAX_LIT_STREAM_SIZE
#define MAX_MATCH_LEN
#define MAX_MATCH_LEN
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MAX_OFFSET
#define MIN_BLOCK_SIZE
#define MIN_BLOCK_SIZE
#define MIN_MATCH_LEN
#define MIN_MATCH_LEN
#define MULTIPLE_BYTES
#define MULTIPLE_BYTES
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define NUM_BLOCKS
#define OFFSET_WINDOW
#define OFFSET_WINDOW
#define OUTPUT_BYTES
#define OUTPUT_BYTES
#define OUT_BITWIDTH
#define OUT_BITWIDTH
#define OUT_BITWIDTH
#define OUT_BITWIDTH
#define OUT_BITWIDTH
#define OUT_BITWIDTH
#define OUT_DATAWIDTH
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BLOCK
#define PARALLEL_BYTES_READ
#define PARALLEL_BYTES_READ
#define PARALLEL_HUFFMAN_UNITS
#define PARALLEL_LITERALS
#define PARALLEL_LITERALS
#define STABLE_SIZE
#define STABLE_SIZE
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STRATEGY
#define STREAM_UTILS_MM2S_IF_NOT_FULL( \
bIdx, \
outStream, \
is_full, \
read_idx, \
write_idx, \
local_buffer \
)
#define STREAM_UTILS_S2MM_IF_NOT_EMPTY( \
i, \
instream, \
burst_size, \
input_size, \
read_size, \
write_size, \
write_idx \
)
#define STREAM_UTILS_S2MM_READ_SIZE( \
i, \
instream, \
end_of_stream \
)
#define STRTGY
#define STRTGY
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_DWIDTH
#define TUSER_WIDTH
#define W
#define WINDOW_SIZE
#define WINDOW_SIZE
#define WINDOW_SIZE
#define ZLIB_FORMAT
#define ZSTD
#define ZSTD
#define ZSTD
#define ZSTD_BLOCK_SIZE
#define ZSTD_BLOCK_SIZE
#define ZSTD_BLOCK_SIZE_KB
#define d_code( \
dist, \
dist_code \
)
#define d_code( \
dist, \
dist_code \
)
#define dataSize
#define inWidth
#define inWidth
#define outWidth
#define outWidth
#define testDataLen