Question: Problem 1 Consider the following MIPS code. I 0 : Iw $s 1 , 0 ( $s 2 ) 1 1 : add $ s

Problem 1
Consider the following MIPS code.
I0: Iw $s1,0($s2)
11: add $s5,$s1,$s3 # $s5:= $s1+ $s3
12: beq $s5,$s7,L1 # if ($s5= $s7) goto L1
13: , Iw $s3,12($54)
14: ,sw$s5,0($s3)
15: L1: sw $s5,12($s4)
A) Suppose a MIPS processor uses the simple 5-stage pipeline, where the stages are instruction fetch (IF), instruction decode and operand fetch (ID), execute and calculate address
(EX), memory access (M), and write back (WB). In addition, suppose that:
The instruction and data cache are unified and can only support one read or write or instruction fetch operation each cycle.
The pipeline does not have "forwarding" hardware. Thus, if an instruction (i+1) relies on a value written into a register by an instruction (i), then the execute stage for (i+1)
cannot proceed until the register write stage for (i) has completed.
In the absence of hazards, a new instruction can be fed to the pipeline every cycle.
Assume the branch is not taken.
How many cycles does this code take to complete? Use the table below.
_cycles
B) Suppose that the MIPS processor with the 5-stage pipeline from part A). In addition, suppose that:
The instruction and data caches are split.
The pipeline has hazard detection and forwarding.
Branches stall 1 cycle if one of the test registers is the destination of the immediately preceding arithmetic or logic instruction.
How many cycles does this code take to complete? Use the table below.
cycles
C) Suppose now that the Execution stage of the pipeline is split into two stages E1 and E2 and that instruction (i+1) cannot use E1 until instruction (i) has released E2, or more
general E1 cannot be used again until E2 is finished processing. Using the assumptions from part B), how many cycles does this code take to complete? Use the table below.
Problem 1 Consider the following MIPS code. I 0 :

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!