EasyManua.ls Logo

Rabbit 2000 - 3. Details on Rabbit Microprocessor Features; 3.1 Processor Registers

Rabbit 2000
45 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Designer’s
Handbook 17
5.
The
Rabbit
BIOS
The
Dynamic
C
programming
system
for
the
Rabbit
uses
the
concept
of
a
BIOS
(basic
input
output
system).
The
BIOS
is
a
separate
program
file
that
contains
the
basic
code
needed
to
interface
with
Dynamic
C.
It
also
normally
contains
a
software
interface
to
the
users
particular
hardware.
Certain
drivers
in
the
Dynamic
C
libraries
require
BIOS
rou-
tines
to
perform
tasks
that
are
hardware-dependent.
When
the
user
compiles
a
program
under
Dynamic
C,
the
BIOS
is
compiled
first
as
an
integral
part
of
the
users
program.
A
single
general-purpose
BIOS
is
supplied
with
Dynamic
C
for
the
Rabbit.
This
BIOS
will
allow
you
to
boot
Dynamic
C
on
any
Rabbit-based
system
that
follows
the
basic
design
rules
needed
to
support
Dynamic
C.
The
BIOS
requires
either
both
a
flash
memory
and
a
32K
or
larger
RAM,
or
just
a
128K
RAM,
for
it
to
be
possible
to
compile
and
run
Dynamic
C
programs.
If
the
user
uses
a
flash
memory
from
the
list
of
flash
memories
that
are
already
supported
by
the
BIOS,
the
task
will
be
simplified.
If
the
flash
memory
chip
is
not
already
supported,
the
user
will
have
to
write
a
driver
to
perform
the
write
operation
on
the
flash
memory.
This
is
not
difficult
provided
that
a
system
with
128K
of
RAM
and
the
flash
memory
to
be
used
is
available
for
testing.
5.1
Startup
Conditions
Set
Up
By
the
BIOS
The
BIOS
sets
up
initial
values
for
the
following
registers
by
means
of
code
and
declara-
tions.
The
four
memory
bank
control
registers
MB0CR,
MB1CR,
MB2CR,
and
MB3CR—are
8-
bit
registers,
each
associated
with
one
quadrant
of
the
1M
memory
space.
Each
register
determines
which
memory
chip
will
be
mapped
into
its
quadrant,
how
many
wait
states
will
be
used
for
accessing
that
memory
chip,
and
whether
the
memory
chip
will
be
write
protected.
The
STACKSEG
register
is
an
8-bit
register
that
determines
the
location
of
the
stack
seg-
ment
in
the
1M
memory.
The
DATASEG
register
is
an
8-bit
register
that
determines
the
location
of
the
data
seg-
ment
in
the
1M
memory,
normally
the
location
of
the
data
variable
space.
The
SEGSIZE
register
is
an
8-bit
register
holding
two
4-bit
registers.
Together
the
reg-
isters
determine
the
relative
size
of
the
root
code,
data
segment
and
stack
segment
in
the
64K
root
space.
The
MMIDR
register
is
an
8-bit
register
that
modifies
memory
system
functions
having
to
do
with
support
for
battery-backed
memory
and
separate
instruction
and
data
space
control.
The
XPC
register
is
used
to
address
extended
code
memory.
Normally
the
users
code
frequently
changes
this
register.
The
BIOS
sets
the
initial
value.
The
SP
register
is
the
system
stack
pointer.
It
is
frequently
changed
by
the
users
code.
The
BIOS
sets
up
an
initial
value.
All
together
there
are
11
MMU,
MIU
registers
that
are
set
up
by
the
BIOS.
These
registers
determine
all
aspects
of
the
hardware
setup
of
the
memory.

Other manuals for Rabbit 2000