【计算机组成原理】中央处理器(四)—— 控制器的功能和工作原理
一、前言
根据 指令操作码、目前的机器周期、节拍信号、机器状态条件,即可确定现在这个节拍下应该发出哪些“微命令”。
CU 发出一个微命令,可完成对应微操作。
如: 微命令1 使得 PCout、MARin 有效。完成对应的微操作1 (PC)→MAR
二、硬布线控制器
M(MAR)→MDR 微操作命令的逻辑表达式:
FE·T1 + IND·T1(ADD+STA+LDA+JMP+BAN) + EX·T1(ADD+LDA)
(一)、安排微操作时序的原则
原则一 微操作的 先后顺序不得 随意 更改
原则二 被控对象不同 的微操作,尽量安排在 一个节拍 内完成
原则三 占用 时间较短 的微操作,尽量 安排在 一个节拍 内完成并允许有先后顺序
1. 安排微操作时序-取指周期
2. 安排微操作时序-间址周期
硬布线控制器的特点:
- 指令越多,设计和实现就越复杂,因此一般用于 RISC(精简指令集系统)
- 如果扩充一条新的指令,则控制器的设计就需要大改,因此扩充指令较困难。
- 由于使用纯硬件实现控制,因此执行速度很快。微操作控制信号由组合逻辑电路即时产生。
3. 安排微操作时序-执行周期
4. 安排微操作时序-间址周期
(二)、组合逻辑设计
设计步骤:
- 列出操作时间表(列出在取指、间址、执行、中
断周期,T0、T1、T2 节拍内有可能用到的所有微操作) - 写出微操作命令的最简表达式
- 画出逻辑图
三、微程序控制器
指令是对程序执行步骤的描述,微指令是对指令执行步骤的描述。
(一)、微指令的设计
微命令与微操作一一对应,一个微命令对应一根输出线;有的微命令可以并行执行,因此一条微指令可以包含多个微命令
(二)、微指令的格式
相容性微命令:可以并行完成的微命令。
互斥性微命令:不允许并行完成的微命令。
水平型微指令
一条微指令能定义多个可并行的微命令。
优点:微程序短,执行速度快;
缺点:微指令长,编写微程序较麻烦。
垂直型微指令
一条微指令只能定义一个微命令,由微操作码字段规定具体功能。
优点:微指令短、简单、规整,便于编写微程序;
缺点:微程序长,执行速度慢,工作效率低。
混合型微指令
在垂直型的基础上增加一些不太复杂的并行操作。
微指令较短,仍便于编写;微程序也不长,执行速度加快。
(三)、微指令的编码方式
(1) 直接编码(直接控制)方式
(2) 字段直接编码方式
(3) 字段间接编码方式
字段间接编码方式的优点:可以缩短微指令字长 。
缺点:要通过译码电路后再发出微命令,因此比直接编码方式慢 。
例题
(四)、微指令的地址形成方式
(五)、微程序控制单元的设计
- 对于补充微程序控制器特有的微操作
a. 取指周期:
Ad ( CMDR ) → CMAR
每条微指令结束之后都需要进行
OP ( IR ) → 微地址形成部件 → CMAR
取指周期的最后一条微指令完成后,要根据指令操作码确定 其执行周期的微程序首地址
b. 执行周期:
Ad(CMDR) → CMAR
每条微指令结束之后都需要进行