TC1796
Peripheral Units (Vol. 2 of 2)
Fast Analog-to-Digital Converter (FADC)
User’s Manual
26-13
V2.0, 2007-07
FADC, V2.0
The dynamic priority assignment feature ensures that two channels can be sampled in
equidistant intervals.
26.1.5.4 Clock Generation
As shown in
, the FADC module is provided with two clock signals:
f
CLC
and
f
FADC
. Clock
f
CLC
is used inside the FADC kernel for control purposes such as clocking of
control logic, register operations, trigger detection, or filter calculation. The clock rate of
f
FADC
is programmable. Clock
f
FADC
is used inside the FADC kernel as the clock for the
Channel Timer and the complete analog part.
The clock control as implemented in the TC1796 is described on
26.1.5.5 Suspend Mode Behavior
When a suspend/idle mode request is generated for the FADC module, a currently
running conversion is completely finished (not aborted) and, if selected, a filter
calculation still takes place. Thereafter, no new conversion will be started and the state
of the FADC module is frozen until the suspend/idle mode request is released again.
26.1.6
Data Reduction Unit
If one or more channels of the FADC is operating in a fast continuous mode (for example,
by using the Channel Timers as request sources with fast conversion data request
rates), it can be sometimes difficult or even impossible for a CPU or another bus master
to collect all conversion results without the risk of losing conversion data. Therefore, a
Data Reduction Unit is implemented in the FADC that operates as a kind of antialiasing
filter. This unit allows the number of conversion data requests that are issued to the CPU
or other bus masters to be reduced by adding multiple conversion results according to a
certain algorithm and presenting it to the CPU or other bus masters with a reduced
conversion request rate.
The Data Reduction Unit contains two filter blocks. Each filter block allows selection of
its input data source. The input data sources are the conversion result registers of the
four A/D converter channel. Both filter blocks can also be concatenated. When the result
of a filter operation is stored in one of the final result registers, a service request can be
generated. Each filter block basically contains adder logic and intermediate storage
registers that allow support for typical digital filter operations such as moving average
calculations with intermediate results.
In order to achieve a higher resolution of the conversion result by averaging over several
single conversions, the filter blocks only accumulates single conversion results.