A Power-Efficient FFT Preprocessing Algorithm Utilizing Analysis Filter Bank

With the development of high-speed sampling and real-time signal processing technologies, the power consumption for implementing large-point FFT operations is drastically increasing in application systems. This paper presents an FFT preprocessing algorithm based on a multi-channel analysis filter bank, which is implemented by an efficient multi-phase parallel structure. The operating frequency is reduced to fs M for each constituent channel, while the spectrum width and the resolution are maintained. Meanwhile, the valid frequency point can be correctly identified and the resulting error is controlled below -30dB. Compared with the two-dimensional FFT algorithm, the power consumption accelerating factor can reach 2.4~4 by utilizing 4-channel analysis filter bank.


INTRODUCTION
The Fast Fourier Transform (FFT) is a necessary prerequisite for digital spectrum analysis.Its powerful computing capability is extremely extensive in applications such as radar signal processing, timing positioning processing, high-speed image processing, and secure wireless communication.With the development of these technologies, the demand for large-point FFT in application systems is increasing.For hundreds of thousands of points or even trillions of FFT operations, it takes a lot of power consumption.Excessive power consumption can cause problems with the system's cooling system or cause the mobile device to quickly consume the energy reserves in the battery.
At present, two-dimensional FFT algorithm is commonly used for large-point FFT processing, that is, a one-dimensional large-point FFT is converted to a twodimensional small-point FFT cascade processing [1] .It greatly reduces the requirements on processor storage resources by reducing the number of FFT processing points per stage, but its algorithm complexity and power consumption are higher.It should be noted that the power consumption of the system is approximately proportional to the sampling rate (  ) in digital integrated circuits [2] .In this paper, aiming at reducing the power consumption of large-point FFT, an FFT preprocessing algorithm based on analysis filter banks is proposed.It can effectively reduce the power consumption of the FFT processing algorithm by reducing the operating frequency.

PRINCIPLES OF ALGORITHM
Assume that the length of the sequence x(n) is N, where N is an integer power of 2. If this condition is not met, you can manually fill in a number of zero values to achieve it.According to equation (1), the DFT of x(n) can be expressed as [3] : The decimation in frequency radix-2 FFT algorithm decomposes x(n) into two odd-even sub-sequences.The above equation can be rewritten as: However, if the FFT operation is performed directly according to the above formula, the entire system must work under the sampling frequency to keep the real-time performance, which is a tough task.The operating frequency of each channel can be reduced by utilizing the analysis filter bank.
When all sub-filters in a filter bank use an identical signal as the input signal, this filter bank can be called an analysis filter bank.If all the sub-filters have the same bandwidth and their center frequencies are uniform distributed (Figure 1), where M  = M =   =  ∀ = 0,1, … ,  − 1 ,M is the extraction factor, the decomposition filter bank can be efficiently implemented.At this time, it is called a maximum extraction M-channel uniform filter bank.This paper designs an FFT preprocessing algorithm using an analysis filter bank.It passes the large number of N points through the sub-analytic filter bank in advance, and decomposes into small-point operations of M-channel N/M points in the frequency domain.
The implementation process is shown in Figure 2 below: First, the large number of N points is processed by the M groups of filters, and the data is segmented in the frequency domain.Then in the respective sub-bands, a down-extraction with a decimation factor of M is performed, and the obtained data is subjected to N/M point FFT.Finally, each group of results is superimposed to obtain the final FFT processing result.

