Re: [理工] [計組]-control hazard

看板Grad-ProbAsk作者 (svanavs)時間16年前 (2009/09/23 20:21), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串3/4 (看更多)
※ 引述《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

09/23 21:04, , 1F
感謝解答!!
09/23 21:04, 1F
文章代碼(AID): #1AkXBCro (Grad-ProbAsk)
文章代碼(AID): #1AkXBCro (Grad-ProbAsk)