Sparse Data Compression Circuit With Multi-Stage Bitmask Decompression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern digital systems face inefficiencies in processing large volumes of digital data due to the presence of numerous zero values, which lead to increased memory bandwidth overhead and computation burdens, particularly in AI applications where sparsity is a critical feature.

Innovation Solution

A hierarchical compression technique is employed, utilizing a multi-stage compression algorithm that stores sparse data sets with bit masks to reduce memory read and write times, allowing for faster data retrieval and processing by decompressing data into manageable sets that can be processed directly or further decompressed by processors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is stored in uncompressed format in memory, then data retrieval is straightforward, but memory bandwidth overhead increases and memory transaction times increase

Engineering Contradiction:
Improvedata processing speedVSAvoidmemory transaction time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments data storage by separating non-zero values from zero values and using bit masks to indicate positions. This segmentation allows the system to store only essential data (non-zero values) along with positional information (bit masks), reducing overall memory bandwidth requirements while enabling efficient retrieval through selective decompression of only necessary data portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and removes redundant zero values from the data set, storing only non-zero values along with bit masks that indicate their original positions. This extraction eliminates unnecessary data transmission over the memory bus, directly reducing memory bandwidth overhead and transaction times while maintaining the ability to reconstruct the complete data set when needed.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of energy

If compression techniques are applied to sparse data sets, then memory bandwidth efficiency increases, but device complexity increases due to multi-stage compression and decompression algorithms

Engineering Contradiction:
Improvememory bandwidth overheadVSAvoidcompression algorithm complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies preliminary compression action during data storage, transforming sparse data sets into a compact format with bit masks before writing to memory. This preliminary compression eliminates the need for decompression during subsequent read operations, as the compressed format with positional masks can be directly utilized by processing circuits, thereby reducing memory bandwidth overhead without requiring complex real-time decompression logic.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces bit masks as an intermediary element that bridges the compressed data format and the processing requirements. These bit masks serve as a simple mediator that indicates the positions of non-zero values, allowing processing circuits to efficiently identify and operate on relevant data without requiring complex decompression algorithms, thus reducing device complexity while maintaining compression benefits.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If zero values are included in data processing, then complete data integrity is maintained, but computation burden increases and processing efficiency decreases

Engineering Contradiction:
Improvedata integrityVSAvoidcomputation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts zero values from the data processing flow by using bit masks to identify and selectively process only non-zero values. This extraction maintains data integrity because the positional information in the bit masks ensures that non-zero values are correctly placed during reconstruction, while simultaneously eliminating computation burden by preventing processors from performing unnecessary operations on zero values.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent converts the presence of numerous zero values, which traditionally represents a harmful overhead for computation, into a benefit by using the sparsity pattern itself to create compact bit masks. These bit masks efficiently encode positional information, allowing the system to leverage the zero-value dominance as a feature rather than a bug, thereby improving both data integrity and computation efficiency.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS11989414B2Method and apparatus for compressing and decompressing sparse data sets
Publication Date: 2024.05.21 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11989414B2 patent drawing
  • US11989414B2 patent drawing
  • US11989414B2 patent drawing

AI summary

Embodiments of the present disclosure include a digital circuit and method for multi-stage compression. Digital data values are compressed using a multi-stage compression algorithm and stored in a memory. A decompression circuit receives the values and performs a partial decompression. The partially compressed values are provided to a processor, which performs the final decompression. In one embodiment, a vector of N length compressed values are decompressed using a first bit mask into two N length sets having non-zero values. The two N length sets are further decompressed using two M length bit masks into M length sparse vectors, each having non-zero values.