DESIGN OF MULTI-CHANNEL ANALYSIS FILTER BANK
This article uses MATLAB to simulate the block diagram shown in the above figure.In this design, a maximumextraction M-channel filter bank is used as a pre-processor for the FFT, and a multi-phase parallel structure is used to implement the filter.Its coefficients are symmetric, and it removes the extra zero operation, which reduces the multiplication by 4 times compared with the conventional FIR filter.
The filter bank consisting of M=I parallel filters is shown in Figure 3 which has the same bandwidth and whose passbands are arranged in equidistant fashion.The frequency spectrum of the input signal X(e jΩ (i) ) is within the range of frequency 0 ≤ Ω (i) ≤ .Where H  (  ),  = 1, … ,  − 2 represents a band-pass filter, H 0 (  ) represents a low-pass filter, and H −1 (  ) represents a high-pass filter [4] .In the filter bank, the spectrum of the input signal is decomposed into M sub-spectra with a normalized bandwidth of b ≤ / , so these sub-band signals can be down-sampled with a maximum factor of M. To reduce the computational power of the ordinary Mchannel filter bank shown in Figure 3, first of all, one of the drawers, the filter   (  ) and the down sampler   cascaded behind it, can be implemented with an efficient computing structure (Figure 4) .This can reduce the power consumption in the first channel of the filter bank by factor M. Finally, in each channel filter, the coefficient symmetry of the linear phase FIR filter can be used to further reduce power consumption.This paper designs a 20th-order M-channel analysis filter banks whose amplitude-frequency curve is shown in Figure 5 below.Each channel synthesis should have complementary properties that apply to the preconditioning front end.

SIMULATION RESULTS
The input data of the simulation test is a cosine signal with a certain random noise, and its frequency points are 100, 200, 300, 400 respectively.We pass the data through the built test platform, and then get the simulation results for analysis.

RESULTS OF 2-CHANNEL ANALYSIS FILTER BANK
The input data is passed through a 2-channel analysis filter bank with multi-phase structure, and then subjected to FFT processing.The result is compared with the direct FFT processing result.As shown in Figure 6，the frequency point can be correctly identified and the resulting error is controlled below -70dB.

RESULTS OF 4-CHANNEL ANALYSIS FILTER BANK
The same method is applied to 4-channel analysis filter bank.As shown in Figure 7，the frequency point can be correctly identified and the resulting error is controlled below -30dB.
Compared with 2-channel analysis filter bank, the operating frequency is reduced by 1/4 and the amount of data is reduced by 1/4 utilizing 4-channel analysis filter bank, while maintaining the spectrum width and without changing the resolution.Meanwhile the error is more obviously.

COMPLEXITY COMPARISON
For the complexity of large-point FFT processing algorithm, this paper compares and analyses N points directly to perform FFT operation, two-dimensional FFT algorithm and the algorithm of this paper from the three angles of multipliers, multiplication times, and power consumption.
According to dynamic power consumption P = α • V 2 • n •  0 •   [5] , where α is the proportional coefficient; V is the operating voltage; n is the multiplier number;  0 is the unit working capacitance;   is the operating frequency.
Take the FFT processing of N-point data as an example, as shown in the table 1.
Note: Algorithm 1 put the N points directly to perform FFT operation; Algorithm 2 is the two-dimensional FFT algorithm; Algorithm 2 is the two-dimensional FFT algorithm 3 is the algorithm of this paper presented.
In order to facilitate the intuitive analysis, the curves of the three indicators with the change of points are as shown in the figure 8.In terms of the number of multipliers, two-dimensional FFT algorithms account for a great advantage.In terms of the times of multiplication, this article is slightly higher than the other two methods.However, in terms of power consumption, this article has significantly reduced compared with the other two methods, and the accelerating factor reached 2.4~4.Meanwhile, with the increase of points, the acceleration effect is more obvious.

CONCLUSIONS
This paper presents an FFT preprocessing algorithm based on a multi-channel analysis filter bank, which utilizes an analysis filter bank to decompose the large -point FFT into small-point operations.This method reduces the power consumption of the large-point FFT algorithm by reducing the number of operating points and operating frequency.
The key to the design lies in the implementation of multichannel filter banks.The processing of the transition band for each channel directly affects the FFT processing performance.And with the increase of the number of channels and the order, its power consumption can be significantly optimized, but the design difficulty will be significantly increased.

Figure 1 .
Figure 1.Bandwidth of uniform filter bank sub-filter.

Figure 4 .
Figure 4. Parallel Structure of multi-phase Analysis Filter Bank.

Figure 5 .
Figure 5. (a) frequency response for 2-channel analysis filter bank (b) frequency response for 4-channel analysis filter bank.

Figure 6 .
Figure 6.(a) Result of FFT for 2-channel analysis filter bank (b) Error Analysis for 2 methods.

Figure 7 .
Figure 7. (a) Result of FFT for 4-channel analysis filter bank (b) Error Analysis for 2 methods.

Table 1 .
Comparison of the three methods in the three indicators.