Mixed-Precision Compression for Parallel Random Bit-Stream Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing multichannel data systems face inefficiencies in compressing and decompressing bit streams due to the serial nature of current algorithms, which fail to effectively handle multiple channels simultaneously, particularly in neural inference accelerator hardware where many zeros lead to increased power and storage requirements in DRAM and SRAM.
Innovation Solution
A data compression system utilizing a zero-value remover, zero bit mask generator, and non-zero values packer, along with a butterfly shuffler, to efficiently pack and unpack bit streams in parallel, removing zeros and rearranging data to achieve equal bit-stream lengths, thereby reducing storage and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If serial compression algorithms (Huffman, ZIP, run-length encoding) are used to compress bit streams, then compression is achieved, but processing speed and productivity deteriorate because only one data bit stream can be handled at a time
Solution Approach 1:
The patent divides the compression system into multiple independent parallel compression channels, each capable of processing one bit stream simultaneously. The segmented architecture allows 2N input bit streams to be processed in parallel through separate compression modules, achieving both compression and high productivity without the bottleneck of serial processing
Solution Approach 2:
The patent merges multiple parallel compression channels into a unified output structure, combining the compressed results from all channels into a single compressed data stream. This merging approach maintains the benefits of parallel processing while providing a consolidated output that achieves both compression efficiency and high processing throughput
2Reliability
If zeros are retained in the bit streams, then data integrity is maintained, but storage requirements and power consumption increase
Solution Approach 1:
The patent extracts and removes zero values from the input bit streams during the compression process, creating a filtered output that contains only non-zero data elements. This extraction approach reduces storage requirements and power consumption while maintaining data integrity through the use of zero-bit masks that track the positions of removed zeros for potential reconstruction
Solution Approach 2:
The patent applies different quality treatments to different parts of the data stream: non-zero values are preserved with full precision while zero values are removed or compressed. This local quality approach optimizes storage and power usage by applying compression selectively only where it benefits the overall system performance
3Productivity
If parallel processing of 2N bit streams is implemented, then productivity improves, but device complexity increases due to the need for multiple compression modules
Solution Approach 1:
The patent designs compression modules that can handle multiple functions: each module processes one bit stream through compression while also participating in the parallel architecture that handles 2N streams collectively. The universal design allows the same module structure to be replicated and configured for different numbers of parallel channels, reducing overall system complexity through standardization
Solution Approach 2:
The patent implements a nested architecture where individual compression modules are organized hierarchically within a larger parallel processing framework. The modules are nested in a structured arrangement that allows efficient resource sharing and coordinated operation, reducing complexity by organizing multiple modules in a systematic hierarchy rather than as independent scattered components
4Loss of substance
If variable length bit streams are compressed, then compression efficiency improves, but random access capability deteriorates due to unequal stream lengths
Solution Approach 1:
The patent changes the length parameter of all output bit streams to be equal, regardless of their original variable lengths. This parameter transformation is achieved through padding or truncation operations that standardize the output length across all parallel channels, enabling random access capability while maintaining the compression benefits achieved during processing
Data Source
AI summary
A data compressor includes a zero-value remover, a zero bit mask generator and a non-zero values packer. The zero-value remover receives 2N bit streams of values and outputs 2N non-zero-value bit streams having zero values removed from each respective bit stream based on a selected granularity of compression for values contained in the bit streams. The zero bit mask generator receives the 2N bit streams of values and generates a zero bit mask corresponding to the selected granularity of compression. Each zero bit mask indicates a location of a zero value based on the selected granularity of compression. The non-zero values packer receives the 2N non-zero-value bit streams and forms at least one first group of packed non-zero values.


