The conventional method for spectrum analysis is the discrete Fourier transform (DFT), usually implemented using a fast Fourier transform (FFT) algorithm. However, certain applications require an online spectrum analysis only on a subset of M frequencies of an N-point DFT (M<N). In such cases, the use of single-bin sliding DFT (Sb-SDFT) is preferred over the direct application of FFT. The purpose of this chapter is to provide a concise overview of the Sb-SDFT algorithms, analyze their performance, and highlight advantages and limitations. Finally, a technique to mitigate the spectral leakage effect, which arises when using the Sb-SDFT in nonstationary conditions, is presented.
- discrete Fourier transform
- spectral leakage
- digital signal processing
- Cramér-Rao lower bound
- total vector error
The estimation of frequency, amplitude and phase of single-frequency and multifrequency signals has applications in many fields of engineering. In general, estimation methods are based on Fourier analysis or parametric modeling. The advantage of Fourier-based methods is their computational efficiency, compared with the mathematical complexity of the parameters-based algorithms, which demand a high amount of computational resources. The standard method for Fourier analysis in digital signal processing is the discrete Fourier transform (DFT). For some real-time applications, the direct application of the conventional DFT may result in an excessive computational cost. However, certain applications require an online spectrum analysis only over a subset of frequencies of an -point DFT . For this scenario, the common practice is to utilize a single-bin sliding DFT (Sb-SDFT) technique. These recursive algorithms efficiently calculate a unique spectral component of an -point DFT. Nevertheless, the direct application of DFT-based methods for spectral analysis may lead to inaccuracies due to the spectral leakage phenomenon. These unwanted effects are related to the frequency variation and improperly selected sampling time window. This problem can be solved using an adaptive coherent sampling mechanism. One of these mechanisms is known as variable sampling period technique (VSPT) and is characterized for the dynamic adjustment of the sampling period to exactly times the fundamental frequency, thereby avoiding the above-mentioned problems.
The chapter is organized as follows: Section 2 presents a brief review of Sb-SDFT. Section 3 evaluates and compares the four selected Sb-SDFT algorithms in diverse operational conditions, identifying the similarities between them. In order to mitigate the inaccuracies resulting from the spectral leakage effect, a scheme for coherent sampling based on VSPT is introduced in Section 4. Altogether a unified model is also presented to generalize this scheme to all Sb-SDFT along with simulation results. Finally, the conclusions of this chapter are drawn in Section 5.
2. Single-bin sliding discrete Fourier transform
The discrete Fourier transform (DFT) is a numerical approximation of the theoretical Fourier transform (FT) of a continuous and infinite duration signal. It represents the most common tool for engineers to extract the frequency content of a finite and discrete signal sequence, obtained from the periodic sampling of a continuous wave form in time domain.
Let us consider a continuous time signal that is sampled at the rate (where is the fundamental frequency of ) to produce the time sequence . Then the DFT of the sequence is defined as:
where is the DFT output coefficient, is the complex twiddle factor, is the sequence length, is the frequency domain index , and
If Eq. (1) is not properly designed and implemented, the DFT calculation in real-time might represent a considerable bottleneck when developing a DFT-based estimation algorithm, in terms of both measurement reporting latencies and achievable reporting rates. In this respect, in order to improve both latencies and throughput, several efficient techniques to compute the DFT spectrum have been proposed in literature, which can be classified as nonrecursive and recursive algorithms. Among the nonrecursive class, the fast Fourier transform (FFT) algorithm is extensively used for harmonic analysis over an extended portion of the spectrum. When, on the other hand, only a subset of the overall DFT spectrum is necessary to accomplish the desired estimate, the so-called single-bin sliding DFT (Sb-SDFT) turns out to be very effective.
The DFT can also be computed by recursive algorithms which are characterized by a minor number of operations to calculate a single DFT bin. Regardless of this advantage with respect to the class of nonrecursive algorithms, the performances of the two categories usually are not the same. Especially, most of the algorithms in the recursive category suffers of errors due to either the approximations made to perform the recursive update or the accumulation of the quantization errors related to a finite word-length precision [2, 3].
In what follows, four of the most efficient techniques to compute a portion of the DFT spectrum, namely the sliding discrete Fourier transform (SDFT), the sliding Goertzel transform (SGT), the Douglas and Soh algorithm (D&S), and the modulated sliding discrete Fourier transform (mSDFT) will be presented and described.
2.1. Sliding discrete Fourier transform
A very effective Sb-SDFT method for sample-by-sample DFT bin computation is the so-called sliding discrete Fourier transform (SDFT) technique . Starting from Eq. (1), the DFT can be potentially updated every time-step
Based on this property, the SDFT can be recursively implemented to calculate Eq. (1) for a desired -bin, as:
where is calculated by phase shifting the sum of the previous with the difference between the current and delayed input sample, and , respectively [4, 5]. The complex output of the SDFT could be rewritten as:
where and are real and imaginary components of the DFT output coefficient, respectively. The SDFT provides an accurate estimation for the
SDFT is computationally efficient, as it only requires one (complex) multiplication and two additions per time instant. Nevertheless, the implementation of Eq. (2) as an infinite impulse response (IIR) filter in a system with finite word-length precision brings about a rounding error in the implementation of the coefficient, which may turn the algorithm unstable and/or increment the estimation error. The first one is a direct consequence of wrong cancellations between singularities and by poles displacement outside the unit circle [2, 3]. Commonly, a damping factor (, with ) is used to ensure that all singularities are placed inside the unit circle, hence instability is no longer an issue. Then, the intrinsically stable version of the SDFT is
where is the estimated DFT output coefficient. While Eq. (5) is numerically stable, it no longer computes the exact value of in Eq. (1), since a small error is induced by the damping factor. The domain transfer function for the estimated
The stable SDFT algorithm given by Eq. (5) leads to the filter structure shown in Figure 1(b). This structure is basically an IIR filter that comprises a comb filter followed by a complex resonator. The comb filter makes the transient response samples in length; therefore, the output will reach steady state when the stored waveform equals the input signal.
2.2. Sliding Goertzel transform
The number of multiplications required in the SDFT can be reduced by creating a new pole/zero pair in its system function. This is achieved by multiplying the numerator and denominator of in Eq. (6) by the factor yielding:
The transfer function represented by Eq. (7) is commonly known as the sliding Goertzel transform (SGT). Because the poles are placed on the
This method can be implemented by the following pair of finite difference equations:
where and , with . The SGT is implemented as an IIR filter that consists of a comb filter followed by the standard Goertzel filter, as depicted in Figure 2(a). The resulting system only has real coefficients so its computational complexity is decreased in relation to that of the SDFT [6, 7].
2.3. Douglas and Soh algorithm
The implementation of a SDFT or SGT requires a damping factor to guarantee the algorithm stability. The trade-off for the system stability is that the calculated value is no longer exactly equal to the
This technique is implemented by the following pair of finite difference equations:
The algorithm described by Eq. (9) will be referred to as the Douglas and Soh algorithm (D&S). The filter implementation of Eq. (9), shown in Figure 2(b), requires two multiplications and two additions as well as the control logics to determine when
2.4. Modulated sliding discrete Fourier transform
There is an alternative way of avoiding the reduction in accuracy generated by the damping factor, without compromising stability. SDFT implementation in Eq. (2) is marginally stable, however, for the particular case of (DC component estimation). It takes the following form:
The absence of the coefficient, which typically leads to stability issues when it is represented with finite precision, allows to implement the recursive expression without the damping factor . Therefore, the recurrence in Eq. (10) is unconditionally stable and does not accumulate errors. The modulated sliding discrete Fourier transform (mSDFT) algorithm uses the Fourier modulation property to effectively shift the DFT bin of interest to the position and then use Eq. (10) for computing that DFT bin output. This is accomplished by the multiplication of the input signal by the modulation sequence . This approach allows to exclude the complex twiddle factor from the resonator and avoids accumulated errors and potential instabilities . The recursive realization of the mSDFT is:
where is a complex constant related to the phase of the complex twiddle factor, since the modulation moves the desired -bin to (0 Hz). The relation between the desired and the computed is given by Eq. (11b). It is worth noticing that if the application only requires DFT magnitude estimation, the complex multiplication in Eq. (11b) is unnecessary because is equal to . The filter structure of the mSDFT algorithm in Eq. (11) is depicted in Figure 3(a). In contrast of traditional recursive DFT algorithms, the mSDFT method is unconditionally stable and does not accumulate errors because its singularities are exactly placed on the unit circle, regardless of the finite precision used. These advantages are possible due to the removal of the complex twiddle factor from the resonator loop.
If multiple DFT frequency bins are to be computed, the mSDFT in Eq. (11) requires a comb filter for each frequency bin. On the other hand, given the periodicity of , as shown in Ref. , Eq. (11) can be rewritten as
3. Performance comparison
This section discusses the key features of each of the Sb-SDFT that were presented in Section 2. The aim of this analysis is to find underlying similarities and differences between these methods. To this end, a study on statistical efficiency and accuracy is presented in the following subsections. Finally, the section ends with a discussion over the limitations and inaccuracies of the Sb-SDFT inherited by every DFT-based method.
3.1. Statistical efficiency
It is common knowledge that the statistical efficiency and noise performance of estimators is determined by comparison with the Cramer-Rao lower bound (CRLB). The CRLB deals with the estimation of the quantities of interest from a given finite set of measurements that are noise corrupted. It assumes that the parameters are unknown but deterministic, and provides a lower bound on the variance of any unbiased estimation. The CRLB is useful because it provides a way to compare the performance of unbiased estimators. Furthermore, if the performance of a given estimator is equal to the CRLB, the estimator is a minimum variance unbiased (MVU) estimator .
Computer simulations have been performed to evaluate the performance of the SDFT, the SGT, the mSDFT and D&S algorithm for a single real sinusoid polluted with white Gaussian noise:
where and are the amplitude and initial phase, respectively,
Parameters were assigned to , , KHz and is a constant uniformly distributed between . The signal-to-noise ratio (SNR) is equal to , whereas different SNR levels were obtained by properly scaling the noise variance . All simulation results provided are the averages of 1000 independent runs.
Figure 4(a) and (b) shows the variance in the estimate of versus SNR for two different damping factors. In Figure 4(a), the damping factor was fixed at for SDFT, SGT and D&S algorithm. In this figure, for SNR levels below −10 dB can be observed that the values are beneath the CRLB limit. Therefore, beyond this threshold level, the estimations made by the Sb-SDFT techniques cease to be consistent with those of an unbiased estimator. From this threshold level and up to 15 dB, the Sb-SDFT algorithms are efficient MVU estimators, because their values reach the CRLB. For higher levels of SNR, the for SDFT and SGT remains above the CRLB and asymptotically approximate the −43.5 dB bound. This is mainly due to the fact that the inaccuracy caused by the damping factor in Eqs. (5) and (8) is more relevant than the consequence of SNR level. The D&S algorithm exhibits the same behavior, but beginning at SNR = 60 dB and with asymptotically approaching the −91 dB bound for higher levels. When compared to the performances of the SDFT and the SGT, the D&S algorithm behaves as an MVU estimator for a wider range of SNR, at the cost of a slightly increased computational complexity and a nonlinear functioning. For the range of SNR levels shown in Figure 4(a) beyond the threshold, the variance in
This test was repeated for , and the results are shown in Figure 4(b). It is seen that the performances of the SDFT, SGT and D&S algorithm are better than exhibited in the previous case. This improvement is reflected through an increase in the range of SNR values for which the estimations correspond to an MVU estimator. The results obtained for mSDFT are consistent with those obtained previously, because this estimator does not require a damping factor to ensure stability.
The effect of the damping factor on the is shown in Figure 4(c). The simulation is performed for SNR = 80 dB because at this level, SDFT, SGT and D&S algorithms do not lie on CRLB curve and have converged to their final values listed in Figure 4(b). For this scenario, the of the mSDFT is constant and equal to the CRLB, because it does not required a damping factor to achieve stability. Instead, for and SNR beyond threshold level, the for SDFT, SGT and D&S algorithm approximates the CRLB as it is reflected by Figure 4(c). From the analysis of this figure, it is possible to conclude that for the ideal situation () and SNR levels beyond the threshold, all reviewed algorithms reach the CRLB and therefore their statistical efficiency is identical.
Finally, the versus
3.2. Accuracy analysis
In this section, the accuracy of the Sb-SDFT methods on the estimation of a single-frequency signal, both in steady-state and dynamics conditions, is analyzed through simulations. The adopted accuracy index is the so-called total vector error (TVE) that combines the effect of magnitude, angle and time synchronization errors on the desired component estimation accuracy. The TVE is defined in the Standard IEEE C37.118.1-2011  as
where and are the sequences of estimations given by the Sb-SDFT method under test, and are the sequences of theoretical values of the input signal at the instants of time (n), and the subscripts r and i identify the real and imaginary parts of the desired component, respectively. The TVE is a real number that expresses the Euclidean distance between the true frequency domain complex bin and estimated one.
3.2.1. Steady-state condition
At first, the analysis is assessed in steady-state conditions assuming an input signal equal to Eq. (13). Parameters were assigned to , , KHz and rad and the damping factor is set to . The curves plotted in Figure 5(a–d) show the estimated amplitude of the test signal for all Sb-SDFT algorithms in steady state, where the reference value is displayed with a black solid line. Figure 5(e) shows the TVE values as a function of time. SDFT and SGT have the same steady-state TVE values; this error has a mean value with an overlaid ripple that is a direct consequence of the use of a damping factor in Eqs. (5) and (8). For both algorithms, the maximum TVE value is 0.7335%. The D&S algorithm significantly reduces the TVE and maintains the same damping factor than the two previous cases, resulting in improved system performance, with a maximum TVE value of 0.01%. In Figure 5(c), it is shown that when (nmodN) = 0, the estimation is accurate, which is consistent with the period of the fundamental component of the test signal. On the other hand, mSDFT provides precise estimation with a 0% TVE, since it does not require a damping factor to ensure stability.
3.2.2. Dynamic condition
The accuracy under dynamic condition of the SDFT, the SGT, the mSDFT and D&S algorithm are evaluated through multiple simulations under the effect of various transient disturbances. The comparison is performed by means of the following test signal:
where is the nominal amplitude, is the amplitude step depth factor, is the amplitude ramp slope factor, is the modulation depth factor, is the normalized modulating angular frequency , denotes the normalized nominal angular frequency (), is the normalized off-nominal angular frequency offset () and is the initial phase. In the following, the performance of the Sb-SDFT is evaluated under the effect of amplitude step, amplitude ramp, amplitude modulation and static frequency offsets. The accuracy is assessed exhaustively, by varying the test signal parameters over a suitable range, in order to determine the maximum TVE values. This approach leads to a fair performance comparison between the considered techniques. Unless otherwise stated, parameters were assigned to , , , , , , , , , , and .
First, the step response of the Sb-SDFT estimators is evaluated. For this purpose, the parameters of Eq. (16) are set to: and . Figure 6(a) shows the estimated amplitude (
The accuracy of the considered estimators is analyzed in Figure 6(b), assuming that the waveform
The effect of a modulating signal on the estimation accuracy is analyzed in Figure 6(c). Hence, the parameters of Eq. (16) were adjusted as follows: , and . The figure shows the estimated amplitude (
Finally, the influence of a simple static off-nominal frequency offset on the Sb-SDFT estimators’ performance is analyzed in Figure 7(d). The figure shows the maximum TVE values, in steady state, when the signal (Eq. 16) phase varies as a function of the off-nominal frequency offset in the range [−1,1] Hz. As expected, the accuracy of all the considered estimators degrades monotonically as the frequency offset increases due to the spectral leakage effect.
The similarities between the Sb-SDFT algorithms found through Figures 6 and 7 are explained by the fact that all implementations of this type of algorithms result from applying Fourier properties and mathematical operations to standard DFT definition (Eq. 1).
3.3. Sb-SDFT limitations
The direct application of Sb-SDFT may lead to inaccuracies due to aliasing and spectral leakage, common pitfalls inherited by every DFT-based method. Aliasing is generally corrected by employing anti-aliasing filters or increasing the sampling frequency to a value that satisfies the Nyquist sampling criterion. Instead, when the sampling is not synchronized with the signal under analysis, the DFT is computed over a noninteger number of cycles of the input signal which leads to the spectral leakage phenomenon . Spectral leakage is typically reduced (not eliminated) by selection of the proper nonrectangular time domain windowing functions, to weigh the sequence data at a fixed sampling frequency . This process increases the computational complexity and does not take advantage of the recursive nature of Sb-SDFT methods. Otherwise, spectral leakage can be avoided entirely by ensuring that sequence of samples is equal to an integer number of periods of the input signal .
4. Coherent sampling approach
In order to avoid the spectral leakage phenomenon, the sequence of samples within a sliding window of a Sb-SDFT must be equal to an integer number of fundamental periods of the input signal. An integer number of periods will be sampled if and only if the coherence criterion holds:
where is the signal frequency, is the sampling frequency,
A variable sampling period approach, named variable sampling period technique (VSPT), was developed by the authors to design synchronization methods that maintain a coherent sampling with the input signal fundamental frequency . This technique has recently been adapted to dynamically adjust the sampling frequency in a harmonic measurement method based on mSDFT . In Ref. , the VSPT is generalized so as to be used with any Sb-SDFT algorithm.
In this section, the technique of variable sampling period is briefly described, and a unified small-signal model, which allows to use the VSPT with any Sb-SDFT, is also presented.
4.1. Variable sampling period technique
VSPT allows to adapt the sampling frequency to be
Figure 8(a) illustrates the basic VSPT scheme for single-phase implementation, where the input signal is sampled and the input phase is extracted by the phase detector. Concomitantly with the input sampling, the reference generator provides a signal called reference phase:
The method achieves a null phase error () between and , by varying the sampling period as a function of . The controller provides the value of the sampling period and then the sampling generator produces a clock signal (CLK) that starts the conversion and increments the reference phase. The implementation of the phase detector and phase error calculation is key for the proper functioning of this technique. The operating principle is based on the dynamic adjustment of the sampling frequency. An exhaustive explanation of the key elements of this technique can be found in Refs. [14, 17].
4.2. Unified small-signal model
VSPT allows to adapt the sampling rate to a multiple of the fundamental frequency of a given input signal, so the coherence criterion holds, thereby preventing the DFT’s shortcomings when is used to analyze nonstationary signals. An error signal, related to the phase difference between the fundamental component of the input signal and the reference phase, is needed to adapt the sampling period. Based on this, phase error is feasible to develop a closed-loop control to synchronize the sampling period.
As mentioned in Section 3, when and for a real input signal, the Sb-SDFT algorithms become equivalent. Therefore, for this scenario and for small-signal conditions, these methods supply the same estimation of the
Since all the Sb-SDFT methods are derived from Eq. (1), for small-signal condition, they are mathematically equivalent, and the system phase error () for small deviation is approximately equal. Therefore, a mathematical model can be extrapolated for implement the VSPT scheme shown in Figure 8(a) with the phase error estimation scheme shown in Figure 8(b). Figure 8(c) presents the small signal model of a coherent sampling scheme for the Sb-SDFT algorithms based on the VSPT, which allows to avoid the spectral leakage phenomenon. The complete mathematical derivation of this model is available in Ref. .
The specifications and requirements to be met by the controller (
Then the transfer function for the controller in the
As an example of design, and are adopted. Concerning dynamics, a phase margin of 45° and maximum bandwidth are adopted as design criteria for . Based on this, and using the design methodology proposed in Ref. , the parameters of the controller are and , with a bandwidth of 5.905 Hz.
The estimations obtained by the Sb-SDFT algorithms with coherent sampling supplied by the VSPT, in situations where the input signal frequency deviates from its nominal value, are evaluated in two possible scenarios. The first simulation analyzes the effect of a frequency step of −0.5 Hz on the performance of the proposed method. Hence, the parameters of Eq. (16) were adjusted as follows: , , , , , , , and . The Sb-SDFT algorithms are set with , , and . The parameters used in the controller , for the VSPT close loop, are those presented in the previous example of design. Figure 9(a) depicts the effect of the frequency step change on the TVE values given by the estimated component. During the transient, an oscillatory behavior is noticed, which may be attributed to spectral leakage given by the noncompliance of the coherence criterion (Eq. 17) at the step change. Variations in the estimated values are extinguished once the sampling frequency is properly adjusted by the VSPT method to . Then, under a steady-state condition, the TVE values given by the four Sb-SDFT are equal to those previous to the frequency step.
To complete the evaluation of the accuracy of coherent sampling achieved by the VSPT, the influence of a simple static off-nominal frequency offset on the Sb-SDFT estimators performance is analyzed in Figure 9(b). The figure shows the maximum TVE values, in steady state, when fundamental frequency of Eq. (16) varies as a function of the off-nominal frequency offset in the range [−1,1] Hz. Due to the VSPT, in steady-state sampling, frequency is coherent with the fundamental frequency of the test signal, ensuring that exactly one period is present in the data sample of length
In this work, a comparative study of four Sb-SDFT algorithms is conducted. The comparison includes filter structure, stability, statistical efficiency, accuracy analysis, dynamic behavior and implementation issues on finite word-length precision systems limitations. Based on theoretical studies as well as on simulations, it is deducted that all reviewed Sb-SDFT techniques are equivalent, primarily due to the fact that they are derived from the traditional DFT, therefore in various applications can be applied indistinctly.
It proves that SDFT and SGT have identical performances, in regard to disturbance rejection and precision on spectral estimation. Both of these techniques are used extensively due to their straightforward implementation, although the two have an error in accuracy due to the use of a damping factor. For applications requiring greater precision, this error can be reduced by using the D&S algorithm. On the other hand, it can be eliminated by using mSDFT due to the absence of damping factor, resulting in better performance. The results of the study have shown that mSDFT is the best option when it comes to precision and noise rejection.
The direct application of a Sb-SDFT may lead to inaccuracies due to the spectral leakage phenomenon, common pitfall inherited by every DFT-based method. Spectral leakage arises when the sampling process is not synchronized with the fundamental tone of the signal under analysis and the DFT is computed over a noninteger number of cycles of the input signal. In this sense, a unified small-signal system model is presented, which can be used to design a generic adaptive frequency loop that is based on a variable sampling period technique. The VSPT allows to obtain a sampling frequency coherent with the fundamental frequency of the analyzed signal, avoiding the error introduced by the spectral leakage phenomenon.