Since 1959

2026.07.22 (수)
2026.07.22 (수)
[기고] 기능 안전 인증, 직접 검증 vs 사전 인증된 툴체인 ‘당신의 선택은’
2026-07-21  글: IAR 시스템 코리아 기술부

기능 안전 대응에서 가장 간과하기 쉬운 비용, 컴파일러 툴체인 검증


자동차, 산업 자동화, 의료기기, 항공 우주와 같이 안전이 최우선인 시스템에서는 소프트웨어의 신뢰성을 입증하는 것이 필수이다. 이러한 분야에서는 ISO 26262, IEC 61508, ISO 62304와 같은 국제 기능 안전(Function Safety) 표준을 준수해야 하며, 애플리케이션 뿐 아니라 개발에 사용된 컴파일러와 툴체인(Toolchain) 역시 충분히 검증되어야 한다.


일부 기업은 비용 절감을 위해 자체적으로 컴파일러 툴체인을 검증하는 방안을 고려한다. 툴체인을 자체로 검증하는 것은 실제로 가능한 방안이긴 하지만, 실제 기능 안전 인증 경험을 가진 전문가들은 이러한 접근이 예상보다 훨씬 많은 시간과 비용, 그리고 전문 인력을 필요로 한다고 지적한다. 일반적으로 이러한 작업은 6개월에서 1년 이상의 기간과 여러 명의 전담 엔지니어가 투입되는 대규모 프로젝트가 된다.


기능 안전에서 툴체인 검증이 의미하는 것


많은 개발자는 컴파일러 검증을 "컴파일이 정상적으로 수행되는지 확인하는 작업" 정도로 생각하기 쉽다. 하지만 기능 안전에서 요구하는 검증은 그보다 훨씬 높은 수준이다.


검증 과정에서는 컴파일러가 다양한 환경에서 항상 동일한 결과를 생성하는지(Repeatability), 정확한 코드를 생성하는지(Correctness), 그리고 예측 가능한 방식으로 동작하는지(Reliability)를 지속적으로 확인해야 한다.


실제 기능 안전 인증을 수행한 한 전문가는 “수천 개 이상의 테스트 프로그램을 컴파일하여 예상 결과와 비교하는 확인 테스트 작업(Validation Test Suite)을 수행하고, ISO 표준 적합성 시험(Standard Conformance Test)을 진행하며, GCC의 DejaGNU와 같은 회귀 테스트(Regression Test)까지 실행해야 했다”고 말한다.


즉, 단순히 몇 개의 예제 프로젝트를 컴파일하는 수준으로는 기능 안전 요구 사항을 충족할 수 없다.


검증이 끝났다고 완벽한 컴파일러가 되는 것은 아니다


기능 안전에서 중요한 사실 가운데 하나는 "검증 = 결함이 없는 제품"이 아니라는 점이다. 아무리 많은 테스트를 수행하더라도 모든 상황을 완벽하게 검증하는 것은 현실적으로 불가능하다. 기능 안전이 요구하는 것은 알려진 모든 문제(Known Issue)를 식별하고, 원인을 분석하고, 영향도를 평가하며, 문제를 해결하거나, 해결이 어려울 경우 적절한 우회 방법(Workaround)을 문서화하는 것이다. 다시 말해, 알려지지 않은 위험(Unidentified Risk)을 최소화하는 것이 기능 안전 검증의 핵심이다.


그림 1. 기능 안전이 필수인 산업자동화



기능 안전 컴파일러 검증의 세 가지 핵심 요소


기능 안전 표준에서는 컴파일러를 신뢰할 수 있는 개발 도구로 인정하기 위해 크게 세 가지 요소를 요구한다.


1. 광범위한 테스트 수행


가장 먼저 수행되는 것은 방대한 검증 테스트이다. 대표적으로 다음과 같은 작업이 수행된다.


수천 개 이상의 테스트 프로그램 컴파일 

- 예상 결과와 실제 결과 비교 

- ISO C/C++ 표준 적합성 시험 

- 회귀 테스트(Regression Test) 


이 과정에서는 다음과 같은 검증 도구들이 자주 활용된다.


- DejaGNU 

- Plum-Hall Validation Suite 

- Perennial C/C++ Validation Suite 


이러한 테스트는 컴파일러의 잠재적인 오류나 최적화 과정에서 발생할 수 있는 문제를 발견하는 데 중요한 역할을 한다.


2. 방대한 문서화 작업


테스트만 수행한다고 기능 안전 인증을 받을 수 있는 것은 아니다. 오히려 많은 전문가들은 문서 작성이 테스트 만큼이나 중요한 작업이라고 이야기한다.


검증 과정에서는 다음과 같은 자료를 지속적으로 관리해야 한다.


- Validation Report 

- Test Report 

- Traceability Document 

- Known Issue List 

- Deviation Report 


특히 컴파일러의 모든 동작에 대해 어떻게 시험했는지, 어떤 결과가 나왔는지, 문제가 발견되었는지, 문제를 어떻게 처리했는지를 모두 추적 가능하도록 기록해야 한다. 기능 안전 인증 기관은 이러한 문서를 기반으로 검증의 적절성을 평가한다.


