版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、5.1 CPU 的结构的结构5.3 指令流水指令流水5.2 指令周期指令周期一、一、 CPU 的功能的功能取指令取指令分析指令分析指令执行指令,发出各种操作命令执行指令,发出各种操作命令控制程序输入及结果的输出控制程序输入及结果的输出总线管理总线管理处理异常情况和特殊请求处理异常情况和特殊请求1. 控制器的功能控制器的功能2. 运算器的功能运算器的功能实现算术运算和逻辑运算实现算术运算和逻辑运算指令控制指令控制操作控制操作控制时间控制时间控制数据加工数据加工处理中断处理中断二、二、CPU 结构框图结构框图PC IR指令控制指令控制操作控制操作控制时间控制时间控制数据加工数据加工处理中断处理中断
2、ALU 寄存器寄存器中断系统中断系统1. CPU 与系统总线与系统总线CU 时序电路时序电路寄存器寄存器ALU 中断中断 系统系统CUCPU控制总线控制总线数据总线数据总线地址总线地址总线2. CPU 的内部结构的内部结构 算术和算术和布尔逻辑布尔逻辑取反取反移位移位状态标志状态标志内部内部 数据总线数据总线CPU寄存器寄存器CU中断中断系统系统ALU控制信号控制信号1. 用户可见寄存器用户可见寄存器(1) 通用寄存器通用寄存器三、三、 CPU 的寄存器的寄存器存放操作数存放操作数可作可作 某种寻址方式所需的某种寻址方式所需的 专用寄存器专用寄存器(2) 数据寄存器数据寄存器存放操作数存放操作
3、数(满足各种数据类型)(满足各种数据类型)两个寄存器拼接存放双倍字长数据两个寄存器拼接存放双倍字长数据(3) 地址寄存器地址寄存器存放地址存放地址,其位数应满足最大的地址范围,其位数应满足最大的地址范围用于特殊的寻址方式用于特殊的寻址方式 段基值段基值 栈指针栈指针(4) 条件码寄存器条件码寄存器存放条件码存放条件码,可作程序分支的依据,可作程序分支的依据如如 正、负、零、溢出、进位等正、负、零、溢出、进位等2. 控制和状态寄存器控制和状态寄存器(1) 控制寄存器控制寄存器PC控制控制 CPU 操作操作(2) 状态寄存器状态寄存器状态寄存器状态寄存器其中其中 MAR MDR IR 用户不可见用
4、户不可见 存放条件码存放条件码PSW 寄存器寄存器存放程序状态字存放程序状态字 PC 用户可见用户可见 3. 举例举例Z8000 8086 MC 68000MARMMDRIR四、四、 控制单元控制单元 CU 和中断系统和中断系统1. CU 产生全部指令的微操作命令序列产生全部指令的微操作命令序列组合逻辑设计组合逻辑设计微程序设计微程序设计硬连线逻辑硬连线逻辑存储逻辑存储逻辑2. 中断系统中断系统五、五、ALU一、一、 指令周期的基本概念指令周期的基本概念1 . 指令周期指令周期取出并执行一条指令所需的全部时间取出并执行一条指令所需的全部时间完成一条指令完成一条指令执行执行取指、分析取指、分析取
5、指阶段取指阶段取指周期取指周期执行阶段执行阶段执行周期执行周期(取指、分析)(取指、分析)(执行指令)(执行指令)指令周期指令周期取指周期取指周期执行周期执行周期2. 每条指令的指令周期不同每条指令的指令周期不同取指周期取指周期指令周期指令周期取指周期取指周期 执行阶段执行阶段指令周期指令周期取指周期取指周期执行周期执行周期指令周期指令周期NOPADD mem MUL mem3. 具有间接寻址的指令周期具有间接寻址的指令周期4. 带有中断周期的指令周期带有中断周期的指令周期取指周期取指周期间址周期间址周期指令周期指令周期执行周期执行周期取指周期取指周期间址周期间址周期指令周期指令周期执行周期执
6、行周期中断周期中断周期5. 指令周期流程指令周期流程取指周期取指周期执行周期执行周期有间址吗?有间址吗?有中断吗?有中断吗?间址周期间址周期中断周期中断周期是是是是否否否否6. CPU 工作周期的标志工作周期的标志CPU 访存有访存有 4 种性质种性质取取 指令指令取取 地址地址取取 操作数操作数存存 程序断点程序断点取指周期取指周期间址周期间址周期执行周期执行周期中断周期中断周期FEDINDDINTDCLK1FE1IND1EX1INTEXDCPU 的的4个工作周期个工作周期1. 取指周期数据流取指周期数据流二、二、 指令周期的数据流指令周期的数据流MDRCUMARPCIR存储器存储器CPU地
7、址总线地址总线数据总线数据总线控制总线控制总线IR+1 2. 间址周期数据流间址周期数据流MDRCUMARCPU地址总线地址总线数据总线数据总线控制总线控制总线PCIR存储器存储器MDR3. 执行周期数据流执行周期数据流4 . 中断周期数据流中断周期数据流不同指令的执行周期数据流不同不同指令的执行周期数据流不同MDRCUMARCPU地址总线地址总线数据总线数据总线控制总线控制总线PC存储器存储器一、如何提高机器速度一、如何提高机器速度1. 提高提高访存速度访存速度2. 提高提高 I/O 和主机之间的和主机之间的传送速度传送速度 提高提高整机处理能力整机处理能力高速芯片高速芯片Cache多体并行
8、多体并行多总线多总线DMAI/O 处理机处理机通道通道高速器件高速器件改进系统结构改进系统结构 ,开发系统的并行性,开发系统的并行性中断中断3. 提高提高运算器速度运算器速度高速芯片高速芯片改进算法改进算法快速进位链快速进位链二、系统的并行性二、系统的并行性时间上互相重叠时间上互相重叠2. 开发并行性的方法开发并行性的方法时间并行时间并行:空间并行空间并行:两个或两个以上事件在两个或两个以上事件在 同一时刻同一时刻 发生发生两个或两个以上事件在两个或两个以上事件在 同一时间段同一时间段 发生发生并行并行1. 并行的概念并行的概念设置多个独立的部件设置多个独立的部件,独立工作独立工作超标量超标量
9、,绝对绝对 采用流水线采用流水线相对相对并发并发同时同时取指令取指令 3执行指令执行指令 3三、指令流水原理三、指令流水原理2. 指令的二级流水指令的二级流水1. 指令的串行执行指令的串行执行取指令取指令 取指令部件取指令部件 完成完成总有一个部件总有一个部件 空闲空闲简单的指令流水简单的指令流水,也叫做也叫做”重叠重叠”将指令的工作过程合理的分解为几个步骤将指令的工作过程合理的分解为几个步骤- 指令流水指令流水执行指令执行指令 执行指令部件执行指令部件 完成完成取指令取指令 1执行执行指令指令 1取取指令指令 2执行执行指令指令 2取取指令指令 3执行指令执行指令 3取指令取指令 2执行指令
10、执行指令 2取指令取指令 1执行指令执行指令 1 用于描述流水线的工作过程四、四、 时空图时空图求阶求阶差差1对阶对阶1求阶求阶差差2对阶对阶2尾数尾数加加1求阶求阶差差3对阶对阶3尾数尾数加加2求阶求阶差差4规格规格化化1对阶对阶4尾数尾数加加3求阶求阶差差5规格规格化化2对阶对阶5尾数尾数加加4规格规格化化3尾数尾数加加5规格规格化化4规格规格化化50 t1 t2 t3 t4 t5 t6 t7 t8求阶差求阶差对对 阶阶尾数加尾数加规格化规格化空空 间间时时 间间例如例如 : 完成一条指令分完成一条指令分 7 段段,每段需,每段需1个个 时钟周期时钟周期若若 流水线不出现断流流水线不出现断
11、流1 个时钟周期出个时钟周期出 1 结果结果不采用流水技术不采用流水技术7 个时钟周期出个时钟周期出 1 结果结果地址形成部件地址形成部件指令译码部件指令译码部件取操作数部件取操作数部件取指令部件取指令部件操作执行部件操作执行部件回写结果部件回写结果部件修改指令指针部件修改指令指针部件锁存锁存锁存锁存锁存锁存锁存锁存锁存锁存锁存锁存l保证效率l任务、子任务(功能部件)l缓冲寄存器l功能部件的划分原则l“装入时间”和“排空时间”五、使用流水线注意的问题五、使用流水线注意的问题六、流水线的分类六、流水线的分类一)线性和非线性流水线 1、线性流水线 功能段串联,任务从一端流入从另一端流出,每个功能段
12、流过一次且仅一次。 2、非线性流水线 功能段除了有串行的连接之外,还有反馈回路。S1S2S3连接图连接图 3、非线性流水线的表示 1)连接图已不能准确描述 2)使用“预约表”S1S2S3t功能段功能段 1 2 3 4 X X X X S1S2S3 3)可能发生冲突-调度YY 二)流水线的级别 1、处理机流水线 两个或两个以上的处理机串行连接起来 2、指令流水线 把指令分解为多个子过程对应流水线中的功能部件。 3、功能部件流水线 在每个功能部件内部采用流水线。 三)单功能和多功能流水线 1、单功能流水线 只完成一种固定功能的流水线 2、指令流水线 各功能段可以进行不同的连接,实现不同的功能例:浮
13、点加/定点乘 输入输入求阶差求阶差对阶对阶尾数加尾数加规格化规格化尾数乘尾数乘累加累加输出输出求阶差求阶差对阶对阶尾数加尾数加规格化规格化输入输入尾数乘尾数乘累加累加输出输出 四)静态和动态流水线 1、静态流水线 1)多功能流水线 2)按照一种方式连接 3)当此种方式的所有任务都流出 后,才能进行新的连接 2、动态流水线l 1)多功能流水线l 2)按照多种方式连接l 3)当此种方式的所有任务还没有完l 全流出后,就可以进行新的连接l 4)条件:各功能段不能有冲突 1、吞吐率 (TP) 1)单位时间内流水 线完成的任务数量*tTk =k+(n-1)*t 2)公式 TP = n / Tk Tk =
14、(k+n-1)*t 2、加速比 (S) 1)完成一批任务,不 使用流水线的时间 (T0)与使用流水 线的时间(Tk)之 比。 2)公式 S = T0 / Tk T0 = k n*tTk =(k+n-1)*t 3、效率 (E)1)N个任务占用的时空区与总的时空区之比。 2)公式 E = T0 / k*Tk T0 = k n*tTk =(k+n-1)*t1、已知:单功能4段动态线性流水线,完成浮 点运算 Z=A+B+C+D+E+F+G +H, 求:TP,S,E1111222233334444555566667777 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2、已知:
15、多功能8段静态线性流水线,完成浮 点运算 Z=A*B+C*D+E*F+G *H, 求:TP,S,E1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 201234567123412345675675675671234567输入输入求阶差求阶差对阶对阶尾数加尾数加规格化规格化尾数乘尾数乘累累 加加输输 出出1、由于反馈的存在,任务在流水线中会出现 “冲突”现象。t功能段功能段 1 2 3 4 X X X X S1S2S3YYS1S2S32、要解决“冲突”,就要进行流水线的“调度”2、预约表的作用3、非线性流水线的冲突 启动距离:连续输入两个任务之间的间
16、隔。 禁止启动距离:输入两个任务时,使流水线 在某个地方产生冲突的时间间隔 启动距离启动距离 3启动距离启动距离 2启动距离启动距离 5启动距离启动距离 1,7启动循环:不发生冲突的以循环数列形式 表现的启动距离 例如(1,7)恒定循环:只有一个启动距离的启动循环 例如(5)平均启动距离:所有启动距离相加除以个数禁止向量:所有禁止启动距离组合一起形成 的数列3、非线性流水线的冲突如何求禁止向量? 1)根据预约表 2)将每一行中任意两个“ X ”间的 距离去掉重复的,组成的数列例: (3,4,6)1)求出禁止向量2)根据禁止向量求出“冲突向量” (C) (1)冲突向量由一组二进制数组成 (2)冲突向量的位数(M)由禁止向量 中最大的数字决定 (3)将禁止向量中出现的数字对应冲突 向量的位,使其值“1” 例:禁止向量(3,4,6) 则 C=(101100) (初始冲突向量)4、无冲突调度(求出最短的启动距离)3)由冲突向量构造“状态图” (1)状态图用来反映新任务输入时,功能 段冲突的变化 (2)方法: 将初始冲突向量右移 如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度旅游大巴车租赁与导游讲解服务协议3篇
- 二零二四全新起重机转让与安全培训及配件供应协议下载2篇
- 二零二四年二手挖掘机买卖合同与市场调研协议3篇
- 2025年度离婚协议书中的知识产权归属约定4篇
- 2025年度商业地产场地租赁协议4篇
- 专业打蜡施工服务协议样本一
- 2025年度高端设备试用及反馈协议范本4篇
- 2025年度插班生入校教育资助协议范本4篇
- 2025年度环保材料货款抵押采购合同范本4篇
- 2025年度高端酒店客房管理服务合同范本4篇
- 深圳2024-2025学年度四年级第一学期期末数学试题
- 中考语文复习说话要得体
- 《工商业储能柜技术规范》
- 华中师范大学教育技术学硕士研究生培养方案
- 医院医学伦理委员会章程
- xx单位政务云商用密码应用方案V2.0
- 风浪流耦合作用下锚泊式海上试验平台的水动力特性试验
- 高考英语语法专练定语从句含答案
- 有机农业种植技术操作手册
- 【教案】Unit+5+Fun+Clubs+大单元整体教学设计人教版(2024)七年级英语上册
- 2020年的中国海外工程示范营地申报材料及评分标准
评论
0/150
提交评论