주요 콘텐츠로 건너뛰기
ASCET-DEVELOPER

안전하고 효율적인 고품질 C 코드 개발

이 이미지는 컴퓨터에서 ASCET을 사용하는 두 여성을 보여줍니다. 두 여성 모두 사무실에서 화면을 보고 있습니다.

ASCET은 임베디드 시스템의 모델 기반 설계 및 자동 C 코드 생성을 위한 툴입니다. ASCET을 활용하여 안전하고 효율적인 운영이 가능하고 유지보수, 테스트, 재사용할 수 있습니다. 또한 C 코드를 자동으로 생성할 수 있는 그래픽 및 텍스트 모델을 만들 수 있습니다.

이점

빠른 속도

기존 C 소프트웨어 개발 대비 최대 4배 속도가 빠르며, 모델 기반 설계와 오류 프론트로딩으로 많은 시간을 절감합니다.

검증된 품질

25년 이상 차량 내 5억 개 이상의 ECU에 사용되며 그 품질이 입증되었습니다.

간편한 통합 방식

Eclipse 플랫폼에 구축되어 있으며, MISRA-C, FMI, AUTOSAR, OSEK, ASAM 등의 표준을 지원합니다.

고품질 코드를 위한 3단계

이 그림에는 모델링, 시뮬레이션, 테스트, 코드 생성을 나타내는 세 가지 아이콘이 고품질 코드를 달성하기 위한 핵심 단계로 강조되어 있습니다.

ASCET을 사용해야 하는 이유

ASCET은 쉽고 안전한 임베디드 프로그래밍을 위해 제작되었습니다. object-oriented programming, intention-based argument handling, safe loops, semantic units, state machine, lookup tables, static analysis, 그리고 다양한 기능이 통합되어 있습니다. 이러한 요소는 서로 연동하여 임베디드 시스템의 전반적인 프로그래밍 작업을 단순화하고 향상시킵니다.

소프트웨어 구조를 구성하는 다양한 클래스를 보여주는 그래픽

클래스

  • 클래스를 구조화의 개념으로 사용하여 소프트웨어의 복잡성 해결 가능
  • 임베디드 프로젝트에서 객체 기반 캡슐화, 체계적 재사용의 검증된 이점 활용 가능
사용자가 소프트웨어 속성을 재사용하고 그래픽으로 생성된 코드를 묘사하는 데 도움이 되는 유형 시스템을 보여주는 이미지

타입 시스템

  • 소프트웨어 속성을 효율적으로 재사용하는 ASCET 기능으로 생산성 극대화
  • 복잡성을 명확하게 바꾸어주는 ASCET을 사용함으로써 사용자가 소프트웨어 속성을 시각적으로 표현하여 쉽게 이해 가능
  • 고품질 코드를 자동으로 생성하고 수동 코딩 작업에 소요되는 시간 절약
단위 및 관계의 정의, 특정 모델에 대한 단위 할당 및 코드로의 자동 변환을 그래픽으로 보여줍니다.

의미 단위

  • ASCET을 사용하면 모델 내에서 단위와 관계 쉽게 정의
  • ASCET은 수동 변환 작업 없이도 단위를 직관적으로 이해하고 통합하므로 단위를 사용하여 모델 개선 가능
  • ASCET은 단위를 자동으로 감지하고 생성 코드로 간단히 변환하여 모델링 프로세스 간소화
내장된 실시간 정적 분석을 시각화하여 숨겨진 문제를 조기에 식별한 예시를 그래픽으로 보여줍니다.

실시간 유효성 검사

  • 숨겨진 문제를 조기에 발견 가능
  • 실시간 정적 분석이 탑재되어 있어 타입 호환성, 호환되지 않는 단위, 부작용, 읽기 또는 쓰기 누락, 연결할 수 없는 코드 등을 확인
이미지에는 코드 추적성, 안전 분할, 포화 한계, 안전 아라 액세스 및 공통 하위 표현식 제거와 같은 다양한 섹션으로 자동 생성된 소프트웨어 코드가 표시됩니다.

자동 코드 생성

