1. 程式人生 > >易學筆記-系統分析師考試-第6章 系統配置與效能評價/6.5 流水線技術/6.5.1 流水線工作原理

易學筆記-系統分析師考試-第6章 系統配置與效能評價/6.5 流水線技術/6.5.1 流水線工作原理

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