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. 2/17/2005 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 UDP, FTP, TFTP, HTTP (w/ SSI and CGI), DHCP, SMTP, POP3, and PING. Rabbit 3000 Specifications and Features Packaging 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 20-bit Data Bus 8-bit Timers Real-Time Clock RTC Oscillator Circuitry Watchdog Timer/Supervisor Clock Modes Power Down Modes Auxiliary I/O Bus Ten 8-bit and one 10-bit with 2 match registers Yes, battery backable External Yes 1x, 2x, /2, /3, /4, /6, /8 Sleepy (32 kHz) Ultra-Sleepy (16, 8, 2 kHz) 8 data, 6 address lines 2/17/2005