ABSTRACT
Giotto is a principled, tool-supported design methodology for implementing embedded control systems on platforms of possibly distributed sensors, actuators, CPUs, and networks. Giotto is based on the principle that time-triggered task invocations plus time-triggered mode switches can form the abstract essence of programming real-time control systems. Giotto consists of a programming language with a formal semantics, and a retargetable compiler and runtime library. Giotto supports the automation of control system design by strictly separating platform-independent functionality and timing concerns from platform-dependent scheduling and communication issues. The time-triggered predictability of Giotto makes it particularly suitable for safety-critical applications with hard real-time constraints. We illustrate the platform-independence and time-triggered execution of Giotto by coordinating a heterogeneous flock of Intel x86 robots and Lego Mindstorms robots.
- 1.A. Benveniste, P. L. Guernic, and C. Jacquemot. Synchronous programming with events and relations: the SIGNAL language and its semantics. Science of Computer Programming, 16(2):103-149, September 1991.]] Google ScholarDigital Library
- 2.G. Berry. The foundations of Esterel. In C. S. G. Plotkin and M. Tofte, editors, Proof, Language and Interaction: Essays in Honour of Robin Milner. MIT Press, 2000.]] Google ScholarDigital Library
- 3.P. Clements. A survey of architecture description languages. In Proc. 8th International Workshop on Software Specification and Design, 1996.]] Google ScholarDigital Library
- 4.J. Davis, M. Goel, C. Hylands, B. Kienhuis, E. Lee, J. Liu, X. Liu, L. Muliadi, S. Neuendorffer, J. Reekie, N. Smyth, J. Tsay, and Y. Xiong. Ptolemy II: Heterogeneous concurrent modeling and design in Java. Technical Report UCB/ERL M99/44, University of California, Berkeley, CA, July 1999.]]Google Scholar
- 5.N. Halbwachs. Synchronous Programming of Reactive Systems. Kluwer, 1993.]] Google ScholarDigital Library
- 6.N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous data ow programming language Lustre. Proceedings of the IEEE, 79(9), 1991.]]Google ScholarCross Ref
- 7.T. Henzinger. Masaccio: A formal model for embedded components. In Proc. First IFIP International Conference on Theoretical Computer Science, LNCS 1872, pages 549-563. Springer-Verlag, 2000.]] Google ScholarDigital Library
- 8.T. Henzinger, B. Horowitz, and C. Kirsch. Giotto: A time-triggered language for embedded programming. Technical Report UCB//CSD-00-1121, University of California, Berkeley, 2000. Available at: www.eecs.berkeley.edu/cfresco/giotto.]] Google ScholarDigital Library
- 9.H. Kopetz. Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer, 1997.]] Google ScholarDigital Library
- 10.Y. Li and S. Malik. Performance analysis of embedded software using implicit path enumeration. ACM SIGPLAN Notices, 30(11):88-98, 1995.]] Google ScholarDigital Library
- 11.H. Theiling, C. Ferdinand, and R. Wilhelm. Fast and precise WCET prediction by separated cache and path analyses. Time-Critical Computing Systems, pages 157-179, 2000.]] Google ScholarDigital Library
- 12.S. Vestal. MetaH support for real-time multi-processor avionics. In Proc. Joint Workshop on Parallel and Distributed Real-Time Systems, pages 11-21, 1997.]] Google ScholarDigital Library
Index Terms
- Embedded Control Systems Development with Giotto
Recommendations
Embedded Control Systems Development with Giotto
LCTES '01: Proceedings of the ACM SIGPLAN workshop on Languages, compilers and tools for embedded systemsGiotto is a principled, tool-supported design methodology for implementing embedded control systems on platforms of possibly distributed sensors, actuators, CPUs, and networks. Giotto is based on the principle that time-triggered task invocations plus ...
Embedded Control Systems Development with Giotto
Giotto is a principled, tool-supported design methodology for implementing embedded control systems on platforms of possibly distributed sensors, actuators, CPUs, and networks. Giotto is based on the principle that time-triggered task invocations plus ...
Verification of Giotto based embedded control systems
An implementation of a control system design may not preserve the functional and timing requirements of the application. Our goal is to verify that an implementation meets the high-level timing and functional specifications of a control application. We ...
Comments