Communicating sequential processes
Communicating sequential processes
Communicating reactive processes
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Bounded scheduling of process networks
Bounded scheduling of process networks
Reuse methodology manual: for system-on-a-chip designs
Reuse methodology manual: for system-on-a-chip designs
Modeling reactive systems in Java
ACM Transactions on Design Automation of Electronic Systems (TODAES)
The sugarCubes tool box: a reactive Java framework
Software—Practice & Experience
ECL: a specification environment for system-level design
Proceedings of the 36th annual ACM/IEEE Design Automation Conference
System Design with SystemC
IEEE Transactions on Software Engineering
Modeling VHDL in Multiclock ESTEREL
VLSID '00 Proceedings of the 13th International Conference on VLSI Design
ReactiveML: a reactive extension to ML
PPDP '05 Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming
Computer
Modeling Embedded Systems: From SystemC and Esterel to DFCharts
IEEE Design & Test
Scheduling-independent threads and exceptions in SHIM
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
SystemJ compilation using the tandem virtual machine approach
ACM Transactions on Design Automation of Electronic Systems (TODAES)
A tool supported engineering process for developing control applications
Computers in Industry
SHIM: a deterministic model for heterogeneous embedded systems
IEEE Transactions on Very Large Scale Integration (VLSI) Systems
Esterel v7: from verified formal specification to efficient industrial designs
FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
An Esterel compiler for large control-dominated systems
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
GALS-Designer: A design framework for GALS software systems
ACM Transactions on Design Automation of Electronic Systems (TODAES)
System-level approach to the design of a smart distributed surveillance system using systemj
ACM Transactions on Embedded Computing Systems (TECS)
GALS-HMP: A heterogeneous multiprocessor for embedded applications
ACM Transactions on Embedded Computing Systems (TECS) - Special section on ESTIMedia'12, LCTES'11, rigorous embedded systems design, and multiprocessor system-on-chip for cyber-physical systems
GALS-CMP: chip-multiprocessor for GALS embedded systems
ARCS'13 Proceedings of the 26th international conference on Architecture of Computing Systems
Hi-index | 0.00 |
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.