관리 메뉴
Automotive Software
XCP 기초 (Universal Measurement and Calibration Protocol) 본문
측정 및 보정 (Measurement and Calibration)/XCP
XCP 기초 (Universal Measurement and Calibration Protocol)
AutoSW 2025. 12. 29. 15:10XCP는 차량 환경을 포함하는 임베디드 시스템에서 제어기의 특정 메모리 값이나 애플리케이션의 변수값을 거의 실시간으로 측정하고 필요시 수정할 수 있도록 ASAM 네트워킹 그룹에서 고안된 프로토콜로써, 이전 CAN 프로토콜만을 지원하던 CCP의 프로토콜 한계를 보완하여 Ethernet, Flexray 등의 다양한 통신 프로토콜을 지원하고 있다.
- XCP 동작 구조
- 마스터(Master)-슬레이브(Slave) 구조로, 하나의 마스터가 여러 슬레이브 ECU에 연결 후 실시간 데이터를 제어 가능
- XCP 데이터 베이스
- ASAM A2L 파일이라는 데이터베이스를 사용해 ECU 내부 변수의 물리적 주소와 데이터 타입을 관리
- XCP 패킷
- CTO(Command Transfer Object) : 명령과 응답을 담당
- DTO(Data Transfer Object) : 실시간 데이터 전송을 담당
- XCP 측정 (Measurement)
- 폴링 (Polling)
- 정해진 주기에 따라 마스터가 전송 요청하고 슬레이브가 답하는 방식
- 동기화 데이터 전송 (Synchronous Data Transfer)
- DAQ(Data Acquisition)
- 슬레이브가 특정 주기나 이벤트 발생 시마다 마스터의 요청 없이도 데이터를 자동 전송
- 효율적인 데이터 전송을 위해 ODT(Object Descriptor Table) 구조 적용 후 다중 변수를 단일 패킷으로 전송
- STIM(Stimulation)
- DAQ가 슬레이브 메모리상의 변수 측정을 위해 슬레이브에서 마스터로 데이터 전송
- STIM은 슬레이브 메모리상의 변수값 자극(Stimulation)을 위해 마스터에서 슬레이브로 데이터 전송
- DAQ(Data Acquisition)
- 폴링 (Polling)
- XCP 보정 (Calibration)
- 마스터가 슬레이브의 메모리 값을 직접 수정하여 제어 로직의 파라미터를 실시간으로 변경하는 과정
- XCP는 'Universal' 명칭과 같이 물리 계층(CAN, Ethernet, FlexRay 등)에 독립적으로 동작하는 프로토콜
- 이더넷 기반의 XCP on Ethernet은 높은 대역폭을 제공하여 수천 개의 신호를 수 밀리초() 단위로 동시 모니터링 가능
- 전송 계층과 표준 응용 계층의 독립화로, 하드웨어가 변경 여부와 무관하게 상위 소프트웨어의 재사용 가능
- 참고