GD32F403xx User Manual
561
21.
External memory controller (EXMC)
21.1.
Overview
The external memory controller EXMC, is used as a translator for MCU to access a variety of
external memory. By configuring the related registers, it can automatically convert AMBA
memory access protocol into a specific memory access protocol, such as SRAM, ROM, NOR
Flash, NAND Flash and PC Card. Users can also adjust the timing parameters in the
conf iguration registers to improve memory access efficiency. EXMC access space is divided
into multiple banks; each bank is assigned to access a specific memory ty pe with f lexible
parameter configuration as defined in the control registers.
21.2.
Characteristics
–
Supported external memory:
⚫
SRAM
⚫
PSRAM
⚫
ROM
⚫
NOR Flash
⚫
8-bit or 16-bit NAND Flash
⚫
16-bit PC Card
–
Protocol translation between the AMBA and the multitude of external memory protocol.
–
Offering a variety of programmable timing parameters to meet user’s specific needs.
–
Each bank has its own chip-select signal which can be configured independently.
–
Independent read/write timing configuration to a sub-set memory type.
–
Embedded ECC hardware for NAND Flash access.
–
8 or 16 bits bus width.
–
Address and data bus multiplexing mechanism for NOR Flash and PSRAM.
–
Write enable and byte select are provided as needed.
–
Automatic AMBA transaction split when internal and external bus width is not compatible.
21.3.
Function overview
21.3.1.
Block diagram
EXMC is the combination of f ive modules: The AHB bus interf ace, EXMC configuration
registers, NOR/PSRAM controller, NAND/PC Card controller and external device interface.
AHB clock (HCLK) is the reference clock.