Home > DIY HiFi > Building the $99 ES9018 DAC Board (Part I)

Building the $99 ES9018 DAC Board (Part I)

January 14, 2013 Leave a comment Go to comments

Previous post here: Board: [link]

GROUND PLANE MOD

Note: the current version of the board has a solid ground plane, so this mod only applies to early versions  (like mine) of the board. You can see the new version here: [link]

It is an industry best practice to have a continuous and mostly uninterrupted ground plane in any layout “no matter what”. This allows for uninterrupted ground current returns, following a lowest impedance path and also terminating (confining) the electric fields of power and signal lines. Now this doesn’t mean “completely solid”, but the aim is to have as continuous as possible. In a two-layer approach, this is harder, but according to industry documentation, a well designed 2-layer approach would approach 98% of the capability of a 4-layer PCB.

The return ground current likes to flow under or along the signal paths. That is, if you have electrons flowing in the signal paths on one direction, then there are electrons flowing in the opposite direction right under or along the signal lines. This is just the law of physics, otherwise you will be piling up electrons on one side of a conductor and this is impossible. (It is more complex than this, but this is the simplest explanation).

According to “Op Amp Applications Handbook” by Walt Jung, p. 640 (link),

Whenever there is a break in the ground plane beneath a conductor, the ground plane return current must by necessity flow around the break. As a result both the inductance and the vulnerability of the circuit to external fields are increased. This situation is diagrammed in figure 7-32 where conductors A and B must cross one another

groundcurrents

This board has mostly a continuous ground plane except it is broken by the opamp power lines. If you follow the output of the DAC, there are 4 lines that connect DAC to opamps. The return ground current under the signal path would want to follow the signal path but it is interrupted by the power lines and thus it has to flow around. This is cause for added distortion (how much and whether audible or not? I don’t know).

In order to remedy this, I’ve installed bridges right under the signal path where it is interrupted by the power lines. In fact there are 5 such locations in the board.

1-DSC03291

The 5th location is this one. There is no “6th location” because in that location, the ground plane is uninterrupted.

1-DSC03292

I think, 24 gauge (cat-5 cable) wire is sufficient. Here is compared with an 18 gauge cable. Flattening the wire allows for easier soldering (it won’t roll around the board). Actually I will install a wider “strip”. See the text below.

1-DSC03295

Scrapping off the pads takes some patience and for me, a lighted magnifying lens 🙂

1-DSC03293

1-DSC03296

According to this document from TI [link]

One thing that many people forget about is for a current to flow out to a point, there MUST be a return path or else current will Not flow. Since there is a current flow, then the return current flow will find a way back to its’ source one way or another.

Return current density is highest directly under (or over) the signal trace it was sourced from. Even if a solid ground plane is used, the concentration of current flow will still be adjacent to the signal source trace.

current

Therefore, a wider bridge is better than a narrow bridge, but certainly a completely solid ground plane (which is desired) is not required to handle the return current.

Further thoughts

According to “Successful PC Grounding” the return current path has been characterize with relation to the signal frequency. At low frequencies (1KHz), the return current mostly flows across the shortest physical distance. At high frequencies (1MHz), the return current path is mainly under the signal path. This basically says that the return current follows the path of least inductance.

The following two diagrams shows the return current path for low and high frequency signals red/yellow/green showing the highest current concentration.

LFCurrentPath HFCurrentPath

This means that at audio frequencies, a large portion of the ground return current will follow a path of shortest physical distance.

I’ve added another path for the signal ground return current to flow back to the DAC, one straight from the ground pins of the single ended output to the DAC chip, crossing the power lines.

Here are the photos with the installed ground current bridges:

DSC03301

DSC03303

DSC03304

I suspect this is the path of the return ground current. As there are no ground connections in any of the opamps, the signal return current is that which is coming back from the components downstream from the DAC. At audio frequencies, most of the return current would want to follow a path of shortest physical distance. Some will flow back under the signal lines.

