计算机组成原理第六章精选文档.ppt

上传人:石*** 文档编号:44716147 上传时间:2022-09-22 格式:PPT 页数:79 大小:3.39MB
返回 下载 相关 举报
计算机组成原理第六章精选文档.ppt_第1页
第1页 / 共79页
计算机组成原理第六章精选文档.ppt_第2页
第2页 / 共79页
点击查看更多>>
资源描述

《计算机组成原理第六章精选文档.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理第六章精选文档.ppt(79页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、计算机组成原理第六章课件本讲稿第一页,共七十九页教学目标掌握中央处理器的基本工作原理掌握程序控制基本思想本讲稿第二页,共七十九页教学重点中央处理器的总体结构指令的执行与时序产生器微程序设计技术和微程序控制器硬布线控制器与门陈列控制器本讲稿第三页,共七十九页教学过程6.1中央处理器的总体结构6.2指令的执行与时序产生器6.3微程序设计技术与微程序控制器6.4硬布线控制器与门阵列控制器6.5CPU新技术本讲稿第四页,共七十九页6.1中央处理器的总体结构在计算机系统中,中央处理器CPU是由控制器和运算器两大部分组成的。控制器是整个系统的指挥中心,在控制器的控制之下,运算器、存储器和输入输出设备等部件

2、构成了一个有机的整体。本讲稿第五页,共七十九页6.1.1中央处理器的功能与组成一、CPU的基本功能(1)程序控制 保证机器按一定顺序执行程序是CPU的首要任务。(2)操作控制 一条指令的功能往往是由若干个操作信号的组合来实现的。(3)时间控制 对各种操作实施时间上的控制称为时间控制。各种指令的操作信号均受到时间的严格控制;一条指令的整个执行过程也受到时间的严格控制。(4)数据加工本讲稿第六页,共七十九页6.1.1中央处理器的功能与组成二、控制器的功能(基本功能)控制器的基本功能就是负责指令的读出,进行识别和解释,并指挥协调各功能部件执行指令。三、程序控制原理 1、编程 2、送MM(通过输入设备

3、)3、机器工作时,是按一定的序列逐条取出指令,分析指令,执行指令,并自动转到下一条指令执行,直到程序规定的任务完成。4、程序控制由控制器承担,程序存储由存储器完成。本讲稿第七页,共七十九页6.1.1中央处理器的功能与组成四、控制器逻辑结构的3种组织方法(1)常规组合逻辑法(或称随机逻辑法);分立元件时代的产物;方法是按逻辑代数的运算规则,以组合电路最小化为原则,用逻辑门电路实现;不规整,可靠性低,造价高。(2)可编程逻辑阵列(PLA)法;与前者本质相同,工艺不同;用大规模集成电路(LSI)来实现。(3)微程序控制逻辑法。将程序设计的思想方法引入控制器的控制逻辑;将各种操作控制信号以编码信息字的

4、形式存入控制存储器中(CM);一条机器指令对应一道微程序,机器指令执行的过程就是微程序执行的过程。本讲稿第八页,共七十九页6.1.1中央处理器的功能与组成五、CPU的组成(1)指令部件 程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)、程序状态寄存器(PSW)和地址形成部件等。(2)时序部件 时序部件就是用来产生各部件所需要的定时控制信号的部件。时序信号一般由工作周期,工作节拍及工作时标脉冲三级时序信号构成。(3)微操作控制线路 微操作是指计算机中最基本的操作;微操作控制逻辑,用来产生机器所需的全部的微操作信号。微操作控制逻辑的作用是把操作码译码器输出的控制电位,时序信号以及各种控制

5、条件进行组合,按一定时间顺序产生并发出一系列微操作控制信号,以完成指令规定的全部操作。(4)中断控制逻辑 中断控制逻辑用来控制中断处理的硬件逻辑。本讲稿第九页,共七十九页6.1.1中央处理器的功能与组成(5/5)去内存取指令或取数据对各功能部件产生控制PSW地址形成部件时序部件OC译码器PC微操作信号产生器.图6-1 控制器基本结构ACOC本讲稿第十页,共七十九页6.1.2操作控制器与时序产生器根据设计方法不同,操作控制器可分为:时序逻辑型称为硬布线控制器,它是采用时序逻辑技术来实现的存储型称为微程序控制器,它是采用存储逻辑来实现的;时序逻辑与存储逻辑结合型。是前两种方式的组合。本书重点介绍微

6、程序控制器。本讲稿第十一页,共七十九页6.2指令的执行与时序产生器6.2.1指令周期6.2.2时序产生器6.2.3CPU的控制方式本讲稿第十二页,共七十九页6.2.1指令周期CPU每取出并执行一条指令,都要完成一系列的操作,这一系列操作所需的时间通常叫做一个指令周期。更简单地说,指令周期是取出并执行一条指令的时间。指令周期常常用若干个CPU周期数来表示,CPU周期也称为机器周期。而一个CPU周期时间又包含有若干个时钟周期(通常称为节拍脉冲或T周期,是处理操作的最基本单位)。计算机的程序执行过程实际上是不断地取出指令、分析指令、执行指令的过程。本讲稿第十三页,共七十九页6.2.1指令周期一、基本

