第5章5.7流水线CPU技术.ppt

  1. 1、本文档共85页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章5.7流水线CPU技术

无序发射无序完成 I1 R1? M(A) I2 R2?(R1)+(R2) I3 R3?(R3)+(R4) I4 R4?(R4)×(R5) I5 R6? I6 R6?(R6)×(R7) 超标量流水线的调度方法 无序执行机制 指令预取 功能部件之间可无序执行 功能部件之内有序执行 可以提高程序执行速度 5.超流水线技术 超流水线:把一般完成一条指令的流水线段再细分成更多的流水线段。这样原时钟周期的几分之一的时间间隔就可以发射一条指令,并从流水线流出一个结果。 超流水线超标量处理技术 同时使用超流水线和超标量技术。 超标量的度为3,超流水线的度为3,超流水线超标量的度为9。 动态多重指令启动 性能分析 设有N条不相关的指令通过流水线,流水线的基准段为S,超流水线的度为n,超标量流水线的度为m,则基准标量机、超流水线机、超标量机的所需处理时间(基本时钟周期)分别为: 流水线加速比 1. 超流水线对基准标量流水线: 2.超标量流水线对基准标量流水线: 3.超流水线超标量流水线对基准标量流水线: 多重指令启动的局限性 流水线中功能部件之间的不平衡性 一个时钟周期中启动的多条指令可能资源冲突 每个循环迭代中的开销 一般存在数据相关性 循环体的数据相关性 需要大量相关性检测逻辑 控制相关性 缩短了转移指令的间距 多重启动的相关性检测逻辑 n重启动的指令流水线需要比较操作的数量: 2(n-1) + 2(n-2) + … + 2?1 = n2 – n [例6] 超标度为2的超标量流水线结构模型如图5.39(a)所示。它分为4个段,即取指(F)段、 译码(D)段、执行(E)段和写回(W)段。F,D,W 段只需1个时钟周期完成。E段有多个功能部件,其中LOAD/STORE部件完成数据cache访问,只需一个时钟周期;加法器完成需2个时钟周期,乘法器需3个时钟周期,它们都已流水化。F段和D段要求成对输入。E段有内部数据定向传送,结果生成即可使用。 现有如下6条指令序列: I1 LAD R1,A ;M(A)→R1,M(A)是存储器单元I2 ADD R2,R1 ;(R2) + (R1)-R2 I3 ADD R3,R4 ;(R3) + (R4)-R3 I4 MUL R4,R5 ;(R4)×(R5)-R4 I5 LAD R6,B ;M(B)→R6,M(B)是存储器单元 I6 MUL R6,R7 ;(R6)×(R7) → R6 其中 I1,I2有RAW相关, I3,I4有WAR相关, I5,I6有WAW相关和RAW相关。 请画出:(1)按序发射按序完成各段推进情况图; (2)按序发射按序完成的流水线时空图。 I1 LAD R1,A ;M(A)→R1,M(A)是存储器单元 I2 ADD R2,R1 ;(R2) + (R1)-R2 由于I1,I2间有RAW相关,I2要推迟一个时钟才能发射。 I3 ADD R3,R4 ;(R3) + (R4)-R3 I4 MUL R4,R5 ;(R4)×(R5)-R4 I3,I4之间有WAR相关,但按序发射,即使I3,I4并行操作,也不会导致错误。 I5 LAD R6,B ;M(B)→R6,M(B)是存储器单元 I6 MUL R6,R7 ;(R6)×(R7) → R6 I5,I6间还有WAW相关,只要I6的完成放在I5之后,就不会出错。I6要推迟一个时钟才能发射。 解: 译码段 执行段 写回段 时钟 2 3 4 5 6 7 8 9 10 注意:I5实际上已在时钟6执行完毕,但一直推迟到时钟9 才写回,这是为了保持按序完成。超标量流水线完 成6条指令的执行任务总共需要10个时钟周期。 在一台计算机中,指令的执行分为取指IF、译码ID、执行EX和写回WB四个阶段,每个阶段在一个时钟周期只能接受一个新任务,取指阶段和译码阶段不受指令类型或相关性的影响。在执行阶段中有乘法器和加法器等运算功能部件,乘法器是一个六级流水部件,加法器是一个两级流水部件,运算功能部件的输出可通过结果总线直接送入所有运算功能部件的输入端。对于以下指令序列: mult r3, r1, r4 /* s1 */ add r4, r1, r5 /* s2 */ mult r6, r4, r8 /* s3 */ 画出以下情况下指令执行的时空图并指出所需的执行时间: (1) 无序执行无序写回 (2) 有序执行有序写回 (3) 无序执行有序提交 第五章: 典型习题与解答 解答 (1) 指令执行

文档评论(0)

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

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

1亿VIP精品文档

相关文档