Java Technology in an FPGA
The application of Field Programmable Gate Arrays (FPGA) has moved from simple glue logic to complete systems. The potential for FPGA use in embedded systems is steadily increasing continuously opening up new application areas. Low cost FPGA devices are available in logic densities where the CPU with necessary peripheral device can be integrated in a single device. Java, with its pragmatic approach to object orientation and enhancements over C, got very popular for desktop and server application development. Some features of Java, such as thread support in the language, could greatly simplify development of embedded systems. However, due to resource constraints in embedded systems, the common implementations of the Java Virtual Machine (JVM), as interpreter or just-in-time compiler, are not practical. This paper describes an alternative approach: JOP (a Java Optimized Processor) is a hardware implementation of the JVM with short and predictable execution time of most bytecodes. JOP is implemented as a configurable soft core in an FPGA. With JOP it is possible to develop applications in pure Java on resource constraint devices.
KeywordsEmbed System Field Programmable Gate Array Pipeline Stage Java Virtual Machine Field Programmable Gate Array Implementation
Unable to display preview. Download preview PDF.
- 1.Altera Corporation. Cyclone FPGA Family, Data Sheet, ver. 1.2 (April 2003)Google Scholar
- 2.Altera Corporation. Nios Soft Core Embedded Processor, Data Sheet, ver. 1 (June 2000)Google Scholar
- 3.Lindholm, T., Yellin, F.: The Java Virtual Machine Specification, 2nd edn. Addison Wesley, Reading (1999)Google Scholar
- 4.Schoeberl, M.: JOP - a Java Optimized Processor, http://www.jopdesign.com
- 5.Sun microsystems. picoJava-II Processor Core, Data Sheet (April 1999)Google Scholar
- 6.Xilinx Corporation. Lightfoot 32-bit Java Processor Core, Data Sheet (September 2001)Google Scholar