令和7年度 秋期 午前Ⅱ 問1
プロセッサ
パイプラインに関する問題
パイプラインの深さをD,パイプラインピッチをP秒とすると,I個の命令をパイプラインで実行するのに要する時間を表す式はどれか。ここで,パイプラインは1本だけとし,全ての命令は処理にDステージ分の時間が掛かり,各ステージは1ピッチで処理されるものとする。また,パイプラインハザードについては,考慮しなくてよい。
- ア(I+D)×P
- イ(I+D-1)×P
- ウ(I×D)+P
- エ(I×D-1)+P
答えと解説を見る
✓ これが正解イ(I+D-1)×P
解説
最初の命令にDピッチ、残りの命令は1ピッチごとに1個ずつ完了します。
パイプラインの所要時間は、最初の命令が終わるまでの時間と、そのあと命令が出てくる間隔に分けて数えます。最初の命令は全ステージを通るのでDピッチ掛かります。パイプラインが満たされたあとは、1ピッチごとに次の命令が1個ずつ完了します。残りの命令はI-1個なので、追加で(I-1)ピッチ必要です。合計はD+(I-1)=I+D-1ピッチで、1ピッチがP秒なので(I+D-1)×P秒になります。例えばI=1を代入するとDピッチとなり、命令1個が全ステージを通る時間と一致します。I=1を入れて命令1個の時間に戻るかを確かめると、式の見分けがすぐにつきます。
ほかの選択肢はなぜ違うのか
- ア(I+D)×P:(I+D)×Pは、最初の命令が通るD個のステージと、命令の個数Iを丸ごと足しています。最初の命令を二重に数えているため1ピッチ多く、I=1を入れるとD+1ピッチになって命令1個の所要時間と合いません。
- ウ(I×D)+P:I×Dは、命令を1個ずつ全ステージ通してから次へ進む、重ね合わせのない逐次実行のピッチ数です。さらにピッチ数に秒数Pを掛けずに足しているため、時間を表す式として単位もそろっていません。
- エ(I×D-1)+P:I×D-1も重ね合わせのない数え方が土台になっており、命令を並行して流す効果が入っていません。加えてPを掛けずに足しているので、ピッチ数を秒に直す計算にもなっていません。
出典:令和7年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問1
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)