XCP的全名是通用測量和校正協定(Universal Measurement and Calibration Protocol),是ASAM英語Association for Standardisation of Automation and Measuring Systems提出的網路通訊協定,目的是要連接校正系統及電子控制單元(ECU)。此一協定可以在運行時讀寫微處理器裡的變數以及記憶體。可以用計時器或是運作條件觸發事件,同步觸發或讀取完整的資料集。也可以用XCP燒錄快閃記憶體。

ASAM表示「XCP的原始目的是要調整電子控制器的內部參數,並且讀取內部參數的即時值。XCP中的第一個X表示此協定是為一系列的網路系統所規劃」[1]

此協定在2003年的標準化名稱是ASAM MCD-1 XCP。XCP是接續著1990年代中期提出的CAN校正協定(簡稱CCP)。那時控制器區域網路(CAN)是車用產業的主要通訊協定。後來車用產業出現了LINMOSTFlexRay英語FlexRay等通訊協定,因此上述的校正協定需要擴展到其他的傳輸媒介上。XCP可以支持同步及非同步的串列介面。若配合乙太網路或USB等傳輸媒介,XCP也可以作為類比測量設備的標準媒介,也可以作為RAM模擬器、JTAG或其他微處理器偵錯介面的硬體介面轉換器。

XCP的使用範圍很廣,開發XCP的一個主要目的是在要在電子控制器上儘可能以精益(leap)的方式實現,並且在資源利用及功能上有高度的可擴展性。應用在CAN或SCI上的XCP甚至可以在8位元的微處理器上實現,若是使用高性能的平台,可以在FlexRay及乙太網路上的應用發揮其完整的機能。

XCP是二層的通訊協定,區分為協定層以及傳輸層兩層,使用單一主站/多重從站的概念。XCP使用單一的協定層,不因傳輸層而變化。名稱中的X表示可以其傳輸層是可以變動互換。ASAM在2016年10月已定義了以下的傳輸層[2]

XCP除了支援其他傳輸層外,也有以下功能的提昇[2]

  • 電子控制器上的資源利用率較佳
  • 產生同步資料
  • 支援啟動(start-up)量測
  • 對區塊傳輸指令的最佳化通訊
  • 隨插即用組態
  • 更準確的量測資料讀取,作法是量測ECU的時間戳(從站)

XCP可以讓客戶端存取電子控制器上的記憶體,其格式在個別A2L檔案上定義。A2L格式檔案中會包括要存取資訊需要的所有資訊,ECU程式碼不需要因為存取不同的量測或校正而重新編譯[1]

參考資料

  1. ^ 1.0 1.1 ASAM MCD-1 XCP. ASAM. 30 November 2017 [21 November 2019]. (原始內容 存檔於2022-05-14). 
  2. ^ 2.0 2.1 Patzer, Andreas; Zaiser, Rainer. XCP – The Standard Protocol for ECU Development. Vector. December 2016 [21 November 2019]. (原始內容存檔於2020-12-05). 

外部連結