Radix Coding Buffer for Non-Power-of-2 Symbol Compression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data compression techniques face challenges in efficiently coding data when the number of possible symbols (g) is not a power of 2, as existing methods like Golomb coding and combinatorial coding struggle to achieve optimal compression efficiency.
Innovation Solution
The implementation of a radix coder that uses a buffer to efficiently code symbols with a range of values not limited to powers of 2, by employing a Last In First Out (LIFO) method and variable radix, allowing for adaptive buffer length adjustment based on data statistics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If Golomb coding or combinatorial coding is used for data compression, then compression can be achieved, but optimal compression efficiency cannot be achieved when the number of symbols (g) is not a power of 2
Solution Approach 1:
The patent changes the fundamental parameter of how symbols are encoded by using a buffer-based radix coding system that can accommodate any radix value (not just powers of 2). The buffer stores intermediate coding results and allows the system to handle variable-length codes efficiently, enabling optimal compression for any symbol range including non power-of-2 values.
Solution Approach 2:
The buffer acts as an intermediary structure between the input symbols and the final compressed output. It temporarily stores coding intermediates and allows the system to reconcile the mismatch between arbitrary symbol ranges and the binary output stream, enabling efficient compression without being constrained by power-of-2 limitations.
2Productivity
If a buffer is used to code symbols with variable radix, then near-optimal compression performance is achieved, but buffer capacity limitations must be managed
Solution Approach 1:
The patent implements dynamic buffer management where the buffer size and allocation are adapted based on the coding progress and data characteristics. The system can adjust the effective buffer capacity by varying the radix and managing when to flush buffered data to output, optimizing compression performance while adapting to buffer constraints.
Solution Approach 2:
The coding process is segmented into buffer-filled phases and flush phases. The buffer accumulates coding intermediates until it reaches capacity or optimal flush conditions, at which point the accumulated data is processed and output. This segmentation allows the system to achieve near-optimal compression while respecting buffer capacity limitations.
Data Source
AI summary
A method includes receiving, at a decoding device, first contents of a buffer, where the first contents of the buffer include at least a first data symbol. The first data symbol is coded into the first contents of the buffer based at least in part on a first radix of the first data symbol. The first data symbol is decoded from the first contents of the buffer. Based at least in part on the first radix of the first data symbol, it is determined whether the first contents of the buffer include a second data symbol. The second data symbol is decoded from the first contents of the buffer if the first contents include the second data symbol.


