计算机组成原理(CPU的结构和功能)

上传人:平*** 文档编号:47646594 上传时间:2018-07-03 格式:PPT 页数:45 大小:845.86KB
返回 下载 相关 举报
计算机组成原理(CPU的结构和功能)_第1页
第1页 / 共45页
计算机组成原理(CPU的结构和功能)_第2页
第2页 / 共45页
计算机组成原理(CPU的结构和功能)_第3页
第3页 / 共45页
计算机组成原理(CPU的结构和功能)_第4页
第4页 / 共45页
计算机组成原理(CPU的结构和功能)_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《计算机组成原理(CPU的结构和功能)》由会员分享,可在线阅读,更多相关《计算机组成原理(CPU的结构和功能)(45页珍藏版)》请在金锄头文库上搜索。

1、第八章 CPU 的结构和功能8.1 CPU 的结构8.3 指令流水8.2 指令周期8.4 中断系统8.1 CPU 的结构一、 CPU 的功能取指令分析指令执行指令,发出各种操作命令控制程序输入及结果的输出总线管理处理异常情况和特殊请求1. 控制器的功能2. 运算器的功能实现算术运算和逻辑运算指令控制操作控制时间控制数据加工处理中断二、CPU 结构框图PC IR指令控制操作控制时间控制数据加工处理中断ALU 寄存器中断系统1. CPU 与系统总线CU 时序电路寄存器ALU中断系统CUCPU控制总线数据总线地址总线8.18.12. CPU 的内部结构算术和 布尔逻辑取反移位状态标志内部 数据总线C

2、 P U寄存器CU中断 系统ALU控制信号8.18.11. 用户可见寄存器(1) 通用寄存器三、 CPU 的寄存器存放操作数可作 某种寻址方式所需的 专用寄存器(2) 数据寄存器存放操作数(满足各种数据类型)两个寄存器拼接存放双倍字长数据(3) 地址寄存器存放地址,其位数应满足最大的地址范围用于特殊的寻址方式 段基值 栈指针(4) 条件码寄存器存放条件码,可作程序分支的依据如 正、负、零、溢出、进位等8.18.12. 控制和状态寄存器(1) 控制寄存器PC控制 CPU 操作(2) 状态寄存器状态寄存器其中 MAR MDR IR 用户不可见 存放条件码PSW 寄存器存放程序状态字PC 用户可见

3、3. 举例Z8000 8086 MC 68000MARMMDRIR8.18.1四、 控制单元 CU 和中断系统1. CU 产生全部指令的微操作命令序列组合逻辑设计微程序设计硬连线逻辑存储逻辑2. 中断系统参见 第四篇 五、ALU参见 8.4参见 第六章8.18.18.2 指 令 周 期一、 指令周期的基本概念1 . 指令周期取出并执行一条指令所需的全部时间完成一条指令 执行取指、分析取指阶段 取指周期执行阶段 执行周期 (取指、分析)(执行指令)指令周期取指周期执行周期2. 每条指令的指令周期不同取指周期 指令周期取指周期 执行阶段指令周期取指周期执行周期指令周期NOPADD mem MUL

4、mem8.28.23. 具有间接寻址的指令周期4. 带有中断周期的指令周期取指周期间址周期指令周期执行周期取指周期间址周期指令周期执行周期中断周期8.28.25. 指令周期流程取指周期执行周期有间址吗?有中断吗?间址周期中断周期是是否否8.28.26. CPU 工作周期的标志CPU 访存有 4 种性质取 指令取 地址取 操作数存 程序断点取指周期间址周期执行周期中断周期FE DIND DINT DCLK1FE1IND1EX1INTEX DCPU 的4个工作周期8.28.21. 取指周期数据流二、 指令周期的数据流MDRCUMARPCIR存储器CPU地址总线数据总线控制总线IR+1 8.28.2

5、2. 间址周期数据流MDRCUMARCPU地址总线数据总线控制总线PCIR存储器MDR8.28.23. 执行周期数据流4 . 中断周期数据流不同指令的执行周期数据流不同MDRCUMARCPU地址总线数据总线控制总线PC 存储器8.28.28.3 指 令 流 水一、如何提高机器速度1. 提高访存速度2. 提高 I/O 和主机之间的传送速度 提高整机处理能力高速芯片Cache多体并行多总线DMAI/O 处理机通道高速器件改进系统结构 ,开发系统的并行性中断3. 提高运算器速度高速芯片改进算法快速进位链二、系统的并行性时间上互相重叠2. 并行性的等级指令级(指令之间)过程级(程序、进程)两个或两个以

6、上事件在 同一时刻 发生两个或两个以上事件在 同一时间段 发生 并行1. 并行的概念粗粒度软件实现细粒度硬件实现并发同时8.38.3取指令 3执行指令 3三、指令流水原理2. 指令的二级流水1. 指令的串行执行取指令 取指令部件 完成总有一个部件 空闲指令预取若 取指 和 执行 阶段时间上 完全重叠指令周期 减半 速度提高 1 倍执行指令 执行指令部件 完成取指令 1执行指令 1取指令 2执行指令 2取指令 3执行指令 3取指令 2执行指令 2取指令 1执行指令 18.38.3必须等 上条 指令执行结束,才能确定 下条 指令的地址 造成时间损失3. 影响指令流水效率加倍的因素(1) 执行时间

7、取指时间(2) 条件转移指令 对指令流水的影响解决办法 ?取指令 部件指令部件 缓冲区执行指令 部件猜测法8.38.34. 指令的六级流水六级流水14 个时间单位串行执行6 9 54 时间单位完成 一条指令6 个时间单位COFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFICOFOEIWODIFI COFOEIWODIFICOFOEIWODIFI指令 1 指令 2指令 3指令 4指令 5指令 6指令 7指令 8指令 91 2 3 4 5 6 7 8 9 10 11 12 13 14t8.38.3指令 1

