글│안드레아스 리들 (Andreas Riedl)*, 알프레드 클레스 (Alfred Kless)**
*보쉬 엔진 컨트롤러 프로젝트 리더
** 벡터 ‘네트워크 인터페이스’와 ‘측정 및 보정’ 제품 라인 담당
비즈니스 개발 매니저
77 GHz로 작동하는 보쉬의 장거리 레이더 센서인 LRR3(Long-Range Radar)는 많은 안전 관련 시스템 및 운전자 지원 시스템에 사용되는 ‘감각적 입력(Sensory Input)’ 장치이다. 이러한 시스템에는 다양한 버전의 예측 안전 시스템(Predictive Safety Systems, PSS)과 적응형 순항제어(Adaptive Cruise Control, ACC)가 포함돼 있다. 자동차 업계 최소형 레이더 센서인 이 센서는 2009년 초부터 생산 차량에 사용되었으며, 250 m의 긴 수집 범위와 최대 45도의 넓은 개구각(Aperture Angle)이 특징이다. 또한 유리한 가격 덕분에 애플리케이션 영역은 럭셔리 클래스 차량에서 미드 클래스 및 상용 차량으로까지 확대되고 있다. 하지만 이러한 개발 사항으로 인해 보쉬 엔지니어들은 측정 및 보정 작업을 수행하는 데 있어서 큰 도전에 직면하게 된다. 데이터 측정과 로깅 옵션은 보정과 플래시, 그리고 바이패싱까지, 이 모든 것을 위한 효율적인 방법을 마련해야 했다. 이를 위한 모든 애플리케이션은 매우 높은 전송 속도와 낮은 대기 시간을 요구한다.
기술적인 측면을 고려한 결과, 측정 시스템을 위한 모듈 방식의 레이아웃을 구현하고 표준화된 PC 인터페이스를 활용하는 것이 합리적이었다. 그리고 생산 단계에 근접한 ECU를 개발한 덕분에 개발 단계에서 이후의 생산 단계로 손쉽게 전환하는 것이 가능했다. 이제 최대 10만 개에 이르는 많은 수의 측정 신호를 오류 없이 수집해야 하는데, 이것은 프로세서에 미치는 영향을 최소화한 상태에서 4 MB/s 이상의 데이터 전송 속도를 필요로 한다.
기존 솔루션: 낮은 데이터 속도와 높은 CPU 부하
CCP 또는 XCP-on-CAN, FlexRay, JTAG, SPI 등과 같은 표준화된 측정 및 보정 프로토콜[1]을 사용하는 솔루션에서는 ECU에 통합된 드라이버가 필요한 신호 값에 대한 주기적인 판독, 복사, 전송을 책임진다. 많은 양의 데이터를 측정해야 하기 때문에 드라이버는 제한적인 가용성을 가진 RAM 메모리 및 프로세서 리소스를 필요로 한다. 게다가 데이터 버스에 대한 부하가 늘어나 ECU 소프트웨어에 좋지 않은 영향을 미치게 된다. 측정 데이터 전송 속도는 50 KB/s (CAN)에서부터 최대 400 KB/s(FlexRay, JTAG, SPI)까지이다(표 1).
MCU의 고성능 디버그 인터 페이스 새로운 가능성 열다
보쉬는 벡터 전문가들과 협력해 완전히 새로운 측정 및 보정 시스템을 개념화하기로 결정했다. 측정 인터페이스로는 점점 늘어나는 첨단 마이크로프로세서에 탑재된 디버깅용 데이터 트레이스(Data Trace) 인터페이스를 사용한다. 좀 더 세부적으로 보면, 이것은 Nexus Class 3 표준 인터페이스로서 프로세서 부하를 최소화한 상태에서 ECU 메모리의 모든 변경 사항을 외부 영역으로 전달한다.
이 접근 방식의 기본 개념은 디버그 인터페이스를 통해 ECU로부터 데이터를 받아 전용 고속 케이블을 통해 외부 측정 어댑터로 내보내는 것이며, 데이터는 전용 프로토콜을 통해 직렬로 전송된다. 외부 측정 어댑터는 ECU에 독립적인 표준화된 XCP-on-Ethernet 프로토콜을 통해 실제 측정 데이터를 PC 애플리케이션에 전송할 수 있다.
이 프로젝트에서 ECU의 인터페이스는 POD(Plug-on-Device)를 통해 구현되었다. 이 POD는 콤팩트한 크기가 특징이며 ECU에 장착하기가 쉽다. POD에는 측정 데이터를 수집하고 보내는데 필요한 모든 전자 장치가 포함돼 있다. 오류 없는 작동 상태를 유지하기 위해 POD는 해당 ECU의 기계 및 전기 환경적 요구 사항을 동일하게 충족한다. 이를 통해 엔진실의 중요한 위치에 POD를 설치할 수 있게 되는데, 이것이 보쉬의 개발 프로젝트에서 핵심적인 요구 사항이었다.
미러(Mirror) 메모리를 갖춘
측정 어댑터
POD를 최대 5 m 길이의 HSSL(High Speed Serial Link) 케이블을 사용하여 벡터에서 개발한 모듈식 시스템 -VX1000의 기본 모듈인 VX1110(측정 어댑터)에 연결한다(그림 1). 이 기본 모듈은 먼저 FIFO 버퍼와 DPRAM(Dual-Port RAM), 그리고 전용 RAM을 가진 XCP 엔진으로 구성되는데, 이 두 개의 메모리 영역은 사용자 정의가 가능하다. 메모리 영역 내 데이터에 대한 쓰기 액세스는 HSSL 연결과 디버그 인터페이스를 통해 FIFO 버퍼로 전송되며 데이터는 추가로 처리되어 DPRAM에 기록된다. 논리적인 관점에서 보면, 이 데이터는 ECU에 저장된 데이터와 동일하기 때문에 DPRAM에는 데이터의 현재 매핑이 항상 포함돼 있다. 이는 곧 ECU의 메모리 영역을 있는 그대로 반영하는 것이며, 이 접근 방식의 핵심은 모든 측정 프로세스가 미러 메모리를 통해 발생된다는 것이다. 측정을 시작하기 위해서는, 즉 데이터 전송을 시작하기 위해서는 ECU가 측정 데이터에 할당되어 있는 미리 정의된 메모리 주소에 이벤트 번호를 기록하는 것만으로 충분하다. 정확히 이 시점에서는 FIFO와 DPRAM 간의 연결이 해제돼 있어 트리거 시에 메모리 맵의 작동이 없다. 이는 측정 시간 동안에 데이터를 일정하게 측정할 수 있도록 한다. 이제 데이터는 XCP 엔진에서 프로토콜에 따라 처리된다.
VX1100 측정 어댑터와 PC 내 측정 및 보정 툴 간의 연결, XCP-on-Ethernet을 통해서는 5 MB/s의 전송 속도를 얻었다. 엔진실에서의 데이터 전송에 절대 오류가 발생하지 않도록 하기 위하여 아주 견고하고 온도 저항성이 뛰어난 HSSL 케이블이 사용됐다. 만약 전송 오류가 발생할 경우, 재전송 프로토콜은 데이터 패킷을 신속히 반복 제공한다.
시스템 성능을 보면 이러한 노력이 매우 가치 있었음을 보여준다. VX1000 측정 시스템이 가진 최대 5 MB/s의 인상적인 측정 데이터 전송 속도는 약 1 MB/s의 쓰기 속도를 구현함과 동시에 보쉬 애플리케이션의 10만 개 신호를 가볍게 처리하도록 해준다. 타임 스탬프의 정밀도는 1마이크로초(μs)이고, 바이패스 턴어라운드 타임은 300 μs이다.
<저작권자 © AEM. 무단전재 및 재배포, AI학습 이용 금지>