Q&A with John Swenson. Part 1: What is Digital?

Over on Audio Asylum, our own Steve Plaskin (Mercman on AA) posted some comments on Music Software. In the responses, John Swenson offered up some answers to some questions we've been dealing with here on AudioStream most notably in our conversation with Charles Hanson, Gordon Rankin, and Steve Silberman (see article). So I contacted John and asked him if he'd like to expand on those thoughts here on AudioStream and he kindly agreed. John also provided a bio which is included at the end of this piece to give you some background on his background.

Here's Part 1 starting at the beginning...

What is digital?

John Swenson: In order to understand some of the more esoteric interactions between digital systems it is necessary to have a basic understanding of how digital systems actually work at a hardware level. I will attempt to provide enough information to understand the interactions, but not get into the nitty gritty of the real implementation details.

At its heart digital is a way of looking at electrical voltages on a wire. Some have said digital is pure fiction, it is and it isn’t. I hope that becomes clear eventually.

At a first glance let’s look at a voltage on a wire. It can have many different voltage levels on that wire, 0, 10, 300, -2.75, 13765.45 etc. This is the infamous “analog” realm, the voltage on that wire can be pretty much anything.

"What digital does is quantize those values and say 'anything below a certain value (the threshold) is low and anything above the threshold is high'. This is the fiction part."

What digital does is quantize those values and say “anything below a certain value (the threshold) is low and anything above the threshold is high”. This is the fiction part. In reality it can still be any of those values, there is nothing about the wire that physically forces it to be one value or another. A common spec today is to say low is 0V and high is 3.3V with a theoretical threshold of around 1.6V (half the low and high).

Why do this? The primary reason is you get a large “noise margin”. What happens if you have a wire that is supposed to be low, but has picked up some noise (ignore for the moment how it got the noise), as long as it is less than the threshold it is still thought of as “low”. Hence the wire can pick up huge amounts of noise and still be “read” properly. This is the promise of digital and why it is used in the first place.

What is the down side? You started out with one wire that could have an almost infinite range of values and replaced it with a wire with only two values, if you want more values, you need more wires. But once you have more wires, you can put those wires in a situation where they pick up lots of noise and you haven’t changed the value at all.

As explained above the magic is all in the receiver, it performs the thresholding process. But there is more to it. The transmitters are part of this. They are supposed to output only one of two values (high and low, 0 and 3.3 for one standard). Thus most of the time the voltages on the wire actually do closely represent the theoretical standard.

BTW there are several “standards” in use, the old was 0 and 5, that is rare today, 0 and 3.3 is in wide spread use as is 0 and 2.5. You have to be careful mixing standards, if you have a system using 0 and 2.5 and feed it into a system using 0 and 5, very strange things will happen.

Now on to the fun part, what actually happens? First off you cannot have just one wire, a voltage is a DIFFERENCE between two wires, so there HAS to be a second wire. In digital systems this is typically what is called a “ground plane”, a piece of copper on the PC board that covers the whole thing. This is the “reference”, all the voltages on the other wires are compared to it. Many people treat the ground plane as if it is equipotential, the same voltage everywhere. But it isn’t. This is a major issue in all the subsequent discussions so it is important to understand. There is resistance and inductance in the ground plane, not very much, but it is still there. Any current flowing through the plane will cause a voltage to develop between different parts of the plane. This is called “ground plane noise”.

"There is resistance and inductance in the ground plane, not very much, but it is still there. Any current flowing through the plane will cause a voltage to develop between different parts of the plane. This is called 'ground plane noise'."

So why do you have current flowing through the plane, isn’t it the “reference”? And if it is just the reference, why is there current flowing through it? This is a critical point to understand. This current is called the “return current”. When the output of a circuit changes value (say from 0 -> 3.3V) the only way the receiver can see that change is if charge moves through the wire. The receiver circuit and the wire itself have a capacitance. In order for the voltage across that capacitance to change, charge has to move. This is current in the wire. The output has to supply current to charge or discharge the capacitances. But it doesn’t stop there. In order for this to happen there has to be an equal current going the other way, current ALWAYS goes in loops, if it is coming out of the transmitter, current has to go back from the receiver to the transmitter to complete the loop. Frequently this happens through the ground plane (not always, and when it doesn’t that can be the reason for system failures).

