Chapter 4: Q2E (page 357)
Question: The basic single-cycle MIPS implementation in Figure 4.2 can only implement some instructions. New instructions can be added to an existing Instruction Set Architecture (ISA), but the decision whether or not to do that depends, among other things, on the cost and complexity the proposed addition introduces into the processor datapath and control. The first three problems in this exercise refer to the new instruction: Instruction: LWI Rt,Rd(Rs) Interpretation: Reg[Rt] = Mem[Reg[Rd]+Reg[Rs]] 4.2.1 [10] Which existing blocks (if any) can be used for this instruction? 4.2.2 [10] which new functional blocks (if any) do we need for this instruction? 4.2.3 [10] what new signals do we need (if any) from the control unit to support this instruction?
Short Answer
4.2.1
The instruction memory, the register read ports, the path which can be able to pass the immediate to ALU, and the RegWrite (register write port) can be used for this specified instruction.
4.2.2
It is needed to extend the existing ALU to do shifts (SLL, to extend the offset to 32bit value).
4.2.3
It is needed to change the operation of the ALU control signals for supporting the operation of the SLL in ALU.