Constructive Polychronous Systems
Abstract
The synchronous paradigm provides a logical abstraction of time for reactivesystem design which allows automatic synthesis of embedded systems that behave in a predictable, timely, and reactive manner. According to the synchronyhypothesis, a synchronous model reacts to inputs by generating outputs thatare immediately made available to the environment. While synchrony greatlysimplifies the design of complex systems in general, it can sometimes lead tocausal cycles. In these cases, constructiveness is a key property to guaranteethat the output of each reaction can still be always algorithmically determined.Polychrony deviates from perfect synchrony by using a partially ordered,i.e., a relational model of time. It encompasses the behaviors of (implicitly)multi-clocked data-flow networks of synchronous modules and can analyze andsynthesize them as GALS systems or Kahn process networks (KPNs).In this paper, we present a unified constructive semantic framework usingstructured operational semantics, which encompasses both the constructive behavior of synchronous modules and the multi-clocked behavior of polychronousnetworks. Along the way, we define the very first executable operational seman-tics of the polychronous languageSignal