Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Data Hazards 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 ... .. .

Ähnliche Präsentationen


Präsentation zum Thema: "Data Hazards 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 ... .. ."—  Präsentation transkript:

1 Data Hazards 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 ... .. .

2 Step 3, we calculate $0 - $1 ! ! ! HAZARD ! ! ! OLD VALUE OF $6 IM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 add $7 $6 $1 IM Reg DM Reg ! ! ! HAZARD ! ! ! OLD VALUE OF $6

3 Step 4, we calculate $1 + $6 IM Reg DM Reg IM Reg DM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 add $7 $6 $1 IM Reg DM Reg

4 Step 5, Now we write $6 HAZARD OVER NEW VALUE OF $6 WRITTEN TO REGFILE
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 add $7 $6 $1 IM Reg DM Reg HAZARD OVER NEW VALUE OF $6 WRITTEN TO REGFILE

5 Step 2, nop IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 nop IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg

6 Step 3, nop IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 nop IM Reg DM Reg 0x38 nop IM Reg DM Reg IM Reg DM Reg

7 Step 4, add $7 $6 $1 IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg IM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 nop IM Reg DM Reg 0x38 nop IM Reg DM Reg 0x3C add $7 $6 $1 IM Reg DM Reg

8 Step 5, new $6 used IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg IM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 nop IM Reg DM Reg 0x38 nop IM Reg DM Reg 0x3C add $7 $6 $1 IM Reg DM Reg

9 Data Hazards Read After Write
Solved by inserting “nop” operations (bubbles) or by hardware “stalling” the pipe

10 Cost? + Hardware inexpensive - Performance (throughput)

11 Data Hazards sub $6 $0 $1 add $7 $6 $1 add $7 $7 $6 .. .

12 We calculate $0 - $1 ! ! ! HAZARD ! ! ! OLD VALUE OF $6 IM Reg DM Reg
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 add $7 $6 $1 IM Reg DM Reg ! ! ! HAZARD ! ! ! OLD VALUE OF $6

13 We “forward” the new result
0x30 sub $6 $0 $1 IM Reg DM Reg 0x34 add $7 $6 $1 IM Reg DM Reg HAZARD SOLVED BY “FORWARDING”

14 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $1 ... ..
Zero ext. HERE IS THE RESULT Branch logic A ALU 4 B + 31 + Sgn/Ze extend 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $1 ... ..

15 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $1 ... ..
Zero ext. WE NEED IT HERE Branch logic A ALU 4 B + 31 + Sgn/Ze extend 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $1 ... ..

16 0x30 sub $6 $0 $1 > 0x34 add $7 $6 $1 ... .. DATA WORD add $7 $6 $1
A DATA WORD B 0x30 sub $6 $0 $1 > 0x34 add $7 $6 $1 ... ..

17 0x30 sub $6 $0 $1 > 0x34 add $7 $6 $1 ... .. REG NR add $7 $6 $1
= A B REG NR 0x30 sub $6 $0 $1 > 0x34 add $7 $6 $1 ... ..

18 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 0x38 add $7 $7 $6
Zero ext. Branch logic A ALU 4 B + 31 + Sgn/Ze extend 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 0x38 add $7 $7 $6 > 0x3C sw $5 4($0)

19 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $6 ... ..
= A ALU B = 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $6 ... ..

20 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $6 ... ..
= = A ALU B = = 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 > 0x38 add $7 $7 $6 ... ..

21 Data Hazards sub $6 $0 $1 add $6 $6 $1 add $7 $6 $1 .. .

22 0x30 sub $6 $0 $1 0x34 add $6 $6 $1 > 0x38 add $7 $6 $1 ... ..
= = A ALU B = = 0x30 sub $6 $0 $1 0x34 add $6 $6 $1 > 0x38 add $7 $6 $1 ... ..

23 Performance No “Bubbles” or “Stalls”
increased throughput But did we change the critical path? Topological sort Static timing analysis

24 Zero ext. = = Branch logic A ALU 4 B + = = 31 + Sgn/Ze extend

25 Forwarding Logic W Reg # DRD/DWT W >=1 = Reg # = & & DATA DATA

26 Critical path ALU? Zero ext. = = Branch logic A ALU 4 B + = = 31 +
A ALU 4 B + = = 31 + Sgn/Ze extend

27 Critical path DATA MEMORY?
Zero ext. = = Branch logic A ALU 4 B + = = 31 + Sgn/Ze extend

28 All problems solved? NO, what will happen if...... lw $6 $0($1)
add $4 $6 $1 add $7 $6 $2

29 OK, “DM” to “DE” IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg
0x30 lw $6 $0($1) IM Reg DM Reg IM Reg DM Reg 0x34 add $4 $6 $1 0x38 add $7 $6 $2 IM Reg DM Reg

30 “DM” to “EX” ? IM Reg DM Reg IM Reg DM Reg IM Reg DM Reg
0x30 lw $6 $0($1) IM Reg DM Reg IM Reg DM Reg 0x34 add $4 $6 $1 0x38 add $7 $6 $2 IM Reg DM Reg


Herunterladen ppt "Data Hazards 0x30 sub $6 $0 $1 0x34 add $7 $6 $1 ... .. ."

Ähnliche Präsentationen


Google-Anzeigen