DiAna, a software Distortion Analyzer

The LTC2380-24 itself have 34MHz linear bandwidth.
The analog input stage use fast buffer and two cutoff frequencies can be selected.
Anyway, there is also a 1.5 MHz passive low-pass filter at the ADC inputs to improve SNR.
Of course i can be modified if larger analog bandwidth is required.
[...]
Frex

Great! So with this ADC THD measurements at 20kHz are not limited any longer to only a few harmonics.

Cheers,
E.
 
Why should the conversion technology matter with regard to the logical Nyquist theorem? If a SAR ADC outputs sample values at equal times, how is it different from a delta sigma or parallel ADCs outputting sample values at the same frequency?

IMO every ADC has a S/H element.

This is because delta-sigma use decimation and FIR filter inside the ADC itself, so this
internal processing suppress frequencies beyond brick-wall filter cutoff and until real FS/2 frequency (that is in general 64 or 128 times real output sampling rate ).
SAR ADC doesn't have this limitation, analog value is stored and convert in digital form before next sample acquisition.

Frex
 
I think that if he use a time domain synchronous averaging to only retrieve
THD products of input signal (coherent harmonics) , then , this process will remove non-coherent noise or spurious. Resulting FFT's will not been the same.

Frex

Well... I guess DiAna does a regression of the harmonics in the time domain ("fit sine curves by amplitude and phase to the time-domain data"). If so, that's the same (as in identical) as taking the Fourier coefficients at the frequencies of the harmonics (and ignoring all other Fourier coefficients).
 
OK that makes sense. How do you bandpass the required fs/2 mirror before feeding the ADC to avoid aliasing?

If you require to make under sampling, so you won't need to use anti-alias filter as
the retrieved signal is an alias itself.
The AA2380 use a switchable input filter (2 cutoff frequency) and a SinC RIF filter also to reduce alias.
If the AA10M08 digital board is added, a FIR brick-wall filter can be added.


Better question: Who needs to measure audio amplifier harmonics above Fs/2, with a sound card having Fs=192kHz?

You can think the analyzer as your oscilloscope.
Wider analysis bandwidth give some headroom and the ability to see things that you won't be able to see otherwise (SMPS pickup noise for example).
So improving analyzer bandwidth increase instrument versatility and so help to design better audio devices (or others) by exploring signal mor in depth.


Frex
 
Last edited:
Member
Joined 2017
Paid Member
I don't think standard FFT has a fault. The only thing I want is the flexibility of windowing function. I usually use 1.5kHz instead of 1kHz because I often need the exact bin of FFT by the rectangular window. The only solution to have the exact bin, which means no pollution by another windowing like Hann, is synchronous sampling. If your sampling rate is 48kHz, the frequency you can choose is 48/(2^N),ie12kHz, 6kHz,3kHz,1.5kHz. This is because of radix-2. I don't know much about FFT. But I think if a software can accept radix-3, I can use 1kHz(1=48/(16*3)). Is this correct? What makes 1kHz available in synchronous sampling?
 
If you require to make under sampling, so you won't need to use anti-alias filter as
the retrieved signal is an alias itself.

Honestly, I do not understand. IMO the requirement for any sampling is the signal range being sampled is limited to fs/2. For standard sampling it is <0, fs/2>, for the band-pass sampling (undersampling) it is <n * fs, (n + 1/2) * fs>. In all cases the frequency limit is required before sampling (i.e. not in the digital domain - unless using oversampling which you want to avoid).

Someone mentioned that you could sample megahertz frequencies with 50Hz fs. Yes, but the signal sampled would have to be band-limited to e.g. <1,000,000Hz, 1,000,025Hz>. Or do I understand it wrong?
 
An FFT produces linearly spaced bins at the sample rate divided by the recording length. So if you take a 1 second recording at 48kSa/s, you will get an FFT with a 1Hz bin resolution. I.e. the first bin is DC, second bin is 1Hz, then 2Hz, then 3Hz... all the way up to 24kHz. 1kHz fits perfectly into 1 second so in that case it will work with a rectangular window.
 