7、工作过程 主要是指执行指令的过程。计算机执行指令的过程可以分为三个阶段:取指令;分析指令;执行指令。1、取指令(1)(PC)MAR,READ(2)(PC)+1PC (3)读操作(将MAR所指定的地址单元的内容读出)MDR,并发出MFC(Wait for MFC)(4)(MDR)IR,指令译码器对操作码字段OC开始译码。本讲稿第十四页,共七十九页6.2.1指令周期(3/18)一、基本工作过程2、分析指令(1)OC:识别和区分不同的指令类别;(2)AC:获取操作数的方法。例如,假设目前在IR寄存器中的指令是一条加法指令:ADD(R0),R1其中R0,R1是通用寄存器,事先由其它指令已送入了内容。分

8、析指令阶段能得到两个结果:这是一条加法指令;源点操作数是寄存器间接寻址方式,操作数在内存中,有效地址是(R0),终点操作数是寄存器直接寻址方式,操作数就是R1寄存器的内容。本讲稿第十五页,共七十九页6.2.1指令周期(4/18)一、基本工作过程又如,若目前在IR寄存器中的指令是一条减法指令:SUBD(R0),(R1)其中R0,R1是通用寄存器,事先由其它指令已送入了内容。分析指令阶段能得到两个结果:这是一条减法指令;源点操作数是寄存器变址寻址方式,操作数在内存中,有效地址是(R0)+D,终点操作数是通用寄存器间接寻址方式,有效地址是R1寄存器的内容。本讲稿第十六页,共七十九页6.2.1指令周期

9、(5/18)一、基本工作过程3、执行指令执行指令阶段完成指令所规定的各种操作,具体实现指令的功能。F(IR,PSW,时序)微操作控制信号序列例如,ADD(R0),R1又如,SUBD(R0),(R1)若无意外事件(如结果溢出)发生,机器就又从PC中取得下一条指令地址,开始一条新指令的控制过程。计算机的基本工作过程可以概括地说成是取指令,分析指令,执行指令,再取下一条指令,依次周而复始地执行指令序列的过程。本讲稿第十七页,共七十九页6.2.1指令周期(6/18)二、模型机结构1、框图(1)寄存器:R0R3是通用寄存器,S,D,T为CPU内部的暂存数据的工作寄存器,分别称为源点寄存器(S),终点寄存

10、器(D)和临时寄存器(T)。(2)暂存器:X、Y、Z,其中X和Y两个暂存器也作为ALU的两个输入多路开关使用,可以采用锁定器的方式实现。(3)单总线结构:PC,PSW挂在总线上。本讲稿第十八页,共七十九页6.2.1指令周期(7/18)二、模型机结构2、微操作控制信号(1)助记符:R1out:表示将R1寄存器中的信息发送出去的微操作控制信号。R0in:表示将信息接收至R0寄存器的微操作信号。MFC:存储器功能完成信号。WMFC:等待MFC信号。READ:读存储器微操作。WRITE:写存储器微操作。(2)微操作:A、控制器中:(a)IRin;(b)PCin,PCout;(c)WMFC;(d)END

11、:指令工作完成本讲稿第十九页,共七十九页6.2.1指令周期(8/18)B、运算器中:(a)X暂存器接收总线数据控制信号Xin;(b)Y暂存器接收总线数据控制信号Yin;(c)Z暂存器接收,发送控制信号Zin,Zout;(d)R0inR3in,R0outR3out;(e)Sin,Sout,Din,Dout,Tin,Tout.;(f)ALU:ADD,SUB,ADC,.AND,XOR,1等;(g)0Y,RY;(h)0X,RX;C、内存:(a)READ,WRITE;(b)内存地址寄存器接收控制信号MARin;(c)MDRin,MDRout;本讲稿第二十页,共七十九页6.2.1指令周期(9/18)3、指

12、令格式:模型机的寻址方式采用通用寄存器寻址方式,以双操作数指令为例,其指令格式如下:操作数地址字段由两部分组成:寄存器编号的含义是:00:R0;01:R1;10:R2;11:R3;源点操作数(4位)OC(4位)终点操作数(4位)寄存器编号(2位)方式位(2位)本讲稿第二十一页,共七十九页6.2.1指令周期(10/18)4、寻址方式:ACOC存储体微操作控制器MDRMARI/O设备时序信号总线I/O接口R0.R3,S,D,TIRZYXIDPSWPC微操作控制信号序列图6-3 模型计算机框图.本讲稿第二十二页,共七十九页6.2.1指令周期(11/18)三、微操作序列(1)“从主存中取出一个字”的微

