[理工] 计组上册324(2)!

楼主: Aa841018 (andrew)   2018-11-14 15:56:19
https://i.imgur.com/AihTSZK.jpg
请问一下,为何(2)是load,不是store?两个都是20%,cpi又都是3,是怎么区分的啊?
作者: ss455032 (ss455032)   2018-11-14 16:06:00
Register-mem,add $t0,t1,0(S2),可以想成先load到一个register在相加
楼主: Aa841018 (andrew)   2018-11-14 16:12:00
可是store也是register-memory啊!怎么就不是store?
作者: b10007034 (Warren)   2018-11-14 23:41:00
觉得详解不知道在干麻,如果q2是如详解这样写,那为何q3计算load的部份没有把cpi=3改为cpi=2?我的想法是load&store都是受益者,新的cpi计算为2*0.4+2*0.2+2*0.2+2*0.2=2,新的cpu time=IC*2*1.05T仍然大于旧的,因此不选择新的有人可以解释一下吗,我也想知道解答写啥QQ自问自答,我刚刚查了一下知道怎么了,store-load其实是reg-reg的架构,原文书是这样的定义。同第一个的推文,只要想add $1,$2,imm,这样类似的指令可以直接存取内存就好只有load的原因是因为原来要做运算的话一定要把资料从内存搬到reg(load)才可以,而这个寻址模式解放这个限制了,所以load的数量就会变少。没有store的原因也就是上述说明的相反,没有人希望在内存做运算,因为可以在reg算就尽量在reg算,reg跟内存的解码速度差太多了,还有sram跟dram的差别。
作者: seika555 (kakkoii)   2018-11-15 02:13:00
题目开始有假设ALU的cpi及总cycle time都增加,又他是从reg-reg改成reg-mem 因此合理的假设ALU多了access mem的部分,然后在做运算时是要取暂存器的值,sw 是把reg存回mem不会影响读取,因此能减少的就是原本lw 的指令,分给ALU让他可access mem 和运算,就不用全透过lw去access 不知道这样想对不对
作者: b10007034 (Warren)   2018-11-15 09:17:00
你是从MIPS现有架构去思考这个问题吗?假设要相容现有架构的话,我认为是从instruction decode就有access mem.的部份了
作者: seika555 (kakkoii)   2018-11-15 09:25:00
哦哦对耶 没考虑到 不过我想说的是多pipelined 的第4个step

Links booklink

Contact Us: admin [ a t ] ucptt.com