命令パイプライン I


4.1.1 パイプラインの原理

·         パイプライン: 全体の作業を多数の工程に分割し、各工程を並列に処理することで処理量を飛躍的に向上させる流れ作業

·         実行時間: 作業開始から終了までの時間

·         スループット: 単位時間当りに完了する作業量、単位時間に終了する命令数

·         ステージ: 各工程

 

4.1.2 命令パイプラインの基本

マシンの回路図

1.     命令フェッチ F

2.     命令デコード D

3.     演算実行   E

4.     結果の格納  W

図4.2

4.1.3  命令パイプラインの実現

図4.3

·         パイプラインレジスター

図4.4

4.2.1 オーバーヘッド

  1. 最も時間のかかるステージの処理時間で全体にスループットが決まる。
  2. パイプラインレジスタによる遅延

クイズ1 :  図1は命令フェッチ(IF)、命令デコード(ID)、実行(EX)、メモリアクセス(MEM)、レジスタ書き込み(WB)の5つのステージの処理からなるコンピュータのノンパイプラインとパイプラインの動作を示した図である。 IFの処理時間が20nsIDの処理時間が10nsEXの処理時間が5nsMEMの処理時間が20nsWBの処理時間が15nsとし、以下の問に答えなさい。

(1)ノンパイプラインマシンでは1命令実行するのに何nsの時間がかかるか。

(2)このノンパイプラインマシンでは1秒間に何命令を実行することができるか。

(3)このノンパイプラインマシンの性能をMIPSであらわすといくらか。

(4)パイプラインマシンでは1クロックサイクルで1つのステージの処理を実行し、5サイクルでひとつの命令の処理完了と仮定すると、パイプラインマシンの最小クロックサイクル時間はいくらか。ただし、クロック信号やパイプラインレジスタ等の遅延は無視できるとする。

(5)パイプラインマシンでは図に示すように毎クロックサイクルでひとつの命令の実行が開始される。分岐命令などでパイプラインの動作が乱れないとすると、1秒間に平均して何命令の実行が開始されるか。

(6)このパイプラインマシンの性能をMIPSであらわすといくらか。

図1

 

表3.6

4.2.3 構造ハザード

命令メモリとデータメモリは同一で、同時に使えないと仮定

図4.5: ストール(ハザードによる実効中止)

4.2.4 データハザード

図4.6

図4.7

クイズ2: 図4.6,4.7に対応する動作図を図1に示す5段パイプライン型のマシンではどうなるか?それぞれ、何サイクルですべての命令の実行が終了するか?

4.2.5 制御ハザード

図4.8

 


宿題5 学籍番号 名前 日付 を忘れないように

上記 クイズ1、

以上