Next: Instruction issue/overtaking
Up: Dynamic Instruction Scheduling
Previous: Dynamic Instruction Scheduling
Goal: schedule execution to prevent hazards from causing
stalls. Recall the three kinds of hazard:
- Control (conditional branches)
- Structural (contention for hardware)
- Data
- RAW (read-after-write)
- WAW (write-after-write)
- WAR - new
We will consider two approaches:
Register renaming is the basis for speculative execution,
which addresses control hazards.