Hardware Pipeline Partitioning to Reduce Task Spin-Up Idle Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional processors experience 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 processing and descriptor setup/post-processing phases.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the hardware pipeline processes tasks sequentially without partitioning, then the pipeline structure is simple, but idle times increase during spin-up and spin-down periods

Engineering Contradiction:
Improvepipeline efficiencyVSAvoidpipeline structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The hardware 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 Task 1 while the downstream section processes the downstream phase of Task 0, eliminating idle wait times and improving pipeline efficiency without requiring complete pipeline reconfiguration.

Inventive Principle:
Principle #1Segmentation

2Loss of time

If the pipeline waits for task completion before starting the next task, then data dependency is maintained, but loss of time occurs during idle periods

Engineering Contradiction:
Improveidle timeVSAvoiddata dependency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

By segmenting the pipeline into upstream and downstream sections separated by a blocking circuit, the system can maintain data dependency reliability while reducing idle time. The upstream section can begin processing Task 1's upstream phase immediately after Task 0's upstream phase completes, while the downstream section continues with Task 0's downstream phase, ensuring proper data flow control.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The upstream section performs preliminary processing of Task 1's upstream phase before the downstream section is ready to receive the data. This preliminary action eliminates idle wait time while the blocking circuit ensures data dependency is maintained when the downstream section becomes available.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If the pipeline is partitioned into upstream and downstream sections with blocking circuit, then idle times are reduced, but device complexity increases

Engineering Contradiction:
Improvepipeline efficiencyVSAvoidpipeline structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The pipeline is segmented into upstream and downstream sections with a blocking circuit that can be opened or closed to control data flow. This segmentation enables overlapping processing of different task phases, improving pipeline efficiency by eliminating idle wait times while adding controlled complexity through the blocking mechanism.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20260056808A1Processor with Hardware Pipeline
Publication Date: 2026.02.26 IMAGINATION TECH LTD
  • US20260056808A1 patent drawing
  • US20260056808A1 patent drawing
  • US20260056808A1 patent drawing

AI summary

A processor includes a hardware pipeline comprising fixed-function hardware, a register bank to which software can write task descriptors, and a blocking circuit disposed between an upstream section and a downstream section of the hardware pipeline, wherein the blocking circuit has an open state in which data passes from the upstream section to the downstream section, and a closed state that blocks data passing from the upstream section to the downstream section. Control circuitry triggers the upstream section to start processing a second task while the downstream section is still processing the first task, and switches the blocking circuit to the closed state, in response to detecting that the upstream section has finished processing a first task.