1 微程序设计
1.1 微程序设计思想
将一个时钟周期(节拍)内的若干个位操作指令
存储,变成一条微指令
微指令中的1高电平,每一位代表一个微操作命令
一条机器指令对应一个微程序;将微程序存入ROM只读存储器中,存储逻辑
2、微程序控制单元框图及工作原理
(1)机器指令对应的微程序
取指周期需要3个节拍来完成,
每个节拍对应一条微指令
(2)微程序控制单元的基本框图
CMAR:控制存储器地址寄存器
CMDR:控制存储器数据寄存器
微指令中操作控制0/1每位代表一个微操作指令
顺序控制为下一条微指令存储地址
微地址形成部件:判断是什么指令,该跳转到哪里
3、工作原理
关键:微指令的操作控制字段如何形成微操作命令; 微指令的后续地址如何形成
1.2 微指令的编码方式(控制方式)
1、直接编码(直接控制)方式
在微指令的操作控制字段中,每一位代表一个微操作命令
某位“1”代表该控制信号有效
2、字段直接编码方式
将微指令的控制字段分成若干“段”,每段经译码后发出控制信号
每个字段中的命令是互斥的,
缩短了微指令字长
增加了译码时间,微程序执行速度较慢
显式编码
3、字段间接编码方式
4、混合编码
直接编码和字段编码(直接和间接)混合使用;常用直接编码,不常用字段编码
1.3 微指令序列地址的形成
1、微指令的下地址字段指出;2、根据机器指令的操作码形成
3、增量计数器
4、分支转移
(转移方式->指明判别条件)(转移地址->指明转移成功后的去向)
5、测试网络
6、由硬件产生微程序入口地址
第一条微指令地址---由专门硬件产生;中断周期---由硬件产生中断周期微程序首地址
1.4 后续微指令地址形成方式原理图
1.5 微指令格式
1、水平型微指令---一次能定义并执行多个并行操作(如直接编码、字段编码、混合编码)
2、垂直型微指令---类似机器指令操作码的方式、由微操作码字段规定微指令的功能
3、两种微指令格式比较
(1)水平型微指令并行操作能力强,灵活性强;
(2)水平型微指令执行一条机器指令所要的微指令数目少、速度快;
(3)水平型微指令用较短的微程序结构换取较长的微指令结构;
(4)水平型微指令与机器指令差别大
1.6 静态微程序设计和动态微程序设计
1、静态---微程序无须改变,采用ROM
2、动态---通过改变微指令和微程序改变机器指令有利于仿真,采用EPROM
1.7 毫微程序设计
1、毫微程序设计的基本概念
微程序设计---用微程序解释机器指令;毫微程序设计---毫微程序解释微指令;
2、毫微程序控制存储器的基本组成
1.8 串行微程序控制和并行微程序控制