Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

Question 3.

4
Original program: takes 27 clock cycles to be executed. There are 5 hazards:
SUB
r3,r3,r3
IF ID EX ME WB
BLT
r2,r3,Out0
IF 0 0 ID EX ME WB ------------> Data depe
ndence of the result of the SUB
BGE
r2,r1,Out0
0 0 0 0 0 IF ID EX ME WB -----------> Flow control hazard
BE
r2,r3,Out1
0 0 0 0 0 0 0 0 IF ID EX ME WB
------------> Flow control hazard
SHL
r4,r1,1
0 0 0 0 0 0 0 0 0 0 0 IF
ID EX ME WB
BLE
r4,r2,Skip
0 0 0 0 0 0 0 0 0 0 0
IF 0 0 ID EX ME WB ------------> Data dependence of the result of the SHL and
Flow control hazard
SUB
r2,r1,r1
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 IF ID EX ME WB
Question 3.5
Rearranged program: Instruction SHL is moved to the second row and all the rest
instructions increase one position. This program takes 24 cycles to be done.
SUB
r3,r3,r3
IF ID EX ME WB
SHL
r4,r1,1
IF ID EX ME WB
BLT
r2,r3,Out0
IF 0 ID EX ME WB
BGE
r2,r1,Out0
0 0 0 0 IF ID EX ME WB
BE
r2,r3,Out1
0 0 0 0 0 0 0 IF ID EX ME WB
BLE
r4,r2,Skip
ID EX ME WB
SUB
r2,r1,r1
0 0 0 IF ID EX ME WB

0 0 0 0 0 0 0 0 0 0 IF
0 0 0 0 0 0 0 0 0 0

Question 3.7
Branch prediction: It is assumed that the prediction is
branch.
Branch predictor (BP) 1 inst. deep: This program takes
SUB
r3,r3,r3
IF ID EX ME WB
SHL
r4,r1,1
IF ID EX ME WB
BLT
r2,r3,Out0
IF 0 ID EX ME WB
BGE
r2,r1,Out0
0 0 IF ID EX
BE
r2,r3,Out1
0 0 0 IF
BLE
r4,r2,Skip
--------> BP
SUB
r2,r1,r1

ALLWAYS not to take the


16 cycles to be done.

ME WB ------------> BP
ID EX ME WB

0 0 0 0 IF ID EX ME WB

----

0 0 0 0 0 IF ID EX ME WB

Branch predictor (BP 1 & 2) 2 inst. deep: This program


ne.
SUB
r3,r3,r3
IF ID EX ME WB
SHL
r4,r1,1
IF ID EX ME WB
BLT
r2,r3,Out0
IF 0 ID EX ME WB
BGE
r2,r1,Out0
0 0 IF ID EX
BE
r2,r3,Out1
0 IF ID EX
BP2
BLE
r4,r2,Skip
0 0 IF
SUB
r2,r1,r1
0 0
--------> BP1

takes 14 cycles to be do

ME WB ------------> BP1
ME 0 WB ------------>
ID EX ME WB
0 IF ID EX ME WB

----

You might also like