Parallel Symbol Decoder Layout for Variable-Length Decompression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data compression algorithms, the variable length of symbols makes parallel decoding operations inefficient due to the unknown starting location of the next symbol in a compressed data stream, complicating the decompression process.
Innovation Solution
A data decompressor system that uses multiple symbol decoders to speculatively decode windows of data in parallel, with a symbol strider selecting valid decoder outputs based on the size of previously decoded symbols, allowing for efficient identification of the next valid symbol's location across windows.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple symbol decoders operate in parallel to decode variable length symbols, then the decompression speed is improved, but the difficulty of identifying valid symbols increases due to variable lengths
Solution Approach 1:
The patent applies preliminary action by having multiple symbol decoders speculatively decode symbols starting at different positions in parallel before knowing which position is actually valid. Each decoder preemptively processes a window of data assuming it contains the start of a valid symbol, and the results are later validated by checking if the decoded symbol length aligns with the actual data structure. This allows the system to identify valid symbols efficiently without sequential searching.
2Loss of substance
If variable length symbols are used for data compression, then the compression ratio is improved, but the complexity of the decoding process increases
Solution Approach 1:
The patent applies segmentation by dividing the compressed data stream into multiple overlapping windows, with each window being processed by a separate symbol decoder. This segmentation allows parallel processing of different potential symbol starting positions simultaneously. The complexity is distributed across multiple simple decoder units rather than requiring one complex sequential decoder, making the overall system more manageable while maintaining efficient decompression.
3Productivity
If parallel decoding operations are performed on variable length symbols, then the processing throughput is improved, but the accuracy of symbol boundary detection deteriorates
Solution Approach 1:
The patent applies feedback by using the decoded symbol length information from each parallel decoder to validate whether that decoder correctly identified a valid symbol boundary. The system checks if the decoded length is consistent with the expected symbol structure, and only accepts results from decoders that pass this validation. This feedback mechanism ensures accurate symbol boundary detection even while multiple decoders operate in parallel, preventing false positives from incorrect boundary identifications.
Data Source
AI summary
In some data compression algorithms and/or standards, the compressed data comprises variable length symbols. A set of parallel decoders speculatively decode/decompress a window (i.e., sub-block) of data. Each of the decoders attempts to decode/decompress a symbol that starts at a different location in the compressed data block. Once the decoders have finished decoding a symbol (or determined that a valid symbol does not begin at the beginning of the window assigned to that decoder), a symbol strider selects the decoder outputs corresponding to valid symbols. The symbol strider successively selects decoder outputs based on the size of the previous symbols that were found to be valid. When the next valid symbol begins outside the current window, its location is stored to indicate the location of the next valid symbol in a subsequent window.


