第五章流水线处理技术 51流水处理概述 52流水线工作方式 53流水线调度 54流水中并行性进一步开发 5.5向量流水处理技术 本章重点见书P1935.1~5.9 下午1时27分
下午11时27分 1 第五章 流水线处理技术 5.1 流水处理概述 5.2 流水线工作方式 5.3 流水线调度 5.4 流水中并行性进一步开发 5.5 向量流水处理技术 本章重点见书 P193 5 . 1~5 . 9
51流水线处理概述 CPU主要工作方式: 顺序 >重叠 流水 设指令工作方式分成取指令、分析、执行指令 取指令 分析执行。。。 每阶段时间为t,共n条指令 顺序串行( sequence):T=2(+1分+饿) i=1 若各阶段执行时间相等,则共需3nt 优点:控制简单; 缺点:速度慢,机器各部件的利用率很低。 下午时27分 2
下午11时27分 2 5.1 流水线处理概述 一、CPU主要工作方式: ➢ 顺序 ➢ 重叠 ➢ 流水 取指令 分析 执行 。。。 每阶段时间为t,共n条指令 顺序串行(sequence): = = + + n i T t i t i t i 1 ( 取 分 执 ) 设指令工作方式分成取指令、分析、执行指令 若各阶段执行时间相等,则共需3 n t 优点:控制简单; 缺点:速度慢,机器各部件的利用率很低
重叠( Overlap):在两条相近指令的解释过程中,某些不同解释 阶段在时间上存在重叠部分。 包括一次重叠、先行控制技术和多操作部件并行。 √上一条指令的执行阶段与下一条指令的取指阶段完全 重叠;T=(2×n+1)t 将相邻两条指令的重叠时间再往前提前一个阶段; T=3×t(n-1)×t(n+2)×t 次重叠:把取指令操作隐含在分析、执行指令过程 中,则在任何时候只允许上条指令“执行”与下条指令 “分析”相重叠。 T=(n+1)×t 若各段时间不等时,有 实际执行时间: 7=t分1+2[max分,换1+执 i=2
下午11时27分 3 重叠(Overlap):在两条相近指令的解释过程中,某些不同解释 阶段在时间上存在重叠部分。 包括一次重叠、先行控制技术和多操作部件并行。 ✓ 上一条指令的执行阶段与下一条指令的取指阶段完全 重叠;T=(2×n+1)t ✓ 将相邻两条指令的重叠时间再往前提前一个阶段; T=3×t+(n-1)×t=(n+2)×t ✓ 一次重叠:把取指令操作隐含在分析、执行指令过程 中,则在任何时候只允许上条指令“执行”与下条指令 “分析”相重叠。 T=(n+1)×t 实际执行时间: n n i i i T t t t t 分 分 执 执 = + + = − 2 1 1 max , 若各段时间不等时,有
√先行控制:分析部件和执行部件能分别连续不断地分析和执 行指令,预取和缓冲相结合的技术,通过对指令流和数据流的 先行控制,使指令分析器和执行部件能尽量连续并行工作。 执行时间: NE 1I 分析。执行 分析u+1 执行k1 分析k+2 执行k+2 √多操作部件并行:采用有多个功能部件的处理机,把ALU的 多种功能分散到几个具有专门功能的部件中,这些功能部件可 以并行工作,使指令流出速度大大提高。 下午1时27分
下午11时27分 4 ✓先行控制:分析部件和执行部件能分别连续不断地分析和执 行指令,预取和缓冲相结合的技术,通过对指令流和数据流的 先行控制,使指令分析器和执行部件能尽量连续并行工作。 执行时间: = = + n i i T t t 1 先行 分1 执 分析k 执行k 分析k+1 执行k+1 分析k+2 执行k+2 ✓多操作部件并行:采用有多个功能部件的处理机,把ALU的 多种功能分散到几个具有专门功能的部件中,这些功能部件可 以并行工作,使指令流出速度大大提高
52、流水工作方式 1、流水的概念特点 流水:把一个重复时序过程分成若干个子过程,每个子过程 都可有效的在其专用功能段上和其它子过程同时执行 的一种技术。 流水线的基本结构中主要包括三大部分:锁存器、时钟、功 能站。 流水线中每个站都是由一些执行算术和逻辑功能的组合逻辑 线路组成的,它们可以互相独立地对流过的信息进行某种操作 相邻两站由高速锁存器( latch)隔开,信息在各站间的流动 靠同时送到各站的时钟信号来控制 IF ID EX MEM WB 输入一取指译码上执行访存写回输出 SI S2 S3 s455 下年1时27分指令的流水处理 5
下午11时27分 5 1、流水的概念特点 流水:把一个重复时序过程分成若干个子过程,每个子过程 都可有效的在其专用功能段上和其它子过程同时执行 的一种技术。 5.2、流水工作方式 取指 译码 执行 访存 写回 IF ID EX MEM WB S1 S2 S3 S4 S5 输入 输出 指令的流水处理 流水线的基本结构中主要包括三大部分:锁存器、时钟、功 能站。 流水线中每个站都是由一些执行算术和逻辑功能的组合逻辑 线路组成的,它们可以互相独立地对流过的信息进行某种操作, 相邻两站由高速锁存器(latch)隔开,信息在各站间的流动 靠同时送到各站的时钟信号来控制
输入 E 5k 输出 Sk e 时钟 流水线的基本结构 下午1时27分
下午11时27分 6 S1 S2 Sk 输入 输出 流水线的基本结构 ….. .…. 时钟
空间 填入 正常 排空 4 12345 n-n 3 12345 n-In I 23|45 n-n 11234|5 …n-1n △t△to△to△top (n-1)△to T0=m△t 时间 n△t ←(m-1)△to T 流水时空图 下午1时27分
下午11时27分 7 1 2 3 4 5 ... ... ... n-1 n 1 2 3 4 5 ... ... ... n-1 n 1 2 3 4 5 ... ... ... n-1 n 1 2 3 4 5 ... ... ... n-1 n 1 2 3 4 △t0 △ t0 △ t0 △ t0 T0=m △ t0 n △ t0 T (m-1) △ t0 (n-1) △ t0 填入 正常 排空 流水时空图 空间 时间
建立时间:在流水线开始时有一段流水线填入时间,使得流 水线填满。 正常流动时间:流水线正常工作,各功能段源源不断满载工 作。 排空时间:在流水线第一条指令结束时,其他指令还需要一 段释放时间。 2、流水线特点: 1)流水一定重叠,比重叠更苛刻。 2)一条流水线通常有多个流水段组成。 3)每段有专用功能部件,各部件顺序连接,不断流 4)流水线有建立时间、满载时间、排空时间, 5)各段时间尽量短、一致;不一致时最慢子过程为瓶颈。 6)给出指标如最大吞吐率,为满负载最佳指标。 下午1时27分
下午11时27分 8 2、流水线特点: 1)流水一定重叠,比重叠更苛刻。 2)一条流水线通常有多个流水段组成。 3)每段有专用功能部件,各部件顺序连接,不断流。 4)流水线有建立时间、满载时间、排空时间, 5)各段时间尽量短、一致;不一致时最慢子过程为瓶颈。 6)给出指标如最大吞吐率,为满负载最佳指标。 建立时间:在流水线开始时有一段流水线填入时间,使得流 水线填满。 正常流动时间:流水线正常工作,各功能段源源不断满载工 作。 排空时间:在流水线第一条指令结束时,其他指令还需要一 段释放时间
3、流水的分级、分类 分级:(处理的级别分类) ◇部件级:将复杂的算逻运算组成流水工作方式; 指令级:把一条指令解释过程分成多个子过程; ☆处理机级:每个处理机完成某一专门任务,各个处理机所 得到的结果需存放在与下一个处理机所共享的存储器中 其他分类: 功能:单功能流水线(如CRAY-1)、多功能流水线 (如 TLASO) 工作方式:静态流水线、动态流水线 连接方式:线性、非线性 处理数据:标量流水、向量流水 入 2 3 出 非线性流水线 下午1时27分
下午11时27分 9 1 2 3 4 出 入 非线性流水线 3、流水的分级、分类 分级:(处理的级别分类) ❖ 部件级:将复杂的算逻运算组成流水工作方式; ❖ 指令级:把一条指令解释过程分成多个子过程; ❖ 处理机级:每个处理机完成某一专门任务,各个处理机所 得到的结果需存放在与下一个处理机所共享的存储器中 其他分类: ➢ 功能:单功能流水线(如CRAY-1)、多功能流水线 (如TI-ASC) ➢ 工作方式:静态流水线、动态流水线 ➢ 连接方式:线性、非线性 ➢ 处理数据:标量流水、向量流水
4、流水线举例 (1)ASC算术运算流水线(多功能) 加 乘 1输入 1[输入 1输入 2减阶2□减阶 3对阶移位 3对阶移位 4相加 4相加 L_⊥------- 5规格化 5规格化 6相乘 6|相乘 7累加 7累加 8输出 8输出 8输出 下午1时27分
下午11时27分 10 (1)ASC算术运算流水线(多功能) 输入 减阶 对阶移位 相加 规格化 相乘 累加 输出 1 2 3 4 5 6 7 8 4、流水线举例 输入 减阶 对阶移位 相加 规格化 输出 1 2 3 4 5 8 加 输入 相乘 累加 输出 1 6 7 8 乘