Spatially Decorrelated Data Blocks for Fast Parallel Decoding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data compression methods for GPUs and CPUs face challenges in balancing compression speed with memory bandwidth efficiency, particularly in lossless compression processes, and struggle with complex decoding due to variable length encoding schemes.

Innovation Solution

The method involves performing entropy encoding on 2x2 sets of data values with indications in the header for bit lengths, and using a spatial decorrelation module to reorganize and process data blocks in a way that simplifies decoding by allowing bit boundaries to be determined quickly, enabling efficient compression and decompression with reduced latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If variable length encoding schemes are used to compress data, then compression ratio is improved, but decoding complexity increases

Engineering Contradiction:
Improvedata sizeVSAvoiddecoding complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent segments the data processing into distinct stages: reorganizing input blocks into transposed blocks, performing spatial decorrelation on structured data, and then applying entropy encoding. This segmentation allows each stage to operate independently and efficiently, with the final stage using simplified fixed-length encoding based on header information rather than complex variable-length decoding

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by reorganizing and decorrelating the data before entropy encoding. The spatial decorrelation module processes the data in advance to create a structured format with known bit lengths, so that the subsequent encoding stage can use simple fixed-length encoding with header indications rather than complex variable-length encoding

Inventive Principle:
Principle #10Preliminary action

2Productivity

If compression processes are performed at high speed, then productivity is improved, but latency increases

Engineering Contradiction:
Improvecompression speedVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent enables continuous processing by organizing the data flow through reorganization and spatial decorrelation modules that prepare data in advance for encoding. The parallel processing capability and pipelined architecture allow compression operations to proceed continuously without idle periods, maintaining high throughput while minimizing latency through efficient data preparation

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent employs dynamic processing where the compression system can adapt its operation mode based on requirements. The spatial decorrelation module can process data in parallel streams, and the encoding stage can operate at different rates for compression versus decompression, allowing the system to optimize for either speed or latency depending on the operational context

Inventive Principle:
Principle #15Dynamics

3Reliability

If memory bandwidth is increased to handle higher quality rendering, then rendering quality is improved, but power consumption increases

Engineering Contradiction:
Improverendering qualityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent changes the parameters of data representation by applying spatial decorrelation transforms that exploit spatial redundancy in the data. This transforms the data into a form that requires fewer bits to represent the same information quality, thereby reducing memory bandwidth requirements and associated power consumption while maintaining rendering quality

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10403004B2Compressing blocks of data values by performing spatial decorrelation on reorganized blocks
Publication Date: 2019.09.03 IMAGINATION TECH LTD
  • US10403004B2 patent drawing
  • US10403004B2 patent drawing
  • US10403004B2 patent drawing

AI summary

Data compression (and corresponding decompression) is used to compress blocks of data values involving processes including one or more of color decorrelation, spatial decorrelation, entropy encoding and packing. The entropy encoding generates encoded data values which have variable sizes (in terms of the number of bits). The entropy encoding uses size indications for respective sets of data values to indicate the number of bits used for the encoded data values of the set. The size indications allow the encoded data values to be parsed quickly (e.g. in parallel).