[工学]10_11_流水线技术.ppt

[工学]10_11_流水线技术

流水线的基本概念 什么是流水线? 计算机中的流水线是把一个重复的过程分解为若干个子过程,每个子过程与其他子过程并行进行。由于这种工作方式与工厂中的生产流水线十分相似,因此称为流水线技术。 从本质上讲,流水线技术是一种时间并行技术。 计算机的各个部分几乎都可以采用流水线技术: (1)指令的执行过程可以采用流水线,称为指令流水线。 (2)运算器中的操作部件,如浮点加法器、浮点乘法器等可以采用流水线,称为操作部件流水线。 (3)访问主存的部件可以采用访存部件流水线。多个计算机之间,通过存储器连接,也可以采用流水线,称为宏流水线。 指令的重叠执行 1.顺序执行方式 执行n条指令所用的时间为: 如果每段时间都为t,则执行n条指令所用的时间为:T=3nt 主要优点:控制简单,节省设备 主要缺点:速度慢,功能部件的利用率低 指令的重叠执行 2.一次重叠执行方式 如果两个过程的时间相等,则执行n条指令的时间为: T=(2n+1)t 主要优点: 指令的执行时间缩短 功能部件的利用率明显提高 指令的重叠执行 3.二次重叠执行方式 如果三个过程的时间相等,执行n条指令的时间为:T=3t+(n-1)t=(n+2)t 在理想情况下,处理机中同时有三条指令在执行。 处理机的结构要作比较大的改变,需要采用先行控制技术。 流水线的描述方法 流水线的特点 在流水线中处理器的必须是连续任务,只有这样才能充分发挥流水线的效率。 一个任务的执行过程可以划分成多个有联系的子任务,每个子任务由一个专门的功能部件实现。 每个功能部件后面都有缓冲存储部件,用于缓冲本步骤的执行结果。 同时有多个任务在执行;每个每个子任务的功能部件并行工作,但各个功能部件上正在执行的是不同的任务; 各子任务执行的时间应尽可能相近。 流水线有装入时间和排空时间,只有流水线完全充满时,流水线的效率才能得到充分发挥。 流水线分类——按处理级别 操作级流水 操作重叠 指令级流水 指令执行重叠 处理器级(宏流水线) 任务重叠 流水线分类——按功能多少分 单功能流水线:流水线只完成一种固定功能 Cray-1计算机种有12条,YH-1计算机有18条 Pentium有一条5段定点和一条8段浮点流水线。 PentiumⅢ有两条定点和一条浮点指令流水线。 多功能流水线:流水线可以完成多种功能 TI公司的ASC机,8段流水线,能够实现:定点加减法、定点乘法、浮点加法、浮点乘法、逻辑运算、移位操作、数据转换、向量运算等。 多功能流水线 流水线分类——按同一时间内各段之间的连接方式分 静态多功能流水线 :同一时间内,多功能结构只能按一种功能的连接方式工作。 动态多功能流水线:在同一时间内,可以有多种功能的连接方式同时工作。 静态多功能流水线例 动态多功能流水线例 其它几种流水线分类方法 按处理的数据类型 标量流水线 向量流水线 按控制方式 同步流水线 异步流水线:当Si功能段要向Si+1段传送数据时,首先发出就绪信号,Si+1功能段收到信号后,向Si回送一个回答信号。 按任务从输出端的流出顺序 顺序流水方式:指令流出顺序 = 指令流入顺序 乱序流水方式:指令流出顺序 ? 指令流入顺序 流水线分类----按流水线结构 线性流水线——不带反馈回路的流水线 线性流水线和非线性流水线对比 相同之处 都有从第一个功能段到最后一个功能段的单向传输线。 不同之处 非线性流水线一般有前馈线路或反馈线路; 非线性流水线的输出端经常不在最后一个功能段,而可能从中间的任意一个功能段输出。 任务经过流水线时,可能要多次经过同一功能段。 仅用功能段之间的连接图并不能清楚地描述一个非线性流水线。一般需要连接图和一张预约表共同描述。 流水线的基本参数——吞吐率 吞吐率(Through Put)——在单位时间内流水线所完成的任务数量或输出的结果数。 其中:n为任务数, Tk为完成n个任务所用的时间。 各段执行时间相等,输入连续任务情况下,完成n个任务需要的总时间为: Tk=(k+n-1)?t 其中:k 为流水线的段数,?t为时钟周期。 Tk= k?Δt +(n-1)Δt = (k+n-1)?t 流水线的基本参数——加速比 加速比----完成一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。 流水线的基本参数——加速比 流水线的基本参数——效率 效率(Efficiency)——流水线的设备利用率。在时空图上,流水线的效率定义为n个任务实际占用的时空区,与k个功能段总的时空区之比。 流水线的基本参数——效率 各流水段时间不等,输入n个连续任务,流水线效率为: 吞吐率、加速比与效率的关系 流水线性能分

文档评论(0)

1亿VIP精品文档

相关文档