第10章教案解读
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十章控制单元的设计
主要内容:控制单元的设计方法微程序设计及控制单元。目的:掌握控制单元设计思路和基本原则、步骤。
重点内容:
(1)组合逻辑设计;
(2)微操作的节拍安排和基本原则;
(3)组合逻辑设计步骤。
基本讲授内容:
(1)组合逻辑控制单元;
(2)节拍安排的基本原则和典型微操作节拍:
a. 取指周期节拍安排
b.间址周期节拍安排
c.中断周期节拍安排
d.执行周期节拍安排(略讲));
(3)组合逻辑设计步骤:
a.微操作操作时间表
b.最简逻辑表达式
c.操作命令逻辑图
(4)微程序设计
a.微程序控制单元基本工作原理
b.微指令的编码方式
c.微指令序列地址形成
d.微指令格式
e.静态微程序和动态微程序(略)
10.1 组合逻辑设计
1组合逻辑控制单元框图
图 1为简化的控制单元框图。
存放在IR的n位操作码经过一个译码电路产生2“个输出,每对应一种操作码都有一个输出送至CU。
控制单元的时钟输入实际上是一个脉冲序列,其频率即为机器的主频,它使CU能按一定的节拍(T)发出各种控制信号。
以时钟为计数脉冲,通过一个计数器(又称节拍发生器)便可产生一个与时钟周期等宽的节拍序列。
图 1带译码和节拍输入的控制单元框图
2微操作的节拍安排
假设机器采用同步控制,每个机器周期包含3个节拍,而且CPU内部结构如图9.3所示,其中MAR和MDR分别直接和地址总线和数据总线相连,并假设IR的地址码部分与MAR之间有通路。
控制
信号
图9.3未采用CPU内部总线方式的数据通路和控制信号
安排微操作节拍时应注意三点:
第一,有些微操作的次序是不容改变的,故安排微操作节拍时必须注意微操作的先后顺序。
第二,凡是被控制对象不同的微操作,若能在一个节拍内执行,应尽可能安排在同一个节拍内,以节省时间。
第三,如果有些微操作所占的时间不长,应该将它们安排在一个节拍内完成,并且允许这些微操作有先后次序。
按上述三条原则,以9.1所分析的10条指令为例,其微操作的节拍安排如下:
1)、取指周期微操作的节拍安排
①根据原则二,T0节拍安排两个微操作:PC→MAR,1→R;
②根据原则二,T1节拍安排两个微操作:
M(MAR)→MDR和(PC)+1→PC
③T2节拍安排MDR→IR,可同时安排指令译码OP(IR)→ID
(PC)+1→PC操作也可安排在T2节拍内,因PC→MAR后,PC的内容就可修改。
2)、间址周期微操作的节拍安排
T0:Ad(IR)→MAR,l→R
T2:MDR→Ad(IR)
3)、执行周期微操作的节拍安排
•非访存指令
①清除累加器指令CLA。
该指令在执行周期只有一个微操作,按同步控制的原则,此操作可安排在T0-T2的任一节拍内,其余节拍空,如
T0
T1
T2 0→AC
②累加器取反指令COM
累加器取反操作可安排在T0-T2的任一节拍中,即
T0
T1
T2 AC→AC
③算术右移一位指令SHR
T0
T1
T2 L(AC)→R(AC),AC0→AC0
④循环左移一位指令CSL
T0
T1
T2 R(AC)→L(AC),AC0→AC n
⑤停机指令STP
T0
T1
T2 O→G
•访存指令
⑥加法指令ADDX
T0 Ad(IR)→MAR,1→R
T2 (AC)+(MDR)→AC(实际含(AC)→ALU,(MDR)→ALU,ALU→AC)
⑦存数指令STAX
T0 Ad(IR)→MAR,1→W
T1 AC→MDR
T2 MDR→M(MAR)
⑧取数指令LDAX
T0 Ad(IR)→MAR,1→R
T1 M(MAR)→MDR
T2 MDR→AC
•转移类指令
⑨无条件转移指令JMPX
T0
T1
T2 Ad(IR)→PC
⑩有条件转移(负则转)指令BANX
T0
T1
T2 A0•Ad(IR)+A0•(PC)→PC
4)、中断周期微操作的节拍安排
CPU进入中断周期,由中断隐指令完成下列操作(假设程序断点存入主存0号地址单元内):
T0 0→MAR,1→W
T1 PC→MDR
T2 MDR→M(MAR),向量地址→PC
CPU进入中断周期,由硬件将允许中断触发器EINT置为“0”。
3组合逻辑设计步骤
组合逻辑设计控制单元步骤:
•根据上述微操作的节拍安排,列出微操作命令的操作时间表;
•写出每一个微操作命令(控制信号)的逻辑表达式;
•根据逻辑表达式画出相应的组合逻辑电路图。
1)、列出微操作命令的操作时间表
表 1列出了上述10条机器指令微操作命令的操作时间表。表中:FE、IND和EX为CPU工作周期标志,T0-T2为节拍,I为间址标志。
表 1操作时间表
2)、写出微操作命令的最简逻辑表达式
根据表10.1可列出每一个微操作命令的初始逻辑表达式,经化简、整理便可获得能用现成电路实现的微操作命令逻辑表达式。
例如,根据表可写出M(MAR)→MDR微命令的逻辑表达式:
M(MAR)→MDR
=FE•T1+IND•T1(ADD+STA十LDA+JMP+BAN)+EX•T1(ADD+LDA)
=T1{FE+IND(ADD+STA+LDA+JMP+BAN)+EX(ADD+LDA)}
式中ADD、STA、LDA、JMP、BAN均来自操作码译码器的输出。
3)、画出微操作命令的逻辑图
对应每一个微操作命令的逻辑表达式都可画出一个逻辑图。如M(MAR)→MDR的逻辑表达式所对应的逻辑图如图10.2所示,图中未考虑门的扇入系数。
图 2产生M(MAR)→MDR命令的逻辑图
组合逻辑设计方法的特点:
•思路清晰,简单明了;
•每一个微操作命令都对应一个逻辑电路;
•线路结构十分庞杂,也不规范;
•指令系统功能越全,线路也越复杂,调试越困难。