Polychronous automata and their use for formal validation of AADL models
Thierry GAUTIER, Clément GUY, Alexandre HONORAT, Paul LE GUERNIC, Jean-Pierre TALPIN, Loïc BESNARD
Polychronous automata and their use for formal validation of AADL models
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.
architecture modeling / formal semantics / finitestate automaton / polychronous model / synchronous concurrency / code generation / AADL
[1] |
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
CrossRef
Google scholar
|
[2] |
Benveniste A, Caspi P, Edwards S, Halbwachs N, Le Guernic P, de Simone R. The synchronous languages twelve years later. Proceedings of the IEEE, 2003, 91(1): 64–83
CrossRef
Google scholar
|
[3] |
Berry G, Gonthier G. The ESTEREL synchronous programming language: design, semantics, implementation. Science of Computer Programming, 1992, 19(2): 87–152
CrossRef
Google scholar
|
[4] |
Halbwachs N, Caspi P, Raymond P, Pilaud D. The synchronous dataflow programming language LUSTRE. Proceedings of the IEEE, 1991, 79(9): 1305–1320
CrossRef
Google scholar
|
[5] |
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
CrossRef
Google scholar
|
[6] |
Gamatié A. Designing Embedded Systems with the SIGNAL Programming Language. Springer Science & Business Media, 2009
|
[7] |
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
CrossRef
Google scholar
|
[8] |
Aerospace Standard AS5506A: Architecture Analysis and Design Language (AADL). Google Scholar, 2009
|
[9] |
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
CrossRef
Google scholar
|
[10] |
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
CrossRef
Google scholar
|
[11] |
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
|
[12] |
Tripakis S, Stergiou C, Shaver C, Lee E A. A modular formal semantics for Ptolemy. Mathematical Structures in Computer Science, 2013, 23: 834–881
CrossRef
Google scholar
|
[13] |
Lee E A, Tripakis S. Modal models in Ptolemy. In: Proceedings of the 3rd International Workshop on Equation-Based Object-Oriented Modeling Languages and Tools (EOOLT 2010). 2010, 1–11
|
[14] |
Hamon G, Rushby J. An operational semantics for Stateflow. In: Proceedings of International Conference on Fundamental Approaches to Software Engineering. 2004, 229–243
CrossRef
Google scholar
|
[15] |
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
CrossRef
Google scholar
|
[16] |
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
CrossRef
Google scholar
|
[17] |
Harel D. Statecharts: a visual formalism for complex systems. Science of Computer Programming, 1987, 8(3): 231–274
CrossRef
Google scholar
|
[18] |
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
|
[19] |
André C. Semantics of SyncCharts. Technical Report ISRN I3S/RR– 2003–24–FR, I3S Laboratory, Sophia-Antipolis, France, 2003
|
[20] |
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: Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI). 2014
|
[21] |
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
CrossRef
Google scholar
|
[22] |
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
CrossRef
Google scholar
|
[23] |
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
CrossRef
Google scholar
|
[24] |
Raymond P, Roux Y, Jahier E. Lutin: a language for specifying and executing reactive scenarios. EURASIP Journal on Embedded Systems, 2008, 2008(1): 753821
CrossRef
Google scholar
|
[25] |
Cadoret F, Borde E, Gardoll S, Pautet L. Design patterns for rule-based refinement of safety critical embedded systems models. In: Proceedings of the 19th International Conference on Engineering of Complex Computer Systems, 2012, 67–76
|
[26] |
Ö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
CrossRef
Google scholar
|
[27] |
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
CrossRef
Google scholar
|
[28] |
Besnard L, Gautier T, Le Guernic P, Talpin J P.Compilation of Polychronous Data Flow Equations. Synthesis of Embedded Software. Springer, Boston, 2010
|
[29] |
Besnard L, Gautier T, Le Guernic P. SIGNAL V4-INRIA version: reference manual. Access Through the ESPRESSO Website, 2010
|
[30] |
Abramsky S, Jung A. Domain theory. Handbook of Logic in Computer Science, Oxford: Oxford University Press, 1994, 1–168
|
[31] |
Gilles K. The semantics of a simple language for parallel programming. Information Processing, 1974, 74: 471–475
|
[32] |
Plotkin G D. A powerdomain construction. SIAM Journal on Computing, 1976, 5(3): 452–487
CrossRef
Google scholar
|
[33] |
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
CrossRef
Google scholar
|
[34] |
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
CrossRef
Google scholar
|
[35] |
Sorel Y. SynDEx: system-level CAD software for optimizing distributed real-time embedded systems. Journal ERCIM News, 2004, 59: 68–69
|
[36] |
Wikipedia. Autonomous cruise control system—Wikipedia, The Free Encyclopedia, 2015
|
[37] |
Lee E A, Messerschmitt D G. Synchronous data flow. Proceedings of the IEEE, 1987, 75(9): 1235–1245
CrossRef
Google scholar
|
[38] |
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
|
[39] |
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
CrossRef
Google scholar
|
[40] |
Bouakaz A. Real-time scheduling of dataflow graphs. PhD Thesis, Université de Rennes 1, 2013
|
[41] |
Talpin J P, Gautier T. Precise deadlock detection for polychronous dataflow specifications. In: Proceedings of Electronic System Level Synthesis Conference (ESLsyn). 2014, 1–6
|
[42] |
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
|
/
〈 | 〉 |