{"language":[{"iso":"eng"}],"article_processing_charge":"No","issue":"1","publication_status":"published","_id":"4469","date_published":"2003-01-29T00:00:00Z","acknowledgement":"The authors would like to thank R. Majumdar for implementing a prototype Giotto compiler for Lego Mindstorms robots. They would like to thank D. Derevyanko and W. Williams for building the Intel x86 robots; and E. Lee and X. Liu for help with implementing Giotto as a “model of computation” in Ptolemy II [26]. Finally, they would also like to thank M. Sanvido for his suggestions on the design of the Giotto drivers; and P. Griffiths for implementing the functionality code of the electronic throttle controller.","publist_id":"261","author":[{"orcid":"0000−0002−2985−7724","first_name":"Thomas A","full_name":"Henzinger, Thomas A","last_name":"Henzinger","id":"40876CD8-F248-11E8-B48F-1D18A9856A87"},{"last_name":"Horowitz","full_name":"Horowitz, Benjamin","first_name":"Benjamin"},{"first_name":"Christoph","full_name":"Kirsch, Christoph","last_name":"Kirsch"}],"article_type":"original","abstract":[{"lang":"eng","text":"Giotto provides an abstract programmer's model for the implementation of embedded control systems with hard real-time constraints. A typical control application consists of periodic software tasks together with a mode-switching logic for enabling and disabling tasks. Giotto specifies time-triggered sensor readings, task invocations, actuator updates, and mode switches independent of any implementation platform. Giotto can be annotated with platform constraints such as task-to-host mappings, and task and communication schedules. The annotations are directives for the Giotto compiler, but they do not alter the functionality and timing of a Giotto program. By separating the platform-independent from the platform-dependent concerns, Giotto enables a great deal of flexibility in choosing control platforms as well as a great deal of automation in the validation and synthesis of control software. The time-triggered nature of Giotto achieves timing predictability, which makes Giotto particularly suitable for safety-critical applications."}],"oa_version":"None","title":"Giotto: A time-triggered language for embedded programming","scopus_import":"1","intvolume":" 91","publisher":"IEEE","type":"journal_article","citation":{"ista":"Henzinger TA, Horowitz B, Kirsch C. 2003. Giotto: A time-triggered language for embedded programming. Proceedings of the IEEE. 91(1), 84–99.","mla":"Henzinger, Thomas A., et al. “Giotto: A Time-Triggered Language for Embedded Programming.” Proceedings of the IEEE, vol. 91, no. 1, IEEE, 2003, pp. 84–99, doi:10.1109/JPROC.2002.805825.","ama":"Henzinger TA, Horowitz B, Kirsch C. Giotto: A time-triggered language for embedded programming. Proceedings of the IEEE. 2003;91(1):84-99. doi:10.1109/JPROC.2002.805825","short":"T.A. Henzinger, B. Horowitz, C. Kirsch, Proceedings of the IEEE 91 (2003) 84–99.","apa":"Henzinger, T. A., Horowitz, B., & Kirsch, C. (2003). Giotto: A time-triggered language for embedded programming. Proceedings of the IEEE. IEEE. https://doi.org/10.1109/JPROC.2002.805825","ieee":"T. A. Henzinger, B. Horowitz, and C. Kirsch, “Giotto: A time-triggered language for embedded programming,” Proceedings of the IEEE, vol. 91, no. 1. IEEE, pp. 84–99, 2003.","chicago":"Henzinger, Thomas A, Benjamin Horowitz, and Christoph Kirsch. “Giotto: A Time-Triggered Language for Embedded Programming.” Proceedings of the IEEE. IEEE, 2003. https://doi.org/10.1109/JPROC.2002.805825."},"year":"2003","doi":"10.1109/JPROC.2002.805825","day":"29","status":"public","page":"84 - 99","user_id":"ea97e931-d5af-11eb-85d4-e6957dddbf17","volume":91,"extern":"1","date_updated":"2024-01-10T11:55:18Z","date_created":"2018-12-11T12:09:00Z","publication_identifier":{"issn":["0018-9219 "]},"quality_controlled":"1","publication":"Proceedings of the IEEE","month":"01"}