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

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.4 指令流水 4. 流水线操作时空图 5. 指令流水线的特点 1)流水线的每一个阶段完成一条指令执行过程的一部分,不同阶段并行完成不同指令执行过程的不同部分。 2)多条指令同时运行,占用CPU不同的资源。 3)流水线并没有缩短单条指令的时间,但提高了整个系统的吞吐率。 4)连续不断地提供指令才能发挥流水线的效率。 思考题 1、在指令流水线中,每一条指令执行过程的时间减少了吗?如果没减少,那么为什么还要采用流水线技术呢? 2、什么是流水线的相关问题,通常都有哪几类相关问题,都是什么原因造成的?解决各类相关问题的方法有哪些? * * 一、如何提高机器速度 1. 提高访存速度 2. 提高 I/O 和主机之间的传送速度 提高整机处理能力 高速芯片 Cache 多体并行 I/O 处理机 DMA 多总线 通道 高速器件 改进系统结构 ,开发系统的并行性 中断 3. 提高运算器速度 高速芯片 改进算法 快速进位链 二、系统的并行性 时间上互相重叠 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 时间? 装入阶段 稳定流水阶段 排空阶段 执行操作 取数操作 分析指令 取指令       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  空间 T0 T1 T2 T3 T4 T5 T6 T7 T8 T9 时间 I 2 3 4 5 6 7 指令的流水线结构类似于工厂中的装配流水线,使连续操作的多条指令,依次流入四个功能部件,使四个功能部件不停地依次处理不同指令的执行要求,这样在每隔一个部件工作时间t,就可送入一条新的指令,每经过时间t就可得到一条指令执行的结果,指令执行速度可提高四倍。 指令 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. 数据相关 不同指令因重叠操作,可能改变操

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档