115 中山資工所硬體考點分析
難度大幅下降——六大題幾乎全是課本核心觀念的申論與基本計算,沒有任何一題需要複雜的逐拍追蹤或反推設計。
題型與配分
科目名稱:計算機結構【資工系碩士班甲組、乙組】,題號 434001,考試時間 100 分鐘。不可以使用計算機(問答申論題)。試題請隨卷繳回。
| 題號 | 配分 | 主題 |
|---|---|---|
| 1 | 20% | 時脈頻率的極限、CPU 效能方程式、常見情形變快 |
| 2 | 20% | 平均 CPI 與 Amdahl's Law |
| 3 | 15% | RISC 風格的取捨、PC 相對定址 |
| 4 | 15% | 二補數的不對稱性、浮點加總順序 |
| 5 | 15% | load-use 危障、深管線的分支代價 |
| 6 | 15% | AMAT、提高關聯度為何反而傷效能 |
115 年的難度是中山硬體八年裡最低的一份。對照 109 年的「反推 DRAM bank 數」、112 年的「從命中率逆向工程快取規格」,115 年幾乎全部是課本核心觀念的申論加基本算術。
卷首註記(沿用 113 年):「若任何題目有歧義或條件不足,你可以做合理假設,但請在答案中清楚陳述並說明理由」。
全卷純計算機結構,不考作業系統。
第 1 題:觀念簡答(20%)
- Q1.1(7%)|為什麼「單靠提高時脈頻率」已經不再是提升處理器效能的有效且可持續的方法:
- 1(4 分)識別兩個限制更高時脈的基本物理或架構限制
- 2(3 分)說明每個限制如何直接推動了「平行化、預測、記憶體階層」的架構轉向
- 題目把三個轉向方向都寫出來了,第 2 小題要把第 1 小題的每個限制跟這三個方向一一對上,只列限制不講因果只能拿一半
- Q1.2(7%)|CPU 效能方程式:2 × 109 道指令;50% 算術(CPI 1)、30% 記憶體(CPI 5)、20% 控制(CPI 2);時脈 2 GHz:
- 1(3 分)總執行時間
- 2(4 分)把記憶體指令的 CPI 從 5 降到 2 後的新執行時間與整體加速比
- Q1.3(6%)|「make the common case fast」在實務上是什麼意思?為什麼違反它常常導致整體效能更差,即使罕見情形變快了。要連到 Amdahl's Law,並說明為罕見情形加的硬體會對常見路徑造成什麼副作用
第 2 題:效能分析(20%)
- Q2.1(10%)|35% 算術(CPI 1)、45% 記憶體(CPI 3)、20% 控制(CPI 2)、時脈週期 0.4 ns、10 億道指令:
- 1(5 分)平均 CPI
- 2(5 分)總執行時間
- Q2.2(10%)|浮點單元加速 5 倍,浮點指令原本佔總執行時間的 30%,用基本效能法則求整體最大可能加速比。「基本效能法則」指的就是 Amdahl's Law;注意題目給的 30% 是執行時間比例而不是指令比例
第 3 題:指令集架構(15%)
- Q3.1(8%)|為什麼現代 ISA 偏好簡單的 RISC 風格指令,即使這意味著要執行更多指令才能完成同樣的工作。用 CPU 效能方程式的三個因子來組織論述最清楚:指令數變多,另外兩個因子發生了什麼事
- Q3.2(7%)|為什麼條件分支幾乎都用 PC 相對定址而非絕對位址:
- (a)(4 分)指令集/系統層面的兩個理由。提示方向:程式被載入到哪裡、指令長度固定
- (b)(3 分)微架構層面的一個理由。提示方向:分支目標在管線的哪一級能算出來
第 4 題:計算機算術(15%)
- Q4.1(8%)|8-bit 二補數:
- (a)(3 分)可表示的最小與最大整數
- (b)(3 分)為什麼可表示值的集合是不對稱的(負數比正數多一個)。論證的起點是「n 個位元共有 2n 種樣式,而 0 必須佔掉其中一種」
- (c)(2 分)哪一個特定的位元樣式造成這個不對稱?它在二補數運算中的角色是什麼。對這個樣式取負會發生什麼事是這一小題的重點
- Q4.2(7%)|浮點加總順序:一個量值差異很大的浮點陣列,程式 A 由左到右加總、程式 B 先依量值由小到大排序再加總,兩者結果不同:
- (a)(4 分)說明兩個造成差異的浮點運算基本性質
- (b)(3 分)哪一種加總順序預期較準確?為什麼
- 考點是浮點加法的捨入與指數對齊時小數的尾數會發生什麼事。這是浮點運算最重要但最常被忽略的性質
第 5 題:管線與危障(15%)
- Q5.1(8%)|五級管線(IF/ID/EX/MEM/WB),load 之後緊接使用該值的指令(
LW R1,0(R2)後接ADD R3,R1,R4): - (1)(3 分)為什麼會發生資料危障
- (2)(3 分)為什麼單靠 forwarding 不足以解決。關鍵不在「有沒有轉送路徑」,而在資料在哪一級才真正存在,要跟 ALU 到 ALU 的相依對照著講
- (3)(2 分)最少需要幾個停頓。這是跨校最高頻的 load-use hazard
- Q5.2(7%)|深管線的分支代價:分支在管線最後一級解析、誤判會清掉所有較年輕的指令、預測準確率固定 90%、每級 1 週期:
- (a)(3 分)填表:管線深度 5、10、20 時,各自的誤判罰則(週期)與每個分支的平均成本(週期)
- (b)(4 分)根據上述結果,說明為什麼管線越深就越依賴準確的分支預測,即使預測準確率本身沒有改變。要引用 (a) 表格裡的數字變化來論證,並連到深管線原本想換取的東西
第 6 題:快取與記憶體階層(15%)
- Q6.1(8%)|由命中時間、失誤率與失誤罰則求 AMAT
- Q6.2(7%)|提高關聯度能減少衝突失誤,但為什麼最終反而會傷害效能?請用架構成本的角度說明。要從命中時間、硬體與功耗、邊際效益幾個面向論述,最有說服力的寫法是把兩種效應放進同一個 AMAT 式子裡比較(中山 113 年第 6 題就是這個現象的量化版)
這份考卷的難點
- 115 年的難度明顯低於前幾年,真正的挑戰是「論述要寫到位」。 六大題裡有四題是純申論,給分看的是能不能講出正確的架構原理,而不是結論本身。
- 第 4.2 題考的浮點性質是課本有提、但很多人沒真正理解的部分,要能說清楚「為什麼」順序會影響結果。
- 第 5.1(2) 題要說清楚「forwarding 為何不夠」。 很多人只寫「因為是 load」,沒講到資料產生與需要的時間點,拿不到分。
- 第 1.1 題要把「限制」與「架構轉向」一一對應。 只列出限制而沒有說明它如何推動轉向,只能拿一半分數。
準備建議
- 115 年的題型回歸基本,但要求「說出原理」。 準備方向是把每個核心觀念練到能用三到五句話講清楚,而不是只會算
- 功耗牆與記憶體牆(第 1.1 題)是現代計算機結構的兩大主線,Patterson & Hennessy 第一章的內容
- CPU 效能方程式與平均 CPI(Q1.2、Q2.1):中山八年幾乎每年都考
- Amdahl's Law(Q2.2):要分清題目給的是時間比例還是指令比例
- PC 相對定址(Q3.2):系統層面與微架構層面的理由都要會講
- 二補數的表示範圍與不對稱性(Q4.1)
- 浮點運算的精度問題(Q4.2)
- load-use 危障(Q5.1)是跨校最高頻的管線考點
- 深管線的分支成本(Q5.2):誤判罰則與管線深度的關係
- 關聯度的成本模型(Q6.2):中山 113 年第 6 題是量化版、115 年是定性版,兩年一起看最清楚