[sdiy] [repost] DAC selection

David J. Hughes hughes_david_j at btopenworld.com
Wed Oct 6 19:07:46 CEST 2004


Paul,

Very useful information. Highly relevant to my current project.

Thanks for reposting.

David





on 6/10/04 3:14 PM, Paul Schreiber at synth1 at airmail.net wrote:

> There were 3 articles I wrote around 9-15-2002, check archives. Here is part
> 3, 
> which may be helpful. Note: I am referencing Maxim parts here: you can get
> *free 
> samples* off their website if you ever want to DIY a MIDI-CV. I don't have the
> other parts, but this should help.
> ______________________________________________________________________________
> _________________
> 
> Here is the nitty-gritty: picking the right (translate: cheapest!) DAC for the
> application.
> 
> What you do is 1 simple, easy calculation. You divide up the overall voltage
> output you want the
> *DAC* to do by *1/2* of the error voltage. This will tell you how many 'steps'
> the DAC needs at
> +-1LSB INL. Again, we DON'T CARE how many steps the INPUT is, we only care
> what 
> the DAC ACCURACY
> is!!
> 
> Let's start with the following "design document":
> 
> Output Range: 0 - 5V
> Error: 1mv
> 
> So, the number of DAC steps, at a specified INL (this is on the data sheet) of
> +-1LSB is:
> 
> 5/.0005 = 10,000 steps, and each step is +-1LSB INL (this is a function of
> laser 
> die trimming at
> the manufacturer).
> 
> OK, so what DACs have 10,000 steps? Well, the DACs are *binary weighted*, so:
> 
> 12 bit: 4096 steps
> 14 bit: 16,384 steps
> 16 bit: 65,536 steps
> 
> We are immediately hosed with a 12-bit DAC, so the next in line is a 14-bit. I
> suggest the Maxim
> MAX544BCPA, SPI interfaced 8-pin DIP part with a MAX675CPA +5V voltage
> reference.
> 
> Now, what if we can get a better laser-trimmed part, say +-1/2LSB? Well, let's
> look at the
> MAX536ACPE, which is a quad 12-bit DAC at +-1/2 LSB. Instead of our 1mv error,
> we have (5/4096)
> 1.22mv error. So, for a multi-channel MIDI-CV, whose DAC output is ranging
> 0-5V, 
> and you live
> with a 1.22mv error (1.5%), the MAX536ACPE is your part.
> 
> But wait! As you are browsing parts, the MAX5541, LOW COST 16-bit part catches
> your eye.
> Hmmm...the data sheet says this thing as a whopping 16 LSBs of INL error! Can
> we 
> use that??!? The
> MAX541 has 4LSBs of INL buts it's twice the price. Let's check them out.
> 
> In a 5V span, 1 'ideal' LSB in a 16-bit system is (5/65536) = 76.3uv.
> Therefore, 
> 16LSBs are
> (16)(76.3uv) = 1.22mv! Hey, I've seen THAT number before :)
> 
> Yes, it turns out this "16-bit" DAC has the SAME ACCURACY as the "12-bit"
> DAC!!!! So why
> bother??!?
> 
> There are several reasons, and one is the dreaded Marketing :)
> 
> But, let's say you wanted a -5V to +5V span, and THEN the 4LSB MAX541C grade
> would work great! If
> you used it over a 0-5V range, you can go nuts and use the 'A' graded
> (trimmed) 
> part and get
> errors under 300uv (yummmy, MOTM territory....)
> 
> Last point: you may find out that it is "easier" to have the DAC span a
> PORTION 
> of the total
> output, and have additive DC voltages to span octaves. This technique is use
> in 
> some commercial
> converters. Let's say you have the extreme case of the DAC spans only 1
> octave. 
> What can we use?
> 
> 1/.0005 = 2000LSBs. So, a 12-bit, DAC at +-2LSBs is fine. In the 'olden days',
> there were very
> accurate 8 and 10-bit DACs (say trimmed to +-1/8LSB) that could work. But
> today, 
> you would get a
> low cost 12-bit one.
> 
> There is one more factor, and that is a software issue. If you have 7-bits in,
> and 14-bits out,
> you need a lookup table for the DAC. Also, this wider spread allows for things
> like pitch bend,
> aftertouch and software LFOs not to have 'zipper noise'.
> 
> Well, hopefully this sheds some light on DAC selection.
> 
> Paul S.
> 
> 




More information about the Synth-diy mailing list