It can be noted that even without the return current bridges, the return current flow with the original board is not that bad: the current just makes a long curve on its way to the DAC.

CurrentPath

The new version of the board has a solid ground plane

NewESS

CLOCK INSTALLATION

Tried to figure out what’s the best way to install a removable clock on this board. Ian had developed a clock carrier board, so I decided to use it. Here is what I have:

Installed a female pin header/socket connector to the carrier board

DSC03284

Used smaller headers that “standard”. These are metric 2 mm pitch headers. The typical ones are 0.1″ pitch. The pins are the ones used to connect the AVCC to the Buffalo DAC

DSC03289

Scraped the solder mask to expose the Vcc and GND planes. Since the connector is low profile, the clock can also be used in Ian’s FIFO reclocker board by installing the pins. Clock out and enable will be connected with wires to the respective pads.

DSC03285

The clock board connects to pins that are installed in the clock pads in the DAC board in the following manner. I bent the pins first, put them on the pin header and soldered them to the pads -an easy job.

DSC03282

DSC03283

The clock carrier board connected to the DAC board:

DSC03286

DSC03287

SAW (Surface Acoustic Wave) clocks

epsonSaw

There has been some interest in using SAW clocks for the ES9018 DAC, and favorable results have been reported [link] even though these oscillators measure poorly as compared with the Crystek clocks typically used with the ES9018:

A 100mHz Epson SAW was compared to the 100mHz Crystek fitted as standard to the Twisted Pear BII… The outputs of each dac could be switched on the fly to feed the pair of I/V transformers. Of the 5 listeners, 3 clearly favored the SAW, and 2 (including myself) were undecided though one of us would choose the Crystek if forced to. The SAW, even to me, appears to have better resolution.

The Epson 100 MHz clock is available from Digikey for under $4 [link], datasheet [link]. Technical details [link]. Epson has some leading technology in SAW oscillators [link]

According the Epson, the SAW oscillators have advantage over traditional crystal oscillators. I’ve pulled this info from their documentation

Type Circuit
Example Jitter
SAW Fundamental, high frequency oscillation and high drive Epson XG-1000CA (106 Mhz) Excellent. The noise floor is a low because of the high drive operation, and the high frequency is a steady fundamental oscillation.
Crystal (Fundamental) Fundamental, high frequency oscillation and low drive Excellent. Q value of the AT crystal unit is high and a fundamental oscillation though the noise floor goes up more than the SAW oscillator due to the lower drive level.
Crystal (3rd Overtone) Overtone, high frequency oscillation, low drive and fundamental supression Crystek CCHD-950 (100 MHz) Good. The oscillation stability is inferior to two above-mentioned methods because the fundamental oscillation is suppressed and overtone is oscillated.

Note: 3.3v 100 MHz parts are not available from Digikey, so I linked 106 MHz parts for reference. It is not recommended to use parts in excess of 100 MHz

“Standard Oscillator”

Another good part are the FOX Xpresso oscillators. Available for under $4 for a 100 MHz part, 25 ppm frequency stability, 3.3V and in 7×5 mm size [link]

xpresso

