How complicated is it to create a simple pc based oscilloscope and logic analyzer(excluding the pc software)?
Does it just consist of getting a ADC and interface for sending the data to the pc? I'm looking at trying to make one in a similar way to what is done on this site:
I figured that the main the parts are the ADC, the probe, and the method of sending the information(which I think is the hardest part at high data rates?)? I've seen some ADC's that have sample rates of over 100Msps which should give me a 50Mhz bandwidth? Although these aren't cheep I've also seen some upwards of 1Gsps that would give me a larger bandwidth if I needed it.
Lets suppose I decide to buy a 1Gsps ADC(which isn't going to happen any time soon) and I have a probe that works properly with the ADC. How would I go about storing/streaming all those samples? This would require a memory chip be able to work down at 1ns or so? I was thinking I could use several gigs of pc memory in parallel to reduce the latency and increase total sample size to a few seconds... is this possible? What about encoding for a digital stream? do something like rle on the bit stream where 01 one would store 2 bits as one and its number of repetitions? (need to use 2 bits atleast so things like a clock signal are encoded efficiently)
I'm kinda curious to how high speed logic analyzers overcome some of these problems?
Another thing I wanted to know is how digital logic signals are "sampled" in logic analyzers? Surely one doesn't need anything more than a 1-bit ADC to convert the line signal? (therefor one doens't even need an ADC since it would act more like a buffer than an real ADC?)
I was thinking about buying a ADC that does about 40Msps and try it out just to see if it was going to work but and make a homemade probe to play with it. It doesn't seem like a terribly complex project but there seems to be a lot of technical issues involved.
Thanks, Jon