Technologies on Display
F2 - A Low Power Asynchronous Java Processor for Contactless Smart Card
Java Card technology enables programs written in the Java programming language to run in smart cards. From software perspective, Java virtual machine defines a stack-based processor for implementing java bytecodes. Software JVM on conventional 8-bit processor can emulate the architecture. Alternatively, it is possible to design a microprocessor that can execute these bytecodes directly in order to increase the operating performance. Since there are only a few proposed designs of java processor and even less in the contactless smart card context, the processor presented here is novel. Our proposed design is a 16-bit asynchronous java processor that can directly execute some useful instructions defined in the Java Card Virtual Machine Specification with 16-bit operands including register read/write operations, arithmetic operations, logical operations and branch operations. The remaining operations including method invocation, method return, array operation and object manipulation are handled by software routines. Also, Asynchronous circuit design technique is used in order to reduce the power consumption.