Question: Problem 3 : ( 1 6 points ) Your single - cycle processor seems to be executing random instructions. You need to find out why.
Problem : points
Your singlecycle processor seems to be executing random instructions. You need to find out why. On the next page is a picture of your datapath note that this is somewhat different from the datapath used in class and the control table is below. You suspect that the controller is broken. You may assume that the datapath modules eg the ALU, etc. work correctly.
You may assume the following are correct:
The register file and memory both write on the rising clock edge when their respective control signals, RegWr and MemWr, are asserted.
The extender will zero extend if the ExtOp bit is and sign extend when the ExtOp bit is
The data memory reads asynchronously but has synchronous writes.
The module will output if all the input bits are and will output otherwise.
The ALUctr encoding is as follows:
For the following stream of instructions, what does your broken processor actually do Here are some possible answers.
Functions correctly
Incorrect functionality: Indicate the control signals causing this error, and if it implements a different instruction then specify that instruction including the type of operation and registers used operation rs rt rd
Functions correctly only under certain circumstances: Specify the circumstance If there is more than one possibility, list all of them. For simplicity, we have used the actual register numbers rather than names.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
