令和7年度 秋期 エンベデッドシステムスペシャリスト試験 午前II 問題 問1

パイプラインの深さをDD,パイプラインピッチをPP秒とすると,II個の命令をパイプラインで実行するのに要する時間を表す式はどれか。ここで,パイプラインは1本だけとし,全ての命令は処理にDDステージ分の時間が掛かり,各ステージは1ピッチで処理されるものとする。また,パイプラインハザードについては,考慮しなくてよい。

解答・解説

正解: イ. (I+D−1)×P(I + D - 1) \times P

パイプライン処理において、各命令は DD 個のステージに分割され、各ステージは 1 ピッチ(PP 秒)で処理されます。パイプラインハザードがない場合、全体の処理時間は以下のように考えることができます。

  1. 1番目の命令:
    すべての DD ステージを順番に通過する必要があるため、D×PD \times P 秒(DD ピッチ)の時間がかかります。

  2. 2番目以降の命令:
    パイプラインの仕組みにより、1番目の命令が完了した後は 1 ピッチ(PP 秒)ごとに次の命令が順次完了していきます。2番目以降の命令の数は I−1I - 1 個なので、これらがすべて完了するのに追加で (I−1)×P(I - 1) \times P 秒(I−1I - 1 ピッチ)かかります。

したがって、すべての命令が完了するまでの総実行時間は、これらを足し合わせた以下の式で表されます。
D×P+(I−1)×P=(I+D−1)×PD \times P + (I - 1) \times P = (I + D - 1) \times P

各選択肢の解説

  • ア:(I+D)×P(I + D) \times P
    誤りです。1番目の命令の処理時間と、2番目以降の命令の数を正しく考慮できておらず、計算するピッチ数に重複が生じています。
  • イ:(I+D−1)×P(I + D - 1) \times P
    正解です。上述の通り、最初の命令にかかる DD ピッチと、後続の (I−1)(I - 1) 個の命令にかかる (I−1)(I - 1) ピッチの合計に、ピッチ時間 PP を乗じた正しい式です。
  • ウ:(I×D)+P(I \times D) + P
    誤りです。パイプライン処理による並列実行を考慮しておらず、式の意味として成り立っていません。
  • エ:(I×D−1)+P(I \times D - 1) + P
    誤りです。こちらも並列処理の性質を反映しておらず、パイプラインの実行時間を正しく表す式ではありません。

Spineチーム