Table 6-1. Rabbit Internal I/O Registers
Register Name
|
Mnemonic
|
I/O Address
|
R/W
|
Reset
|
Data Segment Register (data segment memory pointer--locates data segment in physical memory) |
DATASEG
(Z180 BBR)
|
0x12
|
R/W
|
00000000
|
Segment Size Register (specifies start of data segment and start of stack segment in 64K memory space) |
SEGSIZE
(Z180 CBAR)
|
0x13
|
R/W
|
11111111
|
Stack Segment Register (stack segment memory pointer--locates stack segment in physical memory) |
STACKSEG
(Z180 CBR)
|
0x11
|
R/W
|
00000000
|
Global Control/Status Register (control of clocks, periodic interrupts, and monitoring of watchdog)
|
GCSR
|
0x0
|
R/W
|
11000000
|
Global Clock Double Register
|
GCDR
|
0xF
|
W
|
xxxxx000
|
Global Clock Modulator 0 Register (Rev B-C)
|
GCM0R
|
0x0A
|
W
|
00000000
|
Global Clock Modulator 1 Register (Rev B-C)
|
GCM1R
|
0x0B
|
W
|
00000000
|
Global CPU Configuration Register (Rev A-C)
|
GCPU
|
0x2E
|
R
|
0xx00000
|
Global Output Control Register
|
GOCR
|
0xE
|
W
|
00000x00
|
Rabbit 2000 Global Revision Register (Rev A-C)
|
GREV
|
0x2F
|
R
|
0xx00000
|
Rabbit 2000A Global Revision Register (Rev A-C)
|
0xx00001
|
Rabbit 2000B Global Revision Register (Rev A-C)
|
0xx00010
|
Rabbit 2000C Global Revision Register (Rev A-C)
|
0xx00011
|
I/O Bank 0 Control Register
|
IB0CR
|
0x80
|
W
|
00000xxx
|
I/O Bank 1 Control Register
|
IB1CR
|
0x81
|
W
|
00000xxx
|
I/O Bank 2 Control Register
|
IB2CR
|
0x82
|
W
|
00000xxx
|
I/O Bank 3 Control Register
|
IB3CR
|
0x83
|
W
|
00000xxx
|
I/O Bank 4 Control Register
|
IB4CR
|
0x84
|
W
|
00000xxx
|
I/O Bank 5 Control Register
|
IB5CR
|
0x85
|
W
|
00000xxx
|
I/O Bank 6 Control Register
|
IB6CR
|
0x86
|
W
|
00000xxx
|
I/O Bank 7 Control Register
|
IB7CR
|
0x87
|
W
|
00000xxx
|
Interrupt 0 Control Register
|
I0CR
|
0x98
|
W
|
xx000000
|
Interrupt 1 Control Register
|
I1CR
|
0x99
|
W
|
xx000000
|
Memory Bank 0 Control Register (Rev A-C)
|
MB0CR
|
0x14
|
W
|
00001000
|
Memory Bank 0 Control Register (original chip)
|
MB0CR
|
0x14
|
W
|
00000000
|
Memory Bank 1 Control Register
|
MB1CR
|
0x15
|
W
|
xxxxxxxx
|
Memory Bank 2 Control Register
|
MB2CR
|
0x16
|
W
|
xxxxxxxx
|
Memory Bank 3 Control Register
|
MB3CR
|
0x17
|
W
|
xxxxxxxx
|
MMU Instruction/Data Register (controls I & D space enable and battery switchover support for /CS1)
|
MMIDR
|
0x10
|
R/W
|
xxx00000
|
Memory Timing Control Register (Rev C)
|
MTCR
|
0x19
|
W
|
xxxx0000
|
Port A Data Register
|
PADR
|
0x30
|
R/W
|
xxxxxxxx
|
Port B Data Register
|
PBDR
|
0x40
|
R/W
|
00xxxxxx
|
Port C Data Register
|
PCDR
|
0x50
|
R/W
|
x0x0x0x0
|
Port C Function Register
|
PCFR
|
0x55
|
W
|
x0x0x0x0
|
Port D Data Register
|
PDDR
|
0x60
|
R/W
|
xxxxxxxx
|
Port D Control Register
|
PDCR
|
0x64
|
W
|
xx00xx00
|
Port D Function Register
|
PDFR
|
0x65
|
W
|
xxxxxxxx
|
Port D Drive Control Register
|
PDDCR
|
0x66
|
W
|
xxxxxxxx
|
Port D Data Direction Register
|
PDDDR
|
0x67
|
W
|
00000000
|
Port D Bit 0 Register
|
PDB0R
|
0x68
|
W
|
xxxxxxxx
|
Port D Bit 1 Register
|
PDB1R
|
0x69
|
W
|
xxxxxxxx
|
Port D Bit 2 Register
|
PDB2R
|
0x6A
|
W
|
xxxxxxxx
|
Port D Bit 3 Register
|
PDB3R
|
0x6B
|
W
|
xxxxxxxx
|
Port D Bit 4 Register
|
PDB4R
|
0x6C
|
W
|
xxxxxxxx
|
Port D Bit 5 Register
|
PDB5R
|
0x6D
|
W
|
xxxxxxxx
|
Port D Bit 6 Register
|
PDB6R
|
0x6E
|
W
|
xxxxxxxx
|
Port D Bit 7 Register
|
PDB7R
|
0x6F
|
W
|
xxxxxxxx
|
Port E Data Register
|
PEDR
|
0x70
|
R/W
|
xxxxxxxx
|
Port E Control Register
|
PECR
|
0x74
|
W
|
xx00xx00
|
Port E Function Register
|
PEFR
|
0x75
|
W
|
xxxxxxxx
|
Port E Data Direction Register
|
PEDDR
|
0x77
|
W
|
00000000
|
Port E Bit 0 Register
|
PEB0R
|
0x78
|
W
|
xxxxxxxx
|
Port E Bit 1 Register
|
PEB1R
|
0x79
|
W
|
xxxxxxxx
|
Port E Bit 2 Register
|
PEB2R
|
0x7A
|
W
|
xxxxxxxx
|
Port E Bit 3 Register
|
PEB3R
|
0x7B
|
W
|
xxxxxxxx
|
Port E Bit 4 Register
|
PEB4R
|
0x7C
|
W
|
xxxxxxxx
|
Port E Bit 5 Register
|
PEB5R
|
0x7D
|
W
|
xxxxxxxx
|
Port E Bit 6 Register
|
PEB6R
|
0x7E
|
W
|
xxxxxxxx
|
Port E Bit 7 Register
|
PEB7R
|
0x7F
|
W
|
xxxxxxxx
|
Real Time Clock Control Register
|
RTCCR
|
0x1
|
W
|
00000000
|
Real Time Clock Byte 0 Register
|
RTC0R
|
0x2
|
R/W
|
xxxxxxxx
|
Real Time Clock Byte 1 Register
|
RTC1R
|
0x3
|
R
|
xxxxxxxx
|
Real Time Clock Byte 2 Register
|
RTC2R
|
0x4
|
R
|
xxxxxxxx
|
Real Time Clock Byte 3 Register
|
RTC3R
|
0x5
|
R
|
xxxxxxxx
|
Real Time Clock Byte 4 Register
|
RTC4R
|
0x6
|
R
|
xxxxxxxx
|
Real Time Clock Byte 5 Register
|
RTC5R
|
0x7
|
R
|
xxxxxxxx
|
Serial Port A Data Register
|
SADR
|
0xC0
|
R/W
|
xxxxxxxx
|
Serial Port A Address Register
|
SAAR
|
0xC1
|
W
|
xxxxxxxx
|
Serial Port A Status Register
|
SASR
|
0xC3
|
R
|
0xx00000
|
Serial Port A Control Register
|
SACR
|
0xC4
|
W
|
xx000000
|
Serial Port B Data Register
|
SBDR
|
0xD0
|
R/W
|
xxxxxxxx
|
Serial Port B Address Register
|
SBAR
|
0xD1
|
W
|
xxxxxxxx
|
Serial Port B Status Register
|
SBSR
|
0xD3
|
R
|
0xx00000
|
Serial Port B Control Register
|
SBCR
|
0xD4
|
W
|
xx000000
|
Serial C Data Register
|
SCDR
|
0xE0
|
R/W
|
xxxxxxxx
|
Serial C Address Register
|
SCAR
|
0xE1
|
W
|
xxxxxxxx
|
Serial C Status Register
|
SCSR
|
0xE3
|
R
|
0xx00000
|
Serial C Control Register
|
SCCR
|
0xE4
|
W
|
xx00x000
|
Serial Port D Data Register
|
SDDR
|
0xF0
|
R/W
|
xxxxxxxx
|
Serial Port D Address Register
|
SDAR
|
0xF1
|
W
|
xxxxxxxx
|
Serial Port D Status Register
|
SDSR
|
0xF3
|
R
|
0xx00000
|
Serial Port D Control Register
|
SDCR
|
0xF4
|
W
|
xx00x000
|
Serial Port A Long Stop Register (Rev A-C)
|
SALR
|
0xC2
|
R/W
|
xxxxxxxx
|
Serial Port B Long Stop Register (Rev A-C)
|
SBLR
|
0xD2
|
R/W
|
xxxxxxxx
|
Serial Port C Long Stop Register (Rev A-C)
|
SCLR
|
0xE2
|
R/W
|
xxxxxxxx
|
Serial Port D Long Stop Register (Rev A-C)
|
SDLR
|
0xF2
|
R/W
|
xxxxxxxx
|
Slave Port Control Register
|
SPCR
|
0x24
|
R/W
|
000x0000
|
Slave Port Data 0 Register
|
SPD0R
|
0x20
|
R/W
|
xxxxxxxx
|
Slave Port Data 1 Register
|
SPD1R
|
0x21
|
R/W
|
xxxxxxxx
|
Slave Port Data 2 Register
|
SPD2R
|
0x22
|
R/W
|
xxxxxxxx
|
Slave Port Status Register
|
SPSR
|
0x23
|
R
|
00000000
|
Timer A Control/Status Register
|
TACSR
|
0xA0
|
R/W
|
0000xx00
|
Timer A Control Register
|
TACR
|
0xA2
|
W
|
0000xx00
|
Timer A Time Constant 1 Register
|
TAT1R
|
0xA3
|
W
|
xxxxxxxx
|
Timer A Time Constant 4 Register
|
TAT4R
|
0xA9
|
W
|
xxxxxxxx
|
Timer A Time Constant 5 Register
|
TAT5R
|
0xAB
|
W
|
xxxxxxxx
|
Timer A Time Constant 6 Register
|
TAT6R
|
0xAD
|
W
|
xxxxxxxx
|
Timer A Time Constant 7 Register
|
TAT7R
|
0xAF
|
W
|
xxxxxxxx
|
Timer B Control/Status Register
|
TBCSR
|
0xB0
|
R/W
|
xxxxx000
|
Timer B Control Register
|
TBCR
|
0xB1
|
W
|
xxxx0000
|
Timer B MSB 1 Register
|
TBM1R
|
0xB2
|
W
|
xxxxxxxx
|
Timer B LSB 1 Register
|
TBL1R
|
0xB3
|
W
|
xxxxxxxx
|
Timer B MSB 2 Register
|
TBM2R
|
0xB4
|
W
|
xxxxxxxx
|
Timer B LSB 2 Register
|
TBL2R
|
0xB5
|
W
|
xxxxxxxx
|
Timer B Count MSB Register
|
TBCMR
|
0xBE
|
R
|
xxxxxxxx
|
Timer B Count LSB Register
|
TBCLR
|
0xBF
|
R
|
xxxxxxxx
|
Watchdog Timer Control Register
|
WDTCR
|
0x8
|
W
|
00000000
|
Watchdog Timer Test Register
|
WDTTR
|
0x9
|
W
|
00000000
|