AUTOSAR AdaptivePREEvision Use Case
Adaptive AUTOSAR Design
Adaptive software based on C++, running on a Linux-based POSIX OS, high-performance computers (HPC) with multi-core processors, and a new AUTOSAR system architecture that is based on services: AUTOSAR Adaptive expands the AUTOSAR platform to meet the demands of the latest automotive trends. PREEvision helps you to get the most out of the Adaptive AUTOSAR platform and to expand your existing AUTOSAR systems and solutions with future-proof applications and HPCs.
- SOA as common basis for AUTOSAR Adaptive and Classic
- Modeling of combined systems of AUTOSAR Classic and Adaptive
- Dedicated user interface for the Adaptive design
- UML-based class diagrams and state chart diagrams
- Support for high-performance computers with multicore architectures and virtualization
- Import and export of different AUTOSAR files
The Use Case
AUTOSAR Adaptive vs. AUTOSAR Classic
First of all, Adaptive AUTOSAR is an additional platform. AUTOSAR Adaptive will not replace AUTOSAR Classic. New solutions based on Adaptive AUTOSAR can be added to existing AUTOSAR Classic architectures.
And mixed architectures will be the standard scenario to benefit from the strengths of both platforms: AUTOSAR Classic is optimized for the deeply embedded hard- and software of the classic automotive domains, AUTOSAR Adaptive offers the flexibility that, for example, car-to-car or car-to-x communication demands.
Updates and Upgrades
One of the most significant differences to AUTOSAR Classic: AUTOSAR Adaptive tears down the separation between design time and execution time.
Current automotive trends like autonomous driving or car-to-x services demand the flexibility that consumers know from their PC or smartphone:
- software updates over the air (OTA),
- applications that can be installed to enhance the functionality of the system, and
- applications that communicate with services outside the vehicle.
The AUTOSAR Adaptive platform allows the integration of new applications at any time.
C++ and POSIX
C++ is the language for AUTOSAR Adaptive Applications instead of C that is used in AUTOSAR Classic. C++ is optimized for performance critical and complex applications.
Adaptive applications are executed within processes that are managed by the operating system, which is a linux-based POSIX system. If permitted by the configuration of the POSIX OS, processes can be added to or removed from the list of executables at any time.
While AUTOSAR Classic serves deeply embedded ECUs, Adaptive AUTOSAR is optimized for high-performance computing.
The ECU of AUTOSAR Classic is now called machine, supports multicore processors and may even be a virtual machine using shared hardware.
The communication technology for Adaptive AUTOSAR is Ethernet exclusively, offering more bandwidth than legacy technologies like CAN. In short: Adaptive AUTOSAR is optimized to utilize both increasing processing power and faster communication.
Adaptive AUTOSAR design with PREEvision
PREEvision provides multiple diagrams and a dedicated user interface to carry out all design steps needed for a system design based on AUTOSAR Adaptive.
Adaptive Service and Software Design
Service Interface Definition
To enable software updates and to allow new applications to interact with existing software, Adaptive AUTOSAR is based on a service-oriented approach. Service providers and service consumers can find and subscribe to each other and communicate via well-defined service interfaces.
The definition of service interfaces with methods, properties, and events is one of the major tasks of the system design in Adaptive AUTOSAR. PREEvision offers dedicated diagrams and tables for the service definition.
SOME/IP Interface Deployment
SOME/IP is the standard transport protocol for the middleware in Adaptive AUTOSAR. To enable the middleware, for example, to recognize method calls or to send event information, the service interface and its sub-elements must be uniquely characterized with an ID. The deployment artifacts are automatically created by PREEvision based on settings of the service interface.
The SOME/IP transformation describes how the data is encoded to be transmitted via Ethernet. In AUTOSAR Adaptive, the serialization code is generated based on the Service Interface description and default values. Additionally, fine granular modeling on the level of data types is also possible. In PREEvision, the transformation properties on both levels can be defined.
Adaptive Software Design
In AUTOSAR Adaptive, the service interfaces are implemented via software components: Software components have ports which are typed by the service interfaces. This works similarly to AUTOSAR Classic.
To connect AUTOSAR Adaptive and AUTOSAR classic software components, PREEvision provides a dedicated adapter than can be used in software diagrams. The port adapter allows to link the sub-elements of service interfaces of AUTOSAR Adaptive to interfaces of AUTOSAR Classic like sender receiver interfaces, client server interfaces, and trigger interfaces.
In PREEvision the Adaptive Application represents the distribution unit of application software that is deployed to the adaptive platform. Application software developers pass the results of their work as an adaptive application to the integration workflow. The adaptive application itself is a set of executables. One executable contains the software components implementing the application.
Adaptive Topology and Machine Design
In Adaptive AUTOSAR, the adaptive software is executed on machines with microprocessors that can contain multiple cores. The process-to-machine mapping maps software components to cores in the microprocessor. Machines may be high-performance computers that provide the computing power needed for data-rich applications.
With PREEvision, the user designs HPCs graphically in diagrams. This includes internal busses, switches, and the virtualization of different execution contexts. Completed HPCs can then be integrated into existing networks. This architecture serves as the basis for the communication design.
Ethernet Communication Design
Service instances represent the service interfaces on the communication layer. In PREEvision, the instances are created automatically including Ethernet clusters, VLANs, switch configurations or network endpoints. Also, the communication paths are created.
The configuration of the service instances comprises the definition of parameters for the bus communication like SOME/IP identification of the service, the transport protocol (TP) and timing information for service offer and service search. Also, the IP addresses must be defined, like IPv4 or IPv6 addresses to indicate where the server accepts the method calls and where the server sends event messages to.
Service discovery messages are exchanged between network nodes to announce and to discover available service instances. Service discovery configuration organizes the communication needed to offer services on the provider side and to search for and to subscribe to services on the consumer side.
Modeling Adaptive with PREEvision
Though AUTOSAR does not prescribe a defined order, PREEvision offers a workflow comprising all steps needed to model a complete AUTOSAR Adaptive system.
The AUTOSAR Adaptive Explorer focuses on the model parts needed and provides all necessary tables and editors to execute for the actual step.
The explorer allows you to easily change between the different abstraction layers and model parts, starting from the service definition through software and hardware to the communication aspects.
Integrating adaptive applications, machines or service instances into an AUTOSAR Adaptive platform is called deployment. The deployment can be configured either during design time, and it can also be configured during runtime of the AUTOSAR Adaptive platform.
These updates, upgrades or additions to an existing system are one of the main advantages of Adaptive AUTOSAR compared with the classic platform. All information needed to deploy machines or adaptive applications are collected in so-called manifests.
Export of Configuration Manifests
The configuration of the AUTOSAR Adaptive Platform is done by manifests. PREEvision allows to export all manifests defined by AUTOSAR Adaptive:
Service Interface Description
Contains one or several service interface definitions including their data types, data type mappings, computation methods and units.
Provides the information required for the actual deployment of an application on an AUTOSAR Adaptive platform.
Contains machine-specific configurations for one deployment procedure independent of any service instances or applications, for example, machines, cores, network endpoints or mode declarations.
- Service Instance Manifest
Contains the service instances, the service discovery settings, the mapping of the service instances to the machine and optionally the mapping of service instances to the software component ports. This format is used at deployment time.
- Adaptive Application Description
This PREEvision-specific format contains all contents of the manifests defined by AUTOSAR in one file.
|Format||Use Case||AUTOSAR Version|
Service Interface Description
Service Instance Manifest*
You can also import existing data into your AUTOSAR Adaptive model in PREEvision.
AUTOSAR Adaptive Toolchain
PREEvision is part of the Adaptive AUTOSAR tool chain. While PREEvision supports the Adaptive system and application design including deployments, CANoe can be used for simulation and tests. With the DaVinci Adaptive Tool Suite, you can develop the actual adaptive application.
Bridging the Gap Between AUTOSAR Classic and Adaptive Systems
Service-oriented software architectures
AUTOSAR Adaptive can be introduced successfully if the hardware and software that is based on AUTOSAR Adaptive works well with the existing AUTOSAR Classic system components. Full implementation throughout the system – including when implementation takes place on different platforms – will be one of the next major challenges in E/E development. Service-oriented architectures can bridge the gap between two worlds.
Translation of a German-language publication "Elektronik automotive", issue 11/2019
Service-Oriented Architecture and Ethernet Design
Automotive Ethernet is changing the paradigm for designing communication architectures: Instead of a signal-oriented communication, ECUs offer services via a defined protocol to all other participants in the network.
The lecture illustrates what is meant by the term "service", what distinguishes service-oriented architectures and what consequences they have for the development of distributed systems. Design workflows for Ethernet communication in AUTOSAR Classic and AUTOSAR Adaptive are presented and explained using Vector's model-based E/E development environment PREEvision as an example.
Playing time 26:00 minutes, published 5/2019