计算机组成原理44 指令流水.pptVIP

  • 18
  • 0
  • 约3.93千字
  • 约 18页
  • 2020-08-01 发布于天津
  • 举报
二、系统的并行性 时间上互相重叠 2. 并行性的等级 指令级(指令之间) (指令内部) 过程级(程序、进程) 两个或两个以上事件在 同一时刻 发生 两个或两个以上事件在 同一时间段 发生 并行 1. 并行的概念 粗粒度 软件实现 细粒度 硬件实现 并发 同时 取指令 3 执行指令 3 三、指令流水原理 2. 指令的二级流水 1. 指令的串行执行 取指令 取指令部件 完成 总有一个部件 空闲 指令预取 若 取指 和 执行 阶段时间上 完全重叠 指令周期 减半 速度提高 1 倍 … 执行指令 执行指令部件 完成 取指令 1 执行 指令 1 取 指令 2 执行 指令 2 取 指令 3 执行指令 3 取指令 2 执行指令 2 取指令 1 执行指令 1 时间 ? 3. 指令的六级流水 六级流水 14 个时间单位 串行执行 6 × 9 = 54 个时间单位 完成 一 条指令 6 个时间单位 t CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI 指令 1 指令 2 指令 3 指令 4 指令 5 指令 6 指令 7 指令 8 指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 时间 ? 4. 流水线操作时空图 装入阶段 稳定流水阶段 排空阶段 执行操作 取数操作 分析指令 取指令 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7 1 2 3 4 5 6 7 空间 T 0 T 1 T 2 T 3 T 4 T 5 T 6 T 7 T 8 T 9 时间 I 2 3 4 5 6 7 指令的流水线结构类似于工厂中的装配流水线,使连续操作 的多条指令,依次流入四个功能部件,使四个功能部件不停地 依次处理不同指令的执行要求,这样在每隔一个部件工作时间 t , 就可送入一条新的指令,每经过时间 t 就可得到一条指令执行的 结果,指令执行速度可提高四倍。 5. 指令流水线的特点 1 ) 流水线的每一个阶段完成一条指令执行过程的 一部分,不同阶段并行完成不同指令执行过程 的不同部分。 2 ) 多条指令 同时运行 ,占用 CPU 不同的资源。 3 )流水线并 没有缩短 单条指令的时间,但提高了 整个系统的吞吐率。 4 )连续不断地提供指令才能发挥流水线的效率。 指令 1 与指令 4 冲突 指令 2 与指令 5 冲突 指令 1 、指令 3 、指令 6 冲突 … CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI CO FO EI WO DI FI 指令 1 指令 2 指令 3 指令 4 指令 5 指令 6 指令 7 指令 8 指令 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 t 四、影响指令流水线性能的因素 1. 结构相关 不同指令争用同一功能部件产生资源冲突 程序中相近的指令之间出现某种关联 使指令流水出现停顿,影响流水线效率 解决办法 : ? 停顿(插入汽泡) ? 指令存储器和数据存储器分开 2. 数据相关 不同指令因重叠操作,可能改变操作数的 读 / 写 访问顺序 ? 采用 旁路技术 解决办法 ? 写后读相关( RAW ) SUB R 1 , R 2 , R 3 ADD R 4 , R 5 , R 1 ;( R 2 ) ( R 3 ) R 1 ;( R 5 ) + ( R 1 ) R 4 ? 读后写相关( WAR ) STA M , R 2 ADD R 2 , R 4 , R 5 ;( R 2 ) M 存储单元 ;( R 4 ) + ( R 5 ) R 2 ? 写后写相关( WAW ) ?

文档评论(0)

1亿VIP精品文档

相关文档