Ideas wanted -- USB DAC product

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
Features that could be useful when you use digital filtering:

1. Selectable filter characteristics:
1A. Apodizing filter for people worried about pre-ringing
1B. Steep filter with a stop band starting at fs/2 for people who like anti-imaging filters to really prevent imaging
1C. Compromise filter with low latency for professional and video applications

2. Headroom
Most filters with 0 dB passband gain for stationary sine waves have overshoots on signals that are not stationary or not sinusoidal, such as music. Many digital recordings go all the way up to 0 dBFS, so you need to keep some headroom yourself if you want to prevent clipping or overflowing.

Suggestion 2 goes at the expense of the SINAD and DR numbers you get when you measure with stationary sine waves, so please ignore suggestion 2 if you are really only after getting impressive measured performance without caring what it sounds like with music.
 
Member
Joined 2015
Paid Member
The target price listed by the original poster is above my current budget, but on a multi-purpose DAC I will also expect a network connection with support for some open streaming protocol. This is useful for multi-room and to control the playback from the smartphone. I currently use the former Logitec Squeezebox protocol, now open sourced and with a good third-party app. It would also be useful to support USB-C charging mode on the USB port, when using the Android smartphone as FLAC source with a USB-C cable connection. On my current setup with a conventional USB DAC, I am forced to use a powered USB-C hub to avoid the battery drain and to get a standard USB2 connector, and it is unpractical.
 
The target price listed by the original poster is above my current budget, but on a multi-purpose DAC I will also expect a network connection with support for some open streaming protocol. This is useful for multi-room and to control the playback from the smartphone. I currently use the former Logitec Squeezebox protocol, now open sourced and with a good third-party app. It would also be useful to support USB-C charging mode on the USB port, when using the Android smartphone as FLAC source with a USB-C cable connection. On my current setup with a conventional USB DAC, I am forced to use a powered USB-C hub to avoid the battery drain and to get a standard USB2 connector, and it is unpractical.

Lots of software drivers to be written, then?

Given the price of a Benchmark Media DAC-3 is a bit over $2k, would you be wiling to pay a full $3k for the same technical performance in order to pay for costs of ethernet streaming support and a few other goodies?

Some mastering rooms are starting to try the new Crane Song DACs, and as you can see like Benchmark they don't have all the connectivity features either:
SOLARIS
It's up to the user to provide an interface box near to the DAC location if most of those features are wanted. Just sayin'.
 
Last edited:
Member
Joined 2015
Paid Member
The cost of the ethernet streaming support may be almost zero, if GPL code is used on a low cost standard microcontroller. If proprietary/licensed code is used and/or a fancy microcontroller without mainstream support, then the cost may be significant and I agree that it will not be justified in this context.
 
What standard do you plan to use over Ethernet?


Hi. I'm not planning to use any existing standards at this moment. I would implement my own protocol and rush the product out as fast as I can, then I will consider adding industry standard protocols in the future.

For my own protocol, I will provide a Windows player software, an FB2K output plugin, an ASIO output plugin and player software for OSX, iOS and Android.

I've been working on Windows KS and Linux ALSA drivers, and I would say that's not easy, so I will not try to tap into kernel mixer at this moment, but I may do that in the future.
 
For home equipment, support for DSD with 2.8224 MHz and 5.6448 MHz sample rate would be nice. Despite its disadvantages, DSD is quite popular. I don't know if any studios use 2.8224 MHz or 5.6448 MHz noise shaped PCM (a.k.a. DSD wide).

I can support DSD over USB/Ethernet. Since my design is a multi-bit sigma delta design, it can be reduced to single bit operation, which effectively makes it native DSD-ready. My design can output bit-perfect DSD.
 
Features that could be useful when you use digital filtering:

1. Selectable filter characteristics:
1A. Apodizing filter for people worried about pre-ringing
1B. Steep filter with a stop band starting at fs/2 for people who like anti-imaging filters to really prevent imaging
1C. Compromise filter with low latency for professional and video applications

2. Headroom
Most filters with 0 dB passband gain for stationary sine waves have overshoots on signals that are not stationary or not sinusoidal, such as music. Many digital recordings go all the way up to 0 dBFS, so you need to keep some headroom yourself if you want to prevent clipping or overflowing.

Suggestion 2 goes at the expense of the SINAD and DR numbers you get when you measure with stationary sine waves, so please ignore suggestion 2 if you are really only after getting impressive measured performance without caring what it sounds like with music.

Thanks for your advice. I will include user selectable FIR filters (apodizing coefficients, steep coefficients and low latency coefficients). I may not do IIR since my design depends on polyphase identity of FIR to use DSP resource effectively.

I will include good headroom in my design. It has a 72-bit accumulator inside the DSP, and I will anyway scale signal down a little bit to prevent sigma delta modulator oscillation.

It won't affect SINAD and DR since my target SINAD and DR are 24-bit class, and all my DSP engines are at least 32-bit, so I have some wiggling room. Even if user inputs 32-bit, it will be dithered first.
 
140 dB? Reed relay shorting the outputs when you detect an all zeros input signal?

The reason why everyone rates DR instead of SNR is because this number can be cleverly manipulated.

