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

7计算机系统结构(第的七讲).ppt

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

计算机系统结构 (第七讲);第五章 标量处理机;5.2 流水线处理机;5.2.3 线性流水线的性能分析;5.2.3.5 流水线性能分析举例;例5.1:单功能、线性流水线,输入任务不连续 Z=A+B+C+D+E+F+G+H Z=[(A+B)+(C+D)]+[(E+F)+(G+H)] 图5.42:用一条4段浮点加法器流水线求8个数之和的流水线时空图 吞吐率:TP=n/Tk=7/(15*△t)=0.47*(1/△t) 加速比:S=T0/Tk=(4*7*△t)/(15*△t)=1.87 效率:E=T0/(k*Tk)=(4*7*△t)/(4*15*△t)=0.47 ;例5.2:多功能、线性流水线,输入任务不连续 Z=AB+CD+EF+GH Z=[AB+CD]+[EF+GH] 图5.43:用TI-ASC多功能静态流水线求两个向量点积的流水线时空图 吞吐率:TP=n/Tk=7/(20*△t)=0.35*(1/△t) 加速比:S=T0/Tk=(4*4*△t+ 3*6*△t)/(20*△t)=1.70 效率:E=T0/(k*Tk)=(4*4*△t+ 3*6*△t)/(8*20*△t)=0.21 该流水线的效率很低,原因主要有四个:p294;5.2.4 非线性流水线的调度技术;功能部件冲突,或流水线冲突 采用延迟输入新任务的方法 非线性流水线的调度问题 非线性流水线调度的任务:要找出一个最小的循环周期,按照这个周期向流水线输入新任务,流水线的各个功能段都不会发生冲突,而且流水线的吞吐率和效率最高;5.2.4.1 非线性流水线的表示;一张非线性流水线的预约表可能与多个非线性流水线连接图相对应,如图5.45 一个非线性流水线的连接图也可能对应有多张预约表,如图5.46;5.2.4.2 非线性流水线的冲突;图5.49:启动距离为5的流水线预约表(任何一个功能段在任何一个时钟周期都不发生冲突) ;非线性流水线的启动循环:如启动循环(1,7) 图5.50:启动距离为(1,7)循环时的流水线预约表 恒定循环:如启动循环(5);非线性流水线的禁止向量 如何由预约表得到禁止向量?P297-298 平均启动距离:如启动循环(1,7)的平均启动距离为4;启动循环(5)的平均启动距离为5 ;5.2.4.3 无冲突调度方法;图5.51:非线性流水线的状态图 与一张预约表相对应,只有唯一的一个状态图 从预约表可以画出状态图,但从状态图不能得到预约表;在状态图中可以找到很多不发生功能冲突的启动循环 简单循环:表5.1 (各冲突相量只经过一次的启动循环);最小启动循环:如启动循环(1,1,7) 图5.52:最小启动循环(1,1,7)的流水性预约表 恒定循环:如启动循环(5);5.2.4.4 优化调度方法;图5.54:与图5.53相对应的流水线状态图(有非计算延迟的流水线状态图);图5.55:按照最小启动循环(3)工作的流水线预约表;单功能非线性流水线 静态多功能非线性流水线 动态多功能非线性流水线 ;5.2.5 局部相关;相关:数据相关、控制相关 相关:局部相关(local correlation)、全局相关(global correlation),图5.56 基本块(basic block) 软件方面:编译器生成的目标程序要能够适合流水线结构 硬件方面:要解决好存储系统的频带平衡问题 局部相关有三种: (1)、“先写后读”数据相关, “写读”相关,“WR”或“RAW” (2)、“先读后写”数据相关, “读写”相关,“RW”或“WAR” (3)、“写-写”相关,“WW”或“WAW” ;5.2.5.1 顺序流动和乱序流动;把如下一段程序输入到流水线中:p304 ;图5.58:顺序流动方式 正常流动: S1 - S2 - S3 - S4 - S5 - S6 = k+5 - k+4 - k+3 - k+2 - k+1 - k 发生“先写后读”数据相关时: 流水线就会“断流”,有些功能段要出现“空闲”,如图5.58的“ti - ti+1 - ti+2 - ti+3 - ti+4”;什么是乱序(out of order)流动方式?P305 亦称错序流动方式、无序流动方式、异步流动方式 ;从流水线的输出端看,指令流出流水线的顺序与输入端指令进入流水线的顺序是不一样的 有些指令执行的时间短或经过的功能段比较少,它们要越过执行时间长或经过功能段多的指令向前流动 ;程序中出现的三种数据相关:p306 (1)、“先写后读”:k - k+2 (2)、“先读后写”:k+2 - k+3 (3)、“写-写”:k+2 - k+4 ;如何测试程序

文档评论(0)

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

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

1亿VIP精品文档

相关文档