首 頁 >>新聞資訊  >>  行業資訊  >>  流水線技術

流水線技術

      流水線技術是一種將每條指令分解為多步,並讓各步操作重疊,從而實現幾條指令並行處理的技術。程序中的指令仍是一條條順序執行,但可以預先取若幹條指令,並在當前指令尚未執行完時,提前啟動後續指令的另一些操作步驟。這樣顯然可加速一段程序的運行過程。
流水線的6步為:
( 1 ) 取指令。C P U從高速緩存或內存中取一條指令。
( 2 ) 指令譯碼。分析指令性質。
( 3 ) 地址生成。很多指令要訪問存儲器中的操作數,操作數的地址也許在指令字中,也許要經過某些運算得到。
( 4 ) 取操作數。當指令需要操作數時,就需再訪問存儲器,對操作數尋址並讀出。
( 5 ) 執行指令。由A L U執行指令規定的操作。
( 6 ) 存儲或"寫回"結果。最後運算結果存放至某一內存單元或寫回累加器A。
      在理想情況下,每步需要一個時鍾周期。當流水線完全裝滿時,每個時鍾周期平均有一條指令從流水線上執行完畢輸出結果,就像轎車從組裝線上開出來一樣。P e n t i u m、Pentium Pro和Pentium II處理器的超標量設計更是分別結合了兩條和三條獨立的指令流水線,每條流水線平均在一個時鍾周期內執行一條指令,所以它們平均一個時鍾周期分別可執行2條和3條指令。
      流水線技術是通過增加計算機硬件來實現的。例如要能預取指令,就需要增加取指令的硬件電路,並把取來的指令存放到指令隊列緩存器中,使M P U能同時進行取指令和分析、執行指令的操作。因此,在1 6位/3 2位微處理器中一般含有兩個算術邏輯單元A L U,一個主A L U用於執行指令,另一個A L U專用於地址生成,這樣才可使地址計算與其它操作重疊進行。
      在理想情況下,每步需要一個時鍾周期。當流水線完全裝滿時,每個時鍾周期平均有一條指令從流水線上執行完畢,輸出結果,就像轎車從組裝線上開出來一樣。


點擊次數:1028  發布日期:2014-06-03  【打印此頁】  【關閉