PPT第5章 第2部分预习题目
(二)R型指令的数据通路 (指令功能与其对应的逻辑结构)
功能:R[rd] ← R[rs] op R[rt],如:add rd, rs, rt
第2版图5.15(第3版图5.9)
(三)I型指令的数据通路(指令功能与其对应的逻辑结构)
1. I型指令:I型立即数运算指令的数据通路
1)书中的表5.2中的11条指令中,有哪几条指令是I型指令立即数运算指令?源操作数寄存器如何确定?目标寄存器?
2)第2版 图5.16(第3版图5.10) I型指令立即数运算指令取指后,Rt选择的寄存器内容输出到busA? busB? 对结果有影响吗?
3)第2版 图5.16(第3版图5.10) 相对于图第2版5.15(图5.9)增加哪几部分?需要增加的控制信号及其作用?
4)第2版图5.16(第3版图5.10) I型指令立即数运算指令涉及对ALU有几种操作?
2 I型指令:Load/Store 指令的数据通路
3.分支指令的数据通路
beq rs, rt, imm16
1)分支指令的功能?
2)判断的条件是什么?用到ALU有几种操作? 用到标志位?标志位怎么用?
3) 第2版图5.18(第3版图5.12) 比第2版图5.17(第3版图5.11) 增加了哪些单元?增加了哪些控制信号?
4)第2版图5.18(第3版图5.12)中两处出现了imm16,它们的作用一样吗?
5)解释图第2版5.19(第3版图5.13)工作原理。
(四)J型指令的数据通路 (指令功能与其对应的逻辑结构)
1)J指令的取指数据通路在第2版图5.20(第3版图5.14)中吗?若,没有,请指出是在哪个图中?
2)第2版图5.20(第3版图5.14)比第2版图5.19(第3版图5.13)增加了什么单元和控制信号?
3)第2版图5.20(第3版图5.14)的设计,新的PC值能否影响旧值,而影响当前指令执行?
(五)ALU的数据通路设计
根据指令集中R,I,J指令数据通路中用到的ALU操作进行详细设计。
(六)控制逻辑单元设计
根据第2版图5.22(第3版 图5.16)完整的数据通路,分析控制信号取值。分析方法可参考PPT的第5章第一部分的第2,3节,第2版教材162-169(第3版 143-150)
因为取指阶段每一条指令都相同,故分析R,I,J各指令执行阶段。
1 分析每一条指令正确执行阶段的数据通路时,所有控制信号的取值,并进行列表,与表5.4对照
func op 控制信号 |
100000 |
100010 |
100011 |
101010 |
101011 |
与func无关 |
|||||
000000 |
000000 |
000000 |
000000 |
000000 |
001101 |
001001 |
100011 |
101011 |
000100 |
000010 |
|
R-add |
R-sub |
R-subu |
R-slt |
R-stlu |
I-ori |
I-addiu |
I-lw |
I-sw |
I-beq |
J-jump |
|
Branch |
|||||||||||
Jump |
|||||||||||
RegDst |
|||||||||||
ALUsrc |
|||||||||||
ALUctr |
|||||||||||
MemtoReg |
|||||||||||
RegWr |
|||||||||||
MemWr |
|||||||||||
ExtOp |
2 理解分层(多层)译码思想,教材P.166;参考本校教学平台本课程“教学资源”中第5章“计算机组成与设计:硬件 软件接口(第3版-中文.pdf,p195-197),在此基础上,分析表5.5,ALUop如何设计?
3.以上根据1,2内容,填写主控单元真值表:
000000 |
001101 |
001001 |
100011 |
101011 |
000100 |
000010 |
|
R型 |
I-ori |
I-addiu |
I-lw |
I-sw |
I-beq |
J-jump |
|
Branch |
|||||||
Jump |
|||||||
RegDst |
|||||||
ALUsrc |
|||||||
ALUctr |
|||||||
MemtoReg |
|||||||
RegWr |
|||||||
MemWr |
|||||||
ExtOp |
|||||||
ALUOP<2> |
|||||||
ALUOP<1> |
|||||||
ALUOP<0> |
|||||||
R-tpye |
2 控制单元设计
Branch=
RegWr
ALUOP<2>=
ALUOP<1>=
ALUOP<0>=
R-type=
ALUctr<2>=
ALUctr<1>=
ALUctr<0>=