计算机系统结构21.pptxVIP

  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文档。上传文档
查看更多
1;流水线的结构相关和数据相关;表2.1 不同类型指令中各流水段的操作;流水线有五条指令I1,I2,I3,I4,I5. 中,指令顺序执行,资源不会冲突。 流水执行时,系统资源可能发生冲突,通常LOAD中 ME (访问主存)与 IF:(主存中)取指令 ;解决存储器争用冲突的办法;数据相关?; 流水线中执行时,指令读/写操作数顺序可能如下;数据相关解决方法;定向技术解决数据相关的ALU方案; 实例 ADD ? R1,R2,R3 ; SUB R4,R1,R5 AND ? R6,R1,R7 ; OR R8,R1,R9 ; 采用联锁硬件解决数据相关 定向传送技术来不及用,可通过流水线联锁硬件,使某些指令或流水段暂停流动一或多个周期,再定向传送,适合存储器操作指令。 ? ? ;采用联锁硬件; 4 软件法(静态指令调度):采用优化编译法,通过指令重新排序的方法来尽可能消除数据相关。如 ADD ? R1,R2,R3 ; SUB R4,R1,R5 ; 改为 ADD ? R1,R2,R3 ; ……… SUB R4,R1,R5 ; 使两条“相关”指令“分开” ;课堂练习; I1 LOAD R1 ,M(A) ; I1 I2 LOAD R2 ,M(B) ; I2 I3 LOAD R3 ,M(C) :I4 I4 LOAD R4 ,M(D) ; I5 I5 MUL R5 ,R1 ,R2 ; I3 I6 ADD R2 ,R3 ,R4 ; I6 I7 ADD R2 ,R2 ,R5 ; I7;【例】假设某指令序列中20%的指令是LOAD指令,且紧跟LOAD指令之后的半数指令使用到LOAD指令载入的结果。如果这种数据相关将产生一个时钟周期的延迟,问理想流水线(没有任何延迟,CPI为1)的指令执行速度要比这种真实流水线快多少? 解:假定问理想流水线(没延迟)的CPI为1。 LOAD指令之后的半数指令需要暂停,CPI为2。又知LOAD指令占全部指令的20%,所以真实流水线的实际CPI为 ?? ;例题 : 下列五条指令组成的汇编代码在一台三段流水线处理机上执行。三个流水段是:取指令 IF、取操作数 OF、执行 EX(包括写回)。要求: 1 分析在代码执行中所有可能的相关情况 2 用后推法给出一种避免相关发生的调度方法 INC R0 ; R0 ← (R0)+ 1 MUL ACC ,R0 ; ACC ← (ACC)×(R0) STR R1 ??ACC ;R1 ← (ACC) ADD ACC ,R0 ; ACC ← (ACC)+(R0) STA M ,ACC ;M ← (ACC);1) 先画出指令执行过程的(理想)时空图 ;后推法给出一种避免相关发生的调度;2.4 流水线控制相关 ;控制相关;条件转移指令对流水线影响分析;转移指令对性能的影响;转移指令对性能影响;【例】据统计,在一些典型程序中,转移指令所占的比例为20%,转移成功的概率 为q=60%。假设有一条8个流水段的指令流水线,问:由于条件转移指令的影响,流水线的最大吞吐率下降多少? 解:已知 p=0.20, q=? k=8 根据 则;静态分支技术 静态转移预测技术(猜测法) 延迟转移 提前形成条件码,生成转移目标地址 改进循环程序 动态分支预测技术 “转移历史表”BHT。 “转移目标缓冲栈”(BTB) 转移目标指令缓冲栈BTIB。 ;静态转移预测技术: 条件转移指令出现时,对条件转移方向进行预测,或预测转移成功或不成功。按照预测方向设置指令缓冲栈并采取预取指令。 程序执行过程中,静态预测转移的方向不能改变。 静态转移预测可以用硬件,也可用软件实现。 可以在转移的两个方向上都采取预取指令。 ;遇条件转移时,用“猜测法”选择一个分支方向。 选择“转移不成功”方向。控制逻辑相对简单。 “猜测”不正确,已执行的多个流水段将全部浪费。;延迟转移: 遇转移指令时,依靠编译器把一条或几条与转移结果无关的指令调度到转移指令后面(调度槽),以延长转移指令的可执行时间,这些调度指令完成后,转移指令的目的地址已计算出来。 调度到转移指令后的无

文档评论(0)

kuailelaifenxian + 关注
官方认证
文档贡献者

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

认证主体太仓市沙溪镇牛文库商务信息咨询服务部
IP属地上海
统一社会信用代码/组织机构代码
92320585MA1WRHUU8N

1亿VIP精品文档

相关文档