Vehicle software is moving towards software-centric architectures and hence software-defined vehicles. With this transition, there is a need to handle various challenges posed during development and validation. Some of the challenges include unavailability of hardware limiting the evaluation of various hardware options, board bring-up and hence leading to delays in software development targeted for the hardware, eventually leading to delayed validation cycles.
To overcome the above challenges, we present in this whitepaper a virtual ECU (vECU) framework integrated with a CI/CD pipeline. A Virtual ECU (Electronic Control Unit) is a software-based emulation of a physical ECU. The adoption of virtual ECUs empowers development teams to commence software development prior to the availability of physical hardware. Multiple tools are available to demonstrate virtual ECUs, for example, QEMU, Synopsys, QNX Cabin, etc. vECU setup, when paired with a CI/CD pipeline, allows continuous integration, rapid iterations, and improved testing coverage. The integrated framework for virtual ECU and CI/CD thereby significantly expedites the entire software lifecycle, enabling early-stage software development and validation.
This whitepaper uses QEMU as the virtual ECU tool and Gerrit/Jenkins/Azure as the CI/CD tools. Hardware emulated includes two NXP high performance compute platforms, integrated with features from body, gateway and cluster. Additional features such as cryptography, communication protocols such as CAN, SOMEIP, and DDS have been integrated to showcase critical facets of software-defined vehicles such as security and service-oriented architecture. Integration of the virtual ECU framework into software-defined vehicle development workflows has had a measurable impact on our project.