Time for Reactive System Modeling: Interactive Timing Analysis with Hotspot Highlighting

Modeling tools typically provide no information about timing properties and costly parts of the system under development. In this paper we propose a generic approach to integrate timing analysis and modeling tools. This approach includes visual highlighting to guide the user to worst-case execution time hotspots, detailed timing information for specific model elements, and the separation of different types of timing values. Our solution includes both a way to keep track of model elements subject to timing analysis during the compilation process, and a flexible and formally defined timing analysis interface for communicating timing information between a high-level modeling tool and a lower-level timing analysis tool. We present a complete open-source, Eclipse-based prototype tool chain that is evaluated both using a systematic benchmark suite and a user study.

[1]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

[2]  MendlerMichael,et al.  SCCharts: sequentially constructive statecharts for safety-critical applications , 2014 .

[3]  Sharad Malik,et al.  Performance Analysis of Embedded Software Using Implicit Path Enumeration , 1995, 32nd Design Automation Conference.

[4]  David Broman,et al.  FlexPRET: A processor platform for mixed-criticality systems , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[5]  Partha S. Roop,et al.  ILPc: A novel approach for scalable timing analysis of synchronous programs , 2013, 2013 International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES).

[6]  Reinhard von Hanxleden,et al.  Compiling SCCharts - A Case-Study on Interactive Model-Based Compilation , 2014, ISoLA.

[7]  Pascal Raymond,et al.  Timing analysis enhancement for synchronous program , 2013, RTNS '13.

[8]  David B. Whalley,et al.  Supporting the specification and analysis of timing constraints , 1996, Proceedings Real-Time Technology and Applications.

[9]  Michael R. Lowry,et al.  Fast, Interactive Worst-Case Execution Time Analysis With Back-Annotation , 2012, IEEE Transactions on Industrial Informatics.

[10]  Roland Lang,et al.  Fully automatic worst-case execution time analysis for MATLAB/Simulink models , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[11]  Reinhold Heckmann,et al.  Combining a High-Level Design Tool for Safety-Critical Systems with a Tool for WCET Analysis on Executables , 2008 .

[12]  Robert I. Davis,et al.  Identifying Opportunities for Worst-Case Execution Time Reduction in an Avionics System , 2008 .

[13]  Kozo Sugiyama,et al.  Layout Adjustment and the Mental Map , 1995, J. Vis. Lang. Comput..

[14]  Marian Boldt,et al.  Worst Case Reaction Time Analysis of Concurrent Reactive Programs , 2008, Electron. Notes Theor. Comput. Sci..

[15]  Edward A. Lee Cyber Physical Systems: Design Challenges , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[16]  Michel Poize,et al.  SAXO-RT: Interpreting Esterel Semantic on a Sequential Execution Structure , 2002, SLAP@ETAPS.

[17]  Jan Gustafsson,et al.  Automatic Derivation of Loop Bounds and Infeasible Paths for WCET Analysis Using Abstract Execution , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[18]  Peter Marwedel,et al.  Simple analysis of partial worst-case execution paths on general control flow graphs , 2013, 2013 Proceedings of the International Conference on Embedded Software (EMSOFT).

[19]  David Broman,et al.  Towards Interactive Timing Analysis for Designing Reactive Systems , 2014 .

[20]  Joaquín Aguado,et al.  SCCharts: sequentially constructive statecharts for safety-critical applications: HW/SW-synthesis for a conservative extension of synchronous statecharts , 2014, PLDI.

[21]  Nicolas Halbwachs,et al.  LUSTRE: A declarative language for programming synchronous systems* , 1987 .

[22]  Görel Hedin,et al.  Interactive Execution Time Predictions using Reference Attributed Grammars , 1999 .

[23]  Görel Hedin,et al.  An interactive environment for real-time software development , 2000, Proceedings 33rd International Conference on Technology of Object-Oriented Languages and Systems TOOLS 33.

[24]  Michael Mendler,et al.  WCRT algebra and interfaces for esterel-style synchronous processing , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[25]  Samarjit Chakraborty,et al.  Performance debugging of Esterel specifications , 2008, CODES+ISSS '08.

[26]  Stephen A. Edwards,et al.  The Synchronous Languages Twelve Years Later , 1997 .

[27]  Nicolas Halbwachs,et al.  LUSTRE: a declarative language for real-time programming , 1987, POPL '87.

[28]  David Broman,et al.  WCET-aware dynamic code management on scratchpads for Software-Managed Multicores , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[29]  Reinhard Wilhelm,et al.  Efficient and Precise Cache Behavior Prediction for Real-Time Systems , 1999, Real-Time Systems.

[30]  Reinhard von Hanxleden,et al.  Taming graphical modeling , 2010, MODELS'10.

[31]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.