Controller Area Network (CAN) is a high-speed serial bus system with real-time capability. In this paper, we present a formal model of the CAN bus protocol, mainly focusing on the arbitration process, transmission process, and fault confinement mechanism. Moreover, 11 important properties are formalized in terms of the protocol. Based on the verification tool UPPAAL, we describe the system model and properties for performing verification work of the CAN bus protocol. The verification results indicate that some properties are not satisfied in CAN bus system, most of which are caused by the starvation and bus-off nodes. On this basis, the dynamic priority scheduling algorithm and bus-off recovery mechanism are applied, which indicates that some problems can be solved on the application layer.
Pan, C., Guo, J., Zhu, L., Shi, J., Zhu, H., & Zhou, X. (2014). Modeling and verification of CAN bus with application layer using UPPAAL. In Electronic Notes in Theoretical Computer Science (Vol. 309, pp. 31–49). Elsevier. https://doi.org/10.1016/j.entcs.2014.12.004