DocID018909 Rev 11
RM0090
Flexible memory controller (FMC)
1669
Bits 19:16
BUSTURN[3:0]:
Bus turnaround phase duration
These bits are written by software to add a delay at the end of a write-to-read (and read-to
write) transaction. The programmed bus turnaround delay is inserted between an
asynchronous read (muxed or D mode) or a write transaction and any other
asynchronous/synchronous read or write to/from a static bank (for a read operation, the bank
can be the same or a different one; for a write operation, the bank can be different except in r
muxed or D mode.
In some cases, the bus turnaround delay is fixed, whatever the programmed BUSTRUN
values:
– No bus turnaround delay is inserted between two consecutive asynchronous write transfers
to the same static memory bank except in muxed and D mode.
– A bus turnaround delay of 1 FMC clock cycle is inserted between:
–
Two consecutive synchronous write operations (in burst or single mode) to different
static banks.
–
A synchronous write access (in burst or single mode) and a synchronous read from
the same or a different bank.
–
An asynchronous and a synchronous write to any static or dynamic memory bank
except in muxed and D modes.
–
An asynchronous (modes 1, 2, A, B or C) read and a read operation from another
static bank.
– A bus turnaround delay of 2 FMC clock cycle is inserted between:
–
Two consecutive synchronous write accesses (in burst or single mode) to the same
bank
–
A synchronous write access (in burst or single mode) and an asynchronous write or
read transfer to/from a static memory bank.
–
Two consecutive synchronous read accesses (in burst or single mode) followed by a
any synchronous/asynchronous read or write from/to another static memory bank.
– A bus turnaround delay of 3 FMC clock cycle is inserted between:
–
Two consecutive synchronous write operations (in burst or single mode) to different
static banks.
–
A synchronous write access (in burst or single mode) and a synchronous read
access from the same or to a different bank.
0000: BUSTURN phase duration = 0 HCLK clock cycle added
...
1111: BUSTURN phase duration = 15 × HCLK clock cycles (default value after reset)