DAC gallery

wacDAC

Second go at my DIY DAC
Low temp solder paste is your friend!
Some extra PCBs if anyone is interested
PCM 5122 based

Cheers

wacDAC.png
 
Hey folks, I've decided to post photos of several D/A converters of mine here. I hope you will enjoy it ;)

First of all, moving-average 32x AD1865 DAC with no digital filter whatsoever (linear interpolation in hardware thanks to moving-average idea):

An externally hosted image should be here but it was not working when we last tested it.


An externally hosted image should be here but it was not working when we last tested it.


An externally hosted image should be here but it was not working when we last tested it.


An externally hosted image should be here but it was not working when we last tested it.


An externally hosted image should be here but it was not working when we last tested it.


Another one is with one AD1864/AD1865 and an ASRC (AD1896) acting as digital filter upsampling to 210,9375 kHz. The analog filter is 10th order FDNR (frequency dependend negative resistor - Frequency dependent negative resistor - Wikipedia):

An externally hosted image should be here but it was not working when we last tested it.


Several spinoffs were made of this idea resulting in discrette I/V stage with an active correction of input impedance with AD1864/AD1865, PCM1704 and TDA1541A:

An externally hosted image should be here but it was not working when we last tested it.


THD of that D/A converter was well beyond three zeros after the dot:

An externally hosted image should be here but it was not working when we last tested it.


PCM1704:

An externally hosted image should be here but it was not working when we last tested it.


TDA1541A with low noise current source to create a bipolar output from it:

An externally hosted image should be here but it was not working when we last tested it.


An externally hosted image should be here but it was not working when we last tested it.
 
Last edited by a moderator:
All of them do sound different and it is hard to pick one up since it all depends on your whole system, but if I had to choose one for mine I would go for moving-average with 32x AD1865. In fact, that is the one playing right now, however, the one with 1x AD1865 is quite good as well.

In general I do appreciate the sound from all of them, however, there is one which I didn't like much and that was PCM1704. I don't know what is about that chip, but I just don't like the way it sounds - it's not bad, but definitely worse than the others.
 
Lots of hours spent in PCB layout there, kudos.

I see you have some fairly complex active filters after your DAC, based on opamps. Have you tried LC (passive) filters? I ask because I tried a complex opamp-based elliptic filter after my DAC and didn't like the sound much. These days I only use passive filters - attached prototype 9th order LC filter I/V stage.
 

Attachments

  • 4LCIVstage.jpg
    4LCIVstage.jpg
    149.7 KB · Views: 529
Lots of hours spent in PCB layout there, kudos.

I see you have some fairly complex active filters after your DAC, based on opamps. Have you tried LC (passive) filters? I ask because I tried a complex opamp-based elliptic filter after my DAC and didn't like the sound much. These days I only use passive filters - attached prototype 9th order LC filter I/V stage.

It's frequency dependent negative resistance and those opamps are not in the path of an audio signal. Take a look:

An externally hosted image should be here but it was not working when we last tested it.


Instead of NE5532 there are LM4562 though.
 
Last edited:
Member
Joined 2017
Paid Member
moving average filter

I suppose your x32 moving average filter is similar to the way used in DSD by Sygnalyst. AD1865 can't operate at high sampling freq like DSD topology. I guess 768kHz is the max. In such situation, the full addition of 32 outputs (every coefficient are 1) inevitably has high freq droop. How do you organize your 32 outputs for proper frequency response in the audio band? Are your coefficients not equal to 1?
 
Member
Joined 2003
Paid Member
I suppose your x32 moving average filter is similar to the way used in DSD by Sygnalyst. AD1865 can't operate at high sampling freq like DSD topology. I guess 768kHz is the max. In such situation, the full addition of 32 outputs (every coefficient are 1) inevitably has high freq droop. How do you organize your 32 outputs for proper frequency response in the audio band? Are your coefficients not equal to 1?

maybe you can run a 1kHz squarewave (Fs44.1) through it and show the result?
 
I suppose your x32 moving average filter is similar to the way used in DSD by Sygnalyst. AD1865 can't operate at high sampling freq like DSD topology. I guess 768kHz is the max. In such situation, the full addition of 32 outputs (every coefficient are 1) inevitably has high freq droop. How do you organize your 32 outputs for proper frequency response in the audio band? Are your coefficients not equal to 1?

Moving-average is just a simple FIR filter, but the results are calculated within analog domain. In fact, its ability to filter and attenuate is quite poor in general. The idea is the same as within the following thread:

Building the ultimate NOS DAC using TDA1541A

It does exactly the same thing - linear interpolation in the analog domain.

Impulse response of that D/A converter looks like this:

5acd5adce5aec220c885e4daacecc43a_1458492538.jpg


1 kHz sinusoidal signal in a D/A converter with one AD1865 and NOS mode looks like this:

2dfc59789ba8854ea0c6f9c354ad3152_1458050030.jpg


Having 32x AD1865 to interpolate that signal using linear interpolation (well, 16 to be precise since the other 16 are used to create inversion of the signal) looks like this:

369eaa912982aacb250d9dd193ae50b9_1458050030.jpg


4 kHz with 1x AD1865 in NOS mode:

3a36d0f24a6f31acc8f23b61692559bb_1458050030.jpg


4 kHz with 16x AD1865 and linear interpolation:

a86bdb2e53fd91827f61efbb4a9c1717_1458050030.jpg


10 kHz with 1x AD1865 in NOS mode:

c8fbbe346eea861c5a3fa5b28956b70a_1458050031.jpg


10 kHz with 16x AD1865 and linear interpolation:

4e594549c76b8ede2cb6058d9c51f6d1_1458050030.jpg


The higher we get the ability to reconstruct the signal using such simple FIR is falling down quite heavily. It's expected and normal behavior.

However, after all - it does sound quite good. In fact, besides sounding good it does measure quite well since that kind of output swing from multiple AD1865 heavily decreases THD compared to only one AD1865:

c4b0b112b00aba132f27754ea7262d8d_1518006899.jpg


There is not much to it. It's a really simple idea.
 
Last edited:
Member
Joined 2017
Paid Member
Thank you for your detailed explanation. It's very interesting and exciting! This is the first time to see 16 averaging by analog DAC and the performance.
I did SIM from your screenshot of 10kHz with 16 averaging. I guess original data is sampled by 48kHz and upsampled to 768kHz to do analog interpolation.
The attached is 1024 length FFT. The second one is magnifying of the first. The third is 12kHz sinewave before and after the filter. It looks like your pic of 10kHz.:)
 

Attachments

  • fir3.jpg
    fir3.jpg
    138 KB · Views: 165
  • fir2.jpg
    fir2.jpg
    186.2 KB · Views: 155
  • fir1.jpg
    fir1.jpg
    136.6 KB · Views: 157
Cool! Indeed it is, I'm sorry I did not mention it. It's upsampled by a factor of 16 which means that for 48 kHz input it is running at 768 kHz on the output and for 192 kHz input it is running at... whooping 3.072 MHz :)

Linear linear interpolation is not upsampling. It simply changes the output waveform, prior to reconstruction, from zero-order hold to first-order hold. The true sample rate is unchanged but the distortion and high frequency attenuation is increased. This is easily seen in the photos in post #294.

Adding galvanic isolation to I2S adds massive jitter. Look at the ISO7640 data sheet. Added jitter is measured in NANO-seconds. And driving multiple DACs and shift registers with the same clock signal doesn't help, either.
 
It's just a matter of expression towards the question from xx3stkstm. There is no need to be cocky about it since I'm very well aware of how that D/A converter works.

How about you provide actual measurements of jitter? I performed several measurements including a J-Test in ARTA of this D/A converter and others and there is hardly anything to worry about. You do seem to scream a lot, but you have not much idea what is actually going on since reading datasheets won't get you anywhere if you don't know how real world works.

It is obvious for anyone who knows about filtering that this D/A doesn't do that very well. That was the whole point of this D/A converter - to try out how zero-order hold (NOS) and first-order hold (this DAC) differs from each other in terms of sound quality.
 
Member
Joined 2017
Paid Member
I agree with 3lite about jitter performance. I have measured jitter of optical SPDIF several times. Recovered clock from SPDIF receiver usually has 3 nanosecond jitter at max. It's easy to measure output jitter of DAC with jittery clock and with precise one. The clock to DAC is irrelevant to output jitter of DAC even if 3 nanosecond jitter exists. Jitter interference results in noise power of DAC output. Three nanosecond jitter is far less than 110dB THD+N, which is high-end performance.

What you need to measure is not the clock to DAC but the output of DAC. Noise power coming from the jittery clock is proportional to the DAC output frequency. The audio band frequency is very low(20kHz at max) while RF application is very high (more than 200MHz). In this situation, audio application inherently has less jitter oriented noise power by 80dB. That's why the output of DAC is not sensitive to jittery clock than a usual prospect many people have. That's my conclusion in the real world. The audio frequency is low.
 
My new DAC

DAC chip: PCM-1704
Sampling/Filter: CS8414 and DF1704E
Digital Input: Spdif/ Optical and AES/EBU
Analog output: RCA and XLR
PSU with 4 Telama transformer
This ‘s DAC for CD transport! :)
 

Attachments

  • B0299B43-8BE3-4EDF-9453-3A350A26BF28.jpeg
    B0299B43-8BE3-4EDF-9453-3A350A26BF28.jpeg
    901.5 KB · Views: 726
  • CEDCA600-09D3-4401-9BD6-D3F34099E75C.jpg
    CEDCA600-09D3-4401-9BD6-D3F34099E75C.jpg
    581.6 KB · Views: 679
  • 14899384-4CA6-461D-BC91-7E05184C8A81.jpg
    14899384-4CA6-461D-BC91-7E05184C8A81.jpg
    1 MB · Views: 629
  • 8CFC9A98-E737-4C70-A15A-050F21CE768D.jpeg
    8CFC9A98-E737-4C70-A15A-050F21CE768D.jpeg
    901.5 KB · Views: 609