Question about sampling and bandwidth - Page 1
Forum section: electronics / testgear

author: Housedad
author_rank: Frequent Contributor
timestamp: April 13, 2019, 01:58:34 am
content: I have decided to get a bit more in depth about the workings of a modern DSO. I learned about the Nyquist sampling theorem along the way and about two samples minimum with evenly spaced timing.I have a ds1054z and it has a interleaved sample rate of 1Gs/s on one channel, 500Ms/s on two channels, and 250 Ms/s on four channels. My unit has been hacked to 100Mhz.From what I can glean, a decent sine waveform without aliasing can be had at a max bandwidth of 1/4 to 1/5 the sample rate and 1/5 is preferred.So, with the 1054z: (assuming the ASICS are timed right)on one channel, then 1/5th of 1 Gs/s is 200Mhz.on two channels then then 1/5 of 500 Ms/s is 100 Mhz.On four channels, then 1/5th of 250 Ms/s is 50 Mhz.If I view a 70 Mhz sine wave on all four channels, I would expect to see significant aliasing, But I should be able to see a decent sine waveform at max 50Mhz on all four channels.With 2 channels, I should see a decent (3 Db down) waveform at max 100 Mhz.With 1 channel, I should see a great waveform at max 200 Mhz. (Amplitude significantly more than 3 DB down) Or at 1/4th, max 250Mhz.Questions:Am I seeing this right?Four channels limits to 50Mhz? (at 1/5th)Is this why people have shown the ds1054z to show signals significantly higher than 100 Mhz? It would have to be on one channel only, I think.

author: tautech
author_rank: Super Contributor
timestamp: April 13, 2019, 04:28:47 am
content: Yep, you essentially nailed it however the series any scope belongs to, when hacked the rated frequency rises to the maximum of that series.Rated BW is an accuracy spec and used outside this rating amplitude accuracy in particular suffers as you already pointed out.Of greater interest is frequencies that can still be triggered on and still have a frequency counter that's accurate and stable.Recently for shits and giggles I pushed a 200 MHz DSO to 520 MHz and it was still solid as a rock.You can find that screenshot with a search if you're interested.Gunna do the same again soon now I have my SSG3021X back from Defpom so with that I can push frequencies way past any DSO I have here.

author: 0culus
author_rank: Super Contributor
timestamp: April 13, 2019, 04:40:12 am
content: Quote from: tautech on April 13, 2019, 04:28:47 amDid you also happen to (at least qualitatively) measure the 3 dB bandwidth?

author: tautech
author_rank: Super Contributor
timestamp: April 13, 2019, 04:53:59 am
content: Quote from: 0culus on April 13, 2019, 04:40:12 amI can and have for several Siglent DSO's.......well with the gear I have but not a+3dB accuracy sweep to full BW.For all I have checked using the simple 'input 1V sine wave and increase frequency until 0.707V is reached' they have all been ~15-20% above rated BW.Of course this a rough check and includes any source flatness inaccuracyandmeasurement error.Not long had the 2.1 GHz RF gen so still playing with it and getting to know it. Previously my HP topped out @ 520 MHz.

author: 0culus
author_rank: Super Contributor
timestamp: April 13, 2019, 04:58:11 am
content: Interesting. I recently measured the 3 dB bandwidth of my Tek 2465B CRO and got approximately 520 MHz. It will stably trigger on sinusoidal signals up to about 900 MHz, if they are connected via coax terminated in 50 ohms. Obviously, the amplitude is way rolled off.

