Abstract
This paper investigates how state diagrams can be best represented in the polychronous model of computation (MoC) and proposes to use this model for code validation of behavior specifications in Architecture Analysis & Design Language (AADL). In this relational MoC, the basic objects are signals, which are related through dataflow equations. Signals are associated with logical clocks, which provide the capability to describe systems in which components obey multiple clock rates. We propose a model of finite-state automata, called polychronous automata, which is based on clock relationships. A specificity of this model is that an automaton is submitted to clock constraints, which allows one to specify a wide range of control-related configurations, being either reactive or restrictive with respect to their control environment. A semantic model is defined for these polychronous automata, which relies on boolean algebra of clocks. Based on a previously defined modeling method for AADL software architectures using the polychronous MoC, the proposed model is used as a formal model for the AADL behavior annex. This is illustrated with a case study involving an adaptive cruise control system.
Similar content being viewed by others
References
Le Guernic P, Talpin J P, Le Lann J C. Polychrony for system design. Journal of Circuits, Systems and Computers, 2003, 12(3): 261–303
Benveniste A, Caspi P, Edwards S, Halbwachs N, Le Guernic P, de Simone R. The synchronous languages twelve years later. In: Proceedings of the IEEE. 2003, 91(1): 64–83
Berry G, Gonthier G. The ESTEREL synchronous programming language: design, semantics, implementation. Science of Computer Programming, 1992, 19(2): 87–152
Halbwachs N, Caspi P, Raymond P, Pilaud D. The synchronous dataflow programming language LUSTRE. Proceedings of the IEEE, 1991, 79(9): 1305–1320
Le Guernic P, Gautier T, Le Borgne M, Le Maire C. Programming realtime applications with Signal. Proceedings of the IEEE, 1991, 79(9): 1321–1336
Gamatié A. Designing Embedded Systems with the SIGNAL Programming Language. Springer Science & Business Media, 2009
Yu H, Ma Y, Glouche Y, Talpin J P, Besnard L, Gautier T, Le Guernic P, Toom A, Laurent O. System-level co-simulation of integrated avionics using Polychrony. In: Procecdings of the 2011 ACM Symposium on Applied Computing. 2011, 354–359
Aerospace Standard AS5506A: Architecture Analysis and Design Language (AADL). Google Scholar, 2009
Yu H, Ma Y, Gautier T, Besnard L, Talpin J P, Le Guernic P, Sorel Y. Exploring system architectures in AADL via Polychrony and SynDEx. Frontiers of Computer Science, 2013, 7(5): 627–649
Yu H, Ma Y, Gautier T, Besnard L, Le Guernic P, Talpin J P. Polychronous modeling, analysis, verification and simulation for timed software architectures. Journal of Systems Architecture, 2013, 59(10): 1157–1170
Berry G. Scade: Synchronous Design and Validation of Embedded Control Software. Next Generation Design and Verification Methodologies for Distributed Embedded Control Systems. Springer, Dordrecht, 2007
Tripakis S, Stergiou C, Shaver C, Lee E A. A modular formal semantics for Ptolemy. Mathematical Structures in Computer Science, 2013, 23: 834–881
Lee E A, Tripakis S. Modal models in Ptolemy. In: Proceedings of 3rd International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools (EOOLT 2010). 2010, 1–11
Hamon G, Rushby J. An operational semantics for Stateflow. In: Proceedings of International Conference on Fundamental Approaches to Software Engineering. 2004, 229–243
Maraninchi F, Rémond Y. Mode-automata: a new domain-specific construct for the development of safe critical systems. Science of Computer Programming, 2003, 46(3): 219–254
Colaço J L, Pagano B, Pouzet M. A conservative extension of synchronous data-flow with state machines. In: Proceedings of the 5th ACM international conference on Embedded software. 2005, 173–182
Harel D. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 1987, 8(3): 231–274
Wang Y, Talpin J P, Benveniste A, Le Guernic P. A semantics of UML state-machines using synchronous pre-order transition systems. In: Proceedings of the 3rd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. 2000, 96–103
André C. Semantics of SyncCharts. Technical Report ISRN I3S/RR–2003–24–FR, I3S Laboratory, Sophia-Antipolis, France, 2003
von Hanxleden R, Duderstadt B, Motika C, Smyth S, Mendler M, Aguado J, Mercer S, O’Brien O. SCCharts: proceedings of sequentially constructive statecharts for safety-critical applications. In: ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). 2014
Hanxleden R V, Mendler M, Aguado J, Duderstadt B, Fuhrmann I, Motika C, Mercer S, O’Brien O. Sequentially constructive concurrency—A conservative extension of the synchronous model of computation. ACM Transaction on Embedded Computing Systems (TECS), 2014, 13(4S): 144
Radojevic I, Salcic Z, Roop P. Design of distributed heterogeneous embedded systems in DDFCharts. IEEE Transactions on Parallel and Distributed Systems, 2011, 22(2): 296–308
Talpin J P, Brunette C, Gautier T, Gamatié A. Polychronous mode automata. In: Proceedings of the 6th ACM & IEEE International conference on Embedded software. 2006, 83–92
Raymond P, Roux Y, Jahier E. Lutin: a language for specifying and executing reactive scenarios. EURASIP Journal on Embedded Systems, 2008, 2008(1): 753821
Cadoret F, Borde E, Gardoll S, Pautet L. Design patterns for rule-based refinement of safety critical embedded systems models. In: Proceedings of 2014 19th International Conference on Engineering of Complex Computer Systems, 2012, 67–76
Ölveczky P C, Boronat A, Meseguer J. Formal semantics and analysis of behavioral aadl models in real-time maude. In: Proceedings of the 12th IFIP WG 6.1 International Conference and the 30th IFIP WG 6.1 International Conference on Formal Techniques for Distributed Systems. 2010, 47–62
Yang Z, Hu K, Bodeveix J P, Pi L, Ma D, Talpin J P. Two formal semantics of a subset of the AADL. In: Proceedings of the 16th IEEE International Conference on Engineering of Complex Computer Systems. 2011, 344–349
Besnard L, Gautier T, Le Guernic P, Talpin J P. Compilation of Polychronous Data Flow Equations. Synthesis of Embedded Software. Springer, Boston, 2010
Besnard L, Gautier T, Le Guernic P. SIGNAL V4-INRIA version: reference manual. Access Through the ESPRESSO Website, 2010
Abramsky S, Jung A. Domain theory. Handbook of Logic in Computer Science, Oxford: Oxford University Press, 1994, 1–168
Gilles K. The semantics of a simple language for parallel programming. Information Processing, 1974, 74: 471–475
Plotkin G D. A powerdomain construction. SIAM Journal on Computing, 1976, 5(3): 452–487
Halbwachs N, Raymond P, Ratel C. Generating efficient code from data-flow programs. In: Proceedings of the 3rd International Symposium on Programming Language Implementation and Logic Programming. 1991, 207–218
Marchand H, Bournai P, Le Borgne M. Synthesis of discrete-event controllers based on the Signal environment. Discrete Event Dynamic System, 2000, 10(4): 325–346
Sorel Y. SynDEx: system-level CAD software for optimizing distributed real-time embedded systems, Journal ERCIM News, 2004, 59: 68–69
Wikipedia. Autonomous cruise control system—Wikipedia, The Free Encyclopedia, 2015
Lee E A, Messerschmitt D G. Synchronous data flow. Proceedings of the IEEE, 1987, 75(9): 1235–1245
Besnard L, Gautier T, Le Guernic P, Guy C, Talpin J P, Larson B R, Borde E. Formal semantics of behavior specifications in the architecture analysis and design language standard. Cyber-Physical System Design from an Architecture Analysis Viewpoint. Springer, Singapore, 2017, 53–79
Besnard L, Bouakaz A, Gautier T, Le Guernic P, Ma Y, Talpin J P, Yu H. Timed behavioural modelling and affine scheduling of embedded software architectures in the AADL using Polychrony. Science of Computer Programming, 2015, 106: 54–77
Bouakaz A. Real-time scheduling of dataflow graphs. PhD thesis, Université de Rennes 1, 2013
Talpin J P, Gautier T. Precise deadlock detection for polychronous dataflow specifications. In: Proceedings of Electronic System Level Synthesis Conference (ESLsyn). 2014, 1–6
Besnard L, Borde E, Dissaux P, Gautier T, Le Guernic P, Talpin J P. Logically timed specifications in the AADL: a synchronous model of computation and communication (recommendations to the SAE committee on AADL). Technical Report, 2014
Acknowledgements
Jean-Pierre Talpin has been partially supported by Nankai University and by the National Natural Science Foundation of China (Grant No. 61672074).
Author information
Authors and Affiliations
Corresponding author
Additional information
Thierry Gautier is researcher in Inria. He received his graduate degree from INSA Rennes (France) and PhD degree in Computer Science from the University of Rennes 1, France. He is one of the designers of the Signal language, the polychronous model of computation, and the Polychrony toolset. His main research interests focus on the safe design of complex embedded systems, including formal modeling, formal validation, transformations of models to target architectures, and synthesis of schedulers.
Clément Guy is a digital, educational, and science popularizer and facilitator. He obtained PhD degree in Software Engineering at the University of Rennes 1, France. He then worked as a research engineer in different teams at INSA of Rennes and Inria. His work focused mainly on developing new methods and tools for better, safer, and more efficient embedded software and hardware. He then completed a Master degree in techno-educational engineering. He works as a digital facilitator at the Mission locale du bassin d’emploi de Rennes, where he helps to deploy new communication tools and methods which better fit the needs of the employees. This includes audit and survey of user needs, meeting facilitating, tool deployment, and training.
Alexandre Honorat began work with the TEA team at Inria Rennes to maintain the ADFG scheduling synthesizer, after obtaining his Master’x s diploma in High Performance Computing from the ENSEIRB-MATMECA French engineering school in 2015. He also participated in linking the ADFG tool with the AADL analyzer in Polychrony, which generates Signal programs. Currently working as an engineer, he plans to study scheduling of real-time systems as a PhD student.
Paul Le Guernic graduated from Institut National des Sciences Appliquées de Rennes 1974 in France. He performed his Thèse de troisième cycle in Computer Science in 1976. From 1978 to 1984 he held a research position at Inria and served as the Directeur de Recherche in this institute since 1985. He has been head of the “Programming Environment for Real Time Applications” group, which has defined and developed the Signal language. He is one of the architects of the Polychrony toolset. Before he retired, his main research interests included the development of theories, tools, and methods for the design of realtime embedded heterogeneous systems.
Jean-Pierre Talpin is senior scientist with Inria and scientific leader of the Inria project-team TEA. Graduated in Applied Mathematics, he received a Master’s degree in Theoretical Computer Science from University Paris 6 and comleted his Ph.D. thesis at Ecole des Mines de Paris, France. He then worked three years as research associate at the European Computer-Industry Research Centre in Munich. He joined Inria in 1995 and led project-team ESPRESSO from 2000 to 2012. He is an associate editor with the ACM’s Transactions on Embedded Computer Systems. He edited three books, guest-edited a dozen scientific journal special issues with ACM and IEEE, and has authored more than one hundred journal articles, book chapters, and conference papers. He received the 2004 ACM Award for the most influential POPL paper and the 2012 ACM/IEEE LICS Test of Time Award.
Loïc Besnard is currently a senior engineer at CNRS, France. He received his PhD degree in Computer Science from University of Rennes 1, France (1992). His research interests include software reliability for the design of embedded systems: modeling, temporal analysis, formal verification, simulation, and synthesis of embedded systems. He participates in the development of the Polychony toolset based on the synchronous language Signal, the POP platform, and with the import of formalisms to AADL. He is also involved in the development of Heptane, a static worst-case execution time estimation tool.
Electronic supplementary material
Rights and permissions
About this article
Cite this article
Gautier, T., Guy, C., Honorat, A. et al. Polychronous automata and their use for formal validation of AADL models. Front. Comput. Sci. 13, 677–697 (2019). https://doi.org/10.1007/s11704-017-6134-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11704-017-6134-5