Solution Adaptive MICROSAR

Ready for Next Generation ECUs

V1.00.00 | 2019-10-09 Automotive Trends Major Automotive Topics Connectivity Electrification Automated Driving

Required Enablers Connectivity Offboard Eco Systems Supercomputers On Board

2 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Automotive Trends

Cloud / Backend  support of high performance processors  high bandwidth

 service based architectures

 open source, agile development

 dynamic and updatable

 internet

 safe

 secure Embedded Systems  embedded integration and debugging

 automotive supply chain

 automotive communication protocols

 automotive diagnostics AUTOSAR Classic

3 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Automotive Trends Adaptive – best of two worlds

Cloud / Backend  supportAdaptive of high performance AUTOSAR processors ➔ system and mobility strategies  high bandwidth ➔ deep learning  service based architectures  open source, agile development

 dynamic and updatable

 internet On board Supercomputers ➔ multipurpose computing servers ➔ connectivity, gateways, HMI  safe ➔ automated driving  secure mastered by OEM  embedded integration and debugging AUTOSAR Adaptive  safe  automotive supply chain  secure Embedded Systems  automotive communication protocols  embedded integration and debugging ➔ intelligent sensors and actuators  automotive diagnostics ➔ basic functions  automotive supply chain ➔ fallback computing  automotive communication protocols

 automotive diagnostics AUTOSAR Classic

4 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Introduction Being Prepared for the Next-Generation of ECUs

Infotainment Adaptive MICROSAR is a Seamless complete basic software interoperability with solution up to ASIL D classic AUTOSAR ECUs

Additional, high source: fotolia performance ECUs hosting applications for ADAS upcoming use cases

Applications installed and Connectivity started during runtime

Development of

applications in the Dynamic Software Platform ecosystem of POSIX- based OS (, PikeOS, QNX, Integrity, …)

5 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Introduction Current statically connected HW resources

 Hardwired video lines between ECUs video line

 Pre-defined CAN messages on bus video line

 Exclusive camera usage

CAN Steering Angle Park Assist Activation …

6 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Introduction Flexible use of HW resources

Service Interfaces  Smart sensors/actuators provide HW over service interface

 All ECUs connected via Ethernet

 Compound service, using base services as lower layer

 Applications can provide services for e.g. HMI integration

 No function oriented wiring

Switch

7 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Introduction Drivers for Adaptive AUTOSAR

Infotainment Highly Automated Driving

source: fotolia

 2D/3D acceleration support in POSIX systems  Image- and preprocessing of Camera/Radar/LIDAR

 Video Codecs, Streaming support, multi-media , etc. …  Sensor Fusion and Machine Learning

Connectivity Dynamic Software Platform

 Car-2-X (LTE, Wi-Fi, GPS, etc.)  “App-Store” for automotive applications

 Multimedia (USB, SD-Card, NFC, etc.)  Installation and update over the air

8 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Introduction Use Cases for POSIX/ in Automotive Systems

ECU 1 MCU Process 2 MCU 1 (POSIX) MCU 2 (native POSIX) (MICROSAR) (MICROSAR) Applications as Driver SPI/ETH IPC IPC OS IPC IPC MEM 1 POSIX besides MICROSAR POSIX 2 (previously used set-up) POSIX besides MICROSAR (current QM set-up)

Core 1 MCU Core 1 or 2 (POSIX) (MICROSAR) Process 1 MCU Process 2 3 (ADAPTIVE) (ADAPTIVE) IPC IPC MEM Middleware POSIX POSIX besides MICROSAR (current safety set-up) (Hypervisor) 4 Adaptive Autosar (upcoming perspective)

9 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Agenda

Automotive Trends Introduction  Fundamentals Details and Functional Clusters Activities and Roadmap

10 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals AUTOSAR Product Comparison

AUTOSAR Classic Platform - CP AUTOSAR Adaptive Platform - AP

Application Actuator Sensor Application Software Software Software Software SWC SWC AUTOSAR SWC Component Component Application Layer Component Component Runtime Environment for Adaptive Applications AUTOSAR Interface AUTOSAR Interface AUTOSAR Interface AUTOSAR Interface OS COM API OS COM API OS COM API

Runtime Environment API (tsync) API () API (com) Adaptive Platform Services Time Execution Communication Synchronization Management Management Service (nm) Service (diag) Network Memory Communication API (phm) API (log) API (per) Diagnostics System Services Management Services Services Platform Health Logging & Persistency Management Tracing I/O Hardware Service (s2s) Service (sm) Abstraction Signal to Service State API (iam) API (rest) API (crypto) Memory Communication Mapping Management Onboard Device Complex Identity Access Hardware Hardware RESTful Cryptography Abstraction Drivers Management Abstraction Abstraction Service (ucm) API (core) POSIX PSE51 / C++ STL Update & Configuration Management Core Types Microcontroller Communication Memory Drivers I/O Drivers Drivers Drivers Adaptive Platform Foundation

