• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Playing PCM to DSD Native with foobar2000

Snoopy

Major Contributor
Joined
Jul 19, 2021
Messages
1,645
Likes
1,250
I’ve given plenty of reasons:


Rohm DACs have a direct DSD mode. Fixed DAC mode and DSD input necessary and you can bypass the SDM. There is no pcm conversation.

Every delta sigma dac uses SDM in the end. 7 bit DSD? (Don't nail me down on it).
The new AKM chips allow the same thing. No pcm conversation.

So U do the SDM in HQPlayer before sending it to the DAC. DSD128-512 whatever you want and you bypass FIR and DSM.
ROHM_BD34301EKV_BD.jpeg



ESS chip can't do this.

Upsampling to DSD without doing something to the SDM is not really going to change much at all.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
Rohm DACs have a direct DSD mode. Fixed DAC mode and DSD input necessary and you can bypass the SDM. There is no pcm conversation.

Thanks for info, I was just reading about that in this thread:


But I didn't find this nice block diagram!
I was just starting to look around and you came just about at the right time :)

I see there's a reasonably priced and decently performing SMSL D300 using it.
It also has a Preamp mode but I wonder if it really is bypassing volume control for DSD.
Anyone knows?

It could be something to try...

From what I've read in that thread it's basically impossible to tell if the ESS is doing conversion to PCM or not.
It's a black box and they will not tell.

Volume control in DSD domain seems possible, doesn't necessarily mean it's being converted to PCM.
What is agreed to be a concern is the ASRC and the modulators...

I was able to download the mentioned technical paper on the Sabre DAC internal operations via the Wayback machine.
I'm still reading it but it seems to me they are something very peculiar.

Our modulators
differ in detail from conventional ΣΔ modulators in that they
can operate up to 100% modulation depth. This is achieved by

a cascade of independently stabilized lower-order modulators

The modulator is fifth order with
adjustable (user software configurable) output bit width,
typically six bit, and since it operates to 90% modulation

depth and at rates up to 40Mhz, the noise floor from the
modulator is well below −160dB (the integrated noise is less

than −140dB).

From what I understand reading there's an n number of 6-bit 40 MHz modulators in parallel/serial/mixed configuration?

They also talk about the I2S and DSD data streams and the fact they oversample "as much as 40 MHz" the incoming data.
Which seems to be the reason they need the ASRC in the final stage before the modulators.

Rather than trying to lock a PLL to the data rate of this
interface signal, the Sabre DSP uses the arrival time of the
data as a gating signal for the first part of the processing.
Specifically, we now need to apply a filter to the digital data –
we must remove the image that will be created when we upsample

the data to our much higher clock rate.

The Sabre DAC rate converter has two advantages compared to the
poly-phase filter approach and is described in great detail in
the pending patent. Firstly the rate conversion is unlimited –
allowing the Sabre to always achieve a conversion into its
exceptionally high clock rate (as much as 40Mhz) from as
little as 4Khz in one step; and secondly, the process is
essentially perfect to the bit level – the output DNR exceeds
175dB and the THD is correspondingly high.

As well as sample rate conversion the Sabre has a
proprietary jitter reduction circuit that operates with the rate
converter and is able to achieve a 100% jitter rejection. These
two steps: jitter rejection and rate conversion; are able to take
the “burst” mode over-sampled filter output into the precisely
correct clock edge of the high speed clock. Audio data from
all sources is now in the high speed clock domain and sent to

the modulator.

Maybe there's some more info on the patent mentioned but I doubt it:

To understand how ESS modulators may differ from more conventional
ΣΔ modulators refer to US Patent 7,058,464 which describes one difference.
Other innovations are not publicly disclosed – they are retained as ESS
Proprietary information.


Most of the important stuff it's probably undisclosed.

Not sure if this is this a good approach but it's definitely interesting...

Anyway I tried to test with the scope mentioned in that thread and made some sine test tones at very high frequencies.

I'm using now the Topping D50s, which btw I like it very much considering the 100€ something I paid for on Amazon 2nd hand.
Perfect for my needs and it also has the socketed op-amp which is nice for experiment.
I'm just puzzled at the very low voltage level on the line-out which is 120-150 mV below the Aune X8.
Not sure it's normal...

