Academic Hardware Products (myDAQ, myRIO)

cancel
Showing results for 
Search instead for 
Did you mean: 

myRIO memory, data transfer and clock rate

Hi

 

I am trying to do some computations on a previously obtained file sampled at 100Msps using myRIO module. I have some doubts regarding the same. There are mainly two doubts, one regarding data transfer and other regarding clock rate. 

 

1. Currently, I access my file (size 50 MB) from my development computer hard drive in FPGA through DMA FIFO, taking one block consisting of around 5500 points at a time. I have been running the VI in emulation mode for the time being. I was able to transfer through DMA from host, but it is very slow (i can see each point being transferred!!). The timer connected in while loop in FPGA says 2 ticks for each loop, but the data transfer is taking long. There could be two reasons for this, one being that the serial cable used is the problem, the DMA happens fast but the update as seen to the user is slower, the second being that the timer is not recording the time for data trasfer. Which one could be the reason?

 

If I put the file in the myRIO module, I will have to compile it each and every time, but does it behave the same way as I did before with dev PC(will the DMA transfer be faster)? And here too, do I need to put the file in the USB stick? My MAX says that there is 293 MB of primary disk free space in the module. I am not able to see this space at all. If I put my file in this memory, will the data transfer be faster? That is, can I use any static memory in the board (>50MB) to put my file? or can I use any data transfer method other than FIFO? This forum (http://forums.ni.com/t5/Academic-Hardware-Products-ELVIS/myRIO-Compile-Error/td-p/2709721/highlight/... discusses this issue, but I would like to know the speed of the transfer too. 

 

 

2. The data in the file is sampled at 100Msps. The filter blocks inside FPGA ask to specify the FPGA clock rate and sampling rate, i created a 200MHz derived clock and mentioned the same, gave sampling rate as 100Msps, but the filter is giving zero results. Do these blocks work with derived clock rates? or is it the property of SCTL alone?

 

Thanks a lot

 

Arya

0 Kudos
Message 1 of 5
(9,517 Views)

Hey arya1,

 

First, just to clarify terminology, when referring to the myRIO hardware we typically call it the 'target' not the 'module' because we use the term 'module' to refer to a software package (ie the myRIO module is the myRIO software add-on for LabVIEW).

 

You can certainly move your file to the myRIO.  As you mentioned you could store it on the myRIO internal flash (if there is enough space) or on a USB drive.  If you want to use the internal flash you can transfer the file to the myRIO using WebDAV.

 

Depending on how your system is setup I think storing the file on the myRIO or a USB drive on the myRIO will almost certainly be faster than transferring chunks from the PC to the myRIO RT Side, then to the FPGA via DMA FIFO.  By moving the file to USB or myRIO flash you cut out the PC <-> myRIO communication.  

 

I'd give that a shot and then let us know how fast you are able to DMA FIFO the data from the RT side to the FPGA.

 

Can you give us some info on your end goal.  Are you just trying to process data an log the result or are you trying to 'play back' the data and generate some output at the same speed the data was sampled? 

 

Thanks!

 

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 2 of 5
(9,510 Views)

Hi Sam

 

Thanks for the quick reply. I will keep the terminology in mind. I am trying analyse the data file (each of the 5500 samples corresponds to a single frame of data)  by doing some intensive signal processing algorithms on each frame, then average the results and disply it.

 

I tried putting the file on the RT target, both using a USB stick and using the RT target internal memory. I thought I will write back the delay time for each loop after the transfer has occured completely, to a text tile in the system. I ran the code my making an exe for both the USB stick and RT target internal memory methods; and compiling using the FPGA emulater in the dev PC VI. (A screenshot of the last method is attached, the same is used for both the other methods with minor modifications. )To my surprise, all three of them gave 13 ms as the delay. I certainly expect the transfer from RT internal memory faster than USB and the one from the dev PC to be the slowest. I will work more on the same and try to figure out why this is happening so.

 

When I transferred the data file (50MB) into the RT flash memory, the MAX shows 50MB decrease in the free physical memory but only 20MB decrease in the primary disk free space. Why is this so? Could you please tell me the differences between them? I did not get any useful online resources when I searched.

 

Meanwhile, the other doubt still persists, is it possible to run filter blocks with the derived clock rates? Can we specify clock rates like 200MHz and sampling rates like 100Msps in the filter configuration window? I tried, but obtained zero results.

 

Thanks and regards

Arya

Download All
0 Kudos
Message 3 of 5
(9,497 Views)

In your code I wouldn't expect the file location to make any difference since you are reading the file first (this loads the file into RAM) then send it to the FPGA via DMA FIFO.  The actual transfer is always RAM -> DMA FIFO in this case. 

 

If you read from the file each loop before sending the data I would expect different results.

 

As for the file size stuff I wouldn't worry about it as long as you don't get any errors during the file transfer to the target.  I seem to recall a slight difference in the way those numbers are gathered.

 

I don't really know much about the filter stuff.  I would suggest reading the help for the blocks, then starting slow.  Just put the block in a while loop and let it process your data at whatever speed it can.  Make sure you're getting your expected results, then start optimizing for speed.

 

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

Message 4 of 5
(9,482 Views)

Hi Sam

 

Thanks a lot for the reply and suggestions. I will do as you suggested.

 

Regards

Arya

 

 

0 Kudos
Message 5 of 5
(9,479 Views)