Microcontroller (Virtual) Machine / Hardware

 All modules completely specified  Less modules, only API specification

 Developed in C  Developed in C++

 Whole stack compiled and linked in one piece  Services as POSIX processes, separately installable

 Will still remain in the current focus  Service oriented communication (SOME/IP)

 Configuration compiled in  Configuration loaded from manifest files

11 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals AUTOSAR Product Comparison

AUTOSAR Classic Platform - CP AUTOSAR Adaptive Platform - AP

Application Actuator Sensor Application Software Software Software Software SWC SWC AUTOSAR SWC Component Component Application Layer Component Component Runtime Environment for Adaptive Applications AUTOSAR Interface AUTOSAR Interface AUTOSAR Interface AUTOSAR Interface ARA ARA ARA

Runtime Environment API (tsync) API (exec) API (com) Adaptive Platform Services Time Execution Communication Synchronization Management Management Service (nm) Service (diag) Network Memory Communication API (phm) API (log) API (per) Diagnostics System Services Management Services Services Platform Health Logging & Persistency Management Tracing I/O Hardware Service (s2s) Service (sm) Abstraction Signal to Service State API (iam) API (rest) API (crypto) Memory Communication Mapping Management Onboard Device Complex Identity Access Hardware Hardware RESTful Cryptography Abstraction Drivers Management Abstraction Abstraction Service (ucm) API (core) POSIX PSE51 / C++ STL Update & Configuration Management Core Types Operating System Microcontroller Communication Memory Drivers I/O Drivers Drivers Drivers Adaptive Platform Foundation

Microcontroller (Virtual) Machine / Hardware

Real Time Requirements

Safety Critical

Computing Power

12 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals Adaptive Applications

 Application > Multi-threaded Application (1:n Executables) > Execution states POSIX Process > Manifest contains platform related information (recovery action, INIT: dependencies to services or libraries) Manifest > Instance configuration contains application specific static information RUN:

(variant, options, …)

Thread Thread Thread  Interfaces Instance SHUTDOWN: Configuration > ara::com for communication with adaptive services PSE51 (basic services and user applications) ara::com Direct API C++ Stdlib > PSE51 is the usable OS API subset Adaptive Adaptive > The Adaptive AUTOSAR Foundation POSIX OS AUTOSAR AUTOSAR clusters (Execution Management, Services Foundation Persistency, etc.) are available via direct

13 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals Vector’s Adaptive Implementation

 Implementation available for several platforms  Guided configuration via IDE in Plugin

 Application logic is strictly separated from configuration (see /opt/ deployment directory)

 Code examples based on Vector’s implementation

14 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals Tools and Workflow

Service Application Code Deploy Package Vehicle Description /opt/myApp/ (ARXML) Installed APP Installed APP Logic BIN BIN BIN Executable Executable AppSWCTypes ./bin/myApp Config. Config. libara Proxies / (JSON) (JSON) PortPort Port Skeletons Instance Instance Config. Config. SOME/IP (JSON) (JSON) ServiceInterface Serializer Execution Manifest ServiceInterfaceServiceInterface

Compiler ./etc/MANIFEST.arxml Generators E2E libsomeip Execution Authoring Tool Serializer Manage- ComServer SOME/IP Config ment

POSIX IPC Instance Manifest(s) POSIX IPC

./etc/instance1.arxml Software Configuration Management Diagnostics SOMEIPd ./etc/instance2.arxml BSD Sock

Generated Static

15 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals Tooling: DaVinci Adaptive Tool Suite

1. Assistants for various 1 tasks like creation of SOME/IP deployment 5 2. Easy to understand 2 DSL to represent ARXML models. With linting support 3. Auto-completion for references and model 3 elements 4. Built-in CFG-5 generators. Direct modelling feedback and resolution suggestions 4 5. Cheat Sheets guide through the process of service creation

16 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals PREEvision: Adaptive system design with PREEvision 7 1 2

Service Interface Description 5 Adaptive System Description

Manifest 6 3 1. Diagram-based design of 5. Graphical design of Ethernet service interfaces topologies 2. Modeling of implementation 6. Assistant for creation and details of the service interfaces mapping of service instances on machines 4 3. Design of the SW components, executables and adaptive 7. Import and export of different applications model subsets in AUTOSAR XML 4. Table-based editing of deploy- ment aspects as SOMEIP IDs 17 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Fundamentals Adaptive MICROSAR Evaluation Bundle

Test your application Implement your services Adaptive MICROSAR Prepared build scripts directly in native using Eclipse source included for native Linux environment

Bundle is available off-the shelf and includes:

> 2 day training at Vector for one person

> Application Developer Guide

> DaVinci Adaptive Tool Suite (1 year license)

18 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Agenda

Automotive Trends Introduction Fundamentals  Details and Functional Clusters Activities and Roadmap

19 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Communication: ara::com

 Service-oriented communication

