An instruction goes through 3 steps (c‘ed)
2. Execute
- If any of the source operands is not ready (i.e., the reservation station holds a name), monitor the bus for broadcast of a result
- When both operands have values, execute
3. Write result
- Broadcast name of the unit and value computed.
Note two more sources of structural hazard:
- Two reservation stations in the same functional unit are ready to execute in the same cycle: choose the “first” one
- Two functional units want to broadcast at the same time. Priority is encoded in the hardware