skip to main content
research-article

Timing Analysis of Synchronous Programs using WCRT Algebra: Scalability through Abstraction

Published:27 September 2017Publication History
Skip Abstract Section

Abstract

Synchronous languages are ideal for designing safety-critical systems. Static Worst-Case Reaction Time (WCRT) analysis is an essential component in the design flow that ensures the real-time requirements are met. There are a few approaches for WCRT analysis, and the most versatile of all is explicit path enumeration. However, as synchronous programs are highly concurrent, techniques based on this approach, such as model checking, suffer from state explosion as the number of threads increases. One observation on this problem is that these existing techniques analyse the program by enumerating a functionally equivalent automaton while WCRT is a non-functional property. This mismatch potentially causes algorithm-induced state explosion. In this paper, we propose a WCRT analysis technique based on the notion of timing equivalence, expressed using WCRT algebra. WCRT algebra can effectively capture the timing behaviour of a synchronous program by converting its intermediate representation Timed Concurrent Control Flow Graph (TCCFG) into a Tick Cost Automaton (TCA), a minimal automaton that is timing equivalent to the original program. Then the WCRT is computed over the TCA. We have implemented our approach and benchmarked it against state-of-the-art WCRT analysis techniques. The results show that the WCRT algebra is 3.5 times faster on average than the fastest published technique.

References

  1. 2016. Gurobi optimiser. (Nov. 2016). http://www.gurobi.com.Google ScholarGoogle Scholar
  2. 2016. UPPAAL model checker. (Nov. 2016). http://www.uppaal.org.Google ScholarGoogle Scholar
  3. J. Aguado, M. Mendler, J. J. Wang, B. Bodin, and P. Roop. 2017. Compositional timing-aware semantics for synchronous programming. In Forum on Specification and Design Languages (FDL’2017). Verona, Italy.Google ScholarGoogle Scholar
  4. Sidharta Andalam, Partha S. Roop, and Alain Girault. 2011. Pruning infeasible paths for tight WCRT analysis of synchronous programs. In Design, Automation Test in Europe Conference Exhibition (DATE). 1--6.Google ScholarGoogle Scholar
  5. Sidharta Andalam, Partha S. Roop, Alain Girault, and Claus Traulsen. 2014. A predictable framework for safety-critical embedded systems. IEEE Trans. Comput. 63, 7 (July 2014), 1600--1612. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Marian Boldt, Claus Traulsen, and Reinhard von Hanxleden. 2008. Compilation and worst-case reaction time analysis for multithreaded esterel processing. EURASIP Journal on Embedded Systems (2008), 594129. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Reinhold Heckmann and Christian Ferdinand. 2005. Verifying safety-critical timing and memory-usage properties of embedded software by abstract interpretation. In Proceedings of the Design, Automation Test in Europe Conference Exhibition (DATE). 618--619. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Lei Ju, Bach Khoa Huynh, Samarjit Chakraborty, and Abhik Roychoudhury. 2009. Context-sensitive timing analysis of esterel programs. In Proceedings of the Design Automation Conference (DAC). 870--873. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Lei Ju, Bach Khoa Huynh, Abhik Roychoudhury, and Samarjit Chakraborty. 2012. Performance debugging of esterel specifications. Real-Time System 48, 5 (Sept. 2012), 570--600. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Matthew Kuo, Roopak Sinha, and Partha S. Roop. 2011. Efficient WCRT analysis of synchronous programs using reachability. In Proceedings of the Design Automation Conference (DAC). 480--485. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Yau-Tsun Steven Li and Sharad Malik. 1995. Performance analysis of embedded software using implicit path enumeration. In Proceedings of Languages, Compilers and Tools for Real-time Systems (LCTES), Vol. 30. ACM, 88--98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Michael Mendler, Partha S. Roop, and Bruno Bodin. 2016. A novel WCET semantics of synchronous programs. In International Conference on Formal Modeling and Analysis of Timed Systems (FORMATS). Springer, 195--210.Google ScholarGoogle ScholarCross RefCross Ref
  13. Pascal Raymond, Claire Maiza, Catherine Parent-Vigouroux, Fabienne Carrier, and Mihail Asavoae. 2015. Timing analysis enhancement for synchronous program. Real-Time Systems 51, 2 (2015), 192--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Partha S. Roop, Sidharta Andalam, Reinhard von Hanxleden, Simon Yuan, and Claus Traulsen. 2009. Tight WCRT analysis of synchronous C programs. In Compilers, Architecture, and Synthesis for Embedded Systems (CASES). 205--214. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Reinhard von Hanxleden, Björn Duderstadt, Christian Motika, Steven Smyth, Michael Mendler, Joaquín Aguado, Stephen Mercer, and Owen O’Brien. 2014. SCCharts: Sequentially constructive statecharts for safety-critical applications: HW/SW-synthesis for a conservative extension of synchronous statecharts. In Programming Language Design and Implementation (PLDI). ACM, 372--383. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Jia Jie Wang, Partha S. Roop, and Sidharta Andalam. 2013. ILPc: A novel approach for scalable timing analysis of synchronous programs. In Compilers, Architecture, and Synthesis for Embedded Systems (CASES). 1--10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Li Hsien Yoong, Partha S. Roop, and Zoran Salcic. 2013. Implementing constrained cyber-physical systems with IEC 61499. In ACM Transactions on Embedded Computing Systems (TECS). Number 1. ACM.Google ScholarGoogle Scholar
  18. Li Hsien Yoong and Gareth D. Shaw. 2010. Auckland Function Block Benchmark.University of Auckland. (2010). pretzel.ece.auckland.ac.nz/files/iec61499-benchmarks.zip.Google ScholarGoogle Scholar

Index Terms

  1. Timing Analysis of Synchronous Programs using WCRT Algebra: Scalability through Abstraction

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Embedded Computing Systems
        ACM Transactions on Embedded Computing Systems  Volume 16, Issue 5s
        Special Issue ESWEEK 2017, CASES 2017, CODES + ISSS 2017 and EMSOFT 2017
        October 2017
        1448 pages
        ISSN:1539-9087
        EISSN:1558-3465
        DOI:10.1145/3145508
        Issue’s Table of Contents

        Copyright © 2017 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 27 September 2017
        • Accepted: 1 June 2017
        • Revised: 1 May 2017
        • Received: 1 April 2017
        Published in tecs Volume 16, Issue 5s

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader