本文提出了一种基于硬件抽象机的动态翻译技术,它可用于实现Java处理器.该技术采用了硬件抽象机的"模糊执行"(HAM)方法,通过分析Java程序之间的相关性,动态地将Java字节码转换成基于标签的类RISC指令.然后,将堆栈折叠与动态翻译相结合进一步优化指令.应用该技术设计了一个Java指令级并行处理器,并且扩展它,支持Java多线程功能.
Binary Translation is a migration technique that allows software to run on other machines achieving near native code performance.The paper proposed an Abstract machine based dynamic translation technique in Java processors.The technique employs the "mock execution" of the hardware Abstract machine(HAM) to identify and analyze the dependency among Java programs,dynamically translate Java bytecode into tag-based RISC-like instructions.After that,stack folding is combined with the technique to further optimize translated instructions.With the technique,we design a Java ILP processor and extend the processor to support Java multithreading.