计算机组成原理(第五章-新)..ppt

(2) 流水CPU时空图分析 已知:为了实现流水,首先把要处理的任务Ki分割为一 系列子任务{ Sj },并使各子任务能在流水线的各个阶段 并发地执行。 当任务连续不断地输入流水线时,在流水线的输 出端便连续不断地吐出执行结果,从而实现了子任务级 的并行性。 下面通过时空图来说明这个结论(见教材P170)。 中央处理器 图(a)表示一个指令周期的任务分解: IF:取指令 指令处理包含以下四个子过程: ID:指令译码并取操作数 EX:执行运算 WB:结果写回 指令的执行过程如下: (教材P170图5.31) 非流水处理的时空图: 中央处理器   每一条指令的四个子过程全部执行完毕后, 才能开始下一条指令。因此,每四个时钟周期才有一个输出结果,8个时钟周期时间完成2条指令。 I1 I1 I1 I1 I2 I2 I2 I2 标量流水线的时空图: (单条流水线) 中央处理器 对标量流水计算机来说,指令周期的四个子过程在时间上可以重叠执行。因此,当流水线满载时,每一个时钟周期就可以输出一个结果。 同样是8个时钟周期时间,标量流水线则可执行5条指令。(在流水线初空的条件下) I1 I1 I1 I1 I2 I2 I2 I2 I3 I3 I3 I3 I4 I4 I4 I4 I5 I5 I5 I5 中央处理器 超标量流水线的时空图:(多条并行流水线) 标量是指单个量,向量是指一组标量。 标量流水计算机:流水计算机只有一条指令处理流水线。 超标量流水计算机: 流水计算机具有两条以上的指令处理流水线。 CAI演示 图中:当超标量(2条)流水线满载时,每一个时钟周期T可以执行2条指令。(初空时,8个T时间可完成10条指令) 显然:超标量流水线是时间并行技术和空间并行 技术的综合应用。 ??可见:本例中,在 8个时钟周期时间内: 非流水CPU仅可执行2条指令; 标量流水CPU可执行5条指令; 超标量流水CPU则可执行10条指令。 可见,流水CPU更具有强大的数据吞吐能力。 流水线分析举例: 流水线结构对机器CPI值的影响: 在单标量流水执行部件的RISC中,大部分指令的执行时间可以一个时钟周期,当然也包含少数需要多个时钟周期才能完成的指令,所以,此类机器的CPI指标≧ 1,但是,绝对不会有CPI1。 CPI:每条指令执行平均所用的时钟周期数 即: 若将RISC机器设计成具有多个流水执行部件的结构,允许在每一个机器周期内可同时发出多条指令,并调度多条指令在不同的流水执行部件中并行执行所需的操作,进而使得机器出现CPI1的性能,这就是“超标量结构”的概念。 超标量流水结构: 流水线分析举例 例1:假设一条指令按取指、分析、执行三个子过程完成,每个过程处理的时间分别为:T取、T分、T执,试分析下列几种情况下执行60条指令所需的时间: ( 假设: T取= T分=2 时间单位; T执=1 时间单位) (1)顺序方式; (2)仅(k+1)取指与k执行重叠; (3)(k+2)取指、(k+1)分析、k执行重叠。 [解] (1)顺序方式:完成60条指令需要时间为: T1=60×(T取+ T分+ T执) =60×(2+2+1)=300 (时间单位) 非流水 需要时间: T2= 60(T取+T分)+ T执 =60x(2+2)+1 =241 (时间单位) (2)仅(k+1)取指与k执行重叠,完成60条指令。 一次重叠 需要时间: T3= 60T取+ T分+ T执 =60×2+2+1=123 (时间单位) 取指 分析 执行 取指 分析 执行 取指 分析 执行 …… 取指 分析 执行 取指 分析 执行 第60条 第59条 第3条 第2条 第1条 完全重叠 (3) (k+2)取指、(k+1)分析、k执行重叠,完成 60条指令。 ? 结果为: (非流水) T1=300 (时间单位) (部分流水) T2=241 (时间单位) (流水结构) T3=123 (时间单位) 可见: 采用并行处理的流水线结构,可显著地提高机器的处理速度。 随着重叠(并行)处理的加强,处理速度显著提高。 例2:(与教材P184 习题13 类似) 已知:某机器指令周期包括有:取指令(IF)、译码(ID)、执行(E

文档评论(0)

1亿VIP精品文档

相关文档