Question: 1. Consider the following MIPS program: ADDI R1, R0, #1 SW R1, 2000 (R0) LOOP: LW R1, 2000 (R0) MULT R2, R1, #4 ADDI R3,R2,
1. Consider the following MIPS program:
ADDI R1, R0, #1
SW R1, 2000 (R0)
LOOP: LW R1, 2000 (R0)
MULT R2, R1, #4
ADDI R3,R2, #5000
LW R4, 0 (R3)
LW R5, 1500 (R0)
ADD R6, R4, R5
LW R1, 2000 (R0)
MULT R2, R1, #4
ADDI R1, R1, #1
SW R6, 0(R7)
SW R1, 2000 (R0)
ADDI R1, R1, #1
SW R1, 2000 (R0)
ADDI R1, R1, #1
LW R1, 2000 (R0)
ADDI R8, R1, #-101
BNEZ R8, LOOP
a) What is the value of IC for this program?
b) What is the fraction of ALU instructions?
c) What is the fraction of Loads/Store instructions?
d) What is the fraction of Branch instructions?
e) Assume ALU, Loads/Stores, and Branch instructions require one, two, and three clock cycles respectively. Find CPI.
f) Assuming the previous parts and 2 ns clock cycles, what is the execution time of this program?
2. Write a MIPS code that would switch the values of registers R1 and R2. Your code SHOULD NOT use Loads/Stores. Your code SHOULD use the MIPS syntax explained in class.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
