第五章中央处理器(教案)a)学习目的与要求学习目的:了解掌握计算机中央处理器的组成原理与控制方式学习要求:了解CPU的总体结构,掌握指令的执行过程,时序产生器的工作与控制原理,微程序控制技术,各种控制器的结构和工作原理。
本章主要内容:✧CPU的总体结构✧指令的执行与时序产生器✧微程序设计技术和微程序控制器✧硬布线控制器与门阵列控制器✧CPU的新技术b)应掌握的知识点i. CPU的总体结构CPU由控制器和运算器两个主要部件组成。
控制器负责协调和指挥整个计算机系统的操作,控制计算机的各个部件执行程序的指令序列。
由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器等组成;运算器接受控制器的命令并负责完成对操作数据的加工处理任务,由算术逻辑单元(ALU)、累加寄存器、数据缓冲寄存器和状态标志寄存器组成。
CPU主要完成以下几方面的功能:(1)控制指令执行顺序;(2)控制指令操作;(3)控制操作时间;(4)执行算术、逻辑运算。
CPU中完成取指令和执行指令全过程的部件是操作控制器,其主要功能是根据指令操作码和时序信号的要求,产生各种操作控制信号,以便正确地建立数据通路。
操作控制器有组合.逻辑控制器和微程序控制器两种,二者和差别是它们中的“控制信号形成部件”不同,反映了不同的设计原理和方法。
根据设计方法不同可分为:①硬布线控制器;②微程序控制器;③门阵列控制器。
CPU中除了操作控制器外,还必须有时序产生器。
时序产生器是对各种操作实施时间上的严格控制的部件。
CPU的组成如图5.1所示。
算术逻辑单元CPUc c cALU取指控制执行控制时钟状态反馈操作控制器时序产生器状态条件寄存器累加器cAC指令译码器程序计数器PCc c 指令寄存器cIRc地址寄存器AR缓冲寄存器DR存储器输入/输出数据总线DBUS地址总线ABUS图5.1 CPU主要组成部分逻辑结构图ii. 指令的执行与时序产生器1.指令周期程序运行的过程是逐条执行指令的过程,而一条指令的执行又分为取指令、取操作数和执行指令等时间段,这些时间段在计算机中称为周期。
取出指令并执行该指令所需的时间称为指令周期。
如图5.2所示。
1.取指令 1.取操作数2.指令译码 2.完成操作3.PC+! 3.结果回写4.送操作数地址 4.AC送存储器图5.2 指令周期、取指周期、执行周期和微操作指令周期常常用若干个CPU周期数来表示。
由于CPU内部的操作速度较快,而CPU 访问一次主存储器所花的时间比较长,故通常是用主存储器中读取一个指令字的最短时间来规定CPU周期。
CPU周期也称为机器周期。
这就是说,一条指令的取出阶段,简称取指,需要一个CPU周期时间。
而一个CPU周期又包含有若干个时钟周期,时钟周期通常又称为节拍脉冲或T周期,是处理操作的最基本时间单位,它由机器的主频决定。
一个CPU周期的时间宽度就由若干个时钟周期的总和决定。
几种典型指令的指令周期:(1)非访问内存的指令(如CLA)需要两个CPU周期。
如图5.3所示。
其中,取指令阶段需要一个CPU周期,执行指令阶段需要一个CPU周期。
在第一个CPU周期,从内存取出指令并译码以确定执行何种操作;在第二个CPU 周期,完成指令所要求的操作。
(2)直接访问主存储器的指令(如ADD)的指令周期由三个CPU 周期组成。
如图5.4所示。
第一个 CPU 周期为取指令阶段,执行指令阶段由两个CPU 周期组成:在第二个 CPU 周期中将操作数的地址送往地址寄存器并完成地址译码,而在第三个CPU 周期中从内存取出操作数并执行相加的操作。
(3)间接访问主存储器指令 (如STA I 31)”的指令周期由4个CPU 周期组成,如图5.5所示。
其中,第一个CPU 周期仍然是取指令阶段,指令执行阶段三个CPU 周期组成:第一个CPU 周期中,把指令寄存器中地址码部分的形式地址(31)装到地址寄存器中;第二个CPU 周期中,完成从内存取出操作数地址,并放入地址寄存器中;第三个CPU 周期中,累加器的内容传送到缓冲寄存器,然后再存入所选定的存储单元(40)中。
(4)程序控制指令(如JMP 21)既可采用直接寻址方式,也可采用间接寻址方式。
这里以直接寻址方式为例,采用直接寻址方式的JMP 指令周期由两个CPU 周期组成,如图5.6所示。
第一个CPU 周期仍是取指令阶段,取出指令并放入指令寄存器;第二个CPU 周期为执行阶段,把指令寄存器中的地址码部分21送到程序计数器中,从而改变了程序原先的执行顺序。
2. 时序产生器时序信号产生器是产生指令周期控制时序信号的部件,CPU 开始取指令并执行指令时,操作控制器利用时序产生器产生的定时脉冲的顺序和不同的脉冲间隔,有条理、有节奏地指挥机器各个部件按规定时间动作,提供计算机各部分工作时的时间标志。
在组合逻辑控制器中,时序信号往往采用主状态周期–节拍电位–节拍脉冲制。
主状态周期包含若干个节拍电位,是最大的时间单位,主状态周期可以用一个触发器的状态持续时间图5.3 非访问内存指令的指令周期图 5.4 直接访问内存指令的指令周取指令阶段 执行指令阶段图5.5 间接访问内存指令的指令周期期 图5.6 转移控制指令的指令周期来表示;一个节拍电位表示一个CPU 周期时间,以表示一个较大的时间单位;一个节拍电位包含若干个节拍脉冲,节拍脉冲表示较小的时间单位。
在微程序控制器中,时序信号比较简单,一般采用电位–节拍脉冲制。
在一个节拍电位中包含若干个节拍脉冲,即时钟周期。
节拍电位表示一个CPU 周期的时间,而节拍脉冲把一个CPU 周期划分成几个较小的时间间隔,这些时间间隔可以相等,也可以不相等。
时序信号产生器结构由时钟源、环形脉冲发生器、节拍脉冲和读/写时序译码逻辑、启停控制逻辑等部分构成的,如图5.7所示。
3. CPU 的控制方式CPU 常用的控制方式有三种:同步控制方式、异步控制方式和联合控制方式。
同步控制方式,是指在任何情况下给定的指令在执行时所需的机器周期数和时钟周期数都是固定不变的控制方式。
异步控制方式中,每条指令的指令周期既可由数量不等的机器周期数组成,也可由执行部件完成CPU 要求的操作后发回控制器的“回答”信号决定。
亦即CPU 访问的每个操作控制信号的时间根据其需要占用的时间来决定。
显然,用这种方式形成的操作控制序列没有固定的CPU 周期数(节拍电位)和严格的时钟周期(节拍脉冲)与之同步,所以称为不同步即异步方式。
联合控制方式,就是指同步控制和异步控制相结合的方式。
iii. 微程序设计技术和微程序控制器微程序控制器是用微程序实现计算机控制的控制器。
它将有关微操作控制信号写成微指令,若干微指令组成一个微程序,所有微程序都存放在控制存储器中。
读出一条微指令,就产生一组微操作控制信号。
因此,将原来的组合逻辑变成了存储逻辑,还可以用类似程序设计的方法来设计控制逻辑。
1. 基本概念(1) 微命令——由微程序控制器产生的微操作控制信号。
(2) 微操作——执行部件接收微命令后实现的操作过程。
(3) 微指令——在一个微指令周期中,一组实现一定操作功能的微命令。
(4) 微指令周期——执行一条微指令和取出下条微指令所需的时间。
通常一个微指令周期与一个CPU 周期在时间上是相等的。
(5) 微程序——若干微指令的组成的序列。
一个微程序的功能对应一条机器指令的功能。
2. 微指令基本格式微指令由操作控制和顺序控制两个基本部分构成,操作控制部分用来发出指挥计算机工作的控制信号。
顺序控制部分用来决定产生下一条微指令的地址。
如图5.8所示。
MREQ IORQ 图5.7 时序信号产生器结构图控制信号W/R S i~S0下一条指令地址图5.8 微指令基本格式微程序设计技术一条机器指令的功能是由许多条微指令组成的序列来实现的,这个微指令序列就是微程序。
微程序设计的关键是微指令结构的设计。
设计微指令结构时主要考虑以下几个问题:微指令字的长度、控制存储器的容量、微程序的长度、微程序的执行速度、微指令的修改、微程序设计的灵活性。
常用的微命令编码译码控制方法有以下几种:位直接控制法:将微指令的操作控制字段的每个二进制位定义为一个微命令,直接送往相应的控制点。
此法的缺点是微命令太多,造成微指令字长过长。
字段直接译码控制法:把一组相斥性的微命令信号组成一个字段(一个小组),然后通过字段译码器对每一个微命令信号进行译码,译码输出作为操作控制信号。
字段间接译码控制法:在字段直接译码控制法中规定一个字段的某些命令由另一个字段中的某些微命令来解释,则这种方法称为字段间接译码控制法。
混合编码译码控制法:将位直接控制法与字段译码控制法混合使用,综合考虑微指令字长、灵活性和执行微程序速度等方面的要求。
常数字段控制法:通过在微指令中附设一个常数字段给某些执行部件直接发送常数。
该常数有时作为操作数送入ALU参加运算,有时也作为计数器的初值来控制微程序循环次数。
微程序执行顺序的控制计数器方式——设置微程序计数器,每执行完一条微指令,微程序计数器加1,以形成下条微指令地址。
因有转移情况出现,需设置转移微指令。
断定方式——在微指令中设置一个下址字段,用来指明下一条要执行的微指令地址。
无需设置转移微指令,但增加了微指令字的长度。
微程序控制器组成原理根据微程序控制器的设计思想,其结构框图如图5.9所示。
它的主要部件及功能如下:控制存储器——由只读存储器构成,用于存放微程序。
微地址转移逻辑——用于产生后继微指令的地址。
微命令寄存器——保存微指令的微操作码,产生对应的微命令。
图5.9 微程序控制器组成原理框图iv. 硬布线控制器与门阵列控制器1.硬布线控制器硬布线控制器又称为组合逻辑控制器。
硬布线控制器主要由组合逻辑网络、指令寄存器和指令译码器、节拍电位/节拍脉冲发生器等部分组成。
其中,组合逻辑网络产生计算机所需的全部操作命令(包括控制电位与打入脉冲),是控制器的核心。
硬布线控制器的结构原理如图5.10所示。
图中,组合逻辑网络的输入信号有3个来源:①来自指令操作码译码器的输出I1~I m,,译码器每根输出线表示一条指令,译码器的输出反映出当前正在执行的指令。
②来自执行部件的反馈信息B1~B j。
③来自时序产生器的时序信号,包括节拍电位信号M1~M i和节拍脉冲信号T1~T k。
其中,节拍电位信号是机器周期信号,节拍脉冲信号是时钟周期信号。
微操作控制信号图5.10 硬布线控制器结构原理方框图2.门阵列控制器由大量的与门、或门阵列等电路构成的器件,简称为门阵列器件。
用门阵列器件设计的操作控制器,称为门阵列控制器。
典型代表产品有:可编程逻辑阵列(PLA)、可编程阵列逻辑(PAL)、通用阵列逻辑(GAL)。
其工作原理与组合逻辑控制器基本相同,但用门阵列器件代替组合逻辑网络。