In AUTOSAR, software is componentized and application software reusability is improved. AUTOSAR's layered architecture and details of each layer are shown below.

Autosar Layered Architecture

AUTOSAR Layered Architecture

Description of Layers

Layer name Overview Purpose Features
Mounting High-order interface
Runtime Environment (RTE) Middleware layer providing communication services for AUTOSAR software components (SWC) and applications containing AUTOSAR sensor/actuator parts. Make AUTOSAR software components (SWC) independent of mapping to specific ECU. Specialized for ECU and application. Generated for each ECU. Interface is completely independent of ECU.
Basic Software (BSW) Services Layer Highest basic software layer; provides the following functions:
  • OS
  • Vehicle network communications and management
  • Memory service (NVRAM management)
  • Diagnostic service (including UDS <protocol> communication and error memory)
  • ECU state management
Provide basic services and basic software modules for applications. Specialized for microcontroller (MCU), part of ECU hardware, and application. Interface is independent of microcontroller (MCU) and ECU hardware.
ECU Abstraction Layer Interface with MCAL (including external device driver); provides the following:
  • Access to peripherals and devices irrespective of whether they are inside or outside the microcontroller (MCU)
  • API for interfacing with microcontroller (MCU) (port pins, interface type)
Make upper software layer independent of ECU hardware layout. Mounting is independent of microcontroller (MCU) and dependent on ECU hardware Interface is independent of microcontroller (MCU) and ECU hardware.
Complex Drivers Layer used for complex functions not found on other layers. This layer accesses the microcontroller (MCU) directly.
Examples: Injection control, control of electrical values, position increase detection, etc.
Fulfills special functions and timing requirements needed to operate complex sensors and actuators. Highly dependent on microcontroller (MCU), ECU and application. Interface is standardized and mounted according to AUTOSAR (AUTOSAR interface).
Microcontroller Abstraction Layer (MCAL) Software module that directly accesses on-chip microcontroller (MCU) peripheral modules and external devices that are mapped to memory. Make upper software layer independent of microcontroller (MCU). Dependent on microcontroller (MCU). Interface is independent of standardized microcontroller (MCU).
Automotive Development Tools Icon