3
\$\begingroup\$

I have an FPGA design and the FPGA design has a signal called start which is always high. Here is how it works. I use the computer to send data over RS232 to FPGA, the start signal drops for a cycle and FPGA processes the data, and then FPGA send the data back using RS232. The above procedure repeats for 100 times. There is around 0.02 second gap for each rs232 send and receive.

The negative edge of start signal is used as trigger for the o-scope. For each trigger, the o-scope samples 10K points. The sampling frequency is set as 1GS/S. The FPGA clock is 25MHz.

Every time the start signal drops, I want to capture the waveforms and save each of them to files. (The files are saved on my computer harddrive over ethernet). The acquisition count is infinite. So for 100 negative edges, I should get 100 waveforms (100 files). But the o-scope only generate 3 files and each file only contain one waveform pattern I expect.

Is this because of the acquisition frequency? Or is there any options that can increase the acquisition frequency of the o-scope?

The oscilloscope model is Yokogawa DL7200. Mannual can be downloaded from energy.ece.illinois.edu/equipment/dl7100.pdf

\$\endgroup\$
6
  • \$\begingroup\$ You want to sample 60 gigabyte per minute? \$\endgroup\$
    – stevenvh
    Commented Jun 26, 2012 at 14:48
  • \$\begingroup\$ @stevenvh, do you mean 1GB/s? Could you elaborate how you come up with the number? \$\endgroup\$
    – drdot
    Commented Jun 26, 2012 at 15:01
  • \$\begingroup\$ 1GB/s for 1 second is doable. You say acquisition time is infinite, so 1GB/s is 60 GB in a minute. That's the same per second, but the data just keeps pouring out, what mass storage device can keep up with that? None of these. \$\endgroup\$
    – stevenvh
    Commented Jun 26, 2012 at 15:07
  • \$\begingroup\$ @stevenvh, I forgot to mention that there is time gap between each trigger. I use the computer to send data to RS232 and read the data back using RS232. So it is around 0.02 second gap. For each trigger, the o-scope samples 10K points. \$\endgroup\$
    – drdot
    Commented Jun 26, 2012 at 15:20
  • \$\begingroup\$ Wow, huge difference! That was actually what I wanted to have cleared up. Maybe add this to the question? \$\endgroup\$
    – stevenvh
    Commented Jun 26, 2012 at 15:22

1 Answer 1

3
\$\begingroup\$

Your scope only has a limited amount of buffer memory, so you cannot save as many waveforms as you want.
Buffer memory on DSOs ranges from a few KB to e.g. 10MB. Usually you can choose between a few buffer sizes in the scope options - for example my Owon DS8202 can be switched from 1KB to 10MB, so at 2Gsps this ranges from 500ns capture to 5ms capture. At such high speeds 10MB of memory doesn't go far.
Your scope is running a 1Gsps, and you say you are capturing 3 waveforms of 2000ns each. This totals 6000ns of capture. Since you are capturing one sample per ns, then you are using 6KB of buffer memory. It's possible you can set your buffer to a bigger value - what scope are you using?

EDIT - It seems things are a little different than they first appeared, and there is a 20ms gap between each waveform. However, if you are saving to the oscilloscopes memory (which memory? Internal or USB stick or??) then it still depends on how much is available and how fast it can be accessed. If you tell us the scope model number (or link to the datasheet), exactly what mode you have it set to regarding saving the waveforms we should be able to find an answer.

EDIT 2 - Having a look at the datasheet it looks like you can certainly save the waveforms to internal memory. According to the table with the 8MW/CH model and 10K length, you should be able to save 1 to 128 waveforms. Using the Single(N) mode and adjusting the N count according to the number of waveforms you wish to save.

Scope table

I'm not so sure about saving waveforms across the network in "real time" (it's quite a big manual to get through quickly) It seems you can set the destination as your PC drive, but the save times given are pretty long (~5 seconds for 1MB of data) so I'm thnking you have to save it internally, then send it over when you have your 100 waveforms.
If you can give more details about the exact mode you are using, and what you are sending (e.g. waveforms or screen capture) it would probably help.

EDIT 3 - On page 11-12 in the manual it says:

Note • You cannot save or load while the data acquisition is in progress.

Given that the ethernet speed is given as 10Mbps in the specs, it would be too slow to send the waveforms over to the PC as it acquires them.
You need to use the "Sequential Store" function detailed on page 7-5. Using this you can save up to 256 10Kpt waveforms. When the acquisition stops, then use the ethernet transfer feature to save them over to the PC.

\$\endgroup\$
7
  • \$\begingroup\$ I have added the model of the scope. It is capable to save waveform to a network disk. I have setup the network drive as my computer hard drive. The computer and the oscilloscope is connected via ethernet. \$\endgroup\$
    – drdot
    Commented Jun 26, 2012 at 15:54
  • \$\begingroup\$ So are you displaying the saved waveforms on the computer? \$\endgroup\$
    – Oli Glaser
    Commented Jun 26, 2012 at 16:10
  • \$\begingroup\$ I display on the screen of o-scope, which is not very important. But I want to process the waveform later on the computer. Right now I am using normal mode and I am sending waveforms which is from triggering to 10K samples after triggering. \$\endgroup\$
    – drdot
    Commented Jun 26, 2012 at 18:49
  • \$\begingroup\$ So have you actually managed to save the 100 waveforms on the scope? When does it stop at 3 waveforms? During the scope acquisition or sending to the PC? What do you have your acquisition count set to? \$\endgroup\$
    – Oli Glaser
    Commented Jun 26, 2012 at 19:14
  • \$\begingroup\$ The manual says the screen image can be outputed to storage medium (a floppy disk, an external SCSI device, PC Card (optional) or Network drive (Ethernet + PC Card interface optional)). I dont know what floppy or SCSI or PC Card are. If I raise start 256 times, I can capture 4 waveforms. If I raise 10K times, I can get around 127 waveforms. The waveform is captured and send over the ethernet one by one. \$\endgroup\$
    – drdot
    Commented Jun 26, 2012 at 20:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.