![](http://datasheet.mmic.net.cn/220000/R80C52TXXX-L16SHXXX-D_datasheet_15505891/R80C52TXXX-L16SHXXX-D_38.png)
SAM4CM Series [DATASHEET]
Atmel-11203C-ATARM-SAM4CM32-SAM4CM16-SAM4CM8-Datasheet_06-Oct-14
38
8.
Memories
The memory map shown in
Figure 7-2, “SAM4CM16/8 Memory Mapping of CODE and SRAM Area”
is common to
both Cortex-M4 processors with the exception of the “Boot Memory” block. For more information on Boot Memory,
refer to
Section 8.1.5 “Boot Strategy”
.
Each processor uses its own ARM Private Peripheral Bus (PPB) for the NVIC and other system functions.
8.1
Embedded Memories
8.1.1
Internal SRAM
The SAM4CM embeds a total of up to 304 Kbytes high-speed SRAM with zero wait state access time.
SRAM0 on Matrix0 is up to 256 Kbytes. It is dedicated to the application processor (CM4P0) or other peripherals
on Matrix0 but can be identified and used by masters on Matrix1.
SRAM1 on Matrix1 is up to 32 Kbytes. It is mainly dedicated to be the code region of the CM4P1 processor but can
be identified and used by Matrix0.
SRAM2 on Matrix1 is up to 16 Kbytes. It is mainly dedicated to be the data region of the CM4P1 processor or other
peripherals on Matrix1 but can be identified and used by masters on Matrix0.
Refer to the section “Bus Matrix (MATRIX)” of this datasheet for more details.
If the CM4P1 processor is in the reset state and not used, the application core may use it.
The SRAM is located in the bit band region. The bit band alias region is from 0x2200 0000 to 0x23FF_FFFF.
8.1.2
System ROM
The SAM4CM embeds an Internal ROM for the master processor (CM4P0), which contains the SAM Boot
Assistant (SAM-BA
), In Application Programming routines (IAP), and Fast Flash Programming Interface (FFPI).
The ROM is always mapped at the address 0x02000000.
8.1.3
CPKCC ROM
The ROM contains a cryptographic library using the CPKCC cryptographic accelerator peripheral (CPKCC) to
provide support for Rivest Shamir Adleman (RSA), Elliptic Curve Cryptography (ECC), Digital Signature Algorithm
(DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA).
8.1.4
Embedded Flash
8.1.4.1 Flash Overview
The embedded Flash is the boot memory for the Cortex-M4 Core 0 (CM4P0). The Flash memory can be accessed
through the Cache Memory Controller (CMCC0) of the CM4P0 and can also be identified by the Cortex-M4F Core
1 (CM4P1) through its Cache Memory Controller (CMCC1).
The SAM4CM32 features a dual-plane Flash to program or erase a memory plane while reading from the other
plane. The dual-plane capability also provides the dual boot scheme. The benefit of the dual plane and the dual
boot is that the firmware can be upgraded while the main application is running and that it is possible to switch to
the new firmware in the other plane.
Figure 8-1
below shows the operating principle of firmware upgrade by using
the dual bank/dual boot.