Software is crucial in defining vehicle functionality, leading to the rise of software-defined vehicles (SDVs). This shift offers opportunities for adding features throughout a vehicle’s life. To enable frequent software updates, vehicles are evolving towards a new electrical/electronic (E/E) architecture with centralized high-performance computing (HPC) platforms, service-oriented architecture (SOA), and “software factory” approaches with continuous integration and continuous delivery (CI/CD). The increasing complexity of automotive software also requires new competencies in software architecture, reuse, and integration.
Model-Based Design helps engineering teams tackle these challenges by:
- Reusing software across HPC, zonal controllers, and ECUs
- Meeting safety and quality requirements through automation
- Shift-left through early validation and software integration in simulation
- Empowering domain experts to create high-quality software
Creating High-Quality Software for Software Defined Vehicles with MATLAB, Simulink, and Polyspace
Design, Simulate, and Deploy Signal-Based and Service-Oriented Applications
The shift to HPCs and zonal computers is supported by a new vehicle E/E architecture decoupling application software from hardware. Part of the existing application software will migrate from ECUs to HPCs and zonal computers. To do this, these software components need to be re-architected and refactored from monolithic signal-based to non-monolithic service-oriented ones to plug into SOAs. Tools for software architecture development are necessary to support this migration and to integrate and validate new application software components.
Simulink and System Composer enable you to:
- Create software architectures and perform tradeoff analyses of software allocation
- Integrate system engineering and software development tools to ensure the software product stays in sync with the requirements and design
- Reuse software across HPCs, zonal computers, and ECUs through automatic code generation
Shift Left Software Integration with Virtual Vehicle Simulation
With frequent over-the-air (OTA) software updates, testing new software configurations using prototype hardware is no longer feasible. Integration testing must also be automated to reduce lead time for software release. Shifting software integration to model-in-the-loop (MIL) and software-in-the-loop (SIL) testing with a virtual vehicle simulation that is integrated with a continuous integration pipeline helps address both issues. With Simulink, Virtual Vehicle Composer, and Simulink Compiler, you can:
- Automate the assembly of virtual vehicle models
- Build virtual Electronic Control Unit (ECU) simulations with a mix of model-based and code-based components in Simulink and integrate with third-party tools for production Basic Software (BSW) and processor simulation
- Deploy virtual vehicle and virtual ECU models into continuous integration pipelines
Automate Processes and Scale from Desktop Computers to the Cloud in Software Factories
Implementing automation at scale is key to reducing software development effort. Development technologies like CI/CD bring automation to developers and simultaneously ensure reliability through repeatable processes. In addition, cloud technology enables scaling by speeding up software builds and simulations, processing large data sets, and facilitating collaboration of distributed software teams. With MATLAB and Simulink, you can:
- Integrate with CI/CD systems like Jenkins®, GitLab® CI/CD, GitHub Actions, and Azure® Pipelines
- Process cloud-based data in systems, such as AWS® S3 and Azure Blob, and scale as per the need
- Scale simulation to clusters and cloud using MATLAB Parallel Server
- Accelerate training of neural networks on GPUs
- Develop collaboratively with Git and SVN Source Control