코드를 수동으로 작성할 때는 런타임 오류를 방지하고 표준 및 코딩 가이드라인을 준수하기 위한 추가적인 노력이 필요합니다. ASCET-DEVELOPER를 사용하면 문제 해결에만 집중할 수 있습니다. 나머지는 코드 생성기가 처리해줍니다. 이는 다음과 같은 특징이 있습니다:

  • 고품질 생산의 MISRA 호환 가능한 C 코드
  • 사용자에게 편리한 코드의 가독
  • ASCET 모델에 대한 추적성
  • 방어 코드 자동 삽입; 예를 들어 0으로 나누기를 방지하고 유형 속성을 기반으로 포화 한도를 적용하며 배열 유형에 대한 인덱스 오버플로를 방지 고정 코드 생성
  • 고정 코드 생성
  • ASCET 모델을 AUTOSAR 구조에 매핑하여 AUTOSAR 코드 생성
  • 사용자 지정 옵션을 통해 기존 ASCET 모델을 빠르게 재사용하고 다양한 대상에 맞는 코드 생성
    • 기기별 산술, 보간 또는 서비스 라이브러리에 대한 사용자 지정 콜백
    • 컴파일러용 메모리 지시어
    • 컴파일 또는 생성 시 해결 가능한 조건부 코드 및 데이터 구조
    • 리소스 및 런타임 성능을 위한 다양한 최적화 전략

ASCET은 다양한 개발 주기 단계에서 모델을 효율적이고 전체적으로 테스트할 수 있는 다양한 가능성을 제공합니다:

  • 모델과 표현 속성을 분리하면 먼저 물리적 동작을 중심으로 간단히 테스트 진행. 나중에 더 많은 타깃별 제약 조건을 적용하여 테스트 가능
  • 단위 테스트 프레임워크 탑재
  • ETAS Experiment Environment를 이용한 오픈 루프 PC 시뮬레이션
  • Statement, branch, state, transition, 그리고 Modified Condition Decision (MC/DC) coverage와 같은 측정항목을 사용하여 테스트 실행에서 Model coverage 및analysis를 수행
  • ASCET 모델은 FMI 표준을 지원하는 외부 툴에서 모델과 함께 시뮬레이션할 가능. FMU Export & MATLAB/Simulink s-function transfer
  • ETAS 프로토타이핑 솔루션을 사용하여 리얼타임 하드웨어에서 기능 프로토타이핑을 수행하며 테스트 벤치 또는 차량에서 실제와 같은 검증을 조기에 진행 가능
  • 네이티브 ASCET 플랫폼을 지원하는 타사 툴 TPT를 사용하여 ASCET 모델을 체계적으로 테스트 가능
이타스 ASCET 유닛 테스트 스크린샷

단위 테스트

  • ESDL 단위 테스트 프레임워크를 사용하여 소프트웨어 단위를 체계적으로 테스트
  • ESDL 테스트 클래스를 사용하여 독립적인 소프트웨어 유닛을 테스트하고 실행 후 결과를 시각화
이미지는 이타스 ASCET PC 시뮬레이션 기능의 스크린샷입니다.

PC 시뮬레이션

  • 시뮬레이션을 사용하여 데이터를 실시간으로 측정 및 보정하여 초기 설계 검증
  • 신호 발생기, 데이터 로거, 위젯을 갖춘 정교한 실험 환경 구현
이미지는 이타스 ASCET 테스트 커버리지 기능의 스크린샷입니다.

커버리지

  • PC 시뮬레이션 또는 단위 테스트 실행을 통한 대화형 테스트 커버리지
  • 커버리지 뷰에는 실행 중인 모든 소프트웨어 유닛에 대한 테스트 항목 요약 표시
  • 텍스트 또는 그래픽 편집기에서 테스트 항목을 시각화하여 모델의 어느 부분이 테스트되었는지 확인

ASCET을 사용하면 프로그래밍 요구 사항에 맞는 텍스트와 그래픽을 쉽게 결합할 수 있습니다. 다양한 방식으로 로직을 모델링할 수 있어 원하는 만큼 효율적으로 작업할 수 있습니다. 네 가지 사양 중에서 선택할 수 있습니다:

이미지는 이타스 ASCET 블록 다이어그램 에디터의 스크린샷입니다.

블록 다이어그램 편집기

  • 데이터 및 제어 흐름의 모델링 및 시각화에 이상적
  • 명시적인 계산 순서를 통해 완전히 Determinstic한 실행 순서
이미지는 이타스 ASCET 상태 머신 에디터의 스크린샷입니다.

상태 머신 편집기

  • 유한한 상태 머신 표기법을 기반으로 의사 결정 로직 프로그래밍 및 시각화
  • Actions and conditions를 ESDL로 직접 작성하거나 혹은 Block Diagram Editor에서 프로그래밍된 별도의 방법으로 캡슐화 가능
이미지는 이타스 ASCET esdl 에디터의 스크린샷입니다.

ESDL 편집기

  • ESDL은 Embedded Software Description Language의 약자이며, ASCET 모델의 의미를 캡처합니다. 앞서 언급된 그래픽 편집기를 사용하거나 텍스트로 직접 프로그래밍할 수 있습니다.
  • 이 편집기는 텍스트 기반 구현(예: 루프)에 더 적합한 코드에 사용하는 것이 좋습니다.
이미지는 이타스 ASCET c 코드 에디터의 스크린샷입니다.

C 코드 편집기

  • 익숙한 ESDL 인터페이스를 사용하여 사용자의 모델을 정의해 보세요.
  • C 언어의 모든 기능을 사용하여 모델의 동작 지정해 보세요.
  • C 코드 모델을 여러 모델에서 편리하게 재사용 함으로써 일관성을 높이고 개발 시간을 절약할 수 있습니다.
500,000,000
ASCET은 5억 개 이상의 제어 장치와 안전이 중요한 하드 실시간 임베디드 시스템의 수많은 고품질 임베디드 코드 라인에서 25년 이상 사용되었습니다.

커뮤니티 에디션 (비상업적 용도로만 사용할 경우 무제한 무료 이용 가능)

아이콘 문서 다운로드

ASCET의 무료 커뮤니티 에디션을 다운로드하고 업계 최고의 전문 툴을 활용하여 프로젝트를 신속히 진행하고 동료들에게 깊은 인상을 남길 수 있습니다. ASCET을 사용하면 안전이 핵심인 시스템에 대해 전문 소프트웨어 엔지니어링 개념을 가르칠 수 있고, 셀프 밸런싱 봇을 훨씬 빠르게 프로그래밍할 수 있습니다. 지금 바로 시작해 ASCET으로 기술 및 역량을 높여보세요!

프로페셔널 에디션* (유효 라이선스 사용 시)

이 이미지는 전문적인 환경에서 컴퓨터로 함께 작업하는 남성과 여성 이타스 ASCET 사용자의 모습을 보여줍니다.

*핫라인, 유지보수, 고객별 연장, 안전 인증, 교육, 컨설팅이 포함된 상업용 용도

자동차 및 기차의 브레이크 시스템, 인버터 제어, 배터리 관리 등 산업 안전에 중요한 임베디드 시스템에 ASCET으로 생성된 코드를 사용할 수 있습니다. ASCET의 프로페셔널 에디션을 사용하면 개발자는 모델링 오류에 대한 즉각적인 피드백으로 비용이 많이 드는 피드백 루프를 줄이는 등 프로세스 효율성을 높일 수 있습니다.

제품 에디션 비교

기능 커뮤니티 에디션 프로페셔널 에디션
기능
전체 제품 기능
커뮤니티 에디션
x
프로페셔널 에디션
x
기능
무료 다운로드
커뮤니티 에디션
x
프로페셔널 에디션
기능
비상업적 용도
커뮤니티 에디션
x
프로페셔널 에디션
기능
상업적 용도
커뮤니티 에디션
프로페셔널 에디션
x
기능
핫라인 지원
커뮤니티 에디션
프로페셔널 에디션
x
기능
고객별 맞춤 확장
커뮤니티 에디션
프로페셔널 에디션
x
기능
필요에 따른 유지보수 제공
커뮤니티 에디션
프로페셔널 에디션
x
기능
기능 안전 인증 패키지
커뮤니티 에디션
프로페셔널 에디션
x
기능
교육
커뮤니티 에디션
프로페셔널 에디션
x
기능
컨설팅
커뮤니티 에디션
프로페셔널 에디션
x

모든 뉴스

예정 이벤트

문의하기

궁금하신 사항은 언제든지 문의해 주시기 바랍니다.