RM0082
RS_Flexible static memory controller (FSMC)
Doc ID 018672 Rev 1
663/844
31.2 Functional
description
31.2.1 Block
diagram
Figure 67.
FSMC block diagram
31.3 Description
31.3.1 AHB
interface
The
AHB Interface
block provides the FSMC interface to the AHB bus. It decomposes the
system bus transfers into external accesses supported by the selected external device.
The RW control register values are accessed through the AHB, and their values are passed
to the rest of the peripherals.
Following conditions cause an ERROR response:
●
if a disabled external device is accessed;
●
if a Flash memory is accessed when its Reset Powerdown bit (in GenMemCtrl register,
) has been set to 0;
●
if HSIZE is greater than 2, which means a transfer size larger than 32 bits.
In other cases, OKAY response is returned.
The AHB interface does not support the following AHB features:
●
It does not generate SPLIT or RETRY responses;
●
Protection control is not implemented, that is HPROT is not connected.
31.3.2
NAND flash controller
This block interfaces the AHB Interface block to the external NAND Flash.
For NAND Flash, following types of accesses are supported:
●
Common memory space access.
It is the normal way of accessing the NAND Flash.
The data size is specified in the DevWidth field of configuration register
(GenMemCtrl_PC register,
), and corresponding timings must be specified in
the GenMemCtrl_Comm register. The data used while accessing this region is passed
to D(7:0) bits (or D(15:0) according to the Flash memory bus width). The few address
bits A(17) and A(16), are used and drive directly ALE and CLE, respectively. Therefore
Configuration
Register
AHB
Interface
NAND/NOR
Flash Driver
E
xte
rn
al
Me
mo
ry
pccard
AHB