Virtualization and emulation of a CAN device on a Multi-Processor System on Chip
Gabriela Breaban, Martijn Koedam, Sander Stuijk, Kees G. W. Goossens · 2016
The increasing number of applications implemented on modern vehicles leads to the use of multi-core platforms in the automotive field. As the number of I/O interfaces offered by these platforms is typically lower than the number of integrated applications, a solution is needed to provide access to the peripherals, such as the Controller Area Network (CAN), to all applications. Emulation and virtualization can be used to implement and share a CAN bus among multiple applications. In this article we present how multiple applications can share a CAN port, which can be on the local processor tile or on a remote tile. We evaluate our approach with four emulation and virtualization examples, trading the number of applications per core with the speed of the software emulated CAN bus.