Discussion:
How to download a compiled FPGA bitfile without LabVIEW?
(too old to reply)
Anmol
2008-04-15 03:10:08 UTC
Permalink
Is there a way I can download a compiled FPGA bitfile to the flash memory on Compact RIO without using LabVIEW? The hardware is being used in the field where there is no LabVIEW. I would like to be able to make changes to FPGA program, re-compile and download the bitfile to the remote cRIO. Is this possible?Same question is previously posted on these forums but the system says I am not authorized to view the answer. Please help.
CarlaU
2008-04-15 18:40:10 UTC
Permalink
Hi Anmol,
 
Yes, you can download a compiled FPGA bitfile without LabVIEW. You will need to download and install the NI-RIO driver on the non-development PC.&nbsp; Then you can use the RIO Device Setup utility under Start»Programs»National Instruments»NI-RIO»RIO Device Setup to download the bitfile. &nbsp;This utility is rather intuitive, but the NI-RIO driver also installs a RIO Device Setup Help at the same location for your reference if needed.&nbsp; This will enable you to download your pre-compiled bitfile without having to install the LabVIEW development environment, LabVIEW Real-Time, or the LabVIEW FPGA module. For more information about this, there is a great <a href="http://digital.ni.com/public.nsf/allkb/BAAA6D86CDDD583C8625729E00572C8B?OpenDocument" target="_blank">KnowledgeBase article </a>that discuss this procedure in more detail. I hope this helps!
&nbsp;
Carla
robdevyogi
2008-07-28 05:10:06 UTC
Permalink
What is the best way to secure a bitfile so that it is not possible to reverse engineer?&nbsp; I assume the flash that holds the bitfile cannot be read?&nbsp; Does any of the VIs also contain the bitfile embedded?
Does anyone have any experience of creating an app to automatically download the bitfile (e.g. from an automated installer).&nbsp; Trying to make upgrades as smooth for the customer as possible...
Brian_A
2008-07-28 18:40:08 UTC
Permalink
Hi Rob,The bitfile stored on the cRIO's flash memory cannot be read back to the controller or PC.&nbsp; Also, no VI will include an "embedded" bitfile. A bitfile can be copied to a controller or stored on a PC, then referenced for download to the FPGA, but there will not be a bitfile included within a VI.As for reverse engineering a bitfile:&nbsp; The LabVIEW FPGA module uses a compiler supplied by Xilinx.&nbsp; If you are looking to reverse engineer a bitfile, I would search for that topic from the Xilinx side of things.Finally, you could <a href="http://zone.ni.com/devzone/cda/tut/p/id/4039" target="_blank">create an executable</a> from a VI that would <a href="http://zone.ni.com/reference/en-XX/help/371599C-01/lvfpgahosthelp/forcing_an_fpga_vi_to_download/" target="_blank">force a download to the cRIO</a>. I hope this helps!
robdevyogi
2008-07-28 19:10:09 UTC
Permalink
Thanks, Brian.
&nbsp;
What I really meant to ask about reverse engineering the bit file was how I can keep it on the flash without it being possible to extract it back to a file.&nbsp; But it sounds like this is (fortunately) not possible.
&nbsp;Message Edited by robdevyogi on 07-28-2008 11:48 AM
robdevyogi
2008-08-12 00:40:09 UTC
Permalink
When running as a target (not with dev environment running), is it still posible for the&nbsp;bitfile to be loaded to the FPGA from a place other than the flash?&nbsp; Normally, the flash will hold the bitfile that is needed, but is it&nbsp;the case that it is also stored in the rtstartup.exe? If so, can this option be turned on/off?&nbsp;
When I later updated the flash with a new, recompiled&nbsp;bitfile (using RIO Device Setup tool) it seems the previous version of the bitfile was&nbsp;enabled again (rtstartup.exe was not copied over to the target after the recompile).&nbsp; The rtstartup.exe is&nbsp;151 kB larger than the bitfile, so this seems plausible.
Applies to LV 8.5
Brian_A
2008-08-12 21:10:10 UTC
Permalink
Things behave a bit differently when using an executable as opposed to just running a VI on the Real-Time controller.&nbsp; <a href="http://digital.ni.com/public.nsf/allkb/17EA4DD6AAECD50A862570A7004B6146?OpenDocument" target="_blank">This Knowledge Base article</a> addresses waht you are asking about.
Loading...