| Products > Test Equipment |
| A High-Performance Open Source Oscilloscope: development log & future ideas |
| << < (31/71) > >> |
| snoopy:
--- Quote from: tom66 on November 21, 2020, 10:24:51 am ---The trade off with ETS is that your waveform rate has to fall because you need to hop the PLL frequency often. The ADF4351 I'm using takes about 80us to lock in "Fast Lock Mode" which is intended for fast channel changes, not including the time required to write the registers on the device over SPI. In the most optimistic case, that sets your acquisition rate at 12,500 wfm/s. Faster devices do exist but they would still end up being the ultimate limit in the system. ETS is making up for poor sinx/x interpolation, you can do everything ETS does, and arguably more accurately, with a good interpolator. (Assuming your input is correctly bandlimited for the normal ADC sampling rate.) Working on the Python sampling model now. --- End quote --- Yes ETS requires many bites of the cherry to reconstruct the waveform so therefore waveform update rate suffers and the incoming waveform needs to be stable during this time. However am I right in saying that with ETS you don't get any phase shift from an interpolation filter which is never perfect ? |
| nctnico:
--- Quote from: tom66 on November 21, 2020, 10:24:51 am ---ETS is making up for poor sinx/x interpolation, you can do everything ETS does, and arguably more accurately, with a good interpolator. (Assuming your input is correctly bandlimited for the normal ADC sampling rate.) --- End quote --- Actually the whole point of ETS is to go (far) beyond the Nyquist limit of the ADC. One could even envision adding a sampling head which together with the 14bit version of the ADC could result in a very unique device. But implementing ETS and sampling in itself isn't that interesting. The real challenge is to be able to trigger accurately on a signal which has a very high frequency (several GHz). Several of the older high frequency DSOs (Tektronix TDS820 and Agilent 54845a for example) can't trigger on high frequency signals. |
| tom66:
That's true, at that point you'd essentially be implementing something similar to a sampling scope, to achieve ~500MHz repetitive bandwidth. I think it's a different project, but there's no practical reason an ETS-capable variant (perhaps a software change, with hardware lacking B/W filters) could be developed. Not the focus for the first version but one of the goals for this project is upgradeability and customisability. |
| tom66:
I modelled the triggering prototype using a Python script and Numpy/matplotlib. See attached for the script, for anyone interested. Overall quite impressed - triggering jitter was relatively low but I need to tweak the search range and coefficients somewhat to get performance to be similar across all trigger levels. I think I should move towards a sinc interpolator for the trigger predictor, but this simple linear predictor (using the error at the trigger point and the local slope based on 4 samples) gets to ~360ps jitter for a 1ns sample period with 1.5LSB ADC noise simulated. The biggest problem seems to be that my predictor is much less accurate at certain trigger levels - it seems to be some kind of quantisation effect. I will have to continue tweaking to see if I can improve this. This implementation could be performed with less than 16 bytes memory per trigger point (5 samples + 1 timestamp) and so should be practical for long post-trigger delays where samples are normally outside of acquisition memory. The slope approximation should be possible to do with an 8-bit LUT. |
| rf-loop:
Think if you are scope manufacturer and you need write datasheet. Imho, this jitter what you show do not look good at all. Without further knowledge and analyze but 300ps or 600ps numbers give just first feel: horrible. Here some pick-ups from some scopes data sheets, note also sampling interval and adjust these for 1ns interval sampling. These are just random examples. Some are good, some are "acceptable". All these are 8bit ADC scopes. Least these numbers, without further thinking, looks bit different and better or more nice. Some 1Gsa/s 0.5k$ scope Trigger Jitter: < 100 ps Some 1k$ 2Ch and 1.5k$ 4Ch, 2Gsa/s scope Trigger Jitter: CH1 - CH4: <10 ps rms, 6 divisions pk-pk, 2 ns edge (EXT trig: <200 ps rms ) My note: This EXT trig is simplest old traditional analog pathway / comparator trigger. Some 5Gsa/s scope Trigger Jitter: <9ps RMS (typical) for ≥300MHz sine and ≥6 divisions peak to peak amplitude for vertical gain settings from 2.5mV/div to 10V/div. Trigger Jitter: <5ps RMS (typical) for ≥500MHz sine and ≥6 divisions peak to peak amplitude for vertical gain settings from 2.5mV/div to 10V/div. Some expensive 5 Gsa/s scope Trigger jitter: full-scale sine wave of frequency set to –3 dB bandwidth < 1 ps (RMS) (meas.) Some expensive 10Gsa/s scope Trigger and Interpolator Jitter: ≤ 3.5 ps RMS (typical) Low trigger jitter is one extremely important in scopes. How can measure example signal time jitter if scope own trigger jitter is horrible. Good scopes may also have measurement functions what can measure and display jitter distribution over more or less long time. It is waste of time if scope own jitter is bad. As I told my opinion in my previous message, whole trigger engine is one of most important part of good scope. All can draw nice looking images to screen but all can not do High Performance trigger engine. Here topic name include "High performance". Why. Now you tell "Overall quite impressed - triggering jitter was relatively low..." and show this some kind of simulation about trigger jitter with horrible looking numbers. When you go forward with this trigger engine and things relative it... you can do some training with this: imagine you are manufacturer and you need reach Trigger engine performance you can write Trigger jitter least <20ps rms to data sheet. What ever nice things and nice looking waveform draw scope have and even high performance this and that but if it do not have High Performance trigger engine it is just more or less nice looking thing for decorate lab. And same for analog front end quality and sampling quality. All know... garbage in - garbage out... Still it looks nice project... but there read "High performance"... so try keep it. Least related to trigger, what is perhaps most difficult parts of oscilloscope, when try "High performance" < "High End" < "State of art" class where need be more or much more better than normal. |
| Navigation |
| Message Index |
| Next page |
| Previous page |