Semiconductor Group
1-6
1998-04-01
Fundamental Structure
C500 Family
1.2.2.3
External Data Memory
The 64 Kbyte external data memory can be addressed by instructions that use 8-bit or 16-bit indirect
addressing. A 16-bit external memory addressing mode is supported by the MOVX instructions
using the 16-bit datapointer DPTR for addressing. For 8-bit addressing MOVX instructions with the
general purpose registers R0/R1 are used.
1.2.3 Special Function Register Area
The registers of a C500 microcontroller, except the program counter and the four general purpose
register banks, reside in the special function register (SFR) area. The special function register area
typically provides 128 bytes of direct addressable SFRs. The SFRs which are located at addresses
with address bit 0-2 equal 0 (addresses 80H, 88H, 90H, ....F0H, FFH) are bitaddressable SFRs (see
also figure 1-1). For example, the SFR with byte address 80H provides the bit locations with bit
addresses 80H to 87H. The bit addresses of the SFR bits reach from 80H to FFH.
Due to the limited number of 128 standard SFRs, some derivatives of the C500 microcontroller
family provide an additional 128 byte SFR area, called the mapped SFR area. The mapped SFR
area provides the same addressing capabilities (direct addresses, bit addressing) as the standard
SFR area.
Special Function Register SYSCON (Address B1H)
As long as bit RMAP is set, mapped special function registers can be accessed. This bit is not
cleared by hardware automatically. Thus, when non-mapped/mapped registers are to be accessed,
the bit RMAP must be cleared/set by software, respectively each. Some registers (e.g. ACC) are
accessed independently of bit RMAP.
Two bits in the program status word, RS0 (PSW.3) and RS1 (PSW.4), select the active register
bank. This allows fast context switching, which is useful when entering subroutines or interrupt
service routines. The 8 general purpose registers of the selected register bank may be accessed
by register addressing. For indirect addressing modes, the registers R0 and R1 are used as pointer
or index register to address internal or external memory (e.g. MOV @R0).
Bit
Function
RMAP
Special function register map bit
RMAP = 0 : The access to the non-mapped (standard) special function
register area is enabled (default after reset).
RMAP = 1 : The access to the mapped special function register area is
enabled.
7
6
5
4
3
2
1
0
Ð
RMAP
Ð
B1H
SYSCON
Bit No.
MSB
LSB
Ð
Ð
Ð
Ð
Ð
The functions of the shaded bits are not described in this section.