9 控制单元的设计

redirect_from: /_posts/2022-04-07-9-控制单元的设计.md title: 第九章 控制单元的设计 tags: 计算机组成原理 —

9.1 组合逻辑设计

9.1.1 组合逻辑控制单元框图

  • CU外特性

CU外特性

9.1.2 微操作的节拍安排

假设机器采用同步控制,每个机器周期包含3个节拍,而且CPU内部结构如图所示,其中MAR和MDR分别直接和地址总线和数据总线相连,并假设IR的地址码部分与MAR之间有通路。

CPU内部结构

安排微操作时序的原则:

  • 微操作的先后顺序不得随意更改
  • 被控对象不同的微操作尽量安排在一个节拍内完成
  • 占用时间较短的微操作尽量安排在一个节拍内完成,并允许有先后顺序

1.取指周期微操作的节拍安排

取指周期微操作的节拍安排

2.间址周期微操作的节拍安排

间址周期微操作的节拍安排

3.执行周期微操作的节拍安排

  • 非访存指令

非访存指令

  • 访存指令

访存指令

4.中断周期微操作的节拍安排

中断周期微操作的节拍安排

9.1.3 组合逻辑设计步骤

1.列出操作时间表

  • 取址周期

列出操作时间表1

  • 间址周期

列出操作时间表2

  • 执行周期

列出操作时间表3

2.写出微操作命令的最简表达式

写出微操作命令的最简表达式

3.画出逻辑图

画出逻辑图

9.2 控制单元的功能

9.2.1 微程序设计思想

将一条机器指令编写成一个微程序,每一个微程序包含若干条微指令,每一条微指令对应一个或几个微操作命令。然后把这些微程序存到一个控制存储器中,用寻找用户程序机器指令的办法来寻找每个微程序中的微指令。由于这些微指令是以二进制代码形式表示的,每位代表一个控制信号(若该位为1,表示该控制信号有效若该位为0,表示此控制信号无效),因此,逐条执行每一条微指令,也就相应地完成了一条机器指令的全部操作。

微程序设计思想

9.2.2 微程序控制单元框图及工作原理

1.机器指令对应的微程序

机器指令对应的微程序

2.微程序控制单元的基本框图

微程序控制单元的基本框图

  • 控制存储器(简称控存):微程序控制单元的核心部件,用来存放全部微程序
  • CMAR:控存地址寄存器,用来存放欲读出的微指令地址
  • CMDR:控存数据寄存器,用来存放从控存读出的微指令
  • 顺序逻辑:用来控制微指令序列的,具体就是控制形成下一条微指令(即后继微指令)的地址,其输入与微地址形成部件(与指令寄存器相连)、微指令的下地址字段以及外来的标志有关。
  • 微地址形成部件:根据取来指令的操作码形成该指令执行阶段所在的微程序在控制存储器中的地址

微指令共分两个字段,一个为操作控制字段该字段发出各种控制信号;另一个为顺序控制字段,它可指出下条微指令的地址(简称下地址),以控制微指令序列的执行顺序

3.微程序控制工作原理

微程序控制工作原理

  • 取指阶段

微程序控制工作原理取指阶段

  • 执行阶段

微程序控制工作原理执行阶段

9.2.3 微指令的编码方式(控制方式)

1.直接编码(直接控制)方式

在微指令的操作控制字段中,每一位代表一个微操作命令

直接编码

2.字段直接编码方式

将微指令的控制字段分成若干 “段”,每段经译码后发出控制信号。每个字段中的命令是互斥的。缩短了微指令字长,增加了译码时间

字段直接编码方式

3.字段间接编码方式

字段间接编码方式

4.混合编码

直接编码和字段编码(直接和间接)混合使用

9.2.4 微指令序列地址的形成

1.微指令的下地址字段指出

大部分微指令的下地址字段都直接指出了后继微指令的地址

2.根据机器指令的操作码形成

当机器指令取至指令寄存器后,微指令的地址由操作码经微地址形成形成。微地址形成部件实际是一个编码器,其输入为指令操作码,输出就是对应该机器指令微程序的首地址。

3.增量计数器

$( CMAR ) + 1 -> CMAR$

4.分支转移

分支转移

  • 转移方式:指明判别条件
  • 转移地址:指明转移成功后的去向

5.通过测试网络

通过测试网络指令地址

  • 高段h为非测试地址,由微指令的H段地址码直接形成
  • 低段l为测试地址,由微指令的L段地址码通过测试网络形成

6.由硬件产生微程序入口地址

  • 第一条微指令地址由专门硬件产生
  • 中断周期由硬件产生中断周期微程序首地址

7.后续微指令地址形成方式原理图

后续微指令地址形成方式原理图

9.2.5 微指令格式

1.水平型微指令

一次能定义并执行多个并行操作。

如直接编码、字段直接编码、字段间接编码、直接和字段混合编码

2.垂直型微指令

垂直型微指令的特点是采用类似机器指令操作码的方式,在微指令字中,设置微操作码字段,由微操作码规定微指令的功能。通常一条微指令有1~2个微命令,控制1~2种操作。

3.两种微指令格式的比较

  • 水平型微指令比垂直型微指令 并行操作能力强,灵活性强
  • 水平型微指令执行一条机器指令所要的微指令数目少,速度快
  • 水平型微指令用较短的微程序结构换取较长的微指令结构
  • 水平型微指令与机器指令差别大

9.2.6 静态微程序设计和动态微程序设计

  • 静态:微程序无须改变,采用ROM
  • 动态:通过 改变微指令和微程序 改变机器指令,有利于仿真,采用EPROM

9.2.7 毫微程序设计

1.毫微程序设计的基本概念

  • 微程序设计用微程序解释机器指令
  • 毫微程序设计用毫微程序解释微指令
  • 毫微指令与微指令的关系好比微指令与机器指令的关系

2.毫微程序控制存储器的基本组成

毫微程序控制存储器的基本组成

9.2.8 串行微程序控制和并行微程序控制

1.串行微程序控制

串行微程序控制

2.并行微程序控制

并行微程序控制