Jameco Electronics 2000 ユーザーズマニュアル

ページ / 349
User’s Manual
9
2.  R
ABBIT
 3000 D
ESIGN
 F
EATURES
The Rabbit 3000 is an evolutionary design. The processor and instruction set are nearly 
identical to the immediate predecessor processor, the Rabbit 2000. Both the Rabbit 3000 
and the Rabbit 2000 follow in broad outline the instruction set and the register layout of 
the Z80 and Z180. Compared to the Z180 the instruction set has been augmented by a sub-
stantial number of new instructions. Some obsolete or redundant Z180 instructions have 
been dropped to make available efficient 1-byte opcodes for important new instructions. 
(see Chapter 20, “Differences Rabbit vs. Z80/Z180 Instructions,”.) The advantage of this 
evolutionary approach is that users familiar with the Z80 or Z180 can immediately under-
stand Rabbit assembly language. Existing Z80 or Z180 source code can be assembled or 
compiled for the Rabbit with minimal changes.
Changing technology has made some features of the Z80/Z180 family obsolete, and these 
features have been dropped in the Rabbit. For example, the Rabbit has no special support 
for dynamic RAM but it has extensive support for static memory. This is because the price 
of static memory has decreased to the point that it has become the preferred choice for 
medium-scale embedded systems. The Rabbit has no support for DMA (direct memory 
access) because most of the uses for which DMA is traditionally used do not apply to 
embedded systems, or they can be accomplished better in other ways, such as fast inter-
rupt routines, external state machines or slave processors.
Our experience in writing C compilers has revealed the shortcomings of the Z80 instruc-
tion set for executing the C language. The main problem is the lack of instructions for han-
dling 16-bit words and for accessing data at a computed address, especially when the stack 
contains that data. New instructions correct these problems.
Another problem with many 8-bit processors is their slow execution and a lack of number-
crunching ability. Good floating-point arithmetic is an important productivity feature in 
smaller systems. It is easy to solve many programming problems if an adequate floating-
point capability is available. The Rabbit’s improved instruction set provides fast floating-
point and fast integer math capabilities.
The Rabbit supports four levels of interrupt priorities. This is an important feature that 
allows the effective use of fast interrupt routines for real-time tasks.