정의

Classic 플랫폼은 마이크로컨트롤러 위에서 도는 제어기 소프트웨어를 응용 계층, 런타임 환경, 기본 소프트웨어의 세 층으로 가르고, 기본 소프트웨어를 다시 서비스 계층과 ECU 추상화 계층, 마이크로컨트롤러 추상화 계층으로 쪼개는 AUTOSAR 표준이다.[1]

이 표준이 상정하는 ECU는 성질이 뚜렷하다. 센서·액추에이터와 강하게 얽혀 있고, CAN이나 LIN·FlexRay·이더넷 같은 차량 네트워크에 물려 있으며, 연산력과 메모리가 제한된 16비트 또는 32비트 마이크로컨트롤러 위에서 내부 또는 외부 플래시에 담긴 프로그램을 실행하는 실시간 시스템이다. 여기서 ECU는 마이크로컨트롤러 하나에 주변장치와 그에 맞는 소프트웨어·구성을 더한 것을 뜻한다 — 한 하우징에 마이크로컨트롤러가 둘 들어 있으면 각각이 별개의 ECU 인스턴스로 기술된다.[2] 차량 네트워크 쪽 사정은 차량용 버스 시스템에서 다룬다.

계층으로 나누어 아래를 감추고 위에 인터페이스를 내보이는 방식 자체는 계층 아키텍처의 일반 원리다. 이 페이지는 그 원리가 차량 제어기에서 어떤 모양으로 굳었는지를 다룬다.

세 층과 마이크로컨트롤러

가장 높은 추상 수준에서 보면 층은 셋이다. 맨 위 응용 계층은 대체로 하드웨어에 매이지 않고, 그 아래 런타임 환경은 응용이 다른 컴포넌트나 서비스와 통신하는 통로가 되며, 다시 그 아래 기본 소프트웨어가 마이크로컨트롤러 위에 놓인다. 런타임 환경을 경계로 아키텍처 스타일이 바뀐다는 점이 중요하다 — 그 위는 계층형이 아니라 컴포넌트형이다. 런타임 환경의 구현은 ECU와 응용에 특화되어 ECU마다 따로 생성되지만, 그것이 응용에 내보이는 인터페이스는 ECU에 전혀 매이지 않는다. 응용을 특정 ECU로의 배치에서 떼어 내는 것이 이 층의 임무다.[2]

응용 계층을 채우는 단위는 소프트웨어 컴포넌트에서, 런타임 환경의 생성 과정은 런타임 환경에서 다룬다.

기본 소프트웨어의 세 단

기본 소프트웨어는 서비스 계층, ECU 추상화 계층, 마이크로컨트롤러 추상화 계층으로 나뉘고, 여기에 세 단을 관통하는 복합 드라이버가 따로 붙는다. 각 단은 다시 기능별 열로 갈린다 — 시스템, 메모리, 암호, 통신, 차외 통신, 입출력이 그 축이다.[2]

마이크로컨트롤러 추상화 계층은 기본 소프트웨어의 맨 아래다. 마이크로컨트롤러와 내부 주변장치에 직접 접근하는 내부 드라이버가 여기 모여 있고, 그 위 계층을 마이크로컨트롤러로부터 떼어 놓는 것이 임무다. ECU 추상화 계층은 그 드라이버들을 감싸면서 외부 장치용 드라이버를 함께 담아, 장치가 마이크로컨트롤러 안에 있든 밖에 있든 어떤 인터페이스로 붙어 있든 같은 방식으로 접근하게 해 준다. 서비스 계층은 응용과 가장 가까운 단으로, 운영체제 기능과 차량 네트워크 통신·관리, 비휘발성 메모리 관리, 진단, ECU 상태와 모드 관리, 프로그램 흐름 감시를 제공한다.

서비스 계층이 제공하는 운영체제 기능의 규격은 AUTOSAR OS가 정한다.[3]

하드웨어 의존성과 이식성

계층으로 나눈 대가로 얻는 것은 이식성이다. 아래로 내려갈수록 구현이 하드웨어에 매이고, 그 매인 부분이 아래에 갇힌 만큼 위쪽은 옮겨 갈 수 있다.[2]

구현이 매이는 대상상위 인터페이스
서비스 계층대체로 마이크로컨트롤러·ECU 하드웨어와 무관마이크로컨트롤러·ECU 하드웨어 비의존
ECU 추상화 계층ECU 하드웨어 구성마이크로컨트롤러·ECU 하드웨어 비의존
마이크로컨트롤러 추상화 계층마이크로컨트롤러표준화되고 마이크로컨트롤러 비의존

마이크로컨트롤러가 바뀌면 다시 만들어야 하는 것은 원칙적으로 맨 아래 단이고, 그 위 단들은 상위 인터페이스가 같은 한 그대로 남는다. 다만 메모리 맵에 매핑된 외부 플래시처럼 마이크로컨트롤러에 직접 접근하는 외부 장치 드라이버는 예외로 맨 아래 단에 놓인다 — 마이크로컨트롤러에 의존하기 때문이다.

복합 드라이버

표준 계층이 감당하지 못하는 자리를 위해 복합 드라이버가 있다. 하드웨어에서 런타임 환경까지를 곧장 관통하는 이 열은 AUTOSAR가 규격화하지 않은 장치, 타이밍 제약이 아주 빡빡한 장치, 기존 자산을 옮겨 오는 경우를 맡는다. 분사 제어나 전자 밸브 제어, 증분 위치 검출처럼 마이크로컨트롤러의 특수 인터럽트나 복잡한 주변장치에 직접 손을 대야 하는 기능이 전형적인 예다.[2]

대가는 이식성이다. 복합 드라이버의 구현은 응용에도, 마이크로컨트롤러에도, ECU 하드웨어에도 매일 수 있다. 위쪽으로 소프트웨어 컴포넌트에 내보이는 인터페이스만 AUTOSAR 규격을 따르고, 아래쪽으로는 표준화된 인터페이스에 제한적으로만 접근한다. 계층 구조의 다른 모듈과 주고받으려면 조건도 붙는다 — 접근당하는 쪽 인터페이스가 재진입 가능해야 하고, 콜백 루틴 이름이 구성 가능해야 하며, 그 모듈의 상태를 관리하는 상위 모듈이 없어야 한다.

확장의 한계

이 아키텍처는 일반적인 접근이지만 늘어나는 방향이 정해져 있다. 표준 모듈은 기능을 확장하면서도 규격 적합성을 유지할 수 있고, 표준에 없는 모듈은 복합 드라이버로 편입할 수 있다. 그러나 계층을 새로 더하는 것은 허용되지 않는다.[2] 확장한 표준 모듈의 구성도 기본 소프트웨어 자동 구성 과정에서 함께 다뤄져야 한다.

[1]
AUTOSAR, “AUTOSAR Classic Platform.” 2026. Accessed: Aug. 26, 2026. [Online]. Available: https://www.autosar.org/standards/classic-platform
[2]
AUTOSAR, “Layered Software Architecture,” AUTOSAR, Explanation, 2025. Accessed: Aug. 26, 2026. [Online]. Available: https://www.autosar.org/fileadmin/standards/R25-11/CP/AUTOSAR_CP_EXP_LayeredSoftwareArchitecture.pdf
[3]
AUTOSAR, “Specification of Operating System,” AUTOSAR, Software specification, 2025. Accessed: Aug. 26, 2026. [Online]. Available: https://www.autosar.org/fileadmin/standards/R25-11/CP/AUTOSAR_CP_SWS_OS.pdf