张金钟, 胡平. 基于FPGA的Java指令折叠器的研究与设计[J]. 微电子学与计算机, 2011, 28(5): 166-170,175.
引用本文: 张金钟, 胡平. 基于FPGA的Java指令折叠器的研究与设计[J]. 微电子学与计算机, 2011, 28(5): 166-170,175.
ZHANG Jin-zhong, HU Ping. An Instruction Folding Solution to a Java Processor Based on FPGA[J]. Microelectronics & Computer, 2011, 28(5): 166-170,175.
Citation: ZHANG Jin-zhong, HU Ping. An Instruction Folding Solution to a Java Processor Based on FPGA[J]. Microelectronics & Computer, 2011, 28(5): 166-170,175.

基于FPGA的Java指令折叠器的研究与设计

An Instruction Folding Solution to a Java Processor Based on FPGA

  • 摘要: Java虚拟机的设计是基于堆栈的, 它的性能由数据相关性而被限制.为了提高JVM的性能, 于是sun公司提出了堆栈操作折叠机制并且用于picoJava Ⅰ、Ⅱ处理器, 它折叠了42.3%的堆栈操作.通过把连续的字节码与预先定义的类型在指令译码器中对比, 那么push、pop操作的数量就能被减少.文中为Java处理器设计了一种简单的指令折叠器, 最终在FPGA上加以实现, 从而大大地提高了JVM的性能.

     

    Abstract: The execution performance of a stack-based Java virtual machine (JVM) is limited by the true data dependency.To enhance the performance of the JVM, a stack operations folding mechanism for the picoJava-Ⅰ/Ⅱ processor was proposed by Sun Microsystems to fold 42.3% stack operations.By comparing the continuous bytecodes with predefined folding patterns in instruction decoder, the number of push/pop operations in between the operand stack and the local variable could be reduced.In this paper, a simple instruction folding algorithm is proposed for a Java processor.It is achieved on the FPGA, which greatly improve the performance of JVM.

     

/

返回文章
返回