I'm trying to perform some waveform averaging of 900MHz signals on an external PC using an MSOX3104. I'm using a single channel so the scope is running at 5GS/s, and I'm downloading all 4M points in the raw record.
I've noticed that the downloaded waveform has a jitter of +/-100ps because it is referenced to the sample clock. This is not a surprise, but I can't figure out how to determine the trigger offset from the sample clock so that repeated acquisitions are aligned as best as possible.
The offset does not appear to be accounted for in the waveform preamble, which is where I would expect it.
I think the scope knows this offset because the display is clearly not jumping around by +/-100ps, but I can't find how to get the value via SCPI.
Any clues welcome; maybe I'm just looking in the wrong place for it.
Thanks...
I've noticed that the downloaded waveform has a jitter of +/-100ps because it is referenced to the sample clock. This is not a surprise, but I can't figure out how to determine the trigger offset from the sample clock so that repeated acquisitions are aligned as best as possible.
The offset does not appear to be accounted for in the waveform preamble, which is where I would expect it.
I think the scope knows this offset because the display is clearly not jumping around by +/-100ps, but I can't find how to get the value via SCPI.
Any clues welcome; maybe I'm just looking in the wrong place for it.
Thanks...
- Trigger Jitter - every scope has some trigger jitter, meaning that the crossing won't go through the center of the screen, but close to it. Higher performance (and higher cost) scopes specify the trigger jitter, and work very hard to reduce it.
- Sample offset - The sampler is asynchronous to the trigger, so the sample closest to the trigger will never be right at 0ps, but up to 1 sample period away. That time offset should be available as the 6th field in the preamble, as the Xorigin. You can also get that from the WAV:XOR? query. Even that value will have some uncertainty, since the trigger interpolator isn't perfect.
Waveform averaging with scope data is a fine art, and not an easy thing to do. The above issues mean that you can't just say, for instance, "I'm going to take all of the first samples and average them, then the second samples..." You might need to interpolate and resample all of the waveforms to remove the time offsets before you average them.
Good Luck!
Al