English
Language : 

C8051F120 Datasheet, PDF (135/356 Pages) Silicon Laboratories – Mixed Signal ISP Flash MCU Family
C8051F120/1/2/3/4/5/6/7
C8051F130/1/2/3
11.2. Memory Organization
The memory organization of the CIP-51 System Controller is similar to that of a standard 8051. There are
two separate memory spaces: program memory and data memory. Program and data memory share the
same address space but are accessed via different instruction types. There are 256 bytes of internal data
memory and 128k bytes (C8051F12x and C8051F130/1) or 64k bytes (C8051F132/3) of internal program
memory address space implemented within the CIP-51. The CIP-51 memory organization is shown in
Figure 11.2.
PROGRAM/DATA MEMORY
(FLASH)
C8051F120/1/2/3/4/5/6/7
C8051F130/1
0x200FF
0x20000
0x1FFFF
0x1FC00
0x1FBFF
Scrachpad Memory
(DATA only)
RESERVED
FLASH
(In-System
Programmable in 1024
Byte Sectors)
0x00000
0x200FF
0x20000
C8051F132/3
Scrachpad Memory
(DATA only)
DATA MEMORY (RAM)
INTERNAL DATA ADDRESS SPACE
Upper 128 RAM
(Indirect Addressing
Only)
(Direct and Indirect
Addressing)
Bit Addressable
General Purpose
Registers
Special Function
Registers
(Direct Addressing Only)
0
1
2
3
Lower 128 RAM
(Direct and Indirect
Addressing)
Up To
256 SFR Pages
EXTERNAL DATA ADDRESS SPACE
0xFFFF
0x0FFFF
FLASH
(In-System
Programmable in 1024
Byte Sectors)
0x00000
Off-chip XRAM space
0x1000
0x0FFF
0x0000
XRAM - 4096 Bytes
(accessable using MOVX
instruction)
Figure 11.2. Memory Map
11.2.1. Program Memory
The C8051F12x and C8051F130/1 have a 128k byte program memory space. The MCU implements this
program memory space as in-system re-programmable FLASH memory in four 32k byte code banks. A
common code bank (Bank 0) of 32k bytes is always accessible from addresses 0x0000 to 0x7FFF. The
three upper code banks (Bank 1, Bank 2, and Bank 3) are each mapped to addresses 0x8000 to 0xFFFF,
depending on the selection of bits in the PSBANK register, as described in Figure 11.3. The IFBANK bits
select which of the upper banks are used for code execution, while the COBANK bits select the bank to be
used for direct writes and reads of the FLASH memory. Note: 1024 bytes of the memory in Bank 3
(0x1FC00 to 0x1FFFF) are reserved and are not available for user program or data storage. The
C8051F132/3 have a 64k byte program memory space implemented as in-system re-programmable
FLASH memory, and organized in a contiguous block from address 0x00000 to 0x0FFFF.
Program memory is normally assumed to be read-only. However, the CIP-51 can write to program memory
by setting the Program Store Write Enable bit (PSCTL.0) and using the MOVX instruction. This feature pro-
Rev. 1.3
135