LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Is possible to program any FPGA with LabView FPGA


wiebe@CARYA wrote:


https://www.ni.com/en-us/shop/product/labview-fpga-ip-export-utility.html

 

So the answer to the question "Is possible to program any FPGA with LabView FPGA" seems to be "yes, you can use LabVIEW FPGA to create VHDL to program any FPGA."


That matches exactly what I was told in person. So it IS possible, and it IS legal, but I have no idea how HARD it is to do.  But still, a very interesting possibility.

0 Kudos
Message 11 of 17
(1,466 Views)

@Intaris wrote:

wiebe@CARYA wrote:


https://www.ni.com/en-us/shop/product/labview-fpga-ip-export-utility.html

 

So the answer to the question "Is possible to program any FPGA with LabView FPGA" seems to be "yes, you can use LabVIEW FPGA to create VHDL to program any FPGA."


That matches exactly what I was told in person. So it IS possible, and it IS legal, but I have no idea how HARD it is to do.  But still, a very interesting possibility.


Well you need to be intimately familiar with your target toolchain (Quartus Prime in case of Intel FPGA) and likely be able to do some hand-editing to the VHDL sources that the LabVIEW (Vivado) exporter generates. That's because while VHDL is a pretty high level definition language, it's also compiler tool specific how it is tied into the specific work flow and there are various versions out there, and not all tools support all versions by far. Also there are variants in how certain things can be represented and while tool X prefers variant 1, tool Y will not like that at all.

 

Which gets you quickly into the position, if someone is intimately familiar with a specific toolchain (e.g. Intel Quartus Prime) they are not very likely to even want to spend half an hour to get to know LabVIEW FPGA (and the Vivado specifics).

 

So yes it is possible but a rather infrequently exercised workflow. Where it could work is in large teams with developers with certain domain specific knowledge and LabVIEW experience who develop a certain algorithme on NI FPGA hardware and then export the design and throw it over the cubicle wall to their collegue with extensive FPGA VHDL knowledge for integration into a mass production FPGA design. The case where the same person would develop in LabVIEW FPGA and then integrate the resulting design into a low level VHDL design for a custom made FPGA hardware is very seldom, if it even ever happens.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
Message 12 of 17
(1,455 Views)

@rolfk wrote:

So yes it is possible but a rather infrequently exercised workflow. Where it could work is in large teams with developers with certain domain specific knowledge and LabVIEW experience who develop a certain algorithme on NI FPGA hardware and then export the design and throw it over the cubicle wall to their collegue with extensive FPGA VHDL knowledge for integration into a mass production FPGA design. The case where the same person would develop in LabVIEW FPGA and then integrate the resulting design into a low level VHDL design for a custom made FPGA hardware is very seldom, if it even ever happens.


This, although it's a very niche situation, is still a welcome addition.

We know LabVIEW. Our partner knows VHDL. Together we shall rule the world. Together we may find a solution.

0 Kudos
Message 13 of 17
(1,444 Views)

@Intaris wrote:

@rolfk wrote:

So yes it is possible but a rather infrequently exercised workflow. Where it could work is in large teams with developers with certain domain specific knowledge and LabVIEW experience who develop a certain algorithme on NI FPGA hardware and then export the design and throw it over the cubicle wall to their collegue with extensive FPGA VHDL knowledge for integration into a mass production FPGA design. The case where the same person would develop in LabVIEW FPGA and then integrate the resulting design into a low level VHDL design for a custom made FPGA hardware is very seldom, if it even ever happens.


This, although it's a very niche situation, is still a welcome addition.

We know LabVIEW. Our partner knows VHDL. Together we shall rule the world. Together we may find a solution.


I guess there are FPGAs (the ones NI uses) that are more 'compatible' with the NI tools than others?

 

While not all FPGAs "play nice" with LV, by carefully picking one, would it be feasible minimize the pain to a degree that it becomes practice?

 

Picking LabVIEW to program any FPGA is one use case (that we can dismiss). Another use case would be that we pick a specific FPGA, so we can scale up while using LabVIEW. That would help in some situations... 

0 Kudos
Message 14 of 17
(1,430 Views)

Well, in terms of VHDL compatibility I would expect that use with the Vivado toolchain has likely the least problems, so this would mean if you want to export a LabVIEW FPGA design to VHDL for use in a custom FPGA design it would be probably easiest if that FPGA design uses the according Xilinx FPGAs that ar supported by Vivado.

 

The other use case you seem to alude too, about using LabVIEW FPGA directly on non-NI hardware, even if it uses the exact same Xilinx chip as the LabVIEW FPGA targets, will be technically very hard to do and legally not possible, since you would need to have also the according LabVIEW RT implementation on that target and while NI somewhere states that you need to contact them for licensing questions about this, I'm not sure there ever was any customer who actually got such an agreement.

 

And yes NI Linux RT is open source, but that is not the problem. You can recompile and install NI Linux RT itself on any hardware platform you like but that is just the OS. You do not have the legal rights to put the LabVIEW Runtime (lvrt.so and lots of other files) and all the many NI-VISA, NI-this and NI-that on your hardware. Without these files it's simply a Linux target but not something where you can run any LabVIEW VI on. And in the case of NI-RIO, which is the entire driver that interacts with the FPGA, you will be very hard pressured to get that working on your own hardware. This interfaces to NI developed specific VHDL core components that are encrypted and even if you could decrypt them it's legally not allowed to use them.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 15 of 17
(1,421 Views)

@rolfk wrote:

 

The other use case you seem to alude too, about using LabVIEW FPGA directly on non-NI hardware, even if it uses the exact same Xilinx chip as the LabVIEW FPGA targets, will be technically very hard to do and legally not possible, since you would need to have also the according LabVIEW RT implementation on that target and while NI somewhere states that you need to contact them for licensing questions about this, I'm not sure there ever was any customer who actually got such an agreement.

 


Well there are some pretty wild assumptions in there. Who said anything about interfacing via RT Code?

 

Just having modulators and demodulator code in an end device (accessible via standard I/O, Ethernet, USB whatever) where code updates can be accelerated via LabVIEW code is already a big benefit for us. More this direction than simulating an NI product.

0 Kudos
Message 16 of 17
(1,403 Views)

My use case for a custom FGPA was to replace 3 FlexRIOs with 500X3 FPGAs.

 

A RT System would not be involved at all.

 

But of course no RT OS limits the applicability.

0 Kudos
Message 17 of 17
(1,400 Views)