Interleaved Sub-block Processing for Video Coding Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In digital video coding, the processing of video data is hindered by data dependencies between pixels, leading to increased latency, decreased throughput, and larger chip area requirements due to idle components waiting for processing results, particularly in intra coding where neighboring pixels must be processed before a video block.

Innovation Solution

The method involves interleaving the processing order of sub-blocks of luminance and color difference blocks, allowing for more efficient component utilization by processing sub-blocks in a pipeline-like manner, reducing idle time and dependencies between luminance sub-blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If video blocks are processed in sequential order (first video block completely before second video block), then processing simplicity is maintained, but latency increases and throughput decreases due to idle components waiting for processing results

Engineering Contradiction:
ImprovethroughputVSAvoidprocessing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides video blocks into sub-blocks (e.g., 4x4 or 8x8 sub-blocks from a 16x16 video block) and processes them independently in an interleaved manner. This segmentation allows different processing stages to work on different sub-blocks simultaneously, increasing throughput while maintaining manageable processing complexity through modular design

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic processing where the processing order is changed from static sequential to dynamic interleaved processing. Processing units can dynamically switch between working on different video blocks based on data availability and processing stage completion, optimizing throughput without excessive complexity

Inventive Principle:
Principle #15Dynamics

2Loss of time

If components wait for processing results before proceeding to next stage, then processing accuracy is maintained, but latency increases due to idle waiting time

Engineering Contradiction:
ImprovelatencyVSAvoidprocessing dependency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent performs preliminary actions by preparing and buffering data for multiple video blocks before actual processing. Reference blocks and prediction data are pre-computed and stored in buffers, allowing processing units to immediately begin work without waiting for previous blocks to complete, thereby reducing latency while maintaining processing reliability through pre-prepared data

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces intermediary buffers and memory structures that decouple the dependency between processing stages. These intermediaries hold intermediate results and allow subsequent processing stages to proceed independently without directly waiting for previous stages to complete, reducing latency while preserving data integrity and processing reliability

Inventive Principle:
Principle #24Intermediary (Mediator)

3Area of stationary object

If all sub-blocks of one video block are processed completely before moving to the next video block, then processing simplicity is maintained, but chip area increases due to larger buffers needed to hold intermediate results

Engineering Contradiction:
Improvechip areaVSAvoidbuffer memory requirements
Core Design Contradiction:
Area of stationary objectVSDevice complexity

Solution Approach 1:

By segmenting video blocks into smaller sub-blocks and processing them in an interleaved pattern across multiple video blocks, the patent reduces the amount of intermediate data that needs to be held in buffers at any one time. This segmentation allows reuse of buffer memory across different sub-blocks and video blocks, reducing total chip area requirements

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent maintains continuous useful action by keeping processing units actively working on different sub-blocks of different video blocks simultaneously. This continuous processing eliminates idle buffer waiting time and allows smaller buffers to be reused more frequently, reducing the total buffer memory capacity needed on the chip

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9503724B2Interleave block processing ordering for video data coding
Publication Date: 2016.11.22 QUALCOMM INC
  • US9503724B2 patent drawing
  • US9503724B2 patent drawing
  • US9503724B2 patent drawing

AI summary

Systems and methods for interleaving video sub-blocks in video coding are described herein. In one aspect, an apparatus includes a memory and a video coder. The memory stores a first video block and a second video block. The first video block and the second video block include sub-blocks. The video coder processes a first sub-block of the first video block according to a first process and a second process, and processes a second sub-block of the first video block according to the first process and the second process after processing the first sub-block of the first video block according to the first process and the second process. Further, the video coder processes a first sub-block of the second video block according to the first process before processing the second sub-block of the first video block according to the first process.