Parallel Entropy Slice Coding with Causal Context Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional sequential CABAC is a bottleneck for parallel processing due to its serial bit-level processing nature, leading to loss of compression efficiency and increased memory and power consumption when implementing parallel CABAC, especially with large buffer sizes that often require off-chip memory access.
Innovation Solution
The method involves providing entropy slices to multiple processing elements with a causal processing order, allowing them to work in parallel, thereby reducing the need for large buffers and accommodating data within on-chip memory, and utilizing a controller to manage the processing order and delay intervals between entropy slices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If parallel CABAC processing is implemented, then processing speed is improved, but memory buffer size and power consumption increase significantly
Solution Approach 1:
The patent divides the picture into multiple entropy slices that can be processed in parallel by different processing elements. Each processing element handles a specific entropy slice with its own context model, eliminating the need for large picture-level buffers while maintaining parallel processing capability. This segmentation approach allows the system to process multiple slices simultaneously without requiring excessive memory resources.
Solution Approach 2:
The patent implements local context models for each entropy slice rather than a global context model for the entire picture. Each processing element maintains its own context state independently, allowing parallel processing with reduced memory requirements. This local quality approach ensures that each processing element only needs to store context information for its assigned slice, significantly reducing the overall buffer size needed.
2Quantity of substance
If off-chip memory is used for large buffers, then memory capacity is sufficient, but processing speed decreases due to slower access
Solution Approach 1:
By segmenting the picture into entropy slices and assigning each to a separate processing element with local context models, the patent reduces the memory buffer size to fit within on-chip memory capacity. This eliminates the need for off-chip memory access, maintaining high processing speed while providing sufficient memory capacity through the distributed local buffers rather than a large centralized buffer.
3Quantity of substance
If off-chip memory is used for large buffers, then memory capacity is sufficient, but power consumption increases
Solution Approach 1:
The patent segments the processing into multiple entropy slices with local context models, reducing buffer size to fit in on-chip memory. This eliminates off-chip memory access, significantly reducing power consumption while maintaining sufficient memory capacity through the distributed local buffers. Each processing element uses minimal local memory rather than accessing large off-chip memory.
Solution Approach 2:
By implementing local context models for each entropy slice, the patent ensures that each processing element uses only the memory necessary for its specific slice, keeping buffer sizes small enough for on-chip implementation. This local quality approach minimizes power consumption by avoiding off-chip memory access while providing adequate memory capacity for each local processing element.
4Loss of information
If sequential CABAC is used, then compression efficiency is maintained, but processing speed is limited
Solution Approach 1:
The patent segments the picture into multiple entropy slices that can be processed in parallel while maintaining compression efficiency through proper context model management. Each processing element handles its assigned slice with a local context model, enabling parallel processing that increases speed while preserving the compression efficiency characteristics of sequential CABAC through the use of context-adaptive binary arithmetic coding in each slice.
Data Source
AI summary
A method for performing parallel coding with ordered entropy slices includes: providing a plurality of entropy slices to a plurality of processing elements with a causal criterion on processing order, wherein each entropy slice includes a plurality of macroblocks; and respectively starting to perform a coding procedure for the plurality of entropy slices according to the causal criterion, so that at least a portion of the processing elements are processed in parallel during at least a portion of processing time. An associated apparatus for performing parallel coding with ordered entropy slices includes: a plurality of processing elements; and a controller. The processing elements are arranged to process the entropy slices. In addition, the controller is arranged to provide the plurality of entropy slices with the causal criterion, and controls the operations of the processing elements.


