Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

] <§4.4>Explain each of the “don’t cares” in Figure 4.18. Chapter 4 The Processo

ID: 3701383 • Letter: #

Question

] <§4.4>Explain each of the “don’t cares” in Figure 4.18.
Chapter 4 The Processor Memto Reg Mem Mem- instruction! ALUSrc| Reg I write! Read I write | Branch | ALUOp? ALUOpo R-format id sd The setting of the control lines is completely determined by the opcode fields of the instructionT e corresponds to the R-format instructions (add, sub, and, and or). For all these instructions, the source register cliai he destination register field is rd; this defines how the signals ALUSrc is set. Furthermore, an R-type instruction wre PC is replaced by the branch target if the Zero output of the ALLU is also high. The ALUOp feld for R-type nstrac ate that the ALU control should be generated from the funct fields. The second and third rows of this table give the cve e d and sd. These ALUSre and ALUOp fields are set to perform the address calculation. The MemRead an memory access. Finally, RegWrite is set for a load to cause the result to be store field is irrelevant when t Thus, th the Reg wa MemtoReg ct (ALU control = 01), which is used to test for equality. Notice that the MemtoReg f register is not being written, the value of the data on the register data write port is not used the table is replaced with X for don't care. This type of don't care must be added by the designer, since it dep tapath works. Add Add Su Shift eft 1 Branch Instruction |6-0 Control AU ALUSrc Instruction [19-15 Read PC Read address Instruction 14-2register 1 Red

Explanation / Answer

ANSWER:

EXPLANATION OF DON'T OF THE GIVEN TABLE:

1. a don't care simply that the value of that is does not matter whether its value "0" or "1"

2. in the given table don't cares are there for "memtoreg" signal for "sd" and "beq" instructions.

3." memtoreg" control signal is used to determine whether the contents that are going to be written to the register file is to be computed/manipulated by the ALU or read from the data memory.

1) FOR "BEQ":

* The "beq" instruction is indented at performing a branch on satisfying an equality test.

* thus is will not be result in any written on the register file.

* that why the "reg write" control signal is "0".

* thus it doesn't matter what is the value of "memtoreg",since it will not be used.

2) FOR"SD":

* The "sd" instruction is to store a double word into the memory.

* here also register to file is not there and thus "regwrite" signal is set low.

* thus it will not matter where the data is taken from since that data is not taken.

* thus "memtoreg" is don't care in case of "sd" also.