Just as the title says: "Does MATLAB's FFT function increase its accuracy with a higher number of samples?". If so, please give me an explanation to why?
Why am I asking: I've implemented an FFT Radix-2 Module on a FPGA and it works awesomely well (I feel like a proud father..:) ), however with the higher number of FFT Points the accuracy of my Radix-2 FFT gets a bit worse – 10^(-4) – 10^(-5) for 8192 Points. I know that it's not very efficient to use Radix-2 FFT for so many points and Radix-4 or Split Radix would do better jobs. However, I've implemented Radix-2 and I would like to know why does the results start to differ with the MATLAB's FFT while they kinda should stay the same, …. or not?
I've attached a graph showing the Mean Absolute Error(MAE) of my module vs MATLAB's FFT for 8192 Points. The X-Axis representing number of iterations in CORDIC Algorithm, while Y-Axis is the MAE. The whole plot is made for 32 bits sample resolution. Can it be that the accuracy is due to 32 bits resolution? …
Thanks in advance.
Best Answer