13、操作序列R1out,0X,0Y,RY,ADD,Zin(把有效地址送入暂存器Z。)Zout,MARin,READ(将总线地址送入MAR,并发送读命令READ。)WMFC(控制器等待存储器发来的操作完成信号MFC。)MDRout,0X,Xin,0Y,ADD,Zin(控制器收到MFC信号后,将MDR中已读出的代码送入暂存器Z。)Zout,R2in(将取得的数据装入R2寄存器中。)本讲稿第二十三页,共七十九页6.2.1指令周期(12/18)(2)“指令计数器PC递增”的微操作序列PCout,0Y,Yin,0X,1,ADD,Zin(把有效地址送入暂存器Z。)Zout,PCin(把暂存器Z的内容送PC。)

14、(3)“从主存中取出指令字”的微操作序列PCout,0Y,Yin,MARin,READ(指令地址送到主存,发读命令。)0X,1,ADD,Zin,WMFC(PC)+1,并等待内存操作完成回答信号。)MDRout,IRin,Zout,PCin(接收指令到IR,开始译码,并且PC内容已递增。)本讲稿第二十四页,共七十九页6.2.1指令周期(13/18)(4)双操作数加法指令ADD(R0),R1PCout,0Y,Yin,MARin,READ(指令地址送到主存,发读命令。)0X,1,ADD,Zin,WMFC(PC)+1,并等待内存操作完成回答信号。)MDRout,IRin,Zout,PCin(接收指令到

15、IR,开始译码,并且PC内容已递增。)R0out,0X,0Y,RY,ADD,Zin(源操作数间接寻址,送地址到Z。)Zout,MARin,READ(取源操作数)WMFC,R1out,0X,RX(等待内存回答,将终点数送至X暂存器。)MDRout,0Y,Yin,ADD,Zin(将源点数送至ALU的Y端,相加。)Zout,R1in(将结果送R1中)END(结束)本讲稿第二十五页,共七十九页6.2.1指令周期(14/18)(5)双操作数减法指令SUBR0,D(R1)PCout,0Y,Yin,MARin,READ(指令地址送到主存,发读命令。)0X,1,ADD,Zin,WMFC(PC)+1,并等待内存

16、操作完成回答信号。)MDRout,IRin,Zout,PCin(接收指令到IR,开始译码,并且PC内容已递增。)R0out,0X,0Y,RY,ADD,Zin(源操作数内容送到Z暂存器。)Zout,Sin(将源点操作数送S暂存器保存。)PCout,0Y,Yin,MARin,READ(PC内容送到主存,发读命令。)0X,1,ADD,Zin,WMFC(PC)+1,并等待内存操作完成回答。)Zout,PCin,MDRout,0Y,Yin(将形式地址D送Y暂存器,并且PC递增。)本讲稿第二十六页,共七十九页6.2.1指令周期(15/18)R1out,0X,RX,ADD,Zin(将R1内容送至X暂存器,并

17、进行加法运算形成终点操作数有效地址。)Zout,MARin,READ(取终点操作数)WMFC,Sout,0X,RX(等待内存回答,并将源点操作数送X暂存器。)MDRout,0Y,Yin,SUB,Zin(将源点数送至ALU的Y端,两数相减。)Zout,MDRin,WRITE(将两数之差送内存。)WMFC(等待内存回答。)END(结束)本讲稿第二十七页,共七十九页6.2.1指令周期(16/18)(6)一条转移指令的微操作序列PCout,0Y,Yin,MARin,READ(指令地址送到主存,发读命令。)0X,2,ADD,Zin,WMFC(PC)+2,并等待内存操作完成回答信号。)MDRout,IRi

18、n,Zout,PCin(接收指令到IR,开始译码,并且PC内容已递增。)IFZ=1THENPCout,0X,RX;IFZ=0THENEND(判断Z值,若为1则将PC内容送X中,否则结束)ACout(=C),0Y,Yin,ADD,Zin(Adr=(PC)+C)Zout,PCin(AdrPC)END(结束)本讲稿第二十八页,共七十九页6.2.1指令周期(17/18)四、指令运行过程中的事务处理(1)停机:当现行指令执行完由CPU控制停机。(2)DMA:现行指令执行中,在当前一个CPU周期结束,就冻结指令执行,CPU转让总线控制权,挪用一个存储器周期给这类高速外设进行数传处理。(3)掉电:通常是当现

19、行指令执行完成后,进行掉电事务处理。(4)故障:视其紧迫程度,或分别在当前CPU周期结束或现行指令执行完进行故障,错误处理。(5)程序中断:对一般性外部设备的数传请求,通常安排在CPU每个机器周期状态开始,进行采样扫描接收,在现行指令执行完后,CPU视其请求的优先等级进行事务处理。一个机器周期状态结束,下一个机器周期状态开始的转接瞬间是查询有无各种事务处理要求的时刻,本讲稿第二十九页,共七十九页6.2.1指令周期(18/18)停机指令停机指令?NNNNYYYY停机处理停机处理掉电掉电?掉电处理掉电处理DMA?当前周期结束当前周期结束下一周期开始下一周期开始中断周期中断周期DMA周期周期程序中断