Jitter for a 100 MHz part can be calculated from the measurement plot provided in the datasheet (I have plotted the curve for the Crystek CCHD-80 which was standard equipment on the original Buffalo II DAC.

XpressoVCrystek

The phase jitter value 10Hz-1MHz for a 100Mhz part is approx a very respectable 2.7 psec. RMS.

ES9018 POWER CONSUMPTION [link]

Analog 3.3V supply

  • AVCC-R (3.3V) = 32mA
  • ACCC-L (3.3V) = 32mA

Buffalo II AVCC is 50 mA per side including the shunt current through the regulator [link]

Current consumption for AVCC also depends on the clock frequency and the actual voltage. The chip can operate all the way to 4 V (although many do not recommend doing so). According to a “Analog Power Supply Consumption” [link], the relation with voltage and frequency is as follows (I took the data from ESS and extrapolated it to 100 MHz and also beyond 3.8V):

avccPowerAnalog 1.2V supply

  • AVDDL (1.2V)= 8mA
  • AVDDR (1.2V)= 8mA

Digital 1.2V supply. This is the “core” of the DAC

  • DVDD (1.2V) = 105mA

KlipschKid over at diyaudio [link] has done some measurements of the 1.2V supply (which combines both the analog and digital 1.2v supplies) with respect to clock frequency.

I’ve plotted his results (subtracting 5 mA used by the 7805 regulator)

There is also the current value for a 50 MHz SAW oscillator, at 110 mA [link] which is kind of on the high side but still ballpark value.

1.2vCurrent

I had previously measured [link] the power consumption for the B-II 80 MHz DAC and found the current to be at 250 mA total. If we subtract the 100 mA for the AVCC and the 10 mA for the  clock, we end up with 140 mA for the 1.2V(+3.3V digital) supply. This matches well with the graph above.

If playing 192KHz sample rate vs 44.1KHz, the overall current consumption increases 30 mA.

Digital 3.3V supply

  • DVCC_T (3.3V) = 5mA
  • DVCC_B (3.3V)= 5mA

Oscillator supply

  • VOSC (3.3V)= 10mA. Actually for the CCHD-957/950, the current consumption of the oscillator is 15 mA typical and 25 mA max

IMPLEMENTING THE 1.2V SUPPLY

There are three 1.2V supplies for the ES9018 chip, analog left, analog right and digital core. these are supplied by a single 1.2V regulator.

Here is some evidence that there is no need to feed the analog supplies separate from the digital supply (NOTE: most of my knowledge on this comes from the good people at diyaudio especially Russ of TPA who have shared a lot of information with us diy folks.):

I conversed with Dustin about this at length as well as experimented on my own. The 1.2V supplies that are on the analog side are actually just driving level shifter gates into the modulators from the core. It makes no difference if they are powered separately whatsoever. [link], [link]

and

The 1.2V supplies only do two things in the DAC, the first is that it drives the core of the chip. This is of course crucial. The second is it drives the gates of level shifters (a high impedance) into the quantizers.

It is important to understand what these level shifters do. They simply shift the bits from 1.2V core voltage to 3.3. They do not effect the analog reference voltage. In fact the reason it is imperative that the AVCC be an extremely low impedance is because the frequencies involved are extremely high. All the VDD supply has to do is maintain enough voltage to keep gates of the Qs saturated. The AVCC supply is crucial because it has to absorb and source current at very high frequency and with very low noise at the same time.

Now it is important to bypass the VDD pins well (as I have done) but these pins are not in any way tied to the analog reference voltage.

The key to good results is a clean very low impedance AVCC supply.

…[link]

The 1.2V regulator

The 1.2v supply powers the core of the DAC  and it is therefore a pretty important supply. The recommended regulator is the widely used and low noise ADP151-1.2 and can supply 200 mA maximum.

The operating current at 100 MHz clock frequency (160 mA) is already very close to the max that this regulator can provide. In addition, if higher sample rate material is used, then we are getting very near (or at) the max operating current.

I think a more capable regulator is a good idea. I like the LT1963A which can provide up to 1500 mA. (we audio diy types like overkill :-)). The adjustable version can be configured to provide to 1.21V and it is also the lowest noise configuration for the family.

Noise is 14 uV RMS (compared to the ADP151 at 9 uV RMS). Page 18 of the datasheet [link] says:

The LT1963A regulators have been designed to provide low output voltage noise over the 10Hz to 100kHz band-width while operating at full load. Output voltage noise is typically 40nV/√Hz over this frequency bandwidth for the LT1963A (adjustable version). For higher output voltages (generated by using a resistor divider), the output voltage noise will be gained up accordingly. This results in RMS noise over the 10Hz to 100kHz bandwidth of 14µVRMS for the LT1963A increasing to 38µVRMS for the LT1963A-3.3.

