Processor Memory Dependency Queue for Cold RAW Hazard Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Out-of-order processing in processor devices is limited by memory dependencies, particularly read-after-write hazards between store and load instructions, leading to performance degradation and pipeline recovery issues.
Innovation Solution
Implement a dependency identifier circuit with a store instruction queue to perform 'cold' memory dependency identification, detecting potential dependencies without prior hazards, and a dependency predictor circuit for 'warm' prediction, using a store instruction queue and age indicators to manage dependencies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If out-of-order processing is used to improve processor efficiency, then processor throughput is improved, but memory dependencies cause RAW hazards that lead to pipeline recovery and performance degradation
Solution Approach 1:
The patent applies preliminary action by performing cold memory dependency identification before out-of-order execution occurs. The dependency identifier circuit proactively detects potential RAW hazards between store and load instructions by comparing address registers and immediate values, establishing dependencies in advance to prevent pipeline hangs before they occur.
Solution Approach 2:
The patent implements feedback through the dependency identifier circuit that continuously monitors store and load instructions, compares their address parameters, and provides feedback information about potential dependencies to the instruction processing circuit, enabling dynamic adjustment of execution ordering to maintain pipeline correctness.
2Reliability
If a dependency predictor circuit is used to avoid RAW hazards, then pipeline recovery is reduced, but the circuit can only perform 'warm' prediction after detecting prior hazards, limiting its coverage
Solution Approach 1:
The patent extends prediction coverage by implementing cold dependency identification that operates before any RAW hazard occurs. The dependency identifier circuit proactively identifies potential dependencies by comparing address registers and immediate values of store and load instructions, enabling the system to prevent hazards rather than merely respond to them after detection.
Solution Approach 2:
The patent segments the dependency detection function into two distinct circuits: a dependency identifier circuit for cold identification that proactively detects potential dependencies before hazards occur, and a dependency predictor circuit for warm prediction that handles recurring hazard patterns. This segmentation allows each circuit to specialize and collectively provide comprehensive coverage.
Data Source
AI summary
Performing “cold” memory dependency identification in processor devices is disclosed herein. In some aspects, a processor device includes a dependency identifier circuit comprising a store instruction queue. The dependency identifier circuit detects a store instruction comprising a single store address register number and a store immediate value in an instruction processing circuit front end. The dependency identifier circuit writes a store physical register number, the store immediate value, and an age indicator in an entry of the store instruction queue. The dependency identifier circuit detects a load instruction comprising a single load address register number and a load immediate value in the instruction processing circuit front end. The dependency identifier circuit determines whether an entry of the store instruction queue stores a corresponding load physical register number and the load immediate value, and, if so, establishes a dependency between the load instruction and a store instruction corresponding to the entry.