For instance, DR doesn't care about signal-related noise (multiplicative noise), it only cares about additive noise.

In my case, my OPAMP output stage generates <=0.5uV RMS noise, and my device can output 10Vpeak (7V RMS) single ended, and 14V RMS differential.

Now, by doing differential output, output noise gets boosted by sqrt(2), so it becomes 0.7uV RMS, so I get 20M:1 DR, which is 146dB.

As for SNR, my design has digital SNR more than 150dB in audible range, mainly contributed by aliasing folded back into audible range.

My clock system guarantees at least 150dB SNR at 10kHz, and unlike most other people's design, which uses a low jitter XO, I use a little different design which is immune to mechanical shock (TCXO feeding into PLL1, PLL1 uses a MEMS VCXO as VCO, then PLL1 feeds to LC VCO PLL2, PLL1 filter designed to suppress mechanical vibration frequency), so acoustic resonance on chassis won't degrade jitter performance.

My analog subsystem is yet to be characterized, so I don't know what's the overall SNR, but I would say at least 135dB.
 
It would also be useful to support USB-C charging mode on the USB port, when using the Android smartphone as FLAC source with a USB-C cable connection. On my current setup with a conventional USB DAC, I am forced to use a powered USB-C hub to avoid the battery drain and to get a standard USB2 connector, and it is unpractical.

Believe or not, I initially designed for up to 60W USBPD charging (device powered by a 90W USBPD charger, up to 60W can be diverted to load, my device provided DC/DC conversion and USB PD CC communication to both DFP and UFP).

It ended up being scrapped due to the extra complexity, and anyway such features should not be provided to a prosumer grade gear. Also, it imposes some global EMI and safety certification issues. I decided to just remove USBPD feature and replace its input power connector to a plain old barrel jack.

My device is a self powered device, with type C interface. It only draws less than 0.2mA from USB port for VBUS detection.
 
I will include good headroom in my design. It has a 72-bit accumulator inside the DSP, and I will anyway scale signal down a little bit to prevent sigma delta modulator oscillation.

It won't affect SINAD and DR since my target SINAD and DR are 24-bit class, and all my DSP engines are at least 32-bit, so I have some wiggling room. Even if user inputs 32-bit, it will be dithered first.

I don't understand that. Of course you can make the SINAD of the digital part as high as you like just as long as it fits in the DSP or FPGA, but keeping headroom also means that the mixed-signal and analogue parts have to be driven a little softer than when you had no headroom, which reduces the SNR.

Anyway, good that you plan to include a decent headroom. It is far more likely to give an audible advantage than a few dB of difference in an already quite soft noise floor.
 
Intersample overs occur in the reconstruction filter inside the DAC. For that reason Benchmark Media reduces the digital input to the DACs by 3.5dB. That's enough to prevent distortion inside the DAC.

My analog reconstruction filter has a pretty low Q thanks to huge digital interpolation ratio (isn't that why we do oversampling?). As a result, transfer function never exceeds its DC gain.

The SDM, however, does tend to crap out when input level is too high, so I gave it quite some margin in digital domain.

When designing an SDM DAC from scratch, there's another form of challenge, namely inter-symbolic interference, which basically means the current symbol's output level is dependent on the previous symbol, which causes auto-correlation, hence multiplicative noise, which results in THD degradation. For this reason, our SDM DAC has a blank pulse insertion mechanism to isolate output DAC bitstream symbols from each other. This decreases DC gain by ~1.9dB. IMHO, greatly reducing THD by a lot at the cost of 1.9dB DR loss is a good deal.
 
What I understand from the articles Mark posted is that it can either be the digital interpolation filter or the analogue reconstruction filter that clips. Usually it will be the digital filter, as these are often designed without any headroom. Analogue filters will typically have some headroom to cover spreads and the increase of distortion that you get close to clipping.

By the way, the absolute worst-case input signal is full scale times the sign function of the impulse response reversed in time, that is, a signal that switches between positive and negative full scale in such a way that the absolute values of the filter coefficients all get added to each other. With a waveform like that you can easily need 11 dB of headroom. Fortunately, it is extremely unlikely to find something like that in a normal music recording.
 
You are absolutely correct. Analog part don't usually clip due to the low Q of filter, but digital parts, both interpolation filter and SDM, tend to clip easily.

The worst thing is that FIR filters don't have a feedback, so even for the worst case (but still within audible frequency) I can guarantee no clipping happens, but since SDM is essentially an IIR with a twist, if it decides to oscillate and clip, nothing can stop it but careful design with saturation prevention and damping.

This is another reason why some ridiculously high specced DACs use very high interpolation rate -- ES9018 goes to 1.536Msps after OSF, and though I have no data, I think internally in its Hyperstream SDM core, it uses higher sample rate.

With higher sample rate, SDM filters don't have to be so aggressive at shaping noise from lower frequency to higher frequency -- because its input noise frequency is already very high. That reduces the risk of having it going haywire.

Also, soft clipping and active damping are used in my modulator to minimize the impact of clipping should it occur.

And of course, my digital part has more than enough headroom, this is also to prevent SDM from going crazy. When it clips, it tends to recover really slowly, so it's best not to let it clip in the first place.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.