所屬科目:計算機系統
(一)請寫出 Control Test 的演算法(或是流程圖)。 (10 分)
(二)給定兩個十進位數字被乘數(Multiplicand)5 和乘數(Multiplier)12, 請用上述(一)所寫出之 Control Test 的演算法(或流程圖)完成圖(一) ALU 的運算,需寫出執行的過程。(10 分)
(三)若要將圖(一)擴展成 32 位元的 ALU,且可以執行無號數和有號數(Signed Number)的乘法運算,請說明可以如何擴展或是設計?(5 分)
(一)請說明加法運算與減法運算會發生滿溢的情形為何?(15 分)
(二)請設計一個電路(或演算法)來檢查運算結果是否發生滿溢?(10 分)
(一)請問此程式的執行時間和平均 CPI 是多少(若有小數計算到小數點二位)?(10 分)
(二)如果程式平行化後分別在 4 個和 8 個處理器核心上執行,每個處理器 的時脈頻率依舊是 2 GHz,每個處理器上執行分支類指令數維持不變, 但於 4 個核心上執行算術類指令數以及 load/store 類指令數為原該指令數除以 2.8,於 8 個核心上執行算術類指令數以及 load/store 類指令數為原該指令數除以 5.6,請問平行化後對於單處理器執行結果分別 提升多少(若有小數計算到小數點二位)?(15 分)
(一)記憶體階層存取效能(Performance)兩個常用的衡量指標命中(Hit) 和錯失(Miss),請說明何謂命中?何謂錯失?以及如何影響記憶體效能?(10 分)
(二)在記憶體階層的整體運作上,主記憶體存取可能會遇到三種錯失:TLB 錯失、頁錯失和快取(Cache)錯失。設想這三種錯失,有一種或是多種發生,可以組合成七種可能性。請對每一種可能性,說明是否真的會發生且在什麼情況下會發生?(15 分)