• These commercial threads are for private transactions. diyAudio.com provides these forums for the convenience of our members, but makes no warranty nor assumes any responsibility. We do not vet any members, use of this facility is at your own risk. Customers can post any issues in those threads as long as it is done in a civil manner. All diyAudio rules about conduct apply and will be enforced.

Reference DAC Module - Discrete R-2R Sign Magnitude 24 bit 384 KHz

I consider my DSD decoding better than the DSC1 or Holo, I do it in perfectly in the digital domain, that way I can use the digital volume control. Anyway, DSD is delta-sigma modulation and the whole point of a R-2R DAC is to avoid delta-sigma....

Hi Soren

I appreciate your thoughts. My observation is that there is very little differentiation between DSD and PCM fed through the 1121. It all sounds like great PCM and I'm not complaining but it doesn't sound like directly reconstructed pdm.

I don't think the Holo or DSC1 are DS, but that may demonstrate the limits of my knowledge.

As I say, just a thought that appealed to me.

Regards
Mark
 
Hi Soren

I appreciate your thoughts. My observation is that there is very little differentiation between DSD and PCM fed through the 1121. It all sounds like great PCM and I'm not complaining but it doesn't sound like directly reconstructed pdm.

I don't think the Holo or DSC1 are DS, but that may demonstrate the limits of my knowledge.

As I say, just a thought that appealed to me.

Regards
Mark

Per definition, DSD are always delta-sigma..... You just move the delta-sigma modulator to the encoding side and therefore cannot avoid it....
 
How does this work if one may ask?

//

After the digital low pas filter and decimation you are at 328kHz and PCM. at that point you can do the volume control as usual. After that FIR2 boosts you back to 2.6MHz (PCM).

This fits fine with the infrastructure of the DAM. But I feel this (filter/decimating the 2.6MHz DSD down to 328kHz and then interpolating it back to 2.6MHz) is somehow a lack of beauty. I would prefer a single low pass filter running always at 2.6MHz.
You still could do the digital volume control after the low pass but at 2.6MHz it is more work of cause.
 
What's the problem ? For the dams and dacs you can load custom filters, so you can just load bypass filters, then do your filters externally....

The problem is that you can not provide PCM input at the final sample rate (~3MHz).
Thus you can not ... have an external filter for FIR2, ... can not try something else than the than the two step approach with the intermediate sample rate (~350kHz), ...
 
After the digital low pas filter and decimation you are at 328kHz and PCM. at that point you can do the volume control as usual. After that FIR2 boosts you back to 2.6MHz (PCM).

This fits fine with the infrastructure of the DAM. But I feel this (filter/decimating the 2.6MHz DSD down to 328kHz and then interpolating it back to 2.6MHz) is somehow a lack of beauty. I would prefer a single low pass filter running always at 2.6MHz.
You still could do the digital volume control after the low pass but at 2.6MHz it is more work of cause.

Running a 1000 tap fir filter with input at 11 Mhz and output at 352 Khz is not that easy to start with, if you have to output at 2.8 Mhz directly then things get really complicated....

A "pure" DSD DAC is basically taking the DSD input and lowpass filter it, I just do the lowpass filter in the digital domain at high speed, I would consider that the correct and better way to do it. The step from 352K til 2.8M is to avoid analog filters, even if you can't hear hear it, high frequency aliasing can cause all kind of intermodulation artifacts....

Those using a "moving average filter" do not filter enough, the output spectrum from that is terrible.... But my DSD filter can be any shape, and in fact is, the four factory filters for DSD match the PCM filters....

As I said, I don't really care much for DSD / Delta Sigma modulation, but I still do it as correct as possible. Remember the Lampizator Atlantic review in 6moons where the reviewer really loved it in DSD mode ? That was the dam1021.... But then, it was a 6moons review....
 
The problem is that you can not provide PCM input at the final sample rate (~3MHz).
Thus you can not ... have an external filter for FIR2, ... can not try something else than the than the two step approach with the intermediate sample rate (~350kHz), ...

Filters really just matter for the lower sample rates, at 384K you can just load a soft butterworth filter for FIR2 and everybody would be happy....
 
Running a 1000 tap fir filter with input at 11 Mhz and output at 352 Khz is not that easy to start with, if you have to output at 2.8 Mhz directly then things get really complicated....

A "pure" DSD DAC is basically taking the DSD input and lowpass filter it, I just do the lowpass filter in the digital domain at high speed, I would consider that the correct and better way to do it. The step from 352K til 2.8M is to avoid analog filters, even if you can't hear hear it, high frequency aliasing can cause all kind of intermodulation artifacts....