The D50s doesn't have a selectable fc for DSD unfortunately.
But at least I can tell that if there's a conversion to PCM, it's using at least an fs at or above 768 kHz :)

Tried to use Aul Converter to create some DSF test files but it just produces an empty file...
I had to use the DSD Processor and it's limited to 768 kHz.

If someone has some professional equipment that can produce DSF files from very high-rate PCM (1,5-6 MHz), I'd appreciate some test tones assets at different very high frequencies.

In theory with DSD512 native the DAC should be able to reach 22 MHz and if something comes out I should be able to see it.
Depends on how the IIR filter is cutting off but it seems to be very relaxed... a DSD512 test tone at 380 kHz is read at 270 kHz on the scope.

I have verified that I can see at 768 kHz both with Filter 5, fast roll-off linear phase, and Filter 3, fast roll-off minimum phase, a 380 kHz test tone.
If you really care about entertaining your dog with hi-res music then PCM 768 kHz is the way to go :)

Jokes aside, I got a bit worried while testing.
Forgot to disconnect the R output from the amp and left the speakers enabled.
At some point I realized that I could hear the test tones.
I didn't expect it to reproduce anything considering they were all above 150 kHz.
Also I can't hear anything above 13 kHz, pretty sure.
Guess it's just aliasing?

Fortunately it didn't damage my AMT tweeters, was a bit worried...
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
The modulators aren't really that relevant. The modulation happens all the way at the end of the chain. What happens before is relevant. Specifically, ESS claims that the volume control is 32 bits, and it also claims the processing path is 32-bit with 64-bit accumulators. You can pretend all you want that it's still DSD, but it's not. Why would there be an FIR filter? Is it to filter out ultrasonics? But if the rate stays the same and remains 1 bit, how will that work? You can only do this by expanding the nr of bits. And the filter effectively makes it PCM.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
The modulators aren't really that relevant. The modulation happens all the way at the end of the chain. What happens before is relevant. Specifically, ESS claims that the volume control is 32 bits, and it also claims the processing path is 32-bit with 64-bit accumulators. You can pretend all you want that it's still DSD, but it's not. Why would there be an FIR filter? Is it to filter out ultrasonics? But if the rate stays the same and remains 1 bit, how will that work? You can only do this by expanding the nr of bits. And the filter effectively makes it PCM.

I wouldn't know why there is a DSD FIR filter (which doesn't seem to be present at the least in the 9038) but it seems pretty sure they are oversampling.
Not an expert in FIR filters but AFAIK there are 1-bit FIR filters, it's not needed to expand the number of bits.
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
Not an expert in FIR filters but AFAIK there are 1-bit FIR filters, it's not needed to expand the number of bits.
Got any reference for that? I don’t think you can do that.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
Got any reference for that? I don’t think you can do that.

As said I'm not an expert, still trying to learn, and I may have misunderstood everything.
Please don't be upset with me :)

But while trying to understand why there was a FIR filter for PCM and not on PDM and what was a FIR/IIR filter I stumbled upon a lot of information about 1-bit FIR filters.
It didn't seem relevant to audio, more signal processing, but maybe ESS is using it together with the very high oversampling to do... something?

If you google "fir filter 1-bit" there's quite some stuff.

Like this one:

There's also this discussion that I bookmarked a while ago about PDM to PCM conversion:


From what I understood you do decimation and every 4:1 you get a 1-bit precision increase.
You don't need to retain the high sample rate converting to PCM.
But what if you just keep the high sample rate, or oversample, and don't increase the bits?
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
As said I'm not an expert, still trying to learn, and I may have misunderstood everything.
Please don't be upset with me :)
I’m not at all :)
It didn't seem relevant to audio, more signal processing,
That’s doesn’t matter. Audio is a signal and we need to process it.
If you google "fir filter 1-bit" there's quite some stuff.

Like this one:
Thanks that’s interesting. Seems like a lot of trouble though to add next to a PCM workflow. Why waste silicon surface if you can just reuse what is already there.
But what if you just keep the high sample rate, or oversample, and don't increase the bits?
Those are two different questions. You can keep the high sample rate, ESS seems to do that, so they can skip the oversampling. If you keep the 1-bit, you can’t really do any useful processing. Removing ultrasonics from a 1-but DSD stream and still keep it 1-bit, doesn’t make sense. You need the ultrasonics for the reconstruction.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
That’s doesn’t matter. Audio is a signal and we need to process it.