20、程序中断?图图6-4 6-4 指令执行中的事务处理指令执行中的事务处理本讲稿第三十页,共七十九页6.2.2时序产生器(1/4)一、概念1、时序部件:计算机的机内时钟。它用其产生的周期状态,节拍电位及时标脉冲去对指令周期进行时间划分,刻度和标定。2、指令周期:在计算机中从指令的读取到指令的执行完成,执行一条指令所需要的时间,称为指令周期。指令周期通常由若干个CPU周期来表示,CPU周期也称为机器周期。由于CPU内部的操作速度较快,而CPU访问一次内存所花的时间较长,通常用存储周期为基础来规定CPU周期。本讲稿第三十一页,共七十九页6.2.2时序产生器(2/4)二、3级时序信号1、周期(1)在一个

21、控制阶段内均持续起作用的信号;(2)通常用周期状态寄存器来标志和指明某某周期控制;(3)指令周期可分为取指周期、分析周期、执行周期。2、节拍(1)把一个机器周期分成若干个相等的时间段,每一个时间段对应一个电位信号,称节拍电位;(2)一般都以能保证ALU进行一次运算操作作为一拍电位的时间宽度。3、时标工作脉冲(1)及时改变标志状态;(2)时标脉冲的宽度一般为节拍电位宽度的1/N,只要能保证所有的触发器都能可靠地,稳定地翻转即可。本讲稿第三十二页,共七十九页6.2.2时序产生器(3/4)三、3级时序信号的关系1、一台计算机机内的控制信号一般均由若干个周期状态,若干个节拍电位及若干个时标脉冲这样3级

22、控制时序信号定时完成。2、3级控制时序信号的宽度均成正整数倍同步关系。周期状态之间,节拍电位之间,时标脉冲之间既不容许有重叠交叉,又不容许有空白间隙,应该是能一个接一个地准确连接,一个降落另一个升起而准确切换的同步信号。本讲稿第三十三页,共七十九页6.2.2时序产生器(4/4)图6-7 三级时序系统时标脉冲节拍周期本讲稿第三十四页,共七十九页6.2.3CPU的控制方式(1/4)控制器的控制方式:形成控制不同微操作序列的时序控制信号的方法。控制方式的分类:同步控制方式异步控制方式同异步联合控制方式本讲稿第三十五页,共七十九页6.2.3CPU的控制方式(2/4)一、同步控制方式1、含义:又称为固定

23、时序控制方式或无应答控制方式。任何指令的执行或指令中每个微操作的执行都受事先安排好的时序信号的控制。2、每个周期状态中产生统一数目的节拍电位及时标工作脉冲。3、以最复杂指令的实现需要为基准。4、优点:设计简单,操作控制容易实现。缺点:效率低。本讲稿第三十六页,共七十九页6.2.3CPU的控制方式(3/4)二、异步控制方式1、含义:可变时序控制方式或应答控制方式。执行一条指令需要多少节拍,不作统一的规定,而是根据每条指令的具体情况而定,需要多少,控制器就产生多少时标信号。2、特点:每一条指令执行完毕后都必须向控制时序部件发回一个回答信号,控制器收到回答信号后,才开始下一条指令的执行。3、优点:指

24、令的运行效率高;缺点:控制线路比较复杂。4、异步工作方式一般采用两条定时控制线来实现。我们把这两条线称为“请求”线和“回答”线。当系统中两个部件A和B进行数据交换时,若A发出“请求”信号,则必须有B的“回答”信号进行应答,这次操作才是有效的,否则无效。本讲稿第三十七页,共七十九页6.2.3CPU的控制方式(4/4)三、同步,异步联合控制方式1、含义:同步控制和异步控制相结合的方式即联合控制方式,区别对待不同指令。2、一般的设计思想是,在功能部件内部采用同步式,而在功能部件之间采用异步式,并且在硬件实现允许的情况下,尽可能多地采用异步控制。本讲稿第三十八页,共七十九页6.3微程序设计技术与微程序

25、控制器6.3.1微程序设计技术6.3.2微程序控制器本讲稿第三十九页,共七十九页一、微程序设计微程序控制技术在现今计算机设计中得到广泛的采用,其实质是用程序设计的思想方法来组织操作控制逻辑。微程序控制技术被广泛应用的原因(1)物质基础:ROM(2)灵活性(3)提高了可靠性,可利用性及可维护性(简称RAS技术),大大优化了硬件控制技术。(4)有利于机器设计时的仿真。也就是说,在M1机器上使用M2机器语言编写程序并运行,从用户角度来看,M1和M2无区别,要能做到这一点,只有机器具有控存CM的微程序设计结构才行。(5)其他6.3.1微程序设计技术(1/13)本讲稿第四十页,共七十九页6.3.1微程序

26、设计技术(2/13)微程序控制方法与组合逻辑控制方法的差别(1)从实现方式上微程序控制:规整,增、删、改较容易组合逻辑控制:零乱且复杂,当修改指令或增加指令时非常麻烦,有时甚至没有可能。(2)从性能上来比较在同样的半导体工艺条件下,微程序控制的速度比组合逻辑控制方式的速度低,这是因为执行每条微指令都要从控存中读取一次,影响了速度,而组合逻辑控制方式取决于电路延迟,因而在超高速计算机中,对影响速度的关键部分例如CPU,往往采用组合逻辑控制方法。近年来在一些新型计算机结构中如RISC结构,一般选用组合逻辑方法。(3)诊断能力微程序设计方法:诊断能力强组合逻辑控制:诊断能力弱本讲稿第四十一页,共七十

27、九页6.3.1微程序设计技术(3/13)二、基本概念1.控制字(CW)表征微操作控制要求的二进制字,称为控制字。2.微命令微命令:微程序控制中,微操作控制信号微操作:微命令在时序的配合作用下的操作过程。3.微地址和微指令微地址:存放控制字的单元地址。微指令:具有微地址的控制字。4.微程序一系列微指令的有序集合构成微程序。5.微周期从控制存储器中读出一条微指令并执行相应操作所需要的时间。本讲稿第四十二页,共七十九页6.3.1微程序设计技术(4/13)三、微指令编译法编译法的选择原则(1)减少微指令的长度;(2)提高微操作的并行性;(3)提高机器的控制性能并降低价格;(4)有利于微程序设计的灵活性

28、。编译法1、直接控制法(不译法)(1)含义:每一个独立的二进制位代表一个微命令。按不译法编码的微指令,又称水平微指令。(2)本质特征:面向数据通路的控制门(或控制点)。(3)优点:A:并行执行,执行速度也比较快;B:微程序所需用的微指令条数少。(4)缺点:A:编制程序难度较大;B:微指令不能充分利用。本讲稿第四十三页,共七十九页6.3.1微程序设计技术(5/13)编译法2、最短编译法(1)含义:每一条微指令只定义一个微命令。按最短编译法编码的微指令又称垂直型微指令。(2)本质特征:面向算法来编码的。类似于传统的程序设计方法。(3)优点:编程简单;微指令字中各位都得到充分利用。(4)缺点:并行控

29、制能力差,执行速度慢;微程序长度较长。本讲稿第四十四页,共七十九页6.3.1微程序设计技术(6/13)编译法3、字段编译法(1)字段直接编译法A:把一条微指令分成几段,段与段间按水平法设计,每个段内分别按垂直法进行编码,每一段形成一个微命令,一条微指令可同时有并行的几个微命令。B:微指令字分段的原则:在同一节拍内,需要互相配合起作用的微操作是并行操作,其微命令在同一节拍内,需要互相配合起作用的微操作是并行操作,其微命令可以分在不同的字段内,以便配合进行微操作控制。这是微命令的相可以分在不同的字段内,以便配合进行微操作控制。这是微命令的相容性。容性。在同一节拍内,不允许同时出现具有在同一节拍内,

30、不允许同时出现具有“排它排它”性的微操作,是串行操作,其性的微操作,是串行操作,其微命令可分在一个字段内,这是微命令的互斥性。微命令可分在一个字段内,这是微命令的互斥性。本讲稿第四十五页,共七十九页6.3.1微程序设计技术(7/13)编译法3、字段编译法(2)字段间接编译法是在字段直接编译法基础上用来进一步缩短指令字长,组合零散微命令的一种编译法。若在字段直接编译法中再规定一个字段的某些微命令要由另一个字段中的某些微命令来解释,称为字段间接编译法。这种编译法适用于把那些不同类型的,不常用的,但数量又可观的“零散”的微命令编入少数几个字段之中,以减少微指令字的长度,组合编译更多的微命令。本讲稿第

31、四十六页,共七十九页6.3.1微程序设计技术(8/13)四、微程序流的控制1、初始微地址的形成每条机器指令对应一段微程序,当执行公用的取指微程序从主存中取出机器指令后,由机器指令的操作码指出微程序的首地址。这是一种多分支情况,通常有以下几种方式:(1)操作码的位数与位置固定,这时可直接使操作码与微地址码的部分位相对应。例如,若微入口地址=00OC,则控制存储器第零页的一些单元被安排为各个微程序入口(即首地址),再通过无条件微转移指令使这些单元与相应的后续微指令相连接。(2)当每类指令的操作码位数与位置固定,而各类指令之间的操作码位数与位置不固定时,可采用分级转移的方法。先按指令类型转移到某条微

32、指令,区分出是哪一大类,然后进一步按机器指令操作码转移,区分出是哪一种具体的机器指令。(3)当操作码的位数与位置都不固定时,通常的方法是采用PLA可编程逻辑阵列实现。本讲稿第四十七页,共七十九页6.3.1微程序设计技术(9/13)四、微程序流的控制2、后继微地址的形成得到微程序入口以后,就开始执行微程序,后继微地址的形成方法对微程序编制的灵活性影响很大。通常采用两种方法形成后继微地址:(1)增量方式与机器指令的控制方式类似。确定后继微指令有以下几种情况:(A)顺序:增量。(B)无条件转向:PC。(C)有条件转向:条件码参与,修改PC。(2)在微指令字的格式中,增设下地址字段之后,就可以用微地址

33、寄存器(AR)取代微程序计数器。下一条微指令地址在多数情况可由现行微指令字的下地址字段NAF直接给出,少数情况由微地址产生器对下地址字段进行修改后产生后继微地址。本讲稿第四十八页,共七十九页6.3.1微程序设计技术(10/13)四、微程序流的控制2、后继微地址的形成后继微地址的形成是设计微程序控制的关键问题之一。确定后继微指令地址有以下几种情况:(A)顺序执行时,后继微地址可以由现行微指令字的下地址字段NAF或微程序计数器PC直接确定。(B)无条件转向的后继微地址,可以由现行微指令字的下地址字段确定。(C)有条件转向的后继微地址由现行机器指令操作码,现行微指令执行时产生状态特征或条件码的判别结

34、果决定。本讲稿第四十九页,共七十九页6.3.1微程序设计技术(11/13)五、动态微程序设计1、含义:根据用户的要求改变微程序。2、支持:动态微程序设计需要可写控制存储器的支持。六、毫微程序设计1、毫微程序是用以解释微程序的一种程序,因此组成毫微程序的毫微指令是负责解释微指令的微指令。2、毫微程序设计的基本思想采用两级微程序设计方法(1)第一级用垂直微指令编制垂直微程序第一级垂直微程序是为实现指令系统和其它处理过程的需要而编制的,它有严格的顺序结构,由它确定后续微指令的地址。垂直微程序存放于微程序存储器中。(2)第二级用水平微指令编制水平微程序。第二级水平微程序是由第一级调用的,用以解释垂直微

35、程序并实现相应的数据通路操作。水平微指令具有并行操作控制能力,但不包含后续微指令地址信息。本讲稿第五十页,共七十九页6.3.1微程序设计技术(12/13)六、毫微程序设计(3)实现方法(I)无对应:垂直微指令中有一类简单控制信号的微命令,它们无需变换成毫微指令,直接译码用作微操作的控制信号,以求减少毫微存储器的容量;(II)一一对应:垂直微指令与水平毫微指令一一对应,这种方法简化了垂直微指令的译码器,而且,相同的毫微指令只要在毫微程序存储器中存放一条即可,这也可以减少控制存储器的容量;(III)一对多:若干条水平毫微指令组成的毫微程序解释一条垂直微指令,用这种方法构成的垂直微指令易于编制微程序

36、,能按各种应用有效地控制数据通路操作,此时,毫微指令与微指令的关系就相当于微指令与指令的关系。本讲稿第五十一页,共七十九页6.3.1微程序设计技术(13/13)六、毫微程序设计(4)采用毫微程序设计的主要优缺点:(A)通过使用少量的控制存储器空间,就可达到高度的并行性;(B)垂直微程序面向算法描述,编制微程序较容易;(C)水平型毫微指令能定义很多并行操作微指令,两级层次降低了编制微程序的复杂性。(D)毫微程序设计具有较大的灵活性。(E)缺点:毫微程序设计有时需要访问控制存储器两次,影响了机器执行的速度,同时,也增加了系统的复杂性。本讲稿第五十二页,共七十九页6.3.2微程序控制器(1/4)一、

37、基本组成1、控制存储器CM用来存放微程序。2、微指令寄存器IR用来存放从控制存储器中取得的微指令。3、微地址形成部件AG用来产生机器指令的首条微指令地址和后续地址。4、微地址寄存器AR接收微地址形成部件送来的微地址。本讲稿第五十三页,共七十九页6.3.2微程序控制器(2/4)微地址形成部件状态条件CM功能部件译码线路IRARIR微操作信号.图6-11 微程序控制器基本结构时序部件本讲稿第五十四页,共七十九页6.3.2微程序控制器(3/4)二、工作过程微程序控制器的工作过程实质上就是在微程序控制器的控制之下,计算机执行机器指令的过程:1、从控制存储器中运行取指令微程序,完成从主存储器中取得机器指

38、令的工作;2、根据机器指令的操作码,得到相应机器指令的微程序入口;3、逐条取出微指令,完成相关微操作控制;4、执行下一条机器指令。本讲稿第五十五页,共七十九页6.3.2微程序控制器(4/4)三、微指令的执行方式1、串行执行方式2、并行执行方式本讲稿第五十六页,共七十九页6.4硬布线控制器与门阵列控制器6.4.1硬布线控制器6.4.2PLA逻辑控制原理本讲稿第五十七页,共七十九页6.4.1硬布线控制器(1/2)一、硬布线控制器的基本原理1、设计目标:逻辑电路以使用最少元件和取得最高操作速度作为设计目标。2、操作控制信号的产生,由下列因素决定:(1)IR中现行指令码的功能特性。(2)控制时序部件产

39、生的定时信号。(3)其他部件送来的状态标志信息(S)及条件码置位情况。微操作控制信号就是在以上输入条件综合决定下的逻辑函数,即:Ci=F(1),(2),(3)。本讲稿第五十八页,共七十九页6.4.1硬布线控制器(2/2)二、随机逻辑控制设计步骤(1)编制各条指令的操作流程。尽量注意各类指令执行时的共性要求。在不影响逻辑正确的前提下,把共性操作尽量安排在相同的控制时序阶段中。(2)编排微操作时序表。操作时序表,通常是一张两维的表格,x方向是3级时序,y方向是指令,x,y坐标交点(xi,yi)是要执行的微操作控制。(3)对微操作时序进行逻辑综合,化简。根据微操作时序表可以写出各操作控制的逻辑函数表

40、达式。(4)电路实现按照最后得到的逻辑表达式组,可用一系列组合逻辑电路加以实现。本讲稿第五十九页,共七十九页6.4.2PLA逻辑控制原理(1/4)1、PLA含义PLA称为可编程逻辑阵列。PLA是由一个“与”阵列和一个“或”阵列构成的。“与”阵列和“或”阵列均可编程,具有“与,或,非”的逻辑控制,均可以用PLA结构实现。2、“与”门和“或”门“与”门“或”门本讲稿第六十页,共七十九页6.4.2PLA逻辑控制原理(2/4)硅二极管的正向电压降一般是0.7V,设3V左右为高电平,代表“1”;0V左右为低电平,代表“0”(1)与门:(A)当A,B两端为0V时,D1,D2正向导通,F端电压0.7V,为低

41、电平故A=0,B=0,F=0;(B)A=0V,B=3V,D1通,F=0.7VD2反向截止,故A=0,B=1,F=0;(C)A=3V,B=3V,D1,D2通,F=3.7V故A=1,B=1,F=1;本讲稿第六十一页,共七十九页6.4.2PLA逻辑控制原理(3/4)(2)或门:(A)A=0V,B=0V,D1,D2导通,F=-0.7V故A=0,B=0,F=0;(B)A=0V,B=3V,D2通,F=2.3VD1截止,故A=0,B=1,F=1;(C)A=3V,B=3V,D1,D2通,F=2.3V故A=1,B=1,F=1;本讲稿第六十二页,共七十九页6.4.2PLA逻辑控制原理(4/4)3、举例:输出输入或

42、阵列与阵列举例:M=AB+AB乘积项本讲稿第六十三页,共七十九页6.5CPU新技术6.5.1流水线工作原理6.5.2RISC结构6.5.3奔腾CPU本讲稿第六十四页,共七十九页6.5.1流水线工作原理(1/5)一、基本概念一、基本概念流水线技术是将一个重复的时序过程分解成若干个子过程,每一个子过程都可有效地在其专用功能段上与其它子过程同时执行。流水线工作过程的描述:采用时(间)-空(间)图的方法。描述的是指令执行流水线的时-空图。流水技术特点:(1)流水线可分成若干个互有联系的子过程(功能段);(2)实现子过程的功能段所需时间尽可能相等,避免因不等而产生处理的瓶颈,形成流水现的断流。(3)形成

43、流水处理,需要一段准备时间,称“通过时间”。只有在此之后流水过程才稳定。(4)指令流发生不能顺序执行时,会使流水过程中断,再形成流水过程,则需要“通过时间”,所以流水过程不应常断流,否则效率就不会很高。本讲稿第六十五页,共七十九页6.5.1流水线工作原理(2/5)t8t7t6t5t4t3t2t1执行指操作数指令译码取指令空间时间12345543211234554321图6-15 流水线技术原理本讲稿第六十六页,共七十九页6.5.1流水线工作原理(3/5)二、流水线的分类流水结构不仅在指令的执行过程中用来提高处理速度,而且可以用于各种大量重复的时序过程,如浮点数相加等。因此就有按不同结构和不同观

44、点进行的不同分类。(1)按完成的功能分类单功能流水线:只能完成一种固定功能的流水线,如只能实现浮点数加法运算。多功能流水线:同一个流水现可有多种联接方式来实现多种功能。(2)按同一时间内各段之间的联接方式分类静态流水线:同一时间内,流水线的各段只能按同一种功能的联接方式工作。动态流水线:同一时间内,流水线的各段可按不同运算的联接方式工作。如在流水线中有些段完成浮点加法,有些段实现定点乘法。本讲稿第六十七页,共七十九页6.5.1流水线工作原理(4/5)(3)按流水的级别分类部件级流水线:又称运算操作流水线。它是指处理机的算术逻辑部件分段,使各种数据类型能进行流水操作。处理机级流水线:又称指令流水

