NI Home
Cart Cart | Help
Company Events Academic NI Developer Zone Support Solutions Products & Services Contact NI MyNI

FFT in LabVIEW FPGA

VERSION 5 Published

Created on: Dec 20, 2007 5:42 PM by Beta Community Content - Last Modified:  Jul 22, 2008 2:15 PM by JLS


REQUIREMENTS:
Application Software: LabVIEW Professional Development System
Driver Software: NI-RIO

This LabVIEW FPGA IP core performs a Fast Fourier Transform (FFT) on time domain data, using block sizes of 1024 and 2048.

 

This LabVIEW FPGA IP core performs a Fast Fourier Transform on time domain data, using block sizes of 1024 and 2048.The example project generates uniform white noise on the FPGA and uses two DMA channels to stream both time domain and frequency domain data back to the Host. The Host VI then calculates the floating point FFT on the time domain signal and compares it to the fixed-point calculation from the FPGA VI. Both real and imaginary parts are plotted on the Front Panel.This can be modified for in-line processing, which performs the FFT calculation right after data is acquired using analog input channels. I'll upload a co-processing example soon.

 

Note:This LabVIEW FPGA IP uses the uses the FXP Multiply function found in the Fixed-Point Math Library for LabVIEW FPGA.Download and install the Fixed-Point Math Library for LabVIEW FPGA

 

Updated: I was having some trouble with the 1048 FFT sub-VIs linking to the 2048 FFT sub-VIs. I just updated the example code with two separate projects, which should help to avoid the issue.

 

Downloads:
Average User Rating
(0 ratings)




Jan 4, 2008 7:08 PM Click to view momolxg's profile momolxg says:

Performance

 

Thanks for the example - I do not have 8.5 running for FPGA at the moment but would like to know what performance to expect on PXI 7831R for a 2048 16 bit array and how many channels I can simultaneously FFT.

Jan 10, 2008 12:23 PM Click to view ufo3097's profile ufo3097 says:

method

 

Thanks for the example. I running at 8.5,but I change a loop to while loop. because I want to use I/O node instead of White noise vi. After compile, there is a error code 42802. Can you tell me how to use this vi

More Like This

  • Retrieving data ...