第5章中央处理器_第1页
第5章中央处理器_第2页
第5章中央处理器_第3页
第5章中央处理器_第4页
第5章中央处理器_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第5 5章章 中央处理器中央处理器 本章主要内容:本章主要内容: CPU的功能和组成的功能和组成 指令周期指令周期 时序产生器和控制方式时序产生器和控制方式 微程序控制器微程序控制器 硬连线控制器硬连线控制器 提高提高CPU性能的技术性能的技术 中央处理器中央处理器CPU的主要功能是的主要功能是自动的自动的从主从主 存储器中取出指令、分析指令和执行指令,存储器中取出指令、分析指令和执行指令, 即按指令控制计算机各部件操作,并对数据即按指令控制计算机各部件操作,并对数据 进行处理进行处理。 指令控制:控制程序的执行顺序; 操作控制:产生各种操作所需的控制信号; 时间控制:对各种操作实施时间上的

2、定时; 数据加工:对数据进行算术、逻辑运算处理。 一一 CPUCPU的功能和组成的功能和组成 CPU的基本组成:的基本组成:运算器运算器、控制器控制器、cache 。 运算器:实现数据的运算器:实现数据的算术与逻辑运算算术与逻辑运算。 控制器:控制器:产生控制信号产生控制信号,协调和指挥各个部件完成,协调和指挥各个部件完成 执行指令的操作。执行指令的操作。 l取指令,并指出下条指令的地址;取指令,并指出下条指令的地址; l对指令译码或测试,并产生相应的操作控制信号;对指令译码或测试,并产生相应的操作控制信号; l指挥并控制指挥并控制CPUCPU、存储器和、存储器和I/OI/O设备之间数据流动设

3、备之间数据流动 的方向的方向。 Cache Cache :存储指令和数据。:存储指令和数据。 CPU模型模型 模型机各部件功能:模型机各部件功能: 寄存器的功能:暂存指令和数据寄存器的功能:暂存指令和数据 l数据缓冲数据缓冲寄存器(寄存器(DR):): u存运算结果及内部缓冲;存运算结果及内部缓冲; u缓冲缓冲CPU与外部(主存与外设)数据传送。与外部(主存与外设)数据传送。 l指令寄存器(指令寄存器(IR):存储当前正在执行的):存储当前正在执行的指令字指令字。 u指令译码器:指令译码器:分析测试分析测试指令指令操作码操作码的功能。的功能。 l程序计数器(程序计数器(PC):存储下一条要):

4、存储下一条要执行指令的地执行指令的地 址址。 l地址寄存器(地址寄存器(AR):存储当前访问):存储当前访问数据的地址。数据的地址。 l通用寄存器(通用寄存器(R0R3):存储参与运算及运算结):存储参与运算及运算结 果的数据。果的数据。 l状态字寄存器(状态字寄存器(PSW):存储运算):存储运算状态状态。 操作控制器:根据指令操作码和时序信号,操作控制器:根据指令操作码和时序信号, 产生各种产生各种控制信号控制信号,在各寄存器之间建立,在各寄存器之间建立 数据通路数据通路。 l微程序控制器微程序控制器 l硬布线控制器硬布线控制器 时序产生器:产生时序产生器:产生定时信号,定时信号,对各种操

5、作对各种操作 信号实施时间上的控制。信号实施时间上的控制。 二二 指令周期指令周期 CPU的工作就是周而复始的执行指令过程。的工作就是周而复始的执行指令过程。 指令的分段执行过程指令的分段执行过程 l取指令:根据取指令:根据PC提供的地址从主存提供的地址从主存/cache中读中读 取当前指令,送到指令寄存器取当前指令,送到指令寄存器IR中;中; l分析指令:通过译码电路分析分析指令:通过译码电路分析IR中指令操作码字中指令操作码字 段表示什么操作,并在时序系统的配合下产生该段表示什么操作,并在时序系统的配合下产生该 指令对应的微操作命令序列;指令对应的微操作命令序列; l执行指令:执行阶段还可

