The University of Queensland UQ NavigationUQ HomeUQ SearchUQ MapsUQ ContactsUQ FAQsUQ Library
ITEE Innovation Expo 2001
  World Class: Be Part of It

Innovation Expo 2001 Image

On this site

  Head of School's Welcome
  Mayne Hall Floorplan
  Programme
  Location
  Sponsors
  Student Project List
  Prizes
  Gallery
  Acknowledgements

Quick Links

  ITEE Innovation Expo 2001

  QR CSEE Innovation Expo 2000



  Home » Student Projects » s369602

Design of a Native Embedded Java Processor

Student: Ashley John Partis

Supervisor: Dr. Adam Postula

Category: Computer Systems Engineering Thesis Project

Java

This thesis pertains to the (partial) implementation of the Java Virtual Machine (JVM) in hardware, specifically aimed at running as the single processing unit in an embedded system. The use of Java as the main programming language in an embedded solution is a fairly new concept, but one which is starting to gain pervasive widespread appeal and support. By providing a hardware Java solution, a native environment for the execution of Java classes is created which has the advantage of being faster and requiring fewer resources than a non-native Java embedded processor dependent on a Java interpreter or a JIT (Just In Time compiler).

The Java Virtual Machine for this thesis was designed in a combination of hardware and software. After investigating and breaking down the Java Virtual Machine Specification, the complex instructions and features of the JVM were selected to be implemented in software, while the remainder of the JVM to be implemented was to selected be realized in a simple non-pipelined multi-cycle stack based processor. The software element was written in the native language of the processor (Java) to be run on-chip and this, along with the rest of the JVM that was to be implemented in hardware, was modelled on an FPGA.

The final result was a (stable / tested at 24MHz) native Java processor that was essentially a scaled-down version of the Java Virtual Machine, and could run simple Java programs (classes) on-chip. For reasons of time, speed, size and complexity it became impractical to complete a full implementation. The processor supports many features of the Java Virtual Machine; however, it cannot be classified as a true or “pure” implementation of the JVM as not all of the features in the Java Virtual Machine Specification were implemented.

 

 

Poster Presentation (PDF)

Thesis Document (PDF)

feedback
©2001 The University of Queensland, Australia
ABN: 63 942 912 684
Authorised by: Secretary & Registrar
Maintained by: webmasters@itee.uq.edu.au
  Last Updated: 2 July 2001