8、与指令 4 冲突指令 2 与指令 5 冲突指令1、指令3、指令 6 冲突 COFOEIWODIFI COFOEIWODIFI COFOEIWODIFICOFOEIWODIFI COFOEIWODIFI COFOEIWODIFICOFOEIWODIFI COFOEIWODIFI COFOEIWODIFI指令 1 指令 2 指令 3 指令 4 指令 5 指令 6 指令 7 指令 8 指令 91 2 3 4 5 6 7 8 9 10 11 12 13 14t三、影响指令流水性能的因素1. 访存冲突解决办法 指令存储器和数据存储器分开 指令预取技术 (适用于访存周期短的情况)8.38.32. 相关问题

9、程序的相近指令之间出现某种关联使指令流水出现停顿 影响流水线效率(1) 控制相关8.38.3WOEIFOCODIWOEIFODIFIFIDIFICOFIFOCODIFIWOEIFOCODIFIDIFOEIWOEIFOCOFIDICOWODIFICOFI指令 1指令 2指令 3指令 4指令 5指令 6指令 7指令15指令161 2 3 4 5 6 7 8 9 10 11 12 13 14转移损失t设 指令3 是转移指令BNE 指令必须等CPX 指令的结果才能判断出是转移还是顺序执行LDA # 0LDX # 0INXCPX # NBNE MDIV # NSTA ANSADD X, DM(2) 数据

10、相关几条相近的指令间,共用 同一存储单元 或 同一寄存器 时,会出现 数据相关ADD R1,R2如:SUB R1,R3采用 旁路技术解决办法寄存器组锁存器锁存器ALU8.38.3四、流水线的多发技术 1. 超标量技术 每个时钟周期内可 并发多条独立指令 不能调整 指令的 执行顺序配置多个功能部件 通过编译优化技术,把可并行执行的指令搭配起来IF ID EX WR0 1 2 3 4 5 6 7 8 9 10 11 12 13t8.38.32. 超流水技术 在 一个时钟周期 内 再分段 ( 3 段) 不能调整 指令的 执行顺序在一个时钟周期内 一个功能部件使用多次( 3 次)靠编译程序解决优化问题

11、流水线速度是原来速度的 3 倍IF ID EX WR0 1 2 3 4 5 6 7 8 9 10 11 12 13t8.38.33. 超长指令字 采用 多个处理部件具有 多个操作码字段 的 超长指令字(可达几百位) 由编译程序 挖掘 出指令间 潜在 的 并行性,将 多条 能 并行操作 的指令组合成 一条IF ID EX WR0 1 2 3 4 5 6 7 8 9 10 11 12 13t8.38.3五、流水线结构1. 指令流水线结构完成一条指令分 7 段, 每段需一个时钟周期若 流水线不出现断流1 个时钟周期出 1 结果不采用流水技术7 个时钟周期出 1 结果理想情况下,7 级流水 的速度是不

12、采用流水技术的 7 倍地址形成部件指令译码部件取操作数部件取指令部件操作执行部件回写结果部件修改指令指针部件锁存锁存锁存锁存锁存锁存8.38.32. 运算流水线完成 浮点加减 运算 可分对阶、尾数求和、规格化 三段分段原则 每段 操作时间 尽量 一致锁存器对阶功能部件第一段尾数加部件锁存器第二段规格化部件锁存器第三段8.38.38.4 中断系统一、概述1. 引起中断的各种因素(1) 人为设置的中断(2) 程序性事故如 转管指令溢出、操作码不能识别、除法非法(5) 外部事件(4) I/O 设备(3) 硬件故障用 键盘中断 现行程序转管指令管理程序2. 中断系统需解决的问题(1) 各中断源 如何

13、向 CPU 提出请求 ?(2) 各中断源 同时 提出 请求 怎么办 ?(5) 如何 寻找入口地址 ?(4) 如何 保护现场 ?(3) CPU 什么 条件、什么 时间、以什么 方式响应中断 ?(6) 如何 恢复现场,如何 返回 ?(7) 处理中断的过程中又 出现新的中断 怎么办 ?硬件 软件8.48.4二、中断请求标记和中断判优逻辑1. 中断请求标记 INTR一个请求源 一个 INTR 中断请求标记触发器多个INTR 组成 中断请求标记寄存器INTR 分散 在各个中断源的 接口电路中INTR 集中 在 CPU 的中断系统 内12345n掉电过热阶上溢内存读写校验错非法除法键盘打印机8.48.42

14、. 中断判优逻辑 分散 在各个中断源的 接口电路中 链式排队器 集中 在 CPU 内(1) 硬件实现(排队器)111&1&1&参见 第五章INTR1INTR2INTR3INTR4INTR1 、 INTR2 、 INTR3 、 INTR4 优先级 按 降序 排列INTP1INTP2INTP3INTP48.48.4A、B、C 优先级按 降序 排列(2) 软件实现(程序查询)否是否 A 请求 ?是否 B 请求 ?是否 C 请求 ?转 A 的服务程序入口地址转 B 的服务程序入口地址转 C 的服务程序入口地址是是是否否8.48.4三、中断服务程序入口地址的寻找1. 硬件向量法入口地址 200入口地址 300入口地址 40012 H13 H14 H主存12 H13 H14 HJMP 200JMP 300JMP

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

当前位置:首页 > 中学教育 > 教学课件

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