第06章_中央处理器_第1页
第06章_中央处理器_第2页
第06章_中央处理器_第3页
第06章_中央处理器_第4页
第06章_中央处理器_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1第第6章章 中央处理器中央处理器6.1 控制器的基本组成和基本原理控制器的基本组成和基本原理6.2 指令的执行过程指令的执行过程 6.3 微程序控制器微程序控制器(CISC)6.4 硬布线控制器硬布线控制器(RISC)6.5 控制器的控制方式控制器的控制方式6.6 CPU的工作原理的工作原理指令的执行过程指令的执行过程(1)微处理器的构成微处理器的构成F运算器运算器(ALU第二、三章第二、三章)F控制器控制器(2)核心内容核心内容F程序是如何执行的程序是如何执行的F计算机是怎么样实现各条指令的功能计算机是怎么样实现各条指令的功能F如何保证指令的连续运行过程。如何保证指令的连续运行过程。(3)

2、控制器的结构控制器的结构F功能和基本组成功能和基本组成F控制器结构控制器结构(硬布线和微程序硬布线和微程序)F时序控制和指令执行过程时序控制和指令执行过程3取指令取指令分析指令分析指令执行指令,发出各种操作命令执行指令,发出各种操作命令控制程序输入及结果的输出控制程序输入及结果的输出总线管理总线管理处理异常情况和特殊请求处理异常情况和特殊请求(1) 控制器的功能控制器的功能(2)运算器的功能)运算器的功能实现算术运算和逻辑运算实现算术运算和逻辑运算指令控制指令控制操作控制操作控制时间控制时间控制数据加工数据加工处理中断处理中断冯诺依曼系统结构:冯诺依曼系统结构:程序存储程序存储CPU的功能的功

3、能4(1 1)指令控制:)指令控制:程序是指令的有序集合,保证机器按规定的程序是指令的有序集合,保证机器按规定的顺序执行程序。顺序执行程序。(2 2)操作控制:)操作控制:CPUCPU管理并产生由内存取出的每条指令的操作管理并产生由内存取出的每条指令的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。按指令的要求进行动作。(3 3)时间控制:)时间控制:对各种操作实施时间上的控制,计算机中各对各种操作实施时间上的控制,计算机中各种指令的操作信号均受到时间的严格控制。种指令的操作信号均受到时间的严格控制。(4 4

4、)处理中断:)处理中断:处理机器在运行过程中的异常情况(如掉电、处理机器在运行过程中的异常情况(如掉电、运算结果溢出)和特殊请求(中断、运算结果溢出)和特殊请求(中断、DMADMA)等。)等。6.1.1 控制器的功能控制器的功能5CPU的基本组成的基本组成运算器运算器cachecache控制器控制器6CPU的基本组成的基本组成中央处理器中央处理器CPU=运算器运算器+控制器控制器+cache1 1、运算器、运算器由由算术逻辑单位(算术逻辑单位(ALUALU)、累加寄存器()、累加寄存器(ACAC)、数据缓冲)、数据缓冲寄存器寄存器(DR)(DR)和状态条件寄存器和状态条件寄存器(PSW)(PS

5、W)组成,它是数据加组成,它是数据加工处理部件。工处理部件。运算器的主要功能:运算器的主要功能:u执行所有的执行所有的算术算术运算。运算。u执行所有的执行所有的逻辑逻辑运算,并进行逻辑测试。运算,并进行逻辑测试。7控制器工作过程控制器工作过程(1 1)取指令)取指令PCPC地址地址M M指令指令IRIR、译码、译码PC+1PC+1PCPC(2 2)取数)取数按寻址方式,或从寄存器取数,或从存储器取数。按寻址方式,或从寄存器取数,或从存储器取数。(3 3)执行)执行按操作码对数据进行运算处理。按操作码对数据进行运算处理。8控制器组成:程序计数器、指令寄存器、数据缓冲器、地址控制器组成:程序计数器

6、、指令寄存器、数据缓冲器、地址寄存器、通用寄存器、状态寄存器、寄存器、通用寄存器、状态寄存器、时序发生器、指令译码时序发生器、指令译码器、总线(数据通路)器、总线(数据通路)6.1.2 控制器的基本组成控制器的基本组成 1.程序计数器程序计数器PC:指令计数器:指令计数器u作用:存放下一条指令在内存中的地址。作用:存放下一条指令在内存中的地址。 u若程序顺序执行:若程序顺序执行:PC PC PC+1 PC+1;u若程序有跳转:若程序有跳转:PCPCPC+PC+偏移地址。偏移地址。2.2.指令寄存器指令寄存器IRIRu作用:存放作用:存放从存储器中取出的待执行的指令从存储器中取出的待执行的指令。

7、在执行该指令在执行该指令的过程中,指令寄存器的内容不允许发生变化,的过程中,指令寄存器的内容不允许发生变化,以保证实现指以保证实现指令的全部功能。令的全部功能。3.3. 地址寄存器地址寄存器MARMAR作用:保存当前作用:保存当前CPUCPU所访问的内存单元的地址。由于在内存所访问的内存单元的地址。由于在内存和和CPUCPU之间存在着操作之间存在着操作速度上的差别速度上的差别,所以必须使用地址寄,所以必须使用地址寄存器来保持地址信息,直到内存的读存器来保持地址信息,直到内存的读/ /写操作完成为止。写操作完成为止。 4.4.数据缓冲寄存器数据缓冲寄存器MDRMDR作用:暂时存放由内存储器读出的

