Fixed Logical Execution Time Language

Language Report
xGiotto is an extension of the programming language Giotto. Giotto was developed essentially for embedded systems with a periodical control, as example for implementing an autopilot system for a model helicopter. In particular Giotto focused on the strict separation of timing and functionality. The timing allowed to simplify the temporal behavior analysis, necessary to prove system safety and reactivity. Discerning the timing and functionality, exposed the functionality and made it more tractable and analyzable in respect of execution times analysis.

xGiotto builds on top of Giotto in the sense that the strict separation of timing and functionality is respected and even made more clear at the syntactical level. In Giotto the functionality  was explicitly external to the Giotto program, as opposed by xGiotto where the functionality is expressed in the programm itself. This makes an xGiotto program self contained.

Another key aspect made more clear in xGiotto is the fixed logical execution time of a task. The logical execution time of a task is specified in the program and therefore made independent from the executing platform. This makes the timing behavior of a xGiotto program platform-independent and deterministic. Therefore, we shift the role of guaranteeing the timing behavior of a program from the programmer to the compiler. The compiler will map the program to a given platform only if the platform will guarantee its logical execution time.

Department of EECS, UC Berkeley - Comments to:,Copyright 1999-2003     

©2002-2018 U.C. Regents