107 中山資工所考古題詳解|硬體考點分析
全卷 2 頁 8 大題,全是問答申論題。內容有指令延遲與 CPI 的取捨、合併成四級 pipeline、VLIW 與 superscalar、由 hit rate 反推 cache 參數、interconnect topology、Tomasulo 的 tag、Amdahl's Law 與 DRAM refresh。
最後更新:2026-10-22
題型與配分
全卷 2 頁、8 大題、100 分,不可使用計算機,卷面名稱為問答申論題。
| 題號 | 配分 | 主題 |
|---|---|---|
| 1 | 10% | 指令延遲與 CPI(4 個小問) |
| 2 | 15% | 合併成四級 pipeline 的影響(5 個小問) |
| 3 | 10% | VLIW、superscalar 與 array processing(3 個小問) |
| 4 | 15% | 由 hit rate 反推資料 cache 參數(4 個小問) |
| 5 | 10% | 625 個處理器的 interconnect topology(2 個小問) |
| 6 | 15% | Tomasulo 演算法的 tag 比較器與儲存(5 個小問) |
| 7 | 10% | Amdahl's Law(2 個小問) |
| 8 | 15% | DRAM refresh 的使用率(4 個小問) |
第 1 題:指令延遲與 CPI(10%)
為 IoT 嵌入式系統設計處理器,監測軟體分析得到的指令比例與延遲(Table 1):
| 指令 | 比例 | 延遲 |
|---|---|---|
| load | 10% | 7 cycles |
| store | 15% | 10 cycles |
| branch | 15% | 4 cycles |
| add | 55% | 4 cycles |
| divide | 5% | 5 cycles |
- 1.1(2%)|這個指令組合的 CPI
- 1.2(2%)|可以把任一類指令的週期延遲減半,代價是 clock cycle 增加 20%,該不該做這個改變,若該做,要加速哪一類指令(load、store、branch、add 或 divide)
- 1.3(3%)|新設計的 CPI
- 1.4(3%)|新設計相對原設計的 speedup,四捨五入到小數第一位
第 2 題:四級 pipeline(15%)
標準五級 pipeline 為 fetch (F)、decode (D)、execute (X)、memory (M)、writeback (W),把其中相鄰兩級合併成四級 pipeline。
- 2.1(3%)|合併 D 與 X 對 CPI 有什麼具體的正面影響
- 2.2(3%)|合併 X 與 M 對 CPI 有什麼具體的正面影響
- 2.3(3%)|合併 M 與 W 對 pipeline 的 clock rate 可能有什麼具體的正面影響
- 2.4(3%)|合併 F 與 D 對 branch prediction 的實作有什麼具體影響
- 2.5(3%)|延遲 n ns 的 single-cycle datapath 改成 p 級 pipeline 後,clock cycle 會比 n/p ns 長,給兩個原因
第 3 題:VLIW 與超純量(10%)
- 3.1(2%)|VLIW、superscalar 執行與 array processing 三個概念的共同點
- 3.2(4%)|給兩個理由,說明 VLIW microarchitecture 為什麼比「同寬度」的 superscalar microarchitecture 簡單
- 3.3(4%)|給兩個理由,說明 superscalar microarchitecture 為什麼可能比「同寬度」的 VLIW microarchitecture 效能更高
第 4 題:由 hit rate 反推快取參數(15%)
Table 2 給了一個程式在有資料 cache 的處理器上產生的四組位址序列與各自的 hit rate,每組序列開始時 cache 都是空的,求這個資料 cache 的參數。
| 序列 | 位址序列 | hit rate |
|---|---|---|
| 1 | 0、2、4、8、16、32 | 0.33 |
| 2 | 0、512、1024、1536、2048、1536、1024、512、0 | 0.33 |
| 3 | 0、64、128、256、512、256、128、64、0 | 0.33 |
| 4 | 0、512、1024、0、1536、0、2048、512 | 0.25 |
- 4.1(3%)|associativity(1、2 或 4 路)
- 4.2(4%)|block size(1、2、4、8、16 或 32 bytes)
- 4.3(4%)|cache 總容量(256 或 512 bytes)
- 4.4(4%)|replacement policy(LRU 或 FIFO)
第 5 題:互連拓樸(10%)
- 5.1(6%)|要連接 625 個處理器,考慮 bus、point-to-point network 與 mesh 三種拓樸,各寫一個缺點:(i) 單一 bus 2% (ii) point-to-point network 2% (iii) 25×25 mesh 2%
- 5.2(4%)|要連接 625 個處理器,三種拓樸中選哪一種,為什麼
第 6 題:Tomasulo 演算法(15%)
Tomasulo 演算法需要 tag 的廣播與比較來喚醒相依的指令。要在具有下列規格的機器上實作:
- 8 個功能單元,每個功能單元有專屬的 tag 與資料廣播 bus
- 32 個 64 位元的架構 register
- 每個功能單元有 16 個 reservation station entry
- 每個 reservation station entry 可以有兩個來源 register
- 6.1(3%)|每個 reservation station entry 要幾個 tag 比較器
- 6.2(3%)|整台機器總共要幾個 tag 比較器
- 6.3(3%)|tag 的最小大小
- 6.4(3%)|register alias table(或 frontend register file)的最小大小,以位元計
- 6.5(3%)|整台機器 tag 儲存的最小總大小,以位元計
第 7 題:Amdahl's Law(10%)
把舊程式平行化,讓它在現代多核處理器上跑得更快。程式 90% 的工作量(以 processor-seconds 計)在可平行部分、10% 在序列部分,可平行部分可以完美平行化。
- 7.1(5%)|多核處理器有無限多個 core 時,程式的最大 speedup
- 7.2(5%)|要達到 speedup 4 需要幾個處理器
第 8 題:DRAM refresh(15%)
記憶體系統有 2 個 DRAM 通道,每個通道有 2 個 rank,每個通道由各自的記憶體控制器控制,每個 rank 有 8 個 bank,每個 bank 有 32K 列,每列 8 KB。系統中所有 DRAM 列的最短保留時間為 64 ms,為了確保資料不遺失,每一列每 64 ms refresh 一次。每次列 refresh 由記憶體控制器的命令發起,佔用對應通道的命令 bus。考慮 1.024 秒的時間區間,使用率定義為某項資源(bus 或 bank)被 refresh 命令佔用的時間占總時間的比例。每小題的答案可以用 2 的冪次與 10 的冪次化簡後表示。
- 8.1(4%)|每個 refresh 命令要佔用命令 bus 多久(ns),所有通道的命令 bus 因 refresh 造成的使用率才會是 8.192%(提示 8.192 = 213/1000)
- 8.2(4%)|每個 refresh 命令要佔用 DRAM bank 多久(ns),所有 bank 因 refresh 造成的使用率才會是 8.192%
- 8.3(3%)|DRAM refresh 直接造成的資料 bus 使用率(跨所有通道)
- 8.4(4%)|1.024 秒內,兩個通道的記憶體控制器總共執行幾次 refresh
作答時要注意的地方
- 全卷 8 大題,配分是 10、15、10、15、10、15、10、15,每小題 2 到 6 分。
- 第 1.4 題要四捨五入到小數第一位。
- 第 4 題每組序列開始時 cache 都是空的,四個小問的選項都列在卷面上。
- 第 6.4 題卷面把 register alias table 與 frontend register file 並列。
- 第 8.1、8.2 題是由使用率反求每次佔用的時間,卷面給了 8.192 = 213/1000 的提示。
- 卷首沒有印「可自行假設」的註記(106 年有)。
- 科目標示為資工系碩士班甲組與乙組,兩組考同一份卷子。
準備方向
- 指令組合與 CPI(107 第 1 題),109 第 2 題同樣給指令延遲表求 CPI 與變體,106 第 3 題、108 第 2.4 題、110 第 2.1 題、112 第 1.3 題、113 第 4 題、115 第 1.2、2.1 題也有。
- pipeline stage 數的合併(107 第 2 題),108 第 3.3 題也問五級合併成四級。
- VLIW、superscalar 與 array processing(107 第 3 題),114 第 6.1、6.2 題與 3.1、3.2 題相同,114 年另外多問 array processor;108 第 5.4 題、109 第 8 題也有 static 與 dynamic scheduling。
- 由 hit rate 反推 cache 參數(107 第 4 題),112 第 6 題也是給序列的 hit rate,求 block size、associativity、容量與 replacement policy。
- interconnect topology(107 第 5 題),106 第 1.5 題考 UMA。
- Tomasulo 演算法(107 第 6 題),109 第 8 題考 dynamic scheduling。
- Amdahl's Law(107 第 7 題),108 第 2.2 題、111 第 4.2 題也要反求條件,109 第 3 題、110 第 2.2 題、113 第 1 題、115 第 2.2 題也有。
- DRAM refresh(107 第 8 題),112 第 2 題是四個通道、給定佔用時間求使用率,114 第 1 題也有。
其他年度與考科
同一年的其他科
同一科的其他年度
同一年其他學校的硬體