8、一条指令或一个数据字;作用:暂时存放由内存储器读出的一条指令或一个数据字;5.指令译码器指令译码器ID(Instruction Decoder) u暂存在指令寄存器中的指令只有在其操作码部分经译暂存在指令寄存器中的指令只有在其操作码部分经译码后才能识别出是一条什么样的指令。码后才能识别出是一条什么样的指令。u译码器经过对指令进行分析和解释,产生相应译码器经过对指令进行分析和解释,产生相应的控制信号提供给时序控制信号形成部件。的控制信号提供给时序控制信号形成部件。6.机器周期、工作节拍、脉冲及启停控制线路机器周期、工作节拍、脉冲及启停控制线路 由脉冲源产生一定频率的脉冲信号作为整个机器的由脉冲源

9、产生一定频率的脉冲信号作为整个机器的时钟脉冲。时钟脉冲。u时钟周期:时钟周期:一个一个CPUCPU周期时间又包含有若干个时钟周期(通周期时间又包含有若干个时钟周期(通常称为节拍脉冲或常称为节拍脉冲或T T周期,它是处理操作的最基本单位)。这周期,它是处理操作的最基本单位)。这些时钟周期的总和则规定了一个些时钟周期的总和则规定了一个CPUCPU周期的时间宽度。周期的时间宽度。u总线周期:总线周期:通常用从内存中通过总线完成一次数据传输所需通常用从内存中通过总线完成一次数据传输所需要的时间。也称为要的时间。也称为机器周期或机器周期或CPU周期周期。一个指令周期包括若干个指令周期。一个指令周期包括若

10、干个指令周期。u指令周期:指令周期:CPU每取出并执行一条指令,都要完成一系列的每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需用的时间通常叫做一个指令周期。操作,这一系列操作所需用的时间通常叫做一个指令周期。7.时序控制信号形成部件时序控制信号形成部件 时序控制信号形成部件又称时序控制信号形成部件又称微操作信号发生器微操作信号发生器,真,真正控制各部件工作的微操作信号是由指令部件提供正控制各部件工作的微操作信号是由指令部件提供的操作信号、时序部件提供的时序信号、被控制功的操作信号、时序部件提供的时序信号、被控制功能部件所反馈的状态及条件综合形成的。能部件所反馈的状态及条件综合形成

11、的。12一、一、 指令周期的基本概念指令周期的基本概念1 . 指令周期指令周期取出并执行一条指令所需的全部时间取出并执行一条指令所需的全部时间完成一条指令完成一条指令执行执行取指、分析取指、分析取指阶段取指阶段取指周期取指周期执行阶段执行阶段执行周期执行周期(取指、分析)(取指、分析)(执行指令)(执行指令)指令周期指令周期取指周期取指周期执行周期执行周期6.1.3 控制器的时序系统控制器的时序系统132. 每条指令的指令周期不同每条指令的指令周期不同取指周期取指周期指令周期指令周期取指周期取指周期 执行周期执行周期指令周期指令周期NOP JMP XADD mem MUL mem取指周期取指周

12、期执行周期执行周期指令周期指令周期14 一个机器周期内要完成若干个微操作,这一个机器周期内要完成若干个微操作,这些微操作有的可以同时进行,有的则按先些微操作有的可以同时进行,有的则按先后次序串行执行。每个微操作都需要一定后次序串行执行。每个微操作都需要一定的时间,的时间,因此需要将一个机器周期分为若因此需要将一个机器周期分为若干相等的时间段,每一个时间段称为一个干相等的时间段,每一个时间段称为一个节拍。节拍。一般节拍用一个电平信号宽度表示,一般节拍用一个电平信号宽度表示,称为一个节拍电位。称为一个节拍电位。二、节拍电位和工作脉冲节拍电位和工作脉冲15节拍与工作脉冲的配合节拍与工作脉冲的配合 1

13、6指令执行的基本过程指令执行的基本过程1取指令取指令2分析指令分析指令 (1) 指令译码指令译码 (2) 计算操作数的有效地址计算操作数的有效地址 (3) 取操作数取操作数3执行指令执行指令17指令执行的微操作序列指令执行的微操作序列 CPU的数据通路的数据通路 5.5 基址寄存器的内容为基址寄存器的内容为2000H,变址寄存器内容,变址寄存器内容03A0H,指令的地址码部,指令的地址码部分是分是003FH,当前正在执行的指令所在地址为,当前正在执行的指令所在地址为2B00H,下一条指令所在地址,下一条指令所在地址为为2B02H。(1)请求出变址编址和基址寻址两种情况的访问有效地址。)请求出变

14、址编址和基址寻址两种情况的访问有效地址。(2)设变址编址用于取指令,相对编址用于转移指令,存储器内存放的内)设变址编址用于取指令,相对编址用于转移指令,存储器内存放的内容如下:容如下: 地址地址 内容内容 003FH 2300H 03DFH 2450H 203FH 2500H 23DFH 2800H 2B00H 063FH 请写出从存储器中所取得的数据以及转移地址。请写出从存储器中所取得的数据以及转移地址。(3) 若采用直接编址,请写出从存储器中取出的数。若采用直接编址,请写出从存储器中取出的数。解解: 1) 变址编址:变址编址: EA = 03A0H + 003FH= 03DFH 基址变址寻

15、址:基址变址寻址: EA = 2000H + 03A0H + 003FH= 23DFH 2) 基址寻址基址寻址: EA = 2000H + 3FH= 203FH(3) EA = A=003FH操作数操作数 = (003FH)= 2300H(2)变址编址:操作数变址编址:操作数 =2450 ( 2800H)相对寻址:转移地址相对寻址:转移地址 = 2B00H+003FH=2B3FH5.7 某机器字长某机器字长16位,存储按字编址,访问内存指令格式如下:位,存储按字编址,访问内存指令格式如下:其中其中OP为操作码,为操作码,M为寻址方式,为寻址方式,A为形式地址,设为形式地址,设PC和和RX分别为