Last edited:
Honestly, I do not understand. IMO the requirement for any sampling is the signal range being sampled is limited to fs/2.

I agree. I am afraid that everything sampled above Fs/2 would create aliases below Fs/2. As a real world example, I have a fast digitizing USB oscilloscope with analog BW > 20MHz. Fs is up to 20MHz. Apparently there are no input anti-alias filters switchable with Fs. If I measure e.g. up to 100kHz with Fs about 200kHz and the input signal contains MHz components, it produces aliased spectral lines in the measuring band and they may have high amplitude. The only cure is to use additional input anti-alias filter. So I doubt it is a good idea to sample anything above Fs/2. Nyquist is valid still.
 
I don't think standard FFT has a fault. The only thing I want is the flexibility of windowing function. I usually use 1.5kHz instead of 1kHz because I often need the exact bin of FFT by the rectangular window. The only solution to have the exact bin, which means no pollution by another windowing like Hann, is synchronous sampling. If your sampling rate is 48kHz, the frequency you can choose is 48/(2^N),ie12kHz, 6kHz,3kHz,1.5kHz. This is because of radix-2. I don't know much about FFT. But I think if a software can accept radix-3, I can use 1kHz(1=48/(16*3)). Is this correct? What makes 1kHz available in synchronous sampling?


FFTW (FFTW Home Page) can perform DFT with arbitrary size signals without zero padding or window functions. From the FFTW home page:
Arbitrary-size transforms. (Sizes with small prime factors are best, but FFTW uses O(N log N) algorithms even for prime sizes.)
 
For those who have trouble understanding the principles of undersampling, have a look at the spectra below. Sampling rate 192kHz, input signal: 19kHz at 0dB plus 190kHz at -60dB. The 1st picture shows an ordinary FFT spectrum. Because no anti-alias filter has been applied, not surprisingly, an alias at 192k - 190k = 2kHz will show up.
The 2nd picture shows a spectrum that supports undersampling. That's how DiAna processes "difficult" signals. Just a clean spectrum without aliases and way less leakage. Are you guys convinced now?

Cheers,
E.
 

Attachments

  • undersampling-2.png
    undersampling-2.png
    17.1 KB · Views: 207
  • undersampling-1.png
    undersampling-1.png
    13.6 KB · Views: 209
Member
Joined 2017
Paid Member
FFTW (FFTW Home Page) can perform DFT with arbitrary size signals without zero padding or window functions. From the FFTW home page:


Thank you for your advice. I have not yet understood the stuff because English is not my mother language. FFTW is the Discrete Fourier Transfer(DFT). I prefer the Discrete Fast Fourier Transfer(DFFT) to DFT to have short calculation time. If input data is a multiple of an integer, DFT requires no windowing. But in the case of DFFT, input data must be a power of two in radix-2. If you have radix-7, 979.59Hz(48/49) is possible with no windowing. Is it possible to calculate DFFT of 1kHz(48/(16*3)) with no windowing, If you have radix-2 and radix-3?
 
The 2nd picture shows a spectrum that supports undersampling.

Excuse my ignorance, I still do not see the principle. If you have no bandpass filter, how do you know the signal at -60dB is 190kHz and not e.g. in the next mirror, e.g. 190 + 192 = 382kHz?

Your spectrum chart starts at the first harmonic - 19kHz. If it started at 0, would we see the 2kHz component there?
 
Last edited:
For those who have trouble understanding the principles of undersampling, have a look at the spectra below. Sampling rate 192kHz, input signal: 19kHz at 0dB plus 190kHz at -60dB. The 1st picture shows an ordinary FFT spectrum. Because no anti-alias filter has been applied, not surprisingly, an alias at 192k - 190k = 2kHz will show up.
The 2nd picture shows a spectrum that supports undersampling. That's how DiAna processes "difficult" signals. Just a clean spectrum without aliases and way less leakage. Are you guys convinced now?

Cheers,
E.

Well, these plots look interesting. But HOW does that work? I don't see how one could reconstruct the information > fs/2 without some extra knowledge.