author: nctnico
author_rank: Super Contributor
timestamp: April 13, 2019, 09:58:27 am
content: Quote from: Housedad on April 13, 2019, 01:58:34 amNo, but it depends on whether the sin x/x signal reconstruction has been implemented properly (and AFAIK the Rigol DS1054Z is an exception which doesn't have good sin x/x). With working sin x/x reconstruction you can get a good sine wave up to fs/2.4. Remember sampling theory which says you have enough information to convery a signal with frequency components up to fs/2. The problem isn't in the sampling rate but our brains can't re-create a signal from the sampling dots. Sin x/x helps to reconstruct the signal so we can see it as the original signal.

author: DDunfield
author_rank: Regular Contributor
timestamp: April 13, 2019, 10:07:43 am
content: Quote from: Housedad on April 13, 2019, 01:58:34 amExactly this!This is why the DS1054Z is a terrific 50Mhz scope, but a mediocre 100Mhz scope in some conditions. I mentioned this in my very first EEVBLOG posting!https://www.eevblog.com/forum/testgear/scope-purchase/msg1396934/#msg1396934Nyquist says you only need 2 samples to reproduce a sine wave, however it you already KNOW it's a sine wave, you don't really need a scope do you? All you need it a frequency counter and voltmeter.Most name-brand scopes seem to use a minimum sample rate of 1/5 the stated analog bandwidth. By this yardstick the 1054Z goes downhill above 50Mhz on 4 channels.Note that for "above 50Mhz" I'm really referring to rise-times. For non-sine input, the max freq. you can see reliably will depend on the rise/fall times in your signal, how far you are below the stated max bandwidth, and how far above it the scope can actually see. In any case, having too slow a sample rate will lead to missing bits and/or aliasing. It would have been nice if Rigol had included a 50Mhz bandwidth limit option (the hardware is obviously there) to use when running 4 channels.Makes you feel bad for the guys who shelled out for the 1104Z .. it's simply NOT a 100Mhz scope on 4 channels.Dave

author: nctnico
author_rank: Super Contributor
timestamp: April 13, 2019, 10:27:58 am
content: Quote from: DDunfield on April 13, 2019, 10:07:43 amSorry but you are not trusting the math and laws of physics. The 1/5 rule is from the previous millenium when sin x/x reconstruction didn't exist and you needed more samples to reconstruct a signal by drawing lines between them. The 1/5 rule has nothing to do with bandwidth but it is just to show a signal on screen which can be recognised if you don't have sin x/x reconstruction. Meanwhile the world has moved on.

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 11:15:01 am
content: Quote from: Housedad on April 13, 2019, 01:58:34 amI am with nctnico here: What you state above is not correct. If you know ahead of time that your signal's highest frequency content (i.e. its highest frequency sine component) is at a frequencyf, thenfcan go up to 1/2 the sample rate. (Just "a tad" below, actually.)The various rules of thumb which recommend to stay below 1/4, 1/5 or 1/10 of the sampling frequency are accounting for the possible presence of harmonics on your input signal, which will not be perfectly suppressed by the scope's input low-pass filter. But if you know your signal to be a "clean sine waveform", it's safe to go up to nearly 1/2 the sampling rate.

author: DDunfield
author_rank: Regular Contributor
timestamp: April 13, 2019, 11:54:29 am
content: Quote from: nctnico on April 13, 2019, 10:27:58 amTrue if the input had a brick-wall 100mhz filter. As far as I know the 1054Z does not, and measured 3db point with the hack is well above 100Mhz, and frequency components much higher than that are visible. Those components will cause artifacts with sin(x)/x at 2.5x. This is true of almost any scope, and there's a reason big-names use minimum of 5x.There's a decent description of this in one of Yokogawas app-notes:"Select SINE to connect each display point with a smoothed line using the sine(x)/x window and algorithim. SINE interpolation assumes that all of the frequency content in the sampled waveform lies below one-half of the sample rate that the waveform was sampled at; and so you should be sure that this is the case as well – Otherwise, there will be a violation of Nyquist’s criterion.SINE is appropriate for reconstructing any smooth waveforms or irregular waveforms which you desire to be smoothed by the sine(x)/x algorithim. Using SINE to smooth an square wave which violates the assumption mentioned above, on the other hand, can result in overshoot and undershoot anomalies which are not reality. Increasing the sample rate to meet the Nyquist’s Criterion is the obvious way to avoid these effects. If that is not possible, choose OFF or LINE."IIRC is one of Daves videos he states that you really want a sample rate of 10x.DaveEDIT: I'm not saying the 1054Z is "useless" at 100Mhz - just be aware of the limitations, especially when operating 4 channels.

author: Psi
author_rank: Super Contributor
timestamp: April 13, 2019, 11:58:37 am
content: If you turn off sine interpolation and also switch to dot mode (instead of vector) you can see the individual samples and get a better understanding of whats happening.

author: nctnico
author_rank: Super Contributor
timestamp: April 13, 2019, 12:12:53 pm
content: Quote from: DDunfield on April 13, 2019, 11:54:29 amNo, it it not true for almost any scope. The DS1054Z is one of the rare exceptions (assuming running at the full samplerate). Rigol should have put a better anti-aliasing filter in it so the bandwidth would have been limited to 100MHz with a roll-off to -50dB at 150MHz.

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 12:14:31 pm
content: Quote from: DDunfield on April 13, 2019, 11:54:29 amThat is correct if your input signal contains a significant amount of higher-frequency content that the frequency you are interested in (harmonics etc.). But housedad had specifically asked about measuring a clean sinusoidal input signal. E.g.Quote from: Housedad on April 13, 2019, 01:58:34 amAnd in that context, the 1/2 sampling frequency limit applies. So housedad's statement above is incorrect: You can nicely feed a 100 MHz signal to all four channels of the DS1054Z, sample it with the 250 MSa/s rate that applies in four-channel mode, and get it displayed correctly.

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 12:27:13 pm
content: Quote from: nctnico on April 13, 2019, 12:12:53 pmAre you implying that almost every DSO has an analog "brick wall" filter at it input? I find that hard to believe -- wouldn't that wreak havoc with the phase behavior as you approach the maximum frequency, and hence distort complex signals heavily?(Honest question, no slight intended. I have always assumed that the designers need to strike a balance between a steep cut-off and "reasonable" phase behavior? And I do remember various threads on this forum where owners of Rigol, Siglent, but also Keysight scopes proudly demonstrate that their scope can measure and trigger way beyond the nominal bandwidth cut-off.)

author: nctnico
author_rank: Super Contributor
timestamp: April 13, 2019, 12:51:49 pm
content: I already explained this in a different thread: if there is a lot of margin between the sampling rate and bandwidth (like a 100MHz scope with 1Gs/s) then the designer can choose a more relaxed roll-off but if the bandwidth is fs/2.5 (like on about every DSO today) the filter needs to be more agressive. Another problem is that the maximum samplerate on many oscilloscope depends on the number of active channels. This needs the bandwidth limit to be set accordingly. The cheaper models don't allow this.

author: DDunfield
author_rank: Regular Contributor
timestamp: April 13, 2019, 01:00:11 pm
content: Quote from: DDunfield on April 13, 2019, 11:54:29 amQuote from: nctnico on April 13, 2019, 12:12:53 pmFair enough, how about we change "almost any" to "many entry-level/inexpensive" .. I've used many scopes that "roll off" letting you see quite a ways above their stated bandwidth, and I've seen numerous reports of others who've experienced the same...In the case of the DS1054Z, an aggressive filter would have been at odds with their strategy of making one set of low-cost hardware cover several bandwidth segments in the market. While it would certainly be possible to have sharper filters (software controlled), I expect that would have cause at least a slight cost increase in what is obviously a very cost sensitive product.If they had made the 50 & 70 Mhz filters accessible from the UI it would have improved the situation considerably (a bit of documentation explaining when and why you might want to use them wouldn't hurt either).Quote from: ebastler on April 13, 2019, 12:14:31 pmYeah, mea-culpa there, I glossed over the fact that he was talking about actual/pure sine waves and went straight to bandwidth & sample-rate.I will happily concede that if your interest/goal is to confirm the specs, and only look at pure sine waves, then yes the 11054Z (or 1054Z hacked) is a decent 100Mhz scope.But... In the real world, if I buy a "100Mhz" scope do I expect to have to externally filter the input signal to avoid seeing potentially significant artifacts that are "not there" when looking at sharper rise-time signals... NO.For a 100Mhz scope:250Mhz sample rate (2.5x) means you can't have frequency components >125Mhz or 1.25 times the specified bandwidth ... "most entry-level/inexpensive" scopes will violate this.500Mhz sample rate (5x) you can have frequency components up to 250Mhz or 2.5x stated bandwidth .. now you're getting there.1000Mhz sample rate (10x) you can have frequency components up to 500Mhz or 5x stated bandwidth .. should be fairly clean (but I'm sure there are exceptions).Dave

author: David Hess
author_rank: Super Contributor
timestamp: April 13, 2019, 03:39:52 pm
content: Quote from: Housedad on April 13, 2019, 01:58:34 amIn the absence of aliasing, yes, but see below about unintended sources of aliasing.QuoteIt depends on who you ask and this brings up the question is *why* it requires 4 or 5 samples per cycle when Nyquist theory says it should only require 2. See below.QuoteThe commonly missed issue is that there are other sources of aliasing. The input signal chain is not perfectly linear producing harmonic and intermodulation distortion. The ADC especially is not perfectly linear and this is especially a problem with interleaved ADCs. The result is that even with a input signal which is completely below the Nyquist frequency, the ADC's non-linearity mixes the input signal with the sample clock producing sidebands and some of those will be above the Nyquist frequency. (1) This is especially a problem as the input signal approaches the Nyquist frequency.The result of this aliasing can be seen in the sin(x)/x reconstruction (2) as a wobble (3) in any waveform whether it is below the Nyquist frequency or not. (5) The solutions for this are better ADC linearity, a better sampling clock, and a higher sample rate. On oscilloscopes which support true ETS (equivalent time sampling), sample rates are so high compared to any input signal that this result of aliasing of the mixing products is completely absent and it is significantly reduced even at moderately higher sample rates.(1) The non-linearity and mixing products produced in the ADC cannot be removed with an anti-aliasing filter.(2) This leaves out other sources of error like Rigol's defective sin(x)/x reconstruction filter. I suspect Rigol simply truncated the results for higher throughput. As has been pointed out several times in the forums, the sin(x)/x reconstructed waveform should pass through all of the original sample points and Rigol's markedly does not.(3) I like to call it wobbulation. (4) It is especially apparent with older DSOs that use interleaved ADCs with poor linearity when sampling in real time instead of equivalent time. Modern integrated ADCs have better linearity so suffer from this to a lessor extent but it is still very apparent at an oversampling ratio of 2.5.(4) On old DSOs with low acquisition rates, the displayed waveform wobbles. On modern DSOs with fast acquisition rates and index graded displays, the fast edges of the waveform look smeared. The extra smearing is *not* noise; it is the result of aliasing.(5) A common calibration and adjustment test for ADC linearity is to use a pure sine wave *above* the Nyquist frequency to make the intermodulation worse and easier to see. With a perfect ADC, a waveform without the signs of aliasing should be displayed.

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 06:45:12 pm
content: So we still don't seem to have agreement whether, in practice and with a low-end DSO, you can get clean measurements of a sinusoidal signal at nearly 1/2 sampling rate? May I offer the measurements captured in the pictures below:100 MHz or 120 MHz sine from an "upgraded" SDG2042X,coax and 50 Ohm feedthrough terminator,Rigol DS1054Z, also upgraded to 100 MHz,4 channels enabled for 250 MSa/s sample rate, single shot acquisition.At 100 MHz, all looks dandy: No aliasing, the sine function looks as expected, and so does the interpolated line. (Which does go through all the dots, as it should.)However, at 120 MHz, things fall apart. (And they start to do so at 110 MHz, less noticeable.) The dot samples still look plausible -- they show the expected beat pattern, as the sampling interval is close to 1/2 of the signal period. Note that I have switched to a 10ns/div time scale to show a full beating period of 100 ns.But the Rigol gets the sin(x)/x interpolation wrong, and puts a strange frequency and amplitude-modulated interpolation through the dots.The interpolation still goes through all the data points, but does not reconstruct the signal correctly. Stupid, since the dots are entirely consistent with a steady 120 MHz sine signal.EDIT: In view of nctnico's comment below, it is now clear to me that I am expecting too much from the Rigol's interpolation. In this region, the interpolation becomes numerically unstable (in the presence of noisy real-world data). The signal as interpolated by Rigol is "just as compatible" with the data points as a steady 120 MHz sine. See the final picture for an interpolation created offline, overlaid with the original dots. (A bit hard to see, sorry.)My conclusion is that the actual data acquisition works, harmonic content of the signal is negligible. The Rigol's low-pass filter is perfectly adequate. The scope nicely works up to 100 MHz;and it only breaks down above that since Rigol was too stupid to get the sin(x)/x interpolation right...EDIT: Only beyond fs/2.5 the interpolation becomes numerically unstable, resulting in misleading interpolation in vector display mode.

author: nctnico
author_rank: Super Contributor
timestamp: April 13, 2019, 07:53:38 pm
content: Measuring a signal so close to fs/2.5 will go wrong on every oscilloscope. Usually you can push a little bit (a few %) over fs/2.5 before you get distortions with sin x/x reconstruction but not much.

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 07:59:34 pm
content: Quote from: nctnico on April 13, 2019, 07:53:38 pmThank you for the additional perspective; very helpful since I don't have first-hand experience with higher-end DSOs. I can see that numerical stability (and noise sensitivity) of the sin(x)/x interpolation becomes very critical so close to fs/2. So it makes sense that all scopes would struggle in that regime, in the presence of real-world noise etc.So that means that the Rigol is entirely up to snuff?

author: 2N3055
author_rank: Super Contributor
timestamp: April 13, 2019, 08:59:29 pm
content: This is actual school book example of aliasing. Rigol interpolation works just fine.Problem is that 250MS/sec is NOT enough for the bandwidth of front end.If you want to probe higher frequency content signal, you need to keep it up to 2 ch..

author: ebastler
author_rank: Super Contributor
timestamp: April 13, 2019, 09:24:51 pm
content: Quote from: 2N3055 on April 13, 2019, 08:59:29 pmSorry, but that is a step back in the discussion, if I understand your point correctly. We had already separated out the issue of front end bandwidth:The input signal in my example (and in the situation the OP asked about) is a clean sine wave; there is nothing for the front end to filter out. And the acquired samples are 100% consistent with a clean sine wave, so there is no hint of significant distortion in the input stage.The only limitation is in the interpolation. Works fine until f = fs/2.5, but not above that. As nctnico has pointed out, that is a fundamental limitation (given real-world, noisy samples). In the idealized world of "school book examples", sampling a 120 MHz signal at 250 MHz sample rate would actually work well, btw.