Mixed-Precision Compression for Parallel Random Bit-Stream Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedata sizeVSAvoidprocessing speed
Core Design Contradiction:
Loss of substanceVSProductivity

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

Inventive Principle:
Principle #1Segmentation

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

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If zeros are retained in the bit streams, then data integrity is maintained, but storage requirements and power consumption increase

Engineering Contradiction:
Improvedata integrityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

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

Inventive Principle:
Principle #2Taking out (Extraction)

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

Inventive Principle:
Principle #3Local quality

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

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidnumber of compression modules
Core Design Contradiction:
ProductivityVSDevice complexity

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

Inventive Principle:
Principle #6Universality (Multi-functionality)

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

Inventive Principle:
Principle #7Nested doll (Nesting)

4Loss of substance

If variable length bit streams are compressed, then compression efficiency improves, but random access capability deteriorates due to unequal stream lengths

Engineering Contradiction:
Improvecompression ratioVSAvoidrandom access capability
Core Design Contradiction:
Loss of substanceVSEase of operation

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

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11271588B2Mixed-precision compression with random access
Publication Date: 2022.03.08 SAMSUNG ELECTRONICS CO LTD
  • US11271588B2 patent drawing
  • US11271588B2 patent drawing
  • US11271588B2 patent drawing

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.