DAC Measurements With a Notch - QuantAsylum/QA40x GitHub Wiki

A notch is a very powerful way to extend the measurements capability of an audio analyzer. The notch works by suppressing the fundamental from the measurement, allowing the measuring device to see a much lower signal. That, in turns, helps to reduce the noise and harmonics that are inherently generated in ADC of the audio analyzer. The QA403, for example, can measure about -110 dB THD+N in loopback back. When the ADC is driven by a very clean source (such as a state of the art DAC), the ADC side of the analyzer can measure down to about -115 dB THD+N. A notch will extend that to about -124 dB THD+N.

Notch Background: The QA480

The QA480 was introduced in early 2020 as a short-run product, but it quickly became a regular product as its utility became obvious . It featured a discrete 1 kHz analog oscillator followed by a 64 step 1 dB mechanical attenuator. It also featured an unbalanced notch. The notch allowed the fundamental frequency to be attenuated, and prevented the rise of QA40x ADC harmonics from spoiling the measurement on high-performance DUTs. In loopback, the QA480 could achieve THD+N around -122 dB. This is significantly better than the QA40x ADC+DAC combo, which can hit about -110 dB THD+N in loopback. The QA403 ADC can hit about -115 dB THD+N or so when driven by a super-clean signal.

Since 2020, there's been a new AKM DAC (AK4499EXEQ) that appeared that can deliver THD+N around -124 or so. This means a high-performance analog oscillator is mostly out-of-business anymore unless it is delivering numbers quite a bit better than that AND has the frequency agility to match. But there's still a need for a notch to permit the measurement of these super-DACs. The AKM DAC has been built into some phenomenal DACs such as the Topping E70 Velvet (the Velvet name appear to come from AKM's propensity to label their higher-end DACs as "velvet sound").

The Upcoming QA455

As of July 2023, the QA455 isn't shipping yet, so everything below is subject to change. But some Automated Tests have been added to the 1.181 build to help with the evaluation of the QA455 prototypes and so the functionality and how it relates to the QA480 is hopefully instructive. The front-panel of the QA455 is shown below:

image

The QA455 is called a "line transceiver" because the focus of the lineup is on maximizing the the signal integrity at 1 kHz across a channel, or in this case a DUT. The TX side focuses on suppressing harmonics and noise above 1 kHz with a high-order low-pass filter (~33 dB suppression at 2H), and then converting the "cleaned" single-ended signal to a low-noise differential signal. And the RX side focuses on an ultra-precise differential to single-ended conversion using matched resistors to achieve the desired CMRR, and then suppressing the 1 kHz tone via a notch, followed by lots of gain before going back out to the audio analyzer.

And a block diagram of the QA455 is as follows:

image

When using the QA480, you need to sweep and export a notch shape. This is because the QA480 used a passive notch, which had a fixed Q just above 1.0. This meant that the 2H was attenuated about 9 dB, and the 3H was attenuated about 5 dB. The QA455 uses a higher Q notch and the attenuation at 2H is almost non-existent. This makes for an easy shortcut. That is, we first measure the full scale output of the DAC, note that to the plugin, and then compute the N+D relative to the reference.

The Plugin: DAC Measurements with Notch

An Automated Test plug-in has been created to facilitate measurements with a notch. While the QA480 used a passive notch that had a significant contribution at 2H and 3H (which required compensation). This plug-in assumes an active notch with a high-enough Q that the impact at 2H and 3H is negligible. The deepest part of your notch (which you can learn by doing a frequency response sweep) should be entered as the Test Frequency in the plug-in settings.

The plug-in will sweep DAC levels, and plot THD, THD+N and SNR. These measurements can be confusing because what they are measuring is similar. But there are important distinctions to be aware of.

THD measures the content of all of the harmonics up to a certain limit (usually 20 kHz). This level is referenced to the level of the fundamental. This figure is usually negative when expressed in dB, because the fundamental is much larger than the harmonics.

THD+N measures the noise and harmonics, usually from 20 to 20 kHz, and references that to the level of the fundamental. This figure is usually negative when expressed in dB, because the fundamental is much larger than the harmonics and noise.

SNR measures the noise but NOT the harmonics, and reference that to the level of the fundamental. This figure is usually positive. This can seem a bit odd at first. But keep in mind that THD and THD+N are telling you the level of the distortion or distortion plus noise relative to a 0 dB reference. SNR, on the other hand, is telling you the level of the signal relative to noise which is defined as the 0 dB reference.

Most modern DACs today are limited by noise. That is, THD+N and SNR are fairly close in value (though opposite in magnitude). And the THD is far below the THD+N. We'll look at this in a graph below.

The plug-in parameters are shown below:

image

The checkbox "Force System Volume to Max" will ensure the system volume is set to maximum before testing.

Next, we need to specify a measured Vrms and the associated output from the DAC, expressed in dBFS. This can be as easy as enabling mirroring, setting the output level to 0 dBV = 0 dBFS, and then noting the measured Peak Vrms. If that figure is 3.8Vrms, then that would be your reference Vrms.

Next, you want to specify the parameters for the sweep. In the screen shot below, we'll start the sweep at -4 dBFS, and finish at 0 dBFS, with a 2 dB increment between steps. Our test frequency needn't be the exact notch center, because we've largely taken care of that with the 0 dBFS reference. But it should be close. It's easy to sweep a notch with FREQ generator and measure the notch center frequency.

Finally, we need to specify the gain of the receiver. The gain here will ignore the notch gain--we want to note the gain across the spectrum so we can accurately reference the noise to the 0 dBFS reference we've declared above. In the case of the QA455, the final gain stage on the RX side is either 0 or 20 dB (user selectable with a button).

The resulting plot is shown below. From this plot, we can see the THD+N and -SNR are similar. Remember, we're graphing SNR here as a negative quantity so that they all line up in the same region on the plot. But the fact that THD+N and SNR are so close tells us this DAC noise-limited up to about 0.5 dBFS--the harmonics are so low their contribution to the THD+N is negligible.

image

Notes on Mirroring

The QA40x analyzer drives the DAC via mirroring. This means the QA40x is generating the tones, sending them to your primary sound card, and that sound card is rendering the tones. There are implications here that can dramatically impact the quality of the tones the PC is generating. For example, Windows has your sound card set up as a 24-bit 44.1 kSps device, an the QA40x opens the sound card as a 48 kSps device, Windows will perform a transcoding that that will dramatically degrade the DAC audio quality. If you are seeing performance figures far below what you expect, suspect that Windows is transcoding.

Additionally, while the QA403 knows the precise timing between it's input and output, that isn't known for Windows audio devices. As a result, when the QA40x changes the frequency or amplitude of the mirrored tone, you might need to wait a little longer for the mirrored tone to settle, depending on the Windows latency. This can be controlled using the Edit->Settings Freq/Amp Pause setting in the PC Mirroring section. What this setting does is delay any measurement for the specified time anytime a frequency or amplitude changes in the mirrored tone. And in the lower right of the QA40x application, you might see "Mirror Settling" from time to time. This is the main application pausing while waiting for the settling interval you specified to elapse.

If you are having trouble with measurements that make sense, set the Freq/Amp Pause settings to 5000 mS or so and see if that helps. Because the notches usually have lots of gain, a change in amplitude can result in a step function with energy that spills outside of the notch, and that is then amplified by the post-notch gain stage, and it might trip the input overload on the QA40x, resulting in the ATTEN relay being engaged momentarily.