VLIW Video Loop Deblocking via Parallel Speculative Filtering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing video compression standards, such as the H.264 standard, face challenges in efficiently filtering block artifacts at macroblock boundaries due to conditional branching and lack of parallelism in the deblocking filtering code, making it unsuitable for deeply pipelined processors and parallel hardware implementations.
Innovation Solution
The method computes all possible filter results speculatively and simultaneously in parallel, determines conditions for applying filter results, and writes them to memory conditionally, exposing inherent parallelism and reducing conditional branching, thus enabling effective block filtering on very long instruction word (VLIW) data processors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If extensive conditional branching is used to implement deblocking filtering decisions, then filtering accuracy is improved, but processor suitability for pipelined architectures deteriorates
Solution Approach 1:
The deblocking filtering process is segmented into multiple independent parallel tasks, each handling specific boundary conditions. The decision matrix is divided into separate filtering operations that can be executed simultaneously on different boundaries, eliminating the need for extensive sequential conditional branching while maintaining filtering accuracy.
Solution Approach 2:
Boundary strength values and filtering decisions are pre-computed and stored in lookup tables during the encoding phase. This preliminary action eliminates the need for complex conditional branching during decoding, as the filtering decisions are already determined and can be directly applied without extensive runtime condition checking.
2Manufacturing precision
If sequential conditional branching is used for filter selection, then filtering precision is improved, but processing speed deteriorates
Solution Approach 1:
Multiple filter selection operations are merged into a single parallel execution model. Instead of sequentially checking conditions and branching to different filters, the system combines multiple filter computations and merges their results, allowing simultaneous execution of filter operations that would otherwise be sequential.
Solution Approach 2:
The optimal filter selection is performed in advance during encoding by pre-computing boundary strength values and storing them in lookup tables. This preliminary filter determination eliminates runtime conditional branching for filter selection, significantly improving processing speed while maintaining precise filter selection based on pre-calculated boundary characteristics.
3Productivity
If parallel filtering operations are implemented, then processing efficiency is improved, but code structure complexity increases
Solution Approach 1:
A universal parallel filtering framework is implemented that handles multiple boundary conditions through a single unified structure. The same code framework processes different boundary types (vertical, horizontal, macroblock boundaries) by utilizing pre-computed boundary strength values, eliminating the need for separate specialized code for each boundary condition and reducing overall code structure complexity.
Solution Approach 2:
All filtering parameters and decision logic are pre-computed during encoding and stored in lookup tables. This preliminary action allows the decoding phase to simply retrieve and apply pre-determined filter parameters without complex runtime calculations, significantly simplifying the code structure while enabling parallel processing for improved efficiency.
Data Source
AI summary
This invention is applicable to filtering block artifacts of macroblock and block oriented video compression. This invention computes all possible filter results speculatively and simultaneously in parallel, computes conditions for application of corresponding filter results simultaneously in parallel, and writes filter results to memory conditionally dependent upon computed corresponding conditions. This invention permits effective block filtering on a very long instruction word data processor.


