Automotive trends like autonomous driving, v2x connectivity, OTA updates, predictive maintenance, and many other innovative features are based on in-vehicle software functions. For all these functions to work seamlessly and to cater to real-time in-vehicle functionalities, each ECU must work efficiently. Modern-day high-end vehicles have up to 100 ECUs, which communicate with each other via CAN bus, CAN FD, or Ethernet network to support complex vehicular functions.
Earlier, ECU software used by OEMs were on different platforms. There was no standard software architecture that was being used by tier 1 suppliers and their vendors to design the ECU software for OEMs. So, whenever any OEM wishes to switch to a new tier 1 supplier or vice-versa, the transition was very difficult. The new supplier used to face enormous challenges in understanding the existing software architecture, hardware platforms, and standards used in ECU software development. Thus, it was nearly impossible for a new supplier to drive an on-going project from the midst of its production life cycle.
To streamline the coordination between OEMs and tier 1 suppliers, to improve ECU software quality and reduce development time and costs, tier 1 automotive suppliers, semiconductor manufacturers, software suppliers, tool suppliers, and others came forward in 2003 and created a consortium called AUTomotive Open System ARchitecture (AUTOSAR).
What is AUTOSAR?
Automotive Open System Architecture (AUTOSAR) is an open and standardized automotive software architecture, which supports standardization in interfaces between application software and basic vehicular functions and it helps in establishing common ECU software architecture for all the AUTOSAR members.
AUTOSAR is intended to provide inherent benefits to the members to manage increasingly complex E/E in-vehicle environments like easy integration and exchange of functions in complex ECU network and control over the entire product lifecycle.
AUTOSAR is an open system architecture for automotive software development and provides standards for developing common automotive software applications. It is a growing and evolving standard that defines a layered architecture for the software. The classic AUTOSAR platform runs on a microcontroller and is divided into 3 main layers; let us discuss them in detail:
- Basic Software Architecture- It is common to any AUTOSAR ECU.
- AUTOSAR Runtime Environment
- Application Layer
Basic Software Architecture (BSW)
AUTOSAR Basic Software Architecture consists of hundreds of software modules structured in different layers and is common to any AUTOSAR ECU. This means the supplier who has designed BSW can share it with other suppliers that are working on ECUs of engine, gearbox, etc.
Basic software architecture in AUTOSAR consists of three layers:
- Microcontroller Abstraction Layer (MCAL): MCAL is also known as a hardware abstraction layer and implements interface for the specific microcontroller. MCAL has layers of software, which are integrated with the microcontroller through registers, and offers drivers like system drivers, diagnostics drivers, memory drivers, communication drivers (CAN, LIN, Ethernet, etc.), I/O drivers and more.
- ECU Abstraction Layer: The prime task of the ECU abstraction layer is to deliver higher software layers ECU specific services. This layer and its drivers are independent of the microcontroller and dependent on the ECU hardware and provide access to all the peripherals and devices of ECU, which supports functionalities like communication, memory, I/O, etc.
- Service Layer: The service layer is the topmost layer of AUTOSAR Basic Software Architecture. The service layer constitutes an operating system, which runs from the application layer to the microcontroller at the bottom. The OS has an interface between the microcontroller and the application layer and can schedule application tasks. The service layer in BSW is responsible for services like network services, memory services, diagnostics service, communication service, ECU state management, and more.
AUTOSAR Runtime Environment (RTE Layer)
AUTOSAR Run-time Environment is a middleware layer of the AUTOSAR software architecture between the BSW and the application layer and provides communication services for the application software.
The application layer is the first layer of the AUTOSAR software architecture and supports custom functionalities implementation. This layer consists of the specific software components and many applications which perform specific tasks as per instructions.
The AUTOSAR application layer consists of three components which are: application software components, ports of software components, and port interfaces.
AUTOSAR ensures standardized interfaces for software components in the application layer and application software components help in generating simple applications to support the vehicle functions.
The communication between software components is enabled via specific ports using a virtual Function Bus. These ports also facilitate communication between software components and AUTOSAR Basic Software (BSW).
The above-explained architecture of AUTOSAR is its classic platform, which supports real-time requirements and safety constraints. Based on the microcontroller, the classic platform is capable of supporting applications in the field of networking and security by allowing ECUs to access vehicle sensors and actuators.
Why Adaptive AUTOSAR?
From 2003 to 2015, Classic AUTOSAR became an established platform and was doing perfectly well to run 60-80 ECUs in a vehicle. With the evolution of IoT based automotive trends like V2X connectivity and automated driving, electrification skyrocketed, and as a result, a huge demand for supporting functions and devices was created in the market. It was discovered that the existing classic AUTOSAR platform was not suitable to support these mega-trends and new architecture with more powerful and flexible E/E architecture is required. Adaptive AUTOSAR, the new architecture was released to support these functions and 1st release of AUTOSAR adaptive platform was done in March 2017.
Adaptive AUTOSAR architecture comes with a central application server, which assists high-performance computing. Ethernet-based ECUs in this system supports real-time functionalities. Adaptive AUTOSAR is scalable and has dynamic architecture, in which applications can be updated over the vehicle’s lifecycle. It enables OEMs to deploy high-tech software features in a vehicle and update them over-the-air whenever required.
AUTOSAR adaptive architecture supports all the futuristic automotive applications like infotainment, v2x, predictive maintenance, automotive apps, ADAS functions with a camera, RADAR and LIDAR sensors, map updates, electrification, and more.
Why eInfochips for AUTOSAR Services?
eInfochips (An Arrow Company) as an associate partner of AUTOSAR, assists automotive OEMs and tier 1 suppliers in many AUTOSAR related solutions like development, integration, and validation of AUTOSAR basic software modules, integration of AUTOSAR stack software from tool suppliers, upgrading platform software to new AUTOSAR versions as per specifications and more. Talk to our experts.