Academic Hardware Products (myDAQ, myRIO)

cancel
Showing results for 
Search instead for 
Did you mean: 

myRIO Compile Error

Hi

I've used the FIFO feature to transfer data between the RT VI and the FGPA code at that works great.

Now I need to use the Memory Item instead, and then LV can't deploy the RT VI when I try to use a simple Memory Item Write call.

I get this deploy error:

nirvimemoryEmulationManagerCache.vinirvimemoryEmulationManagerCache.vi loaded with errors on the target and was closed.
LabVIEW:  (Hex 0x627) The function name for the LabVIEW:FpgaSdkMemoryEmulationWriteAddress:C  node cannot be found in the library. To correct this error, right-click the Call Library Function Node and select Configure from the shortcut menu. Then choose the correct function name.
LabVIEW:  (Hex 0x627) The function name for the LabVIEW:FpgaSdkMemoryEmulationReadAddress:C  node cannot be found in the library. To correct this error, right-click the Call Library Function Node and select Configure from the shortcut menu. Then choose the correct function name.
Deployment completed with errors

 

It had to recompile some VIs as well:

...\LabVIEW 2013\vi.lib\rvi\DataTransferAndStorage\Container\Common\niFpgaContainerExecOnDevCompGetState.vi
...\LabVIEW 2013\vi.lib\rvi\DataTransferAndStorage\Container\Common\niFpgaContainerGetEmuInfo.vi

 

Has anybody used the Memory Read Write function from RT to FPGA on myRIO yet?

Cheers,

Mike

0 Kudos
Message 1 of 15
(10,339 Views)

It looks like this VI is broken, and it's of course locked 😞

...\LabVIEW 2013\vi.lib\rvi\DataTransferAndStorage\Memory\Common\niFpgaMemoryDropXNodeFromState.vi

//Mike

 

0 Kudos
Message 2 of 15
(10,333 Views)

Hey Mike,

 

I'm pretty sure that node is only supported on FPGA, not in RT and is not available on the palette on an RT VI.  How did you place the node in the RT VI?  

 

Thanks!

 

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 3 of 15
(10,327 Views)

Hi Sam

I created the Memory Item (just like the FIFO), under the FPGA target.

Then just dragged that node into the block diagram.

I want to Write into the memory buffer from the RT target and read it from the FPGA Code.

It works with FIFO, but in my design I need the FPGA code to not cycle through this data several times.

So If I can't use the Memory function (due to a bug), I need to use 2 FIFOs, and every time I read a value from the FIFO, I need to but in into the 2nd FIFO and use that the next cycle.

Are there any myRIO examples that uses the Memory functions?

I went through the Self Pace training as well, but only FIFOs are described in details there.

 

BTW, this product is awesome Smiley Happy

Cheers,

Mike

 

0 Kudos
Message 4 of 15
(10,319 Views)

You should use an "Invoke Method" VI from the FPGA Interface pallete to write to DMA FIFOs on the RT side.

 

Here's an example I found which demonstrates this: https://decibel.ni.com/content/docs/DOC-9893

Craig H. | CLA CTA CLED | Applications Engineer | NI Employee 2012-2023
0 Kudos
Message 5 of 15
(10,317 Views)

Thanks for the supprt.

For the FIFO, It works perfect.

I just drag the FIFO Node to the block diagram, and yes it becomes a invoke node on the RT VI.

So I want to the use Memory Buffer, so how do I write to that one from the RT VI?

I did the same as for the FIFO Node, and it becomes a Invoke node as well, no problem there.

But when I try to deploy it, it fails with my error.

I've not found any Memory Buffer Examples on the forum.

If you know any developers that managed to get it working on myRIO, I would like to get hold of them.

Cheers,

Mike

0 Kudos
Message 6 of 15
(10,293 Views)

I think I know the problem.

You guys are write I should be able to add the Memory Block Item in the RT VI, but I can that is a bug I guess.

But the way I have to do it, is to use a FIFO from RT to FPGA, and the FGPA will add this data into the memory block.

 

0 Kudos
Message 7 of 15
(10,275 Views)

I didn't get lot of that text corect Smiley Surprised

 

You guys are right.

 

I should NOT be able to add the Memory Block Item in the RT VI, but I can that is a bug I guess.

 

So I guess I have to use a FIFO from RT to FPGA, and the FGPA will add this data into a local memory block.

 

0 Kudos
Message 8 of 15
(10,269 Views)

Hello, it's interesting also a problem, when you place an FPGA project Myrio project could not compile and download to the target, someone knows why this happens

0 Kudos
Message 9 of 15
(10,118 Views)

Hey @tom,

 

You'll have to give us a lot more details on what you're trying to do and what specifically is not working.  You may want to start a new thread since it is likely not the same problem that MikaelHolmstrom had above.

 

Thanks!

 

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 10 of 15
(10,114 Views)