系统结构chpt5

上传人:新** 文档编号:589819759 上传时间:2024-09-11 格式:PPT 页数:96 大小:635.02KB
返回 下载 相关 举报
系统结构chpt5_第1页
第1页 / 共96页
系统结构chpt5_第2页
第2页 / 共96页
系统结构chpt5_第3页
第3页 / 共96页
系统结构chpt5_第4页
第4页 / 共96页
系统结构chpt5_第5页
第5页 / 共96页
点击查看更多>>
资源描述

《系统结构chpt5》由会员分享,可在线阅读,更多相关《系统结构chpt5(96页珍藏版)》请在金锄头文库上搜索。

1、计算机系统结构第一章第一章 基本概念基本概念第二章第二章 指令系统指令系统第三章第三章 存储系统存储系统第四章第四章 输入输出系统输入输出系统第五章第五章 标量处理机标量处理机第六章第六章 向量处理机向量处理机第七章第七章 互连网络互连网络第八章第八章 并行处理机并行处理机第九章第九章 多处理机多处理机第五章标量处理机5.1 指令的重叠执行方式指令的重叠执行方式5.2 流水线技术流水线技术5.3 超标量处理机超标量处理机5.4 超流水线处理机超流水线处理机5.5 超标量超流水线处理机超标量超流水线处理机 只有标量数据表示和标量指令系统的处理机称为标量处理机提高指令执行速度的主要途径:(1) 提

2、高处理机的工作主频(2) 采用更好的算法和设计更好的功能部件(3) 采用指令级并行技术三种指令级并行处理机:(1) 流水线处理机和超流水线(Super-pipelining)处理机(2) 超标量(Superscalar)处理机(3) 超长指令字(VLIW: Very Long Instruction Word)处理机取指令k 分析k 执行k 取指令k+1 分析k+1 执行k+15.1 指令的重叠执行方式1、顺序执行方式执行n条指令所用的时间为:如果每段时间都为t,则执行n条指令所用的时间为: T=3nt主要优点:控制简单,节省设备。主要缺点:执行指令的速度慢,功能部件的利用率很低。2、一次重叠

3、执行方式一种最简单的流水线方式如果两个过程的时间相等,则执行n条指令的时间为:T=(1+2n)t取指 分析 执行取指 分析 执行取指 分析 执行主要优点:指令的执行时间缩短功能部件的利用率明显提高主要缺点:需要增加一些硬件控制过程稍复杂如果三过程的时间相等,执行n条指令的时间为:T=(2+n)t理想情况下同时有三条指令在执行处理机的结构要作比较大的改变,必须采用先行控制方式取指k+2 分析k+2 执行k+2取指k+1 分析k+1 执行k+1取指k分析k执行k3、二次重叠执行方式先行控制方式的原理先行控制方式的原理1.采用二次重叠执行方式必须解决两个问题:采用二次重叠执行方式必须解决两个问题:(

4、1)有独立的取指令部件、指令分析部件和指令执有独立的取指令部件、指令分析部件和指令执行部件行部件 把一个集中的指令控制器,分解成三个独立的控制器: 存储控制器、指令控制器、运算控制器存储控制器、指令控制器、运算控制器(2)要解决访问主存储器的冲突问题要解决访问主存储器的冲突问题 取指令、分析指令、执行指令都可能要访问存储器2.解决访存冲突的方法:解决访存冲突的方法:(1)采用低位交叉存取方式采用低位交叉存取方式: 这种方法不能根本解决冲突问题。指令、读操作数、写结果。(2)两个独立的存储器两个独立的存储器:独立的指令存储器和数据独立的指令存储器和数据存储器。存储器。如果再规定,执行指令所需要的

