VLIW Processor Instruction Conflict State Determination
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current processor architectures face challenges in efficiently managing resource locking and out-of-order instruction execution, particularly in handling concurrent access to shared resources like registers and memory, which can lead to conflicts and stalls, impacting performance.
Innovation Solution
The processor architecture incorporates a renamer unit that assigns generation numbers to register file addresses, a small reset DHL Gshare branch prediction unit, and a resource locking mechanism to identify and manage resource dependencies, allowing for speculative execution and efficient issuance of instructions without conflicts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If resource locking mechanism is implemented to manage concurrent access to shared resources, then resource coherence and correctness are improved, but processor stalls and execution throughput deteriorate
Solution Approach 1:
The system performs preliminary determination of instruction conflict states before actual resource access. The instruction conflict state determination logic evaluates potential conflicts between memory instructions and other instructions in advance, allowing the processor to prepare appropriate handling strategies (such as reordering or stalling) before conflicts actually occur, thereby reducing the impact on throughput while maintaining coherence
Solution Approach 2:
The patent introduces an intermediary mechanism (instruction conflict state determination logic and state tracking system) that mediates between competing instructions vying for shared resources. This intermediary evaluates conflict states and coordinates resource access, preventing direct conflicts that would cause stalls while ensuring correct access ordering, thus balancing reliability and productivity
2Productivity
If out-of-order instruction execution is implemented to improve throughput, then execution efficiency is improved, but resource conflict detection and management complexity increases
Solution Approach 1:
The system segments the instruction stream into individual instructions with separate conflict state tracking. Each instruction's conflict state is determined and tracked independently, allowing the complex problem of out-of-order execution conflict management to be broken down into manageable per-instruction evaluations, reducing overall system complexity while maintaining high execution efficiency
3Productivity
If memory instructions are issued without conflict detection, then instruction issuance rate is improved, but incorrect execution and data errors occur
Solution Approach 1:
The system performs preliminary conflict state determination for memory instructions before they are issued to execution units. The instruction conflict state determination logic evaluates potential conflicts in advance, and only instructions with appropriate conflict states are issued, ensuring execution correctness while maintaining high issuance rates for non-conflicting instructions
Data Source
AI summary
An apparatus including a queue configured to store a plurality of instructions and state information indicating whether each instruction of the plurality of instructions can be performed independently of older pending instructions; and a state-selection circuit configured to set a state information of each instruction of the plurality of instructions in view of an older pending instruction in the queue.


