微处理器设计_第七讲_流水线引论及答案.pptVIP

微处理器设计_第七讲_流水线引论及答案.ppt

  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文档。上传文档
查看更多
第七讲 流水线技术引论 流水线的基本性能 流水线增大了CPU的指令吞吐量---即单位时间完成指令的条数 流水线技术经常对流水线附加一些控制,因而增加了开销,随之单条指令执行时间略有加长 流水线基本性能—例 考察非流水线机器。假设其时钟周期为10ns,ALU和分支操作需要4个时钟周期,存储器操作需要5个时钟周期,以上操作的比例相应为40%,20%,40% 假设由于存在时钟偏移和启动时间,时钟周期增加了1ns,并忽略其他的影响,求该流水线的加速比。 流水线级数选择—优点 在理想情况下,即流水线处理器中可连续执行的指令条数k - ? 时,流水线处理器的性能加速比为流水线的级数,因此流水线处理器的性能取决于流水线级数的选取 。 若流水线级数选取得越大,则对于给定的逻辑通路,流水级就分得越细,每一级的逻辑通路就越短,时钟周期就越快,处理器的性能也就越高。 流水线级数选择—缺点 随着流水线级数的增加,由于指令流的断流所产生的延迟就增加了,这样将会逐渐掩去由于流水级的增加所带来的性能增益; 在每一个流水级中,除了实现操作的逻辑通路具有一定的传输延迟外,还需要有固定的锁存开销时间,包括:锁存建立、锁存传输和时钟偏斜 流水线级数选择--流水线中时钟周期的组成 流水线级数选择 若逻辑通路过分地细化,虽然逻辑通路的传输时间可分摊到各流水级中,但由于锁存开销时间是固定的,锁存开销时间将会成为决定流水线时钟周期的主要因素。 另外,随着流水线级数的增加,流水线中各级所需的锁存硬件开销也将逐渐增大; 同时由于流水线级数的增加,处理器的时钟频率也将加快,处理器所需的功耗也将逐渐增高。 因此存在一个根据所实现处理器的性能、价格目标,选取满足设计目标的最佳流水线级数的问题。 流水线级数选择--最佳流水线长度 Larson和Davidson[Larson73]提出了一个求解使所实现的处理器的性能达到最大的最佳流水线级数的模型,该模型的建立是基于处理器的逻辑通路长度L、锁存开销时间t、连续执行指令数k。则最佳流水线长度nmax: 式中的nmax 的意义为:当流水线级数增加时,处理器的性能将随着流水线级数的增加而逐渐增加;当流水线级数增加为nmax时,处理器的性能达到最大;此后尽管再继续增加流水线的级数,处理器性能开始下降。 流水线级数选择--最佳流水线长度 可以得到一个结论:减少t值,可以获得更长的流水线,获取更高的性能。t值的减少可通过两种渠道:一方面在实现中采用快速的锁存器;另一方面在实现中采用合理的时钟分配方案来减少时钟偏斜。 在设计处理器的流水线时,需考察分析各种影响流水线设计的有关因素,根据所实现处理器的性能、价格目标,选取满足设计目标的最佳流水线级数,使所实现的处理器达到设计要求。 流水级的分配 为了保证各流水级中操作的平衡,一个最直接的想法是依照最佳流水线级数将逻辑通路中的逻辑门进行平均分配来进行流水线的划分。图示出了在两个寄存器之间具有L个逻辑级的一级流水线;若流水线分为两级,则每一级逻辑有L/2个逻辑门;以此类推。 但是由于处理器中的逻辑结构非常复杂,存在众多的中间信号和反馈信号,这样划分会增加太多的流水级锁存,是极为不现实的。 流水级的分配 通常在进行流水线的划分时,将所确定的最佳流水线级数作为参考,依据功能来进行划分的。 依据功能来进行划分所带来的好处是:流水级之间彼此独立,中间信号可以减少,减少中间锁存的开销; 其缺点是:很难完全平衡流水线中各流水级的操作 将一个功能划分为一个子功能流水线的条件 所划分的子功能流水线的功能等价于原功能; 在子功能流水线中,前一个子功能流水级的输出是下一个子功能流水级的输入; 在各子功能流水级之间仅存在输入与输出的联系,而无其它任何内部联系; 各子功能流水级的功能实现可由硬件完成; 各子功能流水级的执行时间通常相等。 在对处理器的逻辑通路进行流水线划分时,应严格遵循上述5个条件,其中,要重点平衡流水线中各流水级的操作,使各流水级的执行时间基本相等,以减少流水线处理器中时钟周期的长度。 * 在非流水线的机器上,指令的平均执行时间: 指令平均执行时间=时钟周期 X 平均CPI =10ns X [(40%+20%) X 4 + 40% X5] =44ns 在流水线方式下,时钟周期为11ns,即指令的平均时间。 speedup=44ns/11ns=4

文档评论(0)

我是追梦人 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档