16、程序计分别为程序计数器和变址寄存器,字长数器和变址寄存器,字长16位,问:位,问:(1)该指令能定义多少种指令?)该指令能定义多少种指令?(2)下表各种寻址方式的寻址范围为多少?)下表各种寻址方式的寻址范围为多少?(3)计算下表各种寻址方式的有效地址)计算下表各种寻址方式的有效地址E的计算公式。的计算公式。15 11 10 8 7 0 OP M A解解:(:(1)操作码共操作码共5位,指令有位,指令有25=32种种 寻址方式寻址方式有效地址的计算公式有效地址的计算公式寻址范围寻址范围立即寻址立即寻址无无直接寻址直接寻址EA=A间接寻址间接寻址EA=(A)变址寻址变址寻址EA=(RX)+A相对寻

17、址相对寻址EA=(PC)+A(补码)1227782016201620820206.1.4 控制器的实现方法控制器的实现方法 控制器的输入是机器的指令代码,输出控制器的输入是机器的指令代码,输出是微操作控制信号。是微操作控制信号。控制器的核心是微操控制器的核心是微操作信号发生器,它是控制器设计的关键。作信号发生器,它是控制器设计的关键。根据产生微操作控制信号的方式不同,控根据产生微操作控制信号的方式不同,控制器分类:制器分类:(1)硬布线控制器)硬布线控制器(2)微程序控制器)微程序控制器211. 硬布线控制器硬布线控制器 F定义:硬布线控制器又称为定义:硬布线控制器又称为组合逻辑控制器组合逻辑

18、控制器,它是以,它是以组合组合逻辑电路来构成微操作控制信号发生器逻辑电路来构成微操作控制信号发生器。它的控制方式是编。它的控制方式是编排各个指令的微操作表,综合并化简微操作表,用组合逻辑排各个指令的微操作表,综合并化简微操作表,用组合逻辑进行控制。进行控制。F实现:实现:VLSI,PLAF优点:优点:速度快速度快。F缺点:微操作控制信号发生器的结构不规整,使得设计、缺点:微操作控制信号发生器的结构不规整,使得设计、调试、维修较困难。调试、维修较困难。F应用:应用:RISC机为了追求高速度,一般采用硬布线控制机为了追求高速度,一般采用硬布线控制。 222. 微程序控制器微程序控制器F定义:微程序

19、控制器用定义:微程序控制器用软件方法产生和组织微操作控制信软件方法产生和组织微操作控制信号号,用,用存储逻辑控制取代组合逻辑控制存储逻辑控制取代组合逻辑控制。它是将指令用微指。它是将指令用微指令编制成微程序存放在控制存储器中。令编制成微程序存放在控制存储器中。F实现:实现:ROMF优点:具有设计规整,调试、维修以及更改、扩充指令方优点:具有设计规整,调试、维修以及更改、扩充指令方便。便。F缺点:由于增加了一级控制存储器,所以指令执行速度比缺点:由于增加了一级控制存储器,所以指令执行速度比硬布线控制器慢。硬布线控制器慢。F应用:应用:CISC机一般采用微程序控制器实现机一般采用微程序控制器实现。

20、 23一、微程序设计思想的产生一、微程序设计思想的产生1951 英国剑桥大学教授英国剑桥大学教授 Wilkes 完成完成一条机器指令一条机器指令微操作命令微操作命令 1微操作命令微操作命令 2微操作命令微操作命令 n微指令微指令 110100000微指令微指令 n微程序微程序00010010存储逻辑存储逻辑一条机器指令对应一个微程序一条机器指令对应一个微程序存入存入 ROM6.3 微程序控制器微程序控制器 246.3 微程序控制器微程序控制器 6.3.1 微程序控制的基本概念微程序控制的基本概念1.微命令与微操作微命令与微操作微命令微命令:构成控制信号序列的最小单位。通常是指那些直接作用于部件

21、:构成控制信号序列的最小单位。通常是指那些直接作用于部件或控制门电路的命令。又称为微信号。或控制门电路的命令。又称为微信号。例如打开或关闭某传送通路的电位命令,或是对触发器或寄存器进行同例如打开或关闭某传送通路的电位命令,或是对触发器或寄存器进行同步打入、置位、复位的控制脉冲步打入、置位、复位的控制脉冲微操作微操作:控制器中执行部件接受微命令后所进行的操作。:控制器中执行部件接受微命令后所进行的操作。u相容性的微操作:相容性的微操作:在一个微指令周期中可以并行执行的操作。在一个微指令周期中可以并行执行的操作。u互斥性的微操作:互斥性的微操作:在一个微指令周期中不可以并行执行的操作在一个微指令周

22、期中不可以并行执行的操作采用采用存储逻辑存储逻辑来实现的,也就是把微操作信号代码化,使每条机器指来实现的,也就是把微操作信号代码化,使每条机器指令转化成为一段微程序并存入一个专门的存储器令转化成为一段微程序并存入一个专门的存储器(控制存储器控制存储器)中,微操中,微操作控制信号由微指令产生。作控制信号由微指令产生。256.3.1 微程序控制的基本概念微程序控制的基本概念2.微指令、微地址和微程序微指令、微地址和微程序微指令微指令:在机器的一个节拍中,一组实现一定操作功能的微:在机器的一个节拍中,一组实现一定操作功能的微命令,或者说,控制存储器中每个单元存放的微命令信息组命令,或者说,控制存储器

