![GigaDevice Semiconductor GD32E23 Series User Manual Download Page 27](http://html.mh-extra.com/html/gigadevice-semiconductor/gd32e23-series/gd32e23-series_user-manual_2225794027.webp)
GD32E23x User Manual
27
memory can be programmed word (32 bits) or double-word (64 bits) at a time. Each page of
the flash memory can be erased individually. The whole flash memory space except
information blocks can be erased at a time.
1.4.
Boot configuration
The GD32E23x
series provides three kinds of boot sources which can be selected using the
bit BOOT1_n in the user option byte (refer to Chapter 2.3.9
) and
the BOOT0 pins. The value on the BOOT0 pin is latched on the 4th rising edge of SYSCLK
after a reset. It is up to the user to set the BOOT1_n and BOOT0 after a power-on reset or a
system reset to select the required boot source. The details are shown in the following table.
Table1-3. Boot modes
Selected boot source
Boot mode selection pins
Boot1
Boot0
Main Flash Memory
x
0
System Memory
0
1
On-chip SRAM
1
1
1. The Boot1 value is the opposite of the BOOT1_n value.
After power-on sequence or a system reset, the Arm® Cortex
®
-M23 processor fetches the
top-of-stack value from address 0x0000 0000 and the base address of boot code from
0x0000 0004 in sequence. Then, it starts executing code from the base address of boot
code.
According to the selected boot source, either the main flash memory (original memory space
beginning at 0x0800 0000) or the system memory (original memory space beginning at
0x1FFF EC00) is aliased in the boot memory space which begins at the address 0x0000
0000. When the on-chip SRAM whose memory space is beginning at 0x2000 0000 is
selected as the boot source, in the application initialization code, you have to relocate the
vector table in SRAM using the NVIC exception table and offset register.
The embedded boot loader is located in the System memory, which is used to reprogram the
Flash memory. The boot loader can be activated through one of the following serial
interfaces: USART0 or USART1.