系统结构chpt5

上传人:kms****20 文档编号:51693182 上传时间:2018-08-15 格式:PPT 页数:96 大小:747KB
返回 下载 相关 举报
系统结构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) 采用更好的算法和设计更好的功能部件 (3) 采用指令级并行技术三种指令级并行处理机: (1) 流水线处理机和超流水线(Super-pipelining

2、)处理机 (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、一次重叠执行方式一种最简单的流水线方式如果两个过程的时间相等,则执行n条指令的时间为:T=(1+2n)t取指 分析 执行 取指 分析 执行 取指 分析 执行主要优点:

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

4、行指令都可能要访问存 储器 2.解决访存冲突的方法: (1)采用低位交叉存取方式: 这种方法不能根本解决冲突问题。 指令、读操作数、写结果。 (2)两个独立的存储器:独立的指令存储器和数据 存储器。 如果再规定,执行指令所需要的操作数和执行结 果只写到通用寄存器,则取指令、分析指令和执行 指令就可以同时进行。 在许多高性能处理机中,有独立的指令Cache和 数据Cache。这种结构被称为哈佛结构。 (3)采用先行控制技术 采用先行控制技术的关键是缓冲技术和预 处理技术。 缓冲技术通常用在工作速度不固定的两个 功能部件之间。设置缓冲栈的目的是用来以 平滑功能部件之间的工作速度。 在采用了缓冲技术

5、和预处理技术之后,运 算器能够专心于数据的运算,从而大幅度提 高程序的执行速度。第五章 标量处理机 5.1 先行控制技术 5.2 流水线技术 5.3 超标量处理机 5.4 超流水线处理机 5.5 超标量超流水线处理机 空间并行性: 设置多个独立的操作部件 多操作部件处理机 超标量处理机 时间并行性: 采用流水线技术。 不增加或只增加少量硬件就能使运算速度提高 几倍 流水线处理机 超流水线处理机5.2 流水线技术5.2.1 流水线工作原理5.2.2 流水线的分类5.2.3 线性流水线的性能分析5.2.4 非线性流水线的调度技术5.2 流水线技术5.2.1 流水线工作原理1、简单流水线流水线的每一

6、个阶段称为流水步、流水步骤、流水段、流水线阶 段、流水功能段、功能段、流水级、流水节拍等。在每一个流水段的末尾或开头必须设置一个寄存器,称为流水寄 存器、流水锁存器、流水闸门寄存器等。会增加指令的执行时间 。分析器分析k+1流水 锁存器执行部件执行k流水 锁存器输 入输 出t1t2为了简化,在一般流水线中不画出流水锁存器。取指形成操 作数地址译码取操 作数执行保存 结果2、一种指令流水线一般4至12个流水段,等于及大于8个流水段的称为 超流水线处理机分析k 分析k+1分析k+2分析k+3执行k 执行k+1执行k+2执行k+3时间空间0t1t2t3t4t53、流水线的时空图一条简单流水线的时空图

7、:ED1时间空间0t1t2t3t4t5ED2 ED3 ED4 ED5EA1 EA2 EA3 EA4 EA5MA1MA2MA3MA4MA5NL1 NL2 NL3 NL4 NL5t6t7t8 NL:规格化MA:尾数加 EA:对阶ED:求阶差一个浮点加法器流水线的时空图(由求阶差、对阶、尾数 加和规格化4个流水段组成):4、流水线的主要特点只有连续提供同类任务才能充分发挥流水 线的效率: 对于指令流水线:要尽量减少因条件分支造成 的“断流” 对于操作部件:主要通过编译技术,尽量提供 连续的同类操作在流水线的每一个流水线段中都要设置一 个流水锁存器 时间开销:流水线的执行时间加长 是流水线中需要增加的

8、主要硬件之一各流水段的时间应尽量相等 流水线处理机的基本时钟周期等于时间最长的 流水段的时间长度流水线需要有“装入时间”和“排空时间”1、线性流水线与非线性流水线流水线的各个流水段之间是否有反馈信号线性流水线(Linear Pipelining) 每个流水段都流过一次,且仅流过一次非线性流水线(Nonlinear Pipelining) 在流水线的某些流水段之间有反馈回路或前馈回路线性流水线能够用流水线连接图唯一表示 非线性流水线必须用流水线连接图流水线预约表等 共同表示5.2.2 流水线的分类S1输入S2S3输出前馈回路反馈回路一种简单的非线性流水线2、按照流水线的级别来分处理机级流水线,

9、又称为指令流水线 (Instruction Pipelining) 例如:在采用先行控制器的处理机中,各功能 部件之间的流水线先行指令 缓冲栈输入先行控制方式 中的指令流水线先行指令 分析器先行读数栈 先行操作栈 取指译码取操作数指令执 行部件后行 写数栈输出执行写结果求阶差输入输出t1对阶尾数加规格化 t2t3t4P1输 入任务1MMP2 任务2MP3 任务3输 出部件级流水线(操作流水线),如浮点加法器流水线处理机之间的流水线称为宏流水线 (Macro Pipelining)每个处理机对同一个数据流的不同部分分 别进行处理3、单功能流水线与多功能流水线单功能流水线: 只能完成一种固定功能的

10、流水线 Cray-1计算机中有12条;YH-1计算机有18条; Pentium有一条5段的定点和一条8段的浮点流水线; Pentium有三条指令流水线,其中两条定点指令流 水线,一条浮点指令流水线多功能流水线: 流水线的各段通过不同连接实现不同功能Texas公司的ASC计算机中的8段流水线,能够实现: 定点加减法、定点乘法、浮点加法、浮点乘法、逻辑 运算、移位操作、数据转换、向量运算等。4、静态流水线与动态流水线 静态流水线: 同一段时间内,多功能流水线中的各个功能段只能按 照一种固定的方式连接,实现一种固定的功能。 只有连续出现同一种运算时,流水线的效率才能得到 充分的发挥。动态流水线: 在

11、同一段时间内,多功能流水线中的各段可以按照不 同的方式连接,同时执行多种功能。1 时间空间02 3 n1 2 3 n1 2 3 n1 2 3 n1 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、流水线的其他分类方法 按照数据表

12、示方式:标量流水线和向量流水线按照控制方式:同步流水线和异步流水线顺序流水线与乱序流水线:乱序流水线又称为无序流 水线、错序流水线或异步流水线等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 n-1 nkt(n-1) t nt

13、(k-1)t T吞吐率:最大吞吐率为:各段执行时间不相等、输入连续任务情况下:吞吐率为:最大吞吐率为:流水线各段执行时间不相等的解决办法S1输 入t1=tS2 t2=3tS3 t3=tS4 t4=t输 出1时间空间S1S2S3S4ti(n-1)t2 Tk23 n123n123 n123 nS1输入输出tS2-1 tS2-2 tS2-3 tS3 tS4 tS2(3t)S1输入输出t1=tS2-1S2-1S2-1S3S4 t3=tt4=tt2=3t二是将 “瓶颈”流水段重复设置:一是将“瓶颈”流水段细分(如果可分的话):1 时间空间2 3nS1流水段重复设置的流水线S2-1 4 5 614 -2

14、-1n-225n-136n1 2 3n4 5 6 -2 -11 2 3n4 5 6 -2 -1S2-2S2-3S3S42、加速比(Speedup) 计算流水线加速比的基本公式: S = 顺序执行时间T0 / 流水线执行时间Tk 各段执行时间相等,输入连续任务情况下加速比为:最大加速比为:各段执行时间不等,输入连续任务情况下实际加速比 为:任务 个数加速比 10246811 2 4 8 16 32 641283、效率(Efficiency) 计算流水线效率的一般公式:各流水段执行时间相等,输入n个连续任务流水线的效率为:流水线的最高效率为各流水段执行时间不等,输入n个连续任务流水线的效率为:流水

15、线各段的设备量或各段的价格不相等时:流水线的效率为 :即:其中,ai k,且流水线的吞吐率、加速比与效率的关系:因为因此:E=TPDt,S=kE5、流水线性能分析举例对于单功能线性流水线,输入连续任务的情况,通过上面 给出的公式很容易计算出流水线的吞吐率、加速比和效率。用一条4段浮点加法器流水线求8个浮点数的和ZABCDEFGH1时间空间2 3求阶差45671 2 3 45671 2 3 45671 2 3 4567对阶尾数加规格化加数A C E GA+BE+F B D F HC+DG+HA+B+C+D E+F+G+H 结果A+B C+DE+F G+HA+B+C+D E+F+G+HZ = (A+B) + (C+D) + (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公司的 MC88110 IBM公司的Power 6000 SUN公司的SuperSPARC等。

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

最新文档


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

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