I need guidance on dac design

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
I keep running into the need to design my own dac PCB and I can't ignore the need anymore. The problem is I don't have any digital design experience or coding experience. I would kill for a one to one with someone that knows what they are doing but I know that isn't going to happen without paying someone so I'm hoping to get some help a bit at a time here.

I want to design an ESS9038 dac that takes I2S input with fixed settings. I don't need the XO on board because I'll be using IAN's fifo for that...at least until I can figure out how to design a fifo, god help me there.

So I just need a basic dac with no XO, only I2S input, and no output stage. Is it as simple as connecting the data lines and connecting an MCU to the dac with some third party software from the internet? How do I get access to the ESS9038 datasheet?
Also what are the pros and cons to using the DAC in regular stereo rather than stereo balanced?
 
Last edited:
You have a tremendous amount to learn, a lot more than you might imagine. You haven't even said what kind of ES9038 dac you want to build, or why you would want a FIFO when superb, state of the art ESS Sabre chip dacs like Benchmark DAC-3 don't use one or need one. You seem to have completely overlooked AVCC power, and problems potentially associated with running high frequency RF around, making sure a FIFO or whatever is actually fixing all your jitter problems, etc.

One thing you might do is start reading the ES9038Q2M thread, where you can learn quite a lot about many aspects of Sabre dac design. Some possible posts to start with might include these: http://www.diyaudio.com/forums/digital-line-level/314935-es9038q2m-board-240.html#post5526080 and: http://www.diyaudio.com/forums/digital-line-level/314935-es9038q2m-board-239.html#post5524723

For data sheets, you go the the ESS website, look at their distributor lists to find out who distributes in your locale, and contact them for an NDA agreement for you to fill out in order to get a data sheet.
 
Last edited:
Sorry I want to build a ES9038PRO dac. The Q2M version is a portable version isn't it?

Fifo is just a want not a need. Ian's Fifo sounds better than a direct connect to an Amanero so there must be something to it. A fifo is lightyears beyond my capability as I need to be able to program FPGAs so I am not putting any stress on that right now, I just want to make a simple dac PCB.

When you speak of AVCC problems are you talking about contaminating AVCC with RF from the digital portions of the circuit? Doesn't partitioning solve that?
 
AVCC has no PSRR at all and directly affects the audio output of the dac. It needs a very clean, very low noise, very low impedance power supply and and a short length, direct ground plane return path. If there is any imperfection there you will probably hear it. ESS makes a chip for ES9038PRO AVCC if you want to ask for a data sheet for that too. Don't know how good it is.

When I mentioned RF I wasn't thinking about AVCC particularly. RF can cause other problems, but if kept well contained they can be kept from causing trouble with maybe one exception. The exception is the output stage. There is some low level RF that comes out of the dac outputs and into the output stage. Part of the job of the output stage is to filter it out before the audio signals leave the dac and go to a power amp or other external device. That means the output stage needs to be somewhat tolerant to RF contamination in the audio signal without producing distortion from it before the RF is fully filtered out. LME49720 or LME49860 (same thing but higher voltage rating) opamps tend to work well for that maybe because they have a wide bandwidth to begin with (however they are sensitive to RF from DECT phone base stations, so the dac should be in a good steel enclosure for shielding). However, LME49720 can't handle ES9038PRO output currents, so the next best thing may need to be used. Probably a good idea to ask ESS for the schematic for the ES9038PRO evaluation board while you are asking for data sheets, which they will provide as long as you ask for what you want in the NDA form. Also, perhaps worth saying is I suspect things like transformer outputs are ways to try to get the audio out of the dac while leaving the RF behind.

Q2M is the portable, stereo only version of ES9038PRO. However, there are many similarities. Programming the dac registers over I2C bus is almost the same except PRO has registers for all 8 channels. Clock requirements are the same. AVCC needs the same extremely high quality type of power (not LT3045), main difference is PRO needs more current. Etc, etc.
 
Last edited:
For AVCC power I was going to use ADM715x regs. Is that not sufficient? You spoke of super caps in one of the threads you linked, do you think those are the way to go? You said that super regs are not good sounding for dacs. I designed a power supply that performs exponentially better than the traditional super reg in simulation, like pico/nano ohm level performance. Maybe I should take another look at it.

The output stage is not a concern for me, I've already tested a prototype output I designed on a buffalo dac using the ES9038 chip and it was ridiculously good sounding. Smoothest, cleanest, silkiest sound I've ever heard in my life. Like pouring lube all over the music. The design is unique and doesn't have the issues normal DAC output stages have.

My problem at the moment is my buffalo dac is not working for unknown reasons and I'd rather build a new one myself than buy another one, especially since I want to integrate it onto a PCB with an amp I designed so I can make the whole thing compact.

My brain is a sponge but finding information on audio EE things is like climbing a mounting with no limbs. Nearly impossible, so don't shut up on me now :)
 
Last edited:
ADM715x appears to have substantial 1/f noise, as do many RF regulators. It can be reduced with filter caps, maybe enough. Thing is since AVCC has no PSRR at all, any noise is going to add with and intermodulate with your audio output signals. Intermodulation of noise and signal is likely to make a lot of mushy distortion. Remember it is possible to get distortion down to -120dB or a little more and noise down even lower with ES9038PRO. Since AVCC is has no PSRR and is multiplied times the audio out, it needs stability and noise down around -130dB across the audio band if you can do it. At least a little better than -120dB. Only way to know for sure is to try it and very carefully measure output distortion coming out of the dac. That is the bottom line for any design choice, how does it measure and how does it sound?

For Q2M, I used an LT6655 reference and filtered LME49720 dual opamps, one opamp for left and one for right. That is what ESS recommends and it works very well if implemented carefully. I mounted in under the dac chip on the bottom of the PCB, on the back side of the ground plane with the opamp outputs feeding right into the AVCC pins. That was the best I could do. Unfortunately, PRO chip needs more current so it will be up to you to test the effects of whatever you would propose to use.

If you are really serious, you should buy or borrow a Benchmark DAC-3 for listening test comparisons. If you can get close to that sound quality you would be getting close to the best anyone has done with a Sabre dac, so far as I know. You would also need a very clean power amp or headphone amp so you can hear the effects of any design choices you make. I recommend modifying a low cost LME49600 based headphone amp if cost is an issue for that. Mastering quality headphones would also be needed in that case, maybe Sennheiser HD650 or better.

-------------------------------------------------------
So, just to clarify for moment, do you mean to say your Buffalo 3 dac is not working and you don't know how to troubleshoot and repair it, and yet you think you can design and debug a whole dac yourself? If so, that would seem rather odd and unusual, to say the least.
 
Last edited:
The Buffalo dac uses the ADM715x and using the analog stages I designed the sound is the pure opposite of 'mushy" so I think the ADM715x can do the job sufficiently, of course I'm always up for improvements but for the sake of simplicity and expedience I will probably use the ADM715x on the first iteration of the dac PCB for AVCC.

My super-super reg design isn't stable on the bench anyway and I am not skilled at stabilizing high gain circuits. I'm going to need outside help. The step response is many times better on the scope than a TPS7A47 I tested for comparison but there's ringing on mine I don't know how to quell.

You mentioned that AVCC noise is multiplied by the output. During one of my tests I used a high gain on my amplifier and lowered the volume down as low as it possibly goes while still being able to play sound in my FOOBAR application and the sound was actually slightly more realistic with a bit more "presence".

Logically speaking, lowering the volume this much on the PC should have degraded the sound quality due to reduced bit depth. But judging from the audible increase it seems that some low level detail was actually added. I wonder if this is a result of a reduction in the noise amplification you spoke of or if the dac simply performs better at lower output levels or if my output stage performs better at lower input levels, or maybe my amp performs better at low levels. Ahh the variables :yikes:.
What do you think?

