In this exercise we examine in detail how an instruction is executed in a single- cycle datapath. Problems in this exercise refer to a clock cycle in which the processor fetches the following instruction word: 10101100100001010000000000011100 Assume that the data memory is all zeros and that the processor’s registers have the following values at the beginning of the cycle in which the above instruction word is fetched: R0 R1 R2 R3 R4 R5 R6 R8 R12 R31 0 2 4 6 13 10 12 16 24 31 a. What are the outputs of the sign-extend and the jump “Shift-Left-2” (near the top of the following Figure) for this instruction word? (Pic3) b. What are the values of ALU control unit’s inputs (ALUOp and Instruction[5-0]) for this instruction? c. What is the new PC address after this instruction is executed? Highlight the path through which this value is determined. d. For the ALU and the two add units, what are their data input values? ALU Add (PC+4) Add (Branch) Input#1 Input#2 Input#1 Input#2 Input#1 Input#2 e. What are the values of all inputs for the “Registers” unit? Read Reg#1 Read Reg#2 WriteReg WriteData RegWrite
In this exercise we examine in detail how an instruction is executed in a single-
cycle datapath. Problems in this exercise refer to a clock cycle in which the
processor fetches the following instruction word:
10101100100001010000000000011100
Assume that the data memory is all zeros and that the processor’s registers have
the following values at the beginning of the cycle in which the above instruction
word is fetched:
R0 |
R1 |
R2 |
R3 |
R4 |
R5 |
R6 |
R8 |
R12 |
R31 |
0 |
2 |
4 |
6 |
13 |
10 |
12 |
16 |
24 |
31 |
a. What are the outputs of the sign-extend and the jump “Shift-Left-2” (near the top
of the following Figure) for this instruction word? (Pic3)
b. What are the values of ALU control unit’s inputs (ALUOp and Instruction[5-0])
for this instruction?
c. What is the new PC address after this instruction is executed? Highlight the path
through which this value is determined.
d. For the ALU and the two add units, what are their data input values?
ALU |
Add (PC+4) |
Add (Branch) |
Input#1 Input#2 |
Input#1 Input#2 |
Input#1 Input#2 |
|
|
|
e. What are the values of all inputs for the “Registers” unit?
Read Reg#1 |
Read Reg#2 |
WriteReg |
WriteData |
RegWrite |
|
|
|
|
|
Trending now
This is a popular solution!
Step by step
Solved in 2 steps