LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW FPGA polynom

Hello. I have FlexRIO board PXIe-7966R. I'd like to calculate polynom of input data: 0.2139*x^3 - 0.0684*x^2+0.9524*x+0.0085 , where x - is I16 input data.

But i have a problem, that this calculating takes a lot of time - 20MHz. I'd like to execute this operation in single cycle timed loop with 125MHz clock. How can i optimize this operation? 

 

0 Kudos
Message 1 of 5
(2,390 Views)

Pipelining.

0 Kudos
Message 2 of 5
(2,369 Views)
Well, given that the input is an integer there is just a finite number of possible answers to the calculation (65,536 to be precise). Could you do it as a lookup table?

Does your input use the entire 16-bit dynamic range? If not, you might need able to trim that number down a bit.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
Message 3 of 5
(2,361 Views)

Another thing to take note of, what's your required latency?  If your calculated value cannot be more than 1 cycle delayed from your input then LUT (as mike pointed out) is going to be the only way.

0 Kudos
Message 4 of 5
(2,354 Views)

The NI LabVIEW High-Performance FPGA Developer's Guide discusses how to use the SCTL, and how it can be used to optimize throughput and minimize latency.

0 Kudos
Message 5 of 5
(2,327 Views)