chillon Stack Overflow • Recommends
On “How does CPU reorder instructions”
Instructions are fetched in program order into an instruction queue; from the queue they are decoded and moved into reservation stations . These reservation stations effectively do the reordering: instructions are dispatched for execution to execution units as their arguments become available and the time all the arguments become available generally does not correspond to the order in the instruction queue/memory.
For an example, using the Tomasulo Algorithm, see these two videos:
Issue (and register renaming):
link to this video
Dispatch/reordering:
link to this video