2014第4章流水计算机

上传人:mg****85 文档编号:45187465 上传时间:2018-06-15 格式:PDF 页数:145 大小:1.23MB
返回 下载 相关 举报
2014第4章流水计算机_第1页
第1页 / 共145页
2014第4章流水计算机_第2页
第2页 / 共145页
2014第4章流水计算机_第3页
第3页 / 共145页
2014第4章流水计算机_第4页
第4页 / 共145页
2014第4章流水计算机_第5页
第5页 / 共145页
点击查看更多>>
资源描述

《2014第4章流水计算机》由会员分享,可在线阅读,更多相关《2014第4章流水计算机(145页珍藏版)》请在金锄头文库上搜索。

1、1 第第4 4章章 流水技术与向量处理流水技术与向量处理 4.1 标量流水工作原理标量流水工作原理 4.2 标量流水中的障碍及控制标量流水中的障碍及控制 4.3 流水线的调度技术流水线的调度技术 4.4 先进的流水技术先进的流水技术 4.5 Pentium微处理器中的流水技术微处理器中的流水技术 4.6 向量流水技术向量流水技术 2 本章学习要求本章学习要求 掌握标量流水的性能分析及障碍的处理掌握标量流水的性能分析及障碍的处理 方法方法 掌握非线性流水调度技术掌握非线性流水调度技术 掌握向量流水机的结构特征、向量指令掌握向量流水机的结构特征、向量指令 并行性分析并行性分析 了解标量流水、超标量

2、流水、超流水及了解标量流水、超标量流水、超流水及 超长指令字计算机的基本工作原理超长指令字计算机的基本工作原理 3 提高指令执行速度的主要途径:提高指令执行速度的主要途径: (1) (1) 提高处理机的工作主频提高处理机的工作主频 (2) (2) 改进算法或优化功能部件改进算法或优化功能部件 (3) (3) 采用指令级并行技术采用指令级并行技术 三种指令级并行处理机:三种指令级并行处理机: (1) (1) 流水线处理机和超流水线流水线处理机和超流水线(Super(Super- -pipelining)pipelining) 处理机处理机 (2) (2) 超标量超标量(Superscalar)(

3、Superscalar)处理机处理机 (3) (3) 超长指令字超长指令字(VLIW: Very Long Instruction (VLIW: Very Long Instruction Word)Word)处理机处理机 4 4.1 标量流水工作原理标量流水工作原理 什么是流水线?什么是流水线? 考虑设计一个洗衣机的工作流程,假定它有三道考虑设计一个洗衣机的工作流程,假定它有三道 工序:洗涤、清洗、甩干。每个环节为工序:洗涤、清洗、甩干。每个环节为5 5分钟分钟。 需要完成的任务为需要完成的任务为3 3批,则考虑下述工作方式的批,则考虑下述工作方式的 工作效率工作效率: 第一种:串行工作方式

4、,即按照如下方式工作:第一种:串行工作方式,即按照如下方式工作: 第第1批批 洗涤洗涤 第第1批批 清洗清洗 第第1批批 甩干甩干 第第2批批 洗涤洗涤 第第2批批 清洗清洗 第第2批批 甩干甩干 第第3批批 洗涤洗涤 第第3批批 清洗清洗 第第3批批 甩干甩干 3批衣服的整个工作时间为批衣服的整个工作时间为3*3*5=45分钟分钟 5 第二种:重叠工作方式,设计三个部件,可以同时第二种:重叠工作方式,设计三个部件,可以同时 工作,每个部件只做一样工作,操作方式如下图:工作,每个部件只做一样工作,操作方式如下图: 第第1批洗涤批洗涤 第第1批清洗批清洗 第第1批甩干批甩干 第第2批洗涤批洗涤

5、第第2批清洗批清洗 第第2批甩干批甩干 第第3批洗涤批洗涤 第第3批清洗批清洗 第第3批甩干批甩干 T t t t t t 3 3批衣服的工作时间为批衣服的工作时间为5*5=255*5=25分钟,节省分钟,节省2020分钟。分钟。 6 引出下述关于洗衣机工作的有关性能特点:引出下述关于洗衣机工作的有关性能特点: 吞吐率:单位时间内完成的任务数吞吐率:单位时间内完成的任务数TP=n/TTP=n/T 加速比:串行方式与流水线方式的时间比:上述为加速比:串行方式与流水线方式的时间比:上述为 45/25=1.845/25=1.8 效率:即洗衣机的利用率,上述洗衣机的效率是效率:即洗衣机的利用率,上述洗

