LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Using FPGA program to collect data for long time without 'gap'

Our data collection system has a NI-PCIe 7852R card. We want to collect data at up to 10 KHz for up to 10 to 30 minutes. The data amount is too large so we have to separated them into multiple Array and save in multiple files. We do not want to loose data during the saving time. Anyone has idea on how to do it? We would appreciate your help.

 

My current method:

1 using FIFO memory, in FPGA program loop , write data from AIs to FIFO memory, after certain amount of data is written, say 2000 of it, asks a IRQ.

2. In Host program loop, wait for IRQ, once the IRQ comes, read in FIFO data, do some processing, put the data into prelocated array, once the prelocated array is full, save it to the disk.

 

So far the method is not working.

1st, there seems never a IRQ, the wait for IRQ (invoke method) never took any time.

2nd, the FIFO reading in the host program loop seems takes no less time than the FPGA program write same amount of data into FIFO...

 

SO I have extra questions:

1. Does the 7852R cards and its new FPGA still support IRQ?

2. What is the reading speed of FIFO read in Host program? I thought it should be much faster than the FPGA program writing it....

 

Any help will be propitiated.

 

Thanks a lot

0 Kudos
Message 1 of 4
(2,763 Views)

Hi number,

                Can you please attach your VI?

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Thanks as kudos only:)
0 Kudos
Message 2 of 4
(2,762 Views)

Thanks, when I back to the office, I will attach the program

 

0 Kudos
Message 3 of 4
(2,759 Views)

Here is the FPGA program block

Part of Host program block inside the loop

 

Part of Running results.

   1. Some data is missing in every FIFO reading in Host program

   2. The FIFO reading in Host program takes more time than the AIs=> FIFO in the FIFO program

   3. Of cause each host loop takes more time than it takes FPGA program to get same amount of data...

 

0 Kudos
Message 4 of 4
(2,742 Views)