The headphone amp I made has distortion below what my QA401 can measure and I've confirmed through various tests that it does not appear to be any form of bottleneck in the sound as it sounds like what is feeding it.

After a couple years of designing output stages looking for the best one I'm confident from an engineering perspective and a sound perspective that my amp can't get any cleaner sounding than it is.

I have no way to get my hands on a Benchmark DAC-3. The only other dacs I've heard are the Schitt yggy and Holo Spring dac. Mine was in a different league than both of those, every time I played a song through those dacs I instantly recognized the inferiority of their sound over my concoction.

I listened to those dacs through the amp I designed so the only variable was the dacs however but I did not have my dac there for direct comparison so I need to leave some room for the psycho acoustic error but it seems unlikely because I was expecting them to sound much better than mine somehow.
 
Last edited:
So, just to clarify for moment, do you mean to say your Buffalo 3 dac is not working and you don't know how to troubleshoot and repair it, and yet you think you can design and debug a whole dac yourself? If so, that would seem rather odd and unusual, to say the least.

The best way to learn about something is by building it from scratch. That's how I got into electronic design to begin with. I broke an amplifier I had and Instead of buying a new one I ripped it apart and learned how it worked. I then set a goal for myself to build the best amplifier possible and I believe I have achieved that goal. I just need to step outside my bubble of expertise to finish it off.

Besides, I need to be able to design dacs regardless because I have investors that are interested in my designs and I want to make it an integrated system. Also the dac output stage I designed isn't much good to anyone without a dac should I turn it into a kit or a product. As I said, my brain is a sponge. All I need is the information.
 
Last edited:
Okay then, it sounds like you are pretty decided on some things and there are just few particular things that you are most unsure of, I think maybe you said digital? Perhaps the microcontroller part?

Regarding turning down the volume level a little and getting better sound, that can happen and intersample overs is one reason people sometimes talk about. If something like that, then turning down the volume level 3.5dB or so before going into the dac should be enough.

Regarding ADM715x, I don't know how it compares to ES9311Q, but maybe ESS designed their own part because they thought some people could use some help with AVCC designs. Don't know about in this case. As always, it comes down to how does it measure and how does it sound. I have not seen comprehensive measurements of a dac using ADM715x and whatever else, that I know of. So, hard to say. Thing is ESS seems to leave lot for individual designers to figure out. It's like do your own R&D to see what works for you. If you get a data sheet I think you will see what I mean. The word sparse comes to mind, as data sheets go.
 
Last edited:
Member
Joined 2007
Paid Member
Hi hellokitty,

Hmmm ... Just want to start by saying that I set out on the digital design path years ago (like 6-7 of them) and although I believe that I am getting there I am baffled by the amount of knowledge and information I have had to delve into and absorb - and learn to use in practice.

My experience is that to some extent the analog and digital domains have different requirements. Thus, what I knew prior to entering the digital domain was relevant - but not entirely ... There was much more to learn not least about the way HF and RF signals propagate into other circuit parts, and the challenge of filtering these signals. As you likely already know digital signals ideally are squares which means that the filtering has to be very frequency linear - or there will be unfiltered frequencies.

As I don't believe in deterring people from something they would like to do here also a bit of hopefully helpful suggestions:

- Saturn PCB toolkit is free and allows one to determine impedances of tracks - impedance matching is needed to prevent reflections of the digital signals. It may also calculate the cross-talk between tracks - remember here that e.g. a digital signal of 100 MHz may contain frequencies up to several GHz (square wave).

- One article that IMHO is accessible in terms of understanding digital layout is this one:
A practical guide to high-speed printed-circuit-board layout (by Ardizzoni)

- And then I would look into the ground bounce phenomenon and the need for placing decoupling capacitors close to the pins they decouple. Henry Ott has described this in his book on digital design.

- A simulator that helps with ESR and impedance curves for various capacitor types (incl. C0G ceramics) is this one:

