您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 计算机组成与结构第6章2
王爱英,计算机组成与结构·第4版(第6章二)任课教师:郝尚富河北北方学院信息科学与工程学院Email:zjkcxh5656@163.comTel:13903233105计算机组成原理术·第4版清华大学出版社第6章中央处理部件(CPU)6.1计算机的硬件系统6.2控制器的组成6.3微程序控制计算机的基本工作原理6.4微程序设计技术6.5硬布线控制的计算机6.6控制器的控制方式6.7流水线工作原理6.8CPU举例6.9计算机的加电及控制过程计算机组成原理术·第4版清华大学出版社本节重难点1.微程序的微指令编码译码方法.2.产生后继微指令地址的方法.3.微指令的格式:水平和垂直型微指令.4.硬布线控制器的组成,控制信号的产生方法,时序的作用和产生方法.5.硬布线控制器的设计步骤和方法.6.硬布线控制器与微程序控制器的比较.7.控制器的控制方式的含义与种类.计算机组成原理术·第4版清华大学出版社6.4微程序设计技术在实际进行微程序设计时,还应关心下面三个问题:(1)如何缩短微指令字长;(2)如何减少微程序长度;(3)如何提高微程序的执行速度。计算机组成原理术·第4版清华大学出版社6.4.1微指令的编译法(编码译码方法)---控制字段1.直接控制法在微指令的控制字段中,每一位代表一个微命令,在设计微指令时,是否发出某个微命令,只要将控制字段中相应位置成“1”或“0”,这样就可打开或关闭某个控制门,这就是直接控制法.缺点:微指令字长达到难以接受的地步,并要求机器有大容量控制存储器。计算机组成原理术·第4版清华大学出版社微周期:是一条微指令所需的执行时间。如果有若干个(一组)微命令,在每次选择使用它们的微周期内,只有一个微命令起作用,那么这若干个微命令是互斥的。选出互斥的微命令,并将这些微命令编成一组,成为微指令字的一个字段,用二进制编码来表示。2.字段直接编译法计算机组成原理术·第4版清华大学出版社优点:缩短了微指令长度。代价:在微指令寄存器的输出端,为该字段增加一个译码器,该译码器的输出即为原来的微命令。字段长度n与所能表示的微命令数m的关系:m=2n-1例:当字段长度为3位时,最多只能表示7个互斥的微命令,通常代码000表示不发微命令。计算机组成原理术·第4版清华大学出版社3.字段间接编译法如果在字段直接编译法中,还规定一个字段的某些微命令,要兼由另一字段中的某些微命令来解释,称为字段间接编译法。优点:进一步减少了指令长度。缺点:削弱微指令的并行控制能力。计算机组成原理术·第4版清华大学出版社4.常数源字段E在微指令中,一般设有一个常数源字段E,就如指令中的立即操作数一样。E字段一般仅有几位,用来给某些部件发送常数,故有时称为发射字段。该常数有时作为操作数送入ALU运算;有时作为计算器初值,用来控制微程序的循环次数等。5.其他诸如微操作码编译法(见“6.4.3微指令格式”)等将在下面介绍。计算机组成原理术·第4版清华大学出版社6.4.2微程序流的控制当前正在执行的微指令,称为现行微指令,现行微指令所在的控制存储器单元的地址称为现行微地址,现行微指令执行完毕后,下一条要执行的微指令称为后继微指令,后继微指令所在的控存单元地址称为后继微地址。所谓微程序流的控制是指当前微指令执行完毕后,怎样控制产生后继微地址。计算机组成原理术·第4版清华大学出版社我们已经讲到产生后继微指令地址的两种方法:(1)由指令操作码译码器产生后继微地址。(2)由微指令的下址字段指出后继微地址。与程序设计相似,在微程序设计中除了顺序执行微程序外还存在转移功能和微循环程序与微子程序等,这将影响下址的形成。计算机组成原理术·第4版清华大学出版社1.产生后继微指令地址的几种方法(1)以增量方式产生后继微地址。在顺序执行微指令时,后继微地址由现行微地址加上一个增量(通常为1)形成的;而在非顺序执行时则要产生一个转移微地址。计算机组成原理术·第4版清华大学出版社机器加电后执行的第一条微指令地址(微程序入口)来自专门的硬件电路,控制实现取指令操作,然后由指令操作码产生后继微地址。接下去,若顺序执行微指令,则将现行微地址(在微程序计数器μPC中)+1产生后继微地址;若遇到转移类微指令,则由μPC与形成转移微地址的逻辑电路组合成后继微地址。例如,利用该逻辑电路的输出与μPC低位进行逻楫加,形成后继微地址。计算机组成原理术·第4版清华大学出版社优点:可使微指令的下址字段很短,仅起选择作用。缺点:微程序转移很不灵活,使得微程序在控存中的物理空间分配相当困难。在下图中,μPC兼作控制存储器的地址寄存器,输入有四个来源。下址字段仅有两位,其功能是选择三个输入源中的一个作为μPC的输入,而微程序入口是由专门的硬件产生的,不受下址字段控制。计算机组成原理术·第4版清华大学出版社微指令的下址字段分成两部分:转移控制字段BCF和转移地址字段BAF,BCF控制转移条件,BAF控制转移的目标地址。当条件成立时,微程序要转移,将BAF送μPC,否则顺序执行下一条微指令(μPC+1)。执行微程序条件转移时,决定转移与否的硬件条件有好几种。由BCF定义的八个微命令见表6.2。(2)增量与下址字段结合产生后继微地址计算机组成原理术·第4版清华大学出版社转移控制字段转移地址字段计算机组成原理术·第4版清华大学出版社计算机组成原理术·第4版清华大学出版社BCF=0,顺序执行微命令,μPC+1为后继微地址。BCF=1,条件转移微命令,当运算结果为0时,将BAF送μPC,否则μPC+l—μPCBCF=2,条件转移微命令,当运算结果溢出时,将BAF送μPC,否则,μPC+1+μPC。BCF=3,无条件转移微命令,将BAF送μPC。BCF=4;测试循环微命令,假如CT≠0,表示需要继续执行循环微命令,将循环人口微地址从BAF送μPC。假如CT=0,表示循环结束,后继微地址为μPC+1。本条微命令同时完成CT一1操作。BCF=5,转微子程序微命令,把微子程序人口地址从BAF送μPC,从而实现转移。在转移之前要把该条微指令的下一地址(μPC+1)送人返回寄存器RR之中。BCF=6,返回微命令,把RR中的返回微地址送人μPC,从而实现从微子程序返回到原来的微程序。BCF=7,操作码产生后继微地址的微命令,这是取指后,按现行指令执行的第一条微指令。计算机组成原理术·第4版清华大学出版社BAF的长度有两种情况:①与μPC的位数相等;可以从控制存储器的任一单元取微指令。特点:转移灵活,但增加了微指令的长度.②比μPC短;考虑到转移点在μPC附近,或者在控制存储器的某区域内,所以由原来的μPC的若干位与BAF组合成转移微地址。特点:转移地址受到限制,但可缩短微指令长度。计算机组成原理术·第4版清华大学出版社(3)多路转移方式一条微指令存在多个转移分支的情况称为多路转移。例1:根据操作码产生不同的后继微地址。实现此功能的电路通常是由PROM(可编程序只读存储器)组成的,也有把它称为MAPROM(映像只读存储器)的。该存储器的特点是以指令的操作码作为地址输入,而相应的存储单元内容即为该指令的第一条微指令的入口地址。该存储器的容量等于或略大于机器的指令数,所以容量小,速度快。计算机组成原理术·第4版清华大学出版社例2:根据某些硬件状态来决定后继微地址。根据一种状态(非0即1)来决定微地址可以有两种情况,即两路转移;而根据两种状态来决定微地址可以有四种情况,即四路转移。四路转移涉及微地址的两位,一般就定在微地址的最后两位,也就是说当执行转移微指令时,根据条件可转移到四个微地址中的一个,这四个微地址的高位部分相等,仅是最低两位不同。优点:实现多路转移可减少微程序的长度。计算机组成原理术·第4版清华大学出版社(4)微中断微中断与程序中断的概念相似,在微程序执行过程中,一旦出现微中断请求信号,通常在完成现行指令的微程序后响应该微中断请求,这时中止当前正在执行的程序,而转去执行微中断处理程序,微中断请求信号是由程序中断请求信号引起的。设计人员在进行微程序设计时,已安排好微中断处理程序在控制存储器的位置,因此该微程序段的入口地址是已知的。当CPU响应微中断请求时,由硬件产生微中断程序的入口地址。当中断处理完毕后,再返回到原来被中断的程序。这也是产生后继微地址的一种情况。计算机组成原理术·第4版清华大学出版社AM2901为4位运算部件,包含4位ALU及16个4位通用寄存器,本系统将其中一个寄存器用作程序计数器PC。AM2902是为了加速进位而采用的集成电路。AM2910为微程序控制器,用于产生下一条微指令地址,可寻址4K字的控制存储器。MAP为操作码译码器产生本条指令的微程序入口地址。2.以AM2900系列芯片构成的微程序CPU计算机组成原理术·第4版清华大学出版社计算机组成原理术·第4版清华大学出版社当它用作寄存器时,主要用于保存一个微地址,用以实现微程序分支;当它用作计数器时,主要用于控制微程序的循环次数微堆栈由寄存器堆和微堆栈指示器组成,寄存器堆可保存5个字,主要用于保存微子程序调用的返回地址和微程序循环的首地址。接收从微指令有关控制字段送来的命令码及硬件状态CC,用来执行AM2910的内部操作及选择下址输出。用来选择下一条微指令的地址,它可从片内的微程序计数器μPC、寄存器/计数器、微堆栈或直接从输入微地址(D11~D0)中选择一个作为输出。增量器的进位输入CI为高电平时,μPC←Y十1,用于实现微程序的顺序执行;当CI为低电平时,μPC←Y,用于实现一条微指令的多次执行。计算机组成原理术·第4版清华大学出版社输入线:D11—D0:外部输入的数据,既可作为寄存器/计数器的初值,也可直接经地址多路选择器从Y输出,作为下一条微指令的地址。I3~I0:AM2910的命令码,来自微指令字的有关字段,与CC一起用以控制AM2910的内部操作及选择下址。CC:条件输入。RLD:寄存器/计数器装入信号,当为低电平时,把输入D11~D0装入寄存器/计数器。CI:增量器进位输入,当为高电平时,μPC←Y+1;当为低电平时,μPC←Y。OE:Y输出允许信号,低电子有效,当为高电平时,Y输出为高阻态。输出线:Y1l—Y0:下一条微指令的地址,它直接作为控制存储器的地址。PL,MAP,VECT:三个使能信号,用于决定输入D的来源。计算机组成原理术·第4版清华大学出版社6.4.3微指令格式微指令的格式大体上可分成两类:一是水平型微指令,在一条微指令中定义并执行多个并行操作微命令.二是垂直型微指令:不强调实现微指令的并行控制功能,通常一条微指令只要求能控制实现一二种操作。计算机组成原理术·第4版清华大学出版社1.水平型微指令基本特点是在一条微指令中定义并执行多个并行操作微命令。在实际应用中,直接控制法、字段编译法(直接、间接编译法)经常应用在同一条水平型微指令中。从速度来看,直接控制法最快,字段编译法要经过译码,所以会增加一些延迟时间。计算机组成原理术·第4版清华大学出版社2.垂直型微指令在微指令中设置有微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能,称为垂直型微指令。其特点是不强调实现微指令的并行控制功能,通常一条微指令只要求能控制实现一二种操作。这种微指令格式与指令相似;每条指令有一个操作码;每条微指令有一个微操作码。下面我们举一个经简化的例子,设微指令字长16位,微操作码3位,有八条微指令如下:计算机组成原理术·第4版清华大学出版社(1)寄存器—寄存器传送型微指令微指令格式功能:把源寄存器数据送目标寄存器。第0~2位为微操作码。第3~7位是源寄存器编址,这五位可以指定31个寄存器之一作为源寄存器,00000可表示为由指令的地址码部分指出源寄存器地址。第8~12位是目标寄存器的编址,这5位可以指定31个寄存器之一作为目标寄存器,00000可表示为由指令的地址码部分指出目标寄存器地址。第13—15位是“其他字段”,可协助本条微指令完成其他控制功能。计算机组成原理术·第4版清华大学出版社(2)运算控制型微指令微指令格式功能:选择运算器(ALU)
本文标题:计算机组成与结构第6章2
链接地址:https://www.777doc.com/doc-2043961 .html