Question
Suppose you wish to implement the following instruction in the MIPS datapath: DCB rs, Label DCB stands for Decrement and Branch. As with other branch
Suppose you wish to implement the following instruction in the MIPS datapath:
DCB rs, Label
DCB stands for Decrement and Branch. As with other branch instructions, Label is the branch target address, specified in the low order 16 bits of the instruction word. Register rs is in bits [25 . . 21] of the instruction word. This instruction works as follows.
Decrement the contents of register rs by 1.
If the result is zero, branch to the target address.
Update the contents of register rs with R[rs] 1.
Assume that DCB is taken, so PC should be updated to the branch target address.
(a) Describe the changes you would make to implement this instruction in the MIPs single cycle datapath given in the handout.
(b) Specify the values of the following control variables to implement this instruction with the changes you made to the MIPS single cycle datapath given in the handout.
RegDst
ALUSrc
MemToReg
RegWrite
PCSrc
MemWrite
MemRead
ALUOp just write the name of the operation here (Add, Sub, etc.):
(c) Describe the changes you would make to implement this instruction in the MIPS multicycle datapath given in the handout.
(d) Specify the complete finite state machine for the control necessary to implement DCB with the changes you made to the MIPS multicycle datapath given in the handout.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started