6、细分执行指令:执行阶段还可细分为: u取操作数取操作数 u执行操作执行操作 u形成下一条指令地址形成下一条指令地址 在运行的过程中,在运行的过程中, CPUCPU还要对出现的某还要对出现的某 些些异常情况异常情况或或输入输入/ /输输 出请求出请求进行处理进行处理 。 指令的周期指令的周期:CPU从内存取出一条指令并执行这条 指令的所有操作时间总和。又可细分成若干个CPU 周期。 uCPU周期周期:又称机器周期,一般用从内存读取一条指 令字的最短时间来定义。又可细分成若干个时钟周期。 时钟周期时钟周期:CPU处理操作的基本时间单位,处理操作的基本时间单位,通常 称为节拍脉冲或T周期。一个CPU

7、周期包含若干个 时钟周期。 基本指令周期:取指周期,执行周期 典型指令功能: l指令助记符:MOV R0,R1 功能:寄存器数据传送 操作:(R1)R0 l指令助记符:LAD R1,6 功能:从内存取数到寄存器 操作: (6) R1 l指令助记符:ADD R1,R2 功能:加法操作 操作: (R1)+(R2) R2 l指令助记符:STO R2,(R3) 功能:存寄存器数据到内存 操作: (R2) (R3) l指令助记符:JMP 101 功能:无条件转移 操作: 101PC l指令助记符:AND R1,R3 功能:逻辑与操作 操作: (R1)(R3) R3 MOV指令指令的指令周期的指令周期 l

8、取指令周期操作步骤取指令周期操作步骤: u101 PC uPCABUS(I); u(101) IBUS IR u PC+1 PC(102) u OP数据经过译码器数据经过译码器 识别为识别为MOV指令。指令。 MOV指令指令的指令周期的指令周期 l执行指令周期操作步骤执行指令周期操作步骤: u OC R1 uOC送传送信号送传送信号 uR1 ALU通路 DBUS uDBUS DR u DR R0 CPU周期数周期数:2个,取个,取 指和执行指令各占一个。指和执行指令各占一个。 10 102 10 LAD指令指令的指令执行周期的指令执行周期 10 PCABUS(I) IBUSIR PC+1 IR

9、(A)AR 译码译码 AR ABUS DBUSDR DR R1 100 ADD指令指令的指令执行周期的指令执行周期 10 译码译码 R1+R2DR DR R2 PCABUS(I) IBUSIR PC+1 120 STO指令指令指令指令的指令执行周期的指令执行周期 10 R3 AR 译码译码 R2DBUS PCABUS(I) IBUSIR PC+1 120 JMP指令指令指令指令的指令执行周期的指令执行周期 译码译码 IR()() PCABUS(I) IBUSIR PC+1 101 小结:用方框图语言表示机器指令周期,一个方框代小结:用方框图语言表示机器指令周期,一个方框代 表一个表一个CPU周

10、期。周期。 例例1 (1) ADD R2,R0 (2)SUB R1,R3 解解 (R2)+(R0)(R0) PCAR MDR PC+1 PC DRIR PCo,G ,ARi R/W=R,PC+1 DRo,G,IRi R2Y R0X Y+XR0 R2o,G,Yi R0o,G,Xi +,G,R0i 取指取指 执行执行 PC+1 例例1 解解 (R1)-(R3)(R3) DRIRDRo,G,IRi R3Y R1X Y-XR3 R3o,G,Yi R1o,G,Xi -,G,R3i 取指取指 执行执行 PC+1 PCAR MDR PC+1 PC PCo,G ,ARi R/W=R,PC+1 三三 时序产生器

11、和控制方式时序产生器和控制方式 指令的执行过程就是依次产生一个确定的指令的执行过程就是依次产生一个确定的控制控制 信号序列信号序列的过程。的过程。 u指令的执行是分阶段分步骤进行的。指令的执行是分阶段分步骤进行的。 u每一步的操作是由控制器产生一些相应的控制信号实现。每一步的操作是由控制器产生一些相应的控制信号实现。 u各步骤的操作是有先后秩序的,控制信号的长短必须有各步骤的操作是有先后秩序的,控制信号的长短必须有 严格的时间控制。严格的时间控制。 常用控制器时序方式:常用控制器时序方式: u硬布线控制器:采用硬布线控制器:采用主状态周期主状态周期-节拍电位节拍电位-节拍脉冲三节拍脉冲三 级体

