Introduction To Adaptive AUTOSAR Platform
Simon Fürst, who is the General Manager Software Development and Software Infrastructure with the BMW Group, who is also the current AUTOSAR spokesperson say the new system will be built on the “AUTOSAR Classic Platform,” which “remains the system of choice with reference to control units from the classical E/E domains of the automotive industry”.
This platform continues to be a well-liked solution for applications that have limited demands on hardware resources while fulfilling safety requirements and providing hard real-time capabilities. Upcoming new functionalities are going to be realized more efficiently by a software platform being designed for his or her special requirements. On the one hand, we see, for instance, there’s a requirement for number-crunching algorithms and high interconnectivity while on the opposite hand, we’ve attended on the dependability of applications and systems or new technologies like ‘update over the air.
Need Of Adaptive AUTOSAR
If you have already used Classic AUTOSAR, you might be knowing how it is difficult to understand and implement complexity. If you are new please go through my AUTOSAR Tutorial for understanding. Generally, classic AUTOSAR is having a lot of sub-modules in the BSW layer. It is very difficult to understand each module in deep. There so many features that are don’t support classic AUTOSAR. If you want to use those features or to implement any new driver software or protocol we need to implement it in the Complex Device Driver module. The design of ECU from scratch using classic AUTOSAR is complex if you are starting a new company or something like this. Because of the lack of knowledge in architecture and Tools used for the generation of BSW codes.
Even you can say the Tools are used in classic AUTOSAR is a very high cost that is not possible by any startup company to purchase it. Even if there are only very less Tool designer company who is a member of AUTOSAR can design and sell the tools. You also need the AUTOSAR expert software architecture engineer for your product and for this, you need to pay more. Safety-wise if you will think the AUTOSAR supports up to ASIL-D but in the case of Adaptive AUTOSAR, it supports up to ASIL-B.
With new improved technology, all the ECUs should support the FOTA feature for a software update. But it is very difficult in the case of classic AUTOSAR. Classic AUTOSAR supports only C language which is very older and not fit for high-end complex programming. Suppose you are going to implement any complex ECU like ADAS, you need a more complex library with simple object-oriented programming.
The Adaptive AUTOSAR architecture standard contains the interfaces that required for the development of future automotive ECU. These ECUs are mostly running on state-of-the-art multicore microprocessors for complex application software development. These interfaces allow OEMs, as in the car manufacturers, to implement autonomous driving, over-the-air software updates, IoT (Internet of Things) features, media streaming, and other services to their future cars. Compared to AUTOSAR Classic, the Adaptive AUTOSAR platform allows dynamic linking of services and clients during ECU runtime which makes it much more flexible for the application developers. The platform also utilizes C++14 to allow feature-rich and fast development of ARA applications.
Among the “game changers” or main drivers for new automotive software systems identified by AUTOSAR are highly automated driving, Car-2-X applications, a vehicle in the cloud, and increased connectivity. Support required by highly automated driving systems include dependable architecture with fail-safe operational systems, support for cross-domain platforms, support for high-performance micro-controllers and computing, and distributed and remote diagnostics.
Difference Between AUTOSAR and Adaptive AUTOSAR
|Feature||Classic AUTOSAR||Adaptive AUTOSAR|
|Invention||First released on 2004||First released on 2018|
|Proprietary||It supports only AUTOSAR proprietary implementations||It supports Vector and EB proprietary products|
|Design||It provides specifications only||It provides specifications and also code base|
|Operating System||It runs on OSEK based Operating System||It runs on POSIX-51 based Operating System|
|Memory Type||The software executes from ROM memory.||The software executes on RAM memory.|
|Scheduling Mechanism||It has a fixed task configuration setup for each runnable||It has dynamic configuration for each runnable|
|Communication||It works on Signal based communication like CAN, LIN, MOST and FlexRay etc.||It works on Service based communication like SOME or Internet Protocol|
|Programming Language||It uses the C programming language for software development||It is uses C++ Object-Oriented Programming language|
|Memory Management||It uses MPU that works on the same address space for application software with early binding||It supports MMU that works on virtual address space for each application with late binding|
|Safety based||It supports up to ASIL-D standard||It supports up to ASIL-B standard|
|Application||It will be using in sensor and actuator interfacing||It will be using in ADAS, AD, AI, ML etc for complex ECU development|
How Does Adaptive AUTOSAR Works?
The Adaptive AUTOSAR platform designed for a simple and improved architecture to support the complex software with automated driving deployment. It also supports classic AUTOSAR for compatibility. This architecture is mainly designed to keep in mind for future-proof basis ECU development.
The Adaptive AUTOSAR platform implements the AUTOSAR Runtime for Adaptive applications called ARA. It has two types of interfaces such as service interface and API interface. This platform is having consists of different functional clusters. Each cluster is grouped services and the Adaptive AUTOSAR basis. Each functional cluster is aimed:
- To assemble the Adaptive platform functionalities.
- To define the clustering of a requirement specification.
- To describe the software platform behavior from the application and network perspective.
The functional clusters should have at least one instance per machine or you can say the virtual machine. But at the time of service, it may be distributed in the in-car network. Basically the classic AUTOSAR platform uses the static links in between the sender-receiver and client-server communication for Run-Time Environment (RTE). But the Adaptive AUTOSAR platform uses the dynamically links services and clients during the run time communication.
Adaptive AUTOSAR Architecture
Definition: The Adaptive AUTOSAR is a Hardware-independent, distributed cluster-based, dynamically linked multicore virtual machine adaptive application ECU software architecture.
The Below block diagram showing the basic architecture blocks of Adaptive AUTOSAR platform. It is not like classic platform with having bunch of modules, but also lot of new features including security like cryptography, OTA update, multi-core, MMU etc. for next generation of autonomous vehicles. Lets go discuss about each module to understand and implement in new ECU development.
The adaptive AUTOSAR is categorised into 3 layer like classic AUTOSAR. But is is different from classical standard.
Adaptive AUTOSAR Application Layer
The application layer is also like classic as it is also having different software components. But it is again divided into two types such as the AUTOSAR software components and the Non-AUTOSAR software components. The OEM can integrate their older Non-AUTOSAR application software easily. Even if you can also integrate it with your classic platform software components. These all are combining to create the Adaptive AUTOSAR application layer that can communicate with the lower layer which you called BSW in classic AUTOSAR via Run-Time Environment. But here the RTE works in a different way with service or client based dynamically to improve the responsiveness, reliability and portability feature.