23、中每个单元存放的微命令信息组成一条微指令。成一条微指令。一条微指令由操作控制字段和顺序控制字段一条微指令由操作控制字段和顺序控制字段组成。组成。操作控制字段用来发出管理和指挥计算机工作的控制操作控制字段用来发出管理和指挥计算机工作的控制信号。顺序控制字段又称为下址字段,它用来控制产生下一信号。顺序控制字段又称为下址字段,它用来控制产生下一条微指令的地址。条微指令的地址。一条微指令包括一个或多个微操作。一条微指令包括一个或多个微操作。微地址:微地址:微指令的地址,是指存放微指令的存储器单元的地微指令的地址,是指存放微指令的存储器单元的地址。址。微程序微程序:由微指令组成的序列称为微程序,一个微程

24、序的功:由微指令组成的序列称为微程序,一个微程序的功能对应一条机器指令的功能。能对应一条机器指令的功能。26 3.机器指令与微指令机器指令与微指令机器指令指提供给使用者编成的基本单位,每一条指令可以完成一个独立的机器指令指提供给使用者编成的基本单位,每一条指令可以完成一个独立的算术运算或逻辑运算操作。算术运算或逻辑运算操作。一条机器指令对应一组微指令组成的微程序一条机器指令对应一组微指令组成的微程序。可见,一条机器指令对应多条。可见,一条机器指令对应多条微指令,而一条微指令可为多个机器指令服务。微指令,而一条微指令可为多个机器指令服务。6.3.1 微程序控制的基本概念微程序控制的基本概念程程序

25、序机器指令机器指令1机器指令机器指令2机器指令机器指令i机器指令机器指令n.微指令微指令2微指令微指令1微指令微指令i微指令微指令n.微微程程序序276.3.1 微程序控制的基本概念微程序控制的基本概念4.控制存储器控制存储器CM(Control Memory)是微程序控制器的核心部件。是微程序控制器的核心部件。 CM属于属于CPU,不属于主存储器。,不属于主存储器。用于存放全部指令的所有微程序,采用只读存储器用于存放全部指令的所有微程序,采用只读存储器ROM结结构构(固化固化)。控制存储器的字长等于微指令的长度,其总容量。控制存储器的字长等于微指令的长度,其总容量决定于所有微程序的总长度。决

26、定于所有微程序的总长度。一般计算机指令系统是固定的,一般计算机指令系统是固定的,所以实现指令系统的微程序也是固定的。所以实现指令系统的微程序也是固定的。5. 微周期微周期从控制存储器中读取一条微指令并执行相应的一组微命令所从控制存储器中读取一条微指令并执行相应的一组微命令所需的全部时间称为微指令周期,简称微周期。一个微周期可需的全部时间称为微指令周期,简称微周期。一个微周期可以是一个机器周期时间,也可以是一个节拍周期时间。以是一个机器周期时间,也可以是一个节拍周期时间。286.3.2 实现微程序控制的基本原理实现微程序控制的基本原理 1微程序实现加法指令微程序实现加法指令 用微程序实现加法指令

27、。在所述的微操作序列用微程序实现加法指令。在所述的微操作序列中的每一个微操作控制信号就是一个微命令,组中的每一个微操作控制信号就是一个微命令,组合这些微命令即为微指令。合这些微命令即为微指令。取指令周期取指令周期计算有效地址周期计算有效地址周期取操作数周期取操作数周期加法运算周期加法运算周期序号序号为名为名功能功能序号序号控制信号控制信号功能功能1PCAB指令地址送地址总线指令地址送地址总线13(PC)ALU2ALUPC转移地址送转移地址送PCPC14+ALUALU进行加法运算进行加法运算3PC+1程序计数器加程序计数器加1 115-ALUALU进行减法运算进行减法运算4imm(disp)AL

28、U立即数或位移量送立即数或位移量送ALUALU16ALUALU进行逻辑乘运算进行逻辑乘运算5DBIR取指到指令寄存器取指到指令寄存器17ALUALU进行逻辑加运算进行逻辑加运算6DBDR数据总线上的数据送数据寄存器数据总线上的数据送数据寄存器18ALUGRALUALU运算结果送通用寄存器运算结果送通用寄存器7(DR)DB数据寄存器中的数据送数据总线数据寄存器中的数据送数据总线19ALUDRALUALU运算结果送数据寄存器运算结果送数据寄存器8RS1GR寄存器地址送通用寄存器寄存器地址送通用寄存器20ALUARALUALU计算得的有效地址送地址寄存器计算得的有效地址送地址寄存器9RS/RDGR寄

29、存器地址送通用寄存器寄存器地址送通用寄存器21ARAB地址寄存器内容送地址总线地址寄存器内容送地址总线10(RS1)ALU寄存器内容送寄存器内容送ALUALU22ADS地址总线上地址有效地址总线上地址有效11(RS)ALU寄存器内容送寄存器内容送ALUALU23M/IO访问存储器或访问存储器或I/OI/O12DRALU数据寄存器内容送数据寄存器内容送ALUALU24W/R写或读写或读微命令的编号及含义微命令的编号及含义301. 取指周期数据流取指周期数据流MDRCUMARPCIR存储器存储器CPU地址总线地址总线数据总线数据总线控制总线控制总线IR+1 目的:取指令目的:取指令取指周期的微命令

30、:取指周期的微命令:1、3、5、22、23、24312. 间址周期数据流间址周期数据流MDRCUMARCPU地址总线地址总线数据总线数据总线控制总线控制总线PCIR存储器存储器MDR目的:获得目的:获得EA323 . 中断周期数据流中断周期数据流MDRCUMARCPU地址总线地址总线数据总线数据总线控制总线控制总线PC存储器存储器目的:保护断点目的:保护断点33加法指令对应微命令的编号加法指令对应微命令的编号1.取指周期的微命令:取指周期的微命令:1、3、5、22、23、24。2.计算有效地址周期的微命令:计算有效地址周期的微命令:4、8、10、14、20。3.取数周期的微命令:取数周期的微命

