Parallel Entropy Slice Coding with Causal Context Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering Contradiction Analysis

1Productivity

If parallel CABAC processing is implemented, then processing speed is improved, but memory buffer size and power consumption increase significantly

Engineering Contradiction:
Improveprocessing speedVSAvoidmemory buffer size
Core Design Contradiction:
ProductivityVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #3Local quality

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

Engineering Contradiction:
Improvememory capacityVSAvoidprocessing speed
Core Design Contradiction:
Quantity of substanceVSSpeed

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.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If off-chip memory is used for large buffers, then memory capacity is sufficient, but power consumption increases

Engineering Contradiction:
Improvememory capacityVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by stationary object

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #3Local quality

4Loss of information

If sequential CABAC is used, then compression efficiency is maintained, but processing speed is limited

Engineering Contradiction:
Improvecompression efficiencyVSAvoidprocessing speed
Core Design Contradiction:
Loss of informationVSProductivity

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9467699B2Method for performing parallel coding with ordered entropy slices, and associated apparatus
Publication Date: 2016.10.11 HFI INNOVATION INC
  • US9467699B2 patent drawing
  • US9467699B2 patent drawing
  • US9467699B2 patent drawing

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.