Questions for Ted about upsampling and FPGA

Ted … would it then be advantageous to upsample 16/44.1 to say 352.8 before sending to the DAC?

No matter how big the first upsampling step is it still needs a very steep reconstruction/antialiasing filter, the bigger the step the steeper the filter relative to the sample rate. I.e. the more you upsample in one step the more resources are needed to do the upsampling. Upsampling from 44.1k to 88.2k allows me to get very good upsampling with a lot of resources, if I went from 44.1k to 176.4k or 352.8k I’d need even more resources (which I don’t have) and wouldn’t gain anything. The 88.2k to 176.4k upsampler uses considerably fewer resources to get the same relative sound quality. Everything 172k and up is upsampled using appropriate 0 stuffing and the same gentle filter.

I just caught up by reading this thread.

I believe my head just exploded… angry_gif

It leaves me with even more respect for how some people can do the things they do, so well. There’s beauty in that.

Well put. :)

I hope your head reassembles for the weekend.

If the signal is 44.1k or 48k PCM it's upsampled to 88.2 or 96k

Then if the signal is 88.2k or 96k PCM it’s upsampled to 176.4k or 192k

Then if the signal is PCM it’s upsampled to 10 x the DSD rate.

To clarify is the upsampling cumulative in multiple steps all the way to 10xDSD or for 44.1 does it stop at 88.2?

44.1k PCM is upsampled in steps: 44.1kHz -> 88.2kHz -> 176.4kHz -> 28.224MHz

That allows minimum use of multiplies and coefficient memory but still high quality.

The last step is the general purpose upsampler that the beginning of the thread was talking about: the upsampler that does PCM and DSD with the same math.

I think I’m getting it (maybe).

So offline upsampling (say on a computer before sending to the DS) still has to do steep anti-aliasing filtering anyway.

If someone wanted to “play with” their own filters on the initial upsampling up to 172/192, they could do that offline using whatever software/hardware they wanted and send the 172/192 signal to the DS which would then do the DSD-like gentle stuff.

Since 44k needs a steep filter regardless, it would seem that only touching it once, doing delta-sigma, and sending it to the outputs could be better as there would be fewer multistep anti-alias filters. At each step isn’t preringing being added (although maybe less as the freq goes up)?

Using multiple steps doesn’t need to add more preringing overall. A bigger step has an effectively steeper filter which has more preringing. Smaller steps allow you to optimize the preringing in each step… There’s no free lunch, as I said earlier, if you want to preserve the transients, keep the same S/N ratio and not roll off the highs in 44.1k PCM, you will get a certain amount of preringing no matter what your implementation. You can get less preringing by rolling off the highs, by lowering the S/N ratio or by mucking with the transients.

Put another way: anyone is free to customize the sound the way they want by using whatever processing they want first (upsampling, EQ, or whatever) but I suspect that that such processing wouldn’t make most other users of the DS happy.

Put another way: anyone is free to customize the sound the way they want by using whatever processing they want first (upsampling, EQ, or whatever) but I suspect that that such processing wouldn't make most other users of the DS happy.
I don't doubt that... whatever mathematical magic you are doing seems to work. I gotta hear it for myself.

Thanks for the back-and-forth!

Here’s a nice synopsis of some of the trade-offs Ted has been talking about:

<a href="http://archimago.blogspot.com/2013/06/measurements-digital-filters-and.html">http://archimago.blogspot.com/2013/06/measurements-digital-filters-and.html</a> 

Ted, I think get I what you’re saying about using multiple upsampling steps for 44k PCM. The first step has the most impact on impulse responses (if even audible) but a shallow anti-aliasing filter has other problems. Then the 88k -> 176k can have a shallower filter starting earlier (possibly starting even before 44k, correct?) such that any additional pre-ringing is probably significantly suppressed compared to the effect of the first filter. Minimum phase filters have long post-ringing tails which might have more audible impact (but this isn’t clear either).

[Edit - I fixed the link - Ted]

[Thanks!]

http://www.grimmaudio.com/site/assets/files/1088/dsd_myth.pdf

Another interesting article giving some history of the evolution of PCM and DSD. The title makes it sounds like Grimm Audio is bashing DSD, but it seems to be more about the difficulty of interchangability/conversion of recording and either format and PCM <-> DSD. They state:

The experiments we ran indicated that a 1 bit 64 fs A-to-D-to-A chain can sound totally transparent. So 1 bit 64 fs already enables maximum audio quality.

However they go on to state:

One point remains. Various listening tests have indicated that DSD files sound ‘different’. If a 192/24 fi e is converted to 64 fs DSD and both files are played back through the same converter, some listeners prefer the sound of the DSD file. Two aspects characterize the technical difference between the two files. First, there is some inevitable loss of signal quality after the transfer to DSD. But in view of the listening results the ‘damage’ probably falls below the hearing threshold or is euphonic. Secondly, the DSD file will have a lot more noise between 20 and 100 kHz (the exact amount depending on the D-to-A used). An example of this can be seen in fig. 6 that shows the spectrum of a -60 dB tone through our AD1. This noise is inaudible to human ears but can have second order effects. For instance, the presence of the noise could influence jitter performance in some converter designs. Some have suggested that this HF noise may change the behaviour of capacitors, cables and electrical contacts. We have not done any research into this ourselves...

Ted, Fig 6 shows how the noise spectrum for DSD is pushed out but is also pretty severe in amplitude. Does 10xDSD push it so far up that you can shallow-filter it before going to 2xDSD for which again you use a shallow analog output filter? Is there any measurable amount of the very high freq noise (e.g. >30kHz) still getting out from the final LP filter?

