LZ Data Block Rearrangement for Smaller Offset Codewords
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
LZ data compression techniques require efficient reduction of codeword size to achieve higher data compression, particularly due to the high bit consumption of offset values in codewords, which affects storage and transmission efficiency.
Innovation Solution
A method involving the rearrangement of data blocks in the input data stream using an affinity array formed by comparing character sequences with previously processed blocks to identify match locations and lengths, thereby reducing codeword size through strategic reordering and encoding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the offset in a codeword is increased to reference characters further back in the dictionary, then the reference capability is improved, but the number of bits needed to encode the codeword increases
Solution Approach 1:
The codeword is segmented into multiple components: a shortened offset field (5 bits instead of more), a length field, and additional control bits. This segmentation allows the offset to reference further back in the dictionary while keeping each individual field compact, resolving the contradiction between reference capability and bit consumption.
Solution Approach 2:
The patent introduces a new dimension to the codeword structure by adding length fields and control bits that work together with the offset. Instead of simply increasing offset size, the solution adds dimensional complexity to the encoding scheme, allowing efficient referencing of distant characters through a combination of fields rather than a single large offset value.
2Quantity of substance
If the codeword size is reduced to achieve higher compression, then the data compression ratio is improved, but the complexity of the encoding scheme increases
Solution Approach 1:
The patent performs preliminary actions by pre-defining the codeword structure with specific field allocations (offset, length, control bits) before the actual encoding process. The affinity array is pre-computed to identify potential matches, and the encoding scheme is prepared in advance with all necessary components, reducing the complexity during runtime execution while maintaining compact codeword size.
Solution Approach 2:
The patent changes the parameters of the encoding scheme by introducing variable-length fields and control bits that adapt to different encoding scenarios. The offset field is optimized to 5 bits, length fields are dynamically allocated, and control bits adjust the interpretation of other fields. These parameter changes allow compact codewords while managing complexity through systematic parameter optimization.
Data Source
AI summary
A technique for rearranging an input data stream for LZ data compression system to achieve a higher data compression. In one example embodiment, this is achieved by receiving an input data stream of a sequence of data blocks. Each of the received data blocks is then compared with each of a predetermined number of previously processed data blocks. One or more match locations and their associated match lengths for each of the data blocks are determined as a function of the comparison. An affinity array is then formed, such that each element in the affinity array comprises an affinity number based on the one or more match locations and their associated match lengths. The sequence of data blocks in the input data stream is then rearranged using the affinity array to form a new data stream. The new data stream is then encoded to achieve the higher data compression.