Compared to the LT1763 (used in Buffalo II) it is actually lower noise at the lower end of the frequency scale (<1KHz) and almost the same at the higher frequencies. At, say 100 Hz, the noise density of the LT1963A is 40 nV/SqrHz and for the LT1763 it is near 300 nV/SqrHz.

1963aNoise 1763Noise

The LT1963a is also designed for Fast Transient Response. I’ve looked at many datasheets, the LT1963 seems the lowest noise of the “fast transient” LDOs. Fast transient is specifically designed for powering digital cores such as DSP, FPGA and in this case the digital core of the ES9018.

Modding the board and regulator

The challenge here is to install it in the board since the footprint is for the ADP151.

DSC03306

Comparing the pin assignment of the ADP151 and LT1963 we realize that they are kind of mirror image of each other.

For 1.21V operation, the ADJ pin in the LT1963 is tied to the OUT pin. SHDN is the EN(able) pin.

adp151 lt1963

Flipping the LT1963 and bending the pins the other way should do the trick.

DSC03321

DSC03310

Scrape the solder mask to make the pads.

DSC03320-001

Checked the ground pads to determine the correct pin orientation. For 1.2v operation pins 1 and 2 are shorted. Pins 3 and 4 can also be shorted. Made pads for pins 5 (input) and 7 (GND). Pin 6 and 8 can be connected with wires.

DSC03319-001

The wire connects the enable pin to high (input voltage)

1-DSC03304

1-DSC03303

These are the bypass capacitors I used. The regulator output bypass is 100 uF with 30 mOhm ESR. According to the datasheet a minimum of 5 mOhm for a 100 uF capacitor is required for stability and reduced ringing. There is an ELNA 1000uF on the input side.

1-DSC03302

Works as specified: 1.21V. I used two alkaline batteries as input voltage and 10 ohm resistor as load (120 mA of current)

1-DSC03297

IMPLEMENTING THE 3.3V AVCC

The conventional wisdom is to use a shunt regulator for low noise and low impedance.

I think I will use the ultra low noise TSP7A47 series regulator from TI and add capacitors in parallel to the bypass capacitors for the AVCC supply lines to improve the transient response.

AudioLab uses such a configuration:

1-mdac2

Here is a mockup with 5 mm capacitors:

1-DSC03305

I2S CONNECTIONS

Here is a good reference post from diyaudio [link]

We’re talking about basic high speed digital design, i.e. we want the logic 0/1 to arrive at the destination (where it matters) at the right levels and at the right time.

The uni-directional (transmitter –> receiver) signal is as simple as things can get and is what I2S runs on. You worry about reflection when the wire/trace is long and/or when the signal risetime is fast (e.g. a simple reset signal from a FPGA can have issues). To help alleviate that, series termination (located at the transmittter) is the simplest form. Your PCB stackup and trace width/separation should also be design to match the impedance characteristics (e.g. 50ohms usually for single-ended, USB is 85ohms differential).

Now how do you know if your circuit is well taken care of? You look at the signals with a scope (proper probing required). You want to ensure that the signal rise/fall edges are monotonic, under/overshoot is within spec and crosstalk from adjacent signals are acceptable. The first 2 parameters are achieved by proper high speed layout techniques (use termination, proper pcb traces, minimal via transitions, no routing over plane splits, etc). The last parameter is achieved by proper pcb layer stackup design and wise routing.

Do NOT EVER put caps on digital transmission lines. Series caps are typically for AC coupling (more commonly seen with PCIe than I2S). Parallel caps can snub terminations but the danger here is that they slow down the risetime of the signal and can lead to loss of timing margin (data setup/hold).

Series termination are used successfully for far more complex stuff, e.g. SPI at 50MHz, DDR2/3 at 500MHz. Typical values are 22R-33R. I have never seen 47R series termination resistors in any embedded design. I was just at Embedded Systems Conference West in San Jose. Saw plenty of reference designs, including I2S/digital audio stuff. Nope, no 47R there.

Look up Dr Howard Johnson’s books (the digital designer, not the hotel chain). Lots of good info.

