計算機系統結構中流水線的時空圖怎麼畫
描述流水線的工作過程,通常採用時(間)空(間)圖的方法。在時空圖中,縱座標表示指令序列,橫座標表示時間。
1.指令流水線過程段
圖5-20表示流水CPU中一個指令週期的任務分解。假設指令週期包含取指令(IF)、指令譯碼(ID)、指令執行(EX)、訪存取數(MEM)、結果寫回(WB)5個子過程(過程段),流水線由這5個串聯的過程段組成,各個過程段之間設有高速緩衝暫存器,以暫時儲存上一過程段子任務處理的結果,在統一的時鐘訊號控制下,資料從一個過程段流向相鄰的過程段。
向左轉|向右轉
2.非流水計算機工作方式
圖5-21表示非流水計算機的時空圖。
向左轉|向右轉
對於非流水計算機而言,上一條指令的5個子過程全部執行完畢後才能開始下一條指令,每隔5個時鐘週期才有一個輸出結果。因此,圖5-21中用了15個時鐘週期才完成3條指令,每條指令平均用時5個時鐘週期。
非流水線工作方式的控制比較簡單,但部件的利用率較低,系統工作速度較慢。
3.標量流水計算機工作方式
標量(Scalar)流水計算機是隻有一條指令流水線的計算機。圖5-22表示標量流水計算機的時空圖。
向左轉|向右轉
對標量流水計算機而言,上一條指令與下一條指令的5個子過程在時間上可以重疊執行,當流水線滿載時,每一個時鐘週期就可以輸出一個結果。因此,圖5-22中僅用了9個時鐘週期就完成了5條指令,每條指令平均用時1.8個時鐘週期。
採用標量流水線工作方式,雖然每條指令的執行時間並未縮短,但CPU執行指令的總體速度卻能成倍提高。當然,作為速度提高的代價,需要增加部分硬體才能實現標量流水。
4.超標量流水計算機工作方式
一般的流水計算機因只有一條指令流水線,所以稱為標量流水計算機。所謂超標量(Superscalar)流水計算機,是指它具有兩條以上的指令流水線。圖5-23表示超標量流水計算機的時空圖。
向左轉|向右轉
當流水線滿載時,每一個時鐘週期可以執行2條以上的指令。因此,圖5-23中僅用了9個時鐘週期就完成了10條指令,每條指令平均用時0.9個時鐘週期。
超標量流水計算機是時間並行技術和空間並行技術的綜合應用。