作者NOtWorThy ()
看板Grad-ProbAsk
標題[理工] [計組]-control hazard
時間Fri Nov 6 00:21:07 2009
branch hazard有一些預測方法如1bit 2bits的
但是我想問的是
要是他猜測 branch 成立,如for loop等等猜他branch中的機率很高
但是branch不是最快在第2個stage才知道是否成立嗎?
datapath是怎麼做到他要猜他會branch?
也就是說她怎麼在還沒到計算branch target時就把PC設成branch target的??
煩請高手解惑
感激不盡
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.218.120
推 uminchu185:猜branch的話是在stage 1加入一buffer, 利用fetch出的 11/06 23:25
→ uminchu185:指令的後半部當做bufuer的index, 再檢查entry內的bit 11/06 23:26
→ uminchu185:branch taken的話, 我覺得應該也是要在stage 2才能計算 11/06 23:28
→ uminchu185:跳躍目的吧~ 11/06 23:28
推 SaiLinLampa:buffer 內就有存上次有沒有跳 跳到哪裡了 11/19 22:37