5、操作数和执行结果只写到通用寄存器,则取指令、分析指令和执行指令就可以同时进行。在许多高性能处理机中,有独立的指令Cache和数据Cache。这种结构被称为哈佛结构。(3)采用先行控制技术采用先行控制技术 采用先行控制技术的关键是缓冲技术和预采用先行控制技术的关键是缓冲技术和预处理技术。处理技术。缓冲技术通常用在工作速度不固定的两个功能部件之间。设置缓冲栈的目的是用来以平滑功能部件之间的工作速度。在采用了缓冲技术和预处理技术之后,运算器能够专心于数据的运算,从而大幅度提高程序的执行速度。第五章标量处理机5.1 先行控制技术5.2 流水线技术5.3 超标量处理机5.4 超流水线处理机5.5 超标量

6、超流水线处理机空间并行性:设置多个独立的操作部件多操作部件处理机超标量处理机时间并行性:采用流水线技术。不增加或只增加少量硬件就能使运算速度提高几倍流水线处理机超流水线处理机5.2 流水线技术5.2.1 流水线工作原理5.2.2 流水线的分类5.2.3 线性流水线的性能分析5.2.4 非线性流水线的调度技术5.2 流水线技术5.2.1 流水线工作原理流水线工作原理1、简单流水线、简单流水线流水线的每一个阶段称为流水步、流水步骤、流水段、流水线阶段、流水功能段、功能段、流水级、流水节拍等。在每一个流水段的末尾或开头必须设置一个寄存器,称为流水寄存器、流水锁存器、流水闸门寄存器等。会增加指令的执行

7、时间。分析器分析k+1流水锁存器执行部件执行k流水锁存器输入输出t1t2为了简化,在一般流水线中不画出流水锁存器。取指形成操作数地址译码取操作数执行保存结果2、一种指令流水线、一种指令流水线一般4至12个流水段,等于及大于8个流水段的称为超流水线处理机分析k 分析k+1分析k+2分析k+3执行k 执行k+1执行k+2执行k+3时间空间0t1t2t3t4t53、流水线的时空图、流水线的时空图一条简单流水线的时空图:ED1时间空间0t1t2t3t4t5ED2 ED3 ED4 ED5EA1 EA2 EA3 EA4 EA5MA1MA2MA3MA4MA5NL1 NL2 NL3 NL4 NL5t6t7t8

8、NL:规格化MA:尾数加EA:对阶ED:求阶差一个浮点加法器流水线的时空图(由求阶差、对阶、尾数加和规格化4个流水段组成):4、流水线的主要特点只有连续提供同类任务才能充分发挥流水线的效率:对于指令流水线:要尽量减少因条件分支造成的“断流”对于操作部件:主要通过编译技术,尽量提供连续的同类操作在流水线的每一个流水线段中都要设置一个流水锁存器时间开销:流水线的执行时间加长是流水线中需要增加的主要硬件之一各流水段的时间应尽量相等流水线处理机的基本时钟周期等于时间最长的流水段的时间长度流水线需要有“装入时间”和“排空时间”1、线性流水线与非线性流水线 流水线的各个流水段之间是否有反馈信号 线性流水线

9、(Linear Pipelining)每个流水段都流过一次,且仅流过一次 非线性流水线(Nonlinear Pipelining)在流水线的某些流水段之间有反馈回路或前馈回路 线性流水线能够用流水线连接图唯一表示非线性流水线必须用流水线连接图流水线预约表等共同表示5.2.2 流水线的分类流水线的分类S1输入S2S3输出前馈回路反馈回路一种简单的非线性流水线2、按照流水线的级别来分处理机级流水线, 又称为指令流水线 (Instruction Pipelining)例如:在采用先行控制器的处理机中,各功能部件之间的流水线先行指令缓冲栈输入先 行 控 制 方 式中的指令流水线先行指令分析器先行读数栈

10、先行操作栈取指译码取操作数指令执行部件后行写数栈输出执行写结果求阶差输入输出t1对阶尾数加规格化t2t3t4P1输入任务1MMP2任务2MP3任务3输出部件级流水线(操作流水线),如浮点加法器流水线处理机之间的流水线称为宏流水线 (Macro Pipelining)每个处理机对同一个数据流的不同部分分别进行处理3、单功能流水线与多功能流水线、单功能流水线与多功能流水线单功能流水线:单功能流水线:只能完成一种固定功能的流水线Cray-1计算机中有12条;YH-1计算机有18条;Pentium有一条5段的定点和一条8段的浮点流水线;Pentium有三条指令流水线,其中两条定点指令流水线,一条浮点指

