计算机组成原理第五章课件(白中英版).ppt

上传人(卖家):晟晟文业 文档编号:4538177 上传时间:2022-12-17 格式:PPT 页数:103 大小:1.12MB
下载 相关 举报
计算机组成原理第五章课件(白中英版).ppt_第1页
第1页 / 共103页
计算机组成原理第五章课件(白中英版).ppt_第2页
第2页 / 共103页
计算机组成原理第五章课件(白中英版).ppt_第3页
第3页 / 共103页
计算机组成原理第五章课件(白中英版).ppt_第4页
第4页 / 共103页
计算机组成原理第五章课件(白中英版).ppt_第5页
第5页 / 共103页
点击查看更多>>
资源描述

1、第一章第一章 计算机系统概论计算机系统概论第二章第二章 运算方法和运算器运算方法和运算器第三章第三章 存储系统存储系统第四章第四章 指令系统指令系统 第五章第五章 中央处理器中央处理器 第六章第六章 总线系统总线系统 第七章第七章 外围设备外围设备 第八章第八章 输入输出系统输入输出系统第九章第九章 并行组织并行组织目录计算机组成原理计算机组成原理第5章 中央处理器 5.1 CPU5.1 CPU的组成和功能的组成和功能5.8 5.8 流水流水CPUCPU5.25.2 指令周期指令周期5.9 RISC CPU5.9 RISC CPU5.3 5.3 时序产生器和控制方式时序产生器和控制方式5.10

2、 5.10 多媒体多媒体CPUCPU5 5.4.4 微程序控制器微程序控制器5 5.11 CPU.11 CPU性能评价性能评价5.5 5.5 微程序设计技术微程序设计技术5.6 5.6 硬布线控制器硬布线控制器5.7 5.7 传统传统CPUCPU5.1 CPU的功能和组成的功能和组成 当代主流计算机所遵循的仍然是当代主流计算机所遵循的仍然是冯冯.诺依曼诺依曼的的“存储程序、程序控制存储程序、程序控制”思想思想 程序告诉计算机:程序告诉计算机:应该逐步执行什么操作;在应该逐步执行什么操作;在什么地方找到用来操作的数据,结果存到何处什么地方找到用来操作的数据,结果存到何处等等 中央处理器是控制计算

3、机自动完成取出指令和中央处理器是控制计算机自动完成取出指令和执行指令任务的部件。它是计算机的核心部件,通执行指令任务的部件。它是计算机的核心部件,通常简称为常简称为CPU(Central Processing Unit)5.1.1 CPU的功能的功能 指令控制指令控制 保证机器按程序规定的顺序取出执行保证机器按程序规定的顺序取出执行 操作控制操作控制 CPUCPU产生每条指令所对应的操作信号,并把各种操产生每条指令所对应的操作信号,并把各种操作信号送往相应的部件,从而控制这些部件按指令的作信号送往相应的部件,从而控制这些部件按指令的要求进行动作要求进行动作 时间控制时间控制 对各种操作的实施时

4、间进行定时对各种操作的实施时间进行定时 数据加工数据加工 对数据进行算术运算和逻辑运算处理对数据进行算术运算和逻辑运算处理5.1.2 CPU5.1.2 CPU的基本组成的基本组成 控制器控制器完成对整个计算机系统操作的完成对整个计算机系统操作的协调与指挥协调与指挥。(1)(1)控制机器从内存中控制机器从内存中取出一条指令取出一条指令,并指出下一,并指出下一条指令在内存中的位置;条指令在内存中的位置;(2)(2)对指令进行对指令进行译码译码,并,并产生相应的操作控制信号产生相应的操作控制信号,送往相应的部件,启动规定的动作;送往相应的部件,启动规定的动作;(3)(3)指挥并控制指挥并控制CPUC

5、PU、内存与输入、内存与输入/输出(输出(I/OI/O)设备)设备之间数据之间数据流动的方向流动的方向 运算运算器器是数据加工处理部件,所进行的全部操作由是数据加工处理部件,所进行的全部操作由控制器发出的控制信号指挥控制器发出的控制信号指挥 (1)(1)执行所有的算术运算;执行所有的算术运算;(2)(2)执行所有的逻辑运算,并进行逻辑测试执行所有的逻辑运算,并进行逻辑测试算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC存储器存储器 I/OCPUALU指令寄存器指令寄存器IR指令译