This is an extremely important point to grasp, EVERY change in value going from an output to input will create a return current in the ground plane, which causes noise in the plane.

"...my current speakers I call the bazooka, its a Lowther driver in a coaxial cardboard tube (smaller tube inside larger tube) based on some work done by Martin King. The picture also shows an early DAC test setup."

So now let’s look at a basic building block of digital circuits, the inverter, and see what actually happens when a signal comes in and goes out. Let’s start out in a stable state, the input is at 0V and the output is at 3.3V (hence the name of inverter). When the driver connected to the input pin changes value (from 0 to 3.3V), current starts flowing over the wire to start charging the input capacitance. At the same time a return current flows through the ground plane back towards the driver. This generates a small voltage across the ground plane between the driver and our inverter. As the input capacitance charges, the voltage rises, it does not switch instantaneously. This is called the ramp time, it is the time it takes the voltage to “ramp up” to its final value.

When the value crosses the threshold of the input (say 1.5V) the output will change value and start trying to change the value on ITS pin. The exact time this transition occurs depends on the slope of that ramp time and the value of the threshold. BUT we have to deal with that pesky voltage on the ground plane. Let’s say the return current induces 0.1V on the ground plane, that means that as far as the driver is concerned the threshold has just increased by 0.1V to 1.6V, meaning it takes a little longer for our inverter to change state because of the return current on the ground plane.

This is another important point: return current on the ground plane causes changes in timing of digital circuits. With the previous point this means that every wire is potentially changing timing on other wires. Nothing is sacred, this can happen to any signal.

"So while our beloved digital system gives us a high degree of immunity to noise, it guarantees that there will be timing fluctuations just by the operation of the digital system."

So while our beloved digital system gives us a high degree of immunity to noise, it guarantees that there will be timing fluctuations just by the operation of the digital system. These timing fluctuations are frequently called "jitter", it is ALWAYS there, the operation of any digital system will create its own jitter just by virtue of it operating. Anybody who says their system is jitter free, either doesn’t know how this works or is trying to snow people.


John Swenson Bio

I have been into electronics and audio most of my life. When I was 5 I watched my dad build a Heathkit tube based audio amp for our home system(mono), I was hooked.

My parents gave me a tube radio kit for my seventh birthday, the die was cast. I went on to build shortwave radios, get an amateur radio license, design and build lots of ham stuff.

1970 changed things, (I was 12), my mom won a “stereo system”, I set that up in the living room and listened to stereo radio for hours a day. I was fascinated with getting “realistic” sound in the home.

A little later my dad brought home an old console stereo system he had picked up at a garage sale for $5. He wanted the turntable, I wanted the speaker drivers. Our next door neighbor had a wood shop in his garage, I wanted him to show me how to make some speaker enclosures with all his tools. I spent weeks at the library pouring over every book and magazine I could find on speaker design. I finally settled on a design, wound the coils myself and the neighbor showed me how to make the boxes. I was thrilled. Then I realized that the receiver my mom won wasn’t up to the quality of these speakers, so I had to build something new. I built a number of amps and tuners to use with these speakers.

"...the big iron, my 813 tube amp, it is on two chasis, on the left is the power supply on the right is the amp. It uses a pair of custom Magnequest output transformers"

I got into digital music about this time. My dad was working for a company that made disk drives, he designed a disk drive tester that was what we would call today an embedded computer system (he designed the whole computer architecture and did the whole thing from scratch). I learned to program on this tester. It had a parallel interface to the disk drives with humongously powerful drivers, so I added some resistors and hooked them up to a speaker, it was my first DAC, a whopping 4bits! I wrote a synthesizer program for this (it was long before midi) and played different music on it.

In college I continued to build speakers and amps, and tape recorders and somewhere along in here I started doing live sound mixing. But I couldn’t afford professional mixers so I built my own.

After getting my first real job and having more money than I knew what to do with I got into more high end audiophiledom. I didn’t have time any more to build my own stuff, but had gotten bit pretty hard by the search for better sound. I found a dealer I really liked and wound up buying $30,000 or so worth of a system.