45、线。它是指在指令执行过程中划分成若干功能段,按流水方式组织起来。处理机间流水线:又称宏流水。它是指两台以上的处理机串行地对同一数据流进行处理,每台处理机完成一个任务。(4)按数据表示分类标量流水处理机:只能对标量数据进行流水处理。向量流水处理机:它具有向量指令,能对向量的各元素进行流水处理。本讲稿第六十八页,共七十九页6.5.1流水线工作原理(5/5)三、相关处理与控制要使流水线发挥高效率,就是要使流水线连续不断地流动,尽量不出现断流情况。但是断流现象是不可避免的,其原因除了编译形成的目的程序不能发挥流水线结构的作用外,就是存在三种相关冲突,即资源相关、数据相关和控制相关,使得流水线的不断流难

46、以实现。(1)资源相关(2)数据相关(3)控制相关本讲稿第六十九页,共七十九页流水线中的主要问题流水线中存在一些相关(冲突、冒险Hazard,相关、依赖Dependence,竞争Competition)的情况,它使得下一条指令无法在设计的时钟周期内执行。这些相关将降低流水线性能主要有三种类型的相关(冲突)结构相关(资源冲突):当指令重叠执行过程中,硬件资源满足不了指令重叠执行的要求数据相关(数据冲突):在同时执行的多条指令中,一条指令依赖前一条指令的执行结果(数据)却无法得到控制相关(控制冲突):流水线遇到分支指令或其他改变PC值的指令本讲稿第七十页,共七十九页1.1.资源相关资源相关 资源相

47、关资源相关是指多条指令进入流水线后,在同一机器时钟周期内争用同一个功能是指多条指令进入流水线后,在同一机器时钟周期内争用同一个功能部件所发生的冲突部件所发生的冲突 例:假定一条指令流水线由五段组成,且仅有例:假定一条指令流水线由五段组成,且仅有IF过程和过程和MEM过程需要访问存过程需要访问存储器储器 I1与与I4两条指令在时钟两条指令在时钟4争用存储器资源的相关冲突争用存储器资源的相关冲突本讲稿第七十一页,共七十九页2.2.数据相关数据相关ADDR1,R2,R3;R2R3R1SUBR4,R1,R5;R1R5R4ANDR6,R1,R7;R1 R7R0指令发生数据相关冲突指令发生数据相关冲突本讲

48、稿第七十二页,共七十九页3.3.控制相关控制相关控制相关控制相关冲突由冲突由转移指令(分支指令)转移指令(分支指令)引起引起执行转移指令时,依据转移条件的产生结果执行转移指令时,依据转移条件的产生结果可能为顺序取下条指令可能为顺序取下条指令也可能转移到新的目标地址取指令也可能转移到新的目标地址取指令地址不定,流水线需要暂停、地址不定,流水线需要暂停、发生断流发生断流转移指令转移指令主要有:主要有:无条件转移指令:跳转、过程调用和返回无条件转移指令:跳转、过程调用和返回条件分支指令条件分支指令 本讲稿第七十三页,共七十九页多指令流出技术改进指令流水线,实现一个时钟周期发射(流出issue)多条指

49、令超标量(Superscalar)处理器:每个时钟周期发射多条指令(18)超长指令字(VLIW:VeryLongInstructionWord):通过编译器调度无关的多条指令(416)形成一条长指令,每个时钟周期发射一条长指令超级流水线(Superpipelining):将每个功能部件进一步流水化,使得一个功能部件在一个时钟周期中可以处理多条指令(可以简单地理解为很长的流水线)本讲稿第七十四页,共七十九页多发射流水线01234567T正常流水线正常流水线超标量流水线超标量流水线0123456T0123456T超长指令字流水线超长指令字流水线3个操作个操作01234567T超级流水线超级流水线本

50、讲稿第七十五页,共七十九页6.5.2RISC的硬件结构1.RISC寄存器管理技术2.流水线技术3.延时转移技术本讲稿第七十六页,共七十九页6.5.3奔腾CPU1.Pentium的技术技能2.奔腾CPU的结构(1)超标量流水线(2)指令Cache和数据Cache(3)浮点运算部件(4)动态转移预测技术本讲稿第七十七页,共七十九页第六章第六章 小结小结本讲稿第七十八页,共七十九页本章小结中央处理器CPU是计算机的核心部件,具有程序控制、操作控制、时间控制、数据加工等基本技能。CPU从储存器取出一条指令并执行这条指令的时间称为指令周期。由于各种指令的操作功能不同,各种指令的指令周期是不尽相同的。划分

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