Method and apparatus for scheduling instructions in waves
AssigneeIntel Corporation
InventorsNazar Zaidi, Gary Hammond, Ken Shoemaker
Life of this patent
Estimating the term…
Loading patent…
AssigneeIntel Corporation
InventorsNazar Zaidi, Gary Hammond, Ken Shoemaker
Estimating the term…
In a microprocessor, an Instruction scheduler 30 includes a dependency matrix 36 and a waiting buffer 34. A dependency determination unit 32 receives instructions to be executed, forwards the instructions to the waiting buffer 34, determines if any dependency exists between the instructions, and forwards the dependency information to the dependency matrix 36 in the form of a dependency vector 40. Dependency matrix 36 periodically determines whether any of the instructions contained in the waiting buffer 34 are ready to be executed, that is, no dependencies exist for that instruction. All identified instructions are then assigned to a current wave to be dispatched. The identified instructions are then dispatched for execution as execution resources become available. As each instruction is dispatched for execution in the waiting buffer 34, the dependency vector 40 for all dependent instructions is cleared for subsequent execution. However, until all instructions in the current wave are dispatched, no instructions in a subsequent wave may be dispatched. In this manner, an out-of-order processing scheme is implemented that efficiently accounts for data dependency between processed instructions.
A method for scheduling instructions for dispatch to an execution unit, said method comprising the steps of:
An apparatus for scheduling instructions for dispatch to an execution unit, comprising:
An apparatus for scheduling instructions for dispatch to an execution unit in waves, comprising:
An apparatus for scheduling instructions for dispatch, comprising:
Dependencies are inferred from the claim text.