コンピュータ

パイプライン処理とは

パイプライン処理

パイプライン処理は、CPUなどのプロセッサの性能を向上させるための技術のひとつであり、複数の命令を並行して実行するための方式です。

スポンサーリンク

命令の実行階段

コンピュータは次のようなサイクル(段階)を繰り返して命令を処理していきます。

段階 処理内容
1 命令の取り出し(命令フェッチ)
2 命令の解読(デコード)
3 対象データの読み出し(オペランドの読み出し)
4 命令の実行
5 結果の書き込み

逐次制御方式の動き

逐次制御方式(ちくじせいぎょほうしき)とは、命令を1つずつ順番に完了させる方式のことであり、1つの命令が終わるまで次の命令を実行できないため、効率はよくありません。

例えば、以下図のように5サイクルで1命令が実行される場合、3つの命令を逐次制御方式で処理すると下記図のように15サイクルかかります。

逐次制御方式の場合

パイプライン処理の動き

パイプライン処理で3つの命令を処理すると、下記図のとおり7サイクルで処理することができます。

1つの命令が終わるまで次の命令を実行できない逐次制御方式とは違い、パイプライン処理では複数の命令を並行して実行することができるため、処理を高速化できます。

パイプライン処理の場合

パイプライン処理では、階段ごとに制御できるため、例えば、命令1の「1. 命令の取り出し(階段1)」が終わったら、命令1の5サイクルすべてが終わるのを待たずに、次の命令2の「1. 命令の取り出し(階段1)」をおこなうことができます。

パイプライン処理の流れは次のとおりです。3つの命令を並行して実行しているので、7サイクルで3つの命令が完了しています。

パイプライン処理の流れ

  • 階段1:命令1、階段2:------、階段3:------、階段4:------、階段5:------
  • 階段1:命令2、階段2:命令1、階段3:------、階段4:------、階段5:------
  • 階段1:命令3、階段2:命令2、階段3:命令1、階段4:------、階段5:------
  • 階段1:------、階段2:命令3、階段3:命令2、階段4:命令1、階段5:------
  • 階段1:------、階段2:------、階段3:命令3、階段4:命令2、階段5:命令1
  • 階段1:------、階段2:------、階段3:------、階段4:命令3、階段5:命令2
  • 階段1:------、階段2:------、階段3:------、階段4:------、階段5:命令3

※階段1:命令の取り出し、階段2:命令の解読、階段3:対象データの読み出し、階段4:命令の実行、階段5:結果の書き込み


チャンネル登録はこちら

フォローはこちら