XCP
此条目包含过多行话或专业术语,可能需要简化或提出进一步解释。 (2020年12月1日) |
XCP的全名是通用测量和校正协定(Universal Measurement and Calibration Protocol),是ASAM提出的网路通讯协定,目的是要连接校正系统及电子控制单元(ECU)。此一协定可以在运行时读写微处理器里的变数以及记忆体。可以用计时器或是运作条件触发事件,同步触发或读取完整的资料集。也可以用XCP烧录快闪记忆体。
ASAM表示“XCP的原始目的是要调整电子控制器的内部参数,并且读取内部参数的即时值。XCP中的第一个X表示此协定是为一系列的网路系统所规划”[1]。
此协定在2003年的标准化名称是ASAM MCD-1 XCP。XCP是接续著1990年代中期提出的CAN校正协定(简称CCP)。那时控制器区域网路(CAN)是车用产业的主要通讯协定。后来车用产业出现了LIN、MOST及FlexRay等通讯协定,因此上述的校正协定需要扩展到其他的传输媒介上。XCP可以支持同步及非同步的串列介面。若配合乙太网路或USB等传输媒介,XCP也可以作为类比测量设备的标准媒介,也可以作为RAM模拟器、JTAG或其他微处理器侦错介面的硬体介面转换器。
XCP的使用范围很广,开发XCP的一个主要目的是在要在电子控制器上尽可能以精益(leap)的方式实现,并且在资源利用及功能上有高度的可扩展性。应用在CAN或SCI上的XCP甚至可以在8位元的微处理器上实现,若是使用高性能的平台,可以在FlexRay及乙太网路上的应用发挥其完整的机能。
XCP是二层的通讯协定,区分为协定层以及传输层两层,使用单一主站/多重从站的概念。XCP使用单一的协定层,不因传输层而变化。名称中的X表示可以其传输层是可以变动互换。ASAM在2016年10月已定义了以下的传输层[2]:
- XCP on CAN
- XCP on CAN FD
- XCP on SxI(简称SPI的序列周边介面,简称SCI的串列通讯介面)
- XCP on Ethernet(TCP/IP及UDP/IP)
- XCP on USB
- XCP on FlexRay
XCP除了支援其他传输层外,也有以下功能的提升[2]:
XCP可以让客户端存取电子控制器上的记忆体,其格式在个别A2L档案上定义。A2L格式档案中会包括要存取资讯需要的所有资讯,ECU程式码不需要因为存取不同的量测或校正而重新编译[1]。
参考资料
- ^ 1.0 1.1 ASAM MCD-1 XCP. ASAM. 30 November 2017 [21 November 2019]. (原始内容存档于2022-05-14).
- ^ 2.0 2.1 Patzer, Andreas; Zaiser, Rainer. XCP – The Standard Protocol for ECU Development. Vector. December 2016 [21 November 2019]. (原始内容存档于2020-12-05).