计算机组成与结构.ppt

上传人:cn****1 文档编号:569374565 上传时间:2024-07-29 格式:PPT 页数:98 大小:1.75MB
返回 下载 相关 举报
计算机组成与结构.ppt_第1页
第1页 / 共98页
计算机组成与结构.ppt_第2页
第2页 / 共98页
计算机组成与结构.ppt_第3页
第3页 / 共98页
计算机组成与结构.ppt_第4页
第4页 / 共98页
计算机组成与结构.ppt_第5页
第5页 / 共98页
点击查看更多>>
资源描述

《计算机组成与结构.ppt》由会员分享,可在线阅读,更多相关《计算机组成与结构.ppt(98页珍藏版)》请在金锄头文库上搜索。

1、 计算机组成与结构计算机组成与结构 自动化专业自动化专业学时:32上课时间:每周两次周一:8:00 9:35周四:9:45 11:257/29/2024 CPU存存 储储 器器输入设备输入设备运算器运算器辅助存储器辅助存储器主存储器主存储器输出设备输出设备控制器控制器外外设设主主机机计算机的组成计算机的组成 课程内容安排课程内容安排控 制 器微 程 序 控 制硬 布 线 控 制中央处理器中央处理器 流 水 线基本原理,微程序设计技术基本原理,微程序设计技术基本原理,微程序设计技术基本原理,微程序设计技术基本原理,与微程序控制的比较基本原理,与微程序控制的比较基本原理,与微程序控制的比较基本原理

2、,与微程序控制的比较控制器功能与组成,指令执行过程控制器功能与组成,指令执行过程控制器功能与组成,指令执行过程控制器功能与组成,指令执行过程基本工作原理基本工作原理基本工作原理基本工作原理中央处理器中央处理器 CPUCPU中的主要寄存器中的主要寄存器1. 1. 1. 1. 通用寄存器通用寄存器通用寄存器通用寄存器2. 2. 2. 2. 专用寄存器专用寄存器专用寄存器专用寄存器 通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。通用寄存器一般由程序编址访问。CPUCPU中的主要寄存器中的主要寄存器2. 2. 2. 2. 专用寄存器专用寄存器专用寄存器专用寄存器

3、 程序计数器又称指令计数器,用来存放正在执行的指令地址或接着要执行的下条指令地址。1 1 1 1)程序计数器()程序计数器()程序计数器()程序计数器(PCPCPCPC)2 2 2 2)指令寄存器()指令寄存器()指令寄存器()指令寄存器(IRIRIRIR) 指令寄存器用来存放从存储器中取出的指令。当指令从主存取出暂存于指令寄存器之后,在执行指令的过程中,指令寄存器的内容不允许发生变化,以保证实现指令的全部功能。CPUCPU中的主要寄存器中的主要寄存器 数据寄存器用来暂时存放由主存储器读出的一个数据字;反之,当向主存存入一个数据字时,也暂时将它们存放在数据寄存器中。3 3 3 3)数据寄存器(

4、)数据寄存器()数据寄存器()数据寄存器(DRDRDRDR)4 4 4 4)地址寄存器()地址寄存器()地址寄存器()地址寄存器(ARARARAR) 地址寄存器用来保存当前CPU所访问的主存单元的地址。由于主存和CPU之间存在着操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到主存的读写操作完成为止。CPUCPU中的主要寄存器中的主要寄存器 状态标志寄存器用来存放程序状态字(PSW)。程序状态字的各位表征程序和机器运行的状态,是参与控制程序执行的重要依据之一。它主要包括两部分内容:一是状态标志,如进位标志(C)、结果为零标志(Z)等,大多数指令的执行将会影响到这些标志位;二是控制标志

5、,如中断标志、陷阱标志等。5 5 5 5)状态标志寄存器()状态标志寄存器()状态标志寄存器()状态标志寄存器(PSWRPSWRPSWRPSWR)图6.1 Intel 80386微机系统框图6.1 6.1 计算机的硬件系统计算机的硬件系统Intel 80386包括指令部件、执行部件和存储管理部件等。指令部件指令部件指令部件指令部件完成取指及指令译码功能,并产生控制信号;执行部件执行部件执行部件执行部件包括ALU、乘法部件、寄存器组等;存储管理部件存储管理部件存储管理部件存储管理部件用来确定存储器地址。6.1 6.1 计算机的硬件系统计算机的硬件系统图6.2 Intel 80386引出端信号 6