12、制。级体制。 u微程序控制器:采用微程序控制器:采用节拍电位节拍电位-节拍脉冲节拍脉冲二级体制。二级体制。 时序信号产生器时序信号产生器 时钟源时钟源:产生:产生方波方波时钟脉冲信号。时钟脉冲信号。 环形脉冲发生器:产生一组有序的间隔相等或不等的环形脉冲发生器:产生一组有序的间隔相等或不等的脉冲脉冲 序列序列。 节拍脉冲和读写时序电路:产生节拍脉冲及存储器读写时节拍脉冲和读写时序电路:产生节拍脉冲及存储器读写时 序信号。序信号。 启停控制逻辑电路:节拍脉冲信号启停控制逻辑电路:节拍脉冲信号使能使能电路。电路。 控制方式:控制方式: 即控制不同操作序列时序信号的方法。 l同步控制方式同步控制方式

13、:指令在执行时所需的机器周期数(CPU 周期)和时钟周期数(节拍脉冲)都固定不变。 u采用完全统一的机器周期执行各种不同的指令。 u采用不定长机器周期。 u中央控制与局部控制结合。 l异步控制方式异步控制方式:指每个操作控制信号根据需要确定完 成时间。 u根据“应答”方式操作。 l联合控制方式联合控制方式 :同步控制和异步控制相结合的方式。 u大部分操作序列安排在固定的机器周 期中,部分采用“回答” 信号方式; u机器周期的节拍脉冲数固定,但是各条指令周期的机器周期数 不固定。 四 微程序控制器 (一)(一) 微程序控制原理微程序控制原理 核心思想核心思想:将控制信号编成:将控制信号编成微指令

14、微指令,这样,这样 每条机器指令的所有操作可以编成一段由每条机器指令的所有操作可以编成一段由 微指令组成的微程序微指令组成的微程序;将所有机器指令的;将所有机器指令的 微程序存到一个只读存储器里微程序存到一个只读存储器里(CM), CPU执行一条指令时,只需将执行一条指令时,只需将CM中相应的中相应的 一段微程序读出来,就可产生各种微操作一段微程序读出来,就可产生各种微操作 信号,以实现该指令的功能。信号,以实现该指令的功能。 基本术语基本术语 l微命令微命令:控制部件通过控制线向执行部件发出的各种控制信:控制部件通过控制线向执行部件发出的各种控制信 号。号。 LDR1 LDR2LDR3 R1

15、X R2X DRX R3Y R2Y R1Y l微操作微操作:执行部件接受:执行部件接受 微命令后所进行的操作。微命令后所进行的操作。 u相斥性微操作:不 能同时或在同一个 CPU周期中出现的 微操作。 u相容性微操作:能 同时或在同一个 CPU周期中出现的 操作。 基本术语(续)基本术语(续) l微指令微指令: 在机器的一个在机器的一个CPU周期中,一组实现周期中,一组实现 一定操作功能的微命令的组合。一定操作功能的微命令的组合。 u微操作控制字段:微操作控制字段:产生控制信号。产生控制信号。 u顺序控制字段:顺序控制字段:产生下条微指令的地址。产生下条微指令的地址。 l微程序微程序: 实现一

16、条机器指令功能的许多条微指实现一条机器指令功能的许多条微指 令组成的序列。令组成的序列。 微指令给出的控制信号微指令给出的控制信号 都是节拍电位信号。都是节拍电位信号。 但,有些信号不能来的但,有些信号不能来的 太早也不能来的太迟,太早也不能来的太迟, 所以,这些微命令还要所以,这些微命令还要 和节拍脉冲信号相与。和节拍脉冲信号相与。 微程序控制器组成原理 l控制存储器控制存储器: 用于存放实现全部指令系统的微程序。 l微指令寄存器微指令寄存器: 用来存放当前执行的一条微指令。 l地址转移逻辑地址转移逻辑: 用于形成下条微指令的微地址。 微程序控制器举例: l处理器部件 l指令功能:用BCD码

