Real-time and synchronous programming.- Generalities on Real-Time Programming.- Synchronous Programming: Overview.- Elementary concepts and notations of SIGNAL.- Basics: Signals and Relations.- Programming Units: Processes.- Extended Constructs.- Design in P: First Steps.- Formal properties of SIGNAL programs.- Formal Semantics.- Formal Model for Program Analysis.- Compilation of Programs.- Advanced design in SIGNAL.- Advanced Design Concepts.- GALS System Design.- Design Patterns.- A Synchronization Example Design with P.
I am very pleased to play even a small part in the publication of this book on the SIGNAL language and its environment POLYCHRONY. I am sure it will be a s- ni?cant milestone in the development of the SIGNAL language, of synchronous computing in general, and of the data?ow approach to computation. In data?ow, the computation takes place in a producer-consumer network of - dependent processing stations. Data travels in streams and is transformed as these streams pass through the processing stations (often called ?lters). Data?ow is an attractive model for many reasons, not least because it corresponds to the way p- duction,transportation,andcommunicationare typicallyorganizedin the real world (outside cyberspace). I myself stumbled into data?ow almost against my will. In the mid-1970s, Ed Ashcroft and I set out to design a "super" structured programming language that, we hoped, would radically simplify proving assertions about programs. In the end, we decided that it had to be declarative. However, we also were determined that iterative algorithms could be expressed directly, without circumlocutions such as the use of a tail-recursive function. The language that resulted, which we named LUCID, was much less traditional then we would have liked. LUCID statements are equations in a kind of executable temporallogic thatspecifythe (time)sequencesof variablesinvolvedin aniteration.
Presents the best pedagogical illustration of embedded system design with a synchronous programming language
Offers a language and analysis techniques for the design of multi-clocked embedded systems
Describes a formal specification language that provides users with design and analysis tools to guarantee the reliability of safety-critical, embedded systems
Enables "correct-by-construction" designs for modern embedded systems, built on multiprocessor architectures