
Embedded Flash memory (FLASH)
RM0453
RM0453 Rev 2
The Flash memory is organized as follows:
•
A main memory block containing 128 pages of 2 Kbytes, each page with eight rows of
256 bytes.
•
An information block containing:
–
System memory from which the CPU1 boots in system memory boot mode
This area is reserved and contains the bootloader used to reprogram the Flash
memory through one of the following interfaces: USART1, USART2, I2C1, I2C2,
I2C3, SPI1, SPI2S2. It is programmed by STMicroelectronics when the device is
manufactured and protected against spurious write/erase operations. For further
details, refer to the application note
STM32 microcontroller system memory boot
mode
(AN2606).
–
System memory from which the CPU2 boots in System memory boot mode
This area is reserved and contains the SFI/RSS firmware used to authenticate and
install the firmware in Flash memory through one of the following interfaces:
USART1, USART2, I2C1, I2C2, I2C3, SPI1, SPI2S2. It is programmed by
STMicroelectronics when the device is manufactured, and protected against
spurious write/erase operations.
–
1-Kbyte (128 double-word) OTP (one-time programmable) for user data
The OTP data cannot be erased and can be written only once. If only one bit is at
0, the entire double-word (64 bits) cannot be written anymore, even with the value
0x0000 0000 0000 0000. The OTP area cannot be read when RDP level is 1 and
boot source is not Flash user area.
–
Option bytes for user configuration
The memory organization is based on a main area and an information block as shown in the
table below.
4.3.2 Empty
check
During the OBL phase, after loading all options, the Flash memory interface checks whether
the first location of the main memory is programmed. The result of this check, in conjunction
with the BOOT0 and BOOT1 information, is used to determine where the system has to
Table 11. Flash memory - Single bank organization
Area
Addresses
Size (Kbytes)
Name
Main memory
0x0800 0000 - 0x0800 07FF
2
Page 0
0x0800 8000 - 0x0800 0FFF
2
Page 1
0x0800 1000 - 0x0800 17FF
2
Page 2
0x0800 1800 - 0x0800 1FFF
2
Page 3
...
...
...
0x083 F000 - 0x0803 F7FF
2
Page 126
0x083 F800 - 0x0803 FFFF
2
Page 127
Information block
0x1FFF 0000 - 0x1FFF 6FFF
28
System memory
0x1FFF 7000 - 0x1FFF 73FF
1
OTP area
0x1FFF 7800 - 0x1FFF 7FFF
2
Option bytes