問題詳情

6 下列何種方式無法減少程式在處理器執行過程中,各種 hazard 所造成的暫停(stall)的效果?
(A)減少處理器內部管線化(pipeline)的級數
(B)採用資料前傳(Data Forwarding)的技術
(C)利用編譯器(Compiler)對於程式指令做適當的排程
(D)減少暫存器檔案(register file)的大小

參考答案

答案:D
難度:非常困難0.125
統計:A(2),B(1),C(4),D(1),E(0)

用户評論

San Hsien】評論

管線危障(Pipeline Hazards):下一個指令不能在緊接著的時脈週期被執行,這樣造成管理無法全速運作。若系統採用「管線」技術,當系統有「危害」(hazard)產生時就必須讓「管線動作暫停」(stall),以免造成程式執行錯誤。(A)級數的提高也會導致數據和指令衝突的嚴重性提高,硬體的複雜性也隨之提高。(B)資料危障(Data Hazards):一個指令的運算元必須參考前面指令的執行結果,但前面的執行結果卻還在管路中沒有執行完。解決方法-可以前送(forwarding)、旁傳(bypassing)(C)利用編譯器(Compiler)對於程式指令做適當的排程。(D)暫存器堆(register file)是CPU中多個暫存器組成的陣列,通常由快速的靜態隨機讀寫存儲器(SRAM)實現。CPU的...