看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《yesa315 (XD)》之銘言: : http://www.lib.ntu.edu.tw/exam/graduate/89/89271-1.htm : 89台大計組考題 第2大題 : 解答寫說未改變設計之前 jump需多花1 clock cycle : conditional branch taken需多花2 clock cycle : CPI=1+5%*1+20%*60%*2 = 1.29 cycles : 這題的指令只有branch 跟 jump嗎..? : 到底是怎麼看的呢...? 原本設計 : 因為是預測 not taken, 只要不taken CPI 都是 1 當 taken 時 : jump 付出的額外代價是 1 cycle(一個指令白做) branch 付出的代價是 2 cycles(兩個指令白做) actual CPI 為 : not taken 時的 CPI + taken 時付出的代價 => 1 + ( 0.05*1 + 0.2*0.6*2 ) = 1.29 IF 拆成 2個stages : jump 需要 IF1 IF2 ID 3 個 cycles branch 則 需要 IF1 IF2 ID EX 4 個 cycles taken 時 : jump 付出的代價是 2 cycles branch 付出的代價是 3 cycles actual CPI 為 : 1 + 0.05*2 + 0.2*0.6*3 = 1.46 原本設計 cycle time 10 ns , 改變後 cycle time 8 ns performance 為 1.29*10 / 1.46*8 = 12.9 / 11.68 ≒ 1.1 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.222.93
yesa315:感謝解答!! 09/23 21:04