Title :
Virtualization of heterogeneous machines
Author :
Auerbach, Joshua ; Bacon, David F. ; Cheng, Perry ; Rabbah, Rodric ; Shukla, Sunil
Abstract :
Lime is a new Java-compatible and object-oriented language designed to make programming of reconfigurable hardware significantly more accessible to skilled software developers. Lime programs may run either in software (via Java bytecodes) or in hardware (via behavioral and logic synthesis). This paper illustrates the salient synthesis-oriented features of the language using a photomosaic algorithm with inherent bit, pipeline, and data parallelism. The result is a virtual machine abstraction that extends across a heterogeneous architecture comprising a CPU, FPGA, and other computational structures.
Keywords :
Java; field programmable gate arrays; reconfigurable architectures; virtual machines; CPU; FPGA; Java-compatible; Lime programs; heterogeneous machine virtualization; object-oriented language; photomosaic algorithm; reconfigurable hardware; virtual machine abstraction; Field programmable gate arrays; Hardware; Hardware design languages; Libraries; Parallel processing; Reactive power; Tiles; FPGA; functional programming; high level synthesis; object oriented; reconfigurable architecture; streaming; value type;
Conference_Titel :
Design Automation Conference (DAC), 2011 48th ACM/EDAC/IEEE
Conference_Location :
New York, NY
Print_ISBN :
978-1-4503-0636-2