Abstract
A GALS (Globally Asynchronous, Locally Synchronous) system consists of several synchronous components that evolve concurrently and interact with each other asynchronously. The design of GALS systems is tedious and error-prone due to the high degree of synchronous and asynchronous concurrency present in complex architectures. In this paper, we present GRL (GALS Representation Language), a formal language designed to model GALS systems, for the purpose of formal verification of the asynchronous aspects. GRL combines the synchronous reactive model underlying dataflow languages and the asynchronous concurrent model underlying process algebras. We propose a translation from GRL to LNT, a value-passing concurrent language with classical process algebra flavour. This makes possible the analysis of GRL specifications using all the state-of-the-art simulation and verification functionalities provided by the CADP toolbox.
This is a preview of subscription content, access via your institution.
References
Benveniste A, Bouillard A, Caspi P (2010) A unifying view of loosely time-triggered architectures. In: Proceedings of the Tenth ACM International Conference on Embedded Software EMSOFT ’10, ACM, New York, NY, USA, pp 189–198
Bai Y, Brandt J, Schneider K (2012) Preservation of LTL properties in desynchronized systems. In: MEMOCODE. IEEE, July 2012, pp 53–64
Benveniste A, Caillaud B, Le Guernic P (1999) From synchrony to asynchrony. In: Jos C, Baeten M, Mauw S (eds) CONCUR’99, vol 1664 of LNCS. Springer, Berlin, pp 162–177
Backes J, Cofer DD, Miller SP, Whalen M (2015) Requirements analysis of a quad-redundant flight control system. CoRR arXiv:1502.03343
Bae K, Ölveczky PC, Meseguer J (2014) Definition, semantics, and analysis of multirate synchronous AADL. In: Jones C, Pihlajasaari P, Sun J (eds) FM 2014, vol 8442 of LNCS, pp 94–109
Bouali A (1998) Xeve, an Esterel verification environment. In: Hu AJ, Vardi MY (eds) CAV, vol 1427 of LNCS. Springer Berlin , pp 500–504
Berry G, Ramesh S, Shyamasundar RK (1993) Communicating reactive processes. In: Proc. of POPL, ACM Press, pp 85–98
Berry G, Sentovich E (2001) Multiclock Esterel. In: Proc. of CHARME, volume 2144 of LNCS, Springer, Berlin pp 110–125
Champelovier D, Clerc X, Garavel H, Guerte Y, Powazny V, Lang F, Serwe W, Smeding G (2014) Reference Manual of the LNT to LOTOS Translator (Version 6.1). INRIA/VASY and INRIA/CONVECS, pp 131,
Chapiro DM (1984) Globally-Asynchronous Locally-Synchronous Systems. Technical report, DTIC Document
Caspi P, Mazuet C, Paligot N (2001) About the design of distributed control systems: the quasi-synchronous approach. In: Udo Voges, editor, Computer Safety, Reliability and Security, volume 2187 of LNCS, Springer Berlin Heidelberg, pp 215–226
Doucet F, Menarini M, Krüger IH, Gupta R, Talpin J-P (2006) A verification approach for GALS integration of synchronous components. ENTCS 146(2): 105–131
Garavel H (2008) Reflections on the future of concurrency theory in general and process calculi in particular. ENTCS 209: 149–164
Gamatié A, Gautier T (2003) The signal approach to the design of system architectures. In: 10th IEEE international conference on engineering of computer-based systems, ECBS 2003, IEEE, Huntsville, AL, USA, pp 80–88
Ganai MK, Gupta A (2007) Efficient BMC for multi-clock systems with clocked specifications. In: Design automation conference, pp 310–315
Gamatié A, Gautier T (2010) The signal synchronous multiclock approach to the design of distributed embedded systems. IEEE Trans Parallel Distrib Syst 21(5): 641–657
Glouche Y, Le Guernic P, Talpin J-P, Gautier T (2010) A boolean algebra of contracts for assume-guarantee reasoning. In: Electron Notes Theor Comput Sci, 263:111–127 (Proceedings of the 6th International Workshop on Formal Aspects of Component Software (FACS 2009))
Garavel H, Lang F (2002) SVL: a scripting language for compositional verification. In: Formal techniques for networked and distributed systems, IFIP conference proceedings, Springer, Berlin, pp 377–392
Garavel H, Lang F, Mateescu R (2002) Compiler Construction using LOTOS NT. In: Horspool N (ed) Proceedings of the 11th international conference on compiler construction (CC’02), Grenoble, France, vol 2304 of LNCS, pp 9–13
Garavel H, Lang F, Mateescu R (2015) Compositional verification of asynchronous concurrent systems using CADP. Acta Inf, 52(4): 337–392
Garavel H, Lang F, Mateescu R, Serwe W (2013) . 15(2): 89–107
Garavel H, Thivolle D (2009) Verification of GALS systems by combining synchronous languages and process calculi. In: Pasareanu C (ed) Model checking software, proceedings of the 16th international SPIN workshop on model checking of software SPIN’2009 (Grenoble, France), vol 5578 of LNCS, pp 241–260
Garavel H, Viho C, Zendri M (2001) System design of a CC-NUMA multiprocessor architecture using formal specification, model-checking, co-simulation, and test generation. STTT 3(3): 314–331
Halbwachs N (2013) Synchronous programming of reactive systems, vol 215. Springer, Berlin
Halbwachs N, Baghdadi S (2012) Synchronous modeling of asynchronous systems. In: EMSOFT’02, vol 2491 of LNCS, Springer, Grenoble, pp 240–251
Halbwachs N, Lagnier F, Raymond P (1993) Synchronous observers and the verification of reactive systems. In: AMAST’93, Twente, Springer, Berlin, pp 83–96
Halbwachs N, Lagnier F, Raymond P (1993) Synchronous observers and the verification of reactive systems. In: Nivat M, Rattray C, Rus T, Scollo G (eds) AMAST’93, Twente, June 1993. Workshops in Computing, Springer, Berlin
Halbwachs N, Mandel L (2006) Simulation and verification of asynchronous systems by means of a synchronous model. In: Proc. of ACSD, pp 3–14
Holzmann GJ (1997) The model checker SPIN. IEEE Trans Softw Eng 23(5)
ISO/IEC (2001) Enhancements to LOTOS (E-LOTOS). International standard 15437:2001, International organization for standardization—information technology, Genève
Jebali F, Lang F, Mateescu R (2014) GRL: A specification language for globally asynchronous locally synchronous systems. Proc. of ICFEM, vol 8829, pp 219–234
Jebali F, Lang F, Mateescu R (2014) GRL: A specification language for globally asynchronous locally synchronous systems (syntax and formal semantics). Research report RR-8527, INRIA
Le Guernic P, Talpin J-P, Le Lann J-C (2001) Polychrony for system design. J Circuits Syst Comput 12(03): 261–303
Milner R (1982) A calculus of communicating systems Springer, New York
Milner R (1983) Calculi for synchrony and asynchrony. Theor comput sci, 25(3): 267–310
Milner R (1989) Communication and concurrency, vol 84. Prentice Hall, New York
Malik A, Salcic Z, Roop PS, Girault A (2010) SystemJ: A GALS language for system level design. Comput Lang Syst Struct 36(4): 317–344
Mateescu R, Thivolle D (2008) A model checking language for concurrent value-passing systems. In: Proc. of FM, LNCS, Springer, Berlin pp 148–164
Miller SP, Whalen MW, O’Brien D, Heimdahl MP, Joshi A (2005) A methodology for the design and verification of globally asynchronous/locally synchronous architectures. National Aeronautics and Space Administration, Langley Research Center
Potop-Butucaru D, Caillaud B, Benveniste A (2006) Concurrency in synchronous systems. FMSD, 28(2): 111–130
Potop-Butucaru D, De Simone R, Sorel Y, Talpin J-P (2009) From concurrent multi-clock programs to deterministic asynchronous implementations. In: ACSD ’09. IEEE, pp 42–51
Plotkin GD (1981) A structural approach to operational semantics. Technical Report DAIMI FN-19, University of Aarhus
Heejong P, Avinash M, Zoran S (2015) Compiling and verifying 0SC-systemJ programs for safety-critical reactive systems. Comput Lang Syst Struct 44(PC):251–282
Ramesh S (1998) Communicating reactive state machines: design, model and implementation. In: IFAC Workshop on Distributed Computer Control Systems
Ramesh S, Sonalkar S, Dsilva V, Naveen Chandra R, Vijayalakshmi B (2004) A Toolset for Modelling and Verification of GALS Systems. In: Alur R, Peled DA (eds) Proc. of CAV, volume 3114 of LNCS, Springer, pp 506–509
Smeding G (2013) Verification of Weakly-Hard Requirements on Quasi-Synchronous Systems. Theses, Université de Grenoble
van Deursen A, Klint P, Visser J (2000) Domain-specific Languages: An Annotated Bibliography. SIGPLAN Not 35(6): 26–36
van Glabbeek RJ, Weijland WP (1996) Branching Time and Abstraction in Bisimulation Semantics. J ACM 43(3): 555–600
Author information
Authors and Affiliations
Corresponding author
Additional information
Stephan Merz, Jun Pang, and Jin Song Dong
Rights and permissions
About this article
Cite this article
Jebali, F., Lang, F. & Mateescu, R. Formal modelling and verification of GALS systems using GRL and CADP. Form Asp Comp 28, 767–804 (2016). https://doi.org/10.1007/s00165-016-0373-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-016-0373-3
Keywords
- GALS systems
- Asynchronous concurrency
- Formal description techniques
- Model-based verification
- GRL
- CADP