考研笔记-计算机之计算机组成原理:控制单元
- 2026-11-03 10:02:03
——如阅读体验不佳,可转为横屏阅读;如微信无法横屏,可尝试文末方法。
表-控制相关概念 | ||
术语 | 功能定义 | 功能实现 |
(微)命令 | 控制实现微操作的命令 | 由控制部件发出 |
微操作 | 由(微)命令控制实现的最基本操作 | 由执行部件执行 |
指令 | 控制实现操作(一系列微操作)的命令 | 分割成一系列(微)命令 |
操作 | 由指令控制实现的一系列微操作 | 分割成一系列微操作 |
说明: 1) 关系图
|
表-硬连线(组合逻辑)设计与微程序(存储逻辑)设计 | |||
微操作命令序列的形成方法 | 控制信号生成方式 | 设计步骤 | 具体实现 |
硬连线(组合逻辑)设计 | 微操作命令(即控制信号)由逻辑电路产生。 | 1) 列出所有微操作命令的操作时间表; | 包括工作周期(即指令周期中的机器周期)、节拍(即机器周期中的节拍)、状态条件、微操作命令信号、操作码等项。 |
2) 写出所有微操作命令各自的最简逻辑表达式; |
其中,m为每个机器周期中包含的节拍数,n为操作码的位数, 当机器周期Mi包含微操作命令MOP时,机器周期Mi=1,否则机器周期Mi=0; 当机器周期Mi的节拍Tj包含微操作命令MOP时,节拍Tj=1,否则节拍Tj=0; 当操作码k在机器周期Mi的节拍Tj需微操作命令MOP时,操作码k=1; | ||
3) 画出所有微操作命令的逻辑图。 | 对应每一个微操作命令的逻辑表达式都可画出一个逻辑图,即每一个微操作命令对应一个逻辑电路。 | ||
微程序(存储逻辑)设计 | 微操作命令(即控制信号)由微指令的操作码控制字段中的有效位(为1)产生。 | 1) 写出对应机器指令的微操作及节拍安排; | 微操作Ad(CMDR)→CMAR只能在微指令送至CMDR(即CM(CMAR)→CMDR)这一微操作完成后的下一时钟周期完成,而微指令打入到CMDR中(即CM(CMAR)→CMDR)均发生在微操作Ad(CMDR)→CMAR的下一时钟周期T的上升沿,而一旦微指令打入到CMDR中,该微指令对应的微操作便同步执行了(即CM(CMAR)→CMDR和CMDR中控制信号的执行是同时完成的)。(寄存器的当前保存内容和寄存器的当前输出内容是相同的,当寄存器的“内容”改变时,寄存器的输出立刻随之改变,永远保持一致。实际上寄存器并未在“内部”真正“存放”内容,只不过寄存器的输出端的有效信号可以保持不变,表现为好像寄存器“内”存放着输出端的信号,寄存器的输出端的有效信号是通过寄存器“内”的逻辑电路生成的) |
2) 确定微指令格式; | 微指令格式包括微指令的编码方式、后续微指令的地址形成方式和微指令字长等3个方面。 | ||
3) 编写每条微指令的二进制代码(称为微指令码点); | 编写每条微指令的二进制代码(称为微指令码点); |
表-微程序设计 | ||||||
微程序设计的原理 | 在微程序设计中,每条机器指令对应一个微程序,每个微程序包含若干条微指令,每条微指令对应若干个微操作命令。微程序存储在控制存储器中。微指令以二进制代码的形式表示,每位代表一个控制信号,若该位为1,表示该控制信号有效,若该位为0,表示该控制信号无效。 不同指令的取指周期、间址周期和中断周期对应的操作是相同的,因而所有的指令共用取指周期微程序、间址周期微程序和中断周期微程序。控存中微程序的总个数为机器指令(不同指令的执行周期微程序不同)数加上取指周期、间址周期和中断周期的3个微程序。 | |||||
微指令的基本格式 |
| |||||
相关寄存器 | CMAR:控存地址寄存器(功能类似MAR+PC),存放预读取的微指令的地址; CMDA:控存数据寄存器(功能类似MDR+IR),存放从控存中读出的微指令(无数据,控存CMEM中存放的是对应机器指令操作码部分的微程序指令); |
表-微指令的控制字段的编码方式 | ||
微指令格式 | 编码方式 | 实现方法 |
水平型微指令 | 直接编码 | 每位代表一个微操作命令(1-有效,0-无效) 可以将某些微操作命令(这些命令对于所有微指令而言总是同时全部出现或全部不出现)合用一位代码来控制,这样可以压缩指令的操作控制字段,缩短微指令字长。 |
字段直接编码 (显式编码) | 段内互斥,段间并行(互斥指同一时刻至多有1个操作命令有效,可能全无效,即不发微指令的状态); 字段的位数由互斥的微操作命令数+1(字段内各位全无效,即不发微指令的状态)决定; | |
字段间接编码 (隐式编码) | 一个字段的某些微命令还需由另一个字段中的某些微命令来解释; | |
混合编码 | 直接编码+字段(直接/间接)编码 | |
常数字段 | ||
垂直型微指令 | 微指令操作码字段(微操作码) | 由微指令操作码字段规定微指令的功能,类似机器指令的操作码的方式 |
说明: 1) 水平型微指令用较短的微程序结构换取较长的微指令结构,垂直型微指令用较长的微程序结构换取较短的微指令结构; 2) 水平型微指令比垂直型微指令并行能力强、效率高、灵活性强; 3) 水平型微指令执行一条机器指令所需的微指令数目少,速度比垂直型微指令快; |
表-微指令序列地址的形成方式 | ||
微指令序列地址的形成方式 | (CMAR)+1→CMAR | 形成当前微程序的微指令序列中顺序执行的下一条微指令的地址 |
微指令的下地址字段 | 形成微指令序列中跳转执行的下一条微指令的地址,条件测试字段应包含一种不转移的情况 | |
Op(IR)经微地址形成部件编码 | 形成不同指令各自的执行周期微程序的首地址 | |
微程序入口地址(取指、间址、中断),硬件方式 | 形成不同指令共用的取指周期微程序、间址周期微程序和中断周期微程序的首地址 |
表-微程序设计分类 | |||
微程序设计分类 | 控制存储器 | 指令系统 | 优点 |
静态微程序设计 | ROM | 指令系统固定 | |
动态微程序设计 | EPROM | 指令系统可变 | 有利于仿真 |
表-毫微程序设计 | |||
毫微程序结构 | 微指令类型 | 特点 | 关系 |
第一级微程序 | 垂直型微指令 | 并行操作能力不强,但有严格的顺序结构,由它确定后续微指令的地址,当需要时可调用第二级。第一级微程序主要用于执行顺序的控制。 | 垂直型微指令和水平型微指令不是一条一条地对应,而是由水平型微指令(即毫微指令)组成的毫微程序去执行垂直型微指令的操作。毫微指令与微指令的关系好比微指令与机器指令的关系。 |
第二级微程序 | 水平型微指令 | 并行操作能力很强,但不包含后续微指令的地址,第二级微程序执行完毕后返回到第一级微程序。第二级微程序用于执行操作的具体实现。 | |
说明: 1) 毫微程序设计采用两级微程序的设计方法,第一级微程序为垂直型微指令,第二级微程序为水平型微指令,两级微程序分别存放在两级控制存储器内。 |
文章合集:
点击下方公众号主页,关注以阅读更多文章
——可选择“【右上角···】→【在浏览器中打开】”进行横屏阅读。

