微程序控制器概述
微程序控制器的基本原理
:把一条指令的微操作控制信号序列,以二进制编码字(称为微指令)的形式编制成程序(称为微程序),并存放在控制存储器中。执行指令时,通过依次读取一条条微指令,产生一组组操作控制信号,控制有关功能部件完成一组组微操作,从而完成一条指令的功能。
优点
:应用灵活,控制规整,便于计算机设计自动化,并易于修改和扩充。
有关名词术语
-
微命令:直接作用于部件或控制门电路的控制命令,是构成控制信号序列的最小单位。如PC→AR, DR→IR等。
-
微操作:由微命令控制实现的最基本的操作。如PCoe,ARce等。 微指令:用以产生一组微命令,控制完成一组微操作的二进制编码字称为微指令。
-
微程序:一系列微指令的有序集合称为微程序。
-
微周期:从控制存储器中读取一条微指令并执行相应的微操作所需的时间称为微周期。在微程序控制的机器中,微周期是它的主要时序信号。通常一个时钟周期为一个微周期。
-
控制存储器(CM):存放微程序的存储器。也称为微程序存储器。
微程序控制器的工作过程
如图,下面,针对这个,慢慢解读
微指令寄存器µIR
- 标志微指令执行的开始
- 微操作控制部分:以编码的形式存在,经过微指令译码后形成微操作控制信号,即微命令。
- 顺序控制部分:控制微指令的执行顺序,包含了下一条微指令地址的信息,用于形成后继微指令的微地址。
微地址形成电路µAG。有三个输入
- µIR的顺序控制部分
- IR主要用于产生微程序的入口地址,比如依据指令的操作码形成对应各指令执行阶段的微程序入口地址。
- PSW在某些场合,需要根据PSW中的状态标志决定分支转移的微地址。
微地址寄存器µAR
- 接收µAG形成的微地址
- 标志从控存中读取下一条微指令的开始
- 初始值
取指令微程序的入口地址
在系统复位时初始化
从这里可以将原图在标记一下
有一点先要明确的是,在微程序控制器工作前,取指令操作已经完成
假设当前微程序控制器工作到微指令寄存器µIR
,当完成其微操作控制部分
,即微命令
后,其顺序控制部分才会(不考虑流水线或其他复杂情况)释放下一条微指令地址的信息
(一般情况下,下一条微指令
的地址(简称微地址
)由当前微指令
的顺序控制
字段直接给出。这部分信息存放在微地址寄存器
中,也可以说是由微地址寄存器
直接给出。),与IR和PSW部分一同输入微地址形成电路µAG
。
由微地址形成电路µAG
再到微地址寄存器µAR
获取微地址
( 标志从控存中读取下一条微指令的开始)
通过控制存储器CM
(简称控存)获取下一条微指令
,执行相关的微命令
最后再补充几个点
- 在组合逻辑控制器中,一条指令的功能是直接由
硬件
解释实现的;而在微程序控制器中,每条指令都对应着一段微程序,指令的功能是由微程序
解释实现的,硬件完成的是微指令
的功能。 - 通常用
ROM
组成控存。 微程序
实质上定义了机器的指令系统
。因此可通过修改微程序,在相同的硬件中实现不同的指令系统
。- 由于一条机器指令的执行过程中,需要多次访问控存,所以
控存的速度
直接影响到机器的速度。