Next PC Value Generator for Superscalar DSP Pipeline Stalls
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In superscalar processors, discontinuity instructions, particularly tight loop instructions, cause inefficiencies due to pipeline stalls, which hinder the efficient processing of instructions and reduce throughput.
Innovation Solution
A system and method utilizing a next program counter (PC) value generator that includes a discontinuity decoder and a tight loop decoder to detect and address tight loop discontinuity instructions, allowing for the loading of the next PC value without a stall, thereby mitigating pipeline interruptions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If pipelining and superscalar processing are used to increase DSP throughput, then instruction processing speed is improved, but pipeline stalls occur due to discontinuity instructions
Solution Approach 1:
The system performs preliminary detection of discontinuity instructions during the fetch stage and pre-determines the next PC value before the instruction reaches execution stage. This advance preparation allows the pipeline to continue flowing instructions without waiting for discontinuity resolution, eliminating stalls while maintaining high throughput.
Solution Approach 2:
A dedicated discontinuity detection mechanism acts as an intermediary between the fetch unit and execution units. This intermediate layer identifies discontinuity instructions and resolves their impact on PC value determination, allowing the main pipeline to operate continuously without direct interference from discontinuity handling.
2Productivity
If multiple instructions are processed concurrently in the pipeline, then DSP throughput is increased, but instructions depend on one another creating bubbles and stalls
Solution Approach 1:
The system continuously monitors the pipeline for discontinuity instructions and uses this feedback to dynamically adjust PC value determination. When a discontinuity is detected, the feedback mechanism triggers immediate PC value update to the correct target address, preventing the formation of bubbles and maintaining continuous instruction flow.
Solution Approach 2:
The patent ensures continuous useful action by maintaining a steady stream of instructions through the pipeline. The discontinuity detection and PC value adjustment mechanisms operate in parallel with normal instruction execution, ensuring that no time is lost and the pipeline remains fully utilized without interruptions.
Data Source
AI summary
A next program counter (PC) value generator. The next PC value generator includes a discontinuity decoder that is provide to detect a discontinuity instruction among a plurality of instructions and a tight loop decoder that is provide to: a) detect a tight loop instruction, and b) provide a tight loop instruction target address. The next PC value generator further includes a next PC value logic having a plurality of inputs: a first input coupled to an output of the discontinuity decoder, and a second input coupled to an output of the tight loop decoder. The next PC value logic provides as an output, without a stall, a control signal that a next PC value is to be loaded with the tight loop instruction target address if: the discontinuity decoder detects a discontinuity instruction, and the tight loop decoder detects a tight loop instruction.


