组成原理(十七):微程序设计 目录 学习资料 1.微程序设计基本思路 2.微程序控制单元框图及工作原理 3.微指令编码方式(控制方式) 4.微操作序列地址形成 5.微指令格式 6.静态微程序设计和动态微程序设计 7.毫微程序设计 8.微程序执行方式


学习资料

哈工大《计算机组成原理》

控制单元CU设计:

  • 组合逻辑设计
  • 微程序设计

1.微程序设计基本思路

组合逻辑设计不便于扩展,增加一个指令需要改变电路

微程序设计示意图:
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

理解:

  • 将可并行的微操作合并,用一个微指令替代
  • 执行该微指令,相当于并行执行多个微操作命令
  • 微指令代码某一位均代表某个微操作,0代表不执行,1代表执行
  • 如果该指令中有多个1,表示一个节拍中有多个微操作并行
  • 微指令可以*编程,实现微操作的多种组合
  • 进而可以在不改变逻辑电路的情况下添加新指令

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

2.1 机器指令对应的微程序

组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

  • 每个指令取值是一样的,间址和中断可预测,各指令可以共用微程序
  • 执行阶段操作不同,需要为每个指令编写单独的微程序
  • 控制存储器中微程序个数=机器指令数+3

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

组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

  • CMAR:控制存储器地址寄存器
  • CMDR:控制存储器数据寄存器(存放微指令)
  • 顺序逻辑:控制形成吓一跳微指令地址
  • 地址译码:和主存的译码驱动相同

2.3 工作原理

1)取指阶段:(三个时钟周期/节拍)
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

2)执行阶段

LDA指令微程序:(三个时钟周期)
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

3)若无间址周期和中断周期:

  • 循环执行取指微操作和执行微操作
  • 全部微操作指令存在CM中,执行过程中只需要读出

3.微指令编码方式(控制方式)

3.1 直接编码

组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

  • 操作控制的每一位代表一个微操作命令
  • 某位为1表示该控制信号有效

3.2 字段直接编码

组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

  • 将控制字段分为若干段,每段经过译码后发出控制信号
  • 每个字段中命令互斥,缩短了微指令字长,增加了译码时间

3.3 字段间接编码

组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

3.4 混合编码

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

  • 常用:直接编码
  • 不常用:字段编码

3.5 其他方式

如设置常数字段


4.微操作序列地址形成

1)微指令的下地址字段给出
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

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

3)增量计数器:

  • 取指,中断,执行等周期,下地址都为M+1这种递增形式
  • 可以采用增量计数器来代替

4)分支转移:
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

5)测试网络:
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式

6)硬件产生:

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

7)后继微指令地址形成方式原理图
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式


5.微指令格式

  1. 水平微指令:一次能定义并行多个并行操作
  2. 垂直微指令
    • 类似机器指令操作码的方式
    • 由微操作码字段规定微指令的功能
    • 基本已经淘汰了
  3. 两种微指令格式比较:
    • 水平微指令比垂直微指令并行操作能力强,灵活性强
    • 水平微指令执行一条机器指令所要的微指令数目少,速度快
    • 水平微指令用较短的微程序结构换取较长的微指令结构
    • 水平微指令与机器指令差别大

6.静态微程序设计和动态微程序设计

静态:微程序无需改变,采用ROM

动态:通过改变微指令和微操作改变机器指令,有利于仿真,采用EPROM


7.毫微程序设计

微程序设计:微程序解释机器指令

毫微程序设计:毫微程序解释微指令

毫微程序控制器基本组成
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式


8.微程序执行方式

串行微程序控制:串行方式
并行微程序控制:流水方式
组成原理(十七):微程序设计
目录
学习资料
1.微程序设计基本思路
2.微程序控制单元框图及工作原理
3.微指令编码方式(控制方式)
4.微操作序列地址形成
5.微指令格式
6.静态微程序设计和动态微程序设计
7.毫微程序设计
8.微程序执行方式