Skip to Main content Skip to Navigation
Journal articles

SystemJ: A GALS Language for System Level Design

Abstract : In this paper we present the syntax, semantics, and compilation of a new system-level programming language called SystemJ. SystemJ is a multiclock language supporting the Globally Asynchronous Locally Synchronous (GALS) model of computation. The synchronous reactive (SR) model is used for synchronous parts of the modelled system, and those parts, which represent individual clock-domains, are coupled asynchronously each to the other on the top-level of system design. SystemJ is based on Java language, which is used to describe ''instantaneous'' data transformations. Hence, SystemJ is well suited for both software-based embedded and distributed systems. SystemJ offers effective modelling of (1) data transformations through the power of Java, (2) control and synchronous concurrency through the SR paradigm and (3) asynchronous concurrency through clock domains and rendezvous. The language is based on semantics that is amenable to efficient code generation and partial automatic verification. The SystemJ micro-step semantics provide asynchronous and synchronous extensions over the semantics of other SR languages such as Esterel and provide an ideal platform for efficient software implementation.
Document type :
Journal articles
Complete list of metadata
Contributor : Alain Girault Connect in order to contact the contributor
Submitted on : Monday, November 19, 2012 - 12:08:29 PM
Last modification on : Tuesday, August 2, 2022 - 4:24:21 AM



Avinash Malik, Zoran Salcic, Partha Roop, Alain Girault. SystemJ: A GALS Language for System Level Design. Computer Languages, Systems and Structures, Elsevier, 2010, 36 (4), pp.317--344. ⟨10.1016/⟩. ⟨hal-00753512⟩



Record views