The intelligent buffer

Prev

The intelligent buffer

In yesterday's post we had just met a new and impressively bright engineer, Bob Stadtherr. Already employed at his full time job as chief engineer designing automated light dimmers for theaters, I engaged with him to design and build the Digital Lens in his spare time.

Just for your reference, 1993, when all of this was happening, saw the introduction of a new idea. It was called the World Wide Web. Yup. 1993 saw the launch of the world's first web browser and, for the few that had access through noisy telephone modems, a new world of WWW was about to open. There was no such thing in my world like email or browsing for answers. 

We were on our own.

Past attempts at explaining my idea of a standalone separate that would connect to a CD player, take a gulp of its digital output, fill a "water tank" full of those digital bits, and then parse out the perfect results with a fixed low jitter clock into an output wave shaper saw a lot of head scratching and requests for more detailed information which, as an analog designer, I could not provide.

One 15 minute phone conversation with Bob and he repeated the entire concept back to me with such clarity as to make me drop the phone. Not only did he grasp the concept but in the next 10 minutes he began explaining to me the pitfalls we would be facing.

I had the right guy.

My simplistic view of filling up a digital "water tank" and then, at some later time, outputting the tank's contents through a fixed output clock had what felt like a fatal flaw. Turns out the data and the clock coming out of a CD player is variable—unpredictable. The reason for this is simple, the laser mechanism that is reading the digital data might struggle reading some parts of the CD while flying through other parts. Plus, the speed of the CD's rotation is variable too. Like a vinyl record, it takes less/more time to read depending on where in the disk you are—closer or farther from the center of the disc.

At this point in the story, it's instructive to remember the basic problem we're trying to solve. The CD player provides the master clock that is running your DAC. Because that clock is not only variable, but pays zero attention to jitter and noise, it's a horrible impediment to great sound. The Mark Levinson DAC I had mentioned gave lip service to this problem by adding a small "water tank" memory buffer at the input of their product, but its output used a means of varying faster and slower the data rate at its output too. And now, once Bob explained why they did that, it became clear we had a major problem mechanizing my idea of the fixed low jitter clock.*

Bob went away to think about the problem and, within a week, came back with the answer.

The intelligent buffer.

*(the reason a fixed clock was needed was the goal of eliminating jitter. A variable clock is always going to have high levels of jitter. Only a fixed frequency clock can really provide the perfect low jitter output we wanted. Today, there are relatively low jitter variable clocks available but there the trick is to slow down the variability to a frequency below human hearing (like maybe 1 or 2 seconds). This is what our own Ted Smith does in DirectStream, 30 years later. But, back then…)

Back to blog
Paul McGowan

Founder & CEO

Never miss a post

Subscribe

Related Posts