Effective Address Directory and Table for Out-of-Order Load Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Out-of-order (OoO) processors face challenges in managing hazards and efficient address translation due to the execution of younger load instructions before older store instructions, leading to pipeline flushes and performance penalties, and existing solutions are inefficient in tracking effective addresses and consuming significant chip area and power.

Innovation Solution

Implementing an effective address-based load-store unit that uses an effective address directory (EAD) and effective real table (ERT) to track and translate effective addresses, reducing the need for real address translation and minimizing chip area and power consumption by policing against effective address aliasing within the OoO window.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If real address translation is performed for every load instruction in out-of-order execution, then address translation accuracy is improved, but chip area and power consumption increase significantly

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidchip area
Core Design Contradiction:
Measurement precisionVSArea of stationary object

Solution Approach 1:

The patent extracts the address translation function from the load-store unit and implements it separately in the instruction sequencing unit using an effective-real table. This separation allows the LSU to work with effective addresses only, removing the need for redundant translation hardware in the LSU while maintaining accurate address translation through the dedicated ERT structure.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an effective-real table (ERT) as an intermediary data structure that maps effective addresses to real addresses. This ERT acts as a mediator between the LSU operating in effective address space and the memory subsystem requiring real addresses, enabling accurate translation without duplicating translation hardware in the LSU.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If real address translation is performed for every load instruction, then address translation accuracy is improved, but power consumption increases

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by stationary object

Solution Approach 1:

The patent extracts the address translation function from the load-store unit and implements it separately in the instruction sequencing unit using an effective-real table. This separation allows the LSU to work with effective addresses only, removing the need for redundant translation hardware in the LSU while maintaining accurate address translation through the dedicated ERT structure.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The instruction sequencing unit performs address translation proactively before instructions reach the LSU, so the LSU receives already-translated real addresses or effective address mappings. This self-service approach eliminates the need for the LSU to perform translation operations, reducing its power consumption while maintaining translation accuracy.

Inventive Principle:
Principle #25Self-service

3Productivity

If younger load instructions are executed before older store instructions in out-of-order execution, then instruction throughput is improved, but pipeline flushes occur due to hazards

Engineering Contradiction:
Improveinstruction throughputVSAvoidpipeline correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements preliminary hazard detection by comparing effective addresses of load instructions against store instructions in the out-of-order window before execution. This preliminary action identifies potential load-hit-store and load-hit-load hazards early, allowing the system to prevent pipeline flushes while maintaining out-of-order execution throughput.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms that monitor effective address usage across the out-of-order window and provide hazard information back to the instruction sequencing unit. This feedback allows the system to detect and handle hazards without flushing the pipeline, maintaining both throughput and reliability.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10324856B2Address translation for sending real address to memory subsystem in effective address based load-store unit
Publication Date: 2019.06.18 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10324856B2 patent drawing
  • US10324856B2 patent drawing
  • US10324856B2 patent drawing

AI summary

Technical solutions are described for executing one or more out-of-order instructions by a processing unit. An example method includes executing, by a load-store unit (LSU), instructions from an out-of-order (OoO) window. The OoO execution includes determining an effective address being used by a load instruction from the OoO window. Further, the execution includes determining presence of the effective address in an effective address directory (EAD) by identifying an EAD entry in the EAD, the EAD entry maps the effective address with an index of a corresponding effective-real table (ERT) entry from an effective-real table (ERT). In response to the effective address being present in the EAD, the execution includes accessing the corresponding ERT entry of the effective address of the load instruction, the corresponding ERT entry including a real address for the effective address, and issuing the load instruction using the real address from the corresponding ERT entry.