Interlocked Processor Pipeline for Variable-Latency Data Transfers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Pipeline hazards in RISC processors, such as data, control, structural, and resource hazards, lead to reduced performance and incorrect results due to difficulties in executing instructions in a timely and accurate manner, particularly with hybrid instructions requiring both floating-point and integer operations.

Innovation Solution

A processor pipeline architecture that supports out-of-order execution with interlocking of floating-point and integer operations, using issue queues and control logic to manage variable latency operations, ensuring timely and hazard-free execution of data transfer operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If instructions are executed in a pipelined manner to increase processing speed, then the number of instructions executed per second increases, but pipeline hazards occur leading to reduced performance and incorrect results

Engineering Contradiction:
Improveinstructions executed per secondVSAvoidexecution accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The instruction execution pipeline is segmented into distinct stages (fetch, decode, execute, write-back) with separate issue queues for different operation types. Each stage operates independently with clear boundaries, allowing parallel processing while maintaining execution accuracy through stage-specific control logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Issue queues serve as intermediary structures between the instruction fetch/decode stages and the execute stage. These queues buffer instructions, manage dependencies, and coordinate the timing of operation issuance to execution units, preventing hazards while maintaining high throughput.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If hybrid instructions requiring both floating-point and integer operations are executed, then functional versatility is achieved, but execution latency increases due to operational interlocking requirements

Engineering Contradiction:
Improvehybrid operation capabilityVSAvoidexecution latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary classification of operations into floating-point and integer categories during the decode stage, issuing operations to appropriate queues in advance. This preliminary organization allows the execute stage to process operations efficiently without waiting for interlocking conditions, reducing overall latency while maintaining hybrid operation capability.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If out-of-order execution is implemented to improve throughput, then processing efficiency increases, but pipeline hazards become more difficult to manage

Engineering Contradiction:
Improveprocessing throughputVSAvoidhazard management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The issue queues are designed with specialized local characteristics - the floating-point issue queue and integer issue queue have different structures and control logic optimized for their respective operation types. This local specialization simplifies hazard management within each queue while enabling out-of-order execution across the entire pipeline.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12554503B2Processor pipeline for interlocked data transfer operations with variable latency
Publication Date: 2026.02.17 AKEANA INC
  • US12554503B2 patent drawing
  • US12554503B2 patent drawing
  • US12554503B2 patent drawing

AI summary

Disclosed embodiments provide techniques for instruction execution with a processor pipeline for data transfer operations. A processor core is accessed. The processor core executes one or more instructions out of order. The processor core supports integer operations and floating-point operations. An instruction in the processor core is decoded. The instruction is a data transfer operation. The data transfer operation necessitates a floating-point operation and an integer operation. The floating-point operation and the integer operation are dispatched to one or more issue queues. The floating-point operation and the integer operation are interlocked. The interlocking is accomplished using at least one entry in the one or more issue queues. A first operation of the floating-point operation and the integer operation is executed. A second operation of the floating-point operation and the integer operation is executed. The execution of the second operation is based on the interlocking.