Trying to build a DAC, very very confused


2011-09-20 7:51 pm
Alright so I've settled on using the WM8741 for a DIY DAC. Now, I'm not entirely sure what I'm going to use as a source, but I know that the audio will be decoded and spit out by the MCU as an I2S stream. Basically, what I'm confused about is the talk of things like FIFOs, isolates, and a bunch of other stuff that I forget. What I want to know is this: how do I get the I2S stream from the source to the WM8741 most reliably? I assume I'm going to need an external clock to combat jitter, do I need a separate one for each sampling rate? Is there anything else that I am missing?

Hugh Jazz

2013-02-15 5:19 am
Good source is XMOS, USB to I2S.

Example : Xmos 384kHz High Quality USB to I2S PCB with Ultralow Noise 6 5UV Regulator | eBay

Use twisted pair of wire - 4 pairs, 8 wires - so each signal have a ground return next to it. It is reliable and good, if under 10cm.

Or use u.fl cable for each pair.

Isolator can stop noise from source so the sound is better. You can add later.

FiFO can store and re-clock data so the sound is better. You can add later.

External clock depends on the DAC design and other device that add later.
fifo doesnt store anything, technically its a buffer, it only stores (while it fills) till the buffer is half full, before it starts outputting, after its turned off everything vanishes.

Despite much web space, advertising and text enlisted to promote an improvement, an external clock by itself will not improve anything and will not combat jitter, on the contrary it will add jitter vs onboard, unless:

• it is of significantly higher quality than the onboard clock
• it is able to be mounted reasonably close to the DAC chip (10cm max, preferably much less)
• it is able to be connected by impedance controlled 50Ω connections
• it is supplied with a very low noise power regulator

I recommend Amanero over the Xmos for USB->i2s input without a second thought.

MCU spitting out i2s/PCM? erm... sounds like youve got your wires crossed so to speak. Generally an MCU refers to a microcontroller used to control the operation of other components, rather than doing anything by itself; some devices will have an on-chip MCU, but thats not the norm.