[헬로티]
본고는 AD/ADAS 시대를 맞이해 이처럼 중요해진 V&V 문제에 대한 해결책을 살펴보고 설명하는 5부작 시리즈의 첫 번째 기사이다. 본 시리즈에서 살펴볼 솔루션은 확장 가능한 충실도를 갖는 가상 ECU, 제약조건 기반 설계(CBD) 방식의 생성적 MDD 워크플로우, 소프트웨어 아키텍처 표준, 테스트 프레임워크 표준, 모델링 및 툴 상호운용성 표준, 그리고 아키텍처 인식 검사이다.
본 시리즈에서 소개할 기사 내용에 대한 개요는 다음과 같다.
1. 동향, 해결과제, 영향 및 솔루션
2. XIL 테스트 벤치 내의 확장 가능한 충실도 — 다양하게 요구되는 수많은 V&V 수준을 저마다 최적으로 지원하는 다양한 테스트 벤치 플랫폼이 없이는 엄청난 규모의 문제들을 다룰 수 있도록 테스트 시간 및 범위를 확장할 수 없다.
3. 프로세스 전반에 걸친 테스트 재사용 — 테스트의 재사용 없이는 전기전자 시스템의 검사 및 검증에 드는 비용과 시간으로 인해 일하기가 힘들어지며, 커버리지가 미흡해져 엄격한 안전성 및 보안성 요건에 부응할 수 없다.
4. 생성적 모델 기반 개발(MDD) 워크플로우 — 자동화 툴은 엔지니어링 시간과 노력을 크게 절감해줄 뿐만 아니라, 전문지식의 습득과 제약조건 기반의 설계 모델 변환을 이용해 생산물을 만들어냄으로써 품질을 극대화한다.
5. 설계 인식 V&V — 엔지니어는 테스트 신호를 설계 수준과 교차상관 시킬 수단이 없이는 전기전자 시스템을 설계라는 측면에서 검사 및 검증할 수 없다.
1. 동향, 해결과제, 영향 및 솔루션
자동차 시장은 첨단 운전자 보조 시스템(ADAS)과 자율주행 차량(AV)을 지향하는 동향으로 인해 혁신이 촉진되고 있으며, 첨단 전자제어 장치(ECU), 센서, 액추에이터 및 그 밖의 차량 탑재 하드웨어에 들어가는 소프트웨어 콘텐츠의 양이 맹렬한 기세로 증가하고 있다.
이로 인해 차량의 전기전자(E/E) 시스템 전체에 흐르는 데이터 양도 극적인 급증 추세를 보이고 있다. 한편으로 시간, 예산 및 품질에 대한 자동차 업계의 요건이 갈수록 더 엄격해지고 있어, 이에 부응하기 위해서는 효과적인 검사 및 검증(V&V)을 달성하는 일이 무엇보다도 중요해졌다. 많은 전문가들이 향후 수년 내지 수십 년간 검사 및 검증이 이러한 운송 기술에 대거 채택될 것으로 예측하고 있음을 고려할 때 특히 그렇다.
자동화된 자율주행 기술의 복잡성이 갈수록 더 커짐에 따라, 개발자들은 차세대 전기전자 시스템의 안전성과 보안성을 검사 및 검증함에 있어서 새로운 문제에 직면하고 있다. 이러한 문제를 해결하는 과정에서 엔지니어가 사용해야 하는 다양한 벤더들의 새롭고 전문화된 소프트웨어 툴의 수도 급격히 늘어나고 있는데다가, 이 모든 툴들은 어떻게든 함께 작동해야 한다.
오늘날의 자동차 엔지니어들이 공통적으로 직면하고 있는 매우 중요한 문제는 엄청난 수의 V&V 사이클을 다뤄야 한다는 것으로서, 여기에는 계층화된 개발 생태계에 존재하는 수많은 공백부 전반에 대한 테스트가 포함된다. 방대한 양의 소프트웨어와, 모든 시스템 하드웨어 내부와 이들 간에 흐르는 엄청난 양의 데이터로 인해 매우 복잡한 상호작용이 발생한다. 전기전자 시스템은 본질적으로 멀티 ECU 분산 시스템이다. 따라서, 이상적인 V&V 인프라는 시스템 모델 내의 정확도(또는 충실도) 수준을 혼합할 수 있도록 지원해야 필요한 테스트 시나리오의 양을 현실적으로 커버할 수 있다.
ECU 하드웨어는 상당히 정확하며, 검사 장비를 통해 엔지니어는 실제 ECU 대상을 이용해 시스템을 테스트할 수 있다. 하지만, 비용 및 유지관리의 복잡성이라는 요인으로 인해 일반적인 프로젝트에서 사용할 수 있는 하드웨어 기반 검사 시스템의 수는 제한된다. 이러한 시스템들은 이용 일정이 잡혀 있는 경우가 많으며, 프로젝트에 참여하는 모든 소프트웨어 엔지니어가 이를 사용할 수 있는 것도 아니다. 이는 이러한 시스템이 가장 필요할 때 특히 그렇다.
또한 물리적 하드웨어를 예측을 통해 제어하는 데는 한계가 있으며, 추적 및 고장 주입(Failure injection)을 위한 시스템 신호의 가시성이 항상 가능하지도 않다. 어쩌면 이보다 더 제한적인 요소는 실제 ECU 하드웨어에는 실시간으로 실행되는 환경 모델이 필요하다는 사실일지도 모른다. 이로 인해 한편으로는 이들의 충실도가 제한되며, 또 한편으로는 장기적인 효과를 단축된 검증 사이클 내에서 고려해야 하는 테스트의 경우 시간을 단축할 수 없다.
테스트를 개발 프로세스 전반에 걸쳐 재사용하는 것도 ADAS/AD 시대에 직면하고 있는 중요한 엔지니어링 과제 중 하나이다. 재사용 문제에 영향을 미치고 있는 가장 중요한 요인으로는 다양한 수준의 테스트 벤치 신호 추상화, 증가일로에 있는 시판 전문 툴을 제어하기 위한 다양한 수단들, 그리고 프로젝트 전반에 걸쳐 사용되는 이질적인 모델링, 테스트 및 프로그래밍 언어 등이 있다.
이러한 문제를 효과적으로 해결하지 못하면 사업적, 경제적 관점에서 많은 부정적 결과가 초래될 수 있다. 안전성 및 보안성에 대한 테스트 범위가 충분하지 못할 경우 사업에 미치는 영향이 가장 클 수 있다. 테스트 범위가 충분하지 못하면 중요한 잠재적 문제를 검출하지 못한 채 지나칠 수 있기 때문이다. 문제해결 비용이 가장 적게 드는 프로젝트 초기에 문제를 발견하지 못할 경우 개발 예산의 폭증으로 이어질 수 있다. 이를 제품 배포 전에 검출하지 못하면 기술적 오류로 인해 기업은 물론 최종 사용자에게까지 치명적인 결과를 초래할 수 있다.
테스트 범위가 부적절해지는 주요 요인(과 이에 따른 비효율성 및 비용)은 협력업체의 팀, 그룹 및 조직 간에 테스트 아티팩트를 교환하지 못하는 것과 관련이 있다. V&V 표준 및 모범 사례를 따르지 않으면 서로 호환성이 없는 테스트 기술 간에 오락가락 오가게 될 경우가 많다. 이는 궁극적으로 테스트 적용 범위를 최적화하는 데 필요한 테스트 아티팩트의 조직 간 공유 유형을 제한하게 된다.
또한 검증 엔지니어는 최고의 테스트 자동화 소프트웨어를 최고의 테스트 벤치와 결합시킬 수 없게 된다. 테스트 아티팩트를 공유하지 못할 경우, 한 협력업체가 다른 협력업체에서 알려준 문제를 재현하지 못하는 일반적인 문제가 야기될 수도 있다. 더 나아가, 엔지니어가 각 비표준적 툴의 독점적 세부사항을 배워야 한다면 교육비용이 증가하게 된다.
▲자동차 전장화의 플랫폼 변화
2. XIL 테스트 벤치 내의 확장 가능한 충실도
전기전자(E/E) 시스템의 설계와 관련된 개발 방법론과 검사 및 검증(V&V) 툴은 지난 수십 년간 크게 발전해왔다. 오늘날의 모델 기반 개발(MDD) 방법론과 XIL(“X”-in-the-loop) 검사 접근방법은 안전하고 보안성 높은 차량용 전기전자 시스템을 개발하기 위한 효과적인 수단으로 확고하게 자리잡고 있다.
XIL 장비는 이른바 ‘디지털 트윈(Digital twin)’으로서, 환경 모델과 테스트에 연결된 전자제어 장치(ECU)의 네트워크에서 소프트웨어 기능을 실행하는 시스템 모델이다. 디지털 트윈의 생성에 일반적으로 사용되는 핵심적인 산업 표준 두 가지는 기능적 목업 인터페이스(FMI: Functional Mock-up Interface)와 AUTOSAR(AUTomotive Open System ARchitecture)이다.
FMI는 많은 툴 벤더들이 폭넓게 지원하고 있는 개방형의 툴 독립적 표준으로서, 모델 교환 작업(외부 솔버)과 동적 모델의 통합 시뮬레이션(내부 솔버)에 모두 사용된다. FMI는 XML 파일과 컴파일된 C-코드의 조합을 지정하며 이 모든 것이 FMU(Functional Mockup Unit)에 함께 들어 있는데, FMU는 분산형 전기전자 시스템을 둘러싼 센서, 액츄에이터 및 플랜트 환경을 나타낸다. FMU를 통해 환경 모델의 충실도를 확장함으로써 테스트 벤치 인터페이스를 변경하지 않고도 검사 의도를 충족시킬 수 있다. FMU는 또한 시스템 레벨의 FMI-마스터 시뮬레이션 내에서 ECU 자체를 나타낼 수도 있다.
AUTOSAR 파트너십은 OEM 제조업체, 1차 자동차 공급업체, 반도체 제조업체, 소프트웨어 공급업체 및 툴 공급업체의 연합이다. 현재의 시장과 미래 시장의 자동차 전기전자 아키텍처는 다를 것이므로, 이러한 파트너십을 통해 자동차 소프트웨어 아키텍처를 위한 사실상의 개방적 산업 표준을 확립할 수 있다. XIL 테스트 벤치 내에서 AUTOSAR가 갖는 중요성은 정형적인 플랫폼 개념과 하드웨어 추상화를 제공한다는 데 있다. 이를 통해 디지털 트윈의 타이밍 거동과 신호 통신을 프로세스의 매우 초기부터 ECU 모델의 충실도 확장에 따라 지속적으로 고려해나갈 수 있다.
MDD 시스템 엔지니어링 프로세스에서는 ECU의 거동 모델을 차량 시스템의 통신 네트워크, 센서, 액추에이터, 그리고 ECU를 둘러싼 플랜트 환경의 모델에 대해 테스트하는데, 이 모든 것이 소위 MIL(Model-In-the-Loop) 수준의 추상화를 구성한다. MIL 수준의 거동 모델이 검증되고 나면 자동적으로 C/C++ 코드로 변환된 뒤에 다시 테스트된다. 이 모든 것이 SIL(Software-In-the-Loop) 수준의 추상화이다.
궁극적으로 생성된 코드는 ECU 하드웨어 및 플랫폼 소프트웨어(즉, 펌웨어)에 통합된 뒤에 다시 테스트되는데, 이것이 ‘HIL(Hardware-In-the-Loop)’ 수준의 추상화이다. HIL 수준의 테스트는 ECU 하드웨어 모델을 이용해 수행할 수도 있는데, 이는 “vHIL”(virtual Hardware-In-the-Loop) 수준의 추상화에 해당된다.
테스트의 목적을 충족시키려면 XIL 구성의 정확도가 적절한 적용 범위와 신뢰도를 달성하기에 충분해야 한다. 다양한 XIL 구성의 충실도 범위는 상당히 넓을 수 있다. 가상 ECU 시뮬레이션 기술을 이용하는 vHIL 구성이 가장 폭넓은 범위를 망라한다.
이 구성으로 ECU 하드웨어 모델의 정확도를 확장할 수 있지만, 플랫폼 및 애플리케이션 소프트웨어가 최종적인 차량에 사용되는 실제 코드이다(HIL과 유사). 이를 통해 최종적인 양산용 소프트웨어를 손쉽게 테스트할 수 있으며, 검사 의도 면에서도 최적의 정확도를 달성할 수 있다. 이러한 개념을 “확장 가능한 충실도”(scalable-fidelity)라고 한다.
확장 가능한 충실도가 중요한 이유는, 주행성 테스트에 가장 적합한 디지털 트윈이라고 해서 임베디드 소프트웨어가 특정한 안전성이나 보안성 요건을 충족시킬지 여부를 검증하는 데도 가장 효과적이지는 않을 수도 있기 때문이다. 디지털 트윈이 충분한 정확성을 갖는지 알려면 정확히 무엇을 검사해야 하는지 명확하고 구체적으로 진술해야 한다. 그래야 요구되는 충실도의 ‘적합한 수준’이 어느 정도인지 알 수 있다.
적합한 수준의 충실도가 중요한 이유는 디지털 트윈이 너무 단순하면 모든 검증 문제에 대해 충분히 상세한 내용을 밝혀낼 수 없고, 반면에 디지털 트윈이 고도로 정확하면 개발 주기가 길어지고 비용이 상승하며 시뮬레이션 성능이 불충분해질 수 있는 등 다른 절충사항이 발생하기 때문이다. 일반적으로 최선의 선택은 시판 제품 중 가장 빠르고 저렴하면서도 문제를 해결하기에 충분한 충실도를 제공하는 디지털 트윈이다.
팀들에게 요구되는 엄청난 양의 테스트를 효과적으로 완료하기 위해서는 하드웨어 기반의 장비에만 의존할 수 없다. 일반적으로 사용 가능한 장비 수가 너무 적어서 프로젝트에 참여하는 모든 소프트웨어 개발자나 검증 엔지니어에게 제공되지 못하기 때문이다. 게다가, 하드웨어 장치는 실시간으로만 실행될 수 있다. 하지만 테스트를 MIL이나 SIL 또는 가상 HIL(virtual HIL) 수준에서 수행하면 테스트 주기를 대폭 단축할 수 있으므로, 이러한 모델이 많은 검증 요건에 보다 적합하다. 게다가 모델을 이용해 테스트할 경우에는 PC만 있으면 되므로 비용 효율성을 유지할 수 있다.
효율성을 달성하기 위해서는 테스트 프레임워크가 XIL 수준의 추상화를 단일 시스템 수준 시뮬레이션 내에서 혼합시킬 수 있도록 지원하는 것도 중요하다. 이는 대부분의 현대적인 ADAS, ADS 및 AV 차량 시스템에 공통적인 고도로 분산되고 멀티 코어 및 멀티 ECU를 갖춘 전기전자 설계 유형을 효과적으로 검증하는 데 핵심적이다. 멀티 ECU 시스템의 시뮬레이션 시나리오에 사용되는 모든 ECU 디지털 트윈이 해당 ECU에 사용 가능한 최고의 충실도를 갖춰야 할 필요는 없다.
끝으로, 확장 가능한 충실도를 XIL 테스트 벤치 내에서 보장할 경우 다음과 같은 여러 가지 비용 절감 효과를 얻을 수 있다.
- 문제를 해결비용이 가장 적게 드는 자동차 프로젝트 초기에 발견할 수 있다.
- V&V 범위가 확대되어 안전성과 보안성이 향상되고, 문제점이 현장에서 드러나기 전에 파악할 수 있다.
- 혼합된 충실도의 테스트 벤치를 이용하면 멀티 ECU 시스템에 요구되는 엄청난 수의 V&V 사이클을 지원할 수 있다.
3. 프로세스 전반에 걸친 테스트 재사용
시스템의 디지털 트윈에 대한 테스트는 테스트 벤치에서 시작되는데, 이 추상화 기능으로 테스트 대상 시스템(SUT)을 실행한 뒤 그 안의 데이터를 액세스할 수 있다. 전기전자(E/E) 시스템의 디지털 트윈에는 모든 ECU, 네트워크, 메카트로닉 하드웨어 및 기타 구성요소의 시뮬레이션이 포함된다. 각 유형의 데이터나 액세스를 위해서는 서로 다른 인터페이스가 필요하며, 이는 다양한 전문 툴에 의해 구성되고 관리된다.
전기전자 시스템의 주요 데이터
- 임베디드 소프트웨어와 시뮬레이션 모델의 신호 및 파라미터
- ECU의 진단 기능이 제공하는 데이터
- 자동차 소프트웨어 내의 측정 가능한 변수 및 보정 데이터
- 시스템 내에서 결함 및 오류 주입을 제어하는 데이터
- 자동차 네트워크를 통해 전달되는 메시지에 인코딩 되는 신호
테스트 자동화 소프트웨어는 테스트 시퀀스(또는 테스트 케이스)를 지원하며, 테스트 벤치에 의해 노출된 인터페이스를 이용해 데이터를 액세스하고 디지털 트윈의 기능을 실행한다. 전반적으로, 테스트 케이스는 전기전자 시스템 요건의 모든 측면을 검사 및 검증할 수 있을 만한 커버리지를 갖춰야 한다.
테스트 자동화 소프트웨어가 융통성 없는 인터페이스를 이용해 테스트 벤치에 직접 결합되어 있을 경우에는 개발 프로세스 전반에 걸친 테스트 재사용이 불가능하며, 모델 수준에서의 검사 및 검증(V&V)과 구현 수준에서의 V&V 사이에는 커다란 단절 상태가 지속된다. 이는 중요한 문제이다. 모든 테스트 케이스가 각각의 추상화 수준으로 변환되거나 소급적용 되지는 않으며, 툴 의존적인 테스트는 다양한 기술 수준을 갖춘 다양한 사람들에 의해 수 차례나 개발되기 때문이다.
▲테스트 자동화 소프트웨어의 테스트 벤치
테스트의 재사용을 어렵게 만드는 요인
- 테스트 벤치 내 데이터 및 신호의 다양한 추상화 수준
- 다수의 모델링 및 프로그래밍 언어
- 다양한 전문 툴을 시퀀싱 및 제어하거나 디지털 트윈에 신호를 인가하고 추적하기 위한 독점적 수단.
표준화 없이는 테스트 케이스의 재사용이 불가능하다. 테스트 케이스와 테스트 벤치 간에 통신하거나, 테스트 벤치를 기술, 구성 및 초기화하거나, 테스트 벤치 내의 데이터를 매핑 및 액세스할 수 있는 일관된 방법이 달리 없기 때문이다.
ASAM XIL은 테스트 자동화 툴과 테스트 벤치 간의 통신을 위한 API 표준이다. 이것은 앞서 살펴본 문제들을 해결할 뿐만 아니라 다양한 벤더들이 제공하는 솔루션 간의 상호운용성을 촉진한다.
ASAM XIL의 주요 이점
- 테스트 자동화 소프트웨어를 테스트 하드웨어로부터 분리하여 테스트 케이스의 재사용을 지원
- 테스트 자동화 소프트웨어 및 테스트 벤치와 관련된 여러 공급업체들 간에 상호운용성 확립
- 시뮬레이션 툴 기반의 테스트 벤치 제어 수단 제공
- 테스트 작업을 대폭 축소
- 테스트에 대한 투자의 장기적 보호 지원
- 테스트 벤치의 설정 및 초기화를 위한 일반적인 접근 방법 확립
- 시간 정렬 추적 데이터의 수집 및 그 데이터 형식의 지정
- SUT에 대한 결함 및 오류 주입 지원
- 테스트 이벤트 및 트리거링 지원
- 교육 비용 절감
ASAM XIL은 두 개의 주요 부분으로 설계되어 있다. 첫 번째 부분은 시뮬레이션 모델, ECU 데이터(예컨대 파라미터, 변수 및 진단), 전기적 오류 시뮬레이션 및 자동차 네트워크의 테스트 벤치이다. 이 테스트 벤치는 특정한 테스트 벤치 포트를 통해 다양한 유형의 툴에 대한 인터페이스를 제공한다. 이 포트들은 ECU에 대한 표준화된 액세스를 제공하는데, 여기에는 보정, 측정, 모델 액세스, 진단, 네트워크 신호 및 전기적 오류 시뮬레이션을 위한 인터페이스가 포함된다.
ASAM XIL의 두 번째 주요 부분은 단위, 데이터 유형 또는 변수 식별자를 매핑하고 동작, 측정, 로깅, 트리거링, 초기화, 순서 및 시퀀싱을 구성하기 위한 프레임워크이다.
ASAM XIL 매핑 프레임워크는 테스트 자동화 소프트웨어를 테스트 벤치로부터 분리해내는 특히 까다로운 과제를 해결하는 데 있어서 핵심적이다. 이는 테스트 벤치 내의 데이터가 매핑을 이용해 상이한 값과 유형을 가질 수 있도록 함으로써 이루어진다. 각 테스트 벤치에 대해 새로운 매핑을 제공함으로써 테스트 케이스가 변경 없이 유지되며, 디지털 트윈 내와 엔지니어링 단계 전반에 걸쳐 어떠한 XIL 추상화 수준에서도 재사용될 수 있다. 테스트 케이스에 대한 포트 독립성은 테스트 벤치의 변수에 대한 객체 지향적인 액세스와 프레임워크 계층 내의 포트 추상화를 통해 달성된다. 프레임워크는 이러한 변수 객체(VO)를 기반으로 신호 기록, 신호 생성, 그리고 이벤트 감시 및 트리거링을 위한 객체를 제공한다.
ASAM XIL은 비즈니스 측면에서도 이롭다. 교육비용이 절감되며, 문제를 바로잡기 위한 비용이 가장 적게 드는 개발 프로세스 초기에 테스트를 지원한다. 테스트 케이스는 개발 프로세스 전반에 걸쳐 재사용할 수 있다. OEM 및 공급업체는 테스트 케이스와 테스트 벤치를 매우 효율적으로 교환할 수 있다. 끝으로, 검증 엔지니어는 최고의 테스트 자동화 소프트웨어와 최고의 테스트 벤치 간에 전환할 수 있게 된다.
4. 생성적 모델 기반 개발의 워크플로우
생성적 모델 기반 개발(MDD) 워크플로우는 소프트웨어 툴을 이용해 제품을 자동 생성하는 시스템 엔지니어링 프로세스다. 이 프로세스는 모델을 입력으로 사용하며, 수작업으로 적용되던 엔지니어링 전문 기술을 모델 변환 알고리즘으로 구현해 적용한다. 이 기법을 통해 개발자는 자신의 분야에 집중하고 특정 유형의 문제에 최적화된 해당 분야 특정의 모델링 툴을 이용해 모델을 생성할 수 있다.
이러한 모델들을 충분히 검사 및 검증(V&V)하여 이들이 나타내는 시스템이 요건을 충족시킴을 증명하고 나면, 검증된 모델에 의해 이어지는 자동화 생산 단계가 체계적인 방식으로 추진된다. 생성적 MDD 워크플로우는 최상의 품질, 성능 및 컴플라이언스를 보장하면서 개발 시간도 단축시킨다.
ASAM XIL, FMI 및 AUTOSAR와 같은 표준들은 전기전자(E/E) 시스템의 개발을 위해 포괄적인 생성적 MDD 워크플로우를 확립할 수 있는 정형적인 구성요소를 제공한다. ASAM XIL은 표준적인 테스트 자동화 및 테스트 벤치 아키텍처를 제공하고, FMI는 해당 분야에 특정한 모델을 워크플로우에 배치하는 데 필요한 표준적인 추상화를 제공하며, AUTOSAR는 정형적인 전기전자 하드웨어 및 소프트웨어 개념을 모델과 테스트 데이터에 매핑하는 데 사용되는 소프트웨어 아키텍처 측면을 표준화한다.
AUTOSAR는 생성된 구현물의 일부로서 임베디드 소프트웨어 런타임으로도 사용된다. 툴링에서는 일련의 규칙을 이용함으로써 정상적인 시스템 설계 작업에서 생성되는 테스트 케이스 기술내용, 기능 모델, 환경 모델 및 아키텍처 모델을 가지고 자동 V&V 회귀 테스트에 필요한 테스트 벤치, 매핑 및 구성을 생성할 수 있다.
오늘날 존재하는 생성적 MDD 워크플로우는 전기전자 시스템 아키텍처의 AUTOSAR 모델과 그 소프트웨어 및 환경 거동의 FMI 모델로 시작하여 생산 품질의 임베디드 소프트웨어 이미지를 자동으로 구성 및 생성한다. 이러한 임베디드 소프트웨어 이미지는 확장 가능한 XIL 테스트 벤치 상에서 V&V을 수행할 준비가 되어 있다.
이러한 워크플로우에서 AUTOSAR는 해당 분야에 특정한 거동 모델링 활동을 유도하는 데 사용된다. 이 모델은 AUTOSAR 플랫폼에 배치될 임베디드 소프트웨어를 나타내기 때문이다. 이 모델은 아키텍처 모델을 거동 모델링에 대한 입력으로 사용함으로써 C/C++ 코드 생성 툴에 필요한 구조를 따르는데, 이러한 생성 툴은 AUTOSAR 규격 준수 코드를 생성하도록 특별히 설계되어 있다. 덕분에 엔지니어링 적응 단계를 거칠 필요가 없으며, 제어 및 기능 엔지니어는 시스템을 둘러싸고 있는 거동 및 트리거링 시맨틱(Semantics)에 집중할 수 있다.
ECU 통합기가 V&V 준비가 된 시스템을 생성하는 데는 입력이 거의 또는 전혀 필요하지 않다. 입력량은 엔지니어링 단계(시스템의 어떤 측면이 테스트 중인지 여부)에 좌우되며, 조직에서 각 엔지니어링 단계마다 어떤 제도적 규칙과 스타일을 채택하는 지에도 좌우된다. 예를 들어 테스트 대상이 애플리케이션 로직이라면, “충분히 양호한” AUTOSAR 펌웨어를 생성하는 기본 구성 규칙만으로도 기능을 검증하기에 충분하다.
UTOSAR 규격을 준수하는 플랫폼은 실제적인 ECU 하드웨어 세부사항으로부터 독립적인 표준 시맨틱을 실현하기 때문이다. 타이밍, 메모리 및 그 밖의 하드웨어 의존적인 제약조건을 고려해야 한다면 보다 엄격한 규칙을 적용해야 한다. 하지만 그러한 경우에도 일단 생성이 구성되고 나면 생성적 워크플로우에 의해 AUTOSAR 펌웨어와 런타임 환경을 포함한 통합 ECU가 자동적으로 생성된다.
AUTOSAR 인식 MDD 워크플로우를 이용해 MIL(Model-in-the-Loop) 테스트 벤치 생성이 자동화된다. 또한, V&V 작업도 보다 현실적인 임베디드 소프트웨어 맥락에서 수행된다. ECU 하드웨어를 모델화한 확장 가능형의 가상 ECU를 활용하는 툴 제품에서는 기존에 SIL(Software-in-the-Loop) 테스트 벤치를 이용해 수행하던 작업을 건너뛸 수 있다. 또한 V&V를 vHIL(virtual hardware-in-the-loop) 테스트 벤치에 대해 직접 수행할 수 있다. 이러한 vHIL 테스트 벤치는 SIL 테스트 벤치의 편의성과 HIL(hardware-in-the-loop) 테스트 벤치의 충실도라는 이점을 제공한다.
요컨대, 생성적 MDD 워크플로우는 품질을 높이고 문제를 줄여주는 구현 분야의 전문 기술을 툴로 구현해 이용함으로써 가치를 제공하며, 수작업이나 반복적인 작업을 없애 타임투마켓을 앞당긴다.
▲검사 및 검증(V&V) 작업
5. 설계 인식 V&V
본 시리즈에서는 지금까지 워크플로우 전반에 걸친 테스트 재사용, XIL 테스트 벤치에서 확장 가능한 충실도가 갖는 가치, 그리고 차량의 전기전자(E/E) 시스템 개발 관련 주요 검사 및 검증(V&V) 작업에 대한 생성적 모델 기반 개발(MDD) 워크플로우 솔루션을 다루었다. 흥미롭게도, 이러한 문제들에 대한 솔루션으로 인해 또 다른 일련의 새로운 문제들이 나타나므로, 이에 대해서도 추가적인 솔루션이 필요하다.
본고에서 살펴본 각 V&V 솔루션의 중심적인 내용은 모델링 개념으로서, 이는 추상화 수준을 전기전자 시스템의 영역으로 끌어올림으로써 툴을 이용해 설계 입력 기반으로부터 최적의 제품을 실현할 수 있도록 해준다. 하지만 추상화 수준을 높이면 전문가가 툴로 생성한 구현물의 디자인이 차량 기능 개발자에게는 다소 이질적으로 보이게 된다.
이는 V&V 문제를 야기한다. 검사 툴은 기술 구현 수준에서 정보를 추출하고 스티뮬러스를 지원하는 데는 매우 뛰어나지만, 전기전자 시스템이 설계되는 수준이나 검증 엔지니어가 시스템을 이해하는 수준에서는 그렇지 못하기 때문이다. 이는 오늘날의 C++ 컴파일러가 매우 안전하고 고성능인 코드를 생성할 수 있지만, 디스어셈블러를 이용해 시스템을 디버깅 및 분석하고자 하는 C++ 프로그래머로서는 필연적으로 문제에 직면할 수밖에 없는 것과 유사하다.
다행히도, 자동 생성적 MDD 워크플로우가 가능한 것과 같은 이유로 디버깅 및 분석을 설계 수준에서 지원하는 MDD 검사 환경도 가능하다. 솔루션은 메타 모델에 있다. 설계 입력 모델은 이를 따르며 이를 통해 기술된다. 생성 툴은 정형적 설계 모델 기술내용을 이들의 메타 모델에 구현되어 있는 정형적 시맨틱에 대한 지식과 함께 이용함으로써 설계 모델을 매핑된 구현 모델로 변환한다. 이 매핑은 구현 모델의 정보(및 그 실행 추적 정보)를 다시 설계 모델의 상응하는 정보와 교차상관 시키는 데에도 사용할 수 있다는 점에서 대칭적이다.
이러한 종류의 참조를 이용하는 것은 “설계를 인식하는” V&V 툴을 개발하기 위해서이다. 설계 인식은 일반적인 개념으로서, 아키텍처, 테스트 또는 언어와 같은 다양한 설계 분야의 개념에 적용될 수 있다. 또한 MDDRTOS(커널), 플랫폼 서비스, 심지어는 소프트웨어 인터페이스와 같은 구현물의 구성에도 좀더 깊게 적용될 수 있다.
예를 들어 개발자는 “AUTOSAR 인식” V&V 툴을 통해 전기전자 시스템을 ECU 내의 임베디드 소프트웨어 콘텐츠를 기술하는 AUTOSAR 아키텍처 모델이라는 맥락에서 디버깅 및 분석할 수 있다. 디버깅의 경우, 검증 엔지니어는 소프트웨어 구성요소나 포트 인터페이스와 같은 AUTOSAR 요소에 “중단점(Breakpoints)”을 설정할 수 있다. 그러면 시스템은 이러한 요소들의 맥락에서 활동이 발생할 경우 중단되므로 검증 엔지니어는 포트와 구성 요소 내부의 데이터를 검사할 수 있다. 분석의 경우에는 AUTOSAR 인식 에이전트가 디지털 트윈이 실행되는 동안에 수집된 시스템 추적 내용을 AUTOSAR 모델, 그리고 태스크 및 네트워크 신호와 같은 기본 소프트웨어(BSW) 구성 요소의 맥락에서 제시할 수 있다.
요약하자면, 자동차 시장의 급격한 발전 추세 속에서 확장 가능한 충실도, 테스트 재사용, 생성적 워크플로우 및 설계 인식 V&V 툴 솔루션의 결합을 통해 검증 엔지니어가 차량의 전기전자 시스템을 효과적으로 검사 및 검증할 수 있도록 지원하는 것이다. 효과적인 V&V가 기업에 제공하는 주요 가치는 다음과 같다.
- 문제를 해결 비용이 가장 적게 드는 자동차 설계 개발 프로세스 초기에 발견할 수 있다.
- V&V 커버리지의 확대로 안전성이 향상되고, 보안성이 강화되며, 문제가 현장에서 드러나기 전에 발견할 수 있다.
- 테스트에 포함되는 혼합적 충실도의 테스트 벤치는 멀티 ECU 시스템에 요구되는 엄청난 수의 V&V 사이클을 지원한다.
- 테스트 케이스가 개발 프로세스 전체에 걸쳐 재사용된다.
- OEM 및 공급업체가 테스트 케이스와 테스트 벤치를 효율적으로 교환할 수 있다.
- 교육비용이 절감된다.
- 검증 엔지니어는 최고의 테스트 자동화 소프트웨어와 최고의 테스트 벤치 간에 전환할 수 있게 된다.
- 구현 분야의 전문 지식이 툴에 구현돼 품질이 향상되고 향후의 문제가 감소된다.
- 수작업이나 반복적 작업을 없애 타임투마켓을 앞당긴다.
- 검증 및 설계 엔지니어는 설계 작업 수행 분야의 수준에서 제품을 실현할 수 있다.
글 : 랜스 브룩스(Lance Brooks) 멘토, 지멘스 비즈니스의 자동차 임베디드 소프트웨어 부문 수석 엔지니어