6、.1 6.1 计算机的硬件系统计算机的硬件系统控制器主要作用控制器主要作用控制器主要作用控制器主要作用 发出满足一定时序关系的控制信号,实现指令系统所规定的各条指令的功能,并保证计算机系统正常运行。 6.1 6.1 计算机的硬件系统计算机的硬件系统6.2 6.2 控制器的组成控制器的组成控制器的功能控制器的功能控制器的功能控制器的功能取指令取指令取指令取指令分析指令分析指令分析指令分析指令执行指令执行指令执行指令执行指令控制器的功能控制器的功能控制器的功能控制器的功能p 控制程序和数据的输入与结果输出控制程序和数据的输入与结果输出控制程序和数据的输入与结果输出控制程序和数据的输入与结果输出p

7、对异常情况和某些请求的处理对异常情况和某些请求的处理对异常情况和某些请求的处理对异常情况和某些请求的处理6.2 6.2 控制器的组成控制器的组成控制器的组成控制器的组成控制器的组成控制器的组成1. 1. 1. 1. 程序计数器程序计数器程序计数器程序计数器(PC)(PC)(PC)(PC)2. 2. 2. 2. 指令寄存器指令寄存器指令寄存器指令寄存器(IR)(IR)(IR)(IR)6.2 6.2 控制器的组成控制器的组成3. 3. 3. 3. 指令译码器或操作码译码器指令译码器或操作码译码器指令译码器或操作码译码器指令译码器或操作码译码器4. 4. 4. 4. 脉冲源及启停线路脉冲源及启停线路

8、脉冲源及启停线路脉冲源及启停线路5. 5. 5. 5. 时序控制信号形成部件时序控制信号形成部件时序控制信号形成部件时序控制信号形成部件图6.3 控制器基本组成框图 6.2 6.2 控制器的组成控制器的组成控制器的控制方式控制器的控制方式控制器的控制方式控制器的控制方式1. 1. 1. 1. 同步控制方式同步控制方式同步控制方式同步控制方式2. 2. 2. 2. 异步控制方式异步控制方式异步控制方式异步控制方式6.2 6.2 控制器的组成控制器的组成3. 3. 3. 3. 联合控制方式联合控制方式联合控制方式联合控制方式4. 4. 4. 4. 人工控制人工控制人工控制人工控制 同同步步控控制制

9、方方式式即即固固定定时时序序控控制制方方式式,各各项项操操作作都都由由统统一一的的时时序序信信号号控控制制。由由于于不不同同的的指指令令,操操作作时时间间长长短短不不一一致致。同同步步控控制制方方式式应应以以最最复复杂杂指指令令的的操操作作时时间作为统一的时间间隔标准。间作为统一的时间间隔标准。控制器的控制方式控制器的控制方式控制器的控制方式控制器的控制方式2. 2. 2. 2. 异步控制方式异步控制方式异步控制方式异步控制方式6.2 6.2 控制器的组成控制器的组成 异异步步控控制制方方式式即即可可变变时时序序控控制制方方式式,各各项项操操作作不不采采用用统统一一的的时时序序信信号号控控制制

10、,而而根根据据指指令令或或部部件件的的具具体体情况决定,需要多少时间,就占用多少时间。情况决定,需要多少时间,就占用多少时间。 这这是是一一种种“应应答答”方方式式,各各操操作作之之间间的的衔衔接接是是由由“结结束束起起始始”信信号号来来实实现现的的。由由前前一一项项操操作作已已经经完完成成的的“结结束束”信信号号,或或由由下下一一项项操操作作的的“准准备备好好”信信号号来来作作为为下下一一项项操操作作的的起起始始信信号号,在在未未收收到到“结结束束”或或“准备好准备好”信号之前不开始新的操作。信号之前不开始新的操作。控制器的控制方式控制器的控制方式控制器的控制方式控制器的控制方式3. 3.

11、3. 3. 联合控制方式联合控制方式联合控制方式联合控制方式6.2 6.2 控制器的组成控制器的组成 这这是是同同步步控控制制和和异异步步控控制制相相结结合合的的方方式式。实实际际上上现现代代计计算算机机中中几几乎乎没没有有完完全全采采用用同同步步或或完完全全采采用用异异步步的的控控制制方方式式,大大多多数数是是采采用用联联合合控控制制方方式式。通通常常的的设设计计思思想想是是:在在功功能能部部件件内内部部采采用用同同步步方方式式或或以以同同步步方方式为主的控制方式,在功能部件之间采用异步方式。式为主的控制方式,在功能部件之间采用异步方式。控制器的控制方式控制器的控制方式控制器的控制方式控制器

12、的控制方式4. 4. 4. 4. 人工控制方式人工控制方式人工控制方式人工控制方式6.2 6.2 控制器的组成控制器的组成 (1) RESET (2) 连续或单条转换开关连续或单条转换开关 (3) 符合停机符合停机6.2.3 6.2.3 指令执行过程指令执行过程组成控制器的基本电路组成控制器的基本电路组成控制器的基本电路组成控制器的基本电路图6.4 记忆电路图6.5 无记忆电路寄存器、计数器和存储单元寄存器、计数器和存储单元寄存器、计数器和存储单元寄存器、计数器和存储单元加法器加法器加法器加法器6.2.3 6.2.3 指令执行过程指令执行过程 取指令阶段取指令阶段 取取指指令令阶阶段段完完成成

