【教学课件】第三章流水线技术.ppt
《【教学课件】第三章流水线技术.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第三章流水线技术.ppt(74页珍藏版)》请在三一办公上搜索。
1、第三章 流水线技术,1,3.1流水线的基本概念3.2流水线的时空图及性能分析3.3流水线的相关3.4MIPS R4000流水线计算机,Fallacy,Say,multiprocessors are a silver bullet.,2,The switch to multiple processors per chip around 2005 did not come from some breakthrough that dramatically simplified parallel programming or made it easy to build multicore comput
2、ers.The reason the change occurred is that there was no other option due to the ILP walls and power walls.Multiple processors per chip do not guarantee,3,lower power,its certainly possible to design a multicore chip that uses more power.The potential is just that its possible to continue to improve
3、performance by replacing a high-clock-rate,inefficient core with several lower-clock-rate,efficient cores.As technology improves to shrink transistors,this can shrink both capacitance and the supply voltage a bit so that we can get a modest increase in the number of cores per generation.For example,
4、for the last few years,Intel has been adding two cores per generation.,4,In fact,in nowadays,performance is now a programmers burden.The La-Z-Boy programmer era of relying on hardware designers to make their programs go faster without lifting a finger is officially over.If programmers want their pro
5、grams to go faster with each generation,they must make their programs more parallel.,3.1 流水线的基本概念,一指令的执行方式1.一条指令执行的所需过程:1)取指令:根据PC(指令计数器)从M(存储器)取出指令送到IR(指令寄存器)2)析指:译出指令的操作性质、寻址方式,取操作数3)执行:对操作数进行处理,主要涉及ALU(算术逻辑运算部件),存结果,5,3.1.1有关基本概念,2.对指令执行的几种方式 1)串行执行当前一条指令的各过程段全部完成后,才从存储器取出下一条指令,6,问题?,3)指令重叠执行:第i条
6、指令的执行与第i+1条的析指及第i+2条的取指重叠。,7,注意:重叠解释并不能加快一条指令的实现,但能加快一段程序的解释。,8,3.重叠方式中所需时间表达式及所需时间计算 1)条件:设一条指令分为三个过程段,各过程段分别用t取、t析、t执表示。执行n条指令,分别采用顺序执行、重叠执行。,2)分别列出上述两种执行方式所需时间表达式串行执行 n*(t取+t析+t执)重叠执行 t取+(t析,t取)max+(n-2)*(t取,t析,t执)max+(t执,t析)max+t执,3)例子 当n=200,t取=3t,t析=4t,t执=5t时,分别计算上述两种执行方式的时间。串行执行:200(3+4+5)=24
7、00t重叠:3+4+(200-2)5+5+5=1007t,9,重叠方式需要解决的问题问题1:为了实现取指、分析指令、执行指令同时进行,需要有对应的独立部件。问题2:尽量缩短各个功能部件的运行速度,使得大致相等,避免在重叠中相互等待。问题3:主存访问冲突。例如,取指令k+1时需访存,分析指令k时可能也需要取操作数访存。,10,解决访存冲突,主要有3种解决办法:将主存分为两个独立编址的存储器:指令存储器和数据存储器,CPU可分别独立访问。低位交叉存取方式:可并行访问不在同一个存储体中的指令或数据。,11,3)指令预取:在重叠操作中,当前一条指令在执行过程中就需要提前取出后面的指令进行相应处理,这种
8、提前取出后继指令进行相应处理,称为先行(预取)。,PowerPC内核E200z3的结构如图所示。Instruction fetch unit 将32或16位指令从存储单元预取到指令缓存单元。每一时钟Instruction fetch unit 将读取64位(即2条32位指令或4条16位指令)指令进入缓存buffer中等待解码单元处理。而这些buffer一共有六个,最多可以保存六条指令。,12,可能的问题:如果将执行的指令k是跳转指令,则指令k+1无效,需重新取指。,二、流水线定义,指令流水线是由一系列串联的流水段(级)构成,每个流水段完成指令的一个操作步骤。各个流水段之间设置流水线寄存器以暂存
9、上个流水段的处理结果。,若某个子过程所需时间较长,还可以继续细分为更小的子过程。比如,浮点加法流水线把流水线技术应用于运算的执行过程,就形成了运算操作流水线,也称为部件级流水线。把浮点加法的全过程分解为求阶差、对阶、尾数相加、规格化4个子过程。理想情况:速度提高4倍,13,3.1.2 流水线的分类,14,流水线可按不同的观点进行分类,一般来说流水线可以分为以下几个类型。,1、按各过程段用时是否相等分类 流水线按各过程段用时是否相等可分为均匀流水线和非均匀流水线两种。,1)均匀流水线指的是各过程段用时全相等的流水线,2)非均匀流水线指的是各过程段用时不全相等的流水线,15,2、按处理的数据类型,
10、1)标量流水线:用于对标量数据进行流水处理。如:IBM 360/91,AmDahl 470V/62)向量流水线:用于对向量数据进行流水处理。(向量很适合流水处理),如:STAR-100,CYBER-205,CRAY-1.,按处理的数据类型可分为标量流水处理机和向量流水处理机两种。,16,3.按流水线的规模 按流水线的规模可分为操作流水线、指令流水线和宏流水线。,1)操作流水线是把处理机的算术逻辑部件分段,使得各种数据类型的操作能够进行流水,规模最小。,2)指令流水线则是把执行指令的过程按照流水方式处理。,3)宏流水线它是指由两个以上的处理机串行地对同一数据流进行处理,每个处理机完成一项任务。,
11、1)单功能流水线:只能完成一种固定功能的流水线。例如,浮点加法器流水线专门完成浮点加法运算,浮点乘法器流水线专门完成浮点乘法运算。2)多功能流水线:流水线的各段可以进行不同的连接,以实现不同的功能。例:ASC的多功能流水线,17,4.按功能分类 按流水线完成的功能是否单一,流水线可分为单功能流水线与多功能流水线两种。,18,19,5.按工作方式分类 流水线按工作方式可分为静态流水线和动态流水线两种。,1)静态流水线:在同一时间内,多功能流水线中的各段只能按同一种功能的连接方式工作。对于静态流水线来说,只有当输入的是一串相同的运算任务时,流水的效率才能得到充分的发挥。,2)动态流水线:在同一时间
12、内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。优点灵活,能够提高流水线各段的使用率,从而提高处理速度。缺点控制复杂。,20,静、动态流水线时空图对比,21,6.按连接方式分类 按照流水线的各个功能段之间是否有反馈信号,可将流水线分为线性流水线和非线性流水线。,1)线性流水线:流水线的各段串行连接,没有反馈回路。数据通过流水线中的各段时,每一个段最多只流过一次。2)非线性流水线:流水线中除了有串行的连接外,还有反馈回路,22,23,7.其他分类 除上述几种外,流水线分类还有下述几种。,1)根据控制方式分成顺序流水线和乱序流水线。,2)在线性流水线中,根据控制方式还可以分成同步
13、流水线和异步流水线。,3.1.3 流水线的特点,24,1.流水线处理的最好是连续任务,只有连续不断的任务才能充分发挥流水线的效率。2.流水线依靠多个功能部件并行工作宋缩短程序的执行时间,实际上是把一个大的功能部件分解为多个子过程,如前述将浮点数加法器分解为4个子过程。3.流水线中的每一功能部件后面都要有一个缓冲寄存器,即所谓的锁存器,以便平滑各个功能段延时时间的不一致。4.流水线中各段时间应尽量相等,避免段延时过长引起的相互等待。5.流水线需要有“装入时间”和“排空时间”。,3.2 流水线的时空图及性能分析,一、时空图时空图从时间和空间两个方面描述了流水线的工作过程。时空图中,横坐标代表时间,
14、纵坐标代表流水线的各个段。4段指令流水线的时空图,25,3.2.1 流水线的时空图,吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量。,26,3.2.2 流水线的性能分析,一、吞吐率,n:任务数Tk:处理完成n个任务所用的时间,1、各段时间均相等的流水线各段时间均相等的流水线时空图,27,流水线完成n个连续任务所需要的总时间为(假设一条k段线性流水线)Tkkt(n-1)t(kn-1)t 流水线的实际吞吐率,28,最大吞吐率,最大吞吐率与实际吞吐率的关系,29,流水线的实际吞吐率小于最大吞吐率,它除了与每个段的时间有关外,还与流水线的段数k以及输入到流水线中的任务数n有关。只有当nk
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第三 流水线 技术

链接地址:https://www.31ppt.com/p-5660904.html