LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

fpga: dynamic mode vs bind reference to type def

For open the FPGA VI reference node, dynamic mode and bind FPGA host reference to type def are mutually exclusive.  I was told that I should use dynamic mode but still create a type def for the reference.  i notice the type def no longer propagate any changes, so I went back to the binding option.  When am I supposed to use what option?  

------------------------------------------------------------------

Kudos and Accepted as Solution are welcome!
0 Kudos
Message 1 of 8
(3,485 Views)

Hi jyang72211,

 

I found in the help file for the FPGA Interface that you can use the Dynamic FPGA Interface when working with different FPGA VIs of bitfiles, when the communication hardware interface to the host is compabile. The communication hardware interface includes the following:

  • Names and types of controls and indicators
  • Names, data types and types of DMA or peer to peer FIFO’s
  • Names, directions, and types of target-specific methods.

 

 

Regards,

steve.bm
AE | NI
0 Kudos
Message 2 of 8
(3,462 Views)

That's not my question at all.

------------------------------------------------------------------

Kudos and Accepted as Solution are welcome!
0 Kudos
Message 3 of 8
(3,450 Views)

The Dynamic Mode of the Host Interface reference allows you to reuse the same interface across multiple FPGA applications. It has features similar to LabVIEW classes that allows you to pass more specific references to VIs that only need a subset of the functionality among other things that make writing host VIs a bit simpler. New functionality for the Host Interface will probably only show up with the new dynamic mode.

 

Many people still create a typedef for certain configurations of a dynamic mode wire. For instance, let's assume that you have a VI that only requires access to a DMA FIFO called "Foo". You can create a reference that requires exactly that set of methods and typedef that reference so you can reuse it for all sub-VIs in that hieararchy. If you ever decide you need another method, you can just add it to that typedef and your hierarchy is updated.

 

Binding to a typedef It is a very similar concept left over from the very tightly coupled static mode references, but with dynamic mode you generally end up with a plurality of more specialized typedefs so binding to a single typedef was no longer sufficient. Hopefully, with appropriate use of specialized dynamic mode typedefs and the smart type propagation of references across VIs the dynamic mode will be a more pleasant experience.

Message 4 of 8
(3,446 Views)

When I make a change to my type-def FPGA reference, why is the change not propagated to all VIs when dynamic mode is used?

------------------------------------------------------------------

Kudos and Accepted as Solution are welcome!
0 Kudos
Message 5 of 8
(3,435 Views)

Just to make sure I understand, you are saying that you have a typedef that contains a dynamic mode reference that a set of VIs use. When you change the configuration of that reference inside the typedef the typedef does not properly update throughout your linked VIs?

0 Kudos
Message 6 of 8
(3,429 Views)

That's correct.

------------------------------------------------------------------

Kudos and Accepted as Solution are welcome!
0 Kudos
Message 7 of 8
(3,413 Views)

Hey jyang,

 

Can you post some example code of this for us to check out? The type should definitely propegate through when you make a change to the typedef.

Cheers!

TJ G
0 Kudos
Message 8 of 8
(3,393 Views)