SACDs players are speced to not have their noise get above -40dBFS. By using double rate DSD I can push the noise further up in frequency so more if it is filtered out by the analog output filter. In the DS the ultrasonic noise only rises 20 or 30dB above the audio band noise floor.

The ultrasonic noise doesn’t affect jitter in the DS, but one bit DSD definitely requires firm positive and negative power supply rails to not be affected by the noise.

The Grimm paper doesn’t talk about another way of mastering with DSD - Use DSD recorders/players like a tape machine. To mix two tracks play them out to an analog console, mix them there and then record the result. With double rate DSD the noise doesn’t grow very fast even with many trips around the circle.

Also it bases some of it’s arguments on the lack of one bit DSD players, but like the DS when you don’t use off the shelf DAC chips you can build single bit DSD DACs…

It also ignores doing DSP at the DSD sample rate instead of down converting to 176.4, 192 or 352.8k PCM doing the DSP and converting back to the DSD sample rate - The Sonoma lets DSD grow to 8 bits and then converts it back to single big DSD, but the key point is that it does the mixing at the full sample rate.

Ted Smith said the real "goodness" comes from a high sample rate and simple slow rolloff filters.
Hi Ted,

I’ve just been going through some old threads, learning more about the DSD Snr.

Do you use Minimum Phase or Linear Phase filters with the DSD Snr? And what’s the reason?

Not that it matters - the sound is obviously glorious. Just interested in the tech inside

Cheers!

Edit: found the answer (Linear Phase filtering) here: http://www.psaudio.com/forum/directstream-all-about-it/directstream-dac-first-impressions/page-37/#p23976

Ted Smith said

The Grimm paper doesn’t talk about another way of mastering with DSD - Use DSD recorders/players like a tape machine. To mix two tracks play them out to an analog console, mix them there and then record the result. With double rate DSD the noise doesn’t grow very fast even with many trips around the circle.


Ted, would this inject less noise than PCM conversion?

The logic of “going native”–converting directly to analog from the distribution format–is hard to argue with, but then so is the logic (as I understand it) behind the DSD: unify, simplify, optimize the math.

Cheers,

Jim

You probably want to talk to people like Gus Skinas who do mastering, etc. for a living. They will tell you that DSD is at it’s very best when being used the same way one would use a tape recorder.

Doing math with DSD inputs and intermediate results at, say, 24 bits or 32 bits isn’t a problem at all with respect to sound quality if you never convert the sample rate down or narrow the sample width back to one - the issue would be processing power and/or IO bandwidth, but that’s not an issue these days (or not much of one.)

The issue sound quality wise is converting back to DSD over and over - just like doing mastering with PCM you don’t want to keep converting to the final customer delivery format (say, 16/44.1) over and over. You keep the fast wide samples thru out the mastering process and only go back to one bit when you are finally “done.” But as always you probably will end up reprocessing the data some other place, some other time and you’ll end up converting to one bit DSD 128 (or whatever) multiple times. That isn’t much of a problem, over the audio band you can keep all of the noise and artifacts at better than 24 bit PCM resolution even with many passes at sample rates 128FS or higher.

The practical problems are that (unlike current “high resolution” PCM) there’s no standard interchange format for wide, very high speed PCM/DSD or at least it takes so much space you won’t be passing it around much.

When mastering you won’t be able to use your favorite VST / Pro Tools plug ins the way you used to, they aren’t expecting sample rates that high and/or probably won’t run in real time at those high sample rates. You’ll end up with bigger pauses when processing a section of audio before you can audition each set of possible changes…

Still I must admit that each different implementation of converting to one bit still seems to have a subtle sonic signature that people might argue about (just like each set of analog -> digital and digital -> analog converters you might use when mastering having their own character.) I’m spending my software/research time right now working on better conversion to one bit, and I’m know others are too.

I really don’t know how good DSD editing tools are these days (say from Merging Tech, etc.) but I took your question as a theoretical one.

Hi Ted @tedsmith

The more I read the more I love learning about the DSD Snr.

After you up-sample to 10x DSD what’s the reason for ‘down sampling’ back down to DSD128? Apologies if I’ve used ‘down sampling’ incorrectly there and feel free to go ahead and correct me.

From my very basic and limited learnings, analogue is digital that is up-sampled to infinitely high sampling rates, which is what (I’m guessing?) that 10xDSD step is for.

What’s the reason for not letting the input signals go through to the analgoue outputs at 10xDSD?

Many thanks again

Ultimately you need to actually do the conversion from digital to analog - unlike digital processing where you (more or less) get to define your own universe that final piece of hardware is restricted by physics, cost and other real world constraints. In particular the higher frequency your clock the more noise from jitter. As the clock frequency goes up the noise can go down because you do more noise shaping (trading noise floor in the audio band vs noise in the high frequencies). You get 3dB more S/N over the audio band for each doubling of the sample rate. On the other hand the noise from jitter grows as the sample rate increases as well. The final noise floor ends up depending on the number of bits in each sample, the oversampling ratio and the jitter. The optimum sample rate doesn’t depend much on the number of bits in each sample but for one bit audio it’s between the sample rates of double and quad rate DSD (closer to double rate DSD.) If I go to buy (at any price) better clock crystals the jitter (in particular the low frequency phase noise) goes up with higher frequencies. I’d like to use a 16 FS clock (45.1584MHz) but it has more noise that the 22.5792MHz clock in the DS. Also the bandwidth of the digital switches I use is fixed and the third harmonic distortion goes up as I increase the sample rate…