31、令:6、21、22、23、24。4.加运算周期的微命令:加运算周期的微命令:9、11、12、14、18。34微指令格式微指令格式 微指令由微指令由操作控制字段和顺序控制字段操作控制字段和顺序控制字段组成。组成。操作控制字段操作控制字段的位数由微命令的个数决定。用的位数由微命令的个数决定。用1位表示一位表示一个微命令,当该位信息为个微命令,当该位信息为“1”时,表示发出该微命令,而时,表示发出该微命令,而该位信息为该位信息为“0”时,表示不发出该微命令;时,表示不发出该微命令;顺序控制字段顺序控制字段是直接给出下一条要执行微指令的微地址。是直接给出下一条要执行微指令的微地址。微指令是放在微指令是

32、放在CM,所以该字段由,所以该字段由CM的容量来决定。假设的容量来决定。假设CM为为4K字,则需要设置字,则需要设置12位来表示下一条微指令的地址。位来表示下一条微指令的地址。35取机器指令,取微指令,它们之间是什么关系取机器指令,取微指令,它们之间是什么关系? ?1.1.一条机器指令对应一个微程序,这个微程序是由若干条微一条机器指令对应一个微程序,这个微程序是由若干条微指令序列组成的。因此,指令序列组成的。因此,一条机器指令的功能是由若干条微一条机器指令的功能是由若干条微指令组成的序列来实现的。指令组成的序列来实现的。简言之,一条机器指令所完成的简言之,一条机器指令所完成的操作划分成若干条微

33、指令来完成,由微指令进行解释和执行。操作划分成若干条微指令来完成,由微指令进行解释和执行。 2.2.从指令与微指令,程序与微程序,地址与微地址的一一对从指令与微指令,程序与微程序,地址与微地址的一一对应关系来看,前者与内存储器有关,后者与控制存储器有关。应关系来看,前者与内存储器有关,后者与控制存储器有关。3. 3. 每一个每一个CPUCPU周期对应一条微指令周期对应一条微指令。已知某计算机有已知某计算机有80条指令,平均每条指令由条指令,平均每条指令由12条微指令组成,条微指令组成,其中有一条取指微指令是所有指令公用的,设微指令长度为其中有一条取指微指令是所有指令公用的,设微指令长度为32位

34、。请算出控制存储器容量。位。请算出控制存储器容量。解:微指令所占的单元总数解:微指令所占的单元总数=(1+8011)32=88132所以控制存储器容量可选所以控制存储器容量可选1K3237四条微指令的编码四条微指令的编码 (1) 取指微指令取指微指令: 操作控制位操作控制位 下址位下址位 101010000000000000000110 ; (2) 计算有效地址微指令:计算有效地址微指令: 操作控制位操作控制位 下址位下址位 000100010100010000010000 0 0 0 1 0 0 0 0 0 0 1 0; (3) 取数微指令:取数微指令: 操作控制位操作控制位 下址位下址位

35、000001000000000000001110 0 0 0 1 0 0 0 0 0 0 1 1; (4) 加运算微指令:加运算微指令: 操作控制位操作控制位 下址位下址位 000000001011010001000000 0 0 0 1 0 0 0 0 0 0 0 0。工作原理工作原理LDA XADD YSTA Z主存主存STP用户程序用户程序控存控存M+1MM+2P+1QQ+2PP+2Q+1取指周期取指周期 微程序微程序对应对应 LDA 操操作的微程序作的微程序对应对应 ADD 操操作的微程序作的微程序Q+1Q+2MM+1M+2P+1P+2M对应对应 STA 操操作的微程序作的微程序K+1

36、K+2MKK+2K+1392微程序控制器的基本工作原理微程序控制器的基本工作原理微程序控制器主要包括微程序控制器主要包括控制存储器控制存储器CM、微指令寄存器、微指令寄存器IR、微地址形成部件、微地址寄存器、微地址形成部件、微地址寄存器MAR等部分。等部分。微程序控制器的基本组成微程序控制器的基本组成(1 1)控制存储器)控制存储器(CM)(CM)。u是微程序控制器的核心部件,用来存放微程序。是微程序控制器的核心部件,用来存放微程序。uCMCM属于属于CPUCPU,不属于主存储器。,不属于主存储器。u其性能其性能( (包括容量、速度、可靠性等包括容量、速度、可靠性等) )与计算机的性能密与计算

37、机的性能密切相关。切相关。控制存储器控制存储器控制存储器控制存储器(2 2)微指令寄存器)微指令寄存器 IRIR用来存放从用来存放从CMCM取出的正在执行的微指令。取出的正在执行的微指令。微指令寄存器微指令寄存器 IR微命令字段:微命令字段:提供一步操作所需的微命令。提供一步操作所需的微命令。微地址字段:微地址字段:指明后续微地址的形成方式。指明后续微地址的形成方式。( (微操作控制字段微操作控制字段) )( (顺序控制字段顺序控制字段) )控制存储器控制存储器微指令寄存器微指令寄存器 IR(3 3)地址转移逻辑(地址形成部件)地址转移逻辑(地址形成部件)用来产生初始微地址和后继微地址,以保证

38、微指令的连续执行。用来产生初始微地址和后继微地址,以保证微指令的连续执行。地址转地址转移逻辑移逻辑微程序入口地址:微程序入口地址:由机器指令由机器指令操作码操作码形成。形成。后续微地址:后续微地址:由由微地址字段微地址字段、现行微地址现行微地址、运行状态运行状态等形成。等形成。微地址微地址寄存器寄存器工作过程工作过程(1 1)取机器指令)取机器指令CMCM取指取指微指令微指令IRIR微命令字段微命令字段译码器译码器微命令微命令机器指令机器指令IRIR主存主存这是一段公用的微操作,这是一段公用的微操作,其首址通常放在其首址通常放在CMCM的的“0”0”号微地址单元。该微程序号微地址单元。该微程序

39、完成从主存中读取机器指完成从主存中读取机器指令并送往指令寄存器。令并送往指令寄存器。(2 2)转微程序入口)转微程序入口IRIR操作码操作码微地址形成微地址形成电路电路入口入口ARAR微命令字段微命令字段CMCM首条微指令首条微指令(3 3)执行首条微指令)执行首条微指令IRIRIRIR译码器译码器微命令微命令操作部件操作部件(4 4)取后续微指令)取后续微指令微地址字段微地址字段现行微地址现行微地址运行状态运行状态微地址形成微地址形成电路电路后续微地址后续微地址ARARCMCM后续微指令后续微指令IRIR(5 5)执行后续微指令)执行后续微指令同(同(3 3)(6 6)返回)返回执行完对应于

40、一条机器指令的一段微程序后,返回到取指微执行完对应于一条机器指令的一段微程序后,返回到取指微程序的入口,以便取出下一条机器指令。不断重复,直至程程序的入口,以便取出下一条机器指令。不断重复,直至程序执行完毕。序执行完毕。47进行微程序设计时注意的三个问题:进行微程序设计时注意的三个问题: (1)微指令字长尽可能短)微指令字长尽可能短 (2)微程序长度尽可能短)微程序长度尽可能短 (3)提高微程序的执行速度)提高微程序的执行速度全部微指令存在全部微指令存在 CM 中中,程序执行过程中,程序执行过程中 只需读出只需读出关键关键 微指令的微指令的 操作控制字段如何形成微操作命令操作控制字段如何形成微

41、操作命令 微指令的微指令的 后继地址如何形成后继地址如何形成6.3.3 微指令编码法微指令编码法微指令由微指令由操作控制字段和下址字段操作控制字段和下址字段组成。组成。48控制字字段的编码法控制字字段的编码法控制字字段的编码方法:控制字字段的编码方法:u直接编码(直接控制)方式直接编码(直接控制)方式u字段直接编码方式字段直接编码方式u字段间接编码方式字段间接编码方式u常数源字段常数源字段E491直接控制法直接控制法 在微指令的操作控制字段中,在微指令的操作控制字段中, 每一位代表一个微操作命令每一位代表一个微操作命令下地址下地址控制信号控制信号操作控制操作控制某位为某位为 “1” 表示该控制

42、信号有效表示该控制信号有效直接控制法简单直观,输出直接用于控制,并行性强,速度直接控制法简单直观,输出直接用于控制,并行性强,速度快。但微指令字很长,使控制存储器字单元位数很长。快。但微指令字很长,使控制存储器字单元位数很长。502字段直接编码法字段直接编码法译码译码译码译码译码译码下地址下地址操作控制操作控制控制信号控制信号缩短缩短 了微指令了微指令 字长字长,增加增加 了译码了译码 时间时间微程序执行速度较慢微程序执行速度较慢显式编码显式编码选出选出互斥的微命令互斥的微命令,并将这些微命令编成一组,成为微指,并将这些微命令编成一组,成为微指令字的一个字段,用二进制编码来表示,字段增加一个译

43、令字的一个字段,用二进制编码来表示,字段增加一个译码器,该译码器的输出即为原来的微命令。码器,该译码器的输出即为原来的微命令。例如,某机器指令系统总共需要例如,某机器指令系统总共需要256256个微命令,采用直接个微命令,采用直接控制法,微指令的操作控制字段需(控制法,微指令的操作控制字段需( )位。)位。采用字段直接编码法,将采用字段直接编码法,将1616个微命令合成一段,共个微命令合成一段,共1616段,段,每个字段经一个译码器输出,可获得每个字段经一个译码器输出,可获得256256个微命令。微指个微命令。微指令的操作控制字段仅(令的操作控制字段仅( )位。)位。注意:注意:1.1.每个小

44、字段包含的信息位不能太多,一般不超过每个小字段包含的信息位不能太多,一般不超过6 6位,否位,否则将增加译码线路的复杂性和译码时间。则将增加译码线路的复杂性和译码时间。2.2.一般每个小段还要留出一个状态一般每个小段还要留出一个状态,表示本字段不发出,表示本字段不发出任何微命令。因此当某字段的长度为三位时,最多只能任何微命令。因此当某字段的长度为三位时,最多只能表示七个互斥的微命令,表示七个互斥的微命令,通常用通常用000000表示不操作。表示不操作。例题:已知某运算器的基本结构如下图所示,它具有例题:已知某运算器的基本结构如下图所示,它具有+(加加)、-(减减)、M(传送传送)三种操作。三种

45、操作。(1)指出相斥性微操作。指出相斥性微操作。(2)设计适合此运算器的微指令格式。设计适合此运算器的微指令格式。533字段间接编码法字段间接编码法字段间接编译法是在字段直接编码法的基础上,字段间接编译法是在字段直接编码法的基础上,用来进一用来进一步缩短微指令字长的方法步缩短微指令字长的方法。间接编码的含义是,一个字段。间接编码的含义是,一个字段的某些编码不能独立地定义某些微命令,而需要与其他字的某些编码不能独立地定义某些微命令,而需要与其他字段的编码来联合定义,因此又称为隐式编码或多重定义编段的编码来联合定义,因此又称为隐式编码或多重定义编码方法。码方法。字段字段 1字段字段 2译码译码译码

