Modeling and Simulation of TDL Applications

Most of the existing modeling tools and frameworks for embedded applications use levels of abstraction where execution and communication times of computational tasks are not captured. Thus, properties such as time and value determinism can be lost when refining the model closer to a target platform. The Logical Execution Time (LET) paradigm has been proposed to deal with this issue, by enabling specification of platform-independent execution times of periodic time-triggered computational tasks at higher levels of abstraction. This chapter deals with modeling and simulation of embedded applications where LET requirements are specified by using the Timing Definition Language (TDL). TDL provides a programming model for time-and event-triggered components suitable for large distributed systems. We present specific TDL extensions that increase the expressiveness of the language, accommodating the needs of control applications such as minimum sensor-actuator delays. We describe simulation of TDL programs in dataflow models (using Simulink) and discrete event (DE) models (using Ptolemy II). We show how the Ptolemy II based simulation can be used to validate preservation of timing and value behaviors when mapping a DE model of an application with concurrent components into a sequential implementation platform with fixed priority preemptive scheduling.

[1]  Thomas A. Henzinger,et al.  From control models to real-time code using Giotto , 2003 .

[2]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[3]  Thomas A. Henzinger,et al.  The embedded machine: predictable, portable real-time code , 2002, PLDI '02.

[4]  Wolfgang Pree,et al.  Simulating real-time software components based on logical execution time , 2009 .

[5]  Alberto L. Sangiovanni-Vincentelli,et al.  A hierarchical coordination language for interacting real-time tasks , 2006, EMSOFT '06.

[6]  Thomas A. Henzinger,et al.  Event-Driven Programming with Logical Execution Times , 2004, HSCC.

[7]  Edward A. Lee,et al.  Heterogeneous Concurrent Modeling and Design in Java (Volume 1: Introduction to Ptolemy II) , 2008 .

[8]  Alois Knoll,et al.  Models for automatic generation of safety-critical real-time systems , 2007, The Second International Conference on Availability, Reliability and Security (ARES'07).

[9]  J.A. Stankovic,et al.  Misconceptions about real-time computing: a serious problem for next-generation systems , 1988, Computer.

[10]  Wolfgang Pree,et al.  Visual and interactive development of hard real-time code , 2003 .

[11]  Claudiu Farcas,et al.  The TDL Advantage , 2004 .

[12]  Edward A. Lee,et al.  Heterogeneous Concurrent Modeling and Design in Java (Volume 3: Ptolemy II Domains) , 2008 .

[13]  Thomas A. Henzinger,et al.  Giotto: a time-triggered language for embedded programming , 2001, Proc. IEEE.

[14]  Thomas A. Henzinger,et al.  Hybrid Systems: Computation and Control , 1998, Lecture Notes in Computer Science.