Microprocessor Reservation Station Cache Hit Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current superscalar microprocessors face performance degradation due to cache misses, which necessitate replaying arithmetic logic micro-instructions, leading to significant time consumption and reduced efficiency.

Innovation Solution

A method and apparatus for scheduling micro-instructions that detect write-back signals and determine execution statuses of load micro-instructions to synchronize load-detection counting logic, allowing for the removal of micro-instructions from the reservation station queue when all load micro-instructions are cache hits, thereby avoiding replay operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the reservation station assumes fixed delay for load micro-instructions and dispatches dependent arithmetic logic micro-instructions early, then the scheduling simplicity is improved, but cache misses cause replay operations that increase execution time and reduce performance

Engineering Contradiction:
Improvescheduling complexityVSAvoidreplay execution time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by checking cache status before dispatching dependent arithmetic logic micro-instructions. The reservation station monitors load micro-instruction execution and verifies cache hit status in advance, ensuring data readiness before the dependent instruction is dispatched to the ALU. This prevents premature dispatching that would lead to replay operations.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the reservation station dispatches dependent micro-instructions early based on fixed delay assumptions, then productivity is improved through parallel execution, but reliability deteriorates due to cache misses causing incorrect execution

Engineering Contradiction:
Improveinstruction throughputVSAvoidexecution correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback by continuously monitoring cache hit/miss status and using this information to control the dispatching of dependent micro-instructions. The reservation station receives feedback from the cache system about data availability and adjusts its dispatching decisions accordingly, ensuring that arithmetic logic micro-instructions are only dispatched when their source operands are guaranteed to be ready, thus maintaining execution correctness.

Inventive Principle:
Principle #23Feedback

3Reliability

If the reservation station retains micro-instructions in the queue to avoid replay, then reliability is improved by ensuring data readiness, but loss of time increases due to waiting for cache confirmation

Engineering Contradiction:
Improveexecution correctnessVSAvoidinstruction execution delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies continuity of useful action by maintaining the reservation station queue and keeping dependent micro-instructions in a ready state rather than discarding and re-fetching them after replay. The queue preserves instruction context and readiness information, allowing continuous monitoring and immediate dispatch when cache confirmation arrives, eliminating the need to restart instruction processing after a replay event.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10705851B2Scheduling that determines whether to remove a dependent micro-instruction from a reservation station queue based on determining cache hit/miss status of one ore more load micro-instructions once a count reaches a predetermined value
Publication Date: 2020.07.07 VIA ALLIANCE SEMICON CO LTD
  • US10705851B2 patent drawing
  • US10705851B2 patent drawing
  • US10705851B2 patent drawing

AI summary

A method for scheduling micro-instructions, performed by a first qualifier, is provided. The method includes the following steps: detecting a write-back signal broadcasted by a second qualifier; determining whether a value of a first load-detection counting logic is to be synchronized with a value of a second load-detection counting logic carried by the write-back signal according to content of the write-back signal; determining whether execution statuses of all load micro-instructions are cache hit when the synchronized value of the first load-detection counting logic reaches a predetermined value; and driving a release circuit to remove a micro-instruction in a reservation station queue when the execution statuses of the all load micro-instructions are cache hit and the micro-instruction has been dispatched to an arithmetic and logic unit for execution.