第四章課后習題


第四章處理器體系結構,看了蠻久的。內容倒是挺多的,首先這章將匯編指令轉化為二進制代碼,然后又研究了下Y86命令集下匯編指令的微實現。然后就開始了處理器的實現。處理器的實現,則是首先從SEQ的順序實現出發,然后講解了5個環節的控制邏輯的實現。之后則是流水線的實現,流水線的實現無非就是各個狀態的轉發,但是比較難的是旁路轉發。歸根到底,整個系統的實現都是基於一開始的指令的微指令實現。最后,則是遇到數據相關、預測分支失敗以及ret如何處理的問題。

==這章的習題大部分設計到模擬器的使用,懶得弄實驗的部分,而且自己的電腦跑虛擬機實在是吃力,許多題目就過一下就好了。
4.47 ==題意理解錯了,是根據C代碼寫匯編指令;而我卻是將代碼寫完后直接gcc -Og -S bubble.c了,,莫名喜感。
4.53
由於沒有數據轉發,因此一旦發生了數據相關,則必須等待。
M 加載 ret
E 加載 JXX ret
D 使用 ret

顯然會發生 M:加載 E:JXX D:使用 這樣的情況。
此時的控制是 D:氣泡 F:正常

4.57
E_icode in {mrmovq,popq}(產生加載)&&(( E _destM==d _srcB)||(
…==d _srcA&& e _incode in {OPQ,rrmovq})}
E_incode in {rmmovq,pushq}&&E _srcA==M _dstM: w _valM;
1:valA
把所有指令的M和D階段的步驟全部列了一遍即可,,

這章太水了,,回頭再動手做一下實驗。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com