I wanted to add few more observation, looking at discussion here.
Scope can have two reasons for aliasing:
- first, when running at
fast timebases and
fastest sampling speed it can alias because
analog antialias filter
in front end before A/D doesn't filter properly, and frequencies
above Nyquist criteria reach A/D converter.
This happens when you connect 1 GHz signal to scope with 200 MHz rated bandwidth and push amplitude of generator up more than input attenuator is set for until something is show on a screen. If analog antialiasing filter is done right, when you connect out of band 100mV P-P signal on scope input set at 100mv full screen sensitivity (that would be V/div time vertical divisions) you shouldn't see any appreciable signal. If you do, analog filter is not steep enough. Mind you, you can always make something show, if you push 10V P-P into 1mV/div input. So that test has to always be with exactly the same amplitude as in band signal that shows correctly.
- second, when scope is
running slow timebases, because of limited memory, it has to slow down effective sampling rate of A/D, otherwise it won't be able to capture such a long capture.
It can do that that by:
1. Literally use slower clock for A/D converter. That is not always possible for various reasons.
2. It keeps on sampling at
maximum sample rate as always, but decimates by
throwing away samples, and keeping only every 4th or 5th or 10th one. That is effectively the same as slowing down sampling clock for the same factor.
3. It keeps on sampling at
maximum sample rate as always, but
downsamples by filtering. This will produce same number of samples as first two, by lowpass filtering.
This, slow timebase induced one, is tricky one, and more often to happen than first occasion of aliasing.
Here , option at
1. is rarely used. Many reasons for it, including A/D converters designed for fixed clocks or limited frequency range, complications in datapump design etc etc.
Option
2. is mostly used. It's cheap and very easy to do. It is also compatible with Peak detect mode, that can run at the same time. This is what most scopes do.
Problem with option
1. and
2. is that as effective sample rate goes down, so does Nyquist criteria frequency. But at the same time we keep input analog antialiasing filter the same, breaking Nyquist criteria. Hello aliasing. So instead of seeing solid block of signal (because periods are so close together they actually blend together horizontaly, keeping vertical amplitude size, showing signal envelope a that time scale) it starts showing downconverted imaginary signal.
Option
3. doesn't have that problem. Since it is averaging with low pass filter it applies to sampled signal a digital antialiasing filter that filters out anything above the Nyquist at target sample rate. By virtue of that, it will pass through only signals that can be properly reconstructed, and nothing more. And being digital, you can make it pretty ideal if you want.
So option 3. is best one. It automatically creates signal that is free of aliasing errors, right? And that is what you wan't to do?
Well, not so fast.
I will demonstrate on Keysight 3000T. Make sure you get stable trigger and use holdoff if needed. Scope might show it uses FFT. I do that to force it to disable built in antialiasing algorithm.
Let's take that simple 50 MHz signal AM modulated with 100Hz as an example. That is carrier with period of 20ns (1/f), and modulation with period of 10ms (1/f)
Let's put scope at 10 ns/div. We want to see the carrier. Scope samples at 5 GS/s.
If you have scope that does 1. or 2. or 3. you get nice 50 MHz sinewave on screen.
Let's put scope at 10 ms/div. We want to see the modulation envelope. Scope samples at 20 MS/s.
If you have scope that does 1. or 2. , you get this:
That is wrong right?
Now you might be tempted to say: let's use option 3. It will fix this problem.
No, it would be right thing to do for spectrum analyser, not scope. Why?
Here, this is what we want to see:
It is nice amplitude envelope at 100Hz and a solid block of 50 Mhz carrier inside.
But if we go with option 3. (downsampling by filtering), as suggested, we will filter out anything above 10 MHz..
On spectrum analyser, we would be looking at scale of 0-10 MHz and see nice clean spectra of that without any folding from upper bandwidth. Perfect.
What we will see on the screen of oscilloscope ?