Load Replay Precluding Mechanism for Out-of-Order Processor Power Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In out-of-order processors, the power wastage due to frequent load replays from non-core resources, such as L2 caches and fuse arrays, is significant, leading to increased power utilization and thermal issues, despite minimal performance impact, as these resources are shared among cores and access times are longer than on-core cache access.

Innovation Solution

Implementing a mechanism with reservation stations that detect specified load micro instructions directed to non-core resources, stalling younger dependent micro instructions until the load is completed, thereby reducing replays and enabling power management in execution units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If load micro instructions are dispatched to execution units in out-of-order processors, then instruction throughput is improved, but power consumption increases due to frequent replays from non-core resources

Engineering Contradiction:
Improveinstruction throughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The mechanism performs preliminary detection of load micro instructions targeting non-core resources before dispatching younger dependent instructions. By identifying these instructions in advance and stalling dependent instructions until load completion, the system prevents unnecessary executions and replays, thereby reducing power consumption while maintaining throughput for independent instructions

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A hold bus acts as an intermediary communication channel between the first reservation station (detecting load instructions) and the second reservation station (dispatching younger instructions). This intermediary mechanism enables coordinated control where the hold bus signals when to stall dependent instructions, preventing power-wasting replays without blocking independent instruction flow

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If younger dependent micro instructions are dispatched immediately after load instructions, then execution latency is reduced, but replay frequency increases for instructions accessing non-core resources

Engineering Contradiction:
Improveexecution latencyVSAvoidreplay frequency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system performs preliminary detection of load instructions accessing non-core resources (L2 cache, fuse arrays) before dispatching younger dependent instructions. By stalling dependent instructions until the load operation completes, the mechanism ensures operands are available before execution, eliminating replays while maintaining low latency for instructions that don't require stalling

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If all load instructions are executed without differentiation, then simplicity is maintained, but power wastage occurs due to unnecessary replays from shared non-core resources

Engineering Contradiction:
Improveinstruction execution simplicityVSAvoidpower wastage
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

The mechanism applies differentiated handling to specific load instructions based on their target resources. Load instructions accessing non-core resources (L2 cache, fuse arrays) are detected and handled differently by stalling dependent instructions, while loads to on-core cache proceed normally. This localized differentiation eliminates power wastage without significantly increasing overall system complexity

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10146546B2Load replay precluding mechanism
Publication Date: 2018.12.04 VIA ALLIANCE SEMICON CO LTD
  • US10146546B2 patent drawing
  • US10146546B2 patent drawing
  • US10146546B2 patent drawing

AI summary

An apparatus including first and second reservation stations. The first reservation station dispatches a load micro instruction, and indicates on a hold bus if the load micro instruction is a specified load micro instruction directed to retrieve an operand from a prescribed resource other than on-core cache memory. The second reservation station is coupled to the hold bus, and dispatches one or more younger micro instructions therein that depend on the load micro instruction for execution after a number of clock cycles following dispatch of the first load micro instruction, and if it is indicated on the hold bus that the load micro instruction is the specified load micro instruction, the second reservation station is configured to stall dispatch of the one or more younger micro instructions until the load micro instruction has retrieved the operand. The resources include an advanced programmable interrupt controller (APIC), configured to perform interrupt operations.