For the typical hobbyist like the OP with a simple I2S circuit, I’d just put my chips as close together on the PCB as possible and call it a day. If you like to cable I2S from one board to another, then that is where you’ll run into issues. Most important point for cabling I2S is to ensure adequate ground returns for every signal (e.g. you use ribbon cable, put a GND wire next to every signal, use a 2-row connector with one row being all GND pins). Consider active buffering if your cabling is long.

Continue reading here: Part II: [link]

  1. Emphrygian
    January 14, 2013 at 15:06

    Interesting stuff about the AVDD voltages! I’m actually designing my own regs for the ackoDAC and was (is?) planning to use Flea type regs for all AV* and VOSC voltages, but perhaps I can use simpler designs like the LT1763 reg I’ve already built and tested for the AVDD. I could also use this info as an excuse to test the TPS7A4700 😉 I’ve been itching to go back and redesign the DVDD and DVCC regs using it…

    Anyway, has anyone tried going from a higher performance reg to a lower peformance one on AVDD and observed the differance (if any)? Or vice-versa?

    While on the topic of regulators, has anyone tried using the LME49990 instead of the AD797 for supplying the AVCC voltages? The output current limit of the LME49990 makes me somewhat hesitant to try it out, but I’m thinking at 3.3V output and +/-6V supplies it should be fine. Also, the LME opamps recommended in the ESS application note (like the LME49710 and LME49720) have limits similar to the LME49990 (which was released after the ES9018, correct?).

    • BlgGear
      January 14, 2013 at 16:48

      Interesting questions. I would encourage you to post in diyaudio, you will get more responses there. For me, all the digital supplies can be handled well by off the shelf serial regulators. the TPS7A47 seemingly the best candidate. Too bad the lowest voltage is 1.4v so it cannot feed the digital 1.2 core supply for the ES9018. AVCC is best served by a shunt regulator. But you may want to try the TPS7A47 with the opmap for the AVCC

  2. Emphrygian
    January 14, 2013 at 20:31

    Yes, I know I should, I just haven’t gotten around to it. And maybe, just maybe, I thought a few of the usual suspects (like qusp) would chime in here too =)

    Anyway, for getting 1.2V out of the TPS7A47 I was thinking of using a voltage divider on the output. Should still be lower noise than the LT1763 and even if the temp coeff might be somewhat worse, I’m thinking it will be an overall improvement in regulator noise. If the improvement is worthwhile is another question 😉

    For AVCC I’m going for a MAX6126 Vref, an LPF and then the LME49990 or AD797. Basically, it’s the circuit described here: http://www.maximintegrated.com/app-notes/index.mvp/id/3657, minus the MOSFET on the output, and possibly a lower output C.

    • BlgGear
      January 25, 2013 at 20:11

      I am going to try the LT1963a. Easy to implement for 1.2V (no adjustment, just tie the adj pin to Vout) and also low noise: 14 uV RMS. How is going getting the 1.2V out of the 7A47? The problem with voltage divider is that the voltage drop depends on the current…

  3. Jonathan
    January 16, 2013 at 17:39

    There is a very recent video from a very smart guy named Shahriar Shahramian. He has a video blog and in this episode he talks about DAC’s. He talks about different types of disturbances in this video and also does some test’s with a home-build DAC. So if one of you has some time left over….

    • BlgGear
      January 16, 2013 at 21:13

      Thanks so much. I will definitely take a look.

  4. April 16, 2014 at 05:25

    Could you tell me please, is there any different on the audio output (SNR, THD etc) before and after you applied the modification ?

    • BlgGear
      April 18, 2014 at 00:49

      I don’t know. Since I have many other DACs, I have not finished building it. However, the new boards have an improved ground plane so you don’t have to worry about it. In addition, I don’t have the tools to do those measurements.

  5. September 14, 2016 at 16:24

    ???? ??? ????????

  6. September 14, 2016 at 18:13

    the venus factor scam

  7. September 14, 2016 at 19:01

    peixoto swim

  1. April 19, 2013 at 08:08

Leave a comment