计算机体系结构习题课

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章计算机设计基本原理•Amdahl定律可改进比例:该部件的原执行时间在原系统总执行时间中所占的比例部件加速比可改进比例可改进比例)+(=总执行时间总执行时间系统加速比=改进后改进前-11例题选讲(1)例1假设将某系统的某一部件的处理速度加快到10倍,但该系统的原处理时间仅为整个运行时间的40%,则采用加快措施后能使整个系统的性能提高多少?方法一:依Amdahl定律公式,已知:Fe=0.4,Se=10,求Sn。它说明局部(40%)的大幅度改进(10倍)对全局的作用要小得多(1.56倍)。111.560.40.6410.410nS方法二:406044060例题选讲(2)•计算机系统中有三个部件可以改进,这三个部件的部件加速比如下:部件加速比1=30;部件加速比2=20;部件加速比3=10;如果相对某个测试程序三个部件的可改进比例分别为20%,20%,70%,要达到最好改进效果,仅对一个部件进行改进时,选择那个部件?如果运行两个部件,又如何选择?例题2的解答•对于瓶颈部分进行改进可以获得最大的改进效果。(第一问)7.2107.07.011nS对于瓶颈部分进行改进可以获得最大的改进效果。(第二问)同样情况下使用改进加速比大的方法66.5302.0107.02.07.011nSCPU的性能公式CPI是衡量CPU执行指令效率的重要指标。让我们先考虑一个标准测速程序的全部执行时间Te和其中所有第i种指令的累计时间Ti,易知的加权平均值。为所有,它表明)(或者写为)(的关系与一式,可以得到比较上面第一式与最后写另一方面,我们又可以,iniiiniiiniiiniiiniieniiiiieCPICPICPIICICCPICPIICCPIICCYCLECPIICCYCLECPIICTTICICfCYCLECYCLECPIICTCYCLECPIICTCPICPI)()(1其中:11i1111例题选讲(3)TypicalMixBaseMachine(Reg/Reg)OpFreqCyclesCPI(i)(%Time)ALU50%1.5(33%)Load20%2.4(27%)Store10%2.2(13%)Branch20%2.4(27%)1.5例题选讲(4)例在静态流水线上计算,流水线的输出可以直接返回输入端或暂存于相应的流水线寄存器中,试计算其吞吐率和效率。解:(1)确定适合于流水处理的计算过程(2)画时空图(3)计算性能流水段任何指令类型IFIF/ID.IR←Mem[PC];IF/ID.NPC,PC←(ifEX/MEM.cond{EX/MEM.NPC}else{PC+4});IDID/EX.A←Regs[IF/ID.IR6..10];ID/EX.B←Regs[IF/ID.IR11..15];ID/EX.NPC←IF/ID.NPC;ID/EX.IR←IF/ID.IR;ID/EX.Imm←(IR16)16##IR16..31;ALU指令Load/Store指令分支指令EXEX/MEM.IR←ID/EX.IR;EX/MEM.IR←ID/EX.IR;EX/MEM.ALUoutput←ID/EX.A+ID/EX.Imm;EX/MEM.ALUoutput←EX/MEM.ALUoutput←ID/EX.NPC+D/EX.Imm;ID/EX.AopID/EX.BEX/MEM.cond←或(ID/EX.Aop0);EX/MEM.ALUoutput←ID/EX.AopID/EX.Imm;EX/MEM.cond←0;MEMMEM/WB.IR←MEM/WB.IR←EX/MEM.IR;EX/MEM.IR;MEM/WB.LMD←MEM/WB.ALUoutputMem[EX/MEM.ALUoutput];EX/MEM.ALUoutput;或Mem[EX/MEM.ALUoutput]←EX/MEM.B;WBRegs[MEM/WB.IR16..20]←MEM/WB.ALUoutput;Regs[MEM/WB.IR11..15]←MEM/WB.LMD;或Regs[MEM/WB.IR11..15]←MEM/WB.ALUoutput;例题选讲(5)•在DLX流水线上运行如右代码序列。其中,R3的初值是R2+396。假设,在整个代码序列的运行过程中,所有的存储器访问都是命中的,并且在一个时钟周期中对同一个寄存器的读操作和写操作可以通过寄存器文件定向。问:LOOP:LWR10(R2)ADDIR1R1#1SWR10(R2)ADDIR2R2#4SUBR4R3R2BNZR4LOOP1.在没有定向(或旁路)硬件的支持下,请画出该指令序列执行的流水线时空图。假设采用排空流水线的策略处理分支指令,且所有的存储器访问都可以命中Cache,那么执行上面循环需要多少时钟周期2.假设该DLX流水线有正常的定向路径,请画出该指令序列执行的流水线时空图。假设采用预测分支失败的策略处理分支指令,其所有的存储器访问都可以命中Cache,那么执行上面循环需要多少时钟周期123456789101112131415161718192021LOOP:LWR10(R2)IFIDEXMEMWBADDIR1R1#1IFIDSSEXMEMWBSW0(R2)R1IFSSIDSSEXMEMWBADDIR2R2#4SSIFSSIDEXMEMWBSUBR4R3R2SSIFIDSSEXMEMWBBNZR4LOOPIFSSIDSSEXMEMIF需要进行396/4=99次循环,由于每次分支都清空流水线。从上图可以看出每次循环需要16个时钟周期,因此总共需要的时钟周期数为99×16=1584(或1583)流水段分支指令操作IFIF/ID.IR←Mem[PC];IF/ID.NPC,PC←(ifID/EX.cond{ID/EX.NPC}else{PC+4});IDID/EX.A←Regs[IF/ID.IR6..10];ID/EX.B←Regs[IF/ID.IR11..15];ID/EX.NPC←IF/ID.NPC+(IR16)16##IR16..31;ID/EX.IR←IF/ID.IR;ID/EX.cond←(Regs[IF/ID.IR6..10]op0);ID/EX.Imm←(IR16)16##IR16..31;EXMEMWB表3.5列出了在改进后的流水线数据通路上处理分支指令的一些操作123456789101112131415161718192021LOOP:LWR10(R2)IFIDEXMEMWBADDIR1R1#1IFIDSEXMEMWBSW0(R2)R1IFSIDEXMEMWBADDIR2R2#4SIFIDEXMEMWBSUBR4R3R2IFIDEXMEMWBBNZR4LOOPIFID-sIDEXMEMIFiiiLWR10(R2)IF需要进行396/4=99次循环,由于每次分支预测都失败,并且在ID段需要计算分支目标和分支条件。从上图可以看出每次循环需要9个时钟周期,因此总共需要的时钟周期数为98×9+10=892(或者891)例题选讲(6)•在下面Tomasulo结构上执行指令,分别计算每条指令写结果阶段的时间(时钟周期数),并画出相应的时空图。FPaddersAdd1Add2Add3FPmultipliersMult1Mult2FromMemFPRegistersReservationStationsCommonDataBus(CDB)ToMemFPOpQueueLoadBuffersStoreBuffersLoad1Load2Load3Load4Load5Load6LatencyLDF634+R21LDF245+R31MULTDF0F2F410SUBDF8F6F22DIVDF10F0F640ADDDF6F8F22123456789101112131415161718……555657LDF634+R2IESECWLDF245+R3IESECWMULTDF0F2F4ISESEEEEEEEEEECWSUBDF8F6F2IESEECWDIVDF10F0F6ISSSSSSSSSSESEE……EECWADDF6F8F2ISESEECWTomasuloExampleInstructionstatus:ExecWriteInstructionjkIssueCompResultBusyAddressLDF634+R2Load1NoLDF245+R3Load2NoMULTDF0F2F4Load3NoSUBDF8F6F2DIVDF10F0F6ADDDF6F8F2ReservationStations:S1S2RSRSTimeNameBusyOpVjVkQjQkAdd1NoAdd2NoAdd3NoMult1NoMult2NoRegisterresultstatus:ClockF0F2F4F6F8F10F12...F300FUTomasuloExampleCycle1Instructionstatus:ExecWriteInstructionjkIssueCompResultBusyAddressLDF634+R21Load1Yes34+R2LDF245+R3Load2NoMULTDF0F2F4Load3NoSUBDF8F6F2DIVDF10F0F6ADDDF6F8F2ReservationStations:S1S2RSRSTimeNameBusyOpVjVkQjQkAdd1NoAdd2NoAdd3NoMult1NoMult2NoRegisterresultstatus:ClockF0F2F4F6F8F10F12...F301FULoad1TomasuloExampleCycle2Instructionstatus:ExecWriteInstructionjkIssueCompResultBusyAddressLDF634+R21Load1Yes34+R2LDF245+R32Load2Yes45+R3MULTDF0F2F4Load3NoSUBDF8F6F2DIVDF10F0F6ADDDF6F8F2ReservationStations:S1S2RSRSTimeNameBusyOpVjVkQjQkAdd1NoAdd2NoAdd3NoMult1NoMult2NoRegisterresultstatus:ClockF0F2F4F6F8F10F12...F302FULoad2Load1TomasuloExampleCycle3Instructionstatus:ExecWriteInstructionjkIssueCompResultBusyAddressLDF634+R213Load1Yes34+R2LDF245+R32Load2Yes45+R3MULTDF0F2F43Load3NoSUBDF8F6F2DIVDF10F0F6ADDDF6F8F2ReservationStations:S1S2RSRSTimeNameBusyOpVjVkQjQkAdd1NoAdd2NoAdd3NoMult1YesMULTDR(F4)Load2Mult2NoRegisterresultstatus:ClockF0F2F4F6F8F10F12...F303FUMult1Load2Load1TomasuloExampleCycle4Instructionstatus:ExecWriteInstructionjkIssueCompResultBusyAddressLDF634+R2134Load1NoLDF245+R324Load2Yes45+R3MULTDF0F2F43Load3NoSUBDF8F6F24DIVDF10F0F6ADDDF6F8F2ReservationStations:S1S2RSRSTimeNameBusyOpVjVkQjQkAdd1YesSUBDM(A1)Load2Add2NoAdd3NoMult1YesMULTDR(F4)Load2Mult2N

1 / 62
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功