Compressive sensing DSOs - Page 1
Forum section: electronics / testgear

author: rhb
author_rank: Super Contributor
timestamp: May 12, 2017, 09:25:06 pm
content: In 2004 David Donoho of Stanford introduced the concept of compressive sensing. The logic is very simple. If a JPEG can store an image in 10% of the space, you only need to acquire 10% of the traditional Shannon-Nyquist samples to represent the image.There is a 2014 PhD dissertation on a compressive sampling oscilloscope. The dissertation is:https://smartech.gatech.edu/bitstream/handle/1853/.../TZOU-DISSERTATION-2014.pdfTo do this you need to be able to trigger sampling at random times. The granularity of the clock determines the bandwidth of sampling. Typically about 5x increase in BW per sample is achievable, though it takes significant compute, so not for real time yet. But the really cool part is that the random sampling times eliminate aliasing without the expense of an anti-aliasing filter. So a scope that implements compressive sampling is limited only by the BW of the analog front end.I'm interested in ANY low cost scope that will allow me to treat the ADC channels as one would those on an MCU. I've got a DS1102E, so Rigol is a natural path to start down. But if someone works out how to trigger a single sample after a user specified delay on ANY low cost DSO, I'd *really* like to know.FWIW Will program for a new DSO ;-)

author: Rerouter
author_rank: Super Contributor
timestamp: May 12, 2017, 09:55:58 pm
content: As a proof of concept, why not begin with a micro you are familiar with, e.g. try and reconstruct a 1khz signal on an arduino taking only 500 random samples.If it works at low speeds you have more promise of it working at higher speeds,If you want to do the scope approach, hook up your micro to the scope trigger pin, trigger at random times and reconstruct using the waveforms for each trace.

author: jjoonathan
author_rank: Frequent Contributor
timestamp: May 12, 2017, 10:27:19 pm
content: How does this differ from equivalent time sampling? (Link is broken)For example of ETS, look for HP54120a (ETS scope) and HP54121a (sampler). 20GHz bandwidth for <$2k easy on ebay, probably less than half that if you're a risk tolerant haggler.

author: ebastler
author_rank: Super Contributor
timestamp: May 13, 2017, 06:08:31 am
content: Quote from: rhb on May 12, 2017, 09:25:06 pmI don't see how the JPEG analogy relates to a scope with reduced sampling rate. To generate a compressed JPEG image, you first need to sample the image in full resolution; then you analyze it to identify the most relevant information components and discard redundant or less significant information. You don't simply sample a random subset of the image pixels, and call that your "compressed image" -- which seems how you describe the compressive sampling scope?As mentioned by jjoonathan, could you please check the link? Doesn't work for me either.

author: scatha
author_rank: Regular Contributor
timestamp: May 13, 2017, 06:31:15 am
content: From memory compressive sensing is only useful for representing sparse signals (in a spectral sense) - it's not magic, after all.

author: MK14
author_rank: Super Contributor
timestamp: May 13, 2017, 06:40:20 am
content: This link seems to work for me, but is probably different to the OP's link.https://smartech.gatech.edu/bitstream/handle/1853/51876/TZOU-DISSERTATION-2014.pdf

author: nctnico
author_rank: Super Contributor
timestamp: May 13, 2017, 08:18:42 am
content: It's the same link but the OP copied a broken link from Google. Back in the old days Google showed a direct link but it no longer does that which makes it really hard to get links to PDFsOn topic: I browsed through the document (chapter 3 is the most interesting) and I think the same restrictions apply to random interval sampling: the signal must be periodic. However one of the difficulties with random time interval sampling is that you need to know exactly when the sample was taken in respect to the trigger point. Furthermore creating a trigger system which can deal with signals of several GHz is hard. If the proposed method in the document works it will be usefull to create a simple diode sampler which can do several GHz but doesn't cost much in terms of hardware.

author: ralphrmartin
author_rank: Frequent Contributor
timestamp: May 13, 2017, 05:37:48 pm
content: Compressive sensing sounds like a dud idea for an oscilloscope.While sometimes you want to see a repetitive signal, often, the whole point is to look for the abnormal signal. In oversimplified terms, compressive sensing works by "knowing what typical data looks like" and characterising it, and then using a small number of samples to figure out what kind of typical data we have. If those samples don't catch the glitch, too bad.

author: David Hess
author_rank: Super Contributor
timestamp: May 13, 2017, 05:47:51 pm
content: There are real world production examples of some of the things discussed in that paper. LeCroy uses band interleaving. Tektronix uses asynchronous time sampling. HP uses or used non-uniform random sampling. Lots of communication receivers use synchronous subsampling; this is very common and the technique goes back to at least analog (!) high performance television receivers.HP made a sampling oscilloscope which operates as communication and vector network analyzer and does a low performance but higher bandwidth implementation of what he is proposing with a single channel operating at a variable sampling rate up to 20MS/s.http://www.keysight.com/upload/cmc_upload/All/Product_Note_70820_1.pdfnctnico, triggering is not that difficult to do. The same restrictions for generating a low jitter sampling strobe apply to generating a low jitter trigger. Wide bandwidth baseband receivers already do this without problems using clock recovery.I agree with ralphrmartin; this is a solved problem for oscilloscopes which must deal with unknown signals including noise. If the signal is well characterized like for a communications receiver or analyser, then subsampling is appropriate.

author: Mechatrommer
author_rank: Super Contributor
timestamp: May 13, 2017, 11:38:40 pm
content: Quote from: jjoonathan on May 12, 2017, 10:27:19 pmyou can make up something if its repetetive signal. if its random signal you are collecting garbage.

author: jjoonathan
author_rank: Frequent Contributor
timestamp: May 14, 2017, 01:10:29 am
content: Quote from: Mechatrommer on May 13, 2017, 11:38:40 pmAll compressed sensing methodologies have similar caveats. Compressed Sensing replaces collected data with assumptions. Often this is useful, but it will always backfire if the assumptions are incorrect.Also, ETS can get eye diagrams of non-repetitive signals, so I'm not sure that's the best way to describe the set of signals on which it struggles. See pg 10 ofhttp://www.keysight.com/upload/cmc_upload/All/Which_scope_to_use06.pdf

author: rhb
author_rank: Super Contributor
timestamp: February 07, 2018, 01:44:04 am
content: First of all, I'd like to apologize for starting a conversation and then wandering off.I recently acquired an Instek GDS-2072E on an Amazon clear out. I just ordered a Zybo Z7-20 from Digilent. The Instek is a 7010 rather than the 7020 in the Zybo. My ultimate goal is an open source instrument. The Zynq makes this especially easy, but I suspect that the competition is not far behind. Also VHDL/Verilog should insulate people from most of the cross platform issues.In any case, I've been considering what to do. I've also got an MSO-22004EA, which is the opposite end of the 2000E line. This is my first foray into the land of the virtual plugboard, the FPGA. Plug boards and van Neumann machines were very briefly built in the late 40's a and early 50's. After that the plugboards went away for a long time. But now they are back.It seems to me that the first step is to implement all the possible data acquisition modes in the FPGA at the highest possible speeds. This naturally led to compressive sensing. The original motivation was a good logic analyzer. But if you're sampling , you should consider everything. For compressive sensing,requires a random delay between samples. The space per sample doubles, but the required sample rate drops by 5-6x, So it should give an 2-3 advantage in stored trace length.Ultimately, BW depends upon average sample rate and the analog response of the HW. But there is substantial potential for improvement given tools like Leo Bodnar's pulser.The point of this post is that it is a lot simpler to test than I should have ever thought.