[sdiy] discrete DAC accuracy
Fredrik Carlqvist
ifrc at iar.se
Tue Jan 13 15:08:13 CET 2004
Ah, now I see where I'm wrong!
Thank you René!
I knew it was too good to be true...
Fredrik C
PS it still looks very good in my scope though. Perhaps just a fluke or a
result of getting all resistors from the same batch...
-----Original Message-----
From: René Schmitz [mailto:uzs159 at uni-bonn.de]
Sent: Tuesday, January 13, 2004 15:02
To: Fredrik Carlqvist
Cc: 'Czech Martin'; synth-diy at dropmix.xs4all.nl
Subject: Re: [sdiy] discrete DAC accuracy
Fredrik Carlqvist wrote:
> I appologize if I seem daft, but please try the following:
>
> The relative error between two consecutive codes will be largest at
> roll-over pairs like 0x8000-0x7FFF, 0x1000-0x0FFF etc. A pair like
> 0x8000-0x8001 will have a very small relative error.
Indeed.
> Worstcase absoulte error for the code 0x8000 is 2% (1.02/2.00) with 2%
> resistors. The absolute error for the code 0x7FFF is also 2%. The
> maximum relative error between these two particular codes is then
> around 4%. There is no principal difference between any other two
> consecutive codes. Ergo, worstcase relative error for two consecutive
> codes is 4%.
>
> I do realize that only 6 or even just 5 of the 16 bits has anything to
> do with the absolute precision. But if any two consecutive binary
> codes are always within +/- 4% error relative to the other, then the
> output function must be monotonous!
It is not, simply because the output at 0x7fff might be bigger than that
at 0x8000. Assume errors of +2% for 0x7fff and -2% for 0x8000.
0x7fff*1.02 = 0x828e, and 0x8000 * 0.98 = 0x7d70.
See why it would not be monotoneous?
> PS I have already built it, and it *seems* monotonous!
Maybe the accuracy to measure it isn't high enough?
Cheers,
René
More information about the Synth-diy
mailing list