Timing Analysis of Real-Time Embedded Systems using Model Checking

Modern real-time embedded systems are highly complex and distributed. Timing analysis of these systems is a challenging task. Model checking is increasingly being used for analyzing such systems. In this paper, we use timed automata based model checking for the timing analysis of distributed embedded systems with fixed priority preemptive tasks which exchange messages via communication buses with specific access protocols. We have constructed a general task model in UPPAAL for preemptable tasks based on the preemption handling method proposed by Waszniowski et al. We present two case studies, one involving an advanced automotive control application using the FlexRay bus, and the other using a Controller Area Network (CAN) bus. We also present a case study showing how the explicit-time model checker SPIN can be used for computing the end-to-end latency between tasks and how it compares with the implicit-time handling methods used by timed automata based model checkers.

[1]  Devesh B. Chokshi,et al.  Modeling Fixed Priority Non-Preemptive Scheduling with Real-Time Calculus , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[2]  Thomas A. Henzinger,et al.  What Good Are Digital Clocks? , 1992, ICALP.

[3]  Paul A. Strooper,et al.  Introducing Time in an Industrial Application of Model-Checking , 2007, FMICS.

[4]  Mordechai Ben-Ari,et al.  Principles of the spin model checker , 2008 .

[5]  Lothar Thiele,et al.  Real-time calculus for scheduling hard real-time systems , 2000, 2000 IEEE International Symposium on Circuits and Systems. Emerging Technologies for the 21st Century. Proceedings (IEEE Cat No.00CH36353).

[6]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[7]  John A. Clark,et al.  Holistic schedulability analysis for distributed hard real-time systems , 1994, Microprocess. Microprogramming.

[8]  Alberto L. Sangiovanni-Vincentelli,et al.  Optimizing End-to-End Latencies by Adaptation of the Activation Events in Distributed Automotive Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[9]  Alan Burns,et al.  Calculating controller area network (can) message response times , 1994 .

[10]  Wang Yi,et al.  Uppaal in a nutshell , 1997, International Journal on Software Tools for Technology Transfer.

[11]  Lothar Thiele,et al.  Influence of different system abstractions on the performance analysis of distributed real-time systems , 2007, EMSOFT '07.

[12]  Nagarajan Kandasamy,et al.  Dependable communication synthesis for distributed embedded systems , 2003, Reliab. Eng. Syst. Saf..

[13]  Shengbing Jiang,et al.  Model checking based analysis of end-to-end latency in embedded, real-time systems with clock drifts , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[14]  Leslie Lamport,et al.  Real-Time Model Checking Is Really Simple , 2005, CHARME.

[15]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[16]  Sherif Abdelwahed,et al.  A Conservative Approximation Method for the Verification of Preemptive Scheduling Using Timed Automata , 2009, 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium.

[17]  Z. Hanzalek,et al.  Over-approximate model of multitasking application based on timed automata using only one clock , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[18]  Michael González Harbour,et al.  Schedulability analysis for tasks with static and dynamic offsets , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[19]  A. C. Rajeev,et al.  Schedulability and end-to-end latency in distributed ECU networks: formal modeling and precise estimation , 2010, EMSOFT '10.

[20]  Bruno Dutertre,et al.  Modeling and Verification of a Fault-Tolerant Real-Time Startup Protocol Using Calendar Automata , 2004, FORMATS/FTRTFT.

[21]  Martín Abadi,et al.  An old-fashioned recipe for real time , 1994, TOPL.

[22]  Lothar Thiele,et al.  A general framework for analysing system properties in platform-based embedded system designs , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[23]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[24]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[25]  Wang Yi,et al.  Decidable and Undecidable Problems in Schedulability Analysis Using Timed Automata , 2004, TACAS.