Image Block Decompression for Random Pixel Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image data compression methods require decompressing entire blocks to access individual values, leading to inefficient data access for rendering units, especially in graphics processing units (GPUs) where only a few pixels are needed for rendering.
Innovation Solution
Compress image data using fixed-length compression algorithms that allow individual values to be accessed without decompressing the whole block by representing each value with common base information and a fixed-length parameter, enabling random access to compressed data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If entire blocks of image data are compressed using traditional methods, then memory bandwidth is reduced, but random access to individual values becomes inefficient
Solution Approach 1:
The patent divides the compressed block into multiple sub-blocks, where each sub-block can be independently decompressed. This segmentation allows the rendering unit to access only the specific sub-block containing the needed pixel values, rather than decompressing the entire block, thereby enabling efficient random access while maintaining compression benefits.
Solution Approach 2:
The patent applies different compression strategies to different regions of the image data based on their accessibility patterns. Frequently accessed regions (such as those near the beginning of a block) use compression schemes that allow quick decompression, while less frequently accessed regions use more aggressive compression, optimizing the balance between memory bandwidth and access efficiency.
2Use of energy by moving object
If compression is applied to reduce data transfer, then power consumption is reduced, but decompression complexity increases
Solution Approach 1:
By segmenting the compressed data into sub-blocks with independent decompression capabilities, the patent reduces the average decompression complexity. The decompression unit only needs to process the specific sub-block containing the required data, rather than decompressing the entire compressed block, thereby lowering both power consumption and computational complexity.
Solution Approach 2:
The patent implements partial decompression where only the necessary portion of the compressed block is decompressed based on the rendering unit's needs. This partial action approach avoids the excessive decompression of entire blocks, reducing both power consumption and decompression complexity while maintaining data integrity for accessed regions.
3Quantity of substance
If block size is increased to improve compression ratio, then memory bandwidth is reduced, but access time to individual pixels increases
Solution Approach 1:
The patent divides large compressed blocks into smaller sub-blocks that can be independently accessed and decompressed. This segmentation allows the system to maintain large block sizes for compression efficiency while providing quick access to individual sub-blocks, thereby reducing access time without sacrificing memory bandwidth benefits.
Solution Approach 2:
The patent introduces a hierarchical structure with blocks containing multiple sub-blocks, adding a dimensional layer to the data organization. This hierarchical arrangement allows simultaneous optimization of compression ratio (at the block level) and access time (at the sub-block level), as the rendering unit can quickly navigate to and access specific sub-blocks within larger compressed blocks.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Methods and decompression units for decompressing data from a compressed block of image data, the compressed block of image data representing a block of image data comprising a plurality of image element values, the image element values being divisible into at least a first value and a second value such that the block of image data comprises a two-dimensional block of first values. The method comprises: analysing a header of the compressed block of image data to identify (i) a location in a body of the compressed block of image data of a fixed-length parameter that corresponds to a first desired value in the two-dimensional block of first values, and (ii) common base information for the first desired value, the common base information being common to a first set of values comprising all of the two-dimensional block of first values or a portion of the two-dimensional block of first values that includes the first desired value; retrieving the fixed-length parameter that corresponds to the first desired value from the identified location in the body of the compressed block of image data; and generating the first desired value from the common base information and the fixed-length parameter.