- Feb. 11, 2010
CSE240A: Neha Chachra and Bryan S. Kim 1
Implementing out-of-order execution processors IBM 360/91 High - - PowerPoint PPT Presentation
Implementing out-of-order execution processors IBM 360/91 High performance substrate CSE240A: Neha Chachra and Bryan S. Kim Feb. 11, 2010 1 Historical perspective Pipeline RISC Superscalar Out-of-order VLIW SMT 1960 1970 1980 1990
CSE240A: Neha Chachra and Bryan S. Kim 1
CSE240A: Neha Chachra and Bryan S. Kim 2 CSE240A: Neha Chachra and Bryan S. Kim 2
1960 1970 1980 1990 2000 Out-of-order
1961: IBM Stretch 1962: ILLIAC II 1964: CDC 6600 1967: IBM 360/91 1980: Berkeley RISC 1981: Stanford MIPS 1983: Yale VLIW 1985: Berkeley HPS 1992: IBM PowerPC 600 1995: Intel Pentium Pro 1996: MIPS R10000 1998: DEC Alpha 21264
Pipeline RISC Superscalar VLIW SMT
1974: Data flow 1976: Cray 1 1977: DEC VAX
CSE240A: Neha Chachra and Bryan S. Kim 3 CSE240A: Neha Chachra and Bryan S. Kim 3
CSE240A: Neha Chachra and Bryan S. Kim 4 CSE240A: Neha Chachra and Bryan S. Kim 4
CSE240A: Neha Chachra and Bryan S. Kim 5 CSE240A: Neha Chachra and Bryan S. Kim 5
IF
EX FUn EX FU2 EX FU1 Write results
Issue
Read
ID Structural hazard: delaying the issue WAW data hazard: delaying the issue RAW data hazard: wait until the values of the source registers are available in the registers WAR data hazard: delaying the write if a WAR hazard exists
CSE240A: Neha Chachra and Bryan S. Kim 6 CSE240A: Neha Chachra and Bryan S. Kim 6
CSE240A: Neha Chachra and Bryan S. Kim 7 CSE240A: Neha Chachra and Bryan S. Kim 7
CSE240A: Neha Chachra and Bryan S. Kim 8 CSE240A: Neha Chachra and Bryan S. Kim 8
CSE240A: Neha Chachra and Bryan S. Kim 9 CSE240A: Neha Chachra and Bryan S. Kim 9
CSE240A: Neha Chachra and Bryan S. Kim 10 CSE240A: Neha Chachra and Bryan S. Kim 10
CSE240A: Neha Chachra and Bryan S. Kim 11 CSE240A: Neha Chachra and Bryan S. Kim 11
CSE240A: Neha Chachra and Bryan S. Kim 12 CSE240A: Neha Chachra and Bryan S. Kim 12
CSE240A: Neha Chachra and Bryan S. Kim 13 CSE240A: Neha Chachra and Bryan S. Kim 13
CSE240A: Neha Chachra and Bryan S. Kim 14 CSE240A: Neha Chachra and Bryan S. Kim 14
CSE240A: Neha Chachra and Bryan S. Kim 15 CSE240A: Neha Chachra and Bryan S. Kim 15
CSE240A: Neha Chachra and Bryan S. Kim 16 CSE240A: Neha Chachra and Bryan S. Kim 16
CSE240A: Neha Chachra and Bryan S. Kim 17 CSE240A: Neha Chachra and Bryan S. Kim 17
Example source: “Modern processor design” textbook by John Paul Shen
CSE240A: Neha Chachra and Bryan S. Kim 18 CSE240A: Neha Chachra and Bryan S. Kim 18
– Scoreboard: Instruction issue is stalled – Tomasulo: Resolved by changing the pointer to the reservation for pending update
– Scoreboard: Write back is stalled – Tomasulo: Resolved by early dispatch with register values
CSE240A: Neha Chachra and Bryan S. Kim 19 CSE240A: Neha Chachra and Bryan S. Kim 19
CSE240A: Neha Chachra and Bryan S. Kim 20 CSE240A: Neha Chachra and Bryan S. Kim 20
CSE240A: Neha Chachra and Bryan S. Kim 21 CSE240A: Neha Chachra and Bryan S. Kim 21
Slide source: “Instruction Level Parallelism - Tomasulo” lecture notes by Dean Tullsen
CSE240A: Neha Chachra and Bryan S. Kim 22 CSE240A: Neha Chachra and Bryan S. Kim 22
CSE240A: Neha Chachra and Bryan S. Kim 23 CSE240A: Neha Chachra and Bryan S. Kim 23
1960 1970 1980 1990 2000 Out-of-order
1961: IBM Stretch 1962: ILLIAC II 1964: CDC 6600 1967: IBM 360/91 1980: Berkeley RISC 1981: Stanford MIPS 1983: Yale VLIW 1985: Berkeley HPS 1992: IBM PowerPC 600 1995: Intel Pentium Pro 1996: MIPS R10000 1998: DEC Alpha 21264
Pipeline RISC Superscalar VLIW SMT
1974: Data flow 1976: Cray 1 1977: DEC VAX
CSE240A: Neha Chachra and Bryan S. Kim 24 CSE240A: Neha Chachra and Bryan S. Kim 24
completed!
CSE240A: Neha Chachra and Bryan S. Kim 25 CSE240A: Neha Chachra and Bryan S. Kim 25
CSE240A: Neha Chachra and Bryan S. Kim 26 CSE240A: Neha Chachra and Bryan S. Kim 26
– Can be dependent or independent of each other
– 4 special registers – 4 safe registers – 8 unsafe registers
VLIW - like RISC - like CISC - like
CSE240A: Neha Chachra and Bryan S. Kim 27 CSE240A: Neha Chachra and Bryan S. Kim 27
refill of node cache
CSE240A: Neha Chachra and Bryan S. Kim 28 CSE240A: Neha Chachra and Bryan S. Kim 28
Fired Fired Fired
CSE240A: Neha Chachra and Bryan S. Kim 29 CSE240A: Neha Chachra and Bryan S. Kim 29
CSE240A: Neha Chachra and Bryan S. Kim 30 CSE240A: Neha Chachra and Bryan S. Kim 30
CSE240A: Neha Chachra and Bryan S. Kim 31 CSE240A: Neha Chachra and Bryan S. Kim 31
CSE240A: Neha Chachra and Bryan S. Kim 32 CSE240A: Neha Chachra and Bryan S. Kim 32
Retired Retired Retired E x c e p t i
CSE240A: Neha Chachra and Bryan S. Kim 33 CSE240A: Neha Chachra and Bryan S. Kim 33
CSE240A: Neha Chachra and Bryan S. Kim 34 CSE240A: Neha Chachra and Bryan S. Kim 34
– Allow next branch to proceed – Mark branch op as ready in AIT
– Redirect instruction stream – Allow next branch to proceed – Restore RAT entries – Invalidate node table entries younger than branch – Invalidate mem buffer entries younger than branch – Invalidate AIT younger than branch
CSE240A: Neha Chachra and Bryan S. Kim 35 CSE240A: Neha Chachra and Bryan S. Kim 35
– RISC, RISC-opt, HPSm, HPSm-opt
– Small enough to do hand-translation – Procedure / branch intensive – Well-performed on RISC II
CSE240A: Neha Chachra and Bryan S. Kim 36 CSE240A: Neha Chachra and Bryan S. Kim 36
– HPS cycle time: 100ns – RISC II cycle time: 330ns
– Large register file of RISC II makes it slow – HPSm is equipped with faster cache memory
CSE240A: Neha Chachra and Bryan S. Kim 37 CSE240A: Neha Chachra and Bryan S. Kim 37
CSE240A: Neha Chachra and Bryan S. Kim 38 CSE240A: Neha Chachra and Bryan S. Kim 38
CSE240A: Neha Chachra and Bryan S. Kim 39 CSE240A: Neha Chachra and Bryan S. Kim 39
CSE240A: Neha Chachra and Bryan S. Kim 40 CSE240A: Neha Chachra and Bryan S. Kim 40
CSE240A: Neha Chachra and Bryan S. Kim 41 CSE240A: Neha Chachra and Bryan S. Kim 41
CSE240A: Neha Chachra and Bryan S. Kim 42 CSE240A: Neha Chachra and Bryan S. Kim 42
CSE240A: Neha Chachra and Bryan S. Kim 43 CSE240A: Neha Chachra and Bryan S. Kim 43
CSE240A: Neha Chachra and Bryan S. Kim 44 CSE240A: Neha Chachra and Bryan S. Kim 44
CSE240A: Neha Chachra and Bryan S. Kim 45 CSE240A: Neha Chachra and Bryan S. Kim 45