An Esterel Virtual Machine for Embedded Systems
Becky Plummer, Mukul Khajanchi, Stephen A. Edwards · 2006
Embedded systems often suffer from severe resource constraints such as limited memory for programs and data. In this work, we address the problem of compiling the Esterel synchronous language for processors with such constraints. We introduce a virtual machine that executes a compact bytecode designed specifically for executing Esterel and present a compiler for it. Our technique generates code that is roughly half the size of optimized C code compiled using existing techniques. We demonstrate the utility of our approach on the Lego RCX controller for the Mindstorms system. While we are not the first to execute Esterel on the RCX, our technique will allow larger programs than were previously possible.