Indeed, I mean that usually audio is PCM and multi-bit so it doesn't probably have a practical application a 1-bit FIR filter in this context.
Maybe ESS found it...

You can keep the high sample rate, ESS seems to do that, so they can skip the oversampling.

I wonder if they really skip the oversampling... if they have a 40 MHz bandwidth in theory 2-4x is possible.
Wouldn't know for what but possible.

Removing ultrasonics from a 1-but DSD stream and still keep it 1-bit, doesn’t make sense. You need the ultrasonics for the reconstruction.

Oh nice, now I have to understand why the ultrasonics are needed for the reconstruction :)
What if they use it instead to filter the infrasonic?
From what I understood there's also a lot of noise there with DSD.
Is that needed as well for the reconstruction?
 

Snoopy

Major Contributor
Joined
Jul 19, 2021
Messages
1,645
Likes
1,250
I’m not at all :)

That’s doesn’t matter. Audio is a signal and we need to process it.

Thanks that’s interesting. Seems like a lot of trouble though to add next to a PCM workflow. Why waste silicon surface if you can just reuse what is already there.

Those are two different questions. You can keep the high sample rate, ESS seems to do that, so they can skip the oversampling. If you keep the 1-bit, you can’t really do any useful processing. Removing ultrasonics from a 1-but DSD stream and still keep it 1-bit, doesn’t make sense. You need the ultrasonics for the reconstruction.


ESS chips always have a FiR filter because they do their 32 bit volume control thing to adjust the volume of DSD files to match PCM.

ROHM chip lets you bypass the FIR filter and the SDM. But only in fixed mode when feeding the DAC DSD files. That reduces the XLR out to 3.7 volt.


Akm chips work similar.
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
I wonder if they really skip the oversampling... if they have a 40 MHz bandwidth in theory 2-4x is possible.
Wouldn't know for what but possible.
There is still an (a)SRC step to get to the 40 MHz.
Oh nice, now I have to understand why the ultrasonics are needed for the reconstruction :)
Check out dithering.
What if they use it instead to filter the infrasonic?
From what I understood there's also a lot of noise there with DSD.
Is that needed as well for the reconstruction?
Never heard about that.
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
ROHM chip lets you bypass the FIR filter and the SDM. But only in fixed mode when feeding the DAC DSD files. That reduces the XLR out to 3.7 volt.
It also seems to bypass the multibit modulator, meaning it’s not actually using multi level delta sigma in that case. I wonder how much of a performance hit that gives? And if there is none, what’s the point of a multi level delta sigma design anyway?
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
ESS chips always have a FiR filter because they do their 32 bit volume control thing to adjust the volume of DSD files to match PCM.

You are coming late to the party :)

Miska, the HQPlayer developer, said there are other ways to apply volume control to DSD without converting to PCM.
I wouldn't know, I guess he knows what he's talking about.
The point is if ESS could be really doing something that doesn't require conversion to PCM, as they seems to claim that DSD is never converted to PCM, or not.

ROHM chip lets you bypass the FIR filter and the SDM. But only in fixed mode when feeding the DAC DSD files. That reduces the XLR out to 3.7 volt.

That's interesting... the SMSL D300 claims 4.0Vrms on XLR with fixed volume.
I wonder if that means then that they are not bypassing volume control thru the ROHM but just setting a fixed gain...

There is still an (a)SRC step to get to the 40 MHz.

From the audio path block diagram you posted it seems there is at the end, always, and it's not avoidable.
In my understanding it's to sync the clock cause it was, possibly, oversampled at the beginning.

Check out dithering.

Ah yes, I have to. It's on my list :)

Never heard about that.

Maybe I mixed up or one of the many BS I've read about DSD.
Have to look for it.
 

Snoopy

Major Contributor
Joined
Jul 19, 2021
Messages
1,645
Likes
1,250
It also seems to bypass the multibit modulator, meaning it’s not actually using multi level delta sigma in that case. I wonder how much of a performance hit that gives? And if there is none, what’s the point of a multi level delta sigma design anyway?