6、衣机的效率是 9/15=3/5=60%9/15=3/5=60% 将一条指令的执行分为几个阶段,让几条指令按重将一条指令的执行分为几个阶段,让几条指令按重 叠或流水方式工作,以提高程序的执行速度。这就叠或流水方式工作,以提高程序的执行速度。这就 引出了计算机中的流水线技术。引出了计算机中的流水线技术。 7 一、指令的重叠解释与先行控制一、指令的重叠解释与先行控制 计算机系统中广泛存在着重叠工作方式计算机系统中广泛存在着重叠工作方式 指令的解释方式一般只有三种:顺序、指令的解释方式一般只有三种:顺序、 重叠和流水重叠和流水 重叠和流水给指令的执行带来了高的吞重叠和流水给指令的执行带来了高的吞 吐率

7、和加速比,同时也给系统增加了障吐率和加速比,同时也给系统增加了障 碍碍 8 指令的解释过程指令的解释过程 ALU LOAD/STORE IF 取指取指 取指取指 ID 译码、读寄存器堆译码、读寄存器堆 译码、读寄存器堆译码、读寄存器堆 EX 执行执行 计算访存有效地址计算访存有效地址 MEM - 访存(读或写)访存(读或写) WB 结果写回寄存器堆结果写回寄存器堆 将读出的数据写入寄存器堆将读出的数据写入寄存器堆 9 指令的重叠解释方式指令的重叠解释方式 1 1、顺序执行方式、顺序执行方式 一条指令的执行过程:一条指令的执行过程:取指取指分析分析执行执行 执行执行n n条指令所用的时间为:条指

8、令所用的时间为: 如每段时间都为如每段时间都为t t,则执行,则执行n n条指令所用的时间为:条指令所用的时间为:T=3ntT=3nt 主要优点:控制简单,节省设备。主要优点:控制简单,节省设备。 主要缺点:执行指令的速度慢,功能部件的利用率很低。主要缺点:执行指令的速度慢,功能部件的利用率很低。 niiiitttT 1()执行分析取指令取指令k 分析k 执行k 取指令k+1 分析k+1 执行k+1 10 2 2、重叠执行方式、重叠执行方式( (最简单的流水线方式最简单的流水线方式) ) 如果每个过程的时间相等,则执行如果每个过程的时间相等,则执行n n条指令的条指令的 时间为:时间为:T=(

9、1+2n)tT=(1+2n)t 主要优点:主要优点: 指令的执行时间缩短指令的执行时间缩短 功能部件的利用率明显提高功能部件的利用率明显提高 主要缺点:主要缺点: 需要增加一个需要增加一个IBRIBR 取指 分析 执行 取指 分析 执行 取指 分析 执行 11 3、更高重叠度的重叠解释方式、更高重叠度的重叠解释方式 把取第把取第k+1条指令提前到分析第条指令提前到分析第k条指令同时执行条指令同时执行 如果三个过程的时间相等,执行如果三个过程的时间相等,执行n n条指令的时间条指令的时间 为:为:T=(2+n)tT=(2+n)t 理想情况下同时有三条指令在执行理想情况下同时有三条指令在执行 处理

10、机的结构要作比较大的改变,必须采用先行处理机的结构要作比较大的改变,必须采用先行 控制方式控制方式 取指k+2 分析k+2 执行k+2 取指k+1 分析k+1 执行k+1 取指k 分析k 执行k 12 1访存冲突访存冲突(分析与取指均要访问主存分析与取指均要访问主存) 解决:解决: 1)采用两个独立编制的存贮器采用两个独立编制的存贮器 数据数据/指令指令 但增加了复杂性但增加了复杂性 2)采用多体交叉存贮器采用多体交叉存贮器 3)指令缓冲寄存器指令缓冲寄存器IBR 2功能部件的冲突功能部件的冲突 解决:解决:设置独立的分析部件和执行部件设置独立的分析部件和执行部件 重叠方式对计算机组成的要求重

