Blocked Hardware Pipeline for Overlapping Task Spin-Up
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional processors face inefficiencies due to 'spin-up' and 'spin-down' periods when processing tasks with different configurations or data dependencies, leading to idle times and reduced pipeline efficiency.
Innovation Solution
The processor is partitioned into upstream and downstream sections with a blocking circuit to allow independent configuration and data dependency, enabling overlapping of task spin-up with current processing and spin-down with next task, using multiple buffered configuration registers managed by control circuitry.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the pipeline processes tasks sequentially without partitioning, then configuration and data dependencies are maintained, but idle times increase and pipeline efficiency decreases
Solution Approach 1:
The pipeline is divided into an upstream section and a downstream section with a blocking circuit between them. This segmentation allows the upstream section to process the upstream phase of one task while the downstream section processes the downstream phase of a previous task, enabling overlapping execution and reducing idle time.
Solution Approach 2:
The upstream section can begin processing the upstream phase of a next task before the downstream section completes the current task. The blocking circuit is closed during this transition period to prevent data dependency conflicts, allowing preliminary action on the next task to overlap with the completion phase of the current task.
2Loss of time
If the pipeline allows overlapping processing of multiple tasks, then idle times are reduced, but configuration conflicts and data dependency issues arise
Solution Approach 1:
A blocking circuit is introduced as an intermediary between the upstream and downstream sections. This blocking circuit acts as a mediator that can be closed to prevent data flow when configuration conflicts or data dependency issues might arise, ensuring reliability while allowing overlapping processing when safe.
Solution Approach 2:
The control circuitry automatically manages the blocking circuit state based on task phase and pipeline section status. The system self-regulates to prevent configuration conflicts and data dependency issues without external intervention, maintaining reliability while enabling efficient overlapping processing.
3Productivity
If the pipeline is partitioned into upstream and downstream sections with blocking circuit, then task overlap is enabled and efficiency improves, but device complexity increases
Solution Approach 1:
The pipeline is segmented into upstream and downstream sections with a blocking circuit between them. This segmentation enables independent configuration and overlapping processing of task phases, improving efficiency despite the added structural complexity.
Solution Approach 2:
The blocking circuit serves multiple functions: it prevents data dependency conflicts, enables task overlap, and maintains configuration consistency. This multi-functionality justifies the added complexity by providing multiple benefits from a single structural element.
Data Source
AI summary
A processor includes a blocking circuit between an upstream section and a downstream section of a hardware pipeline, and control circuitry which triggers the upstream section to process an upstream phase of a first task, with the blocking circuit in an open state whereby first data from the processing of the upstream phase of the first task passes through from the upstream section to be processed in a downstream phase of the first task. In response to detecting that the upstream section has finished processing the upstream phase of the first task, the control circuitry triggers the upstream section to start processing a second task while the downstream section is still processing the downstream phase of the first task, and switches the blocking circuit to a closed state blocking second data from the processing of the upstream phase of the second task passing to the downstream section.


