Application of Programming Temporally Integrated Distributed Embedded Systems

Yang Zhao,Edward A. Lee,Jie Liu
2006-01-01
Abstract:The introduction of network time protocols such as NTP (at a coarse granularity) and IEEE 1588 (at a fine granularity) gives a relatively consistent global notion of time that has the potential to significantly change how we design distributed real-time systems. In (4), we present a programming model called PTIDES (Programming Temporally Integrated Distributed Embedded Systems) that uses discrete-event (DE) models as programming specifications for distributed real-time systems and describe an execution model that permits out of order processing of events without sacrificing determinacy and without requiring backtracking. In this paper, we present an interesting networked camera application programmed using PTIDES and show how the execution model in (4) can be used to meet real-time constrains in the system. I. INTRODUCTION The introduction of network time protocols such as NTP (at a coarse granularity) and IEEE 1588 (at a fine granularity) gives a relatively consistent global notion of time that has the potential to significantly change how we design distributed real-time systems. Time synchronization over standard networks, such as provided by NTP (3), can achieve timing precision within ten milliseconds, which is sufficient for many interactive distributed systems, such as computer games, where human-scale time precision is adequate. The recent standardization (IEEE 15881) of high-precision timing synchronization over ethernet provides much higher timing precision that is essential for many embedded systems. Implementations of IEEE 1588 have demonstrated time synchronization as precise as tens of nanoseconds over networks that cover hundreds of meters, more than adequate for many manufacturing, instrumentation, and vehicular control systems. In (4), we present a programming model called PTIDES (Programming Temporally Integrated Dis- tributed Embedded Systems) that leverages time synchronization over distributed platforms. PTIDES uses discrete-event models as programming specifications for distributed real-time systems and extends discrete- event models with the capability of mapping certain events to physical time. We use model time to define execution semantics and add constraints that bind certain model time events to physical time. We limit the relationship of model time to physical time to only those circumstances where this relationship is needed. A correct execution will simply obey the ordering constraints implied by model time and meet the constraints on events that are bound to physical time. We then seek execution strategies that can preserve the deterministic behaviors specified in DE models and also provide efficient real-time executions without paying the penalty of totally ordered executions. The key idea is that events only need to be processed in time-stamp order when they are causally related. An execution model that permits out of order processing of events without sacrificing determinacy and without requiring backtracking is described in (4). The formal foundation is based on the concepts of relevant dependency and relevant order. The results are particularly valuable in time-synchronized distributed systems, since we can take advantage of the globally consistent notion of time as a coordination channel. Based on relevant orders, we can statically analyze
What problem does this paper attempt to address?