導管式計算機(Pipeline Computer)可以增加計算機執行指令的吞吐量(Instruction
Throughput),但會形成三種障礙(Hazard),如結構障礙(Structure Hazard)、控
制障礙(Control Hazard)和資料障礙(Data Hazard)。
發生控制障礙時如何解決?(10 分)
一個典型的導管式計算機如圖一,由五個元件(Component)組成,如指令記憶體
(IM)、記錄器(Reg)讀取、運算單元(ALU)、資料記憶體(DM)、記錄器
(Reg)寫入。每個元件在一個時序(Clock Cycle)完成,其中記錄器(Reg)讀
取在時序的後半週完成而記錄器(Reg)寫入在時序的前半週完成。另一方面,元
件之間有記錄器用來傳遞控制訊號和相關訊息,如指令讀取/指令解碼(IF/ID),
指令解碼/指令執行(ID/EX),指令執行/資料存取(EX/M)和資料存取/記錄器
寫入(M/WB)。
圖一:五個元件的導管式計算機
當此計算機執行下面的程式時,說明它產生資料障礙的原因和解決方法。(15 分)
sub $7, $1, $3 // Register 7= Register 1 – Register 3 //
and $13, $7, $5 // Register 13= Register 7 and Register 5 //
or $14, $6, $7 // Register 14= Register 6 or Register 7 //
add $15, $7, $7 // Register 15= Register 7 + Register 7 //
sw $16, 168($7)// Put the content of Register 16 back to memory based on Register 7 //
ALU
IF/ID
ID/
EX
EX/
M
M/
WB
IM
Reg
Reg
DM
106年公務人員特種考試警察人員、一般警察
人員考試及106年特種考試交通事業鐵路
人員、退除役軍人轉任公務人員考試試題
全一張
(背面)
考試別: 一般警察人員考試
等
別: 二等考試
類科別: 刑事警察人員數位鑑識組
科
目: 計算機系統(包括計算機結構、作業系統)