Video Encoder Architecture for VLIW Cores with Inter Intra Prediction Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional video encoders suffer from increased system overhead and performance degradation due to cache misses and scattered data transfers caused by intra prediction mode dependencies, which limit their ability to process multiple macroblocks simultaneously.
Innovation Solution
The proposed solution exploits multi-level cache architectures by grouping inter prediction coded macroblocks for simultaneous processing, minimizing data transfer overheads and allowing parallel operation on multiple macroblocks, while maintaining the sequential nature of bitstream encoding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If intra prediction mode dependency is used for encoding, then prediction accuracy is improved, but processing parallelism deteriorates and cache performance worsens
Solution Approach 1:
The patent segments the encoding process by separating inter prediction macroblocks from intra prediction macroblocks. Inter prediction macroblocks are processed first in a parallel manner without dependency on reconstructed pixels, while intra prediction macroblocks are processed subsequently. This segmentation removes the harmful dependency chain that prevents parallel processing, allowing the system to maintain prediction accuracy while significantly improving processing parallelism and cache performance.
2Reliability
If conventional macroblock based encoding is used, then encoding correctness is maintained, but system overhead increases and performance degrades
Solution Approach 1:
The patent applies preliminary action by performing inter prediction encoding for all macroblocks before processing intra prediction macroblocks. This reordering of operations allows the system to prepare reference data and minimize cache accesses in advance. By completing inter prediction first, the system reduces the number of cache misses and scattered data transfers that would otherwise occur during intra prediction processing, thereby improving overall system performance while maintaining encoding correctness.
3Measurement precision
If all macroblocks are processed sequentially with loop filtering, then encoding accuracy is maintained, but processing time increases
Solution Approach 1:
The patent segments the macroblock processing into two distinct phases: inter prediction macroblocks processed first in parallel, followed by intra prediction macroblocks. This segmentation allows the system to process inter prediction macroblocks without waiting for loop filtering of previous macroblocks, significantly reducing processing time. The encoding accuracy is maintained because the segmented processing still produces the correct bitstream sequence, and loop filtering is applied appropriately in each phase.
Data Source
AI summary
This invention is a method of video encoding. The number N macroblocks stored in a temporary buffer depends upon an estimated number of motion vectors. N macroblocks of current and prior frame data is transferred to the temporary buffer. The invention determines for each macroblock whether to be inter frame predicted or intra frame predicted. The inter and intra macroblocks are separately encoded based upon this determination and stored in an output buffer. Output macroblocks are output from the output buffer in raster scan order. This technique permits the process to loop over differing number of macroblocks in differing parts of the encoding process. Entropy encoding complexity from separating inter and intra macroblock encoding is avoided by separating a symbol generation phase from an encoding phase.


