DLX基本流水线.PPTVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DLX基本流水线

3.2 DLX的基本流水线;2. 一条DLX指令最多需要以下5个时钟周期:;(2)指令译码/读寄存器周期(ID)      A ← Regs[IR6 ..10]      B ← Regs[IR11 ..15]      Imm ← (IR16)16 ## IR16 ..31    操作      指令译码和读寄存器是并行进行的。之所    以能做到这一点,是因为在DLX指令格式中,    操作码在固定位置。这种技术也称为固定字段    译码。;   ;◆ 存储器访问     ALUOutput ← A+Imm  操作 ;◆ 寄存器―寄存器 ALU 操作     ALUOutput ← A op B 操作;◆ 寄存器―立即值 ALU 操作     ALUOutput ← A op Imm 操作;◆ 分支操作     ALUOutput ← NPC+Imm      Cond ← (A op 0) 操作;(4)存储器访问/分支完成周期(MEM)    在该周期处理的DLX指令只有Load、Store和    分支指令。;◆ 存储器访问     LMD ← Mem[ALUOutput]   或 Mem [ALUOutput] ← B    操作 ;◆ 分支操作     if(cond)PC ← ALUOutput     else PC ← NPC       操作;(5)写回周期(WB)    不同指令在该周期完成的工作也不一样。;寄存器―寄存器型 ALU 指令     Regs[IR16 ..20] ← ALUOutput;寄存器―立即值型 ALU 指令     Regs[IR11 ..15] ← ALUOutput;Load 指令 Regs[IR11 ..15] ← LMD ;3. 分支指令需要4个时钟周期,   其它指令需要5个时钟周期     假设分支指令占总指令数的12%, 则:   CPI=4.88   上述实现无论在性能上,还是在硬件开销上,都不是优化的。;3.2.2 基本的DLX流水线;3.2 DLX的基本流水线;按时间错开的数据通路序列;3. 采用流水技术还应解决好以下几个问题:;◆ 没有考虑 PC 问题;  但分支指令也可能改变PC的值,而且是 在MEM段进行,这会导致冲突。;  为解决问题,我们重新组织数据通路,把所有改变 PC值的操作都放在IF段进行。;(2)每一流水段内的操作都必须在一个时钟周期    内完成;◆ 流水线寄存器的构成;4. DLX流水线的操作;流水段;流水段;5.DLX流水线的控制;3.2.3 流水线性能分析;◆ 若流水线各段的时间不等,则:;重复设置瓶颈段(时-空图举例);◆ 第一种情况:各段时间相等(设为△t0)   假设流水线由 m 段组成,完成 n 个任务。;完成 n 个任务所需的时间; 实际吞吐率;3.2 DLX的基本流水线; 完成 n 个任务所需的时间   T流水=∑△ti+(n-1)△tj △tj=max{△ti } 实际吞吐率;  加速比是指流水线的速度与等功能非流水 线的速度之比。;3.2 DLX的基本流水线;可以看出:当n m 时,S ≈ m 想一想:n 越大越好?;3.2 DLX的基本流水线;(2) 若各段时间相等,则各段的效率ei相等,即 e1=e2 =e3=   =em=n△t0/T流水 (解释) 整个流水线的效率为:;(4) 提高流水线效率所采取的措施对于提高 吞吐率也有好处。;3.2 DLX的基本流水线;解:(1) 确定适合于流水处理的计算过程;3.2 DLX的基本流水线;可以看出,在求解此问题时,该流水线的效率 不高。 (原因);举例 Ⅱ : 这样行不行? 正确答案;例3.2 假设前面DLX非流水线实现的时钟周期时间 为10ns,ALU和分支指令需要4个时钟周期,访 问存储器指令需5个时钟周期,上述指令在程序 中出现的相对频率分别是:40%、20%和40%。在 基本的DLX流水线中,假设由于时钟扭曲和寄存 器建立延迟等原因,流水线要在其时钟周期时 间上附加1ns的额外开销。现忽略任何其他延迟 因素的影响,请问:相对于非流水实现而言, 基本的DLX流水线执行指令的加速比是多少? ;解:当非流水执行指令时,指令的平均执行时 间为 TPI非流水 = 10ns×((40%+20%)×4+40%×5) = 10ns×4.4 = 44ns 在流水实现中,指令执行的平均时间 是最慢一段的执行时间加上额外开销,即

文档评论(0)

sheppha + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5134022301000003

1亿VIP精品文档

相关文档