10-Bit Pixel Compression With HDR Flag for Random Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data compression methods for GPUs and CPUs face challenges in reducing memory bandwidth and storage space while maintaining efficient random access and compression ratios, especially when dealing with 10-bit pixel data, due to limitations in memory transfer bursts and the need for index management.

Innovation Solution

A method is described for converting 10-bit pixel data to 8-bit data by determining the Most Significant Bit (MSB) status of red, green, and blue channels, setting an HDR flag, and either converting or truncating the data accordingly, with the HDR flag appended to the alpha channel, to achieve efficient data compression and decompression.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data compression is applied to reduce memory bandwidth and storage space, then memory bandwidth and storage space are reduced, but random access efficiency and compression ratio guarantees deteriorate

Engineering Contradiction:
Improvememory bandwidthVSAvoidrandom access efficiency
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent segments pixel data into 2x2 blocks and processes each block independently with its own compression parameters. This segmentation allows random access to individual blocks without decompressing entire frames, improving random access efficiency while maintaining compression benefits.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary compression format that stores pixel data in a compressed representation with embedded metadata about compression parameters. This intermediary format enables both efficient storage and selective decompression for random access without requiring full decompression.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If 10-bit pixel data is compressed to reduce data size, then storage space is reduced, but data precision and quality deteriorate

Engineering Contradiction:
Improvestorage spaceVSAvoidpixel data precision
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent changes the precision parameter dynamically based on the block characteristics. For blocks with high variation, 10-bit precision is maintained; for blocks with low variation, compression to fewer bits is applied. This parameter change approach reduces storage space while preserving precision where needed.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies different compression levels to different 2x2 pixel blocks based on their local characteristics. Blocks requiring high precision maintain 10-bit depth, while blocks tolerant of compression use reduced precision. This local quality approach optimizes the balance between storage space and data precision.

Inventive Principle:
Principle #3Local quality

3Reliability

If higher quality rendering algorithms are used, then rendering quality is improved, but memory bandwidth consumption increases

Engineering Contradiction:
Improverendering qualityVSAvoidmemory bandwidth
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent performs preliminary compression of pixel data before it enters the rendering pipeline. By pre-compressing data and storing it in a compact format, the patent reduces the memory bandwidth required to transfer data through subsequent rendering stages while maintaining the ability to achieve high rendering quality when needed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11831342B2Guaranteed data compression
Publication Date: 2023.11.28 IMAGINATION TECH LTD
  • US11831342B2 patent drawing
  • US11831342B2 patent drawing
  • US11831342B2 patent drawing

AI summary

A method of converting 10-bit pixel data (e.g. 10:10:10:2 data) into 8-bit pixel data involves converting the 10-bit values to 8-bits using a technique that is selected dependent upon the values of the MSBs of the 10-bit values and setting the value of an HDR flag dependent upon the values of the MSBs. The HDR flag is appended to the 3-bit channel.