LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

programmatically launch FPGA compilation

Solved!
Go to solution

Hi!

 

I would like to launch FPGA compilationS during the night. I tought about building a tool based on Project API which would launch the compile process (as the right-clic -> compile does). With this API I can find the VI but I haven't any method allowing to launch the compilation. One solution would be to execute the VI to launch the compilation process and then abort exec when the VI is running (it means that the compilation is succesful) (??) but it requires that the target is connected to the computer in order to deploy the bitfile.

 

Is there a to programmatically launch the compilation in the same way as the right-clic -> Compile does ?

CLA, CTA

View Cyril Gambini's profile on LinkedIn
0 Kudos
Message 1 of 15
(4,097 Views)
Solution
Accepted by topic author CyGa

Hello zyl7,

 

Thanks for posting on National Instruments. 

 

I have attached a VI doing it. I have used the API for Compiling FPGA VIs and especially the VI niFpgaCompileVI.vi: 

 

 

Compile FPGA VI Prog.png

    Benjamin R.


Senior LabVIEW Developer @Neosoft


Message 2 of 15
(4,067 Views)
Please note that while this example may work for LabVIEW FPGA 2009, the Compile subVI is not on the LabVIEW palette and may not work in previous or future versions of LabVIEW FPGA.
Message Edited by Donovan B on 05-14-2010 09:19 AM
Donovan
0 Kudos
Message 3 of 15
(4,046 Views)

Thanks Benjamin,

 

However, where did you find the FPGA API ? It looks like it's not visible in the LV Palette... Could you give the path where to get all necessary VIs ?

CLA, CTA

View Cyril Gambini's profile on LinkedIn
0 Kudos
Message 4 of 15
(4,023 Views)

Hi Benjamin,

 

 

Following this post, we used the same niFPGACompileVi.vi for our overnight compiles under 2009. After the recent upgrade to 2010, now the vi is missing. Do you know where it went and how we can get the overnight compiles working again?

 

Thanks,

Ray

0 Kudos
Message 5 of 15
(3,706 Views)

Hi Ray,

 

As Donovan explained in his post "the Compile subVI is not on the LabVIEW palette and may not work in previous or future versions of LabVIEW FPGA". Moreover, the compiler interface has changed between LabVIEW 2009 and LabVIEW 2010. From now you need to create Build Specification to be able to compile you FPGA VI.

 

I do'nt know if Donovan can help you to implement a VI to compile FPGA VI as it was done in LabVIEW 2009 with my VI.

    Benjamin R.


Senior LabVIEW Developer @Neosoft


0 Kudos
Message 6 of 15
(3,692 Views)

Yes, I realized this from actual experience 🙂

So is there a way to trigger Build Specs to build through VIs? This would work for us too. Thanks.

 

Ray

0 Kudos
Message 7 of 15
(3,688 Views)

I tried doing this with the LabVIEW 2010\vi.lib\AppBuilder\BuildTargetBuildSpecification.vi, but it doesn't seem to work for FPGA build specs.  It returns no error, but it also does nothing.  It does spend a second or two deciding to do nothing, though.

 

Any other ideas how to accomplish this?

0 Kudos
Message 8 of 15
(3,667 Views)

Hi Ray,

 

I've thrown together something that works for me to build multiple FPGAs in multiple projects with multiple build specs for a single VI.  In my case, I build the same VI for several targets and with different Conditional Disable Symbols, so I have to resave the top-level VI in the context of the target I'm about to build.  It could be improved to find all the dependencies and save them, in case there were Conditional Disable Structures in subVIs as well as the top-level VI.

 

It's not pretty and it may get at references less directly than possible.  Any clean-up suggestions on the VI Server code is welcome.

 

Hope this helps,

-Joe

Message 9 of 15
(3,635 Views)

It's been quite some time now... does LabVIEW 2018 or newer have an fully supported method for programmatically compiling VIs with LabVIEW FPGA?

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