CPU的结构和功能(IV).ppt
《CPU的结构和功能(IV).ppt》由会员分享,可在线阅读,更多相关《CPU的结构和功能(IV).ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第章第章 CPU 的结构和功能的结构和功能8.1 CPU 的结构的结构8.3 指令流水指令流水8.2 指令周期指令周期8.4 中断系统中断系统8.1 CPU 的结构的结构一、一、CPU 的功能的功能取指令取指令分析指令分析指令执行指令,发出各种操作命令执行指令,发出各种操作命令控制程序输入及结果的输出控制程序输入及结果的输出总线管理总线管理处理异常情况和特殊请求处理异常情况和特殊请求1.控制器的功能控制器的功能2.运算器的功能运算器的功能实现算术运算和逻辑运算实现算术运算和逻辑运算指令控制指令控制操作控制操作控制时间控制时间控制数据加工数据加工处理中断处理中断二、二、CPU 结构框图结构框图P
2、C IR指令控制指令控制操作控制操作控制时间控制时间控制数据加工数据加工处理中断处理中断ALU 寄存器寄存器中断系统中断系统1.CPU 与系统总线与系统总线CU 时序电路时序电路寄存器寄存器ALU 中断中断 系统系统CUCPU控控制制总总线线数数据据总总线线地地址址总总线线2.CPU 的内部结构的内部结构 算术和算术和布尔逻辑布尔逻辑取反取反移位移位状态标志状态标志内内部部 数数据据总总线线寄存器寄存器CU中断中断系统系统ALU控制信号控制信号C P U1.用户可见寄存器用户可见寄存器(1)通用寄存器通用寄存器三、三、CPU 的寄存器的寄存器存放操作数存放操作数可作可作 某种寻址方式所需的某种
3、寻址方式所需的 专用寄存器专用寄存器(2)数据寄存器数据寄存器存放操作数存放操作数(满足各种数据类型)(满足各种数据类型)两个寄存器拼接存放双倍字长数据两个寄存器拼接存放双倍字长数据(3)地址寄存器地址寄存器存放地址存放地址,其位数应满足最大的地址范围,其位数应满足最大的地址范围用于特殊的寻址方式用于特殊的寻址方式 段基值段基值 栈指针栈指针(4)条件码寄存器条件码寄存器存放条件码存放条件码,可作程序分支的依据,可作程序分支的依据如如 正、负、零、溢出、进位等正、负、零、溢出、进位等2.控制和状态寄存器控制和状态寄存器(1)控制寄存器控制寄存器PC控制控制 CPU 操作操作(2)状态寄存器状态
4、寄存器状态寄存器状态寄存器其中其中 MAR、MDR、IR 用户不可见用户不可见 存放条件码存放条件码PSW 寄存器寄存器存放程序状态字存放程序状态字 PC 用户可见用户可见 3.举例举例Z8000 8086 MC 68000MARMMDRIR四、四、控制单元控制单元 CU 和中断系统和中断系统1.CU 产生全部指令的微操作命令序列产生全部指令的微操作命令序列组合逻辑设计组合逻辑设计微程序设计微程序设计硬连线逻辑硬连线逻辑存储逻辑存储逻辑2.中断系统中断系统参见参见 第篇第篇 五、五、ALU参见参见 8.4 节节参见参见 第章第章8.2 指指 令令 周周 期期一、一、指令周期的基本概念指令周期的
5、基本概念1.指令周期指令周期取出并执行一条指令所需的全部时间取出并执行一条指令所需的全部时间完成一条指令完成一条指令执行执行取指、分析取指、分析取指阶段取指阶段取指周期取指周期执行阶段执行阶段执行周期执行周期(取指、分析)(取指、分析)(执行指令)(执行指令)指令周期指令周期取指周期取指周期执行周期执行周期2.每条指令的指令周期不同每条指令的指令周期不同取指周期取指周期指令周期指令周期取指周期取指周期 执行周期执行周期指令周期指令周期NOPADD mem MUL mem取指周期取指周期执行周期执行周期指令周期指令周期3.具有间接寻址的指令周期具有间接寻址的指令周期4.带有中断周期的指令周期带有
6、中断周期的指令周期取指周期取指周期间址周期间址周期指令周期指令周期执行周期执行周期取指周期取指周期间址周期间址周期指令周期指令周期执行周期执行周期中断周期中断周期5.指令周期流程指令周期流程取指周期取指周期执行周期执行周期有间址吗?有间址吗?有中断吗?有中断吗?间址周期间址周期中断周期中断周期是是是是否否否否6.CPU 工作周期的标志工作周期的标志CPU 访存有四种性质访存有四种性质取取 指令指令取取 地址地址取取 操作数操作数存存 程序断点程序断点取指周期取指周期间址周期间址周期执行周期执行周期中断周期中断周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU 的的4个工作
7、周期个工作周期1.取指周期数据流取指周期数据流二、二、指令周期的数据流指令周期的数据流MDRCUMARPCIR存储器存储器CPU地地址址总总线线数数据据总总线线控控制制总总线线IR+1 2.间址周期数据流间址周期数据流MDRCUMARCPU地地址址总总线线数数据据总总线线控控制制总总线线PCIR存储器存储器MDR3.执行周期数据流执行周期数据流4.中断周期数据流中断周期数据流不同指令的执行周期数据流不同不同指令的执行周期数据流不同MDRCUMARCPU地地址址总总线线数数据据总总线线控控制制总总线线PC存储器存储器8.3 指指 令令 流流 水水一、如何提高机器速度一、如何提高机器速度1.提高访
8、存速度提高访存速度2.提高提高 I/O 和主机之间的传送速度和主机之间的传送速度 提高整机处理能力提高整机处理能力高速芯片高速芯片Cache多体并行多体并行I/O 处理机处理机DMA多总线多总线通道通道高速器件高速器件改进系统结构改进系统结构,开发系统的并行性开发系统的并行性中断中断3.提高运算器速度提高运算器速度高速芯片高速芯片改进算法改进算法快速进位链快速进位链二、系统的并行性二、系统的并行性时间上互相重叠时间上互相重叠2.并行性的等级并行性的等级指令级(指令之间)指令级(指令之间)(指令内部)(指令内部)过程级(程序、进程)过程级(程序、进程)两个或两个以上事件在两个或两个以上事件在 同
9、一时刻同一时刻 发生发生两个或两个以上事件在两个或两个以上事件在 同一时间段同一时间段 发生发生并行并行1.并行的概念并行的概念粗粒度粗粒度软件实现软件实现细粒度细粒度硬件实现硬件实现并发并发同时同时取指令取指令 3执行指令执行指令 3三、指令流水原理三、指令流水原理2.指令的二级流水指令的二级流水1.指令的串行执行指令的串行执行取指令取指令 取指令部件取指令部件 完成完成总有一个部件总有一个部件 空闲空闲指令预取指令预取若若 取指取指 和和 执行执行 阶段时间上阶段时间上 完全重叠完全重叠指令周期指令周期 减半减半 速度提高速度提高 1 倍倍执行指令执行指令 执行指令部件执行指令部件 完成完
10、成取指令取指令 1执行执行指令指令 1取取指令指令 2执行执行指令指令 2取取指令指令 3执行指令执行指令 3取指令取指令 2执行指令执行指令 2取指令取指令 1执行指令执行指令 1 必须等必须等 上条上条 指令执行结束,才能确定指令执行结束,才能确定 下条下条 指令的地址,指令的地址,造成时间损失造成时间损失3.影响指令流水效率加倍的因素影响指令流水效率加倍的因素(1)执行时间执行时间 取指时间取指时间(2)条件转移指令条件转移指令 对指令流水的影响对指令流水的影响 解决办法解决办法?取指令取指令部件部件指令部件指令部件缓冲区缓冲区执行指令执行指令部件部件猜测法猜测法 为了进一步提高处理速度
11、,可将指令的处为了进一步提高处理速度,可将指令的处理过程分为更细的几个阶段:理过程分为更细的几个阶段:(1)取指)取指FI(2)指令译码)指令译码 DI(3)计算操作数地址)计算操作数地址CO(4)取操作数)取操作数FO(5)执行指令)执行指令EI(6)写操作数)写操作数WO4.指令的六级流水指令的六级流水六级流水六级流水14 个时间单位个时间单位串行执行串行执行6 9 54个时间单位个时间单位完成完成 一条指令一条指令6 个时间单位个时间单位COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFO
12、EIWODIFICOFOEIWODIFICOFOEIWODIFI指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令 8指令指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14t指令指令 1 与指令与指令 4 冲突冲突指令指令 2 与指令与指令 5 冲突冲突指令指令1、指令、指令3、指令、指令 6 冲突冲突COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI指令指令 1指
13、令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令 8指令指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14t三、影响指令流水线性能的因素三、影响指令流水线性能的因素1.结构相关结构相关不同指令争用同一功能部件产生资源冲突不同指令争用同一功能部件产生资源冲突程序的相近指令之间出现某种关联程序的相近指令之间出现某种关联使指令流水出现停顿,影响流水线效率使指令流水出现停顿,影响流水线效率解决办法解决办法 停顿停顿 指令存储器和数据存储器分开指令存储器和数据存储器分开 指令预取技术指令预取技术(适用于访存周期短的情况)(适用于访存周期短的情况)2.
14、数据相关数据相关不同指令因重叠操作,可能改变操作数的不同指令因重叠操作,可能改变操作数的 读读/写写 访问顺序访问顺序 采用采用 旁路技术旁路技术解决办法解决办法 写后读相关(写后读相关(RAW)SUB R1,R2,R3ADD R4,R5,R1;(;(R2)(R3)R1;(;(R5)+(R1)R4 读后写相关(读后写相关(WAR)STA M,R2ADD R2,R4,R5;(;(R2)M 存储单元存储单元;(;(R4)+(R5)R2 写后写相关(写后写相关(WAW)后推法后推法MUL R3,R2,R1SUB R3,R4,R5;(;(R2)(R1)R3;(;(R4)(R5)R33.控制相关控制相关
15、BNE 指令必须等指令必须等CPX 指令的结果指令的结果才能判断出才能判断出是转移是转移还是顺序执行还是顺序执行LDA#0LDX#0INXCPX#NBNE MDIV#NSTA ANSADD X,DM由转移指令引起由转移指令引起3.控制相关控制相关WOEIFOCODIWOEIFODIFIFIDIFICOFIFOCODIFIWOEIFOCODIFIDIFOEIWOEIFOCOFIDICOWODIFICOFI指令指令 1指令指令 2指令指令 3指令指令 4指令指令 5指令指令 6指令指令 7指令指令15指令指令16 1 2 3 4 5 6 7 8 9 10 11 12 13 14转移损失转移损失t设
16、设 指令指令3 是转移指令是转移指令四、流水线性能四、流水线性能 1.吞吐率吞吐率 单位时间内单位时间内 流水线所完成指令流水线所完成指令 或或 输出结果输出结果 的的 数量数量 最大吞吐率最大吞吐率 实际吞吐率实际吞吐率 连续处理连续处理 n 条指令的吞吐率为条指令的吞吐率为设设 m 段的流水线各段时间为段的流水线各段时间为t tTpmax=1t tTp=m +(n-1)nt tt t2.加速比加速比 Sp m 段的段的 流水线的速度流水线的速度 与等功能的与等功能的 非流水线的速度非流水线的速度 之比之比 设流水线各段时间为设流水线各段时间为 t 完成完成 n 条指令在条指令在 m 段流水
17、线上共需段流水线上共需 T=m +(n-1)t t 完成完成 n 条指令在等效的非流水线上共需条指令在等效的非流水线上共需 T=nmt Sp=m +(n-1)nm=nmm+n-1 t t t 则则由于流水线有由于流水线有 建立时间建立时间 和和 排空时间排空时间因此各功能段的因此各功能段的 设备不可能设备不可能 一直一直 处于处于 工作工作 状态状态 流水线中各功能段的流水线中各功能段的 利用率利用率3.效率效率 mt31245312453124531245 n-1 nn-1 nn-1 nn-1 nT时间时间S空间空间空间空间S4S3S2S1(n-1)tm(m+n-1)t =mnt 流水线各段
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CPU 结构 功能 IV
限制150内