易學筆記-系統分析師考試-第6章 系統配置與效能評價/6.5 流水線技術/6.5.1 流水線工作原理
阿新 • • 發佈:2018-11-27
- 增加計算機效能的主要途徑
- 空間並行性:一個處理機內設定多個獨立的操作部件並行工作
- 時間並行性:採用流水線技術實現
- 流水線工作原理
- 流水線技術概念:
- 把一個任務分解為多個順序執行的子任務,不同的子任務由不同的操作部件並行執行
- 任一任務在任何時間只佔用一個操作部件
- 時空圖
- 概念:流水線技術實現手段
- 舉例:有3個待執行的指令,分別用1,2,3表示,每一個指令執行都分為三個部分:取值、分析和執行
- 非流水線(順序執行)技術時空圖
- 流水線技術時空圖
- 分析:
- 非流水線(順序執行)技術時空圖
- 流水線的特點
- 要求任務是連續不斷的
- 總時間 = 裝入時間(第一個指令到流出第一個結果)+ 執行時間 + 排空時間(最後一個指令執行完成)
- 在流水線每個操作部件的後面都有一個緩衝暫存器
- 緩衝暫存器用於儲存當前階段執行結果,以保證各部件之間的速度匹配和獨立執行
- 流水線把一個大的操作部件分解為多個獨立的操作部件
- 要求各個獨立部件執行的時間儘量相等,執行時間最長的將成為流水線瓶頸
- 要求任務是連續不斷的
- 流水線的分級
- 操作部件級
- 將複雜的算術和邏輯運算組成流水線方式
- 舉例:浮點加法操作 = 求階差 + 對階 + 尾數相加 + 結果規格化
- 指令級
- 將一個執行分解成多個階段並行執行
- 舉例:指令執行分解為:取指、分析、執行
- 處理機間級
- 不同處理機之間按流水線序列工作,其中每一個處理機負責專門任務,上一個處理機的處理結果放在下一個處理機的儲存器中
- 操作部件級
- 流水線的分類
- 按功能劃分
- 單功能流水線:只實現固定的功能,例如浮點加法器
- 多功能流水線
- 根據不同的連線方式可以實現多個功能
- 對資源利用率高,靈活性好
- 實現比單功能複雜
- 按工作方式劃分
- 靜態流水線
- 同一個時間內只能按一種連線方式執行
- 連線方式不能頻繁變換
- 動態流水線
- 從一個連線方式切換到另外一個連線方式時,需先排空當前流水線再初始化下一個流水線
- 靜態流水線
- 按連線方式劃分
- 線性流水線
- 從輸入到輸出,每一個功能只允許處理一次,不存在反饋迴路
- 通常只完成一個固定的功能
- 非線性流水線
- 從輸入到輸出,每一個功能可能多次經過流水線
- 通常用於遞迴呼叫或者多功能流水線
- 線性流水線
- 按功能劃分