OOPS. Your Flash player is missing or outdated.Click here to update your player so you can see this content.

What's New

May 14, 2010 - New releases support aJ102/aJ200 LCD systems.
Read more...
 
Dec. 19, 2009 - Runtime maintenance release.
Read more...
 

Login

aJ-100: Real-Time Low-Power Direct Execution Microprocessor for the Java PDF Print E-mail
Overviewaj100

The aJile Systems aJ-100 is the first device in a family of single-chip microcontrollers that directly execute Java Virtual Machine (JVM) bytecodes and real-time Java threading primitives to provide efficient, real-time performance for low-power embedded applications. The native JVM bytecode implementation eliminates the typical interpreter or JIT software layers and provides the most optimal Java performance in both memory requirements and execution time. In addition, Java threading primitives (wait, yield,notify, monitor enter/exit) are implemented as extended bytecodes eliminating the need for a traditional RTOS as well. The result is extremely low executive overhead with thread-to-thread context switch times of less than 1 μsec. The aJ-100 features on-chip memory and all the I/O functions required for use in many real-time networked embedded applications. The powerful combination of direct JVM bytecode execution, direct multithreading support, and fully protected multiple JVM environments is ideal for efficient, safe, and robust execution. The aJ-100 is ideally suited for Java based Smartphones, PDAs, wireless gadgets, and real-time networked industrial controllers and sensors.

Features:

  • 32-bit Direct Execution Java Processor Core
    • Native JVM bytecode execution
    • Extended bytecodes for memory mapped peripheral access
    • IEEE-754 floating-point arithmetic
    • Writeable control store supports custom application specific instructions
  • Native Java language Threading Support
    • Hard real-time, multi-threading kernel in hardware
    • Atomic threading operations
    • Built-in deterministic scheduling queues
    • Directly supports the Real Time Specification for Java (RTSJ)
    • Thread to thread yield in less than 1μsec
    • Eliminates traditional RTOS software layer
  • Multiple JVM Manager (MJM™)
    • Supports multiple independent JVM’s
    • Brick wall time and space protection
    • External memory protection support
  • Internal 48KB RAM
    • 32KB dedicated data memory
    • 16KB microcode memory
  • Memory Controller
    • 8-bit, 16-bit or 32-bit interface
    • Eight chip selects to support ROM, Flash, SRAM, and peripheral devices
  • Dual 16550 compatible UARTs
    • 128-byte FIFO on Rx and Tx
    • Support IrDA physical layer protocol
  • Three 16-bit Timers/Counters
    • Flexible count control and counter I/O
    • Pulse Width Modulation (PWM)
    • Waveform measurement
  • Serial Peripheral Interface (SPI)
    • Master/Slave operation
    • Four external chip selects
    • Programmable transfer length
  • Five 8-bit General Purpose I/O Ports
    • I/O programmable on a per-bit basis
    • Flexible interrupt generation
  • Phase Locked Loop (PLL) and Power Management
    • Transparent CPU power down when the “run queue” is empty
    • Individual peripherals can be deactivated when not in use
    • Global clock disable with external wake-up pin
  • IEEE 1149.1 (JTAG) Interface
    • Boundary scan
    • Low-level debugger interface
    • JPDA Java Debugger Interface
  • Designed for ultra-low-power operation
    • Less than 1mW/MHz power consumption
    • Fully static operation up to 100 MHz
    • Implemented in 3.3V and 0.25μm CMOS process
    • Core operates at 2.5V
  • Housed in 176-lead LQFP packages

System Development Support
The aJ-100 processor, bundled with Sun’s J2ME/CLDC or CDC/Foundation Profile runtime system, optimizing application builder, debugging tools and evaluation board provides a complete solution for implementing real-time networked embedded Java technology enabled applications. The aJile Java runtime together with the microprogrammed real-time kernel supports the Java threading model without the need for a separate RTOS. This aJile unique technology significantly reduces memory requirements and lowers system costs. aJile’s Multiple JVM (MJM) technology enables multiple applications to execute concurrently and independently in a deterministic, timesliced schedule. Each JVM employs it’s own threading and memory management policies to enable real-time applications to execute concurrently with networked applications without the threat of GC pauses and other interruptions. The MJM capability takes the Java “sandbox” security model the next level, providing a mechanism to easily isolate applications and allocated resources. aJile’s solution enables real-time applications to run independently and safely co-exist with networked applications.

Using commercial IDEs for Java technology, application developers can create standalone real-time Java enabled applications totally in the Java language with the performance and memory efficiency of systems programmed in C and assembly. Utilizing aJile’s development systems, application developers can readily explore the features of the aJ-100 and assess the efficiency and performance of a real-time embedded Java platform. The primary components of the development and runtime environments are summarized as follows:

Optimizing Linker/Application Builder:

  • GUI based application build configuration and control tool—JEM Builder
  • Utilizes standard JVM class files generated by commercial IDEs for Java technology
  • Statically resolves class files and eliminates unused methods and fields
  • Performs bytecode optimizations
  • Performs method substitutions (method invokes replaced by extended bytecodes)
  • Builds boot tables, class initialization code, and assigns interrupt and trap handlers
  • Configures JVM's and memory layout

Java technology based Runtime System

  • Run-time environment based on a J2ME/CLDC or CDC/Foundation Profile
  • Includes networking classes, storage classes, and Java communications API
  • Device drivers for integrated peripherals and generic physical device interfacing in Java language

Application Debugging Tools

  • Host-target communications via an IEEE 1149 (JTAG) interface
  • Host-based full featured bytecode-level debugger—Charade
  • Host-based JPDA provided to interface to commercial JPDA compliant source-level debuggers

Download Product Brief (PDF 199KB)

Download Reference Manual (PDF 1.78MB) 

Download aJ-100EVB Schematics (PDF 273KB)

 
Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries
© 1999-2008 aJile Systems, Inc.