方式の比較
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/06/02 00:56 UTC 版)
「レジスタ・リネーミング」の記事における「方式の比較」の解説
どちらの方式でも命令は順番どおりにキューに追加され、アウト・オブ・オーダーで削除される。キューに穴ができたとき、後ろから詰めないと使われていないエントリが多くなっていく。それを防ぐには可変優先度エンコーディング機能が必要とされる。穴を詰める機能のあるキューは単純な優先度エンコーディングと言えるのだが、キューを詰めるには非常に大きな回路を必要とする。 予約機構はリネームから実行までの遅延時間が短い。なぜならリネーム段階で物理レジスタ番号ではなく値そのものを得ることができるからである。この遅延時間は分岐予測失敗時の遅延時間の一部となる。 予約機構は命令発行から実行までの遅延時間も短い。なぜならローカルなレジスタファイルがタグインデックス方式より小さいからである。タグ生成と例外処理も予約機構の方が単純である。これは以下で解説する。 予約機構で使われる物理レジスタファイルは使われていないエントリをつぶすと同時並行して発行キューも処理する。これにより結果としてレジスタファイルが大きいのと同じ効果を生み、性能向上をもたらす。ただしレジスタファイルの回路はタグインデックス形式よりも複雑である。予約機構の各エントリは結果を書き込むことができるため、8個の発行キューに繋がれた予約機構はタグインデックス形式に比較して9倍もバイパス機構(全体に通知する仕組み)を活用している。したがって、予約機構形式はタグインデックス形式よりも大きな回路となってしまう。 さらに、予約機構形式は結果を格納するための場所を4箇所(Future File、予約機構、Reorder Buffer、アーキテクチャ上のレジスタファイル)持っている。一方、タグインデックス形式では一箇所だけ(物理レジスタファイル)である。機能ユニットが結果を通知して書き込む箇所があちこちにあるため、予約機構形式はタグインデックス形式より大きな回路と電力と時間が必要となってしまう。
※この「方式の比較」の解説は、「レジスタ・リネーミング」の解説の一部です。
「方式の比較」を含む「レジスタ・リネーミング」の記事については、「レジスタ・リネーミング」の概要を参照ください。
- 方式の比較のページへのリンク