Luiza Irina fez um comentário

Ótimo!

• 0 aprovações

709 pág.

Pré-visualização50 páginas

the windowed filter coefficients h(k); (b) low-ripple 31-tap frequency response; (c) low-ripple 63-tap frequency response. This situation is depicted for N = 31 in Figure 5-23(a), where Eq. (5-15)\u2019s w(k) looks very much like the Hanning window function in Figure 3-17(a). This Blackman window function results in the 31 smoothly tapered h(k) coefficients at the bottom of Figure 5-23(a). Notice two things about the resulting H(m) in Figure 5 -23(b). First, the good news. The passband ripples are greatly reduced from those evident in Figure 5-22(a)\u2014so our Blackman window function did its job. Second, the price we paid for reduced passband ripple is a wider H (m) transition region. We can get a steeper filter response roll-off by increasing the number of taps in our FIR filter. Figure 5-23(c) shows the improved frequency response had we used a 63-coefficient Blackman window function for a 63-tap FIR filter. So using a nonrectangular window function reduces passband ripple at the expense of slower passband to stopband roll-off. A graphical comparison of the frequency responses for the rectangular and Blackman windows is provided in Figure 5-24. (The curves in Figure 5-24 were obtained for the window functions defined by 16 discrete samples, to which 496 zeros were appended, applied to a 512-point DFT.) The sidelobe magnitudes of the Blackman window\u2019s |W(m)| are too small to see on a linear scale. We can see those sidelobe details by plotting the two windows\u2019 frequency responses on a logarithmic scale and normalizing each plot so that their main lobe peak values are both zero dB. For a given window function, we can get the log magnitude response of WdB(m) by using the expression (5-16) Figure 5-24 Rectangular versus Blackman window frequency magnitude responses: (a) |W(m)| on a linear scale; (b) normalized logarithmic scale of WdB(m). (The |W(0)| term in Eq. (5-16) is the magnitude of W(m) at the peak of the main lobe when m = 0.) Figure 5-24(b) shows us the greatly reduced sidelobe levels of the Blackman window and how that window\u2019s main lobe is almost three times as wide as the rectangular window\u2019s main lobe. Of course, we could have used any of the other window functions, discussed in Section 3.9, for our lowpass FIR filter. That\u2019s why this FIR filter design technique is called the window design method. We pick a window function and multiply it by the sin(x)/x values from H\u221e(m) in Figure 5-23(a) to get our final h(k) filter coefficients. It\u2019s that simple. Before we leave the window method of FIR filter design, let\u2019s introduce two other interesting window functions. Although the Blackman window and those windows discussed in Section 3.9 are useful in FIR filter design, we have little control over their frequency responses; that is, our only option is to select some window function and accept its corresponding frequency response. Wouldn\u2019t it be nice to have more flexibility in trading off, or striking a compromise between, a window\u2019s main lobe width and sidelobe levels? Fortunately, there are two popular window functions that give us this opportunity. Called the Chebyshev (or Dolph-Chebyshev) and the Kaiser window functions, they\u2019re defined by the following formidable expressions: (5-17) (5-18) Two typical Chebyshev and Kaiser window functions and their frequency magnitude responses are shown in Figure 5-25. For comparison, the rectangular and Blackman window functions are also shown in that figure. (Again, the curves in Figure 5-25(b) were obtained for window functions defined by 32 discrete time samples, with 480 zeros appended, applied to a 512-point DFT.) Figure 5-25 Typical window functions used with digital filters: (a) window coefficients in the time domain; (b) frequency-domain magnitude responses in dB. Equation (5-17) was originally based on the analysis of antenna arrays using the mathematics of Chebyshev polynomials[9\u201311]. Equation (5-18) evolved from Kaiser\u2019s approximation of prolate spheroid functions using zeroth-order Bessel functions[12\u201313]. For each sample of the N-length sequence inside the brackets of the numerator of Eq. (5-18), as well as for the \u3b2 term in the denominator, the Io(x) zeroth-order Bessel function values can be approximated using (5-18\u2032) In theory the upper limit of the summation in Eq. (5-18\u2032) should be infinity but, fortunately, 25 summations give us sufficient accuracy when evaluating Io(x). Don\u2019t be intimidated by the complexity of Eqs. (5-17) and (5-18)\u2014at this point, we need not be concerned with the mathematical details of their development. We just need to realize that the \u3b3 and \u3b2 control parameters give us control over the Chebyshev and Kaiser windows\u2019 main lobe widths and the sidelobe levels. Let\u2019s see how this works for Chebyshev window functions, having four separate values of \u3b3, and their frequency responses shown in Figure 5-26. FIR filter designers applying the window method typically use predefined software routines to obtain their Chebyshev window coefficients. Commercial digital signal processing software packages allow the user to specify three things: the window function (Chebyshev in this case), the desired number of coefficients (the number of taps in the FIR filter), and the value of \u3b3. Selecting different values for \u3b3 enables us to adjust the sidelobe levels and see what effect those values have on main lobe width, a capability that we didn\u2019t have with the Blackman window or the window functions discussed in Section 3.9. The Chebyshev window function\u2019s stopband attenuation, in dB, is equal to (5-19) Figure 5-26 Chebyshev window functions for various \u3b3 values: (a) window coefficients in the time domain; (b) frequency-domain magnitude responses in dB. So, for example, if we needed our sidelobe levels to be no greater than \u221260 dB below the main lobe, we use Eq. (5-19) to establish a \u3b3 value of 3.0 and let the software generate the Chebyshev window coefficients.\u2020 \u2020 By the way, some digital signal processing software packages require that we specify AttenCheb in decibels instead of \u3b3. That way, we don\u2019t have to bother using Eq. (5-19) at all. The same process applies to the Kaiser window, as shown in Figure 5-27. Commercial software packages allow us to specify \u3b2 in Eq. (5-18) and provide us with the associated window coefficients. The curves in Figure 5-27 (b), obtained for Kaiser window functions defined by 32 discrete samples, show that we can select the desired sidelobe levels and see what effect this has on the main lobe width. Figure 5-27 Kaiser window functions for various \u3b2 values: (a) window coefficients in the time domain; (b) frequency-domain magnitude responses in dB. Chebyshev or Kaiser, which is the best window to use? It depends on the application. Returning to Figure 5-25(b), notice that, unlike the constant sidelobe peak levels of the Chebyshev window, the Kaiser window\u2019s sidelobes decrease with increased frequency. However, the Kaiser sidelobes are higher than the Chebyshev window\u2019s sidelobes near the main lobe. Our primary trade-off here is trying to reduce the sidelobe levels without broadening the main lobe too much. Digital filter designers typically experiment with various values of \u3b3 and \u3b2 for the Chebyshev and Kaiser windows to get the optimum WdB(m) for a particular application. (For that matter, the Blackman window\u2019s very low sidelobe levels outweigh its wide main lobe in many applications.) For some reason, algorithms for computing Chebyshev window functions are not readily available in the literature of DSP. To remedy that situation, Appendix I presents a straightforward procedure for computing N-sample Chebyshev window sequences. To conclude this section, remember that different window functions have their own individual advantages and disadvantages for FIR filter design. Regardless of the non-rectangular window function

Luiza Irina fez um comentário

Ótimo!

• 0 aprovações