KEMET K-SIM: Capacitor Model Simulation Tool

Some believe in using the lowest impedance capacitor (at the right frequency) to decouple a PSU pin whereas others choose a higher value capacitor (e.g. 1 uF) because they cause less of an impedance shift than the correct-frequency capacitors normally do. In the case of the ES9038 the usually ~ 100 MHz clock frequency in my experience may be a challenge to decouple when also considering inductive impedances from tracks and the decoupling capacitor(s) themselves. Try e.g. adding a couple of nH of inductance to the plots in KSim and notice how the low peak impedance changes significantly. And remember that the pins in a package (QFN ?) like ES9038's have varying inductances ...

Now, again, this is not to put you off ... but analog design and digital design have quite different requirements ...

Cheers & good luck with your endeavors,

Jesper
 
Last edited:
Okay then, it sounds like you are pretty decided on some things and there are just few particular things that you are most unsure of, I think maybe you said digital? Perhaps the microcontroller part?

Regarding turning down the volume level a little and getting better sound, that can happen and intersample overs is one reason people sometimes talk about. If something like that, then turning down the volume level 3.5dB or so before going into the dac should be enough.

Regarding ADM715x, I don't know how it compares to ES9311Q, but maybe ESS designed their own part because they thought some people could use some help with AVCC designs. Don't know about in this case. As always, it comes down to how does it measure and how does it sound. I have not seen comprehensive measurements of a dac using ADM715x and whatever else, that I know of. So, hard to say. Thing is ESS seems to leave lot for individual designers to figure out. It's like do your own R&D to see what works for you. If you get a data sheet I think you will see what I mean. The word sparse comes to mind, as data sheets go.


My deficiencies are three fold.
Firstly I don't know much about digital design or digital interfacing, simply because I have not worked with it before, I have no experience. This issue extends to PCB design as well, I know the basic theory of mixed signal PCB design but nothing extensive.

Secondly I have almost no coding experience. I've tried learning C++ a couple of times. It's easy to learn but so boring and difficult to be motivated without a direct need.
I don't know what sort of coding the DAC requires and I don't know how I would code it.

Lastly I simply have no idea the complete steps to designing the dac, I'm sure there's little details and gotchas I don't know about, as I said I have never designed a digital circuit or a dac before.

Right now in my mind I'm thinking I2S>DAC<uC with the power regulators right next to the pins or right under as you did and a ufc connector for the XO signal next to the dac. Since I don't need an onboard XO it simplifies things a bit.
The reason I am sticking to the ADM715x is simply because it was used on the Bufallo dac before it stopped working. If I stray from this I consider it to be a part of R&D which is a expense I cannot incur right now. For now I just need a working prototype that was as least as good as it was before.

If I had the pin-out of the ESS9038 I could begin designing the PCB right now but I don't so :(
I emailed ShawElectronics, one of their distributors for the datasheet, just waiting on a response.

@gentlevoice, thanks for the info. That's exactly the kind of direct information I'm looking for. Just imagine the amount of searching I would have to do in order to get the tidbits of information you just gave me.
I'm not particularly scared off by the subtleties of digital PCB design but I will say that I can't afford to spend years designing this dac PCB. Luckily the oscillator in my design requirements is not needed on-board which will hopefuly simplify things a bit.
 
Last edited:
Hi hellokitty,

Hmmm ... Just want to start by saying that I set out on the digital design path years ago (like 6-7 of them) and although I believe that I am getting there I am baffled by the amount of knowledge and information I have had to delve into and absorb - and learn to use in practice.

My experience is that to some extent the analog and digital domains have different requirements. Thus, what I knew prior to entering the digital domain was relevant - but not entirely ... There was much more to learn not least about the way HF and RF signals propagate into other circuit parts, and the challenge of filtering these signals. As you likely already know digital signals ideally are squares which means that the filtering has to be very frequency linear - or there will be unfiltered frequencies.