17、 来完成十进制的加法 运算。R1+R2R2 l指令流程 l微指令格式 PCM MIR PC+1 R1+R2R2 R2+R3R2 C R2-R3R2 RD,LDIR, PC+1 R1X,R2 Y,+, LDR2 R2X,R3 Y,+, LDR2 R2X,R3 Y, ,LDR2 微程序设计流程 000 000 000 000 10101100000 PCM MIR PC+1 R1+R2R2 P1 R2+R3R2 P2 R2-R3R2 0000 010 100 100 100 000000010011010 1001 0001 010 001 001 100 00000010000 010 001

18、001 001 00000000000 微程序控制器组成原理 CPU周期与微指令周期关系 l微指令周期 = 读出微指令的时间 + 执行该条微指 令的时间 机器指令与微指令的关系 l一条机器指令的功能是由若干条微指令组成的序 列来实现的。 l机器指令存储在内存中,CPU外部;微指令存储 在CM中,属于CPU内部。 l每一个CPU周期对应一条微指令 微命令编码方式 l直接表示法将控制字段的每个二进制位定义为一个微 命令。 u优点:简单、直观,执行速度快,操作并行性好。 u缺点:微指令字长过长,位空间利用率低。 l编码(分段译码)表示法把一组相斥性的微命令信号 组合在一个字段,然后通过译码器对每个微

19、命令信号进 行译码,译码的输出作为控制信号。 u优点:可用较少的二进制位表示较多的微命令信号, 缩短CM的字长。 u缺点:增加了译码电路,速度相对要慢一些。 l混合表示法 l为提高灵活性,常在微指令中增设一个常数字段。 (二)(二) 微程序设计技术微程序设计技术 微地址的形成方法 l多路转移方式(断定):将顺序控制字段分成测试字 段(P)和下地址字段二段。未出现多路分支时, 后 继由下地址字段直接给出,出现多路分支时,根据测 试字段值和状态条件选择转移地址。 u优点:多路转移灵活,速度快; u缺点:转移地址硬件设计复杂。 l计数器方式(增量方式):顺序执行时,后继地址在 现行微地址上加上一增量

20、;非顺序执行时,需执行一 条转移微指令。 u优点:顺序控制字段较短,设计简单。 u缺点:多路并行转移弱,速度较慢,灵活性差。 例例2 微地址寄存器有6位(A5-A0),当需要修改其内容时, 可通过某一位触发器的强置端S将其置“1”。现有三种情况: (1)执行“取指”微指令后,微程序按IR的OP字段(IR3-IR0)进 行16路分支; (2)执行条件转移指令微程序时,按进位标志C的状态进行2路 分支; (3)执行控制台指令微程序时,按IR4,IR5的状态进行4路分支。 请按多路转移方法设计微地址转移逻辑。 【解】【解】 按题意,微程序有三种判别测试,分别为按题意,微程序有三种判别测试,分别为P1

21、,P2,P3。 由于修改由于修改A5-A0内容具有很大灵活性,现分配如下:内容具有很大灵活性,现分配如下: (1)用用P1和和IR3-IR0修改修改A3-A0; (2)用用P2和和C修改修改A0; (3)用用P3和和IR5,IR4修改修改A5,A4。 微指令的格式 l水平型微指令在一个微指令周期内,同时给出多个能 并行操作的微命令。 u全水平型 u字段译码型 u混合型 l垂直型微指令在微指令中设置微操作码字段和地址码 字段,采用微操作码编译法,并由微操作码规定微指令 的功能。 l二者比较:水平型并行操作能力强、效率高、灵活性强, 微指令执行时间短,但微指令字长长、复杂程度高、对 硬件了解程度高