6、码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制ccccc缓冲寄存器缓冲寄存器DRCPUCPU的基本模型的基本模型5.1.35.1.3CPUCPU中的主要寄存器中的主要寄存器 1.1.数据缓冲寄存器(数据缓冲寄存器(DRDR)暂时存放由内存读出或写入的指令或数据字暂时存放由内存读出或写入的指令或数据字2.2.指令寄存器(指令寄存器(IRIR)保存当前正在执行的一条指令保存当前正在执行的一条指令3.3.程序计数器(程序计数器(PCPC)确定下一条指令的地址确定下一条指令的地址4.4.地址寄存器(地址寄存器(ARAR)保存当前保存当前C

7、PUCPU所访问的内存单元的地址所访问的内存单元的地址5.5.累加寄存器(累加寄存器(ACAC)最常使用的一个通用寄存器最常使用的一个通用寄存器6.6.状态条件寄存器(状态条件寄存器(PSWPSW)保存由算术和逻辑指令的结果建立的各种条件码保存由算术和逻辑指令的结果建立的各种条件码5.1.4 5.1.4 操作控制器与时序产生器操作控制器与时序产生器 操作控制器操作控制器在各寄存器之间建立在各寄存器之间建立数据通路数据通路(传送信息的通路)(传送信息的通路)操作控制器的功能操作控制器的功能:就是根据指令操作码就是根据指令操作码和时序信号,产生各种操作控制信号,以和时序信号,产生各种操作控制信号,

8、以便正确地建立数据通路,从而完成取指令便正确地建立数据通路,从而完成取指令和执行指令的控制和执行指令的控制1.硬布线控制器硬布线控制器2.微程序控制器微程序控制器时序产生器时序产生器产生并发出计算机所需要的时产生并发出计算机所需要的时序控制信号序控制信号5.2 指令周期指令周期读取指令读取指令指令地址送入主存地址寄存器指令地址送入主存地址寄存器读主存,读出内容送入指定的寄存器读主存,读出内容送入指定的寄存器分析指令分析指令按指令规定内容执行指令按指令规定内容执行指令不同指令的操作步骤数不同指令的操作步骤数和具体操作内容差异很大和具体操作内容差异很大检查有无中断请求检查有无中断请求若无,则转入下

9、一条指令的执行过程若无,则转入下一条指令的执行过程形成下一条指令地址形成下一条指令地址 指令的执行过程指令的执行过程取指令执行指令5.2.1 5.2.1 指令周期的基本概念指令周期的基本概念 指令周期指令周期:CPUCPU从内存取出一条指令并执行完从内存取出一条指令并执行完这条指令的时间总和这条指令的时间总和 CPU CPU周期周期:又称又称机器周期机器周期(总线周期总线周期),),CPUCPU访问访问内存所花的时间较长,因此用内存所花的时间较长,因此用CPUCPU从内存读取一条指令从内存读取一条指令字的所需的最短时间来定义字的所需的最短时间来定义 时钟周期时钟周期:通常称为通常称为节拍脉冲节

10、拍脉冲或或T T周期周期。一个。一个CPUCPU周期包含若干个时钟周期周期包含若干个时钟周期T T 相互关系相互关系:1 1个指令周期个指令周期 =若干个若干个CPUCPU周期周期 1 1个个CPUCPU周期周期 =若干若干T T周期周期 取指时间执行指令时间取指时间执行指令时间指令周期指令周期 CPU CPU周期周期 时钟周期时钟周期020 020 CLACLA;累加器清;累加器清0 0021 021 ADD 30ADD 30;(ACAC)+(3030)ACAC022 022 STA 40STA 40;(ACAC)(40)(40)023 023 NOPNOP;空操作空操作024 024 JM

11、P 21JMP 21;21 21 PC PC 030 000 006030 000 006;数据数据 040 040 存和数存和数;数据数据5 5条典型指令构成的简单程序条典型指令构成的简单程序一个一个CPU周期周期一个一个CPU周期周期取指令阶段取指令阶段执行指令阶段执行指令阶段开始开始取指令取指令PC+1对指令对指令译码译码执行指令执行指令取下条指取下条指令令PC+15.2.2 CLA指令的指令周期指令的指令周期取出取出CLA指令指令算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加

12、器AC缓冲寄存器缓冲寄存器DRCPUALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+1000 0202021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRCPUALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作

13、控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 020CLACLA000 021000 000执行执行CLA指令指令5.2.3ADD指令的指令周期 一个CPU周期 一个CPU周期取指令阶段取指令阶段执行指令阶段执行指令阶段开始开始取指令取指令PC+1对指令对指令译码译码送操作送操作数地址数地址取下条指取下条指令令PC+1取出操取出操作数作数执行加执行加操作操作一个CPU周期算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器PC地址寄存器

14、AR地址总线ABUS数据总线DBUS累加器AC缓冲寄存器DRCPUALU指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟状态反馈取指控制执行控制cccc+12021222324303140CLAADD 30STA 40NOPJMP 21000 006000 021ADDADD 30000 021000 022000 030000 0060+6=6000 006取出并执行取出并执行ADD指令指令5.2.4STA指令的指令周期指令的指令周期 算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据

15、总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRCPUALU指令寄存指令寄存器器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 022STASTA 40000 022000 023000 040000 006000 006000 006取出并执行取出并执行STA指令指令5.2.5 NOP指令和指令和JMP指令的指令周期指令的指令周期算术逻辑单元算术逻辑单元状态条件寄存器状态条件寄存器程序计数器程序计数器

16、PC地址寄存器地址寄存器AR地址总线地址总线ABUS数据总线数据总线DBUS累加器累加器AC缓冲寄存器缓冲寄存器DRALU指令寄存器指令寄存器IR指令译码器指令译码器操作控制器操作控制器时序产生器时序产生器时钟时钟状态状态反馈反馈取指取指控制控制执行执行控制控制cccc+120212223243040CLAADD 30STA 40NOPJMP 21000 006000 024JMP 21JMP 21000 024000 021000 006000 006000 025000 021取出并执行取出并执行JMP指令指令5.2.7用方框图语言表示指令周期用方框图语言表示指令周期在进行计算机设计时,可

17、以采用方框图在进行计算机设计时,可以采用方框图语言来表示一条指令的指令周期。语言来表示一条指令的指令周期。方框方框 代表一个CPU周期,方框中的内容表示数据通路的操作或某种控制操作。菱形菱形 通常用来表示某种判别或测试,不过时间上它依附于紧接它的前面一个方框的CPU周期,而不单独占用一个CPU周期。【例【例1 1】教材图5.15所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表

18、示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。(1)“ADD R2,R0”指令完成(R0)+(R2)R0的功能操作,画出其指令周期流程图,假设该指令的地址已放入PC中。并列出相应的微操作控制信号序列。(2)“SUB R1,R3”指令完成(R3)-(R1)R3的操作,画出其指令期流程图,并列出相应的微操作控制信号序列。5.3 时序产生器和控制方式时序产生器和控制方式 用二进制码表示的指令和数据都放在内存里,那么用二进制码表示的指令和数据都放在内存里,那么CPU是怎样识别出它们是数据还是指令呢是怎样识别出它们是数据还是指令呢?从时间上来说从时间上来说:

19、取指令事件发生在指令周期的第一取指令事件发生在指令周期的第一个个CPU周期中,即发生在周期中,即发生在“取指令取指令”阶段,而取数据阶段,而取数据事件发生在指令周期的后面几个事件发生在指令周期的后面几个CPU周期中,即发生周期中,即发生在在“执行指令执行指令”阶段。阶段。从空间上来说从空间上来说:如果取出的代码是指令,那么一定如果取出的代码是指令,那么一定经经DR送往指令寄存器送往指令寄存器IR,如果取出的代码是数据,那,如果取出的代码是数据,那么一定送往么一定送往运算器运算器。时间控制对计算机来说是非常重要的!时间控制对计算机来说是非常重要的!思考思考5.3.1时序信号的作用和体制时序信号的

20、作用和体制 计算机的协调动作需要时间标志,而且需要采用多计算机的协调动作需要时间标志,而且需要采用多级时序体制。而时间标志则用级时序体制。而时间标志则用时序信号时序信号来体现。来体现。硬布线控制器硬布线控制器中,时序信号往往采用中,时序信号往往采用主状态周期主状态周期-节节拍电位拍电位-节拍脉冲节拍脉冲三级体制。三级体制。主状态周期(指令周期):主状态周期(指令周期):包含若干个节拍周期,可包含若干个节拍周期,可以用一个触发器的状态持续时间来表示以用一个触发器的状态持续时间来表示节拍电位(机器周期):节拍电位(机器周期):表示一个表示一个CPU 周期的时间,周期的时间,包含若干个节拍脉冲包含若

21、干个节拍脉冲节拍脉冲(时钟周期):节拍脉冲(时钟周期):表示较小的时间单位表示较小的时间单位 微程序控制器微程序控制器中,时序信号则一般采用中,时序信号则一般采用节拍电位节拍电位-节节拍脉冲拍脉冲二级体制。二级体制。节拍脉冲节拍电位1主状态周期主状态周期节拍电位2主状态周期主状态周期-节拍电位节拍电位-节拍脉冲节拍脉冲数据准备好后,以电位的方式送触发器数据准备好后,以电位的方式送触发器控制信号来到后,用一个脉冲信号把数据装入触发器控制信号来到后,用一个脉冲信号把数据装入触发器数据:电位数据:电位控制信号:脉冲控制信号:脉冲节拍电位节拍电位-节拍脉冲节拍脉冲 IORQ MREQ RD WE T1

22、 T2 T3 T4 IORQ MREQ RD WE T1 T2 T3 T4MERQIORQRDWR提供频率稳定且电平匹配提供频率稳定且电平匹配的方波时钟脉冲信号的方波时钟脉冲信号由石英晶体振荡器组成由石英晶体振荡器组成产生一组有序的间隔相产生一组有序的间隔相等或不等的脉冲序列等或不等的脉冲序列启动停机5.3.2时序信号产生器 启停控制逻辑启停控制逻辑节拍脉冲和读写时序译码逻辑节拍脉冲和读写时序译码逻辑环形脉冲发生器环形脉冲发生器时钟脉冲源时钟脉冲源时序产生器(1/4)一、概念1、时序部件:计算机的机内时钟。它用其产生的周期状态,节拍电位及时标脉冲去对指令周期进行时间划分,刻度和标定。2、指令周

23、期:在计算机中从指令的读取到指令的执行完成,执行一条指令所需要的时间,称为指令周期。指令周期通常由若干个CPU周期来表示,CPU周期也称为机器周期。由于CPU内部的操作速度较快,而CPU访问一次内存所花的时间较长,通常用存储周期为基础来规定CPU周期。时序产生器(2/4)二、3级时序信号 1、周期 (1)在一个控制阶段内均持续起作用的信号;(2)通常用周期状态寄存器来标志和指明某某周期控制;(3)指令周期可分为取指周期、分析周期、执行周期。2、节拍 (1)把一个机器周期分成若干个相等的时间段,每一个时间段对应一个电位信号,称节拍电位;(2)一般都以能保证ALU进行一次运算操作作为一拍电位的时间

24、宽度。3、时标工作脉冲 (1)及时改变标志状态;(2)时标脉冲的宽度一般为节拍电位宽度的1/N,只要能保证所有的触发器都能可靠地,稳定地翻转即可。时序产生器(3/4)三、3级时序信号的关系1、一台计算机机内的控制信号一般均由若干个周期状态,若干个节拍电位及若干个时标脉冲这样3级控制时序信号定时完成。2、3级控制时序信号的宽度均成正整数倍同步关系。周期状态之间,节拍电位之间,时标脉冲之间既不容许有重叠交叉,又不容许有空白间隙,应该是能一个接一个地准确连接,一个降落另一个升起而准确切换的同步信号。时序产生器(4/4)图6-7 三级时序系统时标脉冲节拍周期CPU的控制方式(1/4)控制器的控制方式:

25、形成控制不同微操作序列的时序控制信号的方法。控制方式的分类:同步控制方式 异步控制方式 同异步联合控制方式CPU的控制方式(2/4)一、同步控制方式1、含义:又称为固定时序控制方式或无应答控制方式。任何指令的执行或指令中每个微操作的执行都受事先安排好的时序信号的控制。2、每个周期状态中产生统一数目的节拍电位及时标工作脉冲。3、以最复杂指令的实现需要为基准。4、优点:设计简单,操作控制容易实现。缺点:效率低。CPU的控制方式(3/4)二、异步控制方式 1、含义:可变时序控制方式或应答控制方式。执行一条指令需要多少节拍,不作统一的规定,而是根据每条指令的具体情况而定,需要多少,控制器就产生多少时标

26、信号。2、特点:每一条指令执行完毕后都必须向控制时序部件发回一个回答信号,控制器收到回答信号后,才开始下一条指令的执行。3、优点:指令的运行效率高;缺点:控制线路比较复杂。4、异步工作方式一般采用两条定时控制线来实现。我们把这两条线称为“请求”线和“回答”线。当系统中两个部件A和B进行数据交换时,若A发出“请求”信号,则必须有B的“回答”信号进行应答,这次操作才是有效的,否则无效。CPU的控制方式(4/4)三、同步,异步联合控制方式 1、含义:同步控制和异步控制相结合的方式即联合控制方式,区别对待不同指令。2、一般的设计思想是,在功能部件内部采用同步式,而在功能部件之间采用异步式,并且在硬件实

27、现允许的情况下,尽可能多地采用异步控制。5.3.3控制方式 控制不同操作序列时序信号的方法控制不同操作序列时序信号的方法1.1.同步控制方式同步控制方式已定的指令在执行时所需的已定的指令在执行时所需的CPU周期(机器周期)周期(机器周期)数和时钟周期数都固定不变。例如采用完全统一的机数和时钟周期数都固定不变。例如采用完全统一的机器周期执行各种不同的指令器周期执行各种不同的指令2.2.异步控制方式异步控制方式控制器发出某一操作控制信号后,等待执行部件完控制器发出某一操作控制信号后,等待执行部件完成操作后发成操作后发“回答回答”信号,再开始新的操作信号,再开始新的操作3.3.联合控制方式联合控制方

28、式 同步控制和异步控制相结合的方式同步控制和异步控制相结合的方式CPU周期周期取指周期取指周期CPU周期周期取源数取源数CPU周期周期取目标数取目标数CPU周期周期执行周期执行周期P0P1P2W0W1完全同步控制方式W0W1Wi第第N条指令条指令结束应答结束应答W0W1Wj第第N+1条指令条指令结束应答结束应答启动启动下一条下一条W0W1Wk第第N+2条指令条指令结束应答结束应答异步控制方式启动启动下一条下一条i、j、k不一定相等不一定相等一般采用两条定时控制线:一般采用两条定时控制线:“请求请求”线和线和“回答回答”线线演示演示5.4 微程序控制器微程序控制器 微程序控制器同硬布线控制器相比

29、较,具有微程序控制器同硬布线控制器相比较,具有规规整性整性、灵活性灵活性、可维护性可维护性等一系列优点等一系列优点 它利用它利用软件方法软件方法(微程序设计技术微程序设计技术)来设计硬件)来设计硬件 微程序控制的微程序控制的基本思想基本思想就是把操作控制信号编成就是把操作控制信号编成所谓的所谓的“微指令微指令”,存放到一个只读存储器里(控,存放到一个只读存储器里(控制存储器制存储器CM)。当机器运行时,一条又一条地读)。当机器运行时,一条又一条地读出这些微指令,从而产生全机所需要的各种操作控出这些微指令,从而产生全机所需要的各种操作控制信号,是相应部件执行所规定的操作制信号,是相应部件执行所规

30、定的操作微命令微命令 指令系统指令系统 处理器内部可以分为:处理器内部可以分为:控制部件控制部件和和执行部件执行部件微命令:微命令:控制部件控制部件向向执行部件执行部件发出的控制命令发出的控制命令微操作:微操作:执行部件执行部件接受接受微命令微命令后所进行的操作后所进行的操作(微操作在执行部件中是最基本的操作)(微操作在执行部件中是最基本的操作)微指令微指令:实现一定操作功能的一组微命令:实现一定操作功能的一组微命令微程序微程序:实现一条机器指令功能的微指令序列:实现一条机器指令功能的微指令序列指令系统所有指令,指令微程序指令系统所有指令,指令微程序微程序若干微指令,微指令一组微命令微程序若干

31、微指令,微指令一组微命令微命令微命令微操作微操作机器指令与微指令机器指令与微指令 程序机器指令机器指令1机器指令机器指令2机器指令机器指令i机器指令机器指令n.微指令微指令2微指令微指令1微指令微指令i微指令微指令n.微程序程序计数器程序计数器PC地址寄存器地址寄存器AR缓冲寄存器缓冲寄存器DR指令寄存器指令寄存器IR微地址寄存器微地址寄存器AR微指令寄存器微指令寄存器IR主存储器主存储器控制存储器控制存储器CM微命令微命令地址译码器地址译码器地址译码地址译码机器指令级机器指令级微指令级微指令级 5.5 微程序设计技术微程序设计技术 1.1.静态微程序设计静态微程序设计对应于一台计算机的机器指

32、令只有一组微对应于一台计算机的机器指令只有一组微程序,而且这一组微程序设计好之后,一般无程序,而且这一组微程序设计好之后,一般无须改变而且也不好改变须改变而且也不好改变2.2.动态微程序设计动态微程序设计采用采用EPROMEPROM作为控制存储器,可以通过改变作为控制存储器,可以通过改变微指令和微程序来改变机器的指令系统微指令和微程序来改变机器的指令系统采用动态微程序设计,微指令和微程序可采用动态微程序设计,微指令和微程序可以根据需要加以改变,因而可在一台机器上以根据需要加以改变,因而可在一台机器上仿仿真真其它机器指令系统其它机器指令系统5.6硬布线控制器硬布线控制器 硬布线控制器把控制部件看

33、作为产生专门硬布线控制器把控制部件看作为产生专门固定时序控制信号的逻辑电路(以固定时序控制信号的逻辑电路(以使用最少元使用最少元件和取得最高操作速度件和取得最高操作速度为设计目标)为设计目标)硬布线控制的优点:速度较快;缺点:不硬布线控制的优点:速度较快;缺点:不容易修改添加新功能容易修改添加新功能微程序控制的优点:具有规整性、灵活性、微程序控制的优点:具有规整性、灵活性、可维护性等;缺点:采用存储程序原理,需要可维护性等;缺点:采用存储程序原理,需要执行多条微指令,速度较慢执行多条微指令,速度较慢5.7传统传统CPU M6800CPUM6800CPU 是一个比较典型的单总线结构的微处理器是一

34、个比较典型的单总线结构的微处理器 M6800CPUM6800CPU是一种是一种8 8位微处理器,采用单一的位微处理器,采用单一的5V5V电源。时电源。时钟脉冲采用两相钟脉冲采用两相(1 1,2 2),主频为,主频为1MHz1MHz,由外面加入,由外面加入CPUCPU。M6800M6800的的CPUCPU主要包括主要包括8 8位的位的ALUALU,1616位的程序计数器、位的程序计数器、1616位的堆栈指示器和位的堆栈指示器和1616位的变址寄存器,两个位的变址寄存器,两个8 8位的累加位的累加器和一个器和一个8 8位的状态条件码寄存器,一个位的状态条件码寄存器,一个8 8位的指令寄存位的指令寄

35、存器以及指令译码与控制部件器以及指令译码与控制部件(即操作控制器即操作控制器)。此外还有。此外还有一个一个8 8位的数据缓冲寄存器和一个位的数据缓冲寄存器和一个1616位的地址缓冲寄存位的地址缓冲寄存器。器。ALUALU部件执行算术运算和逻辑操作,它们包括逻辑部件执行算术运算和逻辑操作,它们包括逻辑“与与”、逻辑、逻辑“或或”、逻辑、逻辑“异或异或”、求补、比较、加、求补、比较、加法、减法、十进制调整等。法、减法、十进制调整等。在在M6800M6800中,主存地址和外设地址是统一编址的,因此,中,主存地址和外设地址是统一编址的,因此,在在6553665536个地址中有一部分是为外围设备使用的。

36、个地址中有一部分是为外围设备使用的。传统传统CPU举例举例Intel 8088CPUIntel 8088CPU Intel 8088Intel 8088是一种通用的准是一种通用的准1616位微处理器,其内部结构位微处理器,其内部结构为为1616位,与外部交换的数据为位,与外部交换的数据为8 8位。它可以处理位。它可以处理1616位数据位数据(具有具有1616位运算指令,包括乘除法指令位运算指令,包括乘除法指令),也可处理,也可处理8 8位数位数据。它有据。它有2020条地址线,直接寻址能力达到条地址线,直接寻址能力达到1M1M字节。字节。CPU CPU 从功能上来说分成总线接口单元从功能上来说

37、分成总线接口单元BIUBIU和执行单元和执行单元EUEU两两大部分。大部分。BIUBIU负责与存储器和外围设备接口,即负责与存储器和外围设备接口,即8088 CPU8088 CPU与存储器与存储器和外围设备之间的信息传送,都是由和外围设备之间的信息传送,都是由BIUBIU进行的。进行的。EU EU 部分负责指令的执行。取指部分与执行指令部分是独部分负责指令的执行。取指部分与执行指令部分是独立并行工作的,在一条指令的执行过程中,可取出下一立并行工作的,在一条指令的执行过程中,可取出下一条条(或多条或多条)指令,在指令流队列寄存器中排队。在一条指令,在指令流队列寄存器中排队。在一条指令执行完以后就

38、可以立即执行下一条指令,减少了指令执行完以后就可以立即执行下一条指令,减少了CPUCPU为取指令而等待的时间,提高了系统的运行速度。为取指令而等待的时间,提高了系统的运行速度。传统传统CPU举例举例IBM 370CPUIBM 370CPU 3232位位CPUCPU ALUALU部件按功能不同分为如下三个子部件:部件按功能不同分为如下三个子部件:(1)(1)定点运算,定点运算,包括整数计算和有效地址的计算;包括整数计算和有效地址的计算;(2)(2)浮点运算;浮点运算;(3)(3)可可变长运算,包括十进制算术运算和字符串操作。变长运算,包括十进制算术运算和字符串操作。为了存放地址和数据,使用了两组

39、独立的可编址寄存器,为了存放地址和数据,使用了两组独立的可编址寄存器,1616个通用寄存器用来存放操作数和运算结果,且可用作个通用寄存器用来存放操作数和运算结果,且可用作变址寄存器。变址寄存器。4 4个浮点寄存器用于浮点运算。数据寄存器个浮点寄存器用于浮点运算。数据寄存器DRDR、地址寄存器、地址寄存器ARAR、指令寄存器、指令寄存器IRIR是标准化的。是标准化的。Intel 80486CPUIntel 80486CPU 3232位位CPUCPU 通过采用流水技术,以及微程序控制和硬布线逻辑控制通过采用流水技术,以及微程序控制和硬布线逻辑控制相结合的方式,进一步缩短可变长指令的译码时间,达相结

40、合的方式,进一步缩短可变长指令的译码时间,达到基本指令可以在一个时钟周期内完成。到基本指令可以在一个时钟周期内完成。传统传统CPU举例举例 486486芯片内部包含一个芯片内部包含一个8KB8KB的数据和指令混合性的数据和指令混合性cachecache,为,为频繁访问的指令和数据提供快速的内部存储,从而使系频繁访问的指令和数据提供快速的内部存储,从而使系统总线有更多的时间用于其他控制。统总线有更多的时间用于其他控制。486486芯片内部包含了增强性芯片内部包含了增强性8038780387协处理器,称为浮点运协处理器,称为浮点运算部件算部件(FPU)(FPU)。由于。由于FPUFPU功能扩充,且

41、放在功能扩充,且放在CPUCPU内部,使引内部,使引线缩短,故速度比线缩短,故速度比8038780387提高了提高了3 35 5倍。倍。486 CPU486 CPU的内部数据总线宽度为的内部数据总线宽度为6464位,这也是它缩短指令位,这也是它缩短指令周期的一个原因。而外部数据总线的宽度也可以自动转周期的一个原因。而外部数据总线的宽度也可以自动转换。换。地址信号线扩充到地址信号线扩充到3232位,可以处理位,可以处理4GB(24GB(23232字节字节)的物理的物理存储空间。如果利用虚拟存储器,其存储空间达存储空间。如果利用虚拟存储器,其存储空间达64TB(264TB(24646字节字节)。5

42、.8 流水流水CPU 洗衣房的流水作业洗衣房的流水作业三个阶段:三个阶段:1.1.水洗水洗(30)(30)2.2.烘干烘干(40)(40)3.3.熨烫熨烫(20(20)ABCD6 PM789TaskOrderTime30 40404040 20演示演示系统结构基本概念5.8.1 并行处理技术v并行性并行性(Parallelism):):在同一时刻或是同一时间间隔内完成两种或两种以上性在同一时刻或是同一时间间隔内完成两种或两种以上性质相同或不相同的工作质相同或不相同的工作同时性同时性(Simultaneity):同一时刻发生的并行性):同一时刻发生的并行性并发性并发性(Concurrency):

43、同一个时间间隔内发生):同一个时间间隔内发生的并行性的并行性v并行性的等级并行性的等级指令内部并行:微操作之间指令内部并行:微操作之间指令级并行(指令级并行(ILP:Instruction Level Parallel)线程级并行(线程级并行(TLP:Thread Level Parallel)程序级并行程序级并行系统级并行:分布式系统、多机系统、机群系统系统级并行:分布式系统、多机系统、机群系统系统结构基本概念提高并行性的技术途径v时间重叠时间重叠(Time-interleaving)时间并行时间并行多个过程在时间上相互错开,轮流重叠地使用同一套硬多个过程在时间上相互错开,轮流重叠地使用同一

44、套硬件设备的各个部分件设备的各个部分v资源重复资源重复(Resource-replication)空间并行空间并行通过重复设置资源(尤其是硬件资源),提高性能通过重复设置资源(尤其是硬件资源),提高性能v资源共享资源共享(Resource-sharing)使多个任务按一定时间顺序轮流使用同一套硬件设备使多个任务按一定时间顺序轮流使用同一套硬件设备单机系统中并行性的发展单机系统中并行性的发展9.1.3v指令流水线,部件冗余,分时系统指令流水线,部件冗余,分时系统多机系统中并行性的发展多机系统中并行性的发展9.1.4v多机系统多机系统v耦合度:松散耦合、紧密耦合耦合度:松散耦合、紧密耦合5.8.2

45、 5.8.2 流水流水CPUCPU的结构的结构 指令流水线指令流水线 IF(Instruction Fetch)取指令阶段取指令阶段ID(Instruction Decode)指令译码阶段指令译码阶段EX(Execute)执行运算阶段执行运算阶段MEM(Memory Access)存储器访问阶段存储器访问阶段WB(Write Back)写回结果阶段写回结果阶段WBWB系统结构流水线流水线的时空图v流水线技术流水线技术:把一个重复的过程分解为若干个:把一个重复的过程分解为若干个子过程,每个子程序可以与其他子过程同时进子过程,每个子程序可以与其他子过程同时进行行v描述流水线的工作,最常用的方法是时

46、间描述流水线的工作,最常用的方法是时间-空间空间图(图(时空图时空图)横坐标横坐标:表示:表示时间时间,即各个任务在流水线中所,即各个任务在流水线中所经过的时间经过的时间纵坐标纵坐标:表示:表示空间空间,即流水线的各个子过程,即流水线的各个子过程,也称为也称为级、段、流水线深度级、段、流水线深度(Stage)非流水计算机的时空图非流水计算机的时空图每每4个机器周期才有一个输出结果个机器周期才有一个输出结果流水计算机的时空图流水计算机的时空图每个机器周期可以输出一个结果每个机器周期可以输出一个结果演示演示系统结构流水线流水线的特点v流水线实际上是把一个功能部件分解成多个独立的子功流水线实际上是把

47、一个功能部件分解成多个独立的子功能部件(一个任务也就分成了几个子任务,每个子任务能部件(一个任务也就分成了几个子任务,每个子任务由一个子功能部件完成),并依靠多个子功能部件并行由一个子功能部件完成),并依靠多个子功能部件并行工作来缩短所有任务的执行时间工作来缩短所有任务的执行时间v流水线有助于提高整个程序(所有任务)的吞吐率,但流水线有助于提高整个程序(所有任务)的吞吐率,但并没有减少每个指令(任务)的执行时间并没有减少每个指令(任务)的执行时间v流水线各个功能段所需时间应尽量相等。否则,时间长流水线各个功能段所需时间应尽量相等。否则,时间长的功能段将成为流水线的的功能段将成为流水线的“瓶颈瓶

48、颈”,会造成流水线的,会造成流水线的“阻塞阻塞”(Stall)v流水线开始需要流水线开始需要“通过时间通过时间”(Fill)和最后需要和最后需要“排空排空时间时间”(Drain)。流水线只有处理连续不断的任务才能。流水线只有处理连续不断的任务才能发挥其效率发挥其效率系统结构流水线5.8.3 流水线中的主要问题v流水线中存在一些流水线中存在一些相关相关(冲突冲突、冒险冒险Hazard,相相关关、依赖依赖Dependence,竞争竞争Competition)的的情况,它使得下一条指令无法在设计的时钟周情况,它使得下一条指令无法在设计的时钟周期内执行。这些相关将降低流水线性能期内执行。这些相关将降低

49、流水线性能v主要有三种类型的相关(冲突)主要有三种类型的相关(冲突)结构相关(资源冲突)结构相关(资源冲突):当指令重叠执行过程:当指令重叠执行过程中,硬件资源满足不了指令重叠执行的要求中,硬件资源满足不了指令重叠执行的要求数据相关(数据冲突)数据相关(数据冲突):在同时执行的多条指:在同时执行的多条指令中,一条指令依赖前一条指令的执行结果令中,一条指令依赖前一条指令的执行结果(数数据据)却无法得到却无法得到控制相关(控制冲突)控制相关(控制冲突):流水线遇到分支指令:流水线遇到分支指令或其他改变或其他改变PC值的指令值的指令1.1.资源相关资源相关 资源相关资源相关是指多条指令进入流水线后,

50、在同一机是指多条指令进入流水线后,在同一机器时钟周期内争用同一个功能部件所发生的冲突器时钟周期内争用同一个功能部件所发生的冲突 例:假定一条指令流水线由五段组成,且仅有例:假定一条指令流水线由五段组成,且仅有IF过程和过程和MEM过程需要访问存储器过程需要访问存储器 I1与与I4两条指令在时钟两条指令在时钟4争用存储器资源的相关冲突争用存储器资源的相关冲突2.2.数据相关数据相关 ADD R1,R2,R3;R2R3R1 SUB R4,R1,R5;R1R5R4 AND R6,R1,R7;R1R7R0指令发生数据相关冲突指令发生数据相关冲突 3.3.控制相关控制相关 控制相关控制相关冲突由冲突由转

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(计算机组成原理第五章课件(白中英版).ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|