독일의 완성차 제조사에서는 엔진 밸브의 타이밍을 조정하는 두 ECU간의 동기화 문제로 엔진이 꺼지는 현상이 발생해 엄청난 액수의 리콜 비용을 손실하고, 결국 ECU를 재프로그래밍 했다. 또한 일본 자동차 제조사에서도 ECU에 내장된 소프트웨어(SW)상의 문제로 브레이크를 밟는 것과 실제 작동 사이에 1초의 시간 차이가 발생하기도 했다. 이처럼 자동차 SW가 제때 동작하는 것을 의미하는 `타이밍`이 자동차 업계의 중요한 이슈로 부상했다.
그러나 국내 대부분의 타이밍 검증은 오실로스코프에 의한 응답시간을 측정하는 초보적인 수준에 머물러 있다. 자동차 시스템의 정확한 타이밍 분석을 수행하기 위해서는 기본적으로 분석적인 기법과 시뮬레이션 기법이 모두 필요하다.
자동차와 같은 복잡한 실시간 시스템에서는 분석적인 기법들이 높은 품질의 입증 방법임에도 불구하고 제한된 가용성으로 인해 적용이 어렵기 때문이다. 반면에 시뮬레이션 기법은 크고 복잡한 설계에 적용하기 용이하다. 그러므로 정확한 타이밍 검증을 위해서는 적용 대상에 따라 최적의 결과를 얻을 수 있는 기법을 선택적으로 적용하는 것이 효과적이다.
예를 들어, 한 모듈에 대해 안전 관점의 최대 응답 시간(Worst-case Response time)을 구하고자 할 때는 분석적인 계산법을 사용하고, 전체 시스템 레벨에서의 평균 응답시간을 산정하기 위해서는 시뮬레이션 기법을 사용하는 것이 효율적이다
이러한 기법들을 사용하여 결국 검증하고자 하는 대상은 `타이밍 요구사항`이다. 기존에 데드라인(Dead line) 수준으로만 인식되던 타이밍 요구사항은 타이밍 검증기술의 도입을 통해 세분화 된다. 그 중에 중요한 요소로는 응답시간(Response Time), 주기의 편차(Jitter), CPU 점유율(Load) 등이 있다. 타이밍 검증의 최종 목표는 이러한 구체적인 타이밍 요구사항을 도출하고, 시뮬레이션으로 사전 검증하는 것이다. 그리고 시스템 구현을 마친 후에도 결과물에 대해 사전 검증 결과와의 비교·평가를 수행하는 것이다.
우준석 MDS테크놀로지 상무는 “해외에서는 이미 수년 전에 개발 초기부터 정확한 타이밍 검증을 수행해 왔다”면서 “우리나라도 개발 초기부터 타이밍 검증 기술을 도입하여 타이밍 설계 문제로 인한 수정 비용과 시간 낭비를 줄여야 한다”고 말했다.
김용주기자 kyj@etnews.com