1.2 Features
The Rabbit 6000 contains an internal phase-locked loop (PLL) that is fully controlled by software and pro-
vides up to a 200 MHz clock from a 25 MHz input. Other clock options are available as well, including the
clock doubler and divider features present in earlier Rabbit devices.
The Rabbit 6000 has several powerful design features that practically eliminate EMI problems, which is
essential for OEMs who need to pass CE and regulatory radio-frequency emissions tests. The amplitude of
any electromagnetic radiation is reduced by the internal spectrum spreader, by gated clocks (which prevent
unnecessary clocking of unused registers), and by separate power planes for the processor core and I/O
pins (which reduce noise crosstalk). An external I/O bus can be used by designers to enable separate buses
for I/O and memory, or to limit loading the memory bus to reduce EMI and ground bounce problems when
interfacing external peripherals to the processor. The external I/O bus accomplishes this by duplicating the
Rabbit's data bus on Parallel Port A, and uses Parallel Port B to provide the processor's six or eight least
significant address lines for interfacing with external peripherals.
The high-performance instruction set offers both greater efficiency and execution speed of compiler-gener-
ated C code. Instructions include numerous single-byte opcodes that execute in two clock cycles, 16-bit and
32-bit loads and stores, 16-bit and 32-bit logical and arithmetic operations, 16 × 16 multiply (executes in
12 clocks), long jumps and returns for accessing a full 16 MB of memory, and one-byte prefixes to turn
memory-access instructions into internal and external I/O instructions. Hardware-supported breakpoints
ease debugging by trapping on code execution or data reads and writes.
The Rabbit 6000 requires no external memory driver or interface logic. Its 24-bit address bus, 8-bit or 16-
bit data bus, three chip-select lines, two output-enable lines, and two write-enable lines can be interfaced
directly with up to six memory devices. Up to 1 MB of code memory and 15 MB of data memory can be
accessed directly via the Dynamic C development software. The Rabbit 6000 also contains 1 MB of inter-
nal high-speed 16-bit RAM and 32 KB of battery-backed SRAM, which can be used instead of or in addi-
tion to any external memory devices.
A built-in slave port allows the Rabbit 6000 to be used as master or slave in multi-processor systems, per-
mitting separate tasks to be assigned to dedicated processors. An 8-line data port and five control signals
simplify the exchange of data between devices. A remote cold boot enables startup and programming via a
serial port, a slave port, or from a standard external serial flash device.
The Rabbit 6000 features eight 8-bit parallel ports, yielding a total of 64 digital I/O. Six CMOS-compati-
ble serial ports are available. All six are configurable as asynchronous (including output pulses in IrDA
format), while four are configurable as clocked serial (SPI) and two are configurable as SDLC/HDLC. The
various internal peripherals share the parallel port's I/O pins. Drive strength, slew rate, and pullup/pull-
down resistors can be controlled on all of the parallel ports.
The Rabbit 6000 also offers many specialized peripherals. Two input-capture channels each have a 16-bit
counter, clocked by the output of an internal timer, that can be used to capture and measure pulses. These
measurements can be extended to a variety of functions such as measuring pulse widths or for baud-rate
auto detection. Two Quadrature Decoder channels each have two inputs, as well as an 8-bit or 10-bit up/
down counter. Each Quadrature Decoder channel provides a direct interface to quadrature encoder units.
Four independent pulse-width modulator (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 con-
verter or they can be used directly to drive devices such as motors or solenoids. The Rabbit 6000 has eight
digi.com
Rabbit 6000 User's Manual
9
Need help?
Do you have a question about the 6000 and is the answer not in the manual?