14-bit ADC to 18-bit scale... why bother?
hms at shapirolab.com
Mon Feb 9 20:32:12 EST 2004
Cliff McArthur wrote:
>I'm wondering what I'm missing here:
>Why would a manufacturer immediately convert signals with a 14-bit ADC,
>then go to all-digital processing with signals at some point converted to
>"an 18-bit scale?"
>Why bother? To impress me? 14-bit processing is already pretty good, so
>why bother to spread that out to 18-bits? Why not just go with a 16-bit
>ADC and leave it there? Are they really that rare and/or expensive? I
>can't imagine much error associated with 14- to 18-bit conversion. Is there?
>Clearly I'm really very new to this aspect of flow... but believe me, I'm
>trying to learn.
Okay. Just in case anybody hasn't already figured out the name of the
manufacturer in question, it is BD Biosciences, and Cliff is talking about
the FACSDiVa electronics used in FACStar and FACSAria sorters. The FACSAria
and FACSCanto analyzers have similar digital processing.
We need high resolution ADCs to allow us to deal with a large dynamic range
of signals without using analog log amplifiers, which are relatively
inaccurate and which often (but not always) necessitate the use of analog
compensation circuitry, which is almost impossible to implement for more
than four colors (and not so easy for four colors, either).
The smallest range of integer values that covers a four-decade dynamic
range of measurements (more or less standard in the industry) runs from 0
to 9,999. However, that means that the values in the bottom decade are
represented by numbers from 0-9, with the next decades, respectively,
represented by the numbers 10-99, 100-999, and 1,000-1,999. Since ADCs
typically represent numbers in binary, rather than in decimal format, the
lowest resolution ADC that would cover a four-decade range is a 14-bit ADC,
with outputs (channels) typically ranging from 0 to 16,383 (some ADCs
encode the binary differently, but the 0-16,383 range is easiest to
conceptualize). The bottom decade is now in channels 0-16; the next decades
are, respectively, in channels 17-163, 164-1,638, and 1,639-16,383. If you
attempt to convert measurement values taken on this linear scale to a
10-bit log scale (i.e., one occupying 1,024 channels), things look somewhat
ratty in the bottom decade and the bottom of the next decade, because one
linear channel typically maps to more than one log channel. This leaves you
with gaps in the plot, causing it to look like a picket fence.
If you can get 16-bit linear values (the best of my Cytomutt electronics do
this), you end up filling in the gaps further down; the bottom half of the
bottom decade is still a picket fence, but it usually doesn't matter much
since much of what's down there is noise, anyway. To get a smooth
1,024-channel log scale plot from high-resolution linear data, you really
need 20-bit data (the electronics in Beckman Coulter's XL and FC500 manage
However, in the Cytomutts and in Beckman Coulter's machines (and in the
DakoCytomation MoFlo), the ADCs operate on analog signals that represent
held values of the peak height, integral (area), or width of pulses. They
can keep up with the data rate if they can do a conversion in a few
microseconds. There are plenty of 16-bit ADCs that can do this; getting 20
bits is a little bit tricky, and requires dual-range ADCs, but that solves
BD elected to do complete digital pulse processing in the FACSDiVa
electronics; they dispense with analog (or hybrid) peak detectors,
integrators, and pulse width measurement circuits and instead digitize the
signal from each detector at regular intervals. Since the pulses are only a
couple of microseconds long, and since they have to have a substantial
number of samples, or "slices", of each pulse to be sure of getting
reasonably accurate values of the peak and integral, the ADCs have to be
able to convert every 100 ns. When BD started designing the FACSDiVa
electronics, the highest resolution ADC that could convert in 100 ns was a
14-bit ADC, and that's what they used. The pulse peak values from FACSDiVa
electronics are 14-bit values representing the highest value collected
during the pulse. The pulse integral or area values are the sum of 16
14-bit values, and range from 0 to 262,128 (that's 16 times 16,383). Of
course, most of the calculations end up being done in floating point, but
the values from the ADCs are integers. The 18-bit values look much better
on a 4-decade, 1,024-channel log scale plot, but BD gives you the option of
doing a 5-decade plot, which generally makes the bottom end data look
ratty. When you consider that a 4-decade scale gets you from 100 molecules
of dye on the low end to 1,000,000 molecules on the high end, and that the
low end often represents only a few photoelectrons, making the data at best
imprecise and, because of noise contributions, often also inaccurate, it
becomes easy to avoid the temptations of 5-decade plots. The relatively
high accuracy of the digital electronics and digital compensation makes the
low end of even a 4-decade log scale plot look strange, and 2-D plots look
even stranger than histograms. The substitution of biexponential display
scales for log scales can fix this, but that's another story.
About the rarity and cost of high-resolution ADCs: I think there may now be
a 100 ns 16-bit ADC (there are now 14-bit parts that convert in under 10
ns); I doubt that there's an ADC that anybody can afford that can get a
number with more than 16 bits in 100 ns or less. But wait a few years.
>Howard, I've finally ordered your book. Wish I had it already.
Thanks, I hope this will tide you over until the book arrives. The subject
is covered in more detail there.
More information about the Cytometry