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

全ての命令が5ステージで完了するように設計された,パイプライン制御のCPUがある。20命令を実行するには何サイクル必要となるか。ここで,全ての命令は途中で停止することなく実行でき,パイプラインの各ステージは1サイクルで動作を完了するものとする。

出典:令和5年春期 問 9

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

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

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

この問題の出題歴


Pagetop