AUTOSAR InterfaceAUTOSAR Classic Platform에서 SW 컴포넌트가 서로, 또는 BSW와 통신하기 위해 사용하는 3가지 유형의 API 규약. 용어가 겹쳐 혼동되지만, 경유 경로(RTE를 지나는가, BSW를 직접 호출하는가)와 정의 주체(사용자 정의 Port인가, AUTOSAR 표준 Port인가)로 구분된다.

두 가지 축의 분류

Interface를 이야기할 때 AUTOSAR는 직교하는 두 축의 분류를 쓴다.

  • 경유 경로 축 (3종) — RTE/RTE/직접 호출 (아래 3종 분류)
  • 의미 역할 축 (6종) — Client-Server, Sender-Receiver, Mode Switch, Trigger, Parameter, Nv Data (아래 Port Interface 유형 (6종))

전자는 “어느 경로로 오는가”, 후자는 “어떤 통신 의미인가”. 예: “사용자 정의 Sender-Receiver Interface”는 경유 경로 = AUTOSAR Interface, 의미 역할 = Sender-Receiver.

3종 분류

종류경유 경로정의 주체생성 방식대표 API 예시
AUTOSAR InterfaceRTE사용자 (Port 설계)자동 생성Rte_Read_<port>_<DataElement>, Rte_Call_<port>_<operation>
Standardized AUTOSAR InterfaceRTEAUTOSAR 표준자동 생성 (표준 Port 기반)표준 Port 이름으로 치환된 Rte_* API
Standardized Interface직접 (RTE 우회)AUTOSAR 표준 (BSW 모듈)표준에 고정된 시그니처Com_SendSignal(id, data)

앞의 둘은 RTE 경유, 마지막 하나는 BSW 내부 직접 호출이다.

AUTOSAR Interface

사용자가 SW-C 설계 시 정의한 Port로부터 도구가 자동 생성하는 API. Port 이름·Data Element 이름이 함수 이름에 치환되어 들어간다.

/* SW-C 설계 시 Port 이름이 "SpeedIn", DataElement가 "Value"라면: */
Rte_Read_SpeedIn_Value(&speed);
 
/* Client-Server의 Operation 호출: */
Rte_Call_DiagPort_ReadDTC(&dtc);
  • 이름 규칙: Rte_<오퍼레이션>_<Port>_<DataElement|Operation>
  • 유연성: 시스템 설계자가 필요한 Port를 자유롭게 정의 가능
  • 재사용성 한계: Port 이름이 SW-C별로 다르면 SW-C 간 직접 호환은 안 됨 — Port 매핑이 필요

Sender-Receiver·Client-Server의 구체적 API 형태는 RTE API 표 참조.

Standardized AUTOSAR Interface

AUTOSAR 표준이 미리 정의한 Port 집합을 사용한 RTE API. 구조는 AUTOSAR Interface와 동일(자동 생성, Rte_* 이름)이지만, Port 이름과 Data Element가 표준으로 고정돼 있다.

  • 자주 재사용되는 공용 서비스(예: 진단 통신, NVM 접근)의 SW-C 인터페이스를 OEM·Tier 1이 공통 Port로 교환할 수 있게 함
  • 결과적으로 서로 다른 공급사의 SW-C가 Port 매핑 없이 연결되는 상호운용성을 확보

AUTOSAR Interface와의 차이

AUTOSAR InterfaceStandardized AUTOSAR Interface
Port 정의사용자가 자유 정의AUTOSAR 표준 명세에 고정
API 형태Rte_* (자동 생성)Rte_* (자동 생성, 이름 표준 반영)
상호운용SW-C별 Port 매핑 필요표준 Port로 직접 호환

Standardized Interface

표준 Interface와 BSW 간 직접 호출을 위한 API. RTE를 거치지 않고 BSW 모듈이 외부(또는 다른 BSW 모듈)에 노출하는 함수다.

/* Communication 스택 상위의 Signal 송신 — RTE 우회 */
Com_SendSignal(signalId, &dataBuffer);
 
/* NVM, Memory 모듈 등도 유사 패턴 */
NvM_ReadBlock(blockId, &dataPtr);
  • 표준에 함수 시그니처가 고정돼 있음 (BSW 모듈 스펙 문서에 정의)
  • 사용 맥락: BSW 모듈 간 상호 호출, 또는 Complex Driver 같은 비표준 계층이 BSW 서비스에 직접 접근할 때
  • SW-C는 원칙적으로 Standardized Interface를 직접 호출하지 않는다 — SW-C의 BSW 접근은 언제나 RTE를 경유해야 HW 독립성이 유지됨

Port Interface 유형 (6종)

Port가 주고받는 통신 의미에 따른 분류. Software Component Description에서 Interface를 정의할 때 선택하는 유형이다. 앞의 3종 분류와 직교하며, 6종 중 어느 것이든 경유 경로 축(AUTOSAR Interface / Standardized AUTOSAR / Standardized)에 매핑될 수 있다.

Interface의미
Client-Server InterfaceClient가 Server에 서비스 수행을 요청하고 응답을 기다림. 동기적 RPC 성격
Sender-Receiver Interface시그널(Data Element)의 단방향 송수신. P-Port로 송신, R-Port로 수신, 비동기
Mode Switch Interface모드 전환으로 Runnable 시작/Enable/Disable. Mode Manager는 Switch, Mode User는 수신
Trigger InterfaceSW-C가 다른 SW-C의 실행을 작동시킴. Runnable 트리거용
Parameter Interface상수·고정 데이터·캘리브레이션 데이터를 Component에 제공
Nv Data Interface비휘발성 데이터 접근 제공

Client-Server / Sender-Receiver의 상세 의미·선택 기준은 Communication Models.

Event 타입과의 연관 — Mode Switch는 SwcModeSwitchEvent / ModeSwitchedAckEvent, Trigger는 External/InternalTriggerOccurredEvent로 이어진다. 전체 12 Event 목록은 Event (12종).

결정 흐름 — 어떤 Interface를 쓰는가

RTE 경유 여부와 Port 정의 출처에 따른 AUTOSAR Interface·Standardized AUTOSAR Interface·Standardized Interface 분기

같이 보기