Compositional verification of embedded real-time systems

被引:2
|
作者
Foughali, Mohammed [1 ]
Hladik, Pierre-Emmanuel [2 ]
Zuepke, Alexander [3 ]
机构
[1] Univ Paris Cite, CNRS, IRIF, F-75013 Paris, France
[2] Nantes Univ, CNRS, LS2N, F-44000 Nantes, France
[3] Tech Univ Munich, D-85748 Garching, Germany
关键词
Formal methods; Real-time systems; Timed automata; Integer linear programming; FORMAL VERIFICATION; MODEL-CHECKING; SYNCHRONIZATION;
D O I
10.1016/j.sysarc.2023.102928
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In an embedded real-time system (ERTS), real-time tasks (software) are typically executed on a multicore shared-memory platform (hardware). The number of cores is usually small, contrasted with a larger number of complex tasks that share data to collaborate. Since most ERTSs are safety-critical, it is crucial to rigorously verify their software against various real-time requirements under the actual hardware constraints (concurrent access to data, number of cores). Both the real-time systems and the formal methods communities provide elegant techniques to realize such verification, which nevertheless face major challenges. For instance, model checking (formal methods) suffers from the state-space explosion problem, whereas schedulability analysis (real-time systems) is pessimistic and restricted to simple task models and schedulability properties. In this paper, we propose a scalable and generic approach to formally verify ERTSs. The core contribution is enabling, through joining the forces of both communities, compositional verification to tame the state-space size. To that end, we formalize a realistic ERTS model where tasks are complex with an arbitrary number of jobs and job segments, then show that compositional verification of such model is possible, using a hybrid approach (from both communities), under the state-of-the-art partitioned fixed-priority (P-FP) with limited preemption scheduling algorithm. The approach consists of the following steps, given the above ERTS model and scheduling algorithm. First, we compute fine-grained data sharing overheads for each job segment that reads or writes some data from the shared memory. Second, we generalize an algorithm that, aware of the data sharing overheads, computes an affinity (task-core allocation) guaranteeing the schedulability of hard-real-time (HRT) tasks. Third, we devise a timed automata (TA) model of the ERTS, that takes into account the affinity, the data sharing overheads and the scheduling algorithm, on which we demonstrate that various properties can be verified compositionally, i.e., on a subset of cores instead of the whole ERTS, therefore reducing the state-space size. In particular, we enable the scalable computation of tight worst-case response times (WCRTs) and other tight bounds separating events on different cores, thus overcoming the pessimism of schedulability analysis techniques. We fully automate our approach and show its benefits on three real-world complex ERTSs, namely two autonomous robots and an automotive case study from the WATERS 2017 industrial challenge.
引用
下载
收藏
页数:21
相关论文
共 50 条
  • [21] Real-time and embedded systems
    Stankovic, JA
    ACM COMPUTING SURVEYS, 1996, 28 (01) : 205 - 208
  • [22] Real-time embedded systems
    Bate, I
    Liu, S
    COMPUTING & CONTROL ENGINEERING JOURNAL, 2002, 13 (04): : 154 - 155
  • [23] Embedded/real-time systems
    Katz, DS
    Kepner, J
    INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 2001, 15 (02): : 186 - 190
  • [24] Concurrent embedded real-time software verification
    Hsiung, PA
    24TH ANNUAL INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COSPSAC 2000), 2000, 24 : 516 - 521
  • [25] Formal Specification and Verification of a Protocol for Consistent Diagnosis in Real-Time Embedded Systems
    Barbosa, Raul
    Karlsson, Johan
    2008 INTERNATIONAL SYMPOSIUM ON INDUSTRIAL EMBEDDED SYSTEMS, 2008, : 192 - 199
  • [26] A review of Petri Net based modeling and verification for embedded real-time systems
    zhang, Haitao
    Wang, Fei-Yue
    DETC 2005: ASME International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, 2005, Vol 4, 2005, : 257 - 264
  • [27] Automatic synthesis and verification of real-time embedded software for mobile and ubiquitous systems
    Hsiung, Pao-Ann
    Lin, Shang-Wei
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2008, 34 (04) : 153 - 169
  • [28] TEMPORAL VERIFICATION OF REAL-TIME SYSTEMS
    CAMPOS, SV
    CLARKE, EM
    MARRERO, W
    MINEA, M
    HIRAISHI, H
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 1995, E78D (07) : 796 - 801
  • [29] Verification of real-time systems design
    Emilia Cambronero, M.
    Valero, Valentin
    Diaz, Gregorio
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2010, 20 (01): : 3 - 37
  • [30] Compositional Real-Time Scheduling of Mixed-Criticality Real-Time Systems
    Ali, Amjad
    Kim, Kyong Hoon
    2014 IEEE 12TH INTERNATIONAL CONFERENCE ON DEPENDABLE, AUTONOMIC AND SECURE COMPUTING (DASC)/2014 IEEE 12TH INTERNATIONAL CONFERENCE ON EMBEDDED COMPUTING (EMBEDDEDCOM)/2014 IEEE 12TH INTERNATIONAL CONF ON PERVASIVE INTELLIGENCE AND COMPUTING (PICOM), 2014, : 464 - 469