XCP的全名是通用測量和校正協定(Universal Measurement and Calibration Protocol),是提出的網路通訊協定,目的是要連接校正系統及電子控制單元(ECU)。此一協定可以在運行時讀寫微處理器裡的變數以及記憶體。可以用計时器或是運作條件觸發事件,同步觸發或讀取完整的資料集。也可以用XCP燒錄快閃記憶體。
ASAM表示「XCP的原始目的是要調整电子控制器的內部參數,並且讀取內部參數的即時值。XCP中的第一個X表示此協定是為一系列的網路系統所規劃」。
此協定在2003年的標準化名稱是ASAM MCD-1 XCP。XCP是接續著1990年代中期提出的CAN校正協定(簡稱CCP)。那時控制器區域網路(CAN)是車用產業的主要通訊協定。後來車用產業出現了LIN、MOST及等通訊協定,因此上述的校正協定需要擴展到其他的傳輸媒介上。XCP可以支持同步及非同步的串列介面。若配合乙太網路或USB等傳輸媒介,XCP也可以作為類比測量設備的標準媒介,也可以作為RAM模擬器、JTAG或其他微處理器偵錯介面的硬體介面轉換器。
XCP的使用範圍很廣,開發XCP的一個主要目的是在要在电子控制器上儘可能以精益(lean)的方式實現,並且在資源利用及功能上有高度的可擴展性。應用在CAN或SCI上的XCP甚至可以在8位元的微處理器上實現,若是使用高性能的平台,可以在FlexRay及乙太網路上的應用發揮其完整的機能。
XCP是二層的通訊協定,區分為協定層以及傳輸層兩層,使用單一主站/多重從站的概念。XCP使用單一的協定層,不因傳輸層而變化。名稱中的X表示可以其傳輸層是可以變動互換。ASAM在2016年10月已定義了以下的傳輸層:
- XCP on CAN
- XCP on CAN FD
- XCP on SxI(簡稱SPI的序列周邊介面,簡稱SCI的串列通訊介面)
- XCP on Ethernet(TCP/IP及UDP/IP)
- XCP on USB
- XCP on
XCP除了支援其他傳輸層外,也有以下功能的提昇:
- 在电子控制器上的資源利用率較佳
- 產生同步資料
- 支援啟動(start-up)量測
- 對區塊傳輸指令的最佳化通訊
- 隨插即用組態
- 更準確的量測資料讀取,作法是量測ECU的時間戳(從站)
XCP可以讓客戶端存取電子控制器上的記憶體,其格式在個別A2L檔案上定義。A2L格式檔案中會包括要存取資訊需要的所有資訊,ECU程式碼不需要因為存取不同的量測或校正而重新編譯。
參考資料
外部連結
- [http://www.asam.net ASAM official Web site of ASAM e.V.]
- [https://www.asam.net/standards/detail/mcd-1-xcp/wiki/ ASAM MCD-1 XCP description of the standard at the ASAM Web site]
- [http://www.vector.com/vi_xcp-book_en.html Web page for ordering the free XCP Technical Book from Vector Informatik]
评论 (0)