Transforming Software-Defined Vehicle Development - MATLAB & Simulink

Shifting Signal-Oriented to Service-Oriented Architectures for SDVs

Migrating Existing Functionality in a Mixed-Criticality Approach

“We are utilizing an existing legacy Simulink model we developed for the torque path … and then start adapting the input/output to service-oriented input/output. And, within that, you use the AUTOSAR dictionary to configure attributes for the model. Once that’s done, we use Embedded Coder to generate the code.”

Key Outcomes

  • MATLAB® and Simulink tools enable the reuse of AUTOSAR Classic signal-based designs, helping teams migrate them to AUTOSAR Adaptive service-oriented architecture
  • Embedded Coder allowed the team to generate service-oriented C++ code for SDVs
  • Simulink can enable OEMs to validate their SDV HPC applications using a developed gateway

The automotive industry is increasingly focused on developing software-defined vehicles (SDVs). The electric/electronic (E/E) architectures of these vehicles feature high-performance central computers and zone controllers that support service-oriented architectures (SOAs). The main advantage of these architectures is that they can be continuously updated without having to reprogram the entire ECU.

Rather than redesigning them from scratch, car manufacturers prefer to use their existing inventory of tested and validated safety-critical software components, along with noncritical software components, in the new E/E architectures. Based in Germany, FEV set up a demonstrator to show how to migrate existing functionality in such a mixed-criticality approach.

The demonstrator uses virtual machines to host functions for various domains. These virtual machines communicate with a QNX® hypervisor and Android® Automotive via a virtual bus and are connected to a game controller and multiple screens for visualizing the CARLA simulation. The system operates on a Renesas® R-Car SoC and an NXP™ iMX 8 processor.

One component of this setup involves FEV migrating a torque management function originally implemented in C using AUTOSAR® Classic. The FEV team used the original Simulink® model with AUTOSAR Component Designer and transformed the function to use services instead of signals by defining send/receive events. Subsequently, AUTOSAR Adaptive–compliant C++ code was generated using Embedded Coder®.

This proof of concept demonstrates that transitioning to new E/E architectures is feasible while maximizing the reuse of existing intellectual property and maintaining a toolchain familiar to engineers. It also served as the starting point for an SDV development platform, allowing FEV to support a major OEM by aiding in validating SDV high-performance computing (HPC). The OEM supplied FEV with a vehicle featuring its current E/E architecture, along with its HPC and zonal controllers. Rather than constructing a new E/E architecture from scratch, FEV helped integrate the HPC and zonal controllers into the existing E/E architecture. With Simulink, the team used FEV’s gateway to facilitate interfacing and message translation between the zonal controllers and the legacy ECUs.