10-15-2012 01:47 PM - edited 10-15-2012 02:09 PM
Lets see if I can explain this.
We have a fairly complicated LV 10 project with a small part that utilizes System Exec.vi to call batch command files that erases Xilinx FPGAs. In XP the erases take ~30 seconds each [as expected]. When we run in Windows 7, it takes considerably longer [~1.5 minutes each]. If I create a small VI that only does the erase functionality by itself, it works as it did in XP [~30 seconds]. The only thing I notice is that the impact.exe has a CPU % of 0 for awhile on the Task Mgr when run as part of the larger LV 10 project. In the smaller VI, the CPU % does not do this.
Sample Xilinx batch file contents:
setLog -file erase.log
setMode -bs
setCable -p auto
setCableSpeed -speed 3000000
identify
erase -p 1
blankCheck -p 1
quit
System Exec.vi settings:
Wait Until Completion => true
Run Minimized => true
Command Line: cmd /c C:\Xilinx\13.4\LabTools\LabTools\bin\nt64\impact -batch C:\Labview\FPGA\temp.cmd
10-16-2012 06:15 AM
The nt64 in the file path to the executable looks suspiciosly like a 64 Bit executable. Is your LabVIEW version 32 bit or 64 bit? Windows 7 is 64 bit? It could be some thread synchronization issue when starting the 64 bit process from the 32 Bit LabVIEW environment under Window 7. I really doubt you are using Windows XP in 64 bit mode at all, and the installed Xilinx tools therefore likely are 32 bit only.
10-16-2012 08:37 AM
The LV tool is 32-bit. The Impact tool we are trying to use is 64-bit on the Windows 7 machine. When we run on an XP machine, we use the 32-bit version of Impact. A 32-bit version of Impact also exists on the Win7 machine, but it doesn't seem to have the correct cable drivers installed. I am attempting to fix the driver issue and see if using Impact 32-bit makes the problem go away.