作者Aa841018 (andrew)
看板Grad-ProbAsk
标题[理工] 计组上册466(5)!
时间Thu Dec 6 17:00:16 2018
https://i.imgur.com/303Hbx4.jpg
想问5(a) ,首先有个alu-alu有点疑义,我的笔记是写(1)mem救ex,但是单看字面上
是(2)ex救ex,然後是题目:
我先以解答逆推,lw後面接nop,感觉是(2)的定义比较说的通,因为lw在mem结果才出
来,所以只能视为no forwarding,等到wb,因此需要一个nop,但之後add 和sw之间就很
怪,以(2)定义继续看,首先,sw的$6是不经过alu直接跑进mem因此ex救ex根本救不到
,$6的值应该在ID时就要了,但这题无法去救ID只能用nop来拖延,然後WB去更新!
但是add 和 sw中间根本没有nop,sw 在ID时add还在EX,一来ex无法救ID二来时间点上也
来不及…………
然後即便以(1)定义看,问题就是add不经过mem,所以也不行,但至少sw 和add之间应该
加nop吧?但也没有…………
完全看不懂,求详细解说…………
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 110.26.158.52
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1544086818.A.BEC.html
2F:→ Aa841018: 可是$6不经过ALU欸!这样应该救不到$6才对! 12/06 21:48
4F:→ f255577: 发现很多人问XD 好像可以质疑教科书 12/06 22:54
5F:推 TEPLUN: forwarding总共4条 第一条ALU-ALU就是从Mem stage送到Ex s 12/06 23:32
6F:→ TEPLUN: tage之所以叫ALU-ALU是因为把上一阶段从ALU计算得到的结果 12/06 23:32
7F:→ TEPLUN: 拿去给下个时脉的ALU使用 再来第二条是WB到Ex 第三第四条 12/06 23:32
8F:→ TEPLUN: 课本上没有 张凡有画 一条是R type接beq 从Ex/Mem出来後送 12/06 23:32
9F:→ TEPLUN: 到ID 另一条是lw接sw 从WB送到Mem的write data 这条也可以 12/06 23:32
10F:→ TEPLUN: 用来救add接sw 12/06 23:32
11F:推 TEPLUN: 然後之前去问过张凡 题目的Mem to Ex是错的应该改成no…WB 12/06 23:56
12F:→ TEPLUN: to Ex 12/06 23:56