令和5年度 春期 午前Ⅱ 問21
コンピュータ構成要素
パイプラインに関する問題
CPU 内部の命令読取り用バスとデータアクセス用バスとを分離するハーバードアーキテクチャを用いる目的として,適切なものはどれか。
- アCPU 以外のバスマスターを使用可能にする。
- イバスの信号線の本数を減らす。
- ウプログラムの実行時間を短縮する。
- エメモリの内容を保護する。
答えと解説を見る
✓ これが正解ウプログラムの実行時間を短縮する。
解説
命令の読取りとデータアクセスを同時に行え、実行時間を短縮できます。
見分ける軸は、バスを分けることで何が同時にできるようになるかです。命令とデータが一つのバスを共有していると、命令を読み取る間はデータにアクセスできず、データにアクセスする間は次の命令を読み取れないので、待ちが生じます。ハーバードアーキテクチャは、命令読取り用とデータアクセス用のバスを分けるので、命令の読取りとデータへのアクセスを同時に行えます。パイプライン処理の流れも滞りにくくなり、その結果プログラムの実行時間が短くなります。バスの取り合いをなくして速くする仕組み、と目的で覚えると見分けられます。
ほかの選択肢はなぜ違うのか
- アCPU 以外のバスマスターを使用可能にす…:CPU 以外のバスマスタを使えるようにするのは、DMA コントローラなどにバスの使用権を渡す仕組みの話です。CPU 内部の命令用とデータ用のバスを分ける目的とは関係がありません。
- イバスの信号線の本数を減らす。:命令用とデータ用にバスを分けると、それぞれに信号線が必要になるので、本数はむしろ増えます。信号線の本数を減らすことは、この方式の目的になりません。
- エメモリの内容を保護する。:メモリの内容を保護するのは、記憶領域ごとにアクセスの権限を管理する仕組みの役割です。バスを分ける目的は処理の速さにあり、メモリの内容を不正な書き換えから守ることではありません。
出典:令和5年度 春期 システムアーキテクト試験 午前Ⅱ 問21
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)