目录
一、控制器的结构和功能
控制器的主要功能有:
- 从主存中取出一条指令,并指出下一条指令在主存中的位置。
- 对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。
- 指挥并控制CPU、主存、输入和输出设备之间的数据流动方向。
根据控制器产生微操作控制信号的方式不同,控制器可分为硬布线控制器和微操作控制器,两类控制器中的PC和IR是相同的,但确定和表示指令执行步骤的方法以及给出控制各部件运行所需要的控制信号的方案不同。
这里先引出一些两类控制器都包括的概念。
指令的周期可分为下面四个阶段:
- 取指周期(FE,fetch)括号中是相应的触发器,FE=1时处于取指周期。
- 间址周期(IND,in-direct)
- 执行周期(EX, execute)
- 中断周期(INT,interrupt)
下面详细分析:
①取指周期的微操作命令如下:
微操作 解释
- ①(PC)→MAR 现行指令地址→MAR
- ②1→R 命令存储器读
- ③M(MAR)→MDR 现行指令从存储器中读至MDR
- ④OP(IR)→ID 指令的操作码→ID译码(Instruction Decoder,在CU内部)
- ⑤(PC)+1→PC 形成下一条指令的地址
微命令:CU发出一个微命令,可完成对应微操作。如微命令①:使得PCout、MARin有效
微操作:如微操作①(PC)→MAR,是计算机中最基本、不可再分的操作。微命令和微操作是一一对应的。
假设取指周期有三个时钟周期,把五个微命令分配到三个时钟周期中。
微指令:每个时钟周期完成一个微指令,一个微指令可能包含若干微操作。
微程序:一个微程序包含一个指令的所有微指令,一个机器指令的功能由一段微程序实现。(有的题中会把取指、间址、执行、中断周期包括的微指令分别称为一个微程序。若无特别说明都是指令和微程序一一对应的)
二、硬布线控制器
2.1硬布线控制单元图
硬布线控制器的基本原理是根据这三点按时间的顺序发送一系列微操作控制信号。它由一些复杂的组合逻辑门电路和一些触发器构成,因此又称为组合逻辑控制器。
- 指令的要求(ID译码)
- 当时的时序(节拍信号)
- 外部和内部的状态(PSW标志寄存器和上述四个触发器)
前两种信号是关键信号。
2.2硬布线控制器的时序系统及微操作
前面介绍微操作概念时已经分析过了取指周期,此外还有间址周期和执行周期,执行周期的微操作命令视不同指令而定。
2.3CPU的控制方式
由于不同指令所对应的微操作数及复杂程度不同,因此每条指令和每个微操作所需的执行时间也不同。主要有以下三种控制方式。
- 同步控制方式。以最长的微操作序列和最复杂的微操作为标准,采取完全统一的、具有相同时间间隔和相同数目的节拍作为机器周期来运行不同的指令。
- 异步控制方式。不存在基准时标信号,各部件按自身固有的速度工作,通过应答方式进行联络。
- 联合控制方式。对各自不同的指令的微操作实行大部分采用同步控制、小部分采用异步控制的方法。
2.4硬布线控制单元设计步骤
设计步骤:
- 列出操作时间表(先写出指令的所有微操作,并根据给定的节拍数分配这些微操作形成微指令。)
- 写出微操作命令的最简表达式
- 画出逻辑图
操作时间表:
有可能会进行多次间接寻址,IND=0时表明不需要再进行间接寻址了。
列出微命令对应的逻辑表达式并画出逻辑图
三、微程序控制器
3.1微程序控制器组成与工作过程
微程序控制器采用存储逻辑(出厂前将所有指令的微程序存在在控制存储器中)实现,也就是把微操作信号代码化,使每条机器指令转化成为一段微程序并存入一个专门的存储器(控制存储器)中,微操作控制信号由微指令产生。
- 控制存储器(CM):用来存放实现全部指令系统的所有微程序,它是一种ROM ,按地址寻访。
- 微指令寄存器(CMDR,μIR):用于存放从CM中读出的微指令,它的位数同微指令字长相等。
- 微地址寄存器(CMAR,μPC):接收微地址形成部件送来的微地址,为CM中读取微指令作准备。
- 微地址形成部件:用于产生初始微地址和后继微地址,以保证微指令的连续执行。
- 微周期(微指令周期):从控制存储器中读取一条微命令并执行相应的微操作所需的时间。
一条指令的执行过程如下:
- 在机器开始运行时,自动将“取指微程序的入口地址”送入CMAR,并从CM中读出相应的微指令送入CMDR。取指微程序的入口地址一般为CM的0号单元,当取指微程序执行完后,从主存中取出的机器指令就已经存入了IR中。
- 由机器指令的操作码字段通过微地址形成部件产生该机器指令所对应的微程序的入口地址,并送入CMAR。
- 从CM中逐条取出对应的微指令并执行。
- 执行完对应于一条机器指令的一个微程序后,又回到取指微程序的入口地址。
3.2微指令的格式
3混合型微指令:在垂直型的基础上增加一些不太复杂的并行操作。
3.3微指令的编码方式
微指令的编码方式又称为微指令的控制方式,它是指如何对微指令的操作控制字段进行编码,以形成控制信号。编码的目标是在保证速度的情况下,尽量缩短微指令字长。
相容性微命令:可以并行完成的微命令。互斥性微命令: 不允许并行完成的微命令。
3.4微指令的地址形成方式
3.5微程序控制单元的设计步骤
一、分析每 个阶段的微操作序列,写出对应指令的微操作命令及节拍安排。:
①硬布 线控制器中OP(IR)→ID而微地址形成部件OP(IR)→微地址形成部件。②每条微指令都需要增加一个将微地址下地址字段送至CMAR的微操作,记为Ad(CMDR)→CMAR。
二、三、
3.6动态微程序设计和毫微程序设计
硬件不由微程序直接控制,而是通过存放在第二级控制存储器中的毫微程序来解释的,这个第二级控制存储器就称为毫微存储器,直接控制硬件的是毫微微指令。
3.7硬布线控制器和微程序控制器的对比
4.0做题补充
- 微处理器与传统的中央处理器相比,具有体积小、重量轻和容易模块化等优点。微处理器的基本组成部分有:寄存器堆、运算器、时序控制电路,以及数据和地址总线。微处理器与微程序控制器没有必然联系。不管是采用微程序处理器还是硬布线处理器,微机的CPU都是微处理器。
- 一条水平型微指令能定义并执行几种并行的基本操作,因此能够更充分利用数据通路的并行结构。
- 控制器是控制部件;运算器、存储器、外围设备相对于控制器来说就是执行部件。
- 兼容性微命令是指那些可以同时产生、同时完成某些微操作的微命令。