> 強調しておくすけど「リタイアするまで」OoOの命令キューから取り除かれることわないす。
実は、そういう実装もあるにはあるんだ。
どうして「リタイアするまで」命令キューに取り除かれることがないのか説明してごらん。
ありがたく図を出してくれたので解説しとくと、
一番上のAlpha 21264はリオーダバッファじゃなくてチェックポイントでインオーダ状態をメンテしてるんだ。
チェックポイントというのは、その時点でのレジスタマップ(のコピー)なんだけど、珍しいタイプだね。
二番目のPOWER5は、Global completion tableというのがROBそのものだよ。
IBMの好きな独自用語だね。
三番目のARMについては知らないので、
OoO Write back stageというのがROBに相当するか、本当にOoO commitするのかはわからないが、
どちらにせよ命令キューからissue時に命令を取り除かない理由はなくなる。