I noticed that the CD sources of the day (late 80s) were just not up to the rest of the system. So began a journey to find out why and what I could do about it. I wound up building many DACs, modifying transports etc. Eventually I wound up with a digital front end I really liked. The system stayed pretty much the same for many years.

About 12 years ago I was feeling kind of bored with the whole system and started branching out trying to find new things to keep me interested, I wound up settling on computer audio. I was trying different sound cards, DACs running off S/PDIF outputs from sound cards, linux systems to run all this and eventually into USB input DACs. After many iterations I found I could get much better sound than the commercial CD players or transport/DAC combos by using a small stripped down linux computer to send bits to a USB DAC I had come up with.

After a while I became fascinated with the Squeezebox system, it’s architecture was just what I wanted for a computer interface. I wound up hacking various SB players and using them as front ends to my own creations.

Somewhere along in there I got very involved in power supply design and how the supply can be a major part of the sound of most audio equipment.

In order to finance all this I work for a semiconductor company laying out large complex chips, with a specialty in internal power networks and how what is going on inside the chip disturbs its own power delivery network in the chip, the package and board.

I’m involved in music in many ways, I sing in two choirs, play handbells, do live sound mixing and recording.

It is a lot fun, I really enjoy exploring the outer edges of audio equipment design and not just sticking with the “conventional wisdom”. That can lead to some colossal failures, but also to some new insights. My house is littered with the “well that didn’t work” experiments, for some reason I can’t quite throw them all away. They wind up eventually getting torn apart and pieces used for new experiments.

One of the downsides of this is that my system is always in a state of flux, it always looks like something from Doc Brown’s house. I always want to get on with the next experiment rather than make things “look nice”. I’m so glad my wife doesn’t mind that state of things (well it is in a separate room, she can shut the doors and pretend it doesn’t exist).

It’s been an interesting journey and I hope to continue it for some time.

John S.

COMMENTS
firedog55's picture

I've read his posts on the Logitech/SB forums and a few other places. He knows his stuff, yet is always willing to help and explain things to the rest of us idiots.

Came up with or helped inspire lots of improvements to SB, for instance.

Will be interested to hear more of his comments. Am especially interested in his ideas about how (if) playback software and OS itself can cause changes to the sound we get playing back a digital file.

judmarc's picture

As the input capacitance charges, the voltage rises, it does not switch instantaneously. This is called the ramp time, it is the time it takes the voltage to “ramp up” to its final value.

When the value crosses the threshold of the input (say 1.5V) the output will change value and start trying to change the value on ITS pin. The exact time this transition occurs depends on the slope of that ramp time and the value of the threshold. BUT we have to deal with that pesky voltage on the ground plane. Let’s say the return current induces 0.1V on the ground plane, that means that as far as the driver is concerned the threshold has just increased by 0.1V to 1.6V, meaning it takes a little longer for our inverter to change state because of the return current on the ground plane.

This is another important point: return current on the ground plane causes changes in timing of digital circuits. With the previous point this means that every wire is potentially changing timing on other wires.....

So while our beloved digital system gives us a high degree of immunity to noise, it guarantees that there will be timing fluctuations just by the operation of the digital system. These timing fluctuations are frequently called "jitter", it is ALWAYS there, the operation of any digital system will create its own jitter just by virtue of it operating.

This reminds me of an early paper (Julian Dunn or Hawksford and Dunn) talking about a "restricted bandwidth" model for jitter on a digital system.  As a layperson, I thought perhaps this "restricted bandwidth" corresponds to what John discusses in the quote above regarding the ramp time not being instantaneous.

coreaudiotechnology's picture

I'm glad to see more articles like these popping up in audio magazines. I'm amazed at how often I see claims that bits are bits.

Here's an article for some additional reading on this topic in regards to digital implications on a computer: http://www.coreaudiotechnology.com/not-just-ones-and-zeros/

You can find a few other articles on the subject there too.

My only argument to what's written above is that I don't believe that digital has high immunity to noise. I think it's very sensitive to noise.

