多指令流出技术VLIW 和Superscalar简介.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文档。上传文档
查看更多
多指令流出技术: VLIW 和Superscalar简介 周学海 xhzhou@ustc.edu.cn Review #1/2 Reservations stations: 寄存器重命名,缓冲源操作数 避免寄存器成为瓶颈 避免了Scoreboard中无法解决的 WAR, WAW hazards 允许硬件做循环展开 不限于基本块(IU先行,解决控制相关) 贡献 Dynamic scheduling Register renaming Load/store disambiguation 360/91 后 Pentium II; PowerPC 604; MIPS R10000; HP-PA 8000; Alpha 21264使用这种技术 小结 #2/2 动态调度方案可以用硬件动态完成循环展开 通过重命名机制来消除WAR和 WAW 相关 Reorder Buffer: 提供了撤销指令运行的机制 指令以发射序存放在ROB中 指令顺序提交 分支预测对提高性能是非常重要的 推断执行是利用了ROB撤销指令执行的机制 Superscalar 和VLIW: CPI 1 (IPC 1) 如何使CPI 1 (1/2) 前面所述的各种技术主要通过减少数据相关和控制相关,使得CPI = 1 ( CPI接近1) 是否能够使CPI 1? 两种基本方法 Superscalar: 每个时钟周期所发射的指令数不定(1 -8条) 由编译器或硬件完成调度 IBM PowerPC, Sun UltraSparc, DEC Alpha, HP 8000 该方法对目前通用计算是最成功的方法 新的概念 Instructions Per Clock (IPC) vs. CPI 如何使 CPI 1? (2/2) 另一种方法 (Very) Long Instruction Words (V)LIW: 每个时钟周期流出的指令数(操作)固定 (4-16) 由编译器调度,实际上由多个单操作指令构成一个超长指令 目前比较成功的应用于DSP,多媒体应用 1999/2000 HP和Intel达成协议共同研究VLIW Intel Architecture-64 (Merced/A-64) 64-bit address Style: “Explicitly Parallel Instruction Computer (EPIC)” 用于多发射处理器的五种主要方法 Superscalar DLX Superscalar DLX: 每个时钟周期发射2条指令,1 条FP指令和一条其他指令 – 每个时钟周期取64位; 左边为Int , 右边为FP – 只有第一条指令发射了,才能发射第二条 – 需要更多的寄存器端口,因为如果两条指令中第一条指令是对FP的load操作(通过整数部件完成),另一条指令为浮点操作指令,则都会有对浮点寄存器文件的操作 Type Pipe Stages Int. instruction IF ID EX MEM WB FP instruction IF ID EX MEM WB Int. instruction IF ID EX MEM WB FP instruction IF ID EX MEM WB Int. instruction IF ID EX MEM WB FP instruction IF ID EX MEM WB 原来1 cycle load 延时在Superscalar中扩展为3条指令 Review: 具有最小stalls数的循环展开优化 采用Superscalar技术的循环展开 Integer instruction FP instruction Clock cycle Loop: LD F0,0(R1) 1 LD F6,-8(R1) 2 LD F10,-16(R1) ADDD F4,F0,F2 3 LD F14,-24(R1) ADDD F8,F6,F2 4 LD F18,-32(R1) ADDD F12,F10,F2 5 SD 0(R1),F4 ADDD F16,F14,F2 6 SD -8(R1),F8 ADDD F20,F18,F2 7 SD -16(R1),F12 8 SD -24(R1),F16 9 SUBI R1,R1,#40 10 BNEZ R1,LOOP 11 SD +8(R1),F20 12 循环展开5次以消除延时 (+1 due to SS) 12 clocks, or 2.4 clocks per iterat

文档评论(0)

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

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

版权声明书
用户编号:7065201001000004

1亿VIP精品文档

相关文档