System & Software Engineering 소프트웨어 구현, 그 이상 Beyond Software Construction

Tech Trends – Integrated Architecture

이남희
Contact us| 이남희 사진
이남희
이 남 희 솔루션링크 전무

Affiliation and Experience

  • 현. 솔루션링크 전무
  • 현. KAIST 전산학과 겸임교수
  • 현. 충북대 소프트웨어학과 겸임교수
  • Ph.D. in Computer Science / Software Engineering, KAIST
  • M.S. in Computer Science / Software Engineering, KAIST
  • B.S. in Computer Science / Software Engineering, KAIST
  • Samsung Electronics
  • Samsung SDS
  • LG Electronics

Tech Trends – Integrated Architecture

자동차와 항공기 등의 기계 제어 인터페이스는 전기적인 인터페이스로 빠르게 대체되고 있어, 최신 고급 승용차의 경우, 파워트레인, 섀시, 바디, 안전 및 인포테인먼트 등 다양한 시스템 기능을 제공하기 위해 사용되고 있는 ECU가 약 100여 개에 이를 정도입니다.

이렇게 ECU가 증가하는 이유는 시스템 기능 구현의 안전성 및 편리성을 이유로 하나의 시스템 기능을 하나의 ECU에서 개별적으로 탑재하고 있기 때문입니다. 이러한 구성을 Federated Architecture 라고 하는데 시스템 기능이 많아질 수록 ECU의 수가 계속 증가할 수 밖에 없기 때문에, 크기 (Size), 무게 (Weight), 전력 (Power)의 문제를 해결하기 어렵습니다만 대부분의 자동차에 적용되고 있습니다.

이에 자동차의 시스템 아키텍처를 단순화하기 위해 하나의 ECU에서 다수의 시스템 기능을 통합 수행하도록 함으로써, 크기, 무게, 전력을 효율화할 수 있는 구성이 요구되고 있습니다.

항공기 분야에서는 이러한 구성이 Integrated Architecture라는 이름으로 90년대 이후 F/A-22 Raptor, F35 JSF 등의 적용되고 있습니다. (참조 : Integrated Modular Avionics).

Federated Architecture

기존에 독립적인 ECU의 사용을 가정하고 개발한 어플리케이션 소프트웨어들은 보통 서로 다른 조직에서 자원 공유를 고려하지 않고 개발되었기 때문에, 자원 사용의 충돌을 회피하고 자연스러운 통합을 위해서는 새로운 기술의 도입이 필요합니다. 예를 들어, 자원 공유에 대해 지역적 (local) 또는 전역적으로 (global) 책임을 가지는 각각의 스케쥴러를 사용하는 계층적 실시간 스케쥴링 (hierarchical real-time scheduling) 기술은 자원 공유 문제를 해결하기 위해 중요한 기술이 될 것입니다. 또한, (자동차에 적용하려면 많은 사항들이 보완되어야 하지만) 가상화 (Virtualization) 기술은 Integrated Architecture 로 변경할 때 소프트웨어 재사용을 극대화 할 수 있는 매우 매력적인 기술이 될 것입니다.

Integrated Architecture

Integrated Architecture를 적용한 자동차 소프트웨어 개발 방식이 일반화 될 경우 부품업체에 많은 변화가 있을 것으로 예상됩니다. Federated Architecture 상에서는 하나 (또는 몇 개)의 업체가 특정 부품에 대한 시스템 기능 정의, 설계, 구현, 시험의 모든 역할을 가지고 있기 때문에, (ICT 중심의 소프트웨어 개발을 수행하던 업체를 포함해서) 새로운 Supplier의 시장 진입이 매우 어려운 구조입니다. 하지만, Integrated Architecture 상에서는 플랫폼만 전문적으로 개발하는 업체가 필요하기 때문에, 타 분야에서 소프트웨어 개발을 전문적으로 수행하던 업체도 자동차 시장에 새롭게 참여할 수 있는 기회가 생기게 될 것 입니다. 또한, 기존 부품업체 들의 경우에는 아키텍처 변화에 대한 대비를 소홀히 한다면, 단순한 어플리케이션 로직 구현 역할로 축소될 수 있습니다.

다운로드