流水线结构精选PPT.ppt
《流水线结构精选PPT.ppt》由会员分享,可在线阅读,更多相关《流水线结构精选PPT.ppt(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、流水线结构第1页,此课件共40页哦内容简介内容简介 计算机系统结构是指机器语言一级的计算机系统结构是指机器语言一级的程序员所看到的计算机属性。本章详细介程序员所看到的计算机属性。本章详细介绍流水线技术,包括先行控制技术、流水绍流水线技术,包括先行控制技术、流水线原理、流水线性能分析、相关和相关的线原理、流水线性能分析、相关和相关的处理方法、超标量处理机和超流水线处理处理方法、超标量处理机和超流水线处理机等。讨论系统结构中的并行性问题、单机等。讨论系统结构中的并行性问题、单机和多机系统中并行处理的实现以及突破机和多机系统中并行处理的实现以及突破冯冯诺依曼型结构的新型计算机系统结构。诺依曼型结构的
2、新型计算机系统结构。从而了解新一代计算机的发展动向。从而了解新一代计算机的发展动向。第2页,此课件共40页哦8-4 新型计算机系统结构8-3 多处理机8-2 向量处理机8-1 流水线技术本章主要内容第3页,此课件共40页哦流水线技术流水线技术 提高计算机的处理速度就要提高处理提高计算机的处理速度就要提高处理机指令执行的速度,人们采取的办法通机指令执行的速度,人们采取的办法通常有三种:常有三种:1提高处理机的工作主频。提高处理机的工作主频。2采采用用更更好好的的算算法法和和设设计计更更好好的的功功能能部部件。件。3采用指令级并行技术。采用指令级并行技术。3 3是是目目前前和和将将来来提提高高处处
3、理理机机指指令令执执行行速度的一条主要途径。速度的一条主要途径。第4页,此课件共40页哦8-1-1 先行控制技术先行控制技术1 1指令的重叠执行方式指令的重叠执行方式 处处理理机机在在执执行行多多条条指指令令时时,有有多多种种执执行行控控制制方方式式:顺顺序序方方式式、重重叠叠方方式式、先先行行控控制制方方式式、流流水水线线控控制制方方式式等等,我我们们先先从从最最简简单单的的来来讲讲。一一条条指指令令的的执执行行过过程程可可以以分分为为多多个个阶阶段段,通常,把通常,把条指令的执行过程分为条指令的执行过程分为3 3个阶段。个阶段。取指令分析指令执行指令时间t第5页,此课件共40页哦 取取指指
4、令令阶阶段段:按按照照指指令令计计数数器器的的内内容容访访问问主主存存储储器器,取取出出一一条条指指令令送送到到指指令令寄寄存器。存器。分分析析指指令令阶阶段段:对对指指令令的的操操作作码码进进行行译译码码后后,按按照照给给定定的的寻寻址址方方式式和和地地址址字字段段中中的的内内容容形形成成操操作作数数的的地地址址,并并用用这这个个地地址址读读取取操操作作数数,操操作作数数可可能能在在主主存存储储器或寄存器中。器或寄存器中。指指令令阶阶段段:是是指指根根据据操操作作码码的的要要求求,完完成成指指令令规规定定的的功功能能,在在此此期期间间,要要把把运运算结果写到寄存器或主存储器中。算结果写到寄存
5、器或主存储器中。第6页,此课件共40页哦指令的几种执行方式第7页,此课件共40页哦 假设取指令、分析指令和执行指令的时间都相等,每段的时间都为t,执行一条指令的时间为T1,则T1=t取指令+t分析指令+t执行指令=3t,(1)顺序执行方式如图82(a)所示,采用顺序执行方式执行n条指令所用时间为:Tn=3tn=3nt (2)一次重叠执行方式如图82(b)图所示。这是一种最简单的重叠方式,把执行第k条指令与取第k十1条指令同时进行。则执行n条指令所用的时间为:Tn=3t+2t(n-1)=(1+2n)t(3)二次重叠执行方式。如图82(c)所示,我们如果把取第k十1条指令提前到与分析第k条指令同时
6、进行,那么,分析第k十l条指令会与执行第k条指令同时进行,则执行n条指令所用的时间为:T=3t+t(n-1)=(2+n)t第8页,此课件共40页哦 采用一次重叠执行方式,指令的执行时间缩短了近二分之,而且各功能部件在并行工作,利用率明显提高。采用二次重叠执行方式能够将指令的执行时间缩短近三分之二,进步提高了指令的执行速度。但是处理机中同时在取指令、分析和执行指令,因此,要把顺序执行方式中的一个集中的指令控制器分解为三个相对独立的控制器来同时发出三种控制信号,它们是主存储控制器,指令控制器,运算控制器。另外,在指令分析或指令执行过程中都要访问主存储器取指令,存在解决访问主存储器的冲突问题。现现代
7、代计计算算机机的的指指令令系系统统非非常常复复杂杂,我我们们前前面面假假设设的的情情况况是是一一种种理理想想状状态态,在在实实际际当当中中,各各种种指指令令难难以以做做到到“分分析析”与与“执执行行”时时间间始始终终相相等等,所所以以二二次次重重叠叠执执行行方方式式是是种种理理想想的的指令执行方式。指令执行方式。第9页,此课件共40页哦2 2先行控制技术先行控制技术 要要解解决决二二次次重重叠叠执执行行方方式式中中存存在在的的访访问问主主存存储储器器的的冲冲突突问问题题,方法有三种:方法有三种:第第一一,把把主主存存储储器器分分成成两两个个独独立立编编址址的的存存储储器器,一一个个专专门门存存
8、放放指指令令,称称为为指指令令存存储储器器,另另一一个个专专门门存存放放操操作作数数,称称为为数数据据存存储储器。两个存储器同时独立访问,解决了取指令和读操作数的冲突。器。两个存储器同时独立访问,解决了取指令和读操作数的冲突。第第二二,指指令令和和数数据据仍仍然然混混合合存存放放在在同同一一个个主主存存作作储储器器内内,采采用用低位交叉存取方式。低位交叉存取方式。第三,解决访问存储器冲突的根本办法是处理机结构作较大的改第三,解决访问存储器冲突的根本办法是处理机结构作较大的改变,采用先行控制技术。变,采用先行控制技术。第10页,此课件共40页哦 先先行行控控制制的的基基本本思思想想是是使使分分析
9、析部部件件和和执执行行部部件件能能分分别别连连续续不不断断地地分分析析和和执执行行指指令令,这这种种技技术术实实际际上上是是预预处处理理技技术术和和缓缓冲冲技技术术的的结结合合,即即通通过过对对指指令令流流和和数数据据流流的的预预处处理理和和缓缓冲冲,能能够够尽尽量量使使指指令令分分析析器器和和指指令令执执行行部部件件独独立立地地工工作作,并并始始终终处处于于忙忙碌碌状状态态。这这样样,就就能能够够使使取取指指令令、分分析析指指令令和和执执行行指指令令重重叠叠起起来来执执行行。使使指指令令分分析析器器和和执执行行部部件件能能尽尽量量地地连连续续工工作作。而而且且,在在采采用用了了缓缓冲冲技技术
10、术和和预预处处理理技技术术之之后后,运运算算器器能能够够专专心心干干数数据据的的运运算算、从从而而大大幅幅度度提提高高指指令令的的执执行行速速度度。在在正正常常情情况况下下,处处理机中同时有三条指令在执行。理机中同时有三条指令在执行。先先行行控控制制技技术术最最早早在在IBM公公司司研研制制的的机机器器中中采采用用。目目前前,先先行行控控制制技技术术是是现现代代计计算算机机系系统统中中被被普普遍遍采采用用的的一一项项重重要要技技术术,许许多多处处理理机机中中都都已已经经采采用用了了这这种种技技术术,包包括超流水线处理机和超标量处理机等括超流水线处理机和超标量处理机等。第11页,此课件共40页哦
11、8-1-2 流水流水线线 流流水水处处理理技技术术是是在在重重叠叠、先先行行控控制制方方式式的的基基础础上上发发展展起起来来的的,它它基基于于重重叠叠的的原理,但却是在更高程度上的重叠。原理,但却是在更高程度上的重叠。流流水水线线方方式式是是把把一一个个重重复复的的过过程程分分解解为为若若干干个个子子过过程程,每每个个子子过过程程可可以以与与其其他他子子过过程程同同时时进进行行。由由于于这这种种工工作作方方式式与与工工厂厂中中生生产产流流水水线线十十分分相相似似,因因此此,把它称为流水线工作方式。把它称为流水线工作方式。第12页,此课件共40页哦1 1流水线工作原理流水线工作原理 根据上面的重
12、叠技术和先行控制技术根据上面的重叠技术和先行控制技术,进一步发展应用就是标量流进一步发展应用就是标量流水技术。假如把一条指令的解释过程进一步细分成水技术。假如把一条指令的解释过程进一步细分成取指、译码、取指、译码、执行、访存、写回寄存器执行、访存、写回寄存器五个子过程,并用五个独立的功能部五个子过程,并用五个独立的功能部件分别处理每个子过程。那么就像工厂中的流水线,五个子部件可件分别处理每个子过程。那么就像工厂中的流水线,五个子部件可以同时对不同的五条指令中的相对应的子过程进行操作。以同时对不同的五条指令中的相对应的子过程进行操作。在流水技术中有如下一些特点:在流水技术中有如下一些特点:(1
13、1)一条流水线由多个流水段组成。)一条流水线由多个流水段组成。(2 2)每个流水段有专门的功能部件对指令进行某种加工。)每个流水段有专门的功能部件对指令进行某种加工。(3 3)各流水段所需时间是一样的。)各流水段所需时间是一样的。(4 4)在在理理想想情情况况下下,在在流流水水线线上上,每每隔隔tt时时间间将将会会有有一一个个结结果果流流出流水线。出流水线。第13页,此课件共40页哦 描述流水线常用的方法是用描述流水线常用的方法是用“时空图时空图”。在时空图中,。在时空图中,横坐标表示时间,也就是输入到流水线中的各个任务在流水线中横坐标表示时间,也就是输入到流水线中的各个任务在流水线中所经过的
14、时间。当流水线中的各个功能部件的执行时间都相等时、所经过的时间。当流水线中的各个功能部件的执行时间都相等时、横坐标被分割成相等长度的时间段,纵坐标表示空间,即流水线横坐标被分割成相等长度的时间段,纵坐标表示空间,即流水线的各个子过程。在时空图中,流水线的一个子过程通常称为的各个子过程。在时空图中,流水线的一个子过程通常称为“功功能段能段”。前面的例子用时空图描述如图。前面的例子用时空图描述如图8-3所示。所示。第14页,此课件共40页哦2 2流水线的分类流水线的分类 从不同的角度,按照不同的观点可以把流水线分成多种不同的种类。从名称上能反映这种流水线在某一方面的特点或性能。(1)按流水线结构分
15、类 如图8-4(a)所示,按照流水线的各个功能段之间是否有反馈信号,可以把流水线分为线性与非线性流水线两类。线性流水线中,输入数据从流水线的一端进入,另一端输出,各功能段逐个串接起来。如图8-4(a)所示,这种方式下,数据在流水线中的各个功能段仅仅流过一次。所以通常一条线性流水线只能完成种固定的功能。非线性流水线中,除有串行连接通路外,还有反馈回路,在流水过程中,某些功能段要重复使用。如图8-4(b)所示,功能段S2的输出又被反馈回送给S2的输入端。因为,功能段S2可能要被多次调用,所以这时流水线中数据由输入端到输出端不再是经过原来的三个时钟周期,还要加上反馈回路多次调用的执行周期。第15页,
16、此课件共40页哦 非线性流水线中,除有串行连接通路外,还有反馈回路,非线性流水线中,除有串行连接通路外,还有反馈回路,在流水过程中,某些功能段要重复使用。如图在流水过程中,某些功能段要重复使用。如图8-4(b)所示,功)所示,功能段能段S2的输出又被反馈回送给的输出又被反馈回送给S2的输入端。因为,功能段的输入端。因为,功能段S2可能可能要被多次调用,所以这时流水线中数据由输入端到输出端不再是经过要被多次调用,所以这时流水线中数据由输入端到输出端不再是经过原来的三个时钟周期,还要加上反馈回路多次调用的执行周期。原来的三个时钟周期,还要加上反馈回路多次调用的执行周期。图84 线性与非线性流水线第
17、16页,此课件共40页哦 在非线性流水线中,只用图8-4(b)这样一种连接图不能表示出一个任务在非线性流水线中的实际流动的过程,还要用一张“预约表”,两者共同来表示流水线的工作情况。在预约表中可以很清楚地表示出反馈回路的使用次数。如图8-5所示,它表示图8-4(b)中S2在反馈回路仅重复使用次的预约表,图中用“”表示功能段在相应的这一段时间内有效,即任务经过了这一个功能段。条非线性流水线可以对应有很多张预约表,一张预约表表示非线性流水线的一种工作方式。图85 非线性流水线预约表第17页,此课件共40页哦3 3流水线的性能流水线的性能 衡量流水线性能的主要指标有吞吐率、加速比和效率。衡量流水线性
18、能的主要指标有吞吐率、加速比和效率。(1 1)流水线吞吐率)流水线吞吐率最最大大吞吞吐吐率率指指流流水水线线达达到到稳稳定定状状态态后后,单单位位时时间间内内处处理理的的任任务务总总数数。实实际际吞吞吐吐率率是是指指单单位位时时间间内内能能处处理理的的任任务务数数或或输输出出结结果果的的数数量量,它它总总是是小小于于最最大大吞吞吐吐率率。因因为为流流水水线线有有“装装入入时时间间”和和“排排空空时间时间”,以及其他因素也会影响流水线的连续流动。,以及其他因素也会影响流水线的连续流动。(2)加加速速比比:不不使使用用流流水水线线所所用用的的时时间间与与使使用用流流水水线线所所用用的的时时间间之之
19、比比称称为为流流水水线线的的加加速速比比,即即采采用用流流水水方方式式后后的的工工作作速速度度与与顺序串行方式的工作速度之比。顺序串行方式的工作速度之比。(3)流水线效率:指流水线中各功能部件的利用率。)流水线效率:指流水线中各功能部件的利用率。第18页,此课件共40页哦4 4数据相关与控制相关数据相关与控制相关 由于流水线中同时要处理多条指令,所以各种各样的冲由于流水线中同时要处理多条指令,所以各种各样的冲突几率就会很大,比如在执行一条指令的过程中,如果用突几率就会很大,比如在执行一条指令的过程中,如果用到的指令、操作数、变址偏移量等正好是前面指令的执行到的指令、操作数、变址偏移量等正好是前
20、面指令的执行结果,结果,则必须等待前面的指令执行完成,并把结果写则必须等待前面的指令执行完成,并把结果写到主存或通用寄存器中之后,本条指令才能开始执行;到主存或通用寄存器中之后,本条指令才能开始执行;当后继指令的操作数刚好是前一指令的运算结果的情当后继指令的操作数刚好是前一指令的运算结果的情况下,也会发生不协调的情况等等,类似这些冲突我况下,也会发生不协调的情况等等,类似这些冲突我们称之为相关。们称之为相关。在在流流水水线线中中相相关关分分为为两两大大类类,类类是是数数据据相相关关,另另一一类类是是控制相关。流水线技术必须较好的解决解这些相关问题。控制相关。流水线技术必须较好的解决解这些相关问
21、题。第19页,此课件共40页哦(1)数据相关)数据相关 在在采采用用先先行行控控制制方方式式的的处处理理机机中中,数数据据相相关关有有四四种种情情况况:它它们们是是指指令令相相关关、主主存存操操作作数数相相关关、通通用用寄寄存存器器相相关关和和变变址址相相关关等等。解解决数据相关的方法有两种:决数据相关的方法有两种:一一种种方方法法是是推推后后分分析析法法,即即在在遇遇到到数数据据相相关关时时,就就停停顿顿后后继继指指令令的的执执行行,直直到到前前面面指指令令的的结结果果已已经经生生成成后后再再继继续续。另另一一种种方方法法是是设设置置专专用用路路,即即旁旁路路技技术术,:就就是是使使用用专专
22、门门设设置置的的通通路路将将产产生生的的结结果果直直接接送送往往需需要要它它的的地地方方而而不不是是通通过过寄寄存存器器再再访访问问,这这样样就就可可使使流流水水线线不不发发生生停顿。停顿。在在按按序序流流动动的的流流水水线线中中,只只可可能能出出现现主主操操作作数数相相关关。可可通通过过定定向向传传送送的的方方法法解解决决。在在非非按按序序流流动动的的流流水水线线中中,则则各各种种相相关关都都可可能能发发生生。在在RISC机机流流水水线线中中,还还存存在在一一种种装装入入延延迟迟。解解决决这这种种装装入入延延迟迟的的办办法法是是采采用用硬硬件件联联锁锁或或重重排排指指令令的的优化编译方法。优
23、化编译方法。第20页,此课件共40页哦(2)控制相关)控制相关 控制相关是指由条件分支指令、转子程序指令、控制相关是指由条件分支指令、转子程序指令、中断等引起的相关。例如:在执行条件转移指令,中断等引起的相关。例如:在执行条件转移指令,前一条指令还没有生成条件码,当转移发生时,将前一条指令还没有生成条件码,当转移发生时,将使流水线的流动受到破坏。为了减少因转移引起的使流水线的流动受到破坏。为了减少因转移引起的流水线性能损失,可采用下述方法:流水线性能损失,可采用下述方法:一种是同数据相关的推后法。另一种是猜一种是同数据相关的推后法。另一种是猜测法。尽早判别转移是否发生,尽早生成转移测法。尽早判
24、别转移是否发生,尽早生成转移目标地址,加快和提前形成条件码。推后法实目标地址,加快和提前形成条件码。推后法实现起来简单,但是由于等待而降低了流水线效现起来简单,但是由于等待而降低了流水线效率,其他解决相关的方法在控制上要复杂一些。率,其他解决相关的方法在控制上要复杂一些。第21页,此课件共40页哦8-1-3 超标量处理机与超流水线处理机超标量处理机与超流水线处理机 一般的流水线处理机只有一条指令流水线,一个多一般的流水线处理机只有一条指令流水线,一个多一般的流水线处理机只有一条指令流水线,一个多一般的流水线处理机只有一条指令流水线,一个多功能的操作部件,每个时钟周期功能的操作部件,每个时钟周期
25、功能的操作部件,每个时钟周期功能的操作部件,每个时钟周期“取指令取指令取指令取指令”和和和和“分析分析分析分析”完成完成完成完成一条指令。另一种流水线处理机虽然也只有一条指一条指令。另一种流水线处理机虽然也只有一条指一条指令。另一种流水线处理机虽然也只有一条指一条指令。另一种流水线处理机虽然也只有一条指令流水线,每个时钟周期令流水线,每个时钟周期令流水线,每个时钟周期令流水线,每个时钟周期“取指令取指令取指令取指令”和和“分析分析分析分析”完成一条完成一条完成一条完成一条指令,但是有多个独立的操作部件,可以同时并行指令,但是有多个独立的操作部件,可以同时并行指令,但是有多个独立的操作部件,可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 流水线 结构 精选 PPT
限制150内