22、。而垂直型相反。 动态微程序设计 l静态微程序设计:微程序设计好后,不再(能)修改; l动态微程序设计:微程序可根据需要再修改。 基本思想:用门电路和触用门电路和触 发器构成的逻辑电路来产发器构成的逻辑电路来产 生控制信号。生控制信号。 设计方法:综合所有机器设计方法:综合所有机器 指令流程的微操作时间表,指令流程的微操作时间表, 列出各微命令与输入的关列出各微命令与输入的关 系,设计出逻辑式,用门系,设计出逻辑式,用门 电路或可编程器件来实现。电路或可编程器件来实现。 l优点:速度快优点:速度快 l缺点:设计复杂、不缺点:设计复杂、不 易修改。易修改。 五五 硬连线控制器硬连线控制器 采用同

23、步控制方式:长指令和短指令的节拍时间一样。采用同步控制方式:长指令和短指令的节拍时间一样。 设计方法:根据所有机器指令流程图,寻找产生同一个微操作信号设计方法:根据所有机器指令流程图,寻找产生同一个微操作信号 的所有条件,并与适当的节拍电位和节拍脉冲组合,然后用布尔代的所有条件,并与适当的节拍电位和节拍脉冲组合,然后用布尔代 数表达式描述,最后用门电路来实现。数表达式描述,最后用门电路来实现。 M1,M2,M3为节拍电为节拍电 位信号,位信号,T1,T2,T3, T4为一个为一个CPU周期的节周期的节 拍脉冲信号,拍脉冲信号,MOV, LAD,ADD,STO, JMP分别表示对应机器指分别表示

24、对应机器指 令的令的OP操作码译码输出操作码译码输出 信号。请写出,信号。请写出,LDIR、 LDDR的逻辑表达式。的逻辑表达式。 六、提高性能的技术六、提高性能的技术 5.7.1 流水流水CPU技术技术 并行处理技术并行处理技术 l同时性同时性 指两个以上事件在同一时刻发生; l并发性并发性 指两个以上事件在同一时间间隔内发生。 计算机并行处理技术形式:计算机并行处理技术形式: l时间并行时间并行:指时间重叠。 l空间并行空间并行:指资源重复。 l时间并行时间并行+空间并行空间并行:指时间重叠和资源重复的 综合应用 。例如,奔腾CPU采用了超标量流水 技术。 流水线技术设计方法:流水线技术设

25、计方法: l将一个大的功能部件分成几个独立的功能部件,将一个大的功能部件分成几个独立的功能部件, 并行工作以提高执行速度的技术。并行工作以提高执行速度的技术。 l流水线中功能部件必须满足的条件:流水线中功能部件必须满足的条件: u流水线中的任务必须是连续的,流水线应流水线中的任务必须是连续的,流水线应 是完全充满的。是完全充满的。 u分解的任务是有联系的。分解的任务是有联系的。 u段与段之间传送字任务时,必须通过高速段与段之间传送字任务时,必须通过高速 缓冲寄存器。缓冲寄存器。 u流水线中各段的执行时间应尽可能相等。流水线中各段的执行时间应尽可能相等。 5.7.2 流水流水cpu 的结构的结构

26、 (一)流水计算机的系统组成(一)流水计算机的系统组成 u指令部件指令部件 u指令队列指令队列 u执行部件执行部件 (二)流水(二)流水CPU的时空图。的时空图。 u设指令周期包含四个子过程:设指令周期包含四个子过程: 非流水线时空图非流水线时空图 标量流水线时空图标量流水线时空图 超标量流水线时空图超标量流水线时空图 单位时间内单位时间内 流水线所完成指令流水线所完成指令 或或 输出结果输出结果 的的 数量数量 最大吞吐率(满载后)最大吞吐率(满载后) 实际吞吐率实际吞吐率 连续处理连续处理 n 条指令的吞吐率为条指令的吞吐率为 设设 m 段的流水线各段时间为段的流水线各段时间为t t Tp

