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 (Linux, 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 library, 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/Virtualization in Automotive Systems
ECU Process 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 Hypervisor 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 (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
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 APIs
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 Eclipse 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