Intermediate Register Mapper for Out-of-Order Processor Pipeline Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current high-performance out-of-order processors face resource constraints at the unified main mapper, leading to increased die area, complexity, power consumption, and access time, as they cannot free unified main mapper entries until instructions complete, limiting instruction reuse and pipeline efficiency.

Innovation Solution

The introduction of an intermediate register mapper allows for the early release of unified main mapper entries by moving logical-to-physical register renaming data to the intermediate mapper once an instruction has finished executing but not completed, enabling earlier reuse of mapper entries and optimizing resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If unified main mapper entries are held until instruction completion, then instruction execution correctness is ensured, but mapper entry reuse is limited and pipeline efficiency decreases

Engineering Contradiction:
Improveinstruction execution correctnessVSAvoidpipeline efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The register mapper is divided into two separate structures: unified main mapper and intermediate register mapper. The unified main mapper holds entries until instruction completion (ensuring correctness), while the intermediate register mapper temporarily holds finished-but-not-completed entries (enabling earlier reuse). This segmentation allows each mapper to serve its specific function without compromising the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The intermediate register mapper acts as an intermediary between the unified main mapper and the execution pipeline. It receives mapper entries from the unified main mapper when instructions finish executing, allows earlier reuse of these entries, and ensures correctness is maintained until actual completion. This intermediary structure resolves the conflict between early reuse and correctness assurance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If unified main mapper entries are released earlier, then mapper entry reuse increases and pipeline efficiency improves, but resource constraints are not fully addressed

Engineering Contradiction:
Improvemapper entry reuseVSAvoidregister mapper structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The register mapper is divided into two separate structures: unified main mapper and intermediate register mapper. The unified main mapper holds entries until instruction completion (ensuring correctness), while the intermediate register mapper temporarily holds finished-but-not-completed entries (enabling earlier reuse). This segmentation allows each mapper to serve its specific function without compromising the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The intermediate register mapper acts as an intermediary between the unified main mapper and the execution pipeline. It receives mapper entries from the unified main mapper when instructions finish executing, allows earlier reuse of these entries, and ensures correctness is maintained until actual completion. This intermediary structure resolves the conflict between early reuse and correctness assurance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If intermediate register mapper is introduced, then pipeline efficiency increases and resource constraints are optimized, but die area and device complexity increase

Engineering Contradiction:
Improvepipeline efficiencyVSAvoiddie area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The register mapper is divided into two separate structures: unified main mapper and intermediate register mapper. The unified main mapper holds entries until instruction completion (ensuring correctness), while the intermediate register mapper temporarily holds finished-but-not-completed entries (enabling earlier reuse). This segmentation allows each mapper to serve its specific function without compromising the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The intermediate register mapper acts as an intermediary between the unified main mapper and the execution pipeline. It receives mapper entries from the unified main mapper when instructions finish executing, allows earlier reuse of these entries, and ensures correctness is maintained until actual completion. This intermediary structure resolves the conflict between early reuse and correctness assurance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9329869B2Prefix computer instruction for compatibily extending instruction functionality
Publication Date: 2016.05.03 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9329869B2 patent drawing
  • US9329869B2 patent drawing
  • US9329869B2 patent drawing

AI summary

A prefix instruction is executed and passes operands to a net instruction without storing the operands in an architected resource such that the execution of the next instruction uses the operands provided by the prefix instruction to perform an operation, the operands may be prefix instruction immediate field or a target register of the prefix instruction execution.