3. 문제 발생 시 대응 전략(Mitigation)


검증 과정에서 발견된 모든 문제는 반드시 관리되어야 한다.

대표적인 대응 방법은 다음과 같다:


- Compiler Workaround 제공 

- Coding Rule 적용 

- Compiler Option 제한 

- 사용자 가이드 제공 

- 향후 버전 수정 계획 수립 


또한 컴파일러가 업데이트될 경우 동일한 검증을 다시 수행해야 하므로 장기적인 유지 보수 계획도 함께 마련되어야 한다.


기능 안전 인증은 일회성 프로젝트가 아니다


많은 기업이 간과하는 부분은 인증 이후에도 지속적인 관리가 필요하다는 점이다.


예를 들어 컴파일러가 새로운 버전으로 업데이트되면 기존 Validation 결과가 그대로 유지되는지, 새로운 최적화가 기존 동작에 영향을 주지는 않는지, 새로운 Known Issue가 발생하지 않았는지 등을 다시 검토해야 한다.


즉, 기능 안전 인증은 한 번 끝나는 프로젝트가 아니라 지속적으로 관리해야 하는 프로세스이다.


자체 검증에 필요한 실제 비용


컴파일러를 ISO 26262, IEC 61508, ISO 62304 등에 맞게 자체 검증하는 경우 필요한 비용은 SIL(Safety Integrity Level)이나 프로젝트 규모에 따라 달라진다.


일반적으로 업계에서는 다음과 같은 수준을 예상한다.


- 약 6~12개월의 검증 기간 

- 최소 2~4명의 전담 엔지니어 

- 약 30만~60만 달러 이상의 인건비 

- 외부 심사 비용 

- 인증 심사 비용 

- 방대한 문서 작성 비용 


여기에 인증 기간 동안 제품 출시가 지연될 경우 발생하는 기회 비용까지 고려하면 실제 비용은 더욱 커질 수 있다.

결국 많은 기업에게 중요한 질문은 "우리가 직접 검증할 수 있는가?"가 아니라 "직접 검증하는 것이 과연 경제적인가?"가 된다.


많은 기업이 사전 인증된 툴체인을 선택하는 이유


이러한 이유로 최근 기능 안전 프로젝트에서는 자체 검증보다 사전 인증(Pre-certified) 된 툴체인을 사용하는 사례가 빠르게 증가하고 있다. 사전 인증된 툴체인은 이미 국제 인증 기관의 검증을 완료한 상태이므로 사용자는 별도의 툴체인 검증 부담을 크게 줄일 수 있다.


대표적인 예가 IAR Functional Safety Edition이다.


IAR의 기능 안전 솔루션은 TUV SUD 인증을 획득하여 ISO 26262, IEC 61508, ISO 62304 등 주요 기능 안전 표준에 대응하도록 설계되어 있다.

이를 활용하면 개발 조직은 자체 검증 기간 단축, 검증 비용 절감, 국제 기능 안전 표준 대응, 감사(Audit) 준비 부담 감소 등의 효과를 기대할 수 있다.




그림 2. CPU 코어 및 산업별 기능안전 인증 규격



IAR이 제공하는 기능 안전 플랫폼의 차별점


일부 개발 도구는 기능 안전 프로젝트를 위해 별도의 인증 작업이나 추가 검증이 필요하다. 반면 IAR은 기능 안전 지원을 플랫폼 자체에 포함하고 있어 별도의 툴체인 검증 부담을 최소화하도록 구성되어 있다.


또한 하나의 구독 환경에서 Arm, RISC-V, Renesas RX, RL78, RH850 등 다양한 아키텍처를 지원하므로 프로젝트 확장성과 유지 보수 효율성도 높일 수 있다. 이를 통해 개발자는 기능 안전 인증 준비보다 실제 제품 개발과 혁신에 더욱 집중할 수 있다.


맺음말


기능 안전 프로젝트에서 가장 많은 시간이 소요되는 작업 중 하나는 애플리케이션 개발이 아니라 개발 도구의 신뢰성을 입증하는 과정이다.


컴파일러 툴체인을 직접 검증하는 것은 가능하지만, 수개월에 걸친 테스트와 방대한 문서화, 지속적인 유지 보수, 그리고 상당한 비용을 감수해야 한다.


반면 이미 국제 인증기관으로부터 검증을 완료한 기능 안전 툴체인을 활용하면 이러한 부담을 크게 줄이고 개발 일정과 비용을 절감할 수 있다. 기능 안전이 요구되는 산업에서는 단순히 인증을 획득하는 것보다 효율적이고 지속 가능한 개발 환경을 구축하는 것이 경쟁력의 핵심이 되고 있다. 사전 인증된 기능 안전 툴체인의 활용은 이러한 요구에 대응하는 현실적인 선택지가 될 수 있다.



[참고] 기능 안전 - IAR로 입증된 안전성

https://www.iar.com/ko/embedded-development-tools/functional-safety 


<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>

100자평 쓰기