11、令流水线多功能流水线:多功能流水线:流水线的各段通过不同连接实现不同功能Texas公司的ASC计算机中的8段流水线,能够实现:定点加减法、定点乘法、浮点加法、浮点乘法、逻辑运算、移位操作、数据转换、向量运算等。4、静态流水线与动态流水线、静态流水线与动态流水线静态流水线:静态流水线:同一段时间内,多功能流水线中的各个功能段只能按照一种固定的方式连接,实现一种固定的功能。只有连续出现同一种运算时,流水线的效率才能得到充分的发挥。动态流水线:动态流水线:在同一段时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能。1时间空间02 3 n1 2 3 n1 2 3 n1 2 3 n1

12、2 3 n1 2 3 n1 2 3 4 1 2 3 1 2 1输入求阶差对阶尾数加规格化尾数乘累加输出静态流水线时空图浮点加法定点乘法1时间空间02 3 n1 2 3 n1 2 3 n1 2 3 n1 2 3 n1 2 3 n输入求阶差对阶尾数加规格化尾数乘累加输出动态流水线时空图1 2 35461 2 3541 2 3 41 2 3浮点加法定点乘法S1就绪回答S2就绪回答S3就绪回答输出就绪回答输入5、流水线的其他分类方法、流水线的其他分类方法按照数据表示方式:按照数据表示方式:标量流水线和向量流水线标量流水线和向量流水线按照控制方式:按照控制方式:同步流水线和异步流水线同步流水线和异步流水

