namespace details¶
// typedefs typedef ap_uint <BITS_PER_LOOP> Digit // enums enum xfBlockType_t enum xfLitBlockType_t enum xfSymbolCompMode_t // structs struct FseBSState struct HuffmanTable // global variables static const uint8_t RADIX static const uint8_t BITS_PER_LOOP static const ap_uint <c_tgnSymbolBits> INTERNAL_NODE const uint32_t c_magicNumber const uint32_t c_skipFrameMagicNumber const uint32_t c_skippableFrameMask const uint16_t c_maxCharLit const uint16_t c_maxCharDefOffset const uint16_t c_maxCharOffset const uint16_t c_maxCharMatchlen const uint16_t c_maxCharHuffman const uint32_t c_baseLL[c_maxCharLit+1] const uint32_t c_baseML[c_maxCharMatchlen+1] const uint8_t c_extraBitsLL[c_maxCharLit+1] const uint8_t c_extraBitsML[c_maxCharMatchlen+1] const int16_t c_defaultDistribution[c_maxCharLit+c_maxCharDefOffset+c_maxCharMatchlen+3]
huffmanProcessingUnit¶
#include "huffman_encoder.hpp"
void huffmanProcessingUnit ( hls::stream <ap_uint <9>>& inStream, hls::stream <ap_uint <32>>& outStream, hls::stream <uint32_t>& inputSizeStream )
This module does updates lz77 byte data to 32bit data.
Parameters:
inStream | input packet of 8bit contains either literal or marker or match length or distance information. |
outStream | output 32bit compressed data |
inputSizeStream | input size of each block |
huffmanProcessingUnitStatic¶
#include "huffman_encoder.hpp"
void huffmanProcessingUnitStatic ( hls::stream <ap_uint <9>>& inStream, hls::stream <ap_uint <32>>& outStream, hls::stream <bool>& inEos, hls::stream <bool>& endOfBlock )
This module does updates lz77 byte data to 32bit data.
Parameters:
inStream | input packet of 8bit contains either literal or marker or match length or distance information. |
outStream | output 32bit compressed data |
inputSizeStream | input size of each block |