Date of Award

Fall 12-2012

Degree Type


Degree Name

Doctor of Philosophy (PhD)




Computing Sciences and Computer Engineering

Committee Chair

Ray Seyfarth

Committee Chair Department


Committee Member 2

Andrew Strelzoff

Committee Member 2 Department


Committee Member 3

Chaoyang Zhang

Committee Member 3 Department


Committee Member 4

Beddhu Murali

Committee Member 4 Department


Committee Member 5

Ras Pandey

Committee Member 5 Department

Physics and Astronomy


Real-time systems require stringent requirements both on the processor and the software application. The primary concern is speed and the predictability of execution times. In all real-time applications the developer must identify and calculate the worst case execution times (WCET) of their software. In almost all cases the processor design complexity impacts the analysis when calculating the WCET. Design features which impact this analysis include cache and instruction pipelining. With both cache and pipelining the time taken for a particular instruction can vary depending on cache and pipeline contents. When calculating the WCET the developer must ignore the speed advantages from these enhancements and use the normal instruction timings.

This investigation is about a Java processor targeted to run within an FPGA environment (Java soft chip) supporting Java real-time applications. The investigation focuses on a simple processor design that allows simple analysis of WCET. The processor design has no cache and no instruction pipeline enhancements yet achieves higher performance than existing designs with these enhancements.

The investigation centers on a process that translates Java byte codes and folds these translated codes into a modified Harvard Micro Controller (HMC). The modifications include better alignment with the application code and take advantage of the FPGA’s parallel capability. A prototyped ontology is used where the top level categories defined by Sowa are expanded to support the process.

The proposed HMC and process are used to produce investigation results. Performance testing using the Sobel edge detection algorithm is used to compare the results with the only Java processor claiming real-time abilities.