DAC linearity test CD

I am thinking of creating a test CD for checking DAC linearity. It would contain 15 tracks. The first track contains:

0000000000000001 repeated 15 times
0000000000000010 repeated 15 times
0000000000000011 repeated 15 times

That is a "mini-triangle" containing 3 discrete analog levels, something like this:

oooooooo____ooooooooooooo____ooooooooo
oooo____|oooo|____oooo____|oooo|____oooo
____|oooooooooooo|____|oooooooooooo|____

Don't look at the o's, just the bars to imagine the waveform.
45 samples make up about 980 Hz. One step is about 43 uV. I suppose this needs to be further amplified (probably with a simple op-amp gain stage) to be viewable on an oscilloscope. This track will check the 2nd digit. The second step should be exactly between the first and third step.

The second track contains:

0000000000000011 repeated 15 times
0000000000000100 repeated 15 times
0000000000000101 repeated 15 times

That is the 3rd digit is checked for linearity.

With 15 tracks one could check all the bits from LSB+1 to MSB.

What do you think about this idea?
 
oshifis said:
One step is about 43 uV
If it is referred to a standard 2 V RMS audio signal, one step is 86.3 uV. I guess a x100 electronic "magnifier" (op-amp) would do. My scope has 5 mV/div input, this should be OK.

My idea is to "pull" the internal current generators of the TDA1541A at its external decoupling pins 7-13 and 18-24. I think these are the seven most significant bits. Has anybody got more detailed information on the internals of the TDA1541A?
 
Here are the linearity test CD WAV files:

http://tube.fw.hu/lintest.zip

There are 15 files in the archive (Track01.wav to Track15.vaw). Track1 is for testing bit 1 with reference to bit 0 (the LSB), and Track15 is for testing bit 15 (the MSB) against the LSB. Each track is 4 minutes, the total is 60 minutes.

I have not come to the scope observing yet, but I listened to it. Some tracks are vaguely audible and some are not. This is an indication of difference in bits, i.e. nonlinearity.
 
some free tools:

http://www.diyaudio.com/forums/showthread.php?postid=1061145#post1061145

you may want to consider more complex wavefroms/larger ranges, just establishing the bits near each transition are relatively uniform isn't the whole story

read up on ADC DNL, INL, Spurious free dynamic range, IMD, Multitone testing...

In audio DC accuracy, low frequency noise are relatively unimportant but could limit your measurements
 
georgehifi said:
oshifis, are these files WinRAR? If so they are corrupted and will not unzip with WinRAR unzipper.

Cheers George
I fixed it. The archive can be extracted with Winzip. The fundamental frequency is 689.0625 Hz and the signal amplitude is -90.31 dB. Each step is 16 samples, not 15.

The TDA1541A/S1/S2 is selected and specified for linearity, this is why I think it is the most important parameter.
 
oshifis,

thanks, very useful files.
Track 15 seems to be good to (pre-)adjust MSB very fast, did not check how accurate.

Another useful files would be single bits turned on continiously to adjust bits of discrete DAC with a DVM.
Or single bits turned on and off with same frequency like posted files
to adjust bits of discrete DAC with analyzer automatic Vpp measuring function.
:rolleyes:

Analyzer with 500mV full scale and 40x preamp:

PCM56 8x os Yamaha CDX-5000 good adjusted MSB track 15

pcm56good.jpg


PCM56 8x os very bad adjusted MSB track 15

pcm56bad.jpg


I measured also PCM63, less noise but no better linearity.

TDA1541 4x os Philips CD960 MSB track 15

tda1541msb.jpg


TDA1541 bad bits ( various tracks )
It also has a few good ones :D

tda1541badbits.jpg
 
oshifis said:

That is a "mini-triangle" containing 3 discrete analog levels, something like this:

oooooooo____ooooooooooooo____ooooooooo
oooo____|oooo|____oooo____|oooo|____oooo
____|oooooooooooo|____|oooooooooooo|____

Don't look at the o's, just the bars to imagine the waveform.
45 samples make up about 980 Hz.

It should look like in my first picture.
Tracks are bit n switched on, +1/0/- 1 LSB
 
AndrewT said:
Hi,
you can obviously measure the outputs.
Can you hear them at these LSB levels?
Do the different "looking" outputs sound different?


Bernhard said:
It doesn not make sense to listen to such a signal at all. It is no "audio" signal.
I don't want you or I to listen to that signal for musical enjoyment!

I enquire whether one can hear a signal that is so close to a CD's limit of resolution. And whether the "wrong looking" signals sound the same or different from the more correct looking version.
 
oshifis said:
Wow, that's better than I expected! What kind of analyzer are you using? My scope has 5 mV/div sensitivity and I can't see anything but noise. I have no preamp yet.



The analyzer plugin has 14 bit resolution and 1V vertical full screen sensitivity ( 500mV 0p ), the gain should be 400x, two cascaded 20x channels ( big error in other posting :xeye: ) but it is 1470, so it is good visible.
 
AndrewT said:




I don't want you or I to listen to that signal for musical enjoyment!

I enquire whether one can hear a signal that is so close to a CD's limit of resolution. And whether the "wrong looking" signals sound the same or different from the more correct looking version.

I did not try to listen and I will not. It is not important.
It is a very small signal but if you turn up the volume you will hear something and different looking signals will sound different.

But how the LSB is looking has great impact on how low level audio signals sound.
 
Bernhard said:
It is a very small signal but if you turn up the volume you will hear something and different looking signals will sound different.

But how the LSB is looking has great impact on how low level audio signals sound.
These are precisely the points I was hoping for confirmation of.

Does the "look" correlate with the sound heard? or at these very low levels is the "look" a complete red herring?
 
Finally I built a x100 preamplifier (NE5534AN) with sufficient low noise and hum-free. The DAC still produces some switching artifacts so that the signal line is vertically wide, but the levels are clearly seen. On bit 12 I have seen the same problem as on the last trace of Bernhard (TDA1541A bad bits) and some higher order bits are not very nice, either.