04-12-2013 04:46 AM
Hi folks,
Is the DMA FIFO the only type of file transfer available on FPGA while transmitting data from FPGA to HOST? Most of the examples I have come across DMA, so I have blindly used them.
On a slightly related topic, can a time delay be introduced into this transfer from FPGA to HOST, without actually touching the concerned loop?
Solved! Go to Solution.
04-12-2013 04:55 AM
DMA is for data transfer, not file transfer, but yes, it's currently the only efficient way I know of.
Regarding delaying the transfer, no you can't. As soon as you execute the DMA node, it will be sent. If you want to send it later, you need to execute the node later.
04-12-2013 05:01 AM
Yes data transfer that is what I meant, sorry!
Since the DMA transfer depends entirely on the DMA node execution, would be possible to set a timer to the DMA node? So that for example, the DMA node executes after a certain time after the FPGA becomes active?
Also, if the above were possibel, can we execute the DMA node based on the 'amount' of data instead of time?
04-12-2013 05:08 AM
No, neither of these are possible.
What is your intended use case? Why do you want to do this? You can buffer the data transactions yourself to achieve the same thing.....
04-12-2013 05:24 AM
U32. I m just a bit curious, but was wondering if I could delay the transfer from the FPGA to the Host until I get all the data from the source.
I don't know what you mean by "buffer the data transactions".
04-12-2013 05:24 AM
U32. I m just a bit curious, but was wondering if I could delay the transfer from the FPGA to the Host until I get all the data from the source.
I don't know what you mean by "buffer the data transactions".
04-12-2013 07:11 AM
You can only send a single value at a time from the PFGA, you cannot send an array of values. this is linked to the FPGA implementation and cannot be changed.
How many values do you want to send?
You COULD save the values in block memory and then, when it's full, send them one at a time in subsequent clock cycles.
Shane.
04-12-2013 07:17 AM
Ah ok. I think thats the best solution, storing the data in a block and then sending them when the block is full.
On another related note, If I wanted to send data from my HOST to another device, would I need to use DMA?
04-12-2013 07:19 AM
What's the other device?
04-12-2013 07:34 AM
I can't give you the exact name unofrtunately because of contractual obligations. Think of it as a circuit tester of some sorts.