Enhanced Queued Analog-to-Digital Converter (eQADC)
MPC5566 Microcontroller Reference Manual, Rev. 2
Freescale Semiconductor 19-43
hardware triggers from other modules or external pins to initiate transfers of commands from the multiple 
CFIFOs to the on-chip ADCs or to the external device. 
CFIFOs can be configured to be in single-scan or continuous-scan mode. When a CFIFO is configured to 
be in single-scan mode, the eQADC scans the user-defined command queue one time. The eQADC stops 
transferring commands from the triggered CFIFO after detecting the EOQ bit set in the last transfer. After 
an EOQ bit is detected, software involvement is required to rearm the CFIFO so that it can detect new 
trigger events. 
When a CFIFO is configured for continuous-scan mode, the whole user command queue is scanned 
multiple times. After the detection of an asserted EOQ bit in the last command transfer, command transfers 
can continue or not depending on the mode of operation of the CFIFO. 
The eQADC can also in parallel and independently of the CFIFOs receive data from the on-chip ADCs or 
from off-chip external device into multiple RFIFOs. Result data is moved from the RFIFOs to the 
user-defined result queues in system memory by the host CPU or by the eDMA.
19.4.1 Data Flow in the eQADC
Figure 19-24 shows how command data flows inside the eQADC system. A command message is the 
predefined format in which command data is stored in the user-defined command queues. A command 
message has 32 bits and is composed of two parts: a CFIFO header and an ADC command. Command 
messages are moved from the user command queues to the CFIFOs by the host CPU or by the eDMA as 
they respond to interrupt and eDMA requests generated by the eQADC. The eQADC generates these 
requests whenever a CFIFO is not full. The FIFO control unit transfers only the command part of the 
command message to the ADC. Information in the CFIFO header together with the upper bit of the ADC 
command is used by the FIFO control unit to arbitrate which triggered CFIFO transfers the next command. 
Because command transfer through the serial interface can take significantly more time than a parallel 
transfer to the on-chip ADCs, command transfers for on-chip ADCs occur concurrently with the transfers 
through the serial interface. Commands sent to the ADCs are executed in a first-in-first-out (FIFO) basis 
and three types of results can be expected: data read from an ADC register, a conversion result, or a time 
stamp. The order at which ADC commands sent to the external device are executed, and the type of results 
that can be expected depends on the architecture of that device with the exception of unsolicited data like 
null messages for example.
NOTE
While the eQADC pops commands out from a CFIFO, it also is checking 
the number of entries in the CFIFO and generating requests to fill it. The 
process of pushing and popping commands to and from a CFIFO can occur 
simultaneously.
The FIFO control unit expects all incoming results to be shaped in a pre-defined result message format. 
Figure 19-25 shows how result data flows inside the eQADC system. Results generated on the on-chip 
ADCs are formatted into result messages inside the result format and calibration submodule. Results 
returning from the external device are already formatted into result messages and therefore bypass the 
result format and calibration submodule located inside the eQADC. A result message is composed of an 
RFIFO header and an ADC Result. The FIFO control unit decodes the information contained in the RFIFO