Smoothing ruffled feathers
I announced in yesterday's post we'd find out today why traditional ladder DACS are no longer used in high-end audio but it'll have to wait until tomorrow as many of you wrote back and said whoa, whoa, whoa. How did we get from the stepped sine wave I showed to a smooth and nice looking one for music?
Sorry about that, I was jumping the gun (I wonder where that phrase came from?).
If you'll recall I wrote that each digital word represents a number. Each number represents a voltage we sampled at the input of our ADC when we encoded the music into bits in the first place. When we reconstruct our signal in the DAC, those digital words turn on/off a series of switches at the DAC's output. There's one switch per bit, so a 16 bit DAC has 16 switches. Every time a switch is turned on the voltage goes up and with all 16 switches activated you get the maximum output voltage.
Depending on the number of switches turned on or off, we create the steps that eventually become our stepped sine wave that I showed you. So how does this stepped jagged looking sine wave become smooth and nice? With an integrating filter. But before I explain this filter there's one major step I left out in this story. The current to voltage converter.
For simplicity sake I didn't tell you the whole story and said each switch raises the voltage at the output of the DAC. The truth is each switch raises the current at the output, not the voltage. I suppose I wanted to keep this series moving a bit faster but in hindsight this is a pretty critical step in how a DAC sounds, so please forgive me.
For reasons of accuracy and noise DAC's have a current output, not a voltage output. To convert this current into the necessary voltage you need only place a resistor across the DAC's output to ground and voila! You have a voltage output. In fact, the very first DAC PS Audio ever built back in the 1980's had just such an arrangement and I'll tell you why. The standard method of current to voltage conversion in just about every DAC on the market is to use a chip op amp's inverting input. Depending on the chip used, the sound of a DAC changes at this very point rather dramatically.
Most op amps sound bright and edgy used as a current to voltage converter because all their very high levels of feedback are employed to make this type of converter. Op amps are at their worst, from a sonic standpoint, when they are set to use massive amounts of feedback. Some are better than others, but none are all that good. So in our first DAC we simply used a resistor and the difference in sound between the op amps of those days and the resistor was remarkable. But there was a problem.
The bigger the resistor, the higher the voltage level you create (a good thing). But the higher the resistor value the worse the current output works, you get increased noise and eventually fairly major non-linear distortions. Using a resistor is a compromise in itself and I doubt anyone else ever used one because of the increased noise - but damn if it didn't sound great!
Today we use a single common base transistor without any feedback for this critical job and when you do that you get extremely low noise, no distortion and great sound. I have always been surprised that few others do this - most using some sort of op amp in the path.
Once you've converted the current to a voltage you now have to integrate that signal to remove all the jagged steps. This is handled with a capacitor (or group of capacitors) in a circuit known as a low pass filter. All the jagged stuff you saw in the picture is really just high frequency switching artifacts and contains no information we need. We simply roll off the jaggies and send them on their way to your preamp or amp.
One last note about this filter. In the old days one needed a seriously steep and aggressive low pass filter to remove the jaggies. Then DACS started upsampling, adding digital filters and all the steps we now take for granted in an effort to allow designers to use far less aggressive filters and produce much better sound. Upsampling does not ever add any information that we didn't encode in the first place.
There is a process called interpolation that predicts what the missing information might have been, but that's outside the scope of our series. If you're interested I'll do a little series on it later, just let me know.
- Choosing a selection results in a full page refresh.
- Opens in a new window.