• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:パイプライン制御(ハザード検出の仕組み))

パイプライン制御(ハザード検出の仕組み)

このQ&Aのポイント
  • パイプライン制御でのハザード検出について知りたい
  • データハザードの検出タイミングと対処方法について教えてください
  • パイプライン制御でのデータハザードの検出はどのように行われるのか

質問者が選んだベストアンサー

  • ベストアンサー
  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

(b)です。 i1自体が、さらに先行する命令の影響で、R1やR2の読み込みでストールする可能性がありますから、R4のビジー状態が何クロック先に終わるかを検出することは困難です。 そういう複雑な回路を設けて「いきなりSTを3つ挿入」するメリットはありません。 先行する命令i1は、命令デコードステージが終わって、R4に書き込むと判明した段階で、R4をビジーにします。 そして、ライトバックステージ(R4への書き込み)が終わったら、R4のビジーを解除します。 後発のi2は、命令デコードステージが終わって、R3とR4を読み込むと判明した段階で、R3とR4のどちらかがビジーの間はストールし続けます。 そして、ビジーでなくなってから、実行ステージに移ります。 (だから、ストールするのはIDの後)

noname#156238
質問者

お礼

mtaka2様、御教示ありがとうございます。 その後ネットでパイプライン・インターロック(ハザード検出ユニット)の具体的な構成(論理回路)を見つけて、御説明の内容をイメージできるようになりました(つもりです)。 どうもありがとうございました。

関連するQ&A