항공용 멀티코어 SW를 위한 타이밍 분석 솔루션
RVS
Rapita Verification Suite(이하 RVS)는 항공용 멀티코어 소프트웨어의 타이밍 측정을 위해 WCET(Worst Case Execution Time)를 분석하는 솔루션입니다.
RVS는 항공용 소프트웨어 개발 표준인 DO-178C의 소프트웨어 검증 요건을 만족시키기 위해 개발되었습니다.
특히 소프트웨어의 실행 시간 분석을 통한 WCET 추정은 DO-178C에서 가이드되는 핵심적인 검증 방법입니다. (Ref. DO-178C 6.3.4) WCET를 분석 및 시험하는 것은 소프트웨어 동적의 신뢰성을 검증하기 위한 방법으로써 해당 결과는 코드의 정확성과 일관성을 보증할 수 있어야 합니다. 전통적으로 WCET는 측정 기반 분석 혹은 모델 기반 정적 분석 방식을 활용합니다. 측정 기반 분석은 실행의 일부만 확인하거나 최악의 시나리오를고려하지 않을 수 있으므로 WCET 분석 결과가 정확하지 않습니다.
모델 기반 정적 분석 방식은 측정 기반 분석의 대안으로 볼 수 있으나 프로세서의 타이밍 특성을 모사하기 위한 정확한 모델링이 필요하며 멀티코어 프로세서와 같은 복잡한 아키텍처에 적용 시, 극도의 비관적인 추정치를 산출 할 수 있습니다.
RVS는 코드 구조를 기반으로 하여 실행 가능한 경로를 모두 분석한 후, 해당 경로를 기반으로 실 타겟 상에서 직접 실행하여 보다 정확하고 효율적인 WCET를 분석합니다.

주요 특징

01항공용 소프트웨어 검증을 위한 전문 솔루션
  • DO-178C/ED-12C 프로젝트를 위한 통합 솔루션 제공
02멀티코어 프로젝트를 위한 WCET 분석
  • 코드 분석과 타겟 실행을 결합한 하이브리드 방식의 WCET 분석
03Application의 태스크 실행 시간과 스케쥴링 과정을 시각화
  • 태스크 스케쥴링 분석 결과를 다양한 차트/통계 형태로 제공, 심층적 분석에 활용
04타이밍 이벤트 식별 및 디버깅
  • Race Condition/Priority Inversion/Deadlocks와 같은 비정상적인 문제 식별

주요 기능

임베디드 하드웨어 기반 실행시간 측정

ㆍ실제 하드웨어 타겟 상에서 실행시간을 수집ㆍ정적 분석을 통한 CFG와 결합하여 정확한 WCET 분석ㆍ최소/최대/평균/HWM 실행시간 및 WCET 측정


 

Worst Case 식별을 통해 코드 최적화

ㆍWCET 동작에 기여하는 코드 요소의 식별ㆍFunction 별 호출 주기 및 최악/평균 시간 차이 분석

 

CI툴과 통합한 분석 결과 Tracking

ㆍJenkins와 Bamboo를 위한 플러그인 제공ㆍ새로운 빌드에서 실행시간 이상결과를 쉽게 식별

 

간헐적인 타이밍 이벤트 디버깅

ㆍ프로그램 실행 단계 별 디버깅 기능 제공

 

Application SW의 Task Scheduling 분석

ㆍ시스템의 스케쥴링 동작에 대한 유용한 차트와 표 제공ㆍTask 실행 및 응답 시간, CPU Utilization & Fragmentation 식별

 

Rare Timing Event 식별

ㆍPriority Inversion과 같은 타이밍 이벤트 식별ㆍ우선 순위에 따라 Task의 작업을 색깔로 표기하여 쉽게 시각화

 

System의 Capacity Issue 분석 및 식별

ㆍSW 실행 전체에서 시스템의 각 작업의 CPU 사용률 시각화ㆍCPU 사용률 지표 표시 및 특정 시간 간격으로 이동

 

다양한 RTOS의 Scheduling Algorithm 비교

ㆍ공통 프레임워크를 통한 시스템의 스케쥴링 동작 이해

 

주요 고객

제 품문 의
top