05-30-2023 02:50 AM
Thank you!
I realized that the FFT doesn't return the values in order and after a bit of reshaping and transposing on the host side I was able to get a better looking FFT out:
This is still not right as there are several peaks and peaks location changes a bit for each sample but it's closer (if that is a thing).
Now I will try to implement this windowing to my data before prosessing the FFT. I will see what happens. The FPGA compilations just takes forever...
Aarni
05-30-2023 03:16 AM
One further question...
How should I implement a scaled window on data that is given 16 samples per cycle. I could do the scaling separately for all 16 channels but that would make the scaling a bit "jumpy" as multiple samples are multiplied with the same coefficient. I can't really divide it up to give me one sample at a time either cause I have a 200 MHz clock and 3.2 samples/second.
Thanks again:
Aarni
05-31-2023 01:44 AM
Hi, glad to see that you realized FPGA FFT output requires reordering the output to get a better spectrum but it still looks what it should be.
I guess the number of samples to acquire should be the same as FFT length on FPGA, which is 4,096 samples in this case. Try if it helps to get better spectrum.
Also, if you have any further question, it is recommended to post a new thread. Thanks!
10-16-2023 09:32 AM
Your fft spectrum looks good.Can you send me your labview FPGA design?
10-16-2023 09:33 AM
Thank you!
10-16-2023 09:48 AM
Hi,
Unfortunately I don't have any of these older codes that I did to learn LabVIEW FlexRio FPGA stuff and I can't give you any of my actual programs that I have made for my work...
If you are learning LabVIEW FPGA there is LVFPGA basics course on NI Learning center. Also there is the getting started with flexrio:
https://www.ni.com/docs/en-US/bundle/flexrio/page/target5devicehelp/getting_started.html
and lvfpga:
https://learn.ni.com/learn/article/getting-started-with-fpga
One really useful place is LabVIEW Example finder:
Labview -> help -.> find examples -> Hardware input and output -> FlexRIO -> IntegratedIO -> Getting started
That is an example code for the device family that I am using.
What you are looking for depends on the hardware you are using.
Aarni