プロセッサ(全68問中58問目)

すべての命令が5サイクルで完了するように設計された,パイプライン制御のコンピュータがある。20命令を実行するには何サイクル必要となるか。ここで,すべての命令は途中で停止することなく実行できるものとする。

出典:平成19年春期 問16

  • 20
  • 21
  • 24
  • 25
正解 問題へ
分野:テクノロジ系
中分類:コンピュータ構成要素
小分類:プロセッサ
解説
パイプライン制御は、CPUが実行する命令を、命令読出し(フェッチ)、解読(デコード)、アドレス計算、オペランド呼出し、実行 というような複数のステージに分け、各ステージを少しずつずらしつつ独立した処理機構で並列に実行することで、処理時間全体を短縮させるCPUの高速化技法です。
16_1.png
本問では5サイクルとあるので、1命令が5つのステージに分割されているとわかります。下図のようにそれぞれのサイクルは並列実行されるため、20命令を実行するのに必要なサイクル数は24サイクルとなります。
16_2.png
また、パイプラインの処理時間を求める公式(I+D-1)×Pを用いても計算することができます。
パイプラインの処理時間を求める公式
(I+D-1)×P
I:命令数
D:パイプラインの深さ(命令の分割数)
P:パイプラインのピッチ(各ステージの実行時間)
本問だと、命令数(I)が20、パイプラインの深さ(D)が5、パイプラインのピッチが1サイクルなので、

 (20+5-1)×1=24サイクル

したがって「ウ」が正解です。

この問題の出題歴


Pagetop