Parallel Arithmetic Coding With Forward Prediction for Bin Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional arithmetic coding techniques have limited throughput due to the sequential processing of bins, which restricts the efficiency of data compression systems.
Innovation Solution
A parallel processing system for arithmetic coding that utilizes forward prediction to determine possible ranges and low values for a second bin when a first bin is a most probable symbol (MPS), allowing simultaneous calculation and selection of resultant ranges and low values for multiple bins, thereby increasing throughput.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If sequential processing of bins is used in conventional arithmetic coding, then the coding operation can be performed accurately, but the throughput is limited
Solution Approach 1:
The patent applies preliminary action by pre-calculating possible range values and low values for the second bin before the first bin's actual range is known. When the first bin is an MPS, the system forward predicts multiple possible outcomes and stores them temporarily. Once the first bin's range is determined, the corresponding pre-calculated values for the second bin are selected, enabling parallel processing while maintaining accuracy.
2Productivity
If parallel processing of multiple bins is implemented, then throughput is increased, but the complexity of calculating and selecting ranges increases
Solution Approach 1:
The patent applies segmentation by dividing the processing of each bin into independent parallel segments. Each bin coding engine operates independently on its own segment of the bin stream, calculating ranges and low values separately. This segmentation allows multiple bins to be processed simultaneously without interfering with each other, increasing throughput while managing complexity through modular independent operations.
Solution Approach 2:
The patent uses intermediaries in the form of temporary storage elements that hold pre-calculated possible range values and low values for future bins. These intermediaries act as buffers between the forward prediction stage and the final selection stage, allowing the system to decouple the calculation of possible outcomes from the selection of actual outcomes, thereby enabling parallel processing while simplifying the control logic.
Data Source
AI summary
A method for performing parallel processing of at least two bins in an arithmetic coded bin stream includes: utilizing a current range to calculate a range for a first bin in the bin stream; simultaneously utilizing the current range to forward predict a plurality of possible ranges and low values for a second bin in the bin stream when the first bin is an MPS; when the range for the first bin is calculated, utilizing the calculated range to select a resultant range from the plurality of possible ranges and low values for the second bin.