46、译码译码译码操作控制操作控制控制信号控制信号字段字段 n 下地址下地址控制信号控制信号缩短缩短 了微指令了微指令 字长字长,增加增加 了译码了译码 时间时间544常数源字段常数源字段E在微指令中,一般设有一个常数源字段在微指令中,一般设有一个常数源字段E。E字段一般仅有字段一般仅有几位,用来给某些部件发送常数。该常数有时作为操作数几位,用来给某些部件发送常数。该常数有时作为操作数送入微指令送入微指令ALU运算;有时作为计算器初值,用来控制微运算;有时作为计算器初值,用来控制微程序的循环次数等。程序的循环次数等。5 5、混合编码法、混合编码法这种方法是把这种方法是把直接表示法直接表示法与与字段编

47、码法字段编码法混合使用,以便能混合使用,以便能综合考虑指令字长、灵活性、执行微程序速度等方面的要综合考虑指令字长、灵活性、执行微程序速度等方面的要求。求。556.3.4 微程序流的控制微程序流的控制 当前微指令执行完毕后,怎样控制产生后继微指令的微地址。当前微指令执行完毕后,怎样控制产生后继微指令的微地址。包括指令操作码译码器产生后继微地址和每条微指令执行完包括指令操作码译码器产生后继微地址和每条微指令执行完毕后如何形成后继微地址,其中由指令操作码译码器产生后毕后如何形成后继微地址,其中由指令操作码译码器产生后继微地址就是指令所对应的微程序在控存中的入口地址。继微地址就是指令所对应的微程序在控

48、存中的入口地址。p微程序入口地址的形成:微程序入口地址的形成:每条机器指令对应一段微程序,每条机器指令对应一段微程序,当执行公用的取指微程序从主存中取出机器指令之后,由指当执行公用的取指微程序从主存中取出机器指令之后,由指令的操作码字段得到相应微程序的入口地址。令的操作码字段得到相应微程序的入口地址。 p后继微地址的形成:后继微地址的形成:获得微程序的入口地址之后,可以开获得微程序的入口地址之后,可以开始执行微程序,每条微指令执行完毕需要根据要求来形成后始执行微程序,每条微指令执行完毕需要根据要求来形成后继微地址。继微地址。561微程序入口地址的形成微程序入口地址的形成1 1、入口地址形成:如

49、果机器指令操作码字段的位数和位置固、入口地址形成:如果机器指令操作码字段的位数和位置固定,可以直接使操作码与微程序入口地址的部分位相对应。定,可以直接使操作码与微程序入口地址的部分位相对应。572后继微地址的形成后继微地址的形成 获得微程序的入口地址之后,可以开始执行微程序,每获得微程序的入口地址之后,可以开始执行微程序,每条微指令执行完毕需要根据要求来形成后继微地址。后继条微指令执行完毕需要根据要求来形成后继微地址。后继微地址的形成方法对微程序编制的灵活性影响很大。微地址的形成方法对微程序编制的灵活性影响很大。 (1) 有增量方式(计数器方式)有增量方式(计数器方式) (2) 增量与下址字段

50、结合方式增量与下址字段结合方式 (3) 多路转移方式多路转移方式 . 58(1) 增量方式(计数器方式)增量方式(计数器方式) p顺序执行微指令时,后继微地址由顺序执行微指令时,后继微地址由微程序计数器微程序计数器PC加上一加上一个增量个增量(通常为通常为1)形成的形成的;p当微程序遇到转移或转子程序时,由微指令的转移地址段当微程序遇到转移或转子程序时,由微指令的转移地址段来形成转移微地址。来形成转移微地址。优点:优点:微指令字较短,微指令字较短,便于编写微程序,后继便于编写微程序,后继微地址产生机构比较简微地址产生机构比较简单;易于掌握。单;易于掌握。缺点:缺点:这种方式不能实这种方式不能实

51、现两路以上的并行微程现两路以上的并行微程序转移,因而不利于提序转移,因而不利于提高微程序的执行速度。高微程序的执行速度。而微程序的主要特点是而微程序的主要特点是存在大量的分支。存在大量的分支。59(2) 增量与下址字段结合方式增量与下址字段结合方式将微指令的下址字段将微指令的下址字段分成两部分:分成两部分: 转移控制字段转移控制字段BCF和转移地址字段和转移地址字段BAF,当微程序实现当微程序实现转移时,将转移时,将BAF送送PC ,否则顺序执行,否则顺序执行下一条微指令下一条微指令(PC )+l60(3) 多路转移方式多路转移方式 一条微指令具有多个转移分支的能力称为一条微指令具有多个转移分

52、支的能力称为多路转移多路转移。又称为。又称为断定方式,这是一种直接给定与测试断定相结合的方式,其断定方式,这是一种直接给定与测试断定相结合的方式,其顺序控制字段一般由非测试段和测试段组成。顺序控制字段一般由非测试段和测试段组成。当微程序不产生分支时,后继微地址直接由微指令的顺序控当微程序不产生分支时,后继微地址直接由微指令的顺序控制字段给出;制字段给出;当微程序出现分支时,有若干当微程序出现分支时,有若干“后选后选”微地址可供选择:即微地址可供选择:即按顺序控制字段的按顺序控制字段的“判别测试判别测试”标志和标志和“状态条件状态条件”信息来信息来选择其中一个微地址。选择其中一个微地址。“状态条

