Split Reservation Station Storage for Delinquent Store Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As computer systems become more complex, increasing the size of reservation stations to store more instructions leads to increased processor size, cost, and power consumption, and store operations can become delinquent when data is unavailable.
Innovation Solution
Implementing a secondary storage circuit for delinquent store operations and using smaller entries for certain types of operations, such as store-data entries, to increase the number of instructions stored while minimizing physical area, performance, and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the size of reservation stations is increased to store more instructions, then the number of stored instructions is improved, but the processor size, cost, and power consumption increase
Solution Approach 1:
The reservation station is segmented into two distinct storage circuits: a primary storage circuit for active instructions and a secondary storage circuit for delinquent store operations. This segmentation allows the system to store more instructions without proportionally increasing the active storage size, thereby reducing power consumption while maintaining capacity.
Solution Approach 2:
The secondary storage circuit uses simplified entry structures with fewer fields compared to full reservation station entries. These reduced entries store only essential information (store address, data, and validity) rather than complete instruction metadata, effectively using 'cheaper' storage resources for delinquent operations that don't require full instruction context.
2Quantity of substance
If the size of reservation stations is increased to store more instructions, then the number of stored instructions is improved, but the processor area increases
Solution Approach 1:
The reservation station is segmented into two distinct storage circuits: a primary storage circuit for active instructions and a secondary storage circuit for delinquent store operations. This segmentation allows the system to store more instructions without proportionally increasing the active storage size, thereby reducing power consumption while maintaining capacity.
Solution Approach 2:
The secondary storage circuit uses simplified entry structures with fewer fields compared to full reservation station entries. These reduced entries store only essential information (store address, data, and validity) rather than complete instruction metadata, effectively using 'cheaper' storage resources for delinquent operations that don't require full instruction context.
3Reliability
If store operations are kept in the reservation station waiting for data, then data availability is improved, but the store operations become delinquent and delay execution
Solution Approach 1:
The secondary storage circuit acts as an intermediary between the primary reservation station and the execution unit. When store data becomes available, operations are transferred from the secondary circuit back to the primary circuit or directly issued to the execution unit, mediating the delay and reducing execution time loss.
Solution Approach 2:
Store operations are prepared in advance in the secondary storage circuit with their store address and data ready, waiting only for the data to be available. This preliminary preparation reduces the time loss when data becomes available, as the operation can be immediately issued without additional setup or validation delays.
Data Source
AI summary
A reservation station that includes primary and secondary storage circuits is disclosed. The primary storage circuit may include multiple full entries, while the secondary storage circuit includes multiple store-data entries. A given store-data entry of the multiple store-data entries stores a subset of the information stored in a given full entry of the multiple full entries. In response to a determination that a store address associated with a particular store operation, stored in particular full entry of the multiple full entries, has been available for use for a threshold number of cycles without store data associated with the particular store operation being available for use, a control circuit may transfer the particular store operation to a particular store-data entry of the multiple store-data entries.


