 | 100-pin PQFP package. Operating voltage
2.7 V to 5 V. Clock speed to 30 MHz. All specifications are given for both industrial and
commercial temperature and voltage ranges. Rabbit microprocessors cost under $10 in
moderate quantities. |
 | Industrial specifications are for a
voltage variation of 10% and a temperature range from -40°C to +85°C. Commercial
specifications are for a voltage variation of 5% and a temperature range from 0°C to
70°C. |
 | 1-megabyte code space allows C programs
with up to 50,000+ lines of code. The extended Z80-style instruction set is C-friendly,
with short and fast instructions for most common C operations. |
 | Four levels of interrupt priority make a
fast interrupt response practical for critical applications. The maximum time to the first
instruction of an interrupt routine is about 1 µs at a clock speed of 25 MHz.
|
 | Access to I/O devices is accomplished by
using memory access instructions with an I/O prefix. Access to I/O devices is thus faster
and easier compared to processors with a restricted I/O instruction set. |
 | The hardware design rules are simple. Up
to six static memory chips (such as RAM and flash EPROM) connect directly to the
microprocessor with no glue logic. Even larger amounts of memory can be handled by using
parallel I/O lines as high-order address lines. The Rabbit runs with no wait states at 24
MHz with a memory having an access time of 70 ns. There are two clocks per memory access.
Most I/O devices may be connected without glue logic. |
 | The memory cycle is two clocks long. A
clean memory and I/O cycle completely avoid the possibility of tri-state fights.
Peripheral I/O devices can usually be interfaced in a glueless fashion using pins
programmable as I/O chip selects, I/O read strobes or I/O write strobe pins. A built-in
clock doubler allows ½-frequency crystals to be used to reduce radiated emissions.
|
 | The Rabbit may be cold-booted via a
serial port or the parallel access slave port. This means that flash program memory may be
soldered in unprogrammed, and can be reprogrammed at any time without any assumption of an
existing program or bios. A Rabbit that is slaved to a master processor can operate
entirely with volatile RAM, depending on the master for a cold program boot. |
 | There are 40 parallel I/O lines (shared
with serial ports). Some I/O lines are timer synchronized, which permits precisely timed
edges and pulses to be generated under combined hardware and software control. |
 | There are four serial ports. All four
serial ports can operate asynchronously in a variety of customary operating modes; two of
the ports can also be operated synchronously to interface with serial I/O devices. The
baud rates can be very high--1/32 the clock speed for asynchronous operation and 1/8 the
clock speed in synchronous mode. In asynchronous mode, the Rabbit, like the Z180, supports
sending flagged bytes to mark the start of a message frame. The flagged bytes have 9 data
bits rather than 8 data bits; the extra bit is located after the first 8 bits, where the
stop bit is normally located, and marks the start of a message frame. |
 | A slave port allows the Rabbit to be used
as an intelligent peripheral device slaved to a master processor. The 8-bit slave port has
six 8-bit registers, 3 for each direction of communication. Independent strobes and
interrupts are used to control the slave port in both directions. Only a Rabbit and a RAM
chip are needed to construct a complete slave system if the clock and reset are shared
with the master processor |
 | The built-in battery-backable time/date
clock uses an external 32.768 kHz crystal. The time/date clock can also be used to provide
periodic interrupts every 488 µs. Typical battery current consumption is 25 µA with
the suggested battery circuit. An alternative circuit provides means for substantially
reducing this current. |
 | Numerous timers and counters (six all
together) can be used to generate interrupts, baud rate clocks, and timing for pulse
generation. |
 | The built-in main clock oscillator uses
an external crystal or more usually a ceramic resonator. Typical resonator frequencies are
in the rang eof 1.8 MHz to 29.5 MHz. Since precision timing is available from the separate
32.768 kHz oscillator, a low-cost ceramic resonator with ½ percent error is generally
satisfactory. The clock can be doubled or divided by 8 to modify speed and power
dynamically. The I/O clock, which clocks the serial ports, is dividedseparately so as not
to affect baud rates and timers when the processor clock is divided or multiplied. For
ultra low power operation, the processor clock can be driven from the separate
32.768 kHz oscillator and the main oscillator can be powered down. This allows the
processor to operate at approximately 100 µA and still execute instructions at the rate
of approximately 10,000 instructions per second. This is a powerful alternative to sleep
modes of operation used by other processors. The current is approximately 65 mA at 25 MHz
and 5 V. The current is proportional to voltage and clock speed--at 3.3 V and 7.68 MHz the
current would be 13 mA, and at 1 MHz the current is reduced to less than 2 mA. Flash
memory with automatic power down (from AMD) should be used for operation at the lowest
power. |
 | The excellent floating-point performance
is due to a tightly coded library and powerful processing capability. For example, a 25
MHz clock takes 14 µs for a floating add, 13 µs for a multiply, and 40 µs for a square
root. In comparison, a 386EX processor running with an 8-bit bus at 25 MHz and using
Borland C is about 10 times slower. |
 | There is a built-in watchdog timer.
|
 | The standard 10-pin programming port
eliminates the need for in-circuit emulators. A very simple 10 pin connector can be used
to download and debug software using Z-World's Dynamic C and a simple connection to a PC
serial port. The incremental cost of the programming port is extremely small. |