||This article contains content that is written like an advertisement. (October 2013)|
The Rabbit 2000 is a high-performance 8-bit microcontroller designed by Rabbit Semiconductor for embedded system applications. Rabbit Semiconductor has been bought by Digi International, which is since selling the Rabbit microcontrollers and hardware based on them.
Its extensive integrated feature set and glueless architecture facilitate rapid hardware design, and its C-friendly instruction set permits efficient development of complex applications for embedded systems. The instruction set is based on the original Z80 microprocessor, but with some additions of new instructions as well as deletions of some instructions. Particularly useful for C is the stack pointer relative addressing available in some of the new instructions. Among the Z80 instructions missing in the Rabbit, cpir is particularly notable, since it allows for much more efficient implementations of some often-used standard C functions such as strlen(), strnlen() and memchr(). According to the Rabbit documentation, it executes its instructions 5 times faster than the original Z80 microprocessor, that is, similarly to the Zilog eZ80. The Rabbit 3000 is a variant of the Rabbit 2000 with the same core, but more powerful integrated peripherals. The Rabbit 3000A variant adds a small number of additional instructions for I/O and large integer arithmetic. The Rabbit 4000 again adds more integrated peripherals. The further derivatives, starting with the Rabbit 5000 have a substantially different architecture.
The Rabbit 2000 is supported by the free (GPL) Small Device C Compiler. There also are the non-free Dynamic C provided by the makers of the Rabbit and the commercial third-party CROSS-C. The latter two are quite incomplete in their support of the C standard, and their Rabbit 2000 backends are no longer available in current compiler versions.