计算机组成原理-第16-17讲(第5章).ppt

上传人:s****8 文档编号:69239796 上传时间:2022-12-31 格式:PPT 页数:48 大小:1.35MB
返回 下载 相关 举报
计算机组成原理-第16-17讲(第5章).ppt_第1页
第1页 / 共48页
计算机组成原理-第16-17讲(第5章).ppt_第2页
第2页 / 共48页
点击查看更多>>
资源描述

《计算机组成原理-第16-17讲(第5章).ppt》由会员分享,可在线阅读,更多相关《计算机组成原理-第16-17讲(第5章).ppt(48页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、Shenyang Institute of Aeronautical Engineering第五章 中央处理器5.1 CPU的功能和基本结构的功能和基本结构5.2 数据通路的结构和功能数据通路的结构和功能5.3 指令指令周期周期5.4 控制器的功能和工作原理控制器的功能和工作原理 5.5 指令流水线指令流水线0Shenyang Institute of Aeronautical Engineering5.4控制器的功能和工作原理控制器:发布命令的“决策机构”,指挥计算机工作。上节中所需要的控制信号均由控制器来发出。【学习的难点】控制信号是如何产生的?控制信号需要在何时发出?【控制器宗旨】在正确

2、的时刻发出正确的控制信号。1Shenyang Institute of Aeronautical Engineering5.4.1控制器的功能计算机处理信息执行程序完成某个确定算法的指令序列存放在存储器中控制器控制程序的执行程序存储顺序执行 控制器如同乐队中的指挥角色,发出满足一定时序关系的控制信号,实现指令系统所规定的各条指令的功能,并保证计算机系统正常运行。2Shenyang Institute of Aeronautical Engineering控制器的组成脉冲源启停电路操作码 地址码指令译码器时序控制信号形成部件PC数据总线DB地址总线AB控制总线CBCLKRESET+1指令指令地址

3、运算器PSR转移地址数据操作数地址3Shenyang Institute of Aeronautical Engineering5.4.3 CPU周期内时钟的产生回忆ADD R0,(R1)指令周期。取指令PC+1对指令译码加法运算CPU周期取指周期CPU周期取数周期开始取操作数CPU周期加法周期下一条指令PCAB,AB M,R/W#=R,M DB,DB IR,PC+1R1ALU、LOD、ALU DB、DB AR、AR AB、AB M、R、M DB、DB DRDRALU、R0 ALU、+、ALUDB、DB DR、DR R0在正确的时刻发出正确的控制信号方能保证指令的正确执行4Shenyang I

4、nstitute of Aeronautical EngineeringCPU周期的确定一个CPU周期包括四个时钟周期T1T4。产生方式如右:CLKT1T2T3T45Shenyang Institute of Aeronautical Engineering工作脉冲CP在T4的末尾需要产生一个工作脉冲CP来保存计算结果或接收传送的数据及指令等。例如在取指周期的最后需要在CPU周期的末尾完成PC+1:CLKT4CPT4CLKCP6Shenyang Institute of Aeronautical Engineering5.4.4微程序控制计算机的原理数字计算机可以分成两部分:控制部件和执行部件

5、。显然,控制器属于控制部件;运算器、存储器和外围设备则属于执行部件。两者之间是通过控制线相连的。控制器通过控制线向执行部件发出控制信号。控制信号的产生方法有两种:微程序控制方式硬布线控制方式7Shenyang Institute of Aeronautical Engineering微程序控制原理微程序设计技术是利用软件方法来设计硬件的技术。【基本思想】仿照通常的解题程序的方法,将各个控制信号编成所谓的“微指令”(如之前讲的可称为取指微指令),存放在只读存储器中。当机器执行指令时,按顺序读出微指令,从而产生执行指令时所需要的各种控制信号,使相应部件执行所规定的操作。8Shenyang Inst

6、itute of Aeronautical Engineering相关概念【微命令】控制部件向执行部件发出的控制信号。例如:打开或关闭某个控制门的电位信号、某个寄存器的打入脉冲等。微命令是控制计算机各部件完成某个基本微操作的命令。构成控制序列的最小单位。【微操作】执行部件接受微命令所进行的操作。微命令和微操作是一一对应的。微命令是微操作的控制信号,微操作是微命令的操作过程。微操作是执行部件中最基本的操作。9Shenyang Institute of Aeronautical Engineering相关概念【微指令】在微程序控制的计算机中,将由同时发出的控制信号所执行的一组微操作称为微指令。是微

7、命令的组合,微指令存储在控制器中的控制存储器中一条微指令通常至少包含两大部分信息:即操作控制字段和下址字段。10Shenyang Institute of Aeronautical Engineering相关概念【微程序】计算机中每条指令的功能均由微指令序列解释完成,这些微指令序列的集合称为微程序。一段微程序对应一条机器指令。微地址:存放微指令的控制存储器的单元地址11Shenyang Institute of Aeronautical Engineering执行一条指令实际上就是执行一段存放在控制存储器中的微程序。控制存储器:用于存放全部指令系统微程序的ROM。由于是ROM,微程序只读不写。

8、这种结构有利于指令系统的扩充,只需在控制存储器中增加新指令的微程序即可。因此大部分CPU采用这种方式实现。相关概念12Shenyang Institute of Aeronautical Engineering简单CPU模型下图表示一个简单CPU模型。图中的数字代表一个控制信号,是指令的代码,也是微指令中的排列顺序。所有控制信号均由时序控制信号形成部件产生。其中120号指令为CPU内部指令。2123号为外部指令。设采用指令格式如下:操作码rs,rdrs1imm(disp)13Shenyang Institute of Aeronautical EngineeringOP rs,rd rs1 d

9、ispIR程序计数器PC数据寄存器DR地址寄存器AR通用寄存器GRALU时序控制信号形成部件数据总线DB地址总线AB控制总线CB(20)AR AB(19)ALU AR(8)rs1GR(9)rs,rdGR(1)PCAB(3)PC+1(4)dispALU(2)ALUPC(11)(rs)ALU(10)(rs1)ALU(17)ALUGR(18)ALUDR(12)DRALU(5)DBIR(6)DBDR(7)DRDB(15)(16)(13)+(14)-(1)(2)(21)ADS(22)M/IO(23)W/R指令译码器14Shenyang Institute of Aeronautical Engineer

10、ing序号控制信号功 能序号控制信号功 能1PCAB指令地址送地址总线13ALU进行加法运算2ALUPC 转移地址送PC14ALU进行减法运算3PC+1程序计数器加115ALU进行逻辑乘运算4imm(disp)ALU立即数或位移量送ALU16ALU进行逻辑加运算5DBIR取指到指令寄存器17ALUGRALU运算结果送通用寄存器6DRDB数据寄存器中的数据送数据总线18ALUDRALU运算结果送数据寄存器7DBDR数据总线上的数据送数据寄存器19ALUARALU计算得的有效地址送地址寄存器8rs1GR寄存器地址送通用寄存器20ARAB地址寄存器内容送地址总线9rs,rdGR寄存器地址送通用寄存器

11、21ADS地址总线上地址有效10(rs1)ALU 寄存器内容送ALU22M/IO#访问存储器或I/O11(rs)ALU 寄存器内容送ALU23W/R#写或读12DRALU数据寄存器内容送ALU控制信号一览表15Shenyang Institute of Aeronautical Engineering指令的说明 rs,rd,rs1为通用寄存器地址;imm(disp)为立即数(位移量)以加法指令为例说明微程序控制计算机的工作原理。操作码rs,rdrs1imm(disp)16Shenyang Institute of Aeronautical Engineering加法指令功能【加法指令功能】将寄

12、存器rs中的一个数与存储器中的一个数(地址为(rs1)+disp)相加,结果放在寄存器rd中,其中rs和rd为同一个寄存器。(rs)+(rs1)+disprd从存储器取指令送IR,进行译码 计算数据地址送AR到存储器取数 进行加法运算,结果送rdADDrs,rdrs1imm(disp)17Shenyang Institute of Aeronautical Engineering加法指令周期指令周期如下所示取指令PC+1对指令译码取操作数送DRCPU周期取指周期t1CPU周期计算地址周期t2开始计算地址送ARCPU周期取数周期t3CPU周期加法周期t4下一条指令加法运算结果送rd18Sheny

13、ang Institute of Aeronautical Engineering取指微指令指令地址送地址总线PC AB(1);发访存命令ADS(21)、M/IO#=1(22)、W/R#=0(23);指令送指令寄存器DB IR(5);程序计数器加1PC+1(3)IR程序计数器PC时序控制信号形成部件数据总线DB地址总线AB控制总线CB(1)PCAB(3)PC+1(5)DBIR(1)(2)(21)ADS(22)M/IO(23)W/R根据地址读取指令送DBADD rs,rd rs1 disp19Shenyang Institute of Aeronautical EngineeringADD rs

14、,rd rs1 dispIR地址寄存器AR通用寄存器GRALU(19)ALU AR(8)rs1GR(4)dispALU(10)(rs1)ALU(13)+计算操作数地址微指令取两个源操作数rs1GR(8)、(rs1)ALU(10)、dispALU(4);加法运算+(13);有效地址送地址寄存器ALUAR(19);20Shenyang Institute of Aeronautical Engineering数据寄存器DR地址寄存器AR数据总线DB地址总线AB控制总线CB(20)AR AB(6)DBDR(1)(2)(21)ADS(22)M/IO(23)W/R时序控制信号形成部件数据地址送地址总线A

15、R AB(20);发访存命令ADS(21)、M/IO#=1(22)、W/R#=0(23);数据送数据寄存器DB DR(6);取数微指令根据地址读取数据送DB21Shenyang Institute of Aeronautical EngineeringADD rs,rd rs1 dispIR数据寄存器DR通用寄存器GRALU(9)rs,rdGR(11)(rs)ALU(17)ALUGR(12)DRALU(13)+加法运算及送结果微指令两源操作数送ALUrs,rdGR(9)、(rs)ALU(11)、DRALU(12);加法运算+(13);送结果ALU GR(17)。22Shenyang Insti

16、tute of Aeronautical Engineering疑问带着问题来学习各个控制信号如何存储和产生?各微指令的地址及下一条微指令地址如何确定?23Shenyang Institute of Aeronautical Engineering问题:如何组织微指令产生上述控制信号?控制信号的产生最简单的方式:将每个控制信号用一个控制位来表示 当该位为“1”时,定义为有控制信号;当该位为“0”时,没有控制信号。M/IO#,W/R#则根据是访问存储器还是I/O设备,是写还是读而设置成“1”或“0”。问题:若不读也不写如何解决?若ADS=0,则不进行存储器或I/O的读取。24Shenyang I

17、nstitute of Aeronautical Engineering控制信号一览表中共有23个控制信号,所以总共有23个控制位。为了能访问所有控存单元,还必须有下址部分。微指令的格式可表示如下:微指令格式如控制存储器为4K字,下址字段需要12位表示25Shenyang Institute of Aeronautical Engineering控制字段每一位的功能与控制信号一览表中所表示的相符。例如,第1位表示PCAB。当前正在执行的微从CM取出后放IR中,而IR与各个控制门直接相连。微指令编码26Shenyang Institute of Aeronautical Engineering下

18、址的确定27Shenyang Institute of Aeronautical Engineering问题:第一条微指令及下一条微指令地址如何产生?下址的确定对于第一条微指令地址产生在译码时产生对应微程序的第一条微指令地址。对于下一条微指令地址产生增量方式 指定下址方式条件转移方式28Shenyang Institute of Aeronautical Engineering微程序的流程取指PC+1计算地址 1002计算地址 1005计算地址 1000取数 1003加法运算 1000取数 1006减法运算 100010001001100210031004100510061100加法指令加法指

19、令减法指令减法指令转移指令转移指令29Shenyang Institute of Aeronautical Engineering微程序控制器介绍IR操作码 地址码下址指令译码微地址寄存器控制存储器控制字段微命令IR地址生成逻辑P字段状态条件PC+130Shenyang Institute of Aeronautical Engineering5.4.5微程序设计技术简介在进行微程序的设计时,需要回答的问题:如何缩短微指令字长;如何减少微程序长度;如何提高微程序的执行速度。下址控制存储器控制字段微命令采用合理的微指令编码方法可有效缩短微指令长度31Shenyang Institute of A

20、eronautical Engineering微指令编码直接控制法在微指令的控制字段中,每一位代表一个微命令,在设计微指令时,是否发出某个微命令,只要将控制字段中相应位置1或0就可以打开或关闭某个控制门。从而控制微指令的执行。前述部分微指令即是采用直接控制法实现。下址控制字段微命令32Shenyang Institute of Aeronautical Engineering直接控制法特点:无需译码,产生微命令方法快;微操作间并行度高,控制简单;微指令太长,所需控制存储器容量较多。有改进的余地:不是所有微操作都并行操作,往往在某刻大部分操作是关闭的。可取的操作:将互斥的一组微命令编入一组,同一

21、时刻只发出一个微命令。可有效缩短微指令长度。33Shenyang Institute of Aeronautical Engineering微命令的相容与相斥微操作是执行部件中最基本的操作。由于数据通路的结构关系,微操作可以分为相容性和相斥性两种,对应微命令也存在相容和相斥。【相容性】指微操作可以同时或同一个CPU周期内可以并行执行。如PCAB,DBIR【相斥性】微操作不能同时或不能在同一个CPU周期内并行执行。如操作“+”,“-”。34Shenyang Institute of Aeronautical Engineering微指令编码字段直接编译法选出互斥的微命令编入一组,形成微指令字的一

22、个字段。这种方式称为字段直接编译法。使用较为普遍。下址字段1微指令寄存器字段2字段n微命令译码器微命令微命令微命令35Shenyang Institute of Aeronautical Engineering字段直接编译法特点:有效缩短了微指令的长度;增加了译码时间,稍微减慢了执行速度;设某个字段有n位,则它最多能表示的微命令为2n-1。原因:需要留出一个000表示本字段不发出微命令。某个字段内所有的微命令必须相互互斥。至关重要的一点36Shenyang Institute of Aeronautical Engineering微指令编码字段间接编译法一个字段的某些微命令,要兼由另一个字段中

23、的某些微命令来解释。下址字段1微指令寄存器字段m微命令译码器微命令37Shenyang Institute of Aeronautical Engineering字段间接编译法特点:能进一步缩短了微指令的长度;进一步增加了译码时间,减慢了执行速度;进一步削弱了微指令的并行能力。因此一般情况下仅作为字段直接编译法的一种补充。38Shenyang Institute of Aeronautical Engineering微指令编码混合表示法将直接控制法和字段编码法混合使用。在微指令长度、灵活性、执行速度上达到要求的目标。下址字段1微指令寄存器字段2直接控制字段微命令译码器微命令微命令微命令39Sh

24、enyang Institute of Aeronautical Engineering微地址的形成方式找到微程序入口后,可以开始执行微程序,每条微指令执行完毕后都要根据要求形成后继微地址,主要有两种方式:增量方式和断定方式。增量方式:与机器指令的控制方式类似,有顺序执行、转移和转子之分。顺序执行微指令时,PC=PC+1;非顺序执行微指令时,产生一个转移微指令。40Shenyang Institute of Aeronautical Engineering增量方式转移方式可以分为以下几种:无条件转移:PC=A;条件转移:条件成立PC=A;否则PC=PC+1。转微子程序:当前PC存入返回寄存器R

25、中,保证 能够返回;PC=A微子程序返回:PC=R;转移地址A控制字段转移方式41Shenyang Institute of Aeronautical Engineering微地址的形成方式断定方式:其后继微地址可由微程序设计者指定或根据微指令所规定的测试结果直接决定后继微地址的全部或部分值。非测试段:微地址的高位部分。可由设计者指定,用来指定后继微地址在CM中的区域。测试段:根据有关状态的测试结果确定其地址值。相当于在指定区域内断定具体的分支。非测试段控制字段测试段42Shenyang Institute of Aeronautical Engineering增量与下址字段结合产生后继微地址

26、增量与下址字段结合产生后继微地址 将微指令的下址字段分成两部分(见将微指令的下址字段分成两部分(见“增量与下址字段”方式的原理图),即转移控制字段,即转移控制字段BCFBCF和转移和转移地址字段地址字段BAFBAF,当微程序实现转移时,将当微程序实现转移时,将BAFBAF送送PCPC,否则顺序执行下一条微指令否则顺序执行下一条微指令(PC+1)(PC+1)。执行微程序执行微程序条件转移时,决定转移与否的硬件条件有几种。假设条件转移时,决定转移与否的硬件条件有几种。假设有八种转移情况,定义了八个微命令(有八种转移情况,定义了八个微命令(BCFBCF取取3 3位),位),则则BCFBCF定义的八个

27、微命令见下表。定义的八个微命令见下表。微地址的形成方式43Shenyang Institute of Aeronautical EngineeringBCFBCF字段字段硬件条件硬件条件计数器计数器CTCT返回寄存器返回寄存器RRRR输入输入后续微地址后续微地址编码编码微命令名称微命令名称操作前操作前操作操作0 0顺序执行顺序执行PC+1PC+11 1结果为结果为0 0转移转移结果为结果为0 0BAFBAF结果不为结果不为0 0PC+1PC+12 2结果溢出转移结果溢出转移溢出溢出BAFBAF不溢出不溢出PC+1PC+13 3无条件转移无条件转移BAFBAF4 4测试循环测试循环为为0 0CT

28、-1CT-1PC+1PC+1不为不为0 0BAFBAF5 5转微子程序转微子程序PC+1PC+1BAFBAF6 6返回返回RRRR7 7操作码形成地址操作码形成地址由操作码形成由操作码形成4445Shenyang Institute of Aeronautical Engineering微指令格式可以分成两类:水平型微指令一般采用直接控制编码和字段直接编码。特点:并行性高,微指令长度长。垂直型微指令类似机器指令,对微操作码字段进行编码。特点:并行性差,微指令长度短,但微程序长。46Shenyang Institute of Aeronautical Engineering本节作业本节作业P420-10.2P421-10.15P422-10.19P422-10.2147

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

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com