![Freescale Semiconductor MPC5632M Manual Download Page 1061](http://html.mh-extra.com/html/freescale-semiconductor/mpc5632m/mpc5632m_manual_23306591061.webp)
MPC563XM Reference Manual, Rev. 1
Freescale Semiconductor
1061
Preliminary—Subject to Change Without Notice
Figure 24-71. Non-coherency Detection when Transfers from a Command Sequence are Interrupted
24.6.5
EQADC Result FIFOs
24.6.5.1
RFIFO Basic Functionality
There are six RFIFOs located in the EQADC. Each RFIFO is four entries deep, and each RFIFO entry is
16 bits long. Each RFIFO serves as a temporary storage location for the one of the RQueues allocated in
system memory. Result data is saved in the RFIFOs before being moved into the system RQueues. When
an RFIFO is not empty, the EQADC sets the corresponding RFDF bit in
and Interrupt Status Registers (EQADC_FISR)
. If RFDE is asserted in
Interrupt and DMA Control Registers (EQADC_IDCR)
, the EQADC generates a request so that an RFIFO
entry is moved to the RQueue. An interrupt request, served by the host CPU, is generated when RFDS is
negated, and a DMA request, served by the DMAC, is generated when RFDS is asserted. The host CPU
or the DMAC responds to these requests by reading
Section 24.5.2.6, “EQADC Result FIFO Pop Registers
to retrieve data from the RFIFO.
NOTE:
The DMAC should be configured to read a single result (16-bit data) from the
RFIFO pop registers for every asserted DMA request it acknowledges. Refer to
Section 24.7.2, “EQADC/DMAC Interface
for DMAC configuration guidelines.
NOTE:
Reading a word, a half-word, or any bytes from EQADC_RFPRx will pop an entry
from RFIFOx, and the RFCTRx field will be decremented by one.
describes the important components in the RFIFO. Each RFIFO is implemented as a circular
set of registers to avoid the need to move all entries at each push/pop operation. The Pop Next Data Pointer
always points to the next RFIFO message to be retrieved from the RFIFO when reading EQADC_RFPR.
The Receive Next Data Pointer points to the next available RFIFO location for storing the next incoming
CF5_CB1_CM0
CF5_CB1_CM1
CF5_CB1_CM2
CF5_CB1_CM3
CF5_CB1_CM4
CF5_CB1_CM5
CF5_CB1_CM6
CF5_CB1_CM7
CF5_CB1_CM8
CF5_CB1_CM9
CF5_CB1_CM10
CF5_CB1_CM11
CF5_CB1_CM12
CF5_CB1_CM13
Command sequence became non-coherent before command 4
was transferred. Once command transfers are resumed, EQADC
will only check for coherency after command 4.
Command sequence became non-coherent before command 11
was transferred. Once command transfers are resumed, EQADC
will only check for coherency after command 11.