CPUのパイプラインハザードのうち、制御ハザードの発生原因として、適切なものはどれか。
ア | キャッシュミス |
イ | 先行する命令の結果に依存する演算命令 |
ウ | ハードウェア資源の競合 |
エ | 分岐命令 |
パイプライン処理を行う場合にも、複数の命令同士が持つ依存関係から命令の投入を中断せざるを得ない状況が生じうるが、これをパイプラインハザードと呼ぶ。ハザードが発生すると処理速度の低下に繋がる。
ア | × | キャッシュミスは、CPUのパイプライン処理の前段階における処理である。したがってパイプラインハザードではない。 |
イ | × | 先行する命令の結果に依存する演算命令はデータハザードである。 |
ウ | × | ハードウェア資源の競合は構造ハザードである。 |
エ | ○ | 分岐命令によって次に実行する分岐先の命令が特定できないために発生するハザードを制御ハザードという。 |