1
1
Lecture 11: Modern Superscalar Processor Models
Generic Superscalar Models, Issue Queue-based Pipeline, Multiple-Issue Design
2
Generic Superscalar Processor Models
Fetch Rename Wakeup select Regfile FU FU bypass D-cache execute commit Fetch Rename ROB FU FU bypass D-cache execute commit Reg
Wakeup select
Issue queue based Reservation based (already studied) Revised from Paracharla PhD thesis 1998 schedule schedule
3
Issue Queue Based Pipeline
Fetch->Rename->Issue->Reg-read-> Execute- >Writeback/Commit Core structure: register mapping table Rename: translate architectural registers into physical registers Issue: send instruction out to register read and then execution Commit: Process mis-prediction/exception, update register renaming Why study? Used in Alpha 21264, MIPS R10000, Intel P4
4
Compare Reservation Station and Issue Queue
Pipeline Stage Sequence
1.
RS: IF -> REN -> REG/ROB->SCHD->…
2.
IQ: IF -> REN -> SCHD -> REG ->…
- Mapping Table vs. Status Table
1.
RS: Status table chooses architectural register
- r ROB
2.
IQ: Always renames to a physical register
- Register file
1.
RS: Architectural register file stores architectural states
2.
IQ: Physical register file; No architectural register file! Mapping table determines architectural states
5
Compare Reservation Station and Issue Queue
Reservation Station
1.
RS: busy, fu, op, Qj, Qk, Vj, Vk
2.
IQ: busy, fu, op, Pj, Pk, ReadyJ, ReadyK
ROB
1.
RS: Store register values
2.
IQ: No register contents
Pros and Cons of IQ:
- No copying between ROB and register
- Efficient use of register
- Bad: Complex mapping table design
6
Register Mapping Table
Records the mapping from virtual, architectural registers to physical registers Mapping is stored in RAM or CAM memories
Arch reg (virtual) Phy reg