13、线顺序流水线与乱序流水线:顺序流水线与乱序流水线:乱序流水线又称为无序流乱序流水线又称为无序流水线、错序流水线或异步流水线等水线、错序流水线或异步流水线等5.2.3 线性流水线的性能分析线性流水线的性能分析衡量流水线性能的主要指标有:吞吐率、加速比和效率。1、吞吐率(、吞吐率(Though Put)求流水线吞吐率的最基本公式:TP = n / Tkn为任务数, Tk为完成n个任务所用时间各段执行时间相等,输入连续任务情况下完成n个连续任务需要的总时间为:Tk= (k+n-1) tk为流水线的段数, t为时钟周期1时间空间S123 n-1 nS2S3S4123 n-1 n123 n-1 n123

14、 n-1 nkt(n-1) tnt(k-1)tT吞吐率:吞吐率:最大吞吐率为:最大吞吐率为:各段执行时间不相等、输入连续任务情况下:各段执行时间不相等、输入连续任务情况下:吞吐率为:吞吐率为:最大吞吐率为:最大吞吐率为:流水线各段执行时间不相等的解决办法S1输入t1=tS2t2=3tS3t3=tS4t4=t输出1时间空间S1S2S3S4ti(n-1)t2Tk23 n123n123 n123 nS1输入输出tS2-1tS2-2tS2-3tS3tS4tS2(3t)S1输入输出t1=tS2-1S2-1S2-1S3S4t3=tt4=tt2=3t二是将二是将 “瓶颈瓶颈”流水段重复设置:流水段重复设置:

15、一是将一是将“瓶颈瓶颈”流水段细分流水段细分(如果可分的话如果可分的话):1时间空间2 3nS1流水段重复设置的流水线S2-14 5 614-2 -1n-225n-136n1 2 3n4 5 6 -2 -11 2 3n4 5 6 -2 -1S2-2S2-3S3S42、加速比(、加速比(Speedup)计算流水线加速比的基本公式:计算流水线加速比的基本公式:S = 顺序执行时间顺序执行时间T0 / 流水线执行时间流水线执行时间Tk各段执行时间相等,输入连续任务情况下各段执行时间相等,输入连续任务情况下加速比为:加速比为:最大加速比为:最大加速比为:各段执行时间不等,输入连续任务情况下各段执行时间

16、不等,输入连续任务情况下实际加速比实际加速比为:为:任务个数加速比10246811 2 4 8 16 32 641283、效率(、效率(Efficiency)计算流水线效率的一般公式:计算流水线效率的一般公式:各流水段执行时间相等,输入各流水段执行时间相等,输入n个连续任务个连续任务流水线的效率为:流水线的效率为:流水线的最高效率为流水线的最高效率为各流水段执行时间不等,输入各流水段执行时间不等,输入n个连续任务个连续任务流水线的效率为:流水线的效率为:流水线各段的设备量或各段的价格不相等时:流水线各段的设备量或各段的价格不相等时:流水线的效率为:流水线的效率为:即:即:其中其中,ai k,且

17、且流水线的吞吐率、加速比与效率的关系:流水线的吞吐率、加速比与效率的关系:因为因为因此:因此:E=TPDt,S=kE5、流水线性能分析举例、流水线性能分析举例 对于单功能线性流水线,输入连续任务的情况,通过上面给出的公式很容易计算出流水线的吞吐率、加速比和效率。用一条4段浮点加法器流水线求8个浮点数的和ZABCDEFGH1时间空间2 3求阶差45671 2 3 45671 2 3 45671 2 3 4567对阶尾数加规格化加数A C E GA+BE+FB D F HC+DG+HA+B+C+DE+F+G+H结果A+BC+DE+FG+HA+B+C+DE+F+G+HZ = (A+B) + (C+D

18、) + (E+F) + (G+H)7个浮点加法共用了个浮点加法共用了15个时钟周期。个时钟周期。流水线的吞吐率为:流水线的吞吐率为:流水线的加速比为:流水线的加速比为:流水线的效率为:流水线的效率为:第五章标量处理机5.1 先行控制技术5.2 流水线技术5.3 超标量处理机5.4 超流水线处理机5.5 超标量超流水线处理机5.3 超标量处理机5.3.1 基本结构5.3.2 单发射与多发射超标量处理机:Intel公司的i860, i960, Pentium处理机Motolora公司的MC88110IBM公司的Power 6000SUN公司的SuperSPARC等。超流水线处理机:SGI公司的MI

19、PS R4000, R5000, R10000等。超标量超流水线处理机:DEC公司的Alpha等。k段流水线基准标量处理机m度超标量n度超流水线(m,n)度超标量超流水机器类型机器流水线周期同时发射指令条数指令发射等待时间指令级并行度ILP1个时钟周期1条1个时钟周期11m1m1/n11/nn1/nm1/nmn超标量、超流水、超标量超流水处理机的主要性能5.3.1 基本结构一般流水线处理机:一条指令流水线,一个多功能操作部件,每个时钟周期平均执行指令的条数小于1。多操作部件处理机:一条指令流水线,多个独立的操作部件,操作部件可以采用流水线,也可以不流水。多操作部件处理机的指令级并行度小于1。超

20、标量处理机典型结构:多条指令流水线先进的超标量处理机有:定点处理部件CPU,浮点处理部件FPU,图形加速部件GPU大量的通用寄存器,两个一级高速Cache超标量处理机的指令级并行度大于1Motorola公司的MC88110:10个操作部件两个寄存器堆:整数部件通用寄存器堆,32个32位寄存器;浮点部件扩展寄存器堆,32个80位寄存器。每个寄存器堆有8个端口,分别与8条内部总线相连接,有一个缓冲深度为4的先行读数栈和一个缓冲深度为3的后行写数栈。两个独立的高速Cache中,各为8KB,采用两路组相联方式,转移目标指令Cache,在有两路分支时,存放其中一路分支上的指令整数部件整数部件位操作浮点加

21、乘法部件除法部件图形部件图形部件内部总线读数存数部件通用寄存器堆扩展寄存器堆目标指令指令分配转移部件数据Cache (8KB)指令Cache (8KB)系统总线32位地址总线32位数据总线超标量处理机MC88110的结构5.3.2 单发射与多发射单发射处理机:每个周期只取一条指令、只译码一条指令,只执行一条指令,只写回一个运算结果取指部件和译码部件各设置一套可以只设置一个多功能操作部件,也可以设置多个独立的操作部件操作部件中可以采用流水线结构,也可以不采用流水线结构设计目标是每个时钟周期平均执行一条指令,ILP的期望值1IF时钟周期指令I1I2I3IDEXWRIFIDEXWRIFIDEXWR1

22、23456单发射处理机的指令流水线时空图IFIDFA1 FA2 FA3MD1MD2MD3ALLS浮点加法部件乘除法部件定点ALU部件取数存数部件WR来自指令Cache通用寄存器后行写数栈多发射处理机:每个周期同时取多条指令、同时译码多条指令,同时执行多条指令,同时写回多个运算结果需要多个取指令部件,多个指令译码部件和多个写结果部件设置多个指令执行部件,复杂的指令执行部件一般采用流水线结构设计目标是每个时钟周期平均执行多条指令,ILP的期望值大于1IF时钟周期指令I1I2I3IDEXWR123456多发射处理机的指令流水线时空图I4I5I6IFIDEXWRI7I8I9IFIDEXWRIFIDEX

23、WRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDFA1 FA2 FA3MD1MD2MD3ALLS浮点加法部件乘除法部件定点ALU部件取数存数部件WRIFIDWR超标量处理机:一个时钟周期内能够同时发射多条指令的处理机称为超标量处理机必须有两条或两条以上能够同时工作的指令流水线先行指令窗口:能够从指令Cache中预取多条指令能够对窗口内的指令进行数据相关性分析和功能部件冲突的检测窗口的大小:一般为2至8条指令采用目前的指令调度技术,每个周期发射2至4条指令比较合理例如:Intel公司的i860、i960、Pentium处理机,Motolora公司的MC

24、88110处理机,IBM公司的Power 6000处理机等每个周期都发射两条指令TI公司生产的SuperSPARC处理机以及Intel的Pentium III处理机等每个周期发射三条指令操作部件的个数多于每个周期发射的指令条数。4个至16个操作部件超标量处理机的指令级并行度:1ILPm;m为每个周期发射的指令条数。IFIDFA1 FA2 FA3MD1MD2MD3ALLS浮点加法部件乘除法部件定点ALU部件取数存数部件WRIFIDWRIFID先行指令窗口超标量处理机的性能超标量处理机的性能在理想情况下,在理想情况下,N条没有资源冲突、没有数据相关和控制相条没有资源冲突、没有数据相关和控制相关的指

25、令在单流水线普通标量处理机中执行的时间是:关的指令在单流水线普通标量处理机中执行的时间是:在超标量处理机中执行的时间是:在超标量处理机中执行的时间是:超标量处理机相对于普通处理机的加速比是:超标量处理机相对于普通处理机的加速比是:第五章标量处理机5.1 先行控制技术5.2 流水线技术5.3 超标量处理机5.4 超流水线处理机5.5 超标量超流水线处理机5.4 超流水线处理机两种定义:一个周期内能够分时发射多条指令的处理机称为超流水线处理机指令流水线有8个或更多功能段的流水线处理机称为超流水线处理机提高处理机性能的不同方法:超标量处理机是通过增加硬件资源为代价来换取处理机性能的超流水线处理机则通

26、过各硬件部件充分重叠工作来提高处理机性能两种不同并行性:超标量处理机采用的是空间并行性超流水线处理机采用的是时间并行性5.4.1 指令执行时序每隔1/n个时钟周期发射一条指令,流水线周期为1/n个时钟周期在超标量处理机中,流水线的有些功能段还可以进一步细分例如:ID功能段可以再细分为译码、读第一操作数和读第二操作数三个流水段。也有些功能段不能再细分,如WR功能段一般不再细分。因此有超流水线的另外一种定义:有8个或8个以上流水段的处理机称为超流水线处理机IF时钟周期指令I1I2I3IDEXWR123456每个时钟周期分时发送3条指令的超流水线I4I5I6IFIDEXWRI7I8I9IFIDEXW

27、RIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWR5.4.2 典型处理机结构MIPS R4000处理机每个时钟周期包含两个流水段,是一种很标准的超流水线处理机结构。指令流水线有8个流水段有两个Cache,指令Cache和数据Cache的容量各8KB,每个时钟周期可以访问Cache两次,因此在一个时钟周期内可以从指令Cache中读出两条指令,从数据Cache中读出或写入两个数据。主要运算部件有整数部件和浮点部件指令CacheMIPS R4000处理机的流水线操作IF:取第一条指令IS:取第二条指令RF:读寄存器堆,指令译码EX:执行指令DF:取第一

28、个数据DS:取第二个数据TC:数据标志校验;WB:写回结果指令译码读寄存器堆ALU数据Cache标志检验寄存器堆IF ISRFEXDF DSWBTCIF流水线周期当前CPU周期IS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WBIFIS RF EX DF DS TC WB主时钟周期MIPS R4000正常指令流水线工作时序如果在LOAD指令之后的

29、两条指令中,任何一条指令要在它的EX流水级使用这个数据,则指令流水线要暂停一个时钟周期采用顺序发射方式暂停IFIS RF EX DF DS TC WBMIPS R4000正常指令流水线工作时序IS RF EX DF DS TC WBRF EX DF DS TC WBEX DF DS TC WBEX DF DS TC WBDF DS TC WBIFISRFI1I2I3I4I5I6运行运行Load指令使用Load数据5.4.3 超流水线处理机性能超流水线处理机性能指令级并行度为(1,n)的超流水线处理机,执行N条指令所的时间为超流水线处理机相对于单流水线普通标量处理机的加速比为即:超流水线处理机的

30、加速比的最大值为:S(1,n)MAX = n第五章标量处理机5.1 先行控制技术5.2 流水线技术5.3 超标量处理机5.4 超流水线处理机5.5 超标量超流水线处理机5.5 超标量超流水线处理机把超标量与超流水线技术结合在一起,就成为超标量超流水线处理机5.5.1 指令执行时序5.5.2 典型处理机结构5.5.3 超标量超流水线处理机性能5.5.4 三种指令级并行性处理机性能比较5.5.1 指令执行时序超标量超流水线处理机在一个时钟周期内分时发射指令n次,每次同时发射指令m条,每个时钟周期总共发射指令m n条。IF时钟周期指令I1I2I3IDEXWR12345I4I5I6I7I8I9IFID

31、EXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRIFIDEXWRI10I11I12每时钟周期发射3次,每次3条指令5.5.2 典型处理机结构DEC公司的Alpha处理机采用超标量超流水线结构。主要由四个功能部件和两个Cache组成:整数部件EBOX、浮点部件FBOX、地址部件ABOX和中央控制部件IBOX。中央控制部件IBOX可以同时从指令Cache中读入两条指令,同时对读入的两条指令进行译码,并且对这两条指令作资源冲突检测,进行数据相关性和控制相关性分析。如果资源和相关性允许,IBOX就把

32、两条指令同时发射给EBOX、ABOX和FBOX三个指令执行部件中的两个。指令流水线采用顺序发射乱序完成的控制方式。在指令Cache中有一个转移历史表,实现条件转移的动态预测。在EBOX内还有多条专用数据通路,可以把运算结果直接送到执行部件。Alpha 21064处理机共有三条指令流水线整数操作流水线和访问存储器流水线分为7个流水段,其中,取指令和分析指令为4个流水段,运算2个流水段,写结果1个流水段。浮点操作流水线分为10个流水段,其中,浮点执行部件FBOX的延迟时间为6个流水段。所有指令执行部件EBOX、IBOX、ABOX和FBOX中都设置由专用数据通路。析指令为4个流水段,运算2个流水段,

33、写结果1个流水段。浮点操作流水线分为10个流水段,其中,浮点执行部件FBOX的延迟时间为6个流水段。所有指令执行部件EBOX、IBOX、ABOX和FBOX中都设置由专用数据通路。Alpha 21064处理机的三条指令流水线的平均段数为8段,每个时钟周期发射两条指令。因此,Alpha 21064处理机是超标量超流水线处理机。SWAPIF取值SWAP 交换双发射指令、转移预测I0指令译码I1访问通用寄存器堆,发射校验A1计算周期1,IBOX计算新的PC值A2计算周期2,查指令快表WR写整数寄存器堆,指令Cache命中检测17个流水段的整数操作流水线IFI0I1A0A1WR234560SWAPIF取

34、值SWAP 交换双发射指令、转移预测I0指令译码I1访问通用寄存器堆,发射校验ACABOX计算有效数据地址TB查数据快表HM写读数缓冲栈,数据Cache命中/不命中检测17个流水段的访问存储器流水线IFI0I1ACTBHM234560SWAPIF取值SWAP 交换双发射指令、转移预测I0指令译码I1访问通用寄存器堆,发射校验F1-F5浮点计算流水线FWR写回浮点寄存器堆110个流水段的浮点操作流水线IFI0I1F1F2FWR234560F3F4F57895.5.3 超标量超流水线处理机性能指令级并行度为(m,n)的超标量超流水线处理机,连续执行N条指令所需要的时间为:超标量超流水线处理机相对于

35、单流水线标量处理机的加速比为:在理想情况下,超标量超流水线处理机加速比的最大值为:S(m, n)MAXm n5.5.4 三种指令级并行处理机性能比较超标量处理机、超流水线处理机和超标量超流水线处理机相对于单流水线普通标量处理机的性能曲线。0.00.51.01.52.02.512345678相对性能超标量超流水线超标量超流水线指令级并行度从三种指令级并行处理机的性能曲线中,可以得出如下结论:1、三种处理机的性能关系超标量处理机的相对性能最高,其次是超标量超流水线处理机,超流水线处理机的相对性能最低,主要原因如下:(1) 超标量处理机在每个时钟周期的一开始就同时发射多条指令,而超流水线处理机则要把

36、一个时钟周期平均分成多个流水线周期,每个流水线周期发射一条指令;因此,超流水线处理机的启动延迟比超标量处理机大。(2)条件转移造成的损失,超流水线处理机要比超标量处理机大。(3)在指令执行过程中的每一个功能段,超标量处理机都重复设置有多个相同的指令执行部件,而超流水线处理机只是把同一个指令执行部件分解为多个流水级;因此,超标量处理机指令执行部件的冲突要比超流水线处理机小。2、实际指令级并行度与理论指令级并行度的关系当横坐标给出的理论指令级并行度比较低时,处理机的实际指令级并行度的提高比较快。当理论指令级并行度进一步增加时,处理机实际指令级并行度提高的速度越来越慢。在实际设计超标量、超流水线、超

37、标量超流水线处理机的指令级并行度时要适当,否则,有可能造成花费了大量的硬件,但实际上处理机所能达到的指令级并行度并不高。目前,一般认为,m 和 n 都不要超过4。3、最大指令级并行度一个特定程序由于受到本身的数据相关和控制相关的限制,它的指令级并行度的最大值是有限的,是有个确定的值。这个最大值主要由程序自身的语义来决定,与这个程序运行在那一种处理机上无关。对于某一个特定的程序,图中的三条曲线最终都要收拢到同一个点上。当然,对于各个不同程序,这个收拢点的位置也是不同的。本 章 重 点1、指令的重叠执行方式及时空图表示方法2、线性流水线的性能分析及计算3、超标量处理机的指令执行时序及性能4、超流水线处理机的指令执行时序及性能5、超标量超流水线处理机的指令执行时序 及性能练习题:5.35.75.85.95.18

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

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