RM0082
DDR memory controller (MPMC)
Doc ID 018672 Rev 1
111/844
Port FIFO depths
Each data port contains a read, a write and a command FIFO. The depth of each buffer in
each port is listed in
Table 55: Configured AHB settings
Error detection
When an illegal operational condition is detected on a new AHB transaction entering the
port, the port responds with an ERROR.
Port clocking
There are four user-selectable modes of operation for each of the AHB-Memory Controller
port interfaces.
The mode is set by programming the corresponding ahbY_fifo_type_reg parameter. The
four settings are:
Synchronous ('b11)
The AHB port clock and the Memory Controller core clock must be aligned in frequency in
phase. The AHB-Memory Controller port interface block will not be required to perform any
clock synchronization in any of the FIFOs.
●
Port: Core Pseudo-Synchronous ('b10)
The port operates at half of the frequency of the Memory Controller core frequency,
with clocks that are aligned in phase. One stage of the two-stage synchronization logic
of the FIFOs will be utilized to synchronize commands, WRITE data and READ data to
the appropriate clock domain.
●
Port: Core Pseudo-Synchronous ('b01
)
The port frequency is twice the Memory Controller core frequency, although the clocks
are aligned in phase. One stage of the two-stage synchronization logic of the FIFOs will
be utilized to synchronize commands, WRITE data and READ data to the appropriate
clock domain.
Asynchronous ('b00)
The AHB bus and the Memory Controller core operate on clocks that are mismatched in
frequency and phase. The AHB port FIFOs use two stages of synchronization logic to
synchronize commands, WRITE data and READ data to the appropriate clock domain.
AHB Port FIFOs
Incoming transactions on the AHB bus are processed by the interface logic and mapped into
equivalent transactions on the Memory Controller core bus. These transactions are queued
in the port FIFOs.
There are three separate AHB port FIFOs for commands, READ data and WRITE data. The
depths of the FIFOs are configured by the user and generally dependent on system
requirements.
Command FIFO
The command FIFO holds the AHB command address, burst type and size. Typically, the
command FIFO is fairly small in depth due to the single-threaded, pipelined nature of the
AHB protocol. The protocol does not allow more than one outstanding transaction on any