|
|||||
ARM adds Java extensions to ARM9 core
ARM adds Java extensions to ARM9 core LONDON ARM Ltd. will add extensions to its processor architecture that will allow the direct execution of Java byte code. The company will describe the extensions to its ARM9 instruction set in a presentation Wednesday (Oct. 11) at the Microprocessor Forum. While other processor vendors have opted to develop dedicated Java processors or a separate Java coprocessor, ARM is using an integrated approach that will run the extensions on a single conventional ARM CPU pipeline. Called Jazelle, the Java extensions are applied in a manner similar to the way Thumb extensions allow a 16-bit ARM instruction set to be executed on the 32-bit ARM pipeline. "In effect it is a another instruction set which executes Java byte code," said David Cormie, product marketing manager for ARM. The company claims the approach is optimal for running Java as well as legacy software with near best-in-class performance and with a minimal need for extra memory. According to ARM simulations, Jazelle-enabled devices surpass a performance level of 1,000 CaffeineMarks in a typical 200-MHz implementation and enhance performance by a factor of eight over a Java Virtual Machine running on the same processor without Jazelle. Using a CaffeineMarks per megahertz measure, ARM said its benchmarks showed the accelerated ARM9 at 5.4, considerably ahead of the 2.9 CaffeineMarks/MHz score for the aJ-100, a dedicated Java processor of Ajile Systems Inc., and the 2.87 score for the combination MIPS R3000 processor plus Jstar Java coprocessor. "ARM's Jazelle extension offers its partners good Java performance with little added cost or power," said Linley Gwennap, founder and principal analyst of The Linley Group. "Standard processors will not be able to keep up with the Jazelle technology without an expensive and power-hungry coprocessor. This extension is ideal for next-generation wireless devices with Java capabilities." As with the Thumb extensions, an ARM processor core requires a Jazelle instruction decoder between the instruction cache and the CPU pipeline. But unlike Thumb, there is not a direct mapping of instructions to the ARM instruction set. About 80-to-90 percent of Java instructions will map to single-cycle ARM instructions, and the remainder are trapped as exceptions and translated into multiple ARM instructions and operations via roughly 8 kbytes of microcode memory. Cormie said very little had been done to the ARM9's pipeline, although the processor does use the first four general purpose registers as the Java Virtual Machine's stack when in Java mode. Cormie said Jazelle requires 12,000 additional gates for instruction decode, 8 kbytes of ROM for exception handling, and therefore supports Java with very small additional die area or power consumption overhead. Alternative approaches include software emulation, which can be memory efficient but of limited performance, or just-in-time compilation of Java code, which produces good performan ce but uses 100 kbytes of code for the compiler and is not suitable for real-time applications. The only change to the ARM9 architecture, Cormie said, is the assignment of bit 24 in the current program status register. When the bit is set to "1," the processor enters Java mode and reads instruction words as Java instructions, rather than as ARM instructions. "It's a synthesizable design but we're aiming to get 200-MHz in a 0.18-micron process technology," said Cormie. Cormie said ARM was working with two partners to bring up an ARM9EJ processor core that would support DSP extensions for additional direct multiplication and Java byte-code execution. "We're tying up with third parties for Java compilers," said Cormie, but he declined to name who would offer these. "We're also working on a debug environment for mixed C, C++ and Java development and supporting that through the multitrace capability scan chain. We'll be rolling tools out towards the end of the year," he said. ARM's Java road map indicates that those tools will be available in the first quarter of 2001. From there, ARM intends to apply Java extensions to its ARM7 core by about the third quarter of 2001, and to the higher-performing ARM10 by the first quarter of 2002.
|
Home | Feedback | Register | Site Map |
All material on this site Copyright © 2017 Design And Reuse S.A. All rights reserved. |