分岐予測を行うパイプラインプロセッサで、予測が外れたときの処理として適切なものはどれか。
選択肢をタップすると、その場で答え合わせできます
正解と解説を見る
正解 B予測に基づいて取り込んだ後続の命令を無効化し、正しい分岐先から取り込み直す
解説
正解は「予測に基づいて取り込んだ後続の命令を無効化し、正しい分岐先から取り込み直す」です。分岐命令は、条件の判定と分岐先の計算が終わるまで次の命令が決まらず、制御ハザードが生じます。分岐予測では、分岐するかを予測して先に命令を取り込み、パイプラインを止めずに進めます。予測が外れたら、途中まで進めた命令を結果を書き込む前に無効化(フラッシュ)し、正しい命令を取り込み直すため、その分のクロックが損失になります。「分岐命令そのものを最初から実行し直す」必要はありません。「予測に従って実行した命令の結果を、そのまま確定する」と、誤った結果が残ります。「プログラムを停止して例外を発生させる」処理は行いません。
- #パイプライン
- #分岐予測
この調子で論理回路・コンピュータアーキテクチャを続けて解く
▶ この科目の連続演習へ進む(10問)