TDA1541A Reference DAC
I don’t like words reference, ultimate, supreme etc. They often don’t make a lot of sense in this subjective world. What you are considering as excellent might be mediocre for someone else at best. I only named this DAC as “Reference” because it’s a product of my best attempt at applying all the knowledge I have about TDA154x chips and digital audio into one single system.
So it’s actually “Reference 1.0” and I keep my options open for future revisions as there are still a lot of ideas I would like to play around with. I wont expand here on all the development parts as I have made a series of TDA1541 articles in Digital section covering all the relevant information.
If I were trying to put it all in one page, you would probably brake your finger before scrolling down to the bottom. Instead here I will try to cover things that got left out and portray all the general system integration. All of that will be complimented with a healthy amount of pictures to keep everybody well entertained.
The USB interface
Rowling your own USB to I2S interface is a not a trivial task at all. I know it first hand as I have developed an XMOS based measuring interface MV-1. Here I decided to take the easier road and use something “of the shelf”. After all, I’m mainly interested in whole digital-to-analog conversion and not the digital-to-digital data transfer stuff. Also there is whole driver licensing headache. I didn’t check recently, but if you wanted to have your “branded” XMOS drivers, you’ll had to buy ~400pcs of their processors. This is serious money and I wasn’t planning on selling 400 DAC’s based on unobtanium 40 year old chip.
I2SoverUSB v.III from JLSounds fits the bill very well indeed. It’s reasonably priced, well engineered and has all the tick marks for USB interface:
✓ Galvanic isolation
✓ Master clock inputs
✓ Supports “Simultaneous” data mode for TDA chips
✓ Plenty of other configurable options
Unfortunately not all that glitters is a gold. Even though that gold plated PCB looks really nice. Upon further inspection I discovered couple of problems.
First of all the simultaneous data mode implementation is sub-optimal. It’s works and it’s correct as far as datasheet specs goes, but it’s very marginal. Sample conversion happens at LE signal positive edge, so we want to delay LE signal as much as possible after sample data stops. This way we initiate sample conversion during total digital silence (no ground bounce) and have the most accurate timing possible. But in scope-shot above we observe LE going positive together with bit-clock going negative. It works, as datasheet allows bit clock fall time to latch rise time of 0ns, but it mitigates the whole advantage of stopped bit-clock operation.
Next there was a firmware glitch that made my hair go grey for a long time. It manifested itself like a strange digital distortion when listening to a loud music passage. This obviously could be hundred different things so a digital interface wasn’t high on my list. Long story short, it’s a firmware bug that I was lucky enough to discover after 4 years of people buying and listening to this interface. Hurray!
It comes down to the way TDA1541 expects data to be in simultaneous mode. It should be in offset binary. When translated to human language this means that all digital zeros produce no current at output and all ones is full scale current. This is different than regular I2S data, where all digital zeros is half the output current. So to convert I2S data to simultaneous mode, one has to always invert the first bit. And here was the problem. When incoming data was all zeros, everything was converted fine. But when music contained negative clipping signal, which in I2S means first bit 1 and all others zeros, it wasn’t inverted by firmware and send straight to TDA “as-is” resulting in half signal current instead of zero (second pic above). The strangest part is that none of the usual wave signal generator software (SpectraPlus, ASIOTestSigGen, REW etc.) are outputting truly 0dBFS sine wave! They all must be doing some dithering or something. Hence there was no way to catch this bug when testing DAC with sine-waves. Something to watch out for I guess.
After an intensive email exchange with Lyuben from JLSounds, he found a programing bug and I got a new firmware. Great customer support and I can really recommend I2SoverUSB for your DIY adventures. Unfortunately I had already made a break-out board with a hardware solution to delayed LE signal. Just a couple of shift registers and some glue logic. Now conversion happens right in a middle of empty sample frame as it should. He might implement this in some new FW updates.
It’s not an “easy” or “clean” modification and I don’t recommend repeating it unless you are comfortable with cutting traces and soldering 0603 components under the microscope. It involves running two new traces with 0.08mm (39AWG) enameled wire and covering them with UV conformal coating. These LRCK and BCK signals are available on isolator pins 5 and 7.
Board also contains U.FL connectors for all the digital signals. These connectors are now my “go to” solution for all the digital stuff. They are overkill in terms of frequency capabilities and quite sturdy if you know how to handle them properly. There is also a couple of opto-isolators for static mute/sample rate signals and the master clock section.
It goes tick-tock!
Please read my ramblings about the digital master clocks here. I go into some length about what is really important for digital audio and what parameters should be optimized for. Here as promised let’s pull-off couple tricks and try to improve performance of NZ2520SDA oscillators used in this DAC. These have already low close-in phase noise “out of the box” but there is still some room for improvements.
First of all – power supply. Even though modern chip oscillators run on internal logic gates, those gates don’t have a good PSRR. And from what I’ve seen, at low frequencies it’s almost non existent. Meaning that all noise from your power supply will be visible as phase noise near a carrier. I designed a simple low-noise power supply that has a really good 1f corner. Well, designed might be a strong word here. This is just a two “sziklai pair” connected LED referenced transistors. The plot twist is type of transistors. I found BC337/BC327 having really low 1f noise when building phono stages long time ago. As can be seen from a real measurement above, noise is only 30nV/rtHz at 3Hz! Just make sure there is enough filtering before this regulator.
Master clock selection and division circuit
Next we can use a trick from physics to gain some advantage. Using a piece of not so clever math it can be shown that correlated close-in phase noise is dropping 6dB every time a clock frequency is lowered in half. So theoretically, if we take 45/49Mhz NDK oscillator and divide it’s frequency 4 times by 2, we would improve it’s close-in phase noise by 24db!
Residual phase noise plots for 74AC74 D-type flip-flop (PA3AKE )
Of course this division is done by using real elements which will have their own noise contribution. Unfortunately no IC manufacturer ever gives any clues about how noisy their logic family’s are. Here comes ham-radio guys to the rescue. Building low noise oscillators is their bread and butter as this directly effects their communication capabilities. I have found these measurements by PA3AKE of 74AC74 D-type flip-flops. It’s residual phase noise is better than -140dB at 1Hz! So you can start worrying about your divider limitations only when your source clock is close to that. Our NDK oscillators have -70dB of phase noise at 1Hz, so improvement should be close to theoretical 6dB for every division (second graph).
And here is the actual implementation on a USB break-out board. Two double 74AC74 flip-flops are used for frequency division. NDK oscillators are switched by tying their outputs together and disabling the unused oscillator (high Z outputs). In the back of the board you can see low noise power supply with two green LED’s, followed by large L/C pre-filtering. It produces super clean 3.5 volts and feeds both dividers and clocks. Divided master clock is send to the main board using U.FL connector and controls the 74AUP1G74 single gate flip-flop. This is the re-clocker for the most important LE latching signal that drives the actual sample conversion.
Main board
I’ve seen my fair share of bad layouts for TDA1541. Some CD manufacturers just butchered the design, some are so so. I can’t remember seeing a single board layout that I really liked and even Philips own CD players are no exception.
So once for a change I tried to make things right and above is the result. It’s a 4 layer job, although I could’ve squeeze it in just 2. But with current Chinese PCB manufacturing costs I really see no reason for doing so. I wont expand on all the routing decisions here, but here are the most important things to watch-out for:
- All power supplies of +5V -5V and -15V must be decoupled to AGND pin 5
- Use additional decoupling between -5V and -15V rails
- Use a separate ground plain layer for all digital signals and connect it to DGND pin 14
- Only connect AGND and DGND ground plains with lots of vias right next to the AGND pin
- Take extreme care about DEM capacitor current return paths, they can’t mix with anything else!
And that’s more or less it. All other mixed domain PCB design best practices do also apply here. Shortest current paths possible, loop inductance, track impedance etc.
In case you are wondering what are those electrolytic capacitors doing there around TDA chip, I have an elaborate answer here. Only difference from the test setup is larger 680uF capacitor for MSB DEM current. It helps to attenuate modulation side-bands even further. On the back side we have I2S input attenuators for all digital signals except LE, which is directly coupled to the re-clocker.
I covered all I2S signal attenuators in this separate article here. For the final board I decided to feed LE signal without any bandwidth limiting. It’s still only 1.8V peak-to-peak and centered around 1.2V. This is a NOS DAC so at analog output it already has a massive energy spike at sampling frequency Fs. Any leakage directly from LE digital front won’t change a thing. I also made some listening tests with fast and BW limited LE signal and couldn’t figure out any difference.
All analog currents are handled by a gold-plated SMA connectors and RG316 coaxial cable. With proper tension this is a second best thing after direct wire soldering to a PCB. I learned this the hard way when I build my low noise measuring pre-amplifier. You can really appreciate a good connector only when measuring a nano-volt range. This is where you see how terrible BNC and RCA connectors really are.
All power supplies are regulated by a low-impedance shunt super-regs. This is where probably 30% of all the R&D time went to. Designing your own voltage regulator that is capable of sub-miliohm output impedance over audio range and capable of working with fast digital loads is not a trivial task at all. I will cover them in a separate article and will probably run a small PCB batch that I will offer in my e-shop. All I can say for now is that this is my “secret sauce”. No amount of low ESR cap decoupling sounded as good as these bad boys. And believe me I have tried some insane stuff. Like 50x1000uF Panasonic FM’s in series. Made a really good spot-welder, but didn’t come even close to how good these shunt’s can sing. Only downside is the heat output, and with all the solid ground planes on a PCB this was a ticket to a thermal nightmare.
What’s Cookin’ Doc?
I really love my vacuum tubes. I really do. You could probably figured this out by now when browsing this site. But sometimes I just wish a Mosfet or Jfet would sound just as good as these power hungry heat spitting beasts. It would’ve saved me from all the headache with high voltage power supplies and heat management. But this is were I fail every single time and give up to my old habits of “tubization”.
Usually it all goes well. Some minor skin-burns here and there, nothing serious. When it’s winter time I can turn off the heating in my listening room and save on a heating bill. Sweet. But not this time. Executive decision to put tubes inside a box had it’s toll. Together with a shunt reg’s and other ~60W of thermal power around the box, ambient air was skyrocketing. I noticed this first time I put the lid on and gave it a long listening session. At first it was just sounding more “edgy” but finally it went to full unbearable. I quickly took the lid off and started measuring voltages. Everything was fine and it started sounding right! Until I put the lid back on and half an hour later things repeated again.
Now I armed my self with a thermal camera and lo and behold! TDA1541A was sitting at toasty 64°C… Not good. I knew it likes to run hot, but this is too much. It also goes against my worst estimation for capacitor leakage current at 60°C that I’ve done here.
In case you were wondering how temperature effects TDA1541A distortion, above is the answer. This increase is also due to higher cap leakage, but not by that much. Most problematic thing is DEM clock instability with increased temperature. That’s why I insist on trimming the pull-down resistors at a stable operating temperature! Whatever that might be in your case.
This was a clear sign that I was not pulling this one off without some sort of forced air circulation inside the case. Preferably with an intake of a fresh air from outside. This meant that everything had to be disassembled and ventilation holes drilled from beneath. Great. I also was not going to make any compromises on noise. What can be more annoying than a “noisy” DAC? (pun very intended)
When it comes to noiseless fans, there is nothing better than Noctua. They are priced accordingly. At 80% of PWM I can’t hear it at all and this is maximum speed it will ever run. Thermal sensing and power management board will make sure of that.
Power management
Luckily I was already doing all stand-by power switching on a separate board. It’s brain is running on Arduino Nano board. Figuring out how to control a PWM fan wasn’t that problematic.
PT1000 sensor was glued to capacitor and was acting as temperature sensor for the FAN PWM control. After some parameter tweaking a reasonable Temperature/PWM ratio was found. It maxed out at 80% of PWM pulse and was still totally silent, unless you put yor ear near/on the box.
Arduino board has a USB connection that can be used as simple console data logger. Above is a temperature graph over 4hours of data logging. It stabilizes at +48°C and that is at quite high room ambient of +28°C. Second thermal image is a good data confirmation. Temperature difference between large cap in front of air flow and smaller ones further away is ~4°C. All these measures above was adequate to eliminate any measurable or audible thermal issues once and for all.
Mains power switching is made with a single opto-isolated Triac. Not the most popular solution from a purist “silver power cable lover” perspective, but with everything running in class A and heavily shunt-regulated, this becomes a meme pretty quick. Power is supplied by a custom made toroidal transformer from Toroidy.pl. I have no affiliation, but can recommend them with confidence. Support engineers are really knowledgeable and will help you out with all the specs for any project you have. They design all their audio transformers with 40% power margin (or any other you spec.) so magnetic stray fields are very low and there is no mechanical hum even at nominal power. Also they do inter-winding shields which I find mandatory for mains powered audio. Even though toroids have large inter-winding capacitance, but with a grounded shield between primary-secondary, mains leakage current is almost non-existent.
Mains input filtering is done with of the shelf LCR electronics power box for medical equipment. This is a very broad topic, but TLDR; is this – unless you live near a powerful AM tower and some LED lights in your ceiling flickers in dark without ever powering them, stop worrying about mains filtering. There are gazillion of other things to improve your gear.
All primary rectification are done using soft-recovery fast switching diodes and regular Nichicon caps. Never put low ESR caps right after bridge rectifier! This is a ticket to ringing and induction spikes. Tube heating voltage is slowly delayed with LM317 regulator to not stress heaters with large switch-on current and prolong their life. High voltage for tubes are per-regulated with simple capacitance multiplier and all other voltages using plain-vanilla 78x 79x series regulators.
All-mighty I to V
I wrote a whole article about current-to-voltage conversion for TDA1541A, so what is left here to cover is the final setup and board configuration.
Circuit board was designed to accommodate all possible I/V circuits mentioned in the previous article. Final evaluation of those circuits was made as a last development step of the project. One thing common amongst them is extremely large bandwidth capabilities. Above is a sweep for a worst case scenario of D3A gain stage with 25Ω I/V resistor and jfet CCS load. With this configuration -3dB point is at 2.3MHz! I didn’t bothered to measure BW of a grounded grid resistor loaded stage as it should be much higher.
Also presented there are my notes on sonic signatures for all of those circuits. Based on this evaluation, grounded-grid circuit was chosen as a favorite and you can see final schematics in a picture above.
Output coupling caps are always a limiting factor for any tube project. It’s an necessary evil and can make or brake your project. I was very skeptical at first regarding Jentzen “super caps” as I think all the people with EE background. How can film caps sound different? Why do they cost x10 as much? I thought this was a pure snake oil. But they are the real deal! I don’t know all the construction details, but they have an extremely low loss angle and sound just spectacular in any application I have thrown them in. I have made blind A/B tests for DC coupled/Jentzen Sylver cap signal path and my score from 100 attempts was ~50%. So I was just guessing which is which, that’s all. They are that good. Again, no affiliation and no one is paying me to say this.
You can see a lot of unpopulated elements on boards, that’s a relic of all the configuration capabilities. Output muting is done with relays. Quite a “clicky” solution in a quite room, but muting high-voltage coupled signal would require beefy transistors and I don’t like additional PN junctions touching my signal path. Not if I can avoid that. All high voltage is regulated with low-impedance shunt-reg’s. This is a decisive factor for a final result. If I have learned one thing over the years about simple tube circuits is that they sound just as good as the power supply it’s using! Operating points, mode of operation and even tube linearity is vastly overrated. Another drop of my “secret-souse” that I hope to cover in my future articles.
Distortion of I/V circuit falls down with a signal level until we reach inherent TDA1541A distortion products. Which is to be expected. Interestingly sample rate effects distortion too. Especially 3rd harmonic which falls down from -95dB at 48k sample rate to -110dB at 384k. Needless to say that this DAC sounds very differently with all of those sample rates. Mainly because of oversampling or higher resolution material, but spectral signature is different too. Here is some more inside pics.
Sound impressions
Couple last words about how this thing actually sounds. I stand by everything I wrote when evaluating grounded grid I/V stage. Now after spending few more months with this new toy in my listening room, I can definitely say this is by far my best audio source. My modified Lenco turntable with Tube RIAA phono stage playing mint vinyl can give a fair fight with a regular CD material, but when I play any good quality high-res piece it blows my mind time and time again. So now I have to upgrade my analog sources and by some margin. Great. But I guess that’s how it goes.
I usually don’t like non-oversampling sound of any DAC I have tried. It just lacks treble energy every single time and that’s just how NOS works. However with this DAC I’m having really tough time deciding between NOS or 2xOS. It all depends on a recording quality and software over-sampler. Some exceptionally good CD recordings like Patricia Barber – Cafe Blue or Sara K. – Water Falls sounds better in NOS. All the subtle contra-bass string strokes and vocal softness of “Too rich for my blood” is just staggering. Drum brushes are so well-defined that it seems you can count them one-by-one. Share volume of the sound stage in “Running Away From You” is absolutelly spine shivering. I know these “audiophile” recordings are purposefully made to sound “better then your gear” and all the above could be noted on your phone ear buds. But that’s the thing, I heard them hundred times all over high-end audio shops and shows with all kinda audio gear. But not like this. Not in that kinda resolution.
Same thing can be said about most of the good vocal recordings like Chie Ayado – Good Life. Never sounded more real sitting on a stage right in front of me. For other material that lacks high frequency energy, be it mediocre recording gear or actual creative decision, I prefer 2xOS to 88.2k. I use Foobar 2000 player and from v1.6.6 default oversampling plugin is RetroArch. In highest quality it sounds really good to me. Also you can exclude higher sample rates and leave your native high-res material untouched.
Those magnificent lights
I wasn’t planning on making a Christmas tree out of this DAC, but here I am. Explaining my self. Because in the dark it surely sparkles as one!
Actually all of those LED’s are used as a reference voltage sources and are not meant to be used for entertainment purposes. But what can I say, it sure looks cool to my eye 🙂 Although those magnificent D3A are hidden under the lid, it worms my heart just knowing that they are there. Just like watching these sweet photos! As always, let’s finish with some more outside pics.