基本情報技術者平成17年秋期 午前問17

問17

すべての命令が5サイクルで完了するように設計されたパイプライン制御のコンピュータがある。20命令を実行するには何サイクル必要となるか。ここで,すべての命令は途中で停止することなく実行できるものとする。
  • 20
  • 21
  • 24
  • 25
  • [出題歴]
  • 応用情報技術者 R5春期 問9
  • 応用情報技術者 H28秋期 問8
  • ソフトウェア開発技術者 H16春期 問19
  • ソフトウェア開発技術者 H19春期 問16

分類

テクノロジ系 » コンピュータ構成要素 » プロセッサ

正解

解説

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

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

したがって「ウ」が正解です。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop