How does an upsampling filter like in the DS Sr work?

Are PCM upsampling filters essentially the same as the reconstruction or anti-alias filters in a DAC, or are they playing a different game and using different parameters?

In the DS Sr what is the purpose of the intermediary PCM upsampling filter before DSD upsampling?

When you sample you’ll need an analog anti-aliasing filter to limit the signal bandwidth below the Nyquist sample rate. When you convert sampled digital to analog you need an analog reconstruction filter to avoid extra images of the audio outside the one image you want.

When you digitally change sample rates you need both digital filters: after you increase the sample rate you need to run an reconstruction filter to nuke the extra images and before you lower the sample rate you need an antialiasing filter to avoid aliasing at the lower sample rate. It just happens that since both of those filters are next to each other and are running at the same high sample rate you only need to do the low pass filter with the lowest cutoff making the other low pass filter redundant.

In the DS the PCM inputs need brickwall filters to avoid introducing images, but keep all of the original frequencies and wave shape. After the PCM is upsampled to 352.8kHz or 384kHz a the final step to 56.448MHz can be done with a much simpler shallower filter that causes less damage to the audio.

1 Like

Thanks. Is the amount of filtering that happens in the DS PCM upsampling processes and analog output comparable to what happens in a PCM DAC or is the sound more influenced by the 8x rate/DSD filters?

Do you use an apodizing-style brick wall filter to limit the ringing?

Ideally there is no influence on the sound with good filters. Apodizing filters roll the top off a little (perhaps not loosing as much as is gained by cleaning up other sloppier filters earlier in the processing path.)

Ringing the way most people think of it isn’t an artifact of a good filter. The fact of the matter is that signals that people often use to show “ringing” in a filter are not bandlimited: they are illegal PCM signals that don’t represent any properly bandlimited signal. “Curiously enough” a bandlimited impulse or step function has the ringing that many complain about - but we don’t perceive that ringing as an artifact at all. Poorly implemented filters can add ringing that isn’t in the original signal, in FIR filters the shorter the filter the more ringing (they are less like an ideal filter) With IIR filters the ringing can be limited to “post ringing”, but you can’t implement a stable digital IIR filter that does adequate antialiasing for full bandwidth PCM upsampling (just like you can’t implement an analog filter with a sharp enough cutoff to facilitate PCM upsampling, at least not of full bandwidth material.)

There is no DSD 8x upsampling filter in the DS - everything goes to 30 bits at 20 x the nominal DSD rate (DSD64) and then back to DSD256.

Note that almost all PCM dacs (or DSD dacs) aren’t really PCM dacs (or DSD dacs) as you are thinking of them: they almost all upsample PCM to a higher rate and then convert that PCM (or the incoming DSD) to fewer PCM bits (5, 6, 7) with a sigma delta modulator and then are sent those higher sample rate (but lower resolution) data to lower resolution DACs. A hybrid somewhere between the obvious non-oversampling PCM DAC and the obvious DSD based DAC.

Interesting. Thanks! By 8x I mean 8x PCM (352,384).

Is it possible to use filters with a longer transition band for sample rates above 48khz and still prevent extra images? That design seems to sound better on a lot of my other gear.

With 44.1k the 0 to -144dB (or whatever) transition has to happen between, say, 21k and 22.05k. That’s 1/(log(22.05/21)/log(2.0)/144) ~= 2045.8 dB / octave. With 88.2k, 176.4k, 352.8k and 705.6k that’s 134.5, 69.6, 46.9 and 35.4 dB / octave which are much more doable - that’s why many upsamplers go to things in the MHz internally, just so the filter can be very gentle.

1 Like

you took the words right out of my mouth

1 Like

Don’t forget to carry the 1. :wink:

Don’t forget to carry the Log 10, in these parts. :grinning: