多指令流出技术VLIW和Superscalar简介.ppt

多指令流出技术VLIW和Superscalar简介.ppt

ID:68240397

大小:186.00 KB

页数:22页

时间:2021-09-30

多指令流出技术VLIW和Superscalar简介.ppt_第1页
多指令流出技术VLIW和Superscalar简介.ppt_第2页
多指令流出技术VLIW和Superscalar简介.ppt_第3页
多指令流出技术VLIW和Superscalar简介.ppt_第4页
多指令流出技术VLIW和Superscalar简介.ppt_第5页
多指令流出技术VLIW和Superscalar简介.ppt_第6页
多指令流出技术VLIW和Superscalar简介.ppt_第7页
多指令流出技术VLIW和Superscalar简介.ppt_第8页
多指令流出技术VLIW和Superscalar简介.ppt_第9页
多指令流出技术VLIW和Superscalar简介.ppt_第10页
资源描述:

《多指令流出技术VLIW和Superscalar简介.ppt》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、多指令流出技术:VLIW和Superscalar简介周学海xhzhou@ustc.edu.cnReview#1/2Reservationsstations:寄存器重命名,缓冲源操作数避免寄存器成为瓶颈避免了Scoreboard中无法解决的WAR,WAWhazards允许硬件做循环展开不限于基本块(IU先行,解决控制相关)贡献DynamicschedulingRegisterrenamingLoad/storedisambiguation360/91后PentiumII;PowerPC604;MIPSR10000;HP-PA8000;Alpha21

2、264使用这种技术动态调度方案可以用硬件动态完成循环展开通过重命名机制来消除WAR和WAW相关ReorderBuffer:提供了撤销指令运行的机制指令以发射序存放在ROB中指令顺序提交分支预测对提高性能是非常重要的推断执行是利用了ROB撤销指令执行的机制Superscalar和VLIW:CPI<1(IPC>1)小结#2/2如何使CPI<1(1/2)前面所述的各种技术主要通过减少数据相关和控制相关,使得CPI=1(CPI接近1)是否能够使CPI<1?两种基本方法Superscalar:每个时钟周期所发射的指令数不定(1-8条)由编译器或硬件完成调度

3、IBMPowerPC,SunUltraSparc,DECAlpha,HP8000该方法对目前通用计算是最成功的方法新的概念InstructionsPerClock(IPC)vs.CPI如何使CPI<1?(2/2)另一种方法(Very)LongInstructionWords(V)LIW:每个时钟周期流出的指令数(操作)固定(4-16)由编译器调度,实际上由多个单操作指令构成一个超长指令目前比较成功的应用于DSP,多媒体应用1999/2000HP和Intel达成协议共同研究VLIWIntelArchitecture-64(Merced/A-64)6

4、4-bitaddressStyle:“ExplicitlyParallelInstructionComputer(EPIC)”用于多发射处理器的五种主要方法SuperscalarDLXSuperscalarDLX:每个时钟周期发射2条指令,1条FP指令和一条其他指令–每个时钟周期取64位;左边为Int,右边为FP–只有第一条指令发射了,才能发射第二条–需要更多的寄存器端口,因为如果两条指令中第一条指令是对FP的load操作(通过整数部件完成),另一条指令为浮点操作指令,则都会有对浮点寄存器文件的操作TypePipeStagesInt.instru

5、ctionIFIDEXMEMWBFPinstructionIFIDEXMEMWBInt.instructionIFIDEXMEMWBFPinstructionIFIDEXMEMWBInt.instructionIFIDEXMEMWBFPinstructionIFIDEXMEMWB原来1cycleload延时在Superscalar中扩展为3条指令Review:具有最小stalls数的循环展开优化1Loop:LDF0,0(R1)2LDF6,-8(R1)3LDF10,-16(R1)4LDF14,-24(R1)5ADDDF4,F0,F26ADDDF8,

6、F6,F27ADDDF12,F10,F28ADDDF16,F14,F29SD0(R1),F410SD-8(R1),F811SUBIR1,R1,#3212SD16(R1),F1213BNEZR1,LOOP14SD8(R1),F16;8-32=-2414clockcycles,or3.5periterationLDtoADDD:1CycleADDDtoSD:2Cycles采用Superscalar技术的循环展开IntegerinstructionFPinstructionClockcycleLoop:LDF0,0(R1)1LDF6,-8(R1)2LD

7、F10,-16(R1)ADDDF4,F0,F23LDF14,-24(R1)ADDDF8,F6,F24LDF18,-32(R1)ADDDF12,F10,F25SD0(R1),F4ADDDF16,F14,F26SD-8(R1),F8ADDDF20,F18,F27SD-16(R1),F128SD-24(R1),F169SUBIR1,R1,#4010BNEZR1,LOOP11SD+8(R1),F2012循环展开5次以消除延时(+1duetoSS)12clocks,or2.4clocksperiteration(1.5X)多发射的问题如果Integer和F

8、P操作很容易区分组合,那么对这类程序在下列条件满足的情况下理想CPI=0.5:程序中50%为FP操作没有任何相关如果在同一时刻发射的指令

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。