FPGA Implementation of a Statically Reconfigurable Java Environment for Embedded Systems

A demand for low power and high performance Java environments is now growing in the embedded systems field. One approach is dedicated Java processors which directly execute Java bytecode. We have proposed a novel reconfigurable Java environment which consists of a general purpose core processor with configurable bytecode processing units, a bytecode compiler, and a software Java Virtual Machine (JVM). This paper discusses design of a memory system for the reconfigurable Java architecture focusing on a hardware custom stack. Empirical evaluation using prototype systems reveals that adding a 2-word hardware stack shows the best results, achieving the performance enhancement of up to 15.9% compared to software execution.

[1]  Martin Schoeberl,et al.  Evaluation of a Java Processor , 2005 .

[2]  Lung-Chung Chang,et al.  Instruction folding in Java processor , 1997, Proceedings 1997 International Conference on Parallel and Distributed Systems.

[3]  Sascha Uhrig,et al.  Real-time event-handling and scheduling on a multithreaded Java microcontroller , 2003, Microprocess. Microsystems.

[4]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .