Could some DSP or electronics guru please direct me ? I am trying to get hold of a typical (some standard number of resolution bits) flash ADC encoder logic equations. Any hints, pointers would be very valuable. Thanks in advance for your help.
Flash ADC encoder logic equations
Mar 30, 2011
9 Replies
There may be some tricks, but basically a flash encoder with N bits has
2^N - 1 comparators, that will go off in a pattern of [[M ones] [2^N - M - 1 zeros]]. The logic is just a matter of accurately counting to M, probably while also ignoring patterns that go [1 1 ... 1 1 0 1 0 0 ... 0 0] or similar.Have you googled "flash ADC circuit" yet?
Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" was written for you.
See details at http://www.wescottdesign.com/actfes/actfes.html
You talking about a digital potentiometer?
The way your question is formatted "Flash", that is the only thing I can think of.
For the resolution count.
Res = 2^NumberOfBits;
a 12 bit ADC is common in basic set ups, that would = 4096 different values.
If you're talking about something else, you got me? Etc.
Jamie
h
That pattern "ignoring" scheme is what they call anti-sparkle logic.
formatting link
This paper has a thermometer decoder towards the end. I'm not sure if anyone ever published their anti-sparkle logic, but it's not that hard to come up with a few schemes. Then again, many people don't know the inside of a logic gate these days. ;-)
Flash converters are notorious for being difficult to drive. A flash converter with the buffer on on-board is worth the money if the specs include the buffer in the testing.
It isn't terribly easy to do that count, it takes order of (M) clock cycles. I think there is a gate tree that does it better, the first (MSB) is obviously the same as comparator number M/2, and the last bit (LSB) is the parity of the ensemble of comparator values. For MSB-1, it's gonna be
( [MSB] ^ {comparator 3M/4]) V ( /[MSB] ^ [comparator M/4])
and you can pretty obviously generate the whole string of M bits in log2(M) time with enough gates.
ash
Flash converters work in one clock cycle, hence the name flash!
Thank you for each of your replies. What I am really after is the priority encoder at the end of the flash ADC, which generates the bits - I would like to verify the Boolean equations for these.
as
...
No, flash converters CAPTURE in one clock cycle, you can pipeline a cascade of subsequent logic so that the result comes out of the output pins several cycles after the capture; there will be multiple captured values in midprocess, and one being captured, and one fully-encoded output, on each clock pulse. So, throughput is one-conversion-per-cycle, but latency of the encoded output may be longer than one cycle.
has
That is one way to build them, but certainly not exclusive. There are applications where latency is not acceptable.
to
flash
has
go
The last time i did a priority encoder was back in the Tango Schematic = for DOS days. Say 1980s? Not sure if i have any copy of that circuit any more. I think the last time a saw one was for the CD3306 or CD3308. I think they show one in the 8259 programmable interrupt controller as well.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required