In computers in particular, where electric fields in transistors turning on and off are what generate the output square wave, residual noise in the gate increases stray voltages in "off" transistors. This happens in hard drives and in the CPU, and in turn increases resistance, current requirements to switch the transistor, and more heat noise. These factor into slower rise time and the introduction of jitter as well as this noise being coupled into receiving circuits.

Jitter is seen as an amplitude error at the digital interface circuits just like noise introduces amplitude distortion and harmonic information that shouldn't exist.

Thanks for the article!

flcurry's picture

Compared to analog, digital has an extremely high immunity to noise.  Digital designers are well aware of these problems and have developed error-correcting codes such that a digital error will be identified and corrected always for all practical purposes.  I'm sure this article will get there.

But I still cringe when people pay a mint for expensive digital cables.  It is wasted money.

judmarc's picture

But I still cringe when people pay a mint for expensive digital cables.  It is wasted money.

They're still electrical cables (unless we're talking about optical, which comes with its own distinct set of considerations).  They still can transmit noise to the ground plane or into sensitive digital circuitry (including the DAC clock, causing jitter) more or less well. 

As John is saying above, yes, there are certain problems you're freed from by only having to track whether and when a signal is above or below a certain point (digital), rather than exactly where it is at every moment (analog).  So that allows you to simplify your model.  But it doesn't free you from the laws of physics, the fact that things don't happen instantaneously, and that these cables are components of electrical circuits with just about all the concerns one has with other electrical circuits.  Those do have to be factored into your model, but for some reason when the word "digital" is mentioned, people's eyes tend to glaze over and they forget all about the electrical stuff.

gorkuz's picture

Interesting article in general, thank you. But the mention of the Martin King coax tube speaker caught my attention, only I cannot find any mention of it or link to it on the King website. Where should I be looking? Would appreciate a link or suggestion, tx.

Archimago's picture

OK. Noise can creep into a digital system (as noted "not very much"). Timing might not be precise - aka jitter.

But how is this audible and revelant to the audiophile with decent equipment in 2013? At what threshold is it beyond "good enough"?

We're all entitled to spend as much time and money on this or any hobby and I certainly have no qualms with this; that is not the issue. Since we're talking science here, it'd be nice to get a sense of what's significant and what is not... In the real world, there is NOT going to be a situation where we have absolute 0 noise, 0 distortion, and 0 jitter. Noting wrong with engineers perfecting circuitry/speakers/etc. and getting closer with each iteration. However, more important to many of us I suspect is how does this engineering science intersect with what we know of biological systems; of the hearing mechanism and psychoacoustics?

The only way I can think of that can produce answers is if we have controlled, blinded trials with experienced/trained/golden eared listeners trying to differentiate what is being spoken of - be it noise, jitter, cables, etc. - and show that it can be done! Yes... The dreaded "DBT" and its various cousins. Personally, this would be the kind of testing and discussion that would be really nice to see. It could interest more folks into the hobby and for some of us already in this hobby, provide real-life benchmarks to aspire to beyond unverifiable opinions...

Michael Lavorgna's picture

But how is this audible and revelant to the audiophile with decent equipment in 2013? 

I would suggest it depends on the room, the system, and the listener.

At what threshold is it beyond "good enough"?

AudioStream is geared towards enthusiasts. We are not concerned with the search for some (fictional imo) objective "good enough". We are concerned with maximizing enjoyment.

The only way I can think of that can produce answers is if we have controlled, blinded trials with experienced/trained/golden eared listeners trying to differentiate what is being spoken of - be it noise, jitter, cables, etc. - and show that it can be done!

Since audibility is room, system, and listener dependent, blind test results will be specific to those criteria/listeners which is why I say the best way to judge aspects of music reproduction is to listen for yourself.

theob's picture

And they justify my own philiosophy of not worrying about appearances as much as '...lets start the next experiment...' I especially love the 'suspended in the air' speaker. I too use this technique on power supplies and while my wife doesn't like it she tolerates it. But John takes it to another level.

 

John you are a godsend on Audio Asylum and to computer audiophiles in general. Please do not stop sharing your knowledge.

X