网站大量收购闲置独家精品文档,联系QQ:2885784924

计算机体系结构第4章_流水线计算机设计技术.pptVIP

计算机体系结构第4章_流水线计算机设计技术.ppt

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

解:总共流入多功能流水线的任务数为7个,完成任务所需的时间为15Δt,而顺序完成7个任务需要的时间为???????4×3Δt+3×4Δt=24Δt???因此,该流水线的实际吞吐率为:TP=7/(15Δt)???效率为:η=24Δt/(5×15Δt)=32%前面讨论的是静态流水线,如果把静态流水线改为动态流水线,其它条件不变,那么,在计算向量点积?????????????????时,流水线在此期间的吞吐率TP和效率η又该是多少呢?动态流水线的实际吞吐率为:TP=7/(14Δt)=1/(2Δt)???效率为:η=(4×3Δt+3×4Δt)/(5×14Δt)≈34.3%思考题:若将例4.2中的改为,则分别采用静态双功能流水线与动态双功能流水线时,流水线的实际吞吐率、加速比和效率又分别是多少?解:(1)静态双功能流水线:???????(2)动态双功能流水线:???????4.5?非线性流水线的调度技术???在非线性流水线中,由于存在有反馈回路,当一个任务在流水线中流过时,在同一个功能段可能要经过多次,因此,不能每一个时钟周期向流水线输入一个新任务,否则会发生在同一个时刻有几个任务争用同一个功能段的情况。这种情况称为功能部件冲突,或流水线冲突。???非线性流水线调度的任务是要找出一个最小的循环周期,按照这周期向流水线输入新任务,流水线的各个功能段都不会发生冲突,而且流水线的吞吐率和效率最高。4.5.1??非线性流水线的基本概念图4.21?非线性流水线???在非线性流水线的表示中,它与线性流水线有两个明显不同的地方:???(1)有反馈线和前馈线;???(2)其输出端经常不在最后一个功能段,而可能从中间任意一个功能段输出。图4.22?单功能流水线预约表举例预约表----用于非线性流水线,是一张二维的表格,其横坐标表示流水线工作的时钟周期,纵坐标表示流水线的功能段,中间画“√”表示该功能段在这一时钟周期处于工作状态,空白的地方表示该功能段在这个时钟周期不工作。???值得说明的是:(1)一张非线性流水线的预约表可能与多个非线性流水线连接图相对应;(2)一个非线性流水线的连接图也可能对应多张预约表。因此,一条非线性流水线一般需要一个各功能段之间的连接图和一张预约表来共同表示。4.5.2??无冲突调度方法???禁止表----将流水线中所有各段对一个任务流过时会重复使用同一功能段的节拍间隔数汇集在一起,构成一个禁止表F。???冲突向量----用一个N-1位的位向量来表示后继新任务间隔各种不同拍数送入流水线时,是否会发生功能段使用的冲突,称此位向量为冲突向量C。冲突向量(cN-1…ci…c2c1)中第i位的状态用以表示与当时相隔i拍给流水线送入后继任务是否会发生功能段的使用冲突。如果不会发生冲突,令该位为“0”,表示允许送入;否则,让该位为“1”,表示禁止送入。图4.24?简化后的状态转换图图4.23?流水线的状态转换图?表4.1?各种调度方案的平均间隔拍数调度方案(2,2,7)(2,7)(3,4)(4,3)(3,4,7)(3,7)(4,3,7)(4,7)(7)平均间隔拍数3.674.53.53.54.6754.675.57???由表4.1中可见,平均间隔拍数最少的调度方案是(3,4)和(4,3)调度方案。但最优调度方案是(3,4)调度方案,即采用先隔3拍后隔4拍轮流给流水线送入任务的调度方案是最佳的,平均每隔3.5拍即可流入一个任务,吞吐率最高。4.5.3??优化调度方法????在预约表中,“√”最多的一行对应的功能段表示一个任务流经流水线时使用次数最多,因此该功能段是整个流水线的瓶颈功能段。非线性流水线调度的关键是充分使用瓶颈功能段,使之处于满负荷工作状态,此时非线性流水线的吞吐率、加速比和效率必然是最高的。????采用预留算法来调度非线性流水线,可以达到最优调度,具体方法如下:????(1)确定流水线的最小平均间隔时钟周期数。最小平均间隔周期数等于预约表中任意一行中“√”的最多个数,或者是同一个任务通过流水线中任意一个功能段的最多次数。????(2)确定最小启动循环。相对于同一个最小平均间隔周期数可能有多个最小启动循环,其中有且仅有一个启动循环是一个间隔周期数相等的恒定循环。为了简化流水线的控制逻辑,在一般情况下,就选择这个恒定循环作为最小启动循环。???(3)结合流水线的预约表和连接图,采用预留算法,通过插入非计算延迟功能段实现最小启动循环。[例

文档评论(0)

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

计算机研究者

1亿VIP精品文档

相关文档