Re: [請益] 請問Reorder Buffer 的意思? thanks

看板CSSE (電腦科學及軟體工程)作者 (I0O1)時間19年前 (2006/03/22 20:05), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
ROB 是 Architecture 中提到的吧.. 要完全了解 ROB, 可能要先把 pipeline, scoreboard 之類的東西搞清楚 簡單的講 // 假設你至少學過 pipeline pipleline之類的架構, 受到各種 hazards 的影響還是很大, 像是 conditional branch, 要等到 condition 的最終結果出來後, 才能決定跳或不跳 有很多種方法解決這個問題, ROB 是一種 它的精神是: a. fetch 指令仍然 in-order b. execute 卻是 out of order (因為有些指令比較快結束 一些指令比較慢結束) c. commit 又是 in-order e. 將所有的指令依照 commit 順序放在 ROB - 當 ROB 目前的第一個指令 commit 後, 就可將此指令從 ROB 移走 (因此可以看成一個 FIFO) - 若有指令要使用到 "尚未 commit, 但已經計算完成的指令" 所更動的 registers 會先從 ROB table 中取出, 而不是去看 registers (也因此, 可以減少像是 control hazard 等影響) - 當 branch 預測錯誤時 (例如 predict not taken, 結果卻 taken) 會將此 branch 以下的所有指令全部從 ROB 中刪除, 重新 fetch 大概是這樣的.. 更細節我也忘光囉 ※ 引述《SOCJAE (哈哈哈)》之銘言: : 各位看板大大好: : 想請問ROB(reorder buffer)的功用為何? : 有在雅虎搜尋過,不過大都是簡體或英文版, : 大陸所敘述的意義實在不太理解, 懇請板上 : 大大幫忙解釋這名詞的功用為何, thanks -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.209.4

03/22 21:53, , 1F
感謝I001大大的解釋, 大心
03/22 21:53, 1F
文章代碼(AID): #148JscVY (CSSE)
文章代碼(AID): #148JscVY (CSSE)