Automotive

차량용 소프트웨어 개발 환경 1부

chbae 2023. 4. 21. 04:25
728x90
반응형

차량용 IVI 소프트웨어 개발 환경에 대해 간단히 소개하고자 한다. 개발 환경을 알기 위해서는 차량에 들어가는 각각의 기능을 이해하는 것이 좋을 것 같아 우선 간단히 소개하고자 한다.

 

차량에 기본적으로 Instrument Cluster가 들어가고 추가적으로 Head Unit 등이 들어가게 된다. 각 보드의 구성에 따라서 여러개의 SoC가 하나의 Box에 들어가게 된다. 앞에 글에서도 이야기한 것 처럼 고성능의 SoC와 하이퍼바이저를 사용하여 여러 개를 사용해야할 것을 1-2개로 줄이는 노력을 하고 있다.

 

 

여기서는 Instrument Cluster과 Head Unit에 들어가는 각각의 Main 소프트웨어에 대해서만 간단히 이야하고자 한다.

Instrument Cluster

계기판이 표시되는 부분으로 Safety와 밀접하게 관련되어 있고, 실시간성이 중요시되어 있어 주로 안정성이 검증된 Real Time OS를 많이 사용한다. 여기서도 경고등을 표시하는 telltale과 다른 부분은 따로 관리하기도 한다.

Head Unit

각 OEM에서 다양한 OS를 사용하고 있다. 이전에는 대부분 Harman, Continental, Bosch, LGE 등과 같은 Tier 1에 맞겨 제품을 받는 형태였지만,  자체 개발 기술력과 리소스가 있는 OEM은 직접 개발하는 형태를 취하려고 하는 곳도 있다. 그 이유는 복잡해져가는 소프트웨어 복잡성과 다양한 소프트웨어가 계속 탑재되기 때문이다. OEM 입장에서는 계속 같은 Tier 1과만 계속 같이 일을 할 수 없고, 그렇게 되면 기존에 개발했던 내용을 재사용할 수 없기 때문에 궁극적으로는 개발 비용이 증가할 수 밖에 없는 구조가 된다.

 

이러한 부분들을 OEM 입장에서는 자체 플랫폼화 시켜 계속 재사용하여 비용을 줄이는 것이 궁극적인 목표이다. 이와 더불이 앞으로는 데이터, 정보의 축적이 자산이 되기 때문에 이러한 것들과 함께 클라우드 환경을 구축하여 주도권을 가지고 가려는 것도 하나의 이유라고 생각한다.

 

OEM자체 OS는 많은 곳에서 Yocto 기반의 임베디드 리눅스를 사용하고 있고,  이런 것을 플랫폼화 시킨 오픈 소스는 AGL, GENIVI이 있지만 필자가 볼 때는 많이 부족하고 시작할 때 참고할 수 있는 좋은 오픈 소스라고 생각한다. 현재 Renault-Nissan-Mitsubishi Alliance 와 GM등과 같은 OEM에서 Andrond Native Automotive 를 사용하여 제품을 내려는 발표까지 했다. Google이라면 할 수 있고, 거기에 OEM까지 지원하니 Mobile OS와 같은 차량용 오픈 소스(?)쪽에서는 독점할 수도 있을 것으로 생각 된다. 하지만 과연 Google이 Mobile Android와 같이 거의 전체를 오픈할지는 의문긴하다.

기타

요즘은 Head Up Display와 프리미엄 모델에서는 Rear Seat에도 각각 Display가 들어가기 때문에 이 부분을 어떻게 구성하는 것도 OEM에서 아키텍처를 고민하고 있다. 분명한 것은 비용 절감을 하면서 최대한 효과를 내기 위해 SoC를 사용하는 것을 줄이려고 하고 있다는 것이다.

 

참고로 이 모든 내용은 Daimler의 차세대 플랫폼 및 제품을 개발하면서 얻게된 정보와 경험을 토대로 적은 필자의 지극히 개인적인 생각임을 알고 글을 읽어줬으면 한다.

 

글을 쓰다 보니 개발 환경보다는 좀 더 일반적인 내용을 쓰게 되었는데, 2부에서는 필자가 ELCE 2019에 제출하여 발표하려던 내용인 실제 차량용 소프트웨어 개발 환경에 대해서 조금 더 집중하여 쓰도록 하겠다.

728x90