Parallel FIR Filtering Architecture for Pipeline Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current multiple compute unit processors face inefficiencies in processing non-sequential instructions, such as conditional jumps, which disrupt the deep pipeline operation and hinder parallel processing of finite impulse response filtering, especially in video compression and decoding tasks.
Innovation Solution
A method and architecture that broadcast instructions with a conditional field and operator values to each compute unit, allowing for parallel processing of finite impulse response filtering by using conditional shift or multiplier units to apply shift or coefficient values based on the conditional field, thereby avoiding jumps and optimizing pipeline efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conditional jump instructions are used in single compute unit processors to handle filtering decisions, then the filtering logic can be implemented correctly, but the processing speed is limited and pipeline efficiency is disrupted
Solution Approach 1:
The patent segments the filtering logic into separate compute units, each dedicated to specific filtering operations. Instead of using sequential jump instructions in a single compute unit, multiple compute units are assigned to handle different filtering paths simultaneously, eliminating pipeline disruptions while maintaining correct filtering logic execution
Solution Approach 2:
The patent transitions from a single-dimensional sequential processing model to a multi-dimensional parallel processing model by introducing multiple compute units that operate simultaneously. This dimensional shift allows conditional filtering decisions to be executed in parallel rather than sequentially, resolving the contradiction between correct logic implementation and processing speed
2Productivity
If multiple compute units are used for parallel processing of FIR filtering, then processing speed increases, but handling conditional instructions becomes problematic due to inability to take unified jump decisions
Solution Approach 1:
The patent segments the conditional instruction handling by assigning different compute units to different filtering paths. Each compute unit is dedicated to a specific filtering scenario, eliminating the need for unified jump decisions while maintaining parallel processing efficiency
Solution Approach 2:
The patent introduces dynamic instruction streaming where the sequencer can selectively activate different compute units based on runtime conditions. This dynamic approach allows the system to handle conditional filtering decisions without requiring unified jump instructions, as the appropriate compute units are activated based on the specific filtering needs
3Loss of time
If traditional sequential filtering approaches are used, then memory requirements are lower, but processing time increases significantly
Solution Approach 1:
The patent applies preliminary action by pre-loading filter coefficients and organizing input data into buffers before filtering operations begin. This preparation allows multiple compute units to operate efficiently in parallel without requiring excessive memory, as data is organized and ready for simultaneous processing
Solution Approach 2:
The patent uses dimensional change by implementing time-multiplexed data flow across multiple compute units. Instead of storing all intermediate results in memory, the system processes data through multiple parallel paths with shared memory resources, reducing overall memory requirements while maintaining fast processing speed
Data Source
AI summary
Finite impulse response filtering is achieved by broadcasting to at least one compute unit an instruction having a plurality of data samples, a conditional field associated with each compute unit, and a set of operator values for operating on each data sample; providing a function of each the data sample in accordance with an associated set of operator values identified by the conditional field; and combining the functions to obtain an intermediate finite impulse response of the data samples.


