XGIOTTO is a domain specific language for the implementation of embedded software applications with hard temporal constraints. The language is an extension of the original GIOTTO language. In this report we present the XGIOTTO tool chain, composed of the compiler and a specialized virtual machine, Embedded Virtual Machine (EVM). The compiler checks for determinism (absence of races) and time safety (schedulability within logical execution times) and generates code for EVM. The EVM integrates an event filter (which handles aperiodic asynchronous events and event scoping) and a modified Embedded Machine. The report presents the instruction set and the operational semantics of the virtual machine. The report also presents event calculus which is used to extend expressiveness of XGIOTTO. The report concludes with a case study of implementing an automotive engine controller.
A Preliminary Report on the Embedded Virtual Machine
Full Collection Name
Electrical Engineering & Computer Sciences Technical Reports
The Engineering Library
Researchers may make free and open use of the UC Berkeley Library’s digitized public domain materials. However, some materials in our online collections may be protected by U.S. copyright law (Title 17, U.S.C.). Use or reproduction of materials protected by copyright beyond that allowed by fair use (Title 17, U.S.C. § 107) requires permission from the copyright owners. The use or reproduction of some materials may also be restricted by terms of University of California gift or purchase agreements, privacy and publicity rights, or trademark law. Responsibility for determining rights status and permissibility of any use or reproduction rests exclusively with the researcher. To learn more or make inquiries, please see our permissions policies (https://www.lib.berkeley.edu/about/permissions-policies).