자동차 소프트웨어가 자동차에서 중요한 분야로 떠오른 지는 꽤 오래됐다. 차 내의 다양한 기능과 서비스가 확대되면서 자연스럽게 소프트웨어가 증가했고, 지금도 비중은 계속 확산되는 추세다. 하지만 소프트웨어의 경우 여전히 하드웨어에 종속된 구조여서 기기의 종류나 사양이 달라지면 관련 소프트웨어도 수정이 필요하고, 심지어 다시 개발하는 경우가 빈번하게 발생한다.
이런 문제점을 극복하기 위해 유럽, 미국 등 완성차 업체를 중심으로 소프트웨어 표준화 작업을 시도했고, 그 결과물로서 오토사(AUTOSAR, Automotive Open Systems Architecture)'가 대두되고 있다.
오토사는 2005년 1월에 1.0 버전이 배포된 이후 지속적인 향상을 거쳐 현재 4.0 버전까지 등장했다. 실시간 환경하에서 하드웨어와 소프트웨어를 분리시켜 소프트웨어의 독립성과 표준화된 인터페이스를 제공, 소프트웨어 개발에 소요되는 비용과 시간을 단축시켜 주고 있다.
오토사는 소프트웨어는 크게 SWC(Software Component), RTE(Run Time Environment), BSW(Basic Software)의 3개 계층으로 구성된다. 오토사 표준플랫폼은 기본적으로 컴포넌트 기반 소프트웨어개발(CBD: Component-Based Software Development)을 통해 여러 개의 구성품들이 입출력 포트를 가지며, 서로 가상의 통신을 한다. SWC는 가장 상위에 위치하며 엔진, 자동 변속기, 브레이크제어 기능을 수행하고 VFB(Virtual Functional Bus)라는 가상 네트워크에 배치돼 ECU에 연동된다. RTE는 SWC와 BSW 사이에 위치하며, 이 사이의 데이터 교환을 위한 인터페이스를 제공한다. RTE는 SWC가 하드웨어에 종속되지 않는 독립성을 제공하기 위한 것으로 모듈간의 통신 연결을 수행한다. BSW는 최하층에 위치하며 OS(Operating system), 디바이스 드라이버, 커뮤니케이션 같은 SWC가 필요한 작업을 수행하기 위한 서비스를 제공한다. 이 중 가장 중요한 모듈인 OS는 자동차용 실시간 운영체제 표준인 OSEK/VDX를 기반으로 설계됐다.
이처럼 세계 자동차 시장은 자동차 전장 소프트웨어를 중심으로 발전하고 있다. 이에 발맞춰 국내에서도 자동차 전장부품 개발에 적용되는 'SW플랫폼 오토사 4.0 대응준비' 교육이 마련되기도 했다.
그러나 소프트웨어의 증가에 따른 복잡성이 높아지는 게 문제다. 복잡성은 반드시 오류나 오작동과 같은 버그(bug)의 증가를 수반하기 마련이다. 그로 인한 자동차 기능 저하를 가져올 수 있다는 얘기다. 그 예로 토요타 하이브리드카 프리우스는 가솔린 엔진이 정지하는 문제가 있었고, 이를 해결하기 위해 총 7만5,000대를 리콜하기도 했다. BMW 745i는 엔진벨브 타이밍을 조정하는 ECU 결함으로 주행 중 엔진이 멈추는 문제도 발생한 바 있다.
이런 점은 우리에게 시사하는 바가 크다. 표준 소프트웨어 개발뿐만 아니라 자체적인 소프트웨어 품질 평가에도 관심을 가져야 한다는 얘기다. 미래 자동차 전쟁에서 살아 남기 위해 간과하면 결코 곤란하다. 기계에서 전자제품으로 진화하는 자동차 경쟁에서 이기려면 더더욱 말이다.
김태식(자동차전장칼럼니스트, 재능대학 교수) autosoftcar@gmail.com
출처-오토타임즈
<본 기사의 저작권은 오토타임즈에 있으며, 무단 전재 및 재배포를 금합니다.>
0/2000자