APP 1 APP 2  Location-transparent

 Supports multiple communication bindings ara::com  AUTOSAR model defines available bindings for each service provider and consumer  Explicit support for optimized shared memory implementations Services

 Applications connected at runtime (Service Discovery)

 Find service instances dynamically without hardwiring in model

 Connection between proxies and skeletons can be recovered

 Real-time support: Developers’ choice of polling or event-driven processing of communication

20 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Execution Management: ara::exec

 OS launches Execution Manager (EM) (PID1, “init”)

 EM inspects system for installed applications  E.g., scan filesystem in /opt/ for application manifests Startup  EM runs startup applications (fork(), exec())  e.g., bring up IP stack

 EM consults Machine State Manager to determine desired machine state  Machine state defines set of applications desired to run

 EM starts/stops applications to reach desired machine state (fork(), exec(), signal(SIGTERM))  EM configures scheduling parameters & resource limits  Configuration data obtained from application manifest ECU running  EM monitors for machine state changes or process termination

21 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Diagnostics: Overview

No fundamental changes to existing diagnostic workflows (like development, production, Application (Software Components) workshop,…) due to Adaptive Platform Diagnostic Coding Diagnostic Monitor  Main Tasks DiagnosticCallbacks Measurements Diagnostic Monitor DiagnosticCallbacks Routines  ISO 14229-5 (UDSonIP) Diagnostic Monitor  Including fault-memory (DTC) handling

 Including transport layers (i.e. DoIP – ara::com Faults ISO 13400-x)

 Configurable via AUTOSAR Diagnostic Diagnostic Manager Extract (DEXT)

 ARA service  Uses ara::com interfaces Diagnostic Request Diagnostic Response

Tester

22 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Diagnostics: Configuration workflow (DEXT)

CANdela DEXT Studio

Diagnostic Design references

MANIFEST PREEvision (Design)

System Design

23 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Persistency: ara::per  Key-Value Storage  library based access to non-volatile memory for Adaptive Applications.  Multiple values stored in one storage location  Addressing of single values by using a key as identifier  Multiple storage locations/databases can be used  Stream Storage  Database format not specified by AUTOSAR  Raw access to storage locations/files  Used for access to files in any format  API derived from C++ Standard Library std::fstream classes

24 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Details and Functional Clusters Identity and Access Management

 Offers intra ECU and inter ECU access management

 A policy decision point decides whether resource access is granted or not

Adaptive OEM PDP Application “x” Application

1. Request action 2. Is Application “x” authorized? processed Identity and Access execution Functional Cluster Management manifests

3. Yes database

4. Perform request (e.g. access resource, Policy enforcement point (PEP) communicate, get information, etc.) Policy decision point (PDP)

25 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Agenda

Automotive Trends Introduction Fundamentals Details and Functional Clusters  Activities and Roadmap

26 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Activities and Roadmap Safety as a necessity for high performance ECUs

 Use cases such as highly automated driving easily demand safety up to ASIL D Platform Partition Pool for Adaptive Applications Applications (AA)  Architecture in high performance controllers is complex due to many involved abstraction layers:

 BSP from semiconductor vendor DM AA partition n  Hypervisor … …  Multiple Operating Systems IP File EM COM AA partition 0 Stack System  POSIX libraries  Adaptive AUTOSAR Basic Software  Service Oriented Applications Components

 Typically many vendors involved for these components Ethernet

 Vector is providing the complete and ready to go solution for such controllersPikeOS out of one hand.

27 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Activities and Roadmap Vectors Adaptive Activities

 Series production  Integrated tool concept projects have been  Evaluation Bundle started for many Available Off-the-shelf Products customers  Products synchronized with Autosar specification

Series Specification Production of Adaptive Development platform

 Linux

 QNX  All feature teams are Multiple POSIX systems integrated covered  PikeOS  Active participation in all  Integrity working groups

28 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Activities and Roadmap Planned Adaptive MICROSAR Roadmap

Adaptive MICROSAR Adaptive MICROSAR Adaptive MICROSAR R1: R3: R5:

Development Release Production Release Production Release (QM) (ASIL D)

2018 2019 2020

PikeOS/MICROSAR PikeOS/MICROSAR PikeOS/MICROSAR Integration Integration Integration

Development Release Production Release Production Release (QM) (ASIL D)

 Adaptive MICROSAR development started in 2015

 Adaptive MICROSAR used in many evaluation and prototyping projects

 Adaptive MICROSAR used in the first series production projects

29 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 Activities and Roadmap Project Phases Overview

Project n

Project 1

Production License

MA SLP 18% year

License Custom Prototype Production SIP no branch possible

SIP MA SIP MA Base Package 35% year Base Package 18% year MA MA OEM Add-on OEM Add-on 35% year 18% year Tools & BSW Branch/Freeze Evaluation Continuous Development Package

Development Share Nomination Up to 12 deliveries per year from OEM

Ongoing updates

30 © 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09 For more information about Vector and our products please visit www.vector.com

Author: Ralf Fritz Vector North America

© 2019. Vector North America Inc. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V1.00.00 | 2019-10-09