10-Bit Data Compression Using Split MSB-LSB Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data compression and decompression technologies struggle to efficiently handle 10-bit data values, particularly in GPUs, due to the need for additional hardware resources and the inability of 8-bit configured units to handle 10-bit data, leading to increased silicon area and reduced image quality.
Innovation Solution
A method and units for compressing and decompressing the two least significant bits of 10-bit data values by mapping them onto specific encodings, using a combination of (2^m - 4) and four m-bit encodings, ensuring minimal error and high image quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If compression and decompression units are configured in hardware to handle 10-bit data values, then data compression capability for 10-bit data is improved, but silicon area increases significantly
Solution Approach 1:
The compression unit is designed to handle multiple data bit depths (8-bit and 10-bit) using the same hardware infrastructure. The system selectively applies different compression techniques based on the input data type, allowing one unit to serve multiple functions without requiring separate dedicated hardware for each data type.
Solution Approach 2:
The compression process is divided into two independent stages: first compressing the most significant bits (MSBs) using existing 8-bit compression units, then compressing the least significant bits (LSBs) separately. This segmentation allows the system to process 10-bit data using existing 8-bit hardware plus additional minimal logic for the remaining 2 bits.
2Area of stationary object
If 8-bit configured compression units are used for 10-bit data, then silicon area is reduced, but the units cannot properly handle 10-bit data values
Solution Approach 1:
The 10-bit data is segmented into MSBs (8 bits) and LSBs (2 bits). The existing 8-bit compression units process the MSBs, while a separate minimal compression logic handles the 2 LSBs. The results are then recombined to produce the final compressed 10-bit data, enabling proper 10-bit handling without requiring full 10-bit compression hardware.
3Productivity
If data compression is applied to reduce memory bandwidth, then latency and power consumption are reduced, but image quality may deteriorate
Solution Approach 1:
The compression algorithm processes MSBs and LSBs separately with different compression strategies. MSBs, which contain the most important visual information, are compressed with higher fidelity, while LSBs use a more aggressive compression scheme. This differential approach maintains overall image quality while achieving significant compression ratios.
Solution Approach 2:
The system dynamically adjusts compression parameters based on the specific data characteristics and quality requirements. By changing compression intensity and methodology for different bit portions and data types, the system optimizes the balance between compression ratio and image quality preservation.
Data Source
AI summary
A computer-implemented method for compressing, an input group of m data values compresses the two least significant bits of each of the data values by mapping the two least significant bits of each of the data values in the input group of m data values collectively onto an m-bit encoding and storing the m-bit encoding, the m-bit encoding being selected from 2m m-bit encodings, the 2m m-bit encodings comprising a first group of encodings comprising (2m−4) m-bit encodings and a second group of encodings comprising four m-bit encodings, wherein if the selected encoding is an encoding from the first group of encodings then the selected encoding represents the two least significant bits for a representative group of m data values in which the second least significant bit of each of the data values is the same as a respective bit of the m-bit encoding, and wherein if the selected encoding is an encoding from the second group of encodings then the selected encoding represents the two least significant bits for a representative group of m data values in which the two least significant bits for each of the data values in the representative group are equal to the two least significant bits of the other data values in the representative group.


