LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

fpga loss of function when array expanded

Hi All,
    I've run into an odd problem. We are using an RIO FPGA card (PXI-7831R) with two unrelated loops in the FPGA vi. One loop performs the protocol encoding and decoding of our serial data stream, and has not been effected by the problem I am now seeing. The second loop is passed an array of scaling factors from the calling RT program. These scaling factors are multiplied against signals that are read in by the RIO's analog input, placed on shift registers, and the resultant values, with some bit shifting, are sent back out on the RIO's analog output. Initially the design had only three analog inputs and six analog outputs. When the design of our DUT (device under test) changed we needed to add another channel. After recompiling and downloading with the additions everything still worked as before, but the new channel didn't. After some inspection, probing at a higher level, I found what appeared to be the problem, the array of scaling factors is defined as a 6 element array and now we were trying to pass 8. Well I redefined the array to 8, recompiled and downloaded the FPGA's new changes and ran the higher level program. Not only didn't it fix the problem of the new channel not working, but now none of them did (the other loop in the FPGA code that does the protocol stuff works fine). Make the array 6 elements and recompile, etc., and every thing is fine. Hmmmm. I deleted everything in the loop (except the actual array control) and recreated it. Still no luck.  So any ideas would be appreciated. I don't get any messages during compile that it ran out of gates or anything, it appears to compile the VHDL stuff happily.
 
Thanks,
 
 
Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



0 Kudos
Message 1 of 2
(2,388 Views)

Well problem solved! And it leaves me with an slightly uncomfortable feeling. An old saying is "if at first you don't suceed, try a bigger hammer". Having a 7833R board (3M gates vs. 1M gates) I tried that and now it works beautifully. My concern is that the compilation reports for the 6 element array version vs. the 8 element on indicates that we still have a lot of "slices" left, so it is unclear why it didn't work in 1M. Of course if you only had the 1M version well....

 

 

Putnam
Certified LabVIEW Developer

Senior Test Engineer North Shore Technology, Inc.
Currently using LV 2012-LabVIEW 2018, RT8.5


LabVIEW Champion



0 Kudos
Message 2 of 2
(2,373 Views)