13、的的任任务务是是将将现现行行指指令令从从主主存存中中取取出出来来并并送送至至指指令令寄寄存存器器中中去去。具具体体的的操操作如下:作如下: 将将程程序序计计数数器器(PC)中中的的内内容容送送至至地地址址寄存器(寄存器(AR),并送地址总线(并送地址总线(AB)。 由由控控制制单单元元(CU)经经控控制制总总线线(CB)向存储器发读命令。向存储器发读命令。 从从主主存存中中取取出出的的指指令令通通过过数数据据总总线线(DB)送到数据寄存器(送到数据寄存器(DR)。6.2.3 6.2.3 指令执行过程指令执行过程 取指令阶段取指令阶段 将将DR的内容送至指令寄存器(的内容送至指令寄存器(IR)中

14、。中。 将将PC的的内内容容递递增增,为为取取下下一一条条指指令令做做好好准备。准备。 以以上上这这些些操操作作对对任任何何一一条条指指令令来来说说都都是是必必须须要要执执行行的的操操作作,所所以以称称为为公公共共操操作作。完完成成取取指阶段任务的时间称为取指周期。指阶段任务的时间称为取指周期。取指周期的工作流程取指周期的工作流程图图 取指周期的工作流程取指周期的工作流程6.2.3 6.2.3 指令执行过程指令执行过程6.2.3 6.2.3 指令执行过程指令执行过程 取取出出指指令令后后,指指令令译译码码器器ID可可识识别别和和区区分分出出不不同同的的指指令令类类型型。此此时时计计算算机机进进

15、入入分分析析取取数数阶阶段段,以以获获取取操操作作数数。由由于于各各条条指指令令功功能能不不同同,寻寻址址方方式式也也不不同同,所所以以分分析析取取数数阶阶段的操作是各不相同的。段的操作是各不相同的。 完完成成分分析析阶阶段段任任务务的的时时间间又又可可以以细细分分为为间址周期、取数周期等。间址周期、取数周期等。分析取数阶段分析取数阶段6.2.3 6.2.3 指令执行过程指令执行过程执行阶段执行阶段 执执行行阶阶段段完完成成指指令令规规定定的的各各种种操操作作,形形成成稳稳定定的的运运算算结结果果,并并将将其其存存储储起起来来。完完成成执行阶段任务的时间称为执行周期。执行阶段任务的时间称为执行

16、周期。 计计算算机机的的基基本本工工作作过过程程就就是是取取指指令令、取取数数、执执行行指指令令,然然后后再再取取下下一一条条指指令令如如此此周周而而复复始始,直直至至遇遇到到停停机机指指令令或或外外来来的的干干预为止。预为止。图6.6 运算器框图 6.2.3 6.2.3 指令执行过程指令执行过程指指令令功功能能:将将寄寄存存器器中中的的一一个个数数与与存存储储器器中中的的一个数相加,结果放在寄存器中。一个数相加,结果放在寄存器中。 操作码操作码 rs,rd rs1 imm(disp)加法指令:加法指令:加法指令:加法指令:6.2.3 6.2.3 指令执行过程指令执行过程6.2.3 6.2.3

17、 指令执行过程指令执行过程加法指令完成以下操作:从存储器取指令,送入指令寄存器,并进行操作码译码(分析指令)。程序计数器加1,为下一条指令做准备。计算数据地址,将计算得到的有效地址送地址寄存器AR。到存储器取数。进行加法运算,结果送寄存器,并根据运算结果置状态位N,Z,V,C。控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:控制信号:表表表表6.1 6.1 6.1 6.1 控制信号一览表控制信号一览表控制信号一览表控制信号一览表序号控制信号功能序号控制信号功能1PCAB指令地址送地址总线13+

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

19、IO访问存储器或I/O11(rs)ALU寄存器内容送ALU23W/R写或读12DRALU数据寄存器内容送ALU 指指令令周周期期是是指指从从取取指指令令、分分析析取取数数到到执执行行完完该该指指令令所所需需的的全全部部时时间间。由由于于各各种种指指令令的的操操作作功功能能不不同同,有有的的简简单单,有有的的复复杂杂,因因此各种指令的指令周期不尽相同。此各种指令的指令周期不尽相同。 机机器器周周期期又又称称CPU周周期期。通通常常把把一一个个指指令令周周期期划划分分为为若若干干个个机机器器周周期期,每每个个机机器器周周期期完完成成一一个个基基本本操操作作。一一般般机机器器的的CPU周周期期有有取

20、取指指周周期期、取取数数周周期期、执执行行周周期期、中中断断周周期等。所以有:期等。所以有: 指令周期指令周期i机器周期机器周期指令周期和机器周期指令周期和机器周期指令周期和机器周期指令周期和机器周期6.2.3 6.2.3 指令执行过程指令执行过程6.3 6.3 微程序控制计算机微程序控制计算机基本原理基本原理基本原理基本原理 微程序设计技术的实质是将程序设计技术和存储技术相结合,即用程序设计的思想方法来组织操作控制逻辑,将微操作控制信号按一定规则进行信息编码(代码化),形成控制字(微指令),再把这些微指令按时间先后排列起来构成微程序,存放在一个只读的控制存储器中。 6.3.1 6.3.1 微

21、程序控制的基本概念微程序控制的基本概念微操作微操作微操作微操作 一条指令可以分解成很多最基本的操作,这种最基本的不可再分割的操作称为微操作。不同的机器指令具有不同的微操作序列。 微命令微命令微命令微命令 在微程序控制的计算机中,将控制部件向执行部件发出的各种控制命令叫做微命令,它是构成控制序列的最小单位。例如:打开或关闭某个控制门的电位信号、某个寄存器的打入脉冲等。因此,微命令是控制计算机各部件完成某个基本微操作的命令。 6.3.1 6.3.1 微程序控制的基本概念微程序控制的基本概念 微微命命令令和和微微操操作作是是一一一一对对应应的的。微微命命令令是是微微操操作作的的控控制制信信号号,微微

22、操操作作是是微微命命令令的的操操作过程。作过程。 微微命命令令有有兼兼容容性性和和互互斥斥性性之之分分。兼兼容容性性微微命命令令是是指指那那些些可可以以同同时时产产生生,共共同同完完成成某某一一些些微微操操作作的的微微命命令令;而而互互斥斥性性微微命命令令是是指指在在机机器器中中不不允允许许同同时时出出现现的的微微命命令令。兼兼容容和和互互斥斥都都是是相相对对的的,一一个个微微命命令令可可以以和和一一些些微微命命令令兼兼容容,和和另另一一些些微微命命令令互互斥斥。对对于于单单独独一一个个微微命命令令,谈谈论论其其兼兼容容和和互互斥斥都都是是没没有有意意义的。义的。6.3.1 6.3.1 微程序

23、控制的基本概念微程序控制的基本概念微指令微指令微指令微指令 在微程序控制的计算机中,将由同时发出的控制信号所执行的一组微操作称为微指令。将一条指令分成若干条微指令,按次序执行这些微指令,就可以实现指令的功能。 一条微指令通常包含两部分:一条微指令通常包含两部分: 操操作作控控制制字字段段,又又称称微微操操作作码码字字段段,用用以以产产生生某某一一步步操操作作所所需需的的各各微微操操作作控控制制信信号;号; 顺顺序序控控制制字字段段,又又称称微微地地址址码码字字段段,用以控制产生下一条要执行的微指令地址。用以控制产生下一条要执行的微指令地址。6.3.1 6.3.1 微程序控制的基本概念微程序控制

24、的基本概念微程序微程序微程序微程序 计算机的程序由指令序列构成,而计算机每条指令的功能均由微指令序列解释完成,这些微指令序列的集合就叫做微程序。 每一条机器指令都对应一个微程序。每一条机器指令都对应一个微程序。每一条机器指令都对应一个微程序。每一条机器指令都对应一个微程序。6.3.1 6.3.1 微程序控制的基本概念微程序控制的基本概念 微程序和程序是两个不同的概念。微程序和程序是两个不同的概念。 微微程程序序是是由由微微指指令令组组成成的的,用用于于描描述述机机器器指指令令,微微程程序序实实际际上上是是机机器器指指令令的的实实时时解解释释器器,是是由由计计算算机机的的设设计计者者事事先先编编

25、制制好好并并存存放放在在控控制制存存储储器器中中的,一般不提供给用户。的,一般不提供给用户。 而而程程序序最最终终由由机机器器指指令令组组成成,是是由由软软件件设设计计人人员员事先编制好并存放在主存或辅存中的。事先编制好并存放在主存或辅存中的。6.3.1 6.3.1 微程序控制的基本概念微程序控制的基本概念控制存储器控制存储器控制存储器控制存储器 微程序是存放在存储器中的,由于该存储器主要存放控制命令(信号)与下一条执行的微指令地址(简称为下址),所以被叫做控制存储器。 执行一条指令实际上就是执行一段存放在控制执行一条指令实际上就是执行一段存放在控制执行一条指令实际上就是执行一段存放在控制执行

26、一条指令实际上就是执行一段存放在控制存储器中的微程序。存储器中的微程序。存储器中的微程序。存储器中的微程序。6.3.1 6.3.1 微程序控制的基本概念微程序控制的基本概念 仍以执行一条加法指令为例,它由四条微指令解释执行,一条微指令中的所有控制信号是同时发一条微指令中的所有控制信号是同时发一条微指令中的所有控制信号是同时发一条微指令中的所有控制信号是同时发出的出的出的出的。每条微指令所需的控制信号如下:(1) (1) (1) (1) 取指微指令取指微指令取指微指令取指微指令 指令地址送地址总线:PCAB(1) 发访存控制命令:ADS(21),MIO1(22),WR0(23)。从存储器取指令送

27、数据总线。 指令送指令寄存器:DBIR(5) 程序计数器+1:PC+1(3)6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理(2) (2) (2) (2) 计算地址微指令计算地址微指令计算地址微指令计算地址微指令 取两个源操作数(计算地址用):rs1GR(8),(rs1)ALU(10),dispALU(4)。 加法运算:“+”(13)。 有效地址送地址寄存器:ALUAR(19)。6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理(3) (3) (3) (3) 取数微指令取数微指令取数微指令取数微指令 数据地址送地址总线:ARAB(20)。 发访存控制命令:ADS(

28、21),MIO(22),W/R(23)。由存储器将数据送数据总线DB。 数据送数据寄存器:DBDR(6)6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理(4) (4) (4) (4) 加法运算和送结果微指令加法运算和送结果微指令加法运算和送结果微指令加法运算和送结果微指令 两源操作数送ALU:rsGR(9),(rs)ALU(11);DRALU(12)。 加法运算:“+”(13) 送结果:ALUGR(17)6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理如何产生控制信号?如何产生控制信号?图6.9 加法指令的微指令编码6.3.2 6.3.2 微程序控制的基本原理微

29、程序控制的基本原理图6.10 微程序流程图举例6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理图6.11 微程序控制器简框图 6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理图6.12 时序信号及工作脉冲 6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理 机器加电后,首先由reset信号在PC内置入开机后执行的第一条指令的地址,同时在微指令寄存器内置入一条“取指”微指令,并将其他一些有关的状态位或寄存器置于初始状态。然后机器开始执行程序,不断地取出指令、分析指令、执行指令。 机器启动过程机器启动过程机器启动过程机器启动过程6.3.2 6.3.2

30、微程序控制的基本原理微程序控制的基本原理 程序可以存放在固定存储器中,也可以利用一小段引导程序(在固存中)将要执行的程序和数据从外部设备调入主存。实现各条指令的微程序是存放在微程序控制器中的。当前正在执行的微指令从微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和数据的传送,并进行相应的处理。6.3.2 6.3.2 微程序控制的基本原理微程序控制的基本原理微指令编译法微指令编译法微指令编译法微指令编译法1. 1. 1. 1. 直接控制法直接控制法直接控制法直接控制法2. 2. 2. 2. 字段直接编译法字段直接编译法字段直接编译法字段直接编译法3. 3. 3. 3

31、. 字段间接编译法字段间接编译法字段间接编译法字段间接编译法4. 4. 4. 4. 常数源字段常数源字段常数源字段常数源字段6.4 6.4 微程序设计技术微程序设计技术如何缩短微指令字长?如何缩短微指令字长?如何缩短微指令字长?如何缩短微指令字长?图6.21 字段直接编译法6.4.1 6.4.1 微指令编译法微指令编译法分段的原则:分段的原则:分段的原则:分段的原则: 互斥性的微命令分在同一段内,兼容性的微命令分在不同段内; 每个小段中包含的信息位不能太多,否则将增加译码线路的复杂性和译码时间; 每个小段要留出一个状态,表示本字段不发出任何命令,通常用000表示图6.22 字段间接编译法6.4

32、.1 6.4.1 微指令编译法微指令编译法6.4.2 6.4.2 微程序流的控制微程序流的控制所谓微程序流的控制是指当前微指令执行完所谓微程序流的控制是指当前微指令执行完所谓微程序流的控制是指当前微指令执行完所谓微程序流的控制是指当前微指令执行完毕后,怎样控制产生后继微指令的微地址。毕后,怎样控制产生后继微指令的微地址。毕后,怎样控制产生后继微指令的微地址。毕后,怎样控制产生后继微指令的微地址。1.以增量方式产生后继微地址2.增量与下址字段结合产生后继微地址3.多路转移方式4.微中断图6.23 “计数器”方式的原理图6.4.2 6.4.2 微程序流的控制微程序流的控制图6.24 “增量与下址字

33、段”方式的原理图 6.4.2 6.4.2 微程序流的控制微程序流的控制1. 1. 1. 1. 水平型微指令水平型微指令水平型微指令水平型微指令2. 2. 2. 2. 垂直型微指令垂直型微指令垂直型微指令垂直型微指令基本特点是在一条微指令中定义并执行多个并行操作微命令。在微指令中设置有微操作码字段,采用微操作码编译法,由微操作码规定微指令的功能寄存器寄存器寄存器寄存器- - - -寄存器传送型微指令寄存器传送型微指令寄存器传送型微指令寄存器传送型微指令微指令格式0 1 2 3 7 8 12 13 150 0 0 源寄存器编址 目标寄存器编址 其他功能:把源寄存器数据送目标寄存器。6.4.3 6.

34、4.3 微指令格式微指令格式水平型水平型微指令与微指令与垂直型垂直型微指令的比较微指令的比较(1) 水平型水平型微指令并行操作能力强,效率高,灵活性强,垂直型垂直型垂直型垂直型微指令则差。(2) 水平型水平型微指令执行一条指令的时间短,垂直型垂直型垂直型垂直型微指令执行时间长。(3) 由水平型水平型微指令解释指令的微程序,具有微指令字比较长,但微程序短的特点。垂直型垂直型垂直型垂直型微指令则相反,微指令字比较短而微程序长。(4) 水平型水平型微指令用户难以掌握,而垂直型垂直型垂直型垂直型微指令与指令比较相似,相对来说,比较容易掌握。 6.4.3 6.4.3 微指令格式微指令格式6.4.4 6.

35、4.4 微程序控制存储器和动态微程序设计微程序控制存储器和动态微程序设计1.微程序控制存储器2.动态微程序设计3.控制存储器的操作4.毫微程序设计图6.27 串行微程序控制器6.4.4 6.4.4 微程序控制存储器和动态微程序设计微程序控制存储器和动态微程序设计图6.28 并行微程序控制器6.4.4 6.4.4 微程序控制存储器和动态微程序设计微程序控制存储器和动态微程序设计毫微程序可以看作是用以解释微程序的一种微程序,因此组成毫微程序的毫微指令就可看作是解释微指令的微指令。采用毫微程序设计的主要目的是减少控制存储器的容量,采用的是两级微程序设计方法。通常第一级采用垂直微程序,第二级采用水平微

36、程序。6.4.4 6.4.4 微程序控制存储器和动态微程序设计微程序控制存储器和动态微程序设计6.4.4 6.4.4 微程序控制存储器和动态微程序设计微程序控制存储器和动态微程序设计图6.29 毫微程序控制存储器用来编制微程序的语言叫做微程序设计语言微程序设计语言,用微程序设计语言编制的程序叫做源微程序源微程序。源微程序不能直接装入控制存储器,要将它转换成二进制代码后才能装入控制存储器。将源微程序翻译成二进制码的程序叫做微编译程序微编译程序。微程序设计基本上沿用了程序设计的方法6.4.5 6.4.5 微程序设计语言微程序设计语言硬布线控制的计算机?硬布线控制的计算机?硬布线控制的计算机?硬布线

37、控制的计算机?由指令的操作码直接控制并产生实现取由指令的操作码直接控制并产生实现取由指令的操作码直接控制并产生实现取由指令的操作码直接控制并产生实现取指、计算地址、取数及执行等各步骤所指、计算地址、取数及执行等各步骤所指、计算地址、取数及执行等各步骤所指、计算地址、取数及执行等各步骤所需的控制信号。需的控制信号。需的控制信号。需的控制信号。6.5 6.5 硬布线控制的计算机硬布线控制的计算机问题:问题:问题:问题:取指、计算地址、取数及执行,每一步由一个机器周期实现,如何区分一条指令的四个机器周期呢?图6.31 用计数器译码器形成机器周期信号6.5.16.5.1 时序与节拍时序与节拍表6.3

38、计数器状态变化 A指令B指令cyAcyBcyAcyBcyAcyBcyAcyB00010010011010111011110011006.5.16.5.1 时序与节拍时序与节拍根据真值表列出表达式,对于A指令,其表达式为cyAcyAcyB+cyAcyB;(6.2)cyBcyA cyB+cyAcyBcyB。(6.3)对于B指令,其表达式为cyAcyA cyB+cyAcyBcyB;(6.4)cyBcyAcyB。(6.5)6.5.16.5.1 时序与节拍时序与节拍图6.32 时序计数器逻辑图6.5.16.5.1 时序与节拍时序与节拍6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生图6.33

39、 形成操作控制信号的逻辑框图 如何组成?如何组成?输入:输入:输入:输入:来自指令译码器的输出、时序发生器的时序信号输出:输出:输出:输出:一组带有时间标志的微操作控制信号每个微操作控制信号是指令、时序等的逻辑函数,可表示为:微操作微操作微操作微操作= = = =周期周期周期周期节拍节拍节拍节拍脉冲脉冲脉冲脉冲指令码指令码指令码指令码其他条件其他条件其他条件其他条件6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生 在计算地址周期cy2完成有效地址的计算(rs1)+Disp),为此要将rs1的内容取出与IR中的位移量一起送ALU,发出rs1GR(送通用寄存器地址),(rs1)ALU,

40、DispALU以及“+”命令,最后将运算结果送地址总线,发出ALUAR信号。列出逻辑表达式rs1GR加法指令cy2(6.13)(rs1)ALU加法指令cy2(6.14)ALUAR加法指令cy2(6.15)6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生图6.34 实现rs1GR,(rs1)ALU的逻辑图6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生 对每一条指令都进行同样的分析,得出逻辑表达式逻辑表达式逻辑表达式逻辑表达式。 对所有指令的全部表达式进行综合分析后可得出下述结论:(1) 取指周期cy1所产生的信号,对所有指令都是相同的,即与当前执行的指令无关,逻辑式得到

41、最简单的形式。(2) 通常,同一个控制信号在若干条指令的某些周期中都需要,为此需要把它们组合起来。6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生“+”加法指令(cy2+cy4)+减法指令cy2+转移指令cy2+加法指令cy2+加法指令cy4+减法指令cy2+转移指令cy2+(6.16)6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生(3) 同种类型的指令所需的控制信号大部分是相同的,仅有少量区别。不同类型的指令,其控制信号的差别就比较大。(4) 在确定指令的操作码时,注意化简以减少逻辑电路数量。6.5.2 6.5.2 操作控制信号的产生操作控制信号的产生例如,某机有1

42、28条指令,7位操作码(OP0OP6),其中有十六条算术逻辑运算指令,那么可以令这些指令的三位操作码完全相等(例如OP0OP2为001),而OP3OP6分别表示16条指令,设命令A是所有算术逻辑指令在cy2周期中都需产生的,则:A A A A加法指令加法指令加法指令加法指令cy2+cy2+cy2+cy2+减法指令减法指令减法指令减法指令cy2+cy2+cy2+cy2+逻辑加指令逻辑加指令逻辑加指令逻辑加指令cy2+cy2+cy2+cy2+( ( ( (加法指令加法指令加法指令加法指令+ + + +减法指令减法指令减法指令减法指令+ + + +逻辑加指令逻辑加指令逻辑加指令逻辑加指令+ + +

43、+)cy2)cy2)cy2)cy2OP0OP0OP0OP0OP1OP1OP1OP1OP2OP2OP2OP2cy2cy2cy2cy26.5.2 6.5.2 操作控制信号的产生操作控制信号的产生图6.35 控制器总框图6.5.3 6.5.3 控制器的组成控制器的组成6.5.4 6.5.4 硬布线控制逻辑设计硬布线控制逻辑设计1. 1. 1. 1. 指令操作码的代码分配指令操作码的代码分配指令操作码的代码分配指令操作码的代码分配2. 2. 2. 2. 确定机器周期、节拍与主频确定机器周期、节拍与主频确定机器周期、节拍与主频确定机器周期、节拍与主频3. 3. 3. 3. 根据指令功能,确定每一条指令所

44、需的机器根据指令功能,确定每一条指令所需的机器根据指令功能,确定每一条指令所需的机器根据指令功能,确定每一条指令所需的机器周期数以及每一周期所完成的操作周期数以及每一周期所完成的操作周期数以及每一周期所完成的操作周期数以及每一周期所完成的操作4. 4. 4. 4. 综合所有指令的每一个操作命令(写出逻辑综合所有指令的每一个操作命令(写出逻辑综合所有指令的每一个操作命令(写出逻辑综合所有指令的每一个操作命令(写出逻辑表示式并化简)表示式并化简)表示式并化简)表示式并化简)6.5.5 6.5.5 硬布线控制与微程序控制的比较硬布线控制与微程序控制的比较1. 1. 1. 1. 实现实现实现实现2.

45、2. 2. 2. 性能性能性能性能微程序控制器的控制功能是在存放微程序的控制存储器和存放当前正在执行的微指令的寄存器直接控制下实现的,而硬布线控制则由逻辑门组合实现。设计简单,方便修改与扩展设计简单,方便修改与扩展设计简单,方便修改与扩展设计简单,方便修改与扩展结构复杂,设计麻烦,结构复杂,设计麻烦,结构复杂,设计麻烦,结构复杂,设计麻烦,检查调试困难检查调试困难检查调试困难检查调试困难微程序控制的速度 硬布线控制的速度原因:原因:原因:原因:执行每条微指令都要从控存中读取一次,影响了速度,而硬布线逻辑主要取决于电路延迟6.7 6.7 流水线工作原理流水线工作原理蒙蒙蒙蒙牛牛牛牛流流流流水水水

46、水线线线线取指取指1 计算地址计算地址1 取操作数取操作数1 计算存结果计算存结果1 取指取指2 计算地址计算地址2 机器指令的执行机器指令的执行机器指令的执行机器指令的执行如何提高效率?如何提高效率?6.7 6.7 流水线工作原理流水线工作原理图6.37 指令重叠执行情况6.7 6.7 流水线工作原理流水线工作原理流水线流水线流水线流水线 流水线是将一个较复杂的处理过程分成m个复杂程度相当、处理时间大致相等的子过程,每个子过程由一个独立的功能部件来完成,处理对象在各子过程连成的线路上连续流动。在同一时间,m个部件同时进行不同的操作,完成对不同子过程的处理。 6.7 6.7 流水线工作原理流水

47、线工作原理6.7 6.7 流水线工作原理流水线工作原理 (1) 流水过程由多个相联系的子过程组成,每个子过程称为流水线的级或段。段的数目称为流水线的深度。(2) 每个子过程由专用的功能段实现;(3) 各个功能段所需时间应尽量相等,否则,时间长的功能段将成为流水线的瓶颈,会造成流水线的堵塞和断流。这个时间一般为一个时钟周期(拍);(4) 流水线需要有通过时间(第一个任务流出结果所需的时间),在此之后流水过程才进入稳定工作状态,每一个时钟周期(拍)流出一个结果。6.7 6.7 流水线工作原理流水线工作原理流水工作特点:流水工作特点:流水工作特点:流水工作特点:6.7 6.7 流水线工作原理流水线工

48、作原理按照流水线的级别来分类:按照流水线的级别来分类:按照流水线的级别来分类:按照流水线的级别来分类:(1)部件级流水线(又叫运算操作流水线):它是把处理机的算术逻辑部件分段,以便为各种数据类型进行流水操作。(2)处理机级流水线(又叫指令流水线):它是把指令的解释执行过程按照流水方式进行处理。 6.7 6.7 流水线工作原理流水线工作原理一般来说,流水线中的相关主要分为如下三种类型:1.结构相关:当硬件资源满足不了指令重叠执行的要求,而发生资源冲突时,就发生了结构相关。2.数据相关:当一条指令需要用到前面指令的执行结果,而这些指令均在流水线中重叠执行时,就可能引起数据相关。3.控制相关:当流水

49、线遇到分支指令和其它能够改变PC值的指令时,就会发生控制相关。 6.7 6.7 流水线工作原理流水线工作原理流水线的相关问题流水线的相关问题流水线的相关问题流水线的相关问题 流水线中的相关是指相邻或相近的指令因存在某种关联,后面的指令不能在原指定的时钟周期开始执行。 6.7 6.7 流水线工作原理流水线工作原理6.7 6.7 流水线工作原理流水线工作原理6.7 6.7 流水线工作原理流水线工作原理6.7 6.7 流水线工作原理流水线工作原理3. 控制相关控制相关 在大多数流水线机器中,当遇到条件转移指令时,确定转移与否的条件码往往由条件转移指令本身或由它前一条指令形成,只有当它流出流水线时,才

50、能建立转移条件并决定下条指令地址。因此当条件转移指令进入流水线后直到确定下一地址之前,流水线不能继续处理后面的指令而处于等待状态,因而影响流水线效率。 6.7 6.7 流水线工作原理流水线工作原理 RISC机机器器中中,当当遇遇到到转转移移指指令令时时,可可以以采采用用延延迟迟转转移移方方法法或或优优化化延延迟迟转转移移方方法法。在在采采取取延延迟迟转转移移方方法法时时,编编译译程程序序自自动动在在转转移移指指令令之之后后,插插入入一一条条(或或几几条条,根根据据流流水水线线情情况况而而定定)空空指指令令,以以延延迟迟后后继继指指令令进进入入流流水水线线的的时时间间。所所谓谓优优优优化化化化延

51、延延延迟迟迟迟转转转转移移移移方方法法,是是将将转转移移指指令令与与前前条条指指令令对对换换位位置置,提提前前执执行行转转移移指指令令,可可以以节省一个机器周期。节省一个机器周期。延时转移技术延时转移技术延时转移技术延时转移技术6.7 6.7 流水线工作原理流水线工作原理“ “猜测法猜测法猜测法猜测法” ”技术 机器先选定转移分支中的一个,按它继续取指并处理,假如条件码生成后,说明猜测是正确的,那么流水线可继续进行下去,时间得到充分利用,假如猜错了,那么要返回分支点,并要保证在分支点后已进行的工作不能破坏原有现场,否则将产生错误。6.7 6.7 流水线工作原理流水线工作原理图6.49 Pentium微处理器逻辑框图6.8 CPU6.8 CPU举例举例本本 章章 结结 束束中央处理器中央处理器

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号