Enhanced Queued Analog-to-Digital Converter (eQADC)
MPC5510 Microcontroller Family Reference Manual, Rev. 1
Freescale Semiconductor
31-55
Preliminary
31.4.3.6.5
Command Sequence Non-Coherency Detection
The eQADC provides a mechanism to indicate if a command sequence has been completely executed
without interruptions. A command sequence is defined as a group of consecutive commands bound for the
same ADC and it is expected to be executed without interruptions. A command sequence is coherent if its
commands are executed in order without interruptions. Because commands are stored in the ADC’s
command buffers before being executed in the eQADC, a command sequence is coherent if, while it is
transferring commands to an on-chip ADC command buffer, the buffer is only fed with commands from
that sequence without ever becoming empty.
A command sequence starts when:
•
A CFIFO in TRIGGERED state transfers its first command to an on-chip ADC.
•
The CFIFO is constantly transferring commands and the previous command sequence ended.
•
The CFIFO resumes command transfers after being interrupted.
And a command sequence ended when:
•
An asserted EOQ bit is detected on the last transferred command.
•
CFIFO is in edge-trigger mode and asserted pause bit is detected on the last transferred command.
shows examples of how the eQADC would detect command sequences when transferring
commands from a CFIFO.
Figure 31-32. Command Sequence Example
The NCF flag is used to indicate command sequence non-coherency. When the NCF
n
flag is asserted, it
indicates that the command sequence being transferred through CFIFO
n
became non-coherent. The NCF
flag only becomes asserted for CFIFOs in a TRIGGERED state.
A command sequence is non-coherent when, after transferring the first command of a sequence from a
CFIFO to a buffer, it cannot successively send all the other commands of the sequence before any of the
following conditions are true:
•
The CFIFO through which commands are being transferred is pre-empted by a higher priority
CFIFO which sends commands to the same CBuffer. The NCF flag becomes asserted immediately
after the first command transfer from the pre-empting CFIFO, that is the higher priority CFIFO, to
the ADC in use is completed. See
.
Assuming that these commands are transferred by a CFIFO
configured for edge trigger mode and the command transfers are
never interrupted, the eQADC would check for non-coherency of
two command sequences: one formed by commands 0, 1, 2, 3, and
the other by commands 4, 5, 6.
User Command Queue with
Two Command Sequences
CF5_ADC0_CM6(EOQ=1)
7
CF5_ADC0_CM5
6
CF5_ADC0_CM4
5
CF5_ADC0_CM3(Pause=1)
4
CF5_ADC0_CM2
3
CF5_ADC0_CM1
2
CF5_ADC0_CM0
1