推 b10007034: 這題的架構應該有包含TLB,那你要page fault之前要先 12/19 23:39
→ b10007034: TLB miss,此時page fault的data flow就 12/19 23:39
→ b10007034: 不在IF orMEM stage了 12/19 23:39
推 b10007034: *Datapath,用錯字了 12/19 23:44
推 mistel: 請問b大是指TLB miss 管線內的指令不會stall嗎 12/19 23:50
→ b10007034: 如果只單考慮不含TLB的架構也不可能,因為page table 12/19 23:56
→ b10007034: 放在memory,你要知道是否page fault要先存取memory, 12/19 23:56
→ b10007034: CPU的速度比memory快很多... 12/19 23:56
→ b10007034: 造成TLB miss的指令(lw or sw or...)會有exception使 12/20 00:01
→ b10007034: 得pipeline被flush掉,處理完之後剛剛那個lw or sw的a 12/20 00:01
→ b10007034: ddr.還是有可能造成page fault... 12/20 00:01
推 mistel: 瞭解 因為每次算memory stall cycle這種計算題都會誤認為 12/20 00:04
→ mistel: 一般觀念題也是普通pipeline machine而不是超純量管線.. 12/20 00:04
→ mistel: 還是我搞錯了,B大不是在說進階管線? 12/20 00:05
推 b10007034: 我原來以為會有多的指令檢查page fault,可是剛剛又覺 12/20 10:43
→ b10007034: 得不合理,翻了課本還真的有寫 12/20 10:43
→ b10007034: 這下我不知道答案是怎樣了,囧 12/20 10:44
我後來想想他是不是想考page fault is raised by mmc?
※ 編輯: sunwaiteric (140.114.123.84 臺灣), 12/20/2019 12:16:40
推 b10007034: MMU? 12/20 15:55
對 打錯...
※ 編輯: sunwaiteric (42.72.142.109 臺灣), 12/21/2019 12:40:43
推 b10007034: 我傾向相信原文書,答案僅供參考 12/21 20:00
推 stygian2357: 給那些後面來查答案的人,這題跟早期白算盤的設計關 10/22 01:12
推 stygian2357: 有關係,早期因為MEM太慢,如果放在MEM階段會讓MEM 10/22 01:14
→ stygian2357: 更慢,所以會放到EXE階段,算好的資料跟著Pipeline送 10/22 01:14
→ stygian2357: 到下個階段,可以參考課本107頁的題目 10/22 01:14