Investigating hardware micro-instruction folding in a Java embedded processor
Author(s) -
Flavius Gruian,
Mark Westmijze
Publication year - 2010
Publication title -
lund university publications (lund university)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/1850771.1850787
Subject(s) - computer science , folding (dsp implementation) , bytecode , java , field programmable gate array , parallel computing , computer hardware , embedded system , computer architecture , operating system , electrical engineering , engineering
Bytecode folding is an effective technique for speeding up execution in Java virtual machines. This paper investigates a hardware implementation of the aforementioned technique on BlueJEP, a Java embedded processor. Since BlueJEP is a micro-programmed stack machine, we adopt a micro-instruction oriented approach, folding up to four microinstructions (corresponding to up to four bytecodes, on occasion). A variety of processor versions for different subsets of folding patterns are implemented, simulated and synthesized on a Xilinx FPGA. The measurements and results show that, although the number of execution cycles is reduced, the critical path increase leads to a lower performance. Taking into account the device area, we conclude that for our case, adding a second processor may be preferred over hardware folding. In general, we observe that folding efficiency may only be evaluated properly on a real implementation, rather than using theoretical estimates, due to the increased complexity of the hardware.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom