cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

How can I transfer more than 64 bit data from host to target?

Solved!
Go to solution

How can I transfer more than 64 bit data from host to target?

Hi all, I'm currently using PCIe-7851r fpga card to drive my device. There were 64 lines to be controlled. So what I did is generating the commands on the host pc and then transfer it to the target via DMA FIFO. The data type of the FIFO is U64, i.e. every one digit controls 64 DIO lines. But the question becomes complex when I transfer 66 line command. I tried to create 2 FIFOs, but I can hardly make the 2 FIFOs synchronized.

 

I think I might be able to create 2 U64 arrays, one contains the original 64 line command,s and the other contains the 2 line info (a waste). And then I interleave them in the host and decimate them in the target. There should be enough cycles to to this. But I dont think this is a good solution. Is there any better method? Thank you.

 

LabVIEW 2009, Windows XP, PCIe-7851R

 

Regards,

Bo

------------------------
My blog Let's LabVIEW.
0 Kudos
Message 1 of 4
(822 Views)

Re: How can I transfer more than 64 bit data from host to target?

Help please~

------------------------
My blog Let's LabVIEW.
0 Kudos
Message 2 of 4
(798 Views)
Highlighted
Solution
Accepted by topic author foolooo
08-27-2015 04:09 PM

Re: How can I transfer more than 64 bit data from host to target?

Using the techniques highlighted in this tutorial:

 

http://zone.ni.com/devzone/cda/tut/p/id/4534

 

You could use code like this:

 

21596i23DD7FA19C488151

Mark B

===If this fixes your problem, mark as solution!===
0 Kudos
Message 3 of 4
(774 Views)

Re: How can I transfer more than 64 bit data from host to target?

Thank you, macaba! I just wonder will it take too long if I use the case structure to decimate the U8 data. I'll give it a shot. Cheers.

 

Regards,
Bo

------------------------
My blog Let's LabVIEW.
0 Kudos
Message 4 of 4
(762 Views)