Those using a "moving average filter" do not filter enough, the output spectrum from that is terrible.... But my DSD filter can be any shape, and in fact is, the four factory filters for DSD match the PCM filters....

As I said, I don't really care much for DSD / Delta Sigma modulation, but I still do it as correct as possible. Remember the Lampizator Atlantic review in 6moons where the reviewer really loved it in DSD mode ? That was the dam1021.... But then, it was a 6moons review....

Don't get me wrong, I like the DSD sound of the DAM very much, in most cases more then the corresponding 16/44.1PCM track of a SACD (via the DAM).

The implementation of a lowpass filter from a 1-bit source is not as resource hungry as for a PCM signal of the same frequency. You have no multiplications, you just add filter coefficients if there is a 1 in the input. Moreover as you are decimating, you run the filter only every 32-th position of the stream (in your example). But yes, it is probably still a lot of work.
 
"Pure native DSD" "decoding" requires a resistor and a capacitor - basically.

//

For 2.8M DSD you really need minimum a 4th order lowpass filter, unless you don't care about the aliasing noise....


Don't get me wrong, I like the DSD sound of the DAM very much, in most cases more then the corresponding 16/44.1PCM track of a SACD (via the DAM).

The implementation of a lowpass filter from a 1-bit source is not as resource hungry as for a PCM signal of the same frequency. You have no multiplications, you just add filter coefficients if there is a 1 in the input. Moreover as you are decimating, you run the filter only every 32-th position of the stream (in your example). But yes, it is probably still a lot of work.

Hey, you revealed my little secret, 1000 taps at 11 Mhz sounds much more impressive.... But yeah, the DSD fir filter is running with eight parallel adds at 45 Mhz, don't really use much logic in the FPGA as a Spartan-6 have very efficient wide adds....
 
Last edited:
Q: IIR details

soekris, could you please explain logic behind loading and enabling IIR filters for v1.06?

To my understanding Deemphasis are always loaded, but only enabled on coded media. This IIR filter is numbered #30.
It's mentioned that there are room for 15 biquad filters. As IIR #30 Deemphasis are under uC controll that should leave 14 free position where a spot is now taken by the DC block implemented as IIR filter #29.

Is it now possible to load biquad filters to all 14 cascading position and enable them at will?

When implementing new IIR filters should we number them descending from #30, or will it accept any random but unique numbers from 15 to 30?

Are the internal IIR cascade ordered by filter numbers or by the order they're listed in the 1021filt.txt file?

:wiz:Putting the answers in the user manual or in a FAQ on you homepage are welcome for easy and fast reference for all users. Reading and searching more than ten thousand posts, most of them not refering to firmware version are starting to wear on some of us I'm sorry to say.
 
It would be great if IIR coefficients could be changed instantly via RS232 commands (either persistent or non-persistent, or both). This way, tone controls could be made (e.g. to boost the bass with a low-shelf filter).

In the meantime I built my Soekris DAC. I used the housing of an old Wamirack24 external soundcard. Given the lack of Windows10 drivers, this soundcard was useless anyhow regrettably. I used a simple breadboard LM7812/7912 supply with 2x15 toroid and S/P DIF connection as planned.

I am not decided yet about my opinion on the DAC. At least the level of detail is stunning. But maybe also a bit thin yet. Stereo placement is very good. Anyhow, I need to fine tune things in the set a bit before judging. Also, I will try a supply upgrade soon.
 
After some experimentation, I found the root cause of the thinness/minor distortion of the sound. Sound quality is greatly improved since I put my kernel streaming EQ application in 32 bit mode (it previously had to be put in 16-bit for my Paradisea DAC). This makes sure that S/P DIF transfers 24 bit to Soekris DAC. The improvement is great... :spin:
(I use EQ filters and a bit of digital volume control hence the strong need for 24 bit)

Back to listening...

(and this weekend I need to continue with a RS232 connection to my PC so I can control the internal digital volume instead of one on the input)
 
In the meantime I got RS232 hooked up and removed the volume potmeter. To my ears, the F7 (soft) filter sounds much better than the stock (F5) filter. Bass is more controlled and generally the F7 filter sounds faster.

Next, I installed a LM317/337 dual 12V supply PCB. This made a huge impact to the sound, more than I had anticipated. Sound changed from a bit on the lean side to a bit on the full side. Depth has increased. Sound is still detailed & relatively fast but a bit less open. Instrumement realism is great. This is getting better and better... :p

Fedde