在下才疏學淺
可能完全誤會老師所講授的知識也說不定
請見諒XDDDD
昨天老師在教管線(pipeline) CPU
其中提到data hazard 的問題
因為管線拆的深度越深
其hazard 現象越嚴重
但是為了解決 data hazard 的問題
學者們提出了 靜態 & 動態的解決方法
其中靜態的方法又分為軟體的方法以及硬體的方法
老師說
軟體的解決方法:
是compiler 從高階語言編譯到組合語言的時候,如果發現有data hazard發生的時候
塞入空指令(NOP)
但這無法有效解決data hazard 的問題
所以學者們又提出一個方法: forward (手邊沒書,可能有錯,回家再修改)
將data hazard 區域 上面或是下面不影響結果的組合指令搬到data hazard 的區域
取代NOP
進而將大多數的NOP殺掉
也就是說
原本
1.