27、max = 1 t t Tp = m + (n-1) n t tt t (三)流水线性能(三)流水线性能 个任务的时间完成 完成的任务数 n n TP m 段的段的 流水线的速度流水线的速度 与等功能的与等功能的 非流水线的速度非流水线的速度 之比之比 设流水线各段时间为设流水线各段时间为 t 完成完成 n 条指令在条指令在 m 段流水线上共需段流水线上共需 T = m + (n-1) t t 完成完成 n 条指令在等效的非流水线上共需条指令在等效的非流水线上共需 T = nmt Sp = m +(n-1) nm = nm m + n -1 t t t 则则 由于流水线有由于流水线有 建立时间

28、建立时间 和和 排空时间排空时间 因此各功能段的因此各功能段的 设备不可能设备不可能 一直一直 处于处于 工作工作 状态状态 流水线中各功能段的流水线中各功能段的 利用率利用率 mt 31245 31245 31245 31245 n-1 n n-1 n n-1 n n-1 n T时间 时间 S空间 空间 空间空间 S4 S3 S2 S1 (n-1) t m(m + n -1) t = mnt 流水线各段处于工作时间的时空区流水线各段处于工作时间的时空区 流水线中各段总的时空区流水线中各段总的时空区 效率效率 = mt 31245 31245 31245 31245 n-1 n n-1 n n

29、-1 n n-1 n T时间 时间 S空间 空间 空间空间 S4 S3 S2 S1 (n-1) t 流水线中各功能段的流水线中各功能段的 利用率利用率 (四)流水线分类(四)流水线分类 l指令流水线指令流水线:指指令步骤的并行。:指指令步骤的并行。 l算术流水线算术流水线:指令运算操作步骤的并行。:指令运算操作步骤的并行。 l处理机流水线处理机流水线:指程序步骤的并行。:指程序步骤的并行。 (五)流水线中的主要问题(五)流水线中的主要问题 l资源相关资源相关 l数据相关数据相关 l控制相关控制相关 (1)资源相关)资源相关:指多条指令进入流水线后在同一机器时钟周期:指多条指令进入流水线后在同一

30、机器时钟周期 内争用同一个功能部件所发生的冲突。设指令流水线分为:取内争用同一个功能部件所发生的冲突。设指令流水线分为:取 指、译码、计算有效地址或执行、访存取数、写寄存器五段。指、译码、计算有效地址或执行、访存取数、写寄存器五段。 解决办法:解决办法:1.停顿流水线停顿流水线 2.重复设置存储器,数据和指令分开存放重复设置存储器,数据和指令分开存放 3.采用指令预取技术采用指令预取技术 大部分计大部分计 算机数据算机数据 和指令放和指令放 在一个存在一个存 储单元中,储单元中, 且只有一且只有一 个端口个端口 (2 2)数据相关)数据相关:若在一个程序中,如果必须等前一条指令执行:若在一个程

31、序中,如果必须等前一条指令执行 完毕后,才能执行后一条指令,那么这两条指令就是数据相完毕后,才能执行后一条指令,那么这两条指令就是数据相 关的关的 l例执行:例执行: ADD R1ADD R1,R2R2,R3R3 SUB R4 SUB R4,R1R1,R5R5 AND R6 AND R6,R1R1,R7R7 l解决办法:解决办法:1.1.停顿流水线停顿流水线 2.2.采用定向技术(旁路技术或相关通路技术):采用定向技术(旁路技术或相关通路技术): 增设运算结果缓冲寄存器增设运算结果缓冲寄存器 (3)控制相关)控制相关:当执行转移指令时,使流水:当执行转移指令时,使流水 线线 发生断流的问题。发生断流的问题。 l解决办法:解决办法:1. 延迟转移法延迟转移法 2. 转移预测法转移预测法 3. 加快和提高形成条件码加快和提高形成条件码 4. 加快短循环程序的处理加快短循环程序的处理 5. 采用优化延迟转移技术采用优化延迟转移技术 三种数据相关 写后读相关(RAW):指令j试图在指令i写入寄存器前就 读出该寄存器的内容,这样,指令j就会错误地读出该寄存 器中的旧内容。 MUL R1,R2 ; ADD R3,R1 ; 读后写相关(WAR):指令j试图在指令i读出寄存器之前 就写入该寄存器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论