A proof of the Kahn principle for input/output automata
Information and Computation
Information and Computation
A Protocol for Loosely Time-Triggered Architectures
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
About the Design of Distributed Control Systems: The Quasi-Synchronous Approach
SAFECOMP '01 Proceedings of the 20th International Conference on Computer Safety, Reliability and Security
From multi-clocked synchronous processes to latency-insensitive modules
Proceedings of the 5th ACM international conference on Embedded software
Concurrency in Synchronous Systems
Formal Methods in System Design
Theory of latency-insensitive design
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Compositional design of isochronous systems
Proceedings of the conference on Design, automation and test in Europe
Compositional design of isochronous systems
Science of Computer Programming
Hi-index | 0.00 |
As code generation for synchronous programs requires strong safety properties to be satisfied, compositionality becomes a difficult goal to achieve. Most synchronous languages, such as Esterel, Lustre or Signal require a given module or compilation unit to be insensitive to latency that communication with its environment may incur. In Lustre or Signal, for instance, a compilation unit must satisfy the so-called property of endochrony. To preserve endochrony in an asynchronous environment, an ad-hoc protocol is synthesized to interface the module. However, endochrony is not preserved by composition. Consequently, the protocol has to be rebuilt every time a new module is added in the environment. We propose a methodology and code generation scheme which simplifies this concern. It consists of weakening the global objective of globally preserving endochrony. Instead, we aim at the preservation of a more liberal and compositional objective, weak endochrony [D. Potop-Butucaru and B. Caillaud and A. Benveniste. Concurrency in Synchronous Systems. In Formal Methods in System Design, v. 28(2). Springer, March 2006], which is compositional and much closer from the expected requirement of insensitivity to communication latency. As a result, our code generation scheme supports true separate compilation: a locally compiled synchronous module does not require its synthesized interface with the environment to be rebuilt once composed with another module.