XC2200 Derivatives
System Units (Vol. 1 of 2)
Architectural Overview
User’s Manual
2-11
V2.1, 2008-08
ArchitectureX22, V1.1
Up to 768 Kbytes of on-chip Flash memory
store code or constant data. The on-chip
Flash memory consists of 2 or 3 Flash modules, each built up from 4-Kbyte sectors. Each
sector can be separately write protected
1)
, erased and programmed (in blocks of 128
bytes). The complete Flash area can be read-protected. A user-defined password
sequence temporarily unlocks protected areas. The Flash modules combine 128-bit
read accesses with protected and efficient writing algorithms for programming and
erasing. Dynamic error correction provides extremely high read data security for all read
accesses. Accesses to different Flash modules can be executed in parallel.
Note: Program execution from on-chip program memory is the fastest of all possible
alternatives and results in maximum performance. The size of the on-chip
program memory depends on the chosen derivative. On-chip program memory
also includes the PSRAM.
Up to 64 Kbytes of on-chip Program SRAM (PSRAM)
are provided to store user code
or data. The PSRAM is accessed via the PMU and is, therefore, optimized for code
fetches. A section of the PSRAM with programmable size can be write-protected.
16 Kbytes of on-chip Data SRAM (DSRAM)
are provided as a storage for general user
data. The DSRAM is accessed via a separate interface and is, therefore, optimized for
data accesses.
2 Kbytes of on-chip Dual-Port RAM (DPRAM)
are provided as a storage for user
defined variables, for the system stack, and in particular for general purpose register
banks. A register bank can consist of up to 16 wordwide (R0 to R15) and/or bytewide
(RL0, RH0, …, RL7, RH7) so-called General Purpose Registers (GPRs).
The upper 256 bytes of the DPRAM are directly bitaddressable. When used by a GPR,
any location in the DPRAM is bitaddressable.
1 Kbyte of on-chip Stand-By SRAM (SBRAM)
is provided as a storage for system-
relevant user data that must be preserved while the major part of the device is powered
down. The SBRAM is accessed via a specific interface and is powered via domain M.
The CPU has an actual register context of up to 16 wordwide and/or bytewide global
GPRs at its disposal, which are physically located within the on-chip RAM area. A
Context Pointer (CP) register determines the base address of the active global register
bank to be accessed by the CPU at a time. The number of register banks is restricted
only by the available internal RAM space. For easy parameter passing, a register bank
may overlap other register banks.
A system stack of up to 32 Kwords is provided as storage for temporary data. The system
stack can be located anywhere within the complete addressing range and it is accessed
by the CPU via the Stack Pointer (SP) register and the Stack Pointer Segment (SPSEG)
register. Two separate SFRs, STKOV and STKUN, are implicitly compared against the
stack pointer value upon each stack access for the detection of a stack overflow or
1)
To save control bits, sectors are clustered for protection purposes, they remain separate for programming/
erasing.