11、叠方式对计算机组成的要求 13 3同步同步 分析与执行所需的时间不同分析与执行所需的时间不同,要求的是一次要求的是一次 重叠重叠 一次重叠:一次重叠:任何时间都是任何时间都是“分析分析K+1”与与 “执行执行K”的重叠的重叠 相邻两条指令的重叠相邻两条指令的重叠 分析分析K 执行执行K 分析分析K+1 执行执行K+1 T=(n+1)t 14 4转移转移 无条件转移无条件转移/条件转移条件转移当转移成功时当转移成功时,重叠预重叠预 取无效取无效,变为顺序执行变为顺序执行 应尽可能不使用或少使用条件转移指令应尽可能不使用或少使用条件转移指令 5相关相关 邻近指令之间出现某种关联邻近指令之间出现某种

12、关联,为避免出错而不为避免出错而不 能同时执行的现象能同时执行的现象。 局部性相关局部性相关、全局性相关全局性相关 15 16 先行控制技术先行控制技术 基本思想:使分析和执行部件分别连续不断地运行,使部基本思想:使分析和执行部件分别连续不断地运行,使部 件空闲状态减至最低。件空闲状态减至最低。 (a)重叠方式 分析分析k+1 分析分析k 执行执行k 执行执行k+1 分析分析k+2 执行执行k+2 分析部件空闲分析部件空闲 执行部件空闲执行部件空闲 分析分析k+1 分析分析k 执行执行k 分析分析k+2 (b)先行控制 执行执行k+1 执行执行k+2 niiniinittTttttT111 2

13、1),max(执分先执执分分重17 关键:关键:缓冲技术预处理技术缓冲技术预处理技术 缓冲技术缓冲技术:在工作速度不固定的两个功能部件:在工作速度不固定的两个功能部件 之间设置缓冲栈,用以平滑它们的工作之间设置缓冲栈,用以平滑它们的工作 预处理技术预处理技术:把进入运算器的指令都预处理成:把进入运算器的指令都预处理成 R R- -R R型指令,与缓冲技术相结合,为进入运算型指令,与缓冲技术相结合,为进入运算 器的指令准备好所需的全部操作数器的指令准备好所需的全部操作数 先行控制方式使运算器可专注于运算,从而可先行控制方式使运算器可专注于运算,从而可 大幅度提高程序的执行速度大幅度提高程序的执行

14、速度 硬件要求:硬件要求:增设指令缓冲栈增设指令缓冲栈,消除取指过程;,消除取指过程; 增设数据缓冲栈增设数据缓冲栈,保证不同指令的读、写操作,保证不同指令的读、写操作 并行;并行;增设先行操作栈增设先行操作栈,保证执行部件能连续,保证执行部件能连续 执行。执行。 18 工作原理工作原理 主主 存存 存存 控控 指令分析器指令分析器 先行先行 指令栈指令栈 先行先行读读 数栈数栈 后行后行写写 数栈数栈 执行执行 部件部件 先行先行操作栈操作栈 数据缓冲栈数据缓冲栈 栈的深度要求:栈的深度要求:D D指缓指缓D D操作操作 D D读栈读栈 D D写栈写栈 19 二、标量流水线的表示方法二、标量

15、流水线的表示方法 基本思想:基本思想:流水是重叠的进一步延伸,流水是重叠的进一步延伸, 使指令解释过程进一步细化,提高各部使指令解释过程进一步细化,提高各部 件的利用率,以提高指令执行速度。件的利用率,以提高指令执行速度。 流水线的表示方法:流水线的表示方法:连接图、时空图、连接图、时空图、 预约表预约表 20 1 1、简单流水线的连接图表示、简单流水线的连接图表示 流水线的每一个阶段称为流水段、流水线流水线的每一个阶段称为流水段、流水线 阶段、阶段、流水功能段流水功能段、功能段、流水级、流水、功能段、流水级、流水 节拍等。一个流水阶段与另一个流水阶段相节拍等。一个流水阶段与另一个流水阶段相 连形成流水线。连形成流水线。 有些复杂指令,在执行阶段也采用流水线有些复杂指令,在执行阶段也采用流水线 方式工作,称为操作流水线。方式工作,称为操作流水线。 取指取指 访存访存 执行执行 译码译码 写回写回 IF ID EX MEM WB S1 S2 S3 S4 S5 输入输入 输出输出 21 一种指令流水线一种指令流水线 一般一般4 4至至1212个流水段,等于及大于个流水段,等于及大于8 8个流水段的称为超流个流水段的称为超流 水线处理机水线处理机 2 2、流水线的时空图、流水线的时空图

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

当前位置:首页 > 生活休闲 > 科普知识

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