System and Method for Issuing Load-Dependent Instructions from an Issue Queue in a Processing Unit
First Claim
1. A computer-implementable method for issuing load-dependent instructions from an issue queue in a processing unit in a data processing system, said computer-implementable method comprising:
- determining if a load request from a load instruction missed a first level in a memory hierarchy;
in response to determining said load request missed a first level in a memory hierarchy, allocating a load-miss queue entry corresponding to said load instruction;
determining if at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit;
in response to determining at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit, associating said load-miss queue entry with said at least one dispatch instruction;
retrieving data associated with said load request into said first level in said memory hierarchy from another level within said memory hierarchy;
in response to said retrieving data associated with said load request, selecting said at least one dispatched instruction dependent on said load request for issue from said issue queue; and
in response to said selecting, issuing said dispatched instruction dependent on said load request on a next processing unit cycle;
executing said dispatched instruction in an execution unit; and
outputting a result of said executing.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for issuing load-dependent instructions from an issue queue in a processing unit in a data processing system. In response to a LSU determining that a load request from a load instruction missed a first level in a memory hierarchy, a LMQ allocates a load-miss queue entry corresponding to the load instruction. The LMQ associates at least one instruction dependent on the load request with the load-miss queue entry. Once data associated with the load request is retrieved, the LMQ selects at least one instruction dependent on the load request for execution on the next cycle. At least one instruction dependent on the load request is executed and a result is outputted.
65 Citations
6 Claims
-
1. A computer-implementable method for issuing load-dependent instructions from an issue queue in a processing unit in a data processing system, said computer-implementable method comprising:
-
determining if a load request from a load instruction missed a first level in a memory hierarchy; in response to determining said load request missed a first level in a memory hierarchy, allocating a load-miss queue entry corresponding to said load instruction; determining if at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit; in response to determining at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit, associating said load-miss queue entry with said at least one dispatch instruction; retrieving data associated with said load request into said first level in said memory hierarchy from another level within said memory hierarchy; in response to said retrieving data associated with said load request, selecting said at least one dispatched instruction dependent on said load request for issue from said issue queue; and in response to said selecting, issuing said dispatched instruction dependent on said load request on a next processing unit cycle; executing said dispatched instruction in an execution unit; and outputting a result of said executing. - View Dependent Claims (2, 3)
-
-
4. A system for issuing load-dependent instructions from an issue queue in a processing unit in a data processing system, said system comprising:
-
at least one processing unit; an interconnect coupled to said at least one processing unit; and a computer usable medium embodying computer program code, said computer usable medium being coupled to said interconnect, said computer program code comprising instructions executable by said plurality of processors and configured for; determining if a load request from a load instruction missed a first level in a memory hierarchy; in response to determining said load request missed a first level in a memory hierarchy, allocating a load-miss queue entry corresponding to said load instruction; determining if at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit; in response to determining at least one dispatched instruction dependent on said load request is located in at least one issue queue in said processing unit, associating said load-miss queue entry with said at least one dispatch instruction; retrieving data associated with said load request into said first level in said memory hierarchy from another level within said memory hierarchy; in response to said retrieving data associated with said load request, selecting said at least one dispatched instruction dependent on said load request for issue from said issue queue; and in response to said selecting, issuing said dispatched instruction dependent on said load request on a next processing unit cycle; executing said dispatched instruction in an execution unit; and outputting a result of said executing. - View Dependent Claims (5, 6)
-
Specification