Execution steps under scoreboard control (c’ed)
4. Write result
- Before writing, check for WAR hazards. If one exists, the unit is stalled until all WAR hazards are cleared (note that an instruction in progress, i.e., whose operands have been read, won’t cause a WAR)
5. Delay
- Because forwarding is not implemented, there should be one unit of delay between writing and reading the same register (this restriction seems artificial to me and is “historical”).
- Similarly, it takes one unit of time between the release of a unit and its possible next occupancy