53、件状态条件”有有n位标志,可实现微位标志,可实现微程序程序2的的n次方路转移,涉及微地址寄存器的次方路转移,涉及微地址寄存器的n位位 。多路转移方式的特点是:多路转移方式的特点是:能以较短的顺序控制字段配合,实能以较短的顺序控制字段配合,实现多路并行转移,灵活性好,速度较快,但转移地址逻辑需现多路并行转移,灵活性好,速度较快,但转移地址逻辑需要用组合逻辑方法设计。要用组合逻辑方法设计。616.3.5 微指令格式及执行方式微指令格式及执行方式1、微指令的格式:、微指令的格式:p水平型微指令:水平型微指令:一次能定义并执行多个并行操作微命令一次能定义并执行多个并行操作微命令的微指令。的微指令。p垂

54、直型微指令:垂直型微指令:一条微指令定义并执行一种基本操作。一条微指令定义并执行一种基本操作。2、微指令的执行方式:、微指令的执行方式:p串行方式:串行方式:取微指令和执行微指令两个过程是顺序进行取微指令和执行微指令两个过程是顺序进行的。该方式的微周期较长,但控制简单,形成后继微地址的。该方式的微周期较长,但控制简单,形成后继微地址所用的硬件设备较少。所用的硬件设备较少。p并行方式:并行方式:执行当前微指令的同时,可以预取下一条微执行当前微指令的同时,可以预取下一条微指令。缩短了微周期。指令。缩短了微周期。62(1) 水平型微指令水平型微指令定义:一次能定义并执行多个并行操作微命令的微指令。定

55、义:一次能定义并执行多个并行操作微命令的微指令。如采用直接控制法、字段编码法的微指令如采用直接控制法、字段编码法的微指令优点:优点:u微指令字较长,速度越快。微指令字较长,速度越快。u微指令中的微操作有高度的并行性。一条微指令能控制微指令中的微操作有高度的并行性。一条微指令能控制数据通路中多个功能部件并行操作。数据通路中多个功能部件并行操作。缺点:缺点:u微指令字比较长,明显地增加了控制存储器的横向容量。微指令字比较长,明显地增加了控制存储器的横向容量。u水平微指令与机器指令差别很大,一般要熟悉机器结构、水平微指令与机器指令差别很大,一般要熟悉机器结构、数据通路、时序系统以及指令执行过程的人才

56、能进行微程数据通路、时序系统以及指令执行过程的人才能进行微程序设计,这对用户来说是很困难的。序设计,这对用户来说是很困难的。63(2) 垂直型微指令垂直型微指令一条微指令定义并执行一种基本操作。一条微指令定义并执行一种基本操作。在微指令中设置微操作码字段,采用为操作码编译法(在微指令中设置微操作码字段,采用为操作码编译法(类类似机器指令操作码似机器指令操作码 的方式),由操作码规定为微指令的功的方式),由操作码规定为微指令的功能,在一条微指令中能,在一条微指令中只有一、两个微操作命令称为垂直型只有一、两个微操作命令称为垂直型微指令。微指令。在在微指令中设置有微操作码字段微指令中设置有微操作码字

57、段,采用微操作码编译法,采用微操作码编译法,由微操作码规定微指令的功能,称为垂直型微指令。其特由微操作码规定微指令的功能,称为垂直型微指令。其特点是不强调实现微指令的并行控制功能,通常点是不强调实现微指令的并行控制功能,通常一条微指令一条微指令只要求能控制实现一种微操作。只要求能控制实现一种微操作。64两种微指令的比较两种微指令的比较1. 水平型微指令并行操作能力强,效率高,灵活性强,垂水平型微指令并行操作能力强,效率高,灵活性强,垂直型微指令则差。直型微指令则差。2. 水平型微指令执行一条指令的时间短,垂直型微指令执水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。行时间长。3. 水

58、平型微指令解释指令的微程序,具有微指令字比较长,水平型微指令解释指令的微程序,具有微指令字比较长,但微程序短的特点。垂直型微指令则相反,微指令字比但微程序短的特点。垂直型微指令则相反,微指令字比较短而微程序长。较短而微程序长。4. 水平型微指令与机器指令差别大,用户难以掌握,而垂水平型微指令与机器指令差别大,用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易理解。直型微指令与指令比较相似,相对来说,比较容易理解。65水平微指令与垂直微指令比较水平微指令与垂直微指令比较水平微指令水平微指令垂直微指令垂直微指令能力能力效率效率灵活性灵活性高高强强低低弱弱速度速度执行时间执行时间快快短短

59、慢慢长长字长字长长长短短掌握难度掌握难度难难容易容易662. 微指令的执行方式微指令的执行方式1) 串行方式串行方式取微指令和执行微指令两个过程是顺序进行的。该方式的微周期较取微指令和执行微指令两个过程是顺序进行的。该方式的微周期较长,但控制简单,形成后继微地址所用的硬件设备较少。长,但控制简单,形成后继微地址所用的硬件设备较少。2) 并行方式并行方式执行当前微指令的同时,可以预取下一条微指令。缩短了微周期。执行当前微指令的同时,可以预取下一条微指令。缩短了微周期。取第取第 i+1 条微指令条微指令执行第执行第 i 条微指令条微指令取第取第 i 条微指令条微指令执行第执行第 i+1 条微指令条

60、微指令执行第执行第 i 条微指令条微指令取第取第 i 条微指令条微指令取第取第 i+1 条微指令条微指令 执行第执行第 i+1 条微指令条微指令取第取第 i+2 条微指令条微指令 执行第执行第 i+2 条微指令条微指令67一、微程序概念一、微程序概念1、微命令,微操作,微指令,微程序,微地址,微周期,控制存储器、微命令,微操作,微指令,微程序,微地址,微周期,控制存储器2、机器指令与微指令的区别、机器指令与微指令的区别3、微周期和机器周期的区别、微周期和机器周期的区别二、微程序控制器的组成二、微程序控制器的组成1、四个:控制存储器、四个:控制存储器CM,微指令寄存器,微地址形成部件,微地址寄,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论