As I don't believe in deterring people from something they would like to do here also a bit of hopefully helpful suggestions:

- Saturn PCB toolkit is free and allows one to determine impedances of tracks - impedance matching is needed to prevent reflections of the digital signals. It may also calculate the cross-talk between tracks - remember here that e.g. a digital signal of 100 MHz may contain frequencies up to several GHz (square wave).

- One article that IMHO is accessible in terms of understanding digital layout is this one:
A practical guide to high-speed printed-circuit-board layout (by Ardizzoni)

- And then I would look into the ground bounce phenomenon and the need for placing decoupling capacitors close to the pins they decouple. Henry Ott has described this in his book on digital design.

- A simulator that helps with ESR and impedance curves for various capacitor types (incl. C0G ceramics) is this one:

KEMET K-SIM: Capacitor Model Simulation Tool

Some believe in using the lowest impedance capacitor (at the right frequency) to decouple a PSU pin whereas others choose a higher value capacitor (e.g. 1 uF) because they cause less of an impedance shift than the correct-frequency capacitors normally do. In the case of the ES9038 the usually ~ 100 MHz clock frequency in my experience may be a challenge to decouple when also considering inductive impedances from tracks and the decoupling capacitor(s) themselves. Try e.g. adding a couple of nH of inductance to the plots in KSim and notice how the low peak impedance changes significantly. And remember that the pins in a package (QFN ?) like ES9038's have varying inductances ...

Now, again, this is not to put you off ... but analog design and digital design have quite different requirements ...

Cheers & good luck with your endeavors,

Jesper
Turns out I actually knew most of the things said in the reading material you suggested.
One thing I don't understand though. Why exactly am I "filtering" high frequency lines if the goal is to pass them as data to the destination? I feel like I am missing something fundamental. Are you only talking about power supplies when you say that?
 
Last edited:
Member
Joined 2007
Paid Member
Hi again,

Are you only talking about power supplies when you say that?

Yes, I am. To my knowledge one doesn't want to filter the data lines (although it might be sensible to use logic capable of the job but not that much faster).

BTW one correction to my previous post: It is Johnson who quite well describes the ground bounce phenomenon in his book high speed digital design.

Best regards,

Jesper
 
Your ideea tu use a special designed Linear or SMPS power supply placed ne-ar to pins îs not the wright way. Does not exist a power supply regulator that ca-n correct noise în a hundred of megaherts. Just use a standard but good regulator and filter any pins with a pair of ferite beans and capacitors just ne-ar to pins.
 
No I've been keeping it hush for now, I'm broke as broke gets so I'm betting everything on the hopes that I can make some money off of my designs before they get ripped off by someone. So far everyone I've had listen to my amp has wanted to throw money in my face and drop their current system but I've not completed my R&D yet so I can't offer them anything. Most of my money has gone into the learning process of converting a concept into a refined and finished PCB which unfortunately took a lot more money than it should have.

A high level investor has become interested as well but he wants to see the finished product before he works his magic. My goal is to get a booth at the next Can-Jam in NYC next year to demo. That's part of the reason why I want to get a personalized DAC PCB up and running so I integrate the dac into my amp as the dac output stage I designed is the source of the clean sound and realism, the amp just feeds it to the load without adding anything.

The problem with my dac output stage is that it does not like to have its output @ 0v without sound degradation so it lends itself well to direct coupling in an integrated system rather than a standalone system. I have some ideas how to solve the sound degradation issue but that is filed under R&D which I don't have the budget for at the moment.
 
The problem with my dac output stage is that it does not like to have its output @ 0v without sound degradation...

If you mean it has a DC offset at the output, that is common enough. Transformers and or capacitors are used to get rid of the DC as needed. Or, maybe a differential amp could get rid of it if the offset is stable or accessible in the circuit somewhere without the AC dac output signal added in with it. If any of the usual approaches will not work for your output stage without sound quality degradation, then the design certainly sounds rather suspect. How would an integrated amp deal with it in that case?
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.