文章目录
第十章 控制单元的设计
10.1 组合逻辑设计
CU 外特性
微操作的节拍安排
假设采用 规整的同步控制方式
一个 机器周期 内有 3 个节拍(时钟周期)
这里和第9章 控制信号序列的分析差不多,只不过多了节拍的安排罢了
安排微操作时序的原则
- 原则一 注意微操作的 先后顺序
- 被控对象不同 的微操作(硬件资源不冲突)尽量安排在 一个节拍 内完成,节省时间
- 占用 时间较短 的微操作,尽量 安排在 一个节拍 内完成,并允许有先后顺序。
下面以给出指令周期的微操作的节拍安排
- 取指周期
T0 PC -> MAR
1 -> R
T1
M(MAR) -> MDR
(PC)+1 -> PC
T2
MDR -> IR
OP(IR) -> ID
- 间址周期
T0
Ad(IR) -> MAR
1->R
T1
M(MAR)->MDR
T2
MDR->Ad(IR)
-
执行周期
略 -
中断周期
T0
(SP)-1 -> MAR
1 -> W
0 -> EINT //关中断
T1
PC ->MDR
T2
MDR -> M(MAR)
向量地址 -> PC
以书上P399 10.2为例:
- SUB E,@H ;(E)-((H)) →E 寄存器间接寻址
取值周期
T0
PC ->Bus- > MAR
1-> R
T1
M(MAR) -> MDR
(PC)+1 -> PC
T2
MDR -> Bus ->IR
OP(IR) -> 微操作命令形成部件
间址周期 (// 这一步有点争议,应该写在执行周期,因为这里是去操作数)
T0
H ->Bus ->MAR
1-> R
T1
M(MAR)->MDR
执行周期
T0
MDR -> Bus -> R1
T1
(E)-(R1) -> ALU -> R2
T2
R2 -> Bus -> E
(存数)
3) STA @mem ;ACC →((mem)) 存储器间接寻址
取值周期
T0
PC ->Bus- > MAR
1-> R
T1
M(MAR) -> MDR
(PC)+1 -> PC
T2
MDR -> Bus ->IR
OP(IR) -> 微操作命令形成部件
间址周期
T0
Ad(IR) -> Bus -> MAR
1-> R
T1
M(MAR) -> MDR
执行周期
T0
MDR -> Bus-> MAR
1 ->W
T1
ACC -> Bus -> MDR
MDR-> M(MAR)
-
补充:指令字长= n倍存储字长的情况
没有什么大区别,只不过要去两次就是了。
T0 PC → Bus → MAR, 1 → R
T1 M(MAR) → MDR , (PC)+ 1 →PC
T2 MDR → Bus →IR, OP(IR) →微操作命令形成部件
T3 PC → Bus → MAR, 1 → R
T4 M(MAR) → MDR , (PC)+ 1 →PC
T5 MDR → Bus →Ad(IR)(可以省略)
组合逻辑设计步骤
- 列出指令系统中所有指令的微操作节拍安排。
- 列出微操作时间表 。
3.依次写出某条微操作命令(控制信号)的最简表达式 。
(这里以 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 ) }
4.画出逻辑电路图。
(如下图)
注:FE、IND、EX是CPU工作周期标志,
T0,T1,T2是节拍;
I是间址周期、IND是表示是否是多次寻址
10.2 微程序设计
介绍一些术语:
微(操作)命令:构成控制信号序列的最小单位,也就是 控制信号;
微操作:由若干微命令组成的最基本的操作;
微指令:若干微命令的组合;
微程序:一系列微指令的有序集合。
微周期:指从控制存储器中读取一条微指令并执行相应的微操作所需的时间。
控制存储器:存放微程序的只读存储器。
基本思想及具体做法
-
采用了“存储逻辑”的设计思想
将控制器需要产生的微操作命令,以微代码的形式编成微指令,存在专门的存储器中,执行机器指令时,从该存储器中取出微指令,产生执行机器指令所需的微操作命令序列。 -
采用了“程序设计”的技术
把一条机器指令所需要的微操作命令序列,以微指令的形式编成一段微程序,整个指令系统就编出一整套微程序,采用“顺序、转移、多分支”等程序设计的技术进行微程序的设计。 -
微指令
以二进制代码形式存放,每位代表一个控制信号(为1表示控制信号有效,为0表示无效) -
控制存储器:存放微程序的只读存储器。
执行一条指令需要从控存中多次去除微指令,所以对存储器的速度要求很高。
类比:
程序 ---- 微程序
指令 ---- 微指令
机器指令对应的微程序
微程序个数 = 3 + 指令个数
微程序控制单元的基本框图
- 微指令基本格式
组合逻辑控制方式和微程序控制方式的比较
- 组合逻辑控制方式优缺点
- 思路清晰,简单明了
- 设计不规整,调试困难,修改困难
- 速度快(RISC采用)
- 微程序控制方式优缺点