Fast fourier transform processor implementation for high inputs on field programmable gates array - Ali Abbas, Zaid (2018)
In the past few years, fast Fourier transform (FFT) proved to be an efficient method to accomplish the discrete Fourier transform (DFT) with less number of operations. FFT has been vastly applied for many applications, such as image processing technique, network data transmission (XDSL, WiMAX, and WLAN), orthogonal frequency-division multiplexing (OFDM), digital signal processing (DSP) and numerous applications that require high input data (1024 and up) processing. Low power and low complexity are the main concerns in high input FFT. Therefore, this research aims to investigate the power consumption, hardware resources usage and speed for radix-(2, 4 and 8) FFT processor, using the same device and environment to investigate the performance of each. Memory-based architecture chosen to use for FFT processors, due to the reduction in the number of butterflies and rotators, as they are reused for different stages of the FFT, were implemented on Cyclone II Field Programmable Gate Arrays (FPGA). Verilog Hardware Description Language (Verilog HDL) and VHDL Languages are used to program the algorithms into the FPGA. FFT algorithms will be implemented for up to 4096 points to measure the high load processing capability. The results show that for the 4096 points FFT, the radix-4 is the best trade-off in term of speed, resources and power consumption, which requires only 36% of the power required by the 4069 points radix-8 FFT and 58% of the power required by the 4069 points radix-2 FFT. On another hand, for the hardware resources, the result shows that the 4096 points radix-4 FFT used 30% of hardware resources furthermore; radix-8 FFT uses approximately 45%, in the meanwhile radix-2 require 20% only. For speed, the results shows that a 4096 points radix-4 FFT is 70% faster than 4096 points radix-2 FFT and 62% slower than 4096 points radix-8 FFT. While the radix-2 may be preferred, when it comes to power saving because it only need to consume 28% less than radix-4 and 41% less than radix-8. Radix-8 is better when speed is the most important factor; it is notably 80% faster than radix-2 and 60% than radix-4.