If U use pcm it goes through the FIR filter and SDM and does all the oversampling etc ...
But with DSD you are able to bypass it.
That's the thing when people always say there is no difference with HQPlayer and other upsampling software. You need a DAC that lets U bypass all that stuff.

Maybe it's for purists? It's a Japanese chip after all and DSD is still popular there.
Akm has a similar approach but they actually have a FIR filter (2) but a DSD direct mode also.
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
The voltage restriction may just be a product specific thing. The direct DSD output may be lower indeed, but since these DACs are current out, the voltages gets made in the IV section, external from the chip.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
Unless the ESS 9038Q2M has an undocumented PCM data path higher than the advertised 1536/32b, it doesn't convert DSD to PCM.

I have converted a 3072/32b test tone at 800 kHz, above the Nyquist rate of 1536 kHz PCM, to DSD256.
This little nice Poikosoft EZ CD Audio Converter does a great job converting to DFF; unfortunately it's limited to DSD256.

The 9038Q2M fc for DSD512 exceeds 1 MHz but it's much lower with DSD256, about half of it.

Despite that the IIR filter is not strong enough to completely completely kill the 800 kHz tone and I can see it for a brief moment on the scope.
This means that if converted to PCM should have been done at least at 3072 kHz.
 

voodooless

Grand Contributor
Forum Donor
Joined
Jun 16, 2020
Messages
10,435
Likes
18,455
Location
Netherlands
Unless the ESS 9038Q2M has an undocumented PCM data path higher than the advertised 1536/32b, it doesn't convert DSD to PCM.

I have converted a 3072/32b test tone at 800 kHz, above the Nyquist rate of 1536 kHz PCM, to DSD256.
This little nice Poikosoft EZ CD Audio Converter does a great job converting to DFF; unfortunately it's limited to DSD256.

The 9038Q2M fc for DSD512 exceeds 1 MHz but it's much lower with DSD256, about half of it.

Despite that the IIR filter is not strong enough to completely completely kill the 800 kHz tone and I can see it for a brief moment on the scope.
This means that if converted to PCM should have been done at least at 3072 kHz.
It's quite clear that the PCM conversion preserves the sample rate. Your DSD256 will produce an internal 11.2MHz/32-bit output. Your 800 kHz tone would fit that easily.

As for the filter:
1685950271748.png

At base DSD rate the attenuation is only ~ 63 dB. Since your rate is 4x higher, so will be the cuttoff point. So the attenuation at 800 kHz will be much lower at DSD256. It doesn't surprise me why you see this on a scope.
 
Last edited:
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
It's quite clear that the PCM conversion preserves the sample rate. Your DSD256 will produce an internal 11.2MHz/32-bit output. Your 800 kHz tone would fit that easily.

My DSD256 file yes but an internal conversion to PCM 1536/32b wouldn't.
If it was converted to PCM at 1536 kHz internally I wouldn't see a thing on the scope, isn't it?
This is the same test that was done years ago when the DACs were limited to 384 kHz internal processing with a 250 kHz test tone.
 
OP
ManniX

ManniX

Active Member
Forum Donor
Joined
May 13, 2023
Messages
120
Likes
52
Location
Germany/Italy
It's quite clear that the PCM conversion preserves the sample rate. Your DSD256 will produce an internal 11.2MHz/32-bit output. Your 800 kHz tone would fit that easily.

I see what you mean... I thought the sample rate would have been preserved only if kept PDM, otherwise would have been decimated if converted to PCM.

At base DSD rate the attenuation is only ~ 63 dB. Since your rate is 4x higher, so will be the cuttoff point.

Seems I was still sleeping this morning I thought somehow it was about DSD512 :oops:
 

Sokel

Master Contributor
Joined
Sep 8, 2021
Messages
6,242
Likes
6,367
If you want to see a comparison of how an implementation (Khadas Tone) of an ESS (9038Q2M) dac roughly performs here you are:


PCM

1K PCM.PNG
DSD
1K DSD.PNG

PCM

MT32 PCM.PNG

DSD

MT32 DSD.PNG

PCM

SMPTE 60Hz-7k 4.1 PCM.PNG

DSD

SMPTE 60Hz-7k 4.1 DSD.PNG
 
Top Bottom