DocID018909 Rev 11
RM0090
Flexible memory controller (FMC)
1669
37.6.7 PC
Card/CompactFlash
operations
Address spaces and memory accesses
The FMC supports CompactFlash devices and PC Cards in Memory mode and I/O mode
(True IDE mode is not supported).
The CompactFlash and PC Cards are made of 3 memory spaces:
•
Common Memory space
•
Attribute space
•
I/O Memory space
The nCE2 and nCE1 pins (FMC_NCE4_2 and FMC_NCE4_1 respectively) select the card
and indicate whether a byte or a word operation is being performed: nCE2 accesses the odd
byte on D15-8 and nCE1 accesses the even byte on D7-0 if A0=0 or the odd byte on D7-0 if
A0=1. The full word is accessed on D15-0 if both nCE2 and nCE1 are low.
The memory space is selected by asserting low nOE for read accesses or nWE for write
accesses, combined with the low assertion of nCE2/nCE1 and nREG.
•
If pin nREG=1 during the memory access, the common memory space is selected
•
If pin nREG=0 during the memory access, the attribute memory space is selected
The I/O space is selected by asserting nIORD space for read accesses or nIOWR for write
accesses [instead of nOE/nWE for memory space], combined with nCE2/nCE1. Note that
nREG must also be asserted low when accessing I/O space.
Three type of accesses are allowed for a 16-bit PC Card:
•
Accesses to Common Memory space for data storage can be either 8-bit accesses at
even addresses or 16-bit AHB accesses.
Note that 8-bit accesses at odd addresses are not supported and nCE2 will not be
driven low. A 32-bit AHB request is translated into two 16-bit memory accesses.
•
Accesses to Attribute Memory space where the PC Card stores configuration
information are limited to 8-bit AHB accesses at even addresses.
Note that a 16-bit AHB access will be converted into a single 8-bit memory transfer:
nCE1 will be asserted low, nCE2 will be asserted high and only the even byte on D7-D0
will be valid. Instead a 32-bit AHB access will be converted into two 8-bit memory
transfers at even addresses: nCE1 will be asserted low, NCE2 will be asserted high
and only the even byte will be valid.
•
Accesses to I/O space can be either 8-bit or 16 bit AHB accesses.
Table 289. 16-bit PC-Card signals and access type
nCE2
nCE1
nREG
nO
E/n
W
E
nIORD
A10
A9
A7-1
A0
Space
Access type
Allowed/not
Allowed
1
0
1
0
1
X
X
X-X
X
Common
Memory
Space
Read/Write byte on D7-D0
YES
0
1
1
0
1
X
X
X-X
X
Read/Write byte on D15-D8
Not supported
0
0
1
0
1
X
X
X-X
0
Read/Write word on D15-D0
YES