ETC 20-668-0011

Rabbit 3000 Microprocessor
Low EMI, High Performance
The new Rabbit 3000 is a high-performance, low-EMI microprocessor designed specifically for embedded control, communications, and Ethernet
connectivity. The 8-bit Rabbit 3000 outperforms most 16–bit processors without losing the efficiency of an 8–bit architecture. Extensive integrated
features and glueless architecture facilitate rapid hardware design, while a C-friendly instruction set promotes efficient development of even the most
complex applications.
The Rabbit 3000 is fast, running at up to 55.5 MHz, with compact code and direct software support for 1 MB of code/data space. Typically operating
at 3.3 V (with 5 V tolerant I/O), the Rabbit 3000 boasts 6 serial ports with IrDA, 56+ digital I/O, quadrature decoder, PWM outputs, and pulse capture
and measurement capabilities. It also features a battery-backable real-time clock, glueless memory and I/O interfacing, and ultra-low power modes.
4 levels of interrupt priority allow fast response to real-time events. Its compact instruction set and high clock speeds give the Rabbit 3000
exceptionally fast math, logic, and I/O performance.
Rabbit 3000 Features
The Rabbit 3000 has several powerful design features that practically eliminate
EMI problems (typically <10 dB µV/m @ 3 m), which is essential for OEMs that
need to pass CE and regulatory RF emissions tests. The amplitude of EM
radiation is reduced by up to 25 dB µV by the internal spectrum spreader,
gated clocks to prevent unnecessary clocking of unused registers, and
separate power pins for the processor core and I/O. An auxiliary I/O bus can
be used by designers to enable separate buses for I/O and memory or to limit
memory bus loading to reduce EMI and ground bounce problems when
interfacing external peripherals to the processor. The auxiliary I/O bus
accomplishes this by mirroring the Rabbit's data bus on Port A and uses Port B
to provide the processor's 6 least significant address lines for interfacing with
external peripherals.
The high-performance instruction set offers both greater efficiency and
execution speed of compiler-generated C code. Instructions include numerous
single-byte opcodes that execute in two clock cycles, 16-bit loads and stores,
16-bit logical and arithmetic operations, 16 x 16 multiply (executes in 12
clocks), long jumps and returns for accessing a full megabyte of memory, and
one byte prefixes to turn memory access instructions into internal and external
I/O instructions.
The Rabbit 3000 requires no external memory driver or interface-logic. Its 20-bit address bus, 8-bit data bus, 3 chip select lines, 2 output-enable
lines, and 2 write-enable lines can be directly interfaced with up to 6 Flash/SRAM devices. Up to 1 MB of memory can be accessed directly via the
Dynamic C development software, and up to 6 MB can be interfaced with additional software development. A built-in slave port allows the Rabbit
3000 to be used as master or slave in multi-processor systems, permitting separate tasks to be assigned to dedicated processors. An 8-line data
port and 5 control signals simplify the exchange of data between devices. A remote cold boot enables startup and programming via a serial or the
slave port.
The Rabbit 3000 features seven 8-bit parallel ports, yielding a total of 56 digital I/O. Six CMOS-compatible serial ports are available. All 6 are
configurable as asynchronous (also as IrDA), while 4 are configurable as clocked serial (SPI) and 2 as SDLC/HDLC. The Rabbit 3000 also offers
alternate I/O functions. Pulse capture and measurement-2 input capture channels each have a 16-bit counter, clocked by the output of an internal
timer. These channels can be used for a variety of functions, such as pulse width measurement or serial baud-rate detection. 2 quadrature decoder
channels each have 2 inputs, as well as an 8-bit up-down counter. Each channel provides a direct interface to optical encoder units. 4 independent
PWM outputs, each based on a 1024 pulse frame, are driven by the output of a programmable internal timer. The PWM outputs can be filtered to
create a 10-bit D/A converter or used to directly drive devices such as motors or solenoids.
Programming the Rabbit 3000
The Rabbit 3000 is programmed using the industry-proven Dynamic C® software development system-an integrated C compiler, editor, loader, and
debugger created specifically for Rabbit-based systems. Developing software with Dynamic C is easy. Users can write, compile, and test both C and
Assembly code without leaving the Dynamic C development environment, and no costly in-circuit emulators are required. Full TCP/IP stack with
source code is provided royalty free in Dynamic C and with our Development Kits. TCP/IP support includes PPP and SNMP, socket-level TCP and
Rabbit 3000 Specifications and Features
Package Size
128-pin LQFP
128-ball TFBGA
16 x 16 x 1.5 mm
10 x 10 x 1.2 mm
Operating Voltage
1.8 – 3.6 V DC (5 V tolerant)
Operating Current
2 mA/MHz @ 3.3 V
Operating Temp.
-55°C to +85°C
Maximum Clock Speed
Digital I/O
55.5 MHz
56+ (arranged in seven 8-bit ports)
Serial Ports
6 CMOS-compatible
Baud Rate
Clock speed/8 max asynchronous
Address Bus
Data Bus
Real-Time Clock
RTC Oscillator Circuitry
Clock Modes
Power Down Modes
Auxiliary I/O Bus
Ten 8-bit and one 10-bit with 2 match registers
Yes, battery backable
1x, 2x, /2, /3, /4, /6, /8
Sleepy (32 kHz)
Ultra-Sleepy (16, 8, 2 kHz)
8 data, 6 address lines