Digital filters for signal processingin fourier transform spectroscopy
Item Type text; Thesis-Reproduction (electronic)
Authors Yeh, Jung-Hsiang
Publisher The University of Arizona.
Rights Copyright © is held by the author. Digital access to this materialis made possible by the University Libraries, University of Arizona.Further transmission, reproduction or presentation (such aspublic display or performance) of protected items is prohibitedexcept with permission of the author.
Download date 21/08/2021 10:11:25
Link to Item http://hdl.handle.net/10150/557820
DIGITAL FILTERS FOR SIGNAL PROCESSING IN FOURIER TRANSFORM SPECTROSCOPY
byJung-Hsiang Yeh
A Thesis Submitted to the Faculty of theDEPARTMENT OF ELECTRICAL ENGINEERING
In Partial Fulfillment of the Requirements For the Degree ofMASTER OF SCIENCE
In the Graduate CollegeTHE UNIVERSITY OF ARIZONA
1 9 8 1
STATEMENT BY AUTHOR
This thesis has been submitted in partial fulfillment of requirements for an advanced degree at The University of Arizona and is deposited in the University Library to be made available to borrowers under rules of the Library.
Brief quotations from this thesis are allowable without special permission, provided that accurate acknowledgment of source is made. Requests for permission for extended quotation from or reproduction of this manuscript in whole or in part may be granted by the head of the major department or the Dean of the Graduate College when in his judgment the proposed use of the material is in the interests of scholarship. In all other instances, however, permission must be obtained from the author.
SIGNED:
x
APPROVAL BY THESIS DIRECTORThis thesis has been approved on the date shown below:
Associate Professor of Electrical Engineering
ACKNOWLEDGMENTS
Sincere gratitude must be extended to Dr. L. C. Schooley for his assistance and advice in the preparation of this thesis. Thanks must also be given to Dr. J. V. Wait for his help on computer problems.
iii
TABLE OF CONTENTS
• PageLIST OF ILLUSTRATIONS „ . . . „ vLIST OF T A B L E S ............. viiABSTRACT . . . . . . . . . . . . . . . . . . . . . viii
1. INTRODUCTION . . . . . . . . . . . . . . . . . . . 12. WINDOWS USED IN THE FINITE IMPULSE RESPONSE
(FIR) DESIGN . . . . . . . . . . . . . . . . . 7The Advantages of FIR Design . . . . . . . . . 7An Unwindowed Lowpass Filter Design . 9Use' of Window Functions .................. 11Trigonometric Windows . . . . . . . . . . . . . 11
3. LOWPASS DIGITAL FILTER DESIGN . . . . . . . . . . . 186th-Order Butterworth Lowpass Filters . . . . . 18Use of the Hamming Window in Lowpass Digital
Filter Design . . . . . . . . . . . . . . . 20Use of the Kaiser-Harris Window in Lowpass
Digital Filter Design . .................. 254. BANDPASS DIGITAL FILTER DESIGN . . . . . . . . . ' 32
6-Pole Butterworth Bandpass Filters . . . . . . 32Direct Design for Bandpass Digital Filters . . 34Cascade Method for Bandpass Digital
Filter Design . . . . . . . 355. STATISTICAL ERROR ANALYSIS FOR LINEAR FIR FILTERS . 47
Statistical Model for (b+1)-bit Floating-pointRounding Noise . . .............. . . . . . 47
Statistical Model for -(b+1) -bit Fixed-pointRounding Noise ........................... 55
6. CONCLUSION . . . . . . . . . . . . ................ 62Summary 62Future Work ........................... 64
LIST OF REFERENCES ............... 65
iv
LIST OF ILLUSTRATIONS
Figure Page1. Basic Fourier Transform Spectrometer
(McCurnin, 1981) 22. Amplitude response of lowpass filters with
ojg=0 .67i, showing the transition region andstopband for various trigonomic windows(N=31) . . . . . . . . . . . . . . . . . . . 16
3. Amplitude response of lowpass filters withojg=0 . 6tt , showing the pass band for various trigonomic windows (N=31) . ................ 17
4. Amplitude response of 6th-order Butterworthlowpass filters for various cutofffrequencies . . . . . . . .. .. . . . . . . . . 19
5. Amplitude response of lowpass filters usingHamming window and Kaiser-Harris windowfor various cutoff frequencies . . . . . . . 21
6. The effect of a window function for differentcutoff frequencies . ........................ 22
7. Amplitude response of lowpass filters using aHamming window with ojc =0.6tt -for differentvalues of N ........... 23
8. Ripples in passband with Hamming window fordifferent values of N . ........... 24
9. Comparison of digital lowpass filters using the ' ' .Hamming window and Butterworth prototype . . 27
10. Amplitude response of lowpass filters using theKaiser-Harris window for various N . ” „ . . 29
11. Comparison of digital lowpass filters using theKaiser-Harris window and Butterworthprototype . . . ........... 30
12. Ripple in passband using the Kaiser-Harriswindow for various N .....................• . . 31
v
viLIST OF ILLUSTRATIONS— Continued
Figure Page1.3. Amplitude response of 6-pole Butterworth
bandpass f ilters with uo=0 . Sir forvarious Q . . . .................. 33
14. Comparison of digital bandpass filters usingthe Hamming window and Butterworthprototype , . . . . . . . . . . . . . . . . . 37
15. Comparison of digital bandpass filters usingthe Kaiser-Harris window and Butterworth prototype . . . . i . . . . . . . . . . . . . 40
16. Amplitude response of bandpass filters with N=61and co0=0. Sir, low frequency stopband only ... 41
17. Amplitude response of bandbass filters with N=81and (jo0=0 .5it , low frequency stopband only ... • 42
18. Amplidute response of highpass filters using theHamming window with a)c=0. Sir for various N , . 43
19. Amplitude response of highpass filters using theKaiser-Hafris window with ojc=0 . Sir forvarious N .................. . 44
20. Amplitude response of highpass filters usingthe Hamming window or the Kaiser-Harriswindow for various cutoff frequency . . . . . 45
21. Amplitude response of 6th-order Butterworthhighpass filters for various cutofffrequency . . . . . . . . . . . . . . . . . . 46
22. Ideal linear FIR system ..................... 4723. Statistical model for floating-point rounding
error . ........................ 4824. Statistical model for fixed-point rounding
e r r o r ............. 55
LIST OF TABLES
Table Page1. Comparison, of lowpass filters for various
windows with N=3l, a)S=2Tr, and toc=0.6ir . . . . 142. Peak ripples in passband of lowpass filters for
various N . . . i, . . . . . . . . . . . . . . 233. Coefficients of lowpass filters . . . . . . . . . 284. Coefficients of bandpass filters with N=81 . . . 385. Upper bound of ar^/CTx^ floating point
realization ............... 546. Upper bound of a r^/ax^ in fixed point
realization . -. . . . . . . . ........... 61
vii
ABSTRACT
This thesis is a simulative design of linear Finite Impulse Response (FIR) filters which are specified to be used in a Fourier Transform Spectrometer system. The constant delay time of these filters is a very important factor for this application. A Fourier series approximation is used for the design of lowpass, bandpass, and highpass filters. Several window functions are investigated to determine improvements in performance. The amplitude response.of various filters i s .shown s o .that comparisons can be made. The best approximation and window function are then chosen.to meet the specifications. In addition, the error of a general linear FIR filter due to the finite word length realization is described by using statistical models. Tables of noise to signal ratio are given and used to select an appropriate word length. The thesis concludes with a summary and some suggestions for future' work.
CHAPTER 1
INTRODUCTION\ - . .A Fourier Transform Spectrometer is a device which
allows the spectrum of light applied as input to the instrument to be determined from the Fourier Transform of the output of the interferometer shown in Figure 1 (Me C u m in, 1981). An interferogram is formed at the detector output with an intensity, function given by:
I (X) = f°z $( o) cos (27rcrX) dcr: (1.1)Cl
where:X = the path difference (X^-X2 )
8(a) = the input light frequency spectrum, assumed to be bandlimited between and 0 2
The input spectrum 8(c) can be recovered by00
8(c) = f I (X) (cos 2irX) dX (1.2)o
The interferogram is sampled as a function of optical path difference. The imperfections of the control system mainfest themselves in the form of sampling position error. This error results in the production of false spectral sidebands or ghosts. On the other hand, any practicalsystem requires a lowpass or a bandpass filter to prevent
■ 1
SOURCE (X^
Ref l ect i ng Sur f ac e * 1IT
1r T , f B E A M
S P L I T T E R -
w
! x
l-
r
\
Re f l e c t i ng Sur f ace # 2
%! 'I i
yD E T E C T O R
I N T E N S I T Y I ( X )
i i
->- X G (X1"X 2 )I (x ) - / y9(<7)[cos zncrx] 8(7
/3(o) « y I(X)[cos zncrX] 8x
Figure 1. Basic Fourier Transform Spectrometer (McCurnin, 1981).
aliasing of frequencies above the system Nyquist frequency. Therefore, a significant second order error results from the interaction of path-difference velocity errors with the amplitude and phase characteristics of the filter. Several techniques are used to sample at the correct path difference and to eliminate the errors. It has been shown theoretically and experimentally that spectral errors resulting from path velocity variation could be reduced if the mean delay of the filter was removed when attempting to achieve equal path difference sampling (Nishiyama, 1975).
An optimization procedure that achieves very significant improvement over conventional filter techniques has been developed recently (McCurnin, 1981). Elements of the approach are outlined below.
- A ba-sic filter design with amplitude characteristics that suppress the generation of amplitude ghosts over the lower part of the passband is chosen as a starting point.
- The phase characteristic of the filter chosen above is optimized over the lower part of the passband. This results in a non-minimal delay filter.
- The above delay characteristic optimization is accomplished by'fitting "all-pass" networks to achieve constant delay in the lower part of the passband.
4- Data is restricted to the lower, optimized, por
tion of the filter and the system is oversampled. That is, it is sampled at the Nyquist rate of the filter. The resulting data is transformed and the higher frequencies ignored, or the data can be digitally filtered before it is transformed.
As was discussed by MeCurnin (1981), the second order error effect results from interaction of the velocity modulated interferogram and the alias rejection filter.The sampling process defines a new lowpass function. Once
' ' /this function has been formed, subsequent filtering, such as that described in this thesis, is a linear operation and does not contribute to the second order error effect.It is, however, desirable from a data reduction and interpretation viewpoint that such filtering not alter the phase/ amplitude relationships of the data. Therefore, digital filters for use with continuous motion Fourier Transform Spectrometers should have the following characteristics.
- Flat amplitude and constant delay pass-band response.
- Good rejection band attenuation to allow the number of samples to be reduced to those requiredby the filter pass-band without increased noise resulting from alias effects.
5- Noise introduced by quantizing/round-off effects
in the digital filter should be negligible soto not degrade the passband signal-to-noise ratio.
- The filter digital realization must be as simpleas possible and amenable to real-time realization.
• - 'In this study, Finite Impulse Response (FIR) digital
filters are investigated. Butterworth filters are selected as prototypes to avoid ripple in the passband in the designs of lowpass, highpass, and bandpass digital filters. The final realization must also have constant delay.
In order to get the constant-delay property, the basic digital filter is developed from a Fourier series approximation to an ideal analog lowpass filter. The low- pass, highpass, and bandpass designs are developed from this basic digital filter, but certain windows are used to improve performance.
The FAD program has been used to find the frequency response of each digital filter^ (Wait, 1981). This program can compute and plot more than six different outputs on the same graph. From the plotted graphs, comparisons can be made easily by inspection. It also gives the delay time versus frequency. From this, whether the delay time is constant or not can be checked.
6Chapter 2 states, the advantages of FIR filter
designs, and it compares several trigonometric windows.From these windows, the best ones for meeting the desired response are selected.
In Chapter 3 the designs of lowpass digital filters using the Hamming window and the Kai ser-Harri s window are discussed.
Chapter 4 describes the direct method and the cascade method for the designs of bandpass digital filters by using the Hamming window and the Kaiser-Harris window.
Chapter 5 concerns two statistical models describing errors of FIR linear digital filters due to finite word length. Tables of noise to signal ratio are given, and used to select an appropriate word length.
Finally, the results are summarized in Chapter 6, and some sugestions are given for future work.
CHAPTER 2
WINDOWS USED IN THE FINITE IMPULSE RESPONSE (FIR) DESIGN .
The Advantages of Finite Impulse Response Design
In the case of causal systems with finite-durationimpulse response, the z-transform of the system functionis .
N?1 -nH(z) = L h(nT) z (2.1)n—0
whereT = sampling period
-1H(z) = a function in z of degree N-l, with N-lpoles at z = 0 and N-l zeroes in the 'z-plane
First, we assume that N is odd, and that
h (nT) = h [ (N-l-n) T] for 0 <_ n <_ N-l
Thus Eq. 2.1 can be written asN-l N-l _ N-l
H (z) = z 2 [h (0)(z 2 + z 2 )
N-3 N-3+ h (T) (z 2 +, z 2 ) + ... + h(^J^T)] (2.2)
its frequency•response is given by
H(e ^ , - +
j io T+ h(T) (e + e )
+ ... +
e 2 [2h(0) cos (^^toT) f 2h (T) cos (^^coT)
+ ... + h(^i) T]
= M (w) e- 9
where
M(m) = 2 [h(0)cos (^L^oiT) + h(T)cos (2^o)T) + .
+ 35h(HrlT )]
and
6-(to) = (2. 3)
Thus the FIR filter has a linear phase function 6(a)).Taking the derivative of Eg. 2.3 with a), delay time t can be obtained:
T — . . ( 2 . 4 )
From Eg. 2.4., the FIR filter has constant delay time which is independent of frequency.
9Similarly,the frequency responses for the case of
symmetrical impulse response with N even and for the two cases of antisymmetrical response can achieve the results of linear phase and constant delay (Antoniou, 1979).
Thus, FIR filters with symmetrical coefficients or antisymmetrical coefficients can easily achieve constant delay in the frequency response. This is an advantage of FIR filters that cannot be easily obtained using Infinite Impulse Response (HR) filters (Antoniou, 1979) .
In this study, only a computer simulation has been made. The FAD program is used as an elegant tool to analyze the frequency response of digital filter. • This program was developed by Wait (1981).
An Unwindowed Lowpass Filter DesignAn ideal lowpass filter has a frequency response.
fort'<77where
andtoc = the cutoff frequency
aj = the sampling frequency sThe impulse time response can be obtained by using the Fourier transform.
(tig . .
h (nT) = - / 2 H(e3wT)e: nTdw^s “s
= _l / "fc dw3 -“c
= n? sin U cnT
Meanwhile,
1h(-nT) = h(nT) = — sin to cnT
A finite-order z-transfer function for the lowpass filter can be constructed from these coefficients. The function is
N—12 _
H (z) = h (0) + V [h (-nT)zn .+ h(nT)z n] (2.6)■ n=l •'
N-l?Multiplying Eg. 2.6 by z , H'(z) is obtained from ,
N-l ~ 2H' (z) = z H(z) .
■ N-l _ N—1 2
= z 2 { I [h(-nT)zn + h(nT)z~n ] + h(0)} (2.7) n=l
N-lThis multiplication only increases the delay by T and does nothing to the frequency response. Due to the symmetrical coefficients in H(z), H ’(z) has constant delay ^y^T.
Due to the truncation of the Fourier series, a Gibbs' oscillation occurs in the passband and stopband. As N increases, the frequency of the Gibbs' oscillation increases. The amplitude, however, decreases at both low and high frequencies (Harris, 1978).
10
(2.5)
11Use of Window Function ■
An easy way to reduce Gibbs' oscillation is to multiply h(nT) by a finite-duration symmetric window function w(nT) ./ Let
h (nT) = w(nT)h(nT) N-l
The new coefficient , (nT) produces a new digital filter.Let H (z) be the z-transform of w(nT)h(nT). Then the fre-w •quency response of h^(nT) can be obtained by using complexconvolution. This gives
2jr . ■Hw (ela)T) = ^ j T H(e'3 6T) W(e^ (y-6)T) d6 (2.8)
where
W(z) = I w (nT) zn=-°o—n
Trigonometric Windows Many window functions have been analyzed (Harris,
1978). Several trigonometric windows are examined to find those that can reduce the Gibbs' oscillation to the greatest degree with a small N.
The trigonometric windows can be expressed as
!m=0 m - 0
w(nT) - |_am cos [^§jmn] for |n| < N-l (2.9)
otherwise
12Also
k 9-n-w [ (N-n-1) T] = cos [— m (N-n— 1) ]m=0
k 2tV COS 531= w(nT)
Hence, the weighting is symmetric aboutThe frequency response of the window function is
k aw(ejajT) = J y 5 [D(h)T~ n =1 m) + D(w"T + N=lm)] (2.10) m=0
wheresin.(SuT)
D(ajT) = Zsin wT)
and the weighting is normalized according to
mio 3™ = 1
From Eq. 2.10, W(e2wT) contains the Dirichlet kernel D(a)T) at the origin and several pairs of shifted kernels to the right and left. Because of their phase difference, the summation of these kernels tends to cancel the sidelobes, and the small sidelobes of make Eg. 2.8 have very small ripplebehavior.
Several windows with good sidelobe behavior are tested in the lowpass filter design. These windows are
13represented as Eg. 2.9. Their coefficients are (Nuttall, 1981)
- Hann window? k = 1, Sq = a^ = 0 . 5- Hamming window; k = 1 r a^ = 0.54, a^ = 0.46- Blackman window; k = 2, a^ = 0.42, a^ = 0.5,
a 2 = 0.08- "Minimum sidelobe" 3-term window; k = 2,
a0 = 0.42323, a^ = 0.49755, a2 =0.07922- "Rapid decay" 3-term window; k = 2, a^ = 0.40897,
a^ = 0.5, a 2 = 0.09103- "Rapid decay" 4-term window; k = 3, a^ = 0.338946,
a1 = 0.481973, a-2 = 0.161054, a^ - 0.018027- "Minimum sidelobe" ,4-term window; k = 3
a0 = 0.3 635819, a1 = 0.4891775, a2 = 0.1365995, a^ = 0.010641
- Kaiser-Harris' window (Harris, 1978); k = 3a0 = 0.40243, a^ = 0.49804,a2 = 0.09831, a3 = 0.00122
Using these windows and Eg. 2.5, the coefficients of the lowpass filter can be expressed as
h(nT) = [^-sin (cacnT) ] • w (nT) for 0 <_ n <
andh(N-h-1)T = h(nT)
These coefficients were used with the FAD program to find the frequency response. Figure 2 shows the response in the
14transition region and stopband, and Figure 3 shows theresults in the passband for various windows. In these plots,N = 31, a) = 2n and w = 0.6m. Table 1 shows a comparison s cof the windows.
Table 1. Comparison of lowpass filter for various windows with N=31, u)s = 2tt, and ujc =0.6tt
Type of window used
Mainlobe
widthi n )
Peak side
, lobe (dB)
Lowpass filter ,w c= .6n )
Transitional interra (~3dB to -40dB)
Peak ripple in passband
Attenuation in stopband (dB)
Honn .258 -34.5 .125 tt 6.2 X 10 3 - 4 4
Hamming .258 —43.2 .126 TT 2.1 x I0~3 - 5 4
Blackman .3 87 -58 .1 .1718 TT 1.7X10-' - 7 6
Minimum sidelobe 3 - term .387 -70.8 .172 TT 5.0X IQ”5 - 8 7
" Rapid decay" 3-term .387 -6 4 .2 .174 n 9.0X I05 - 7 9
Rapid decay 4 term
.516 -93 .3 .211 TT 2.0X1 O'5 - 9 8** w
Minimum sidelobe 4 term . 5 / 6 -9 8 .2 .200T7 2.3X1 O’6 -1 0 4
Kaiser Harris .402 - 7 0 . .177 TT 8.0 X I0"5 - 8 2
From Table 1, we see that the small sidelobes of the 4-term windows make small ripple (to 10_4%) in passband and attenuation (to -100 dB) in stopband. However, 4-term windows with large mainlobes have a slow decline in the transition region so that they need large N to achieve a steep
15transition region. On the other hand, 2-terra windows, whether Hann or. Hamming windows, get steeper cutoff in the transition region but large ripple (to 1%) in the passband„ 3-term windows provide intermediate ripple and transition properties.
The Hamming window is better than the Hann window, as can also be seen from Table 1.! Both of them have almost the same slope in the transition region, but the Hamming window gets less ripple in the passband and more attenuation in the stopband. Therefore, the Hamming window was chosen for the designs reported here.
To provide a comparison, the Kaiser-Harris window was also used as an example in future chapters.
Gain
(dB)
-140
-ipo
-ion
-80
-An
-40
-20
16
1 = Hamming2 = Hann
. 3 = 'M in im um sidelobe' 3 -te rm4=B lackm an5 = jR a p id decay'3- te rm 6 = 'R a p id decay term 7= K a is e r- H arrisg='M inim um sidelobe 4 -te rm
.5TT .6n . 7 t t . 8 t t .9TTNormalized cu (rad/sec)
Figure 2. Amplitude response of lowpass filters with cu = 0 . 6 tt , showing the transition region and stopband for various trigonomic windows (N=31).
Gai
n (x
lO-3
dB)
Figure
17
wn
1 ^Hamming 2=Hann3='Minimum sidelobe"3-term
“ 4= Blackman 5 = *Rapid decay"3-term 6-"R ap id d e c a y s -te rm 7=Kaiser-Harris 8= 'Minimum s idelobe '4 -term
cn 4rr2TT
Normalized y(rad/sec)
Amplitude response of lowpass filters with (jUc = 0.6-rr, showing the passband for various trigonomic windows (N=31).
CHAPTER 3
LOWPASS DIGITAL FILTER DESIGN
6th-Order Butterworth Lowpass Filter This analog filter is regarded as the prototype.
Some properties of 6th-order Butterworth lowpass filter are . investigated. We will then try to design a digital filter that can match the prototype closely.
The equation for the 6th-order Butterworth lowpass filter is represented as
N ( oj ) = to / (-to6 + j 3 . 863703to to5 + 7.464102(0 2 to4• C C C
- 19.14162(0 3to3 - 7.464102(0 4co2 ' c c
+ j3.863702(0c5 (0+(0c6) (3.1)
(Huelsman, 1980)where
(oc - the cutoff frequency and -
uc < Tr-The amplitude response for different coc is illus
trated in Figure 4.. It•is evident that there are differentslopes in the transition region for different to . When toc c
Gai
n
Wc.4n .5n.2n .7n .8n.60
CN
o .20 .3o .70 .80.4o .60 9oNormalized w(rad/sec)
Figure 4. Amplitude response of 6th-order Butterworth lowpass filters for various cutoff frequencies.
20becomes smaller, the transition region becomes steeper, and vice versa. ..
Use of the Hamming Window in Lowpass Digital Filter Design
The Hamming window provides a good transition region in the lowpass filter. If. the size of ripple in the passband and attenuation in.the stopband are not critical, it will be an ideal window for application and for economy. Figure 5 was calculated for different cutoff frequencies w^ with N = 31. . The curves in Figure 5 are always parallel for different (jl)c • In view of this phenomenon, the lowpass filters can be easily translated in frequency.. This occurs because the transition region is always equal to the width of mainlobe of the window as w is varied in Eq. 2.8. This can be easily seen from Figure 6.
It is useful to know how the transition regionchanges with N. A group of lowpass filters was designed fordifferent N, as shown in Figure 7. Every curve passesthrough 0.5 at the cutoff frequency. This can be explainedwith reference to Figure 6. No matter how the width of themainlobe changes with N, w (e^ provides 0.5 area in
ifiTH (eJ ) at the cutoff, frequency ojc . Therefore, the transfer function is 6 dB down instead of 3 dB down at the cutoff frequency for this kind of filter when the window is used.
1 — H am m ing2 — Kaiser-H arris
00
Bn.3tt 7n•6rr•4nrad/sec
CN
o.2n , 3 tt ,4n .5n
Normalized w(rad/sec).ITT .771 9n.8n
Figure 5. Amplitude response of lowpass filters using Hamming window and Kaiser-Harris window for various cutoff frequencies.
22
wb
tWc2 n
wb
Figure 6. The effect of a window function for different cutoff frequencies.
The ripples in the bandpass for different N are shown in
Figure 8 and Table 2. From Table 2, the peak ripple is on
the order of 10 ^ , and is almost independent of N. From Figure 8 , as N increases, the frequency of the ripple increases , but the amplitude decreases at low frequencies.
Also, the edge of the passband is extended in frequency as N
increases. The short transition region for large N makes a
good lowpass filter. But large N increases cost and calcu
lation time. Therefore, N should be chosen as small as
possible while still meeting the specification. The
Gai
n23
Table 2. Peak ripples in passband oflowpass filters for various N
NPeak r ip p le ra tio
Hamming Kaiser-Harris
I I 2 .M XI O'3 1.3 XIO-1
15 3.91 XIO"3 1.1 Xld"1
21 3.1 XIO"3 8 XIO"5
31 2.36 X I0"3 9 XIO5
51 2.07XI03 8 XIO"5
71 1.9 XIO"3 9 x ld5
101 2.03 XIO*3 6 x id5
N=H00
A 256-pole Bufterworih bandpass filter with >t)”.5n.Q=10
.an.3n \5n .anNormalized co (rad/sec)
.9n
Figure 7. Amplitude response of lowpass filters using the Hamming window with u)c = 0 . 6 t t for various N.
Gain
kl
O^d
B)
N= II
D -
<N -
Normalized w(rad/sec)
Figure B. Ripples in passband Hamming window for different values of N. K>4.
- . . ■: . ■ ' ■ . 25.following is an example of a FIR lowpass filter design using the Hamming window.Specification:
1. 6th-order Butterworth lowpass with w = 0.6tt as prototype
' ' - ' 32. Ripple in passband less than 3x10, 3. Attenuation in stopband greater than 50 dB
The Hamming window will meet specifications 2 and 3. Thus, we compare the slope of the transition region between those in Figure 4 and Figure 7. N greater than 13 is sufficient.N = 21 is then chosen for an overdesign. Since the digital filter amplitude response is -6 dB at cutoff frequency, the cutoff frequency is shifted a little to the right in order to reach -3 dB at 0.6w. The result is shown in Figure 9.The amplitude of the filter is greater than that of the prototype before the cutoff, and smaller after, the cutoff frequency. Thus the filter is better than the prototype. The 21 coefficients of the filter are listed in Table 3. Note that for a Butterworth lowpass filter with cutoff frequency at 0.1, N greater than 81 is needed. This can be seen from Figure 4 and Figure 7.
Use of the Kaiser-Harris Window in Lowpass Digital Filter Design
The Kaiser-Harris wondow can supply small ripple- 5(to 10 ) in the passband and good attenuation.(to -90 dB) in
the stopband. However, the transition region using the
26Kaiser-Harris window is not so steep as that obtained by using the Hamming window. The lowpass filter using, the Kaiser-Harris window can also be translated in frequency as shown in Figure 5. A group of filters for different N are shown in Figure 10. In comparing Figure 4 with Figure 10,. the smallest N to design the 6th^order Butterworth filter with cutoff frequency at 0.6m is 21. Let N equal 31 and with a small frequency shift as before, a good lowpass filter using the Kaiser-Harris window can be obtained as shown in Figure 11. The constant delay time is 15 seconds. The coefficients .of the filter are listed in Table 4. The ripples in the passband for different N are shown in Figure 12. Peak ripples for different N are listed in Table 2. These have the same characteristics as those of the .Hamming window filter but with smaller values.
For a design, of a Butterworth lowpass filter with cutoff frequency at 0.1m, N=101 is required when using the Kaiser-Harris window, whereas N=81 is sufficient when using the Hamming window. This means that the Kaiser-Harris window costs more money, but provides a better filter than the Hamming window.
Gai
n
A= Lowpass filter with W c=.64n rad/sec,N = 21
8= 6 -o rd er Butterworth filter withW c=.6n rod/sec
o
.2n .3n .6n.4n .5nNormalized w(rad/sec)
.8n.7n
Figure 9. Comparison of digital lowpass filters using the Hamming window and Butterworth prototype.
M
28
Table 3. Coefficients of lowpass filters
Ham m ing N = 21
Kaiser—Harris N = 3 ?
, 2 4 2 1 0 5 6 . 0 2 - . 2 a 8 l 9 6 & _ 0 2 - . 2 a . 5 8 5 7 E . 0 2
, l 2 2 3 t > l E . 0 i - , l 0 l t 6 2 E _ 0 1 - . 2 0 2 0 0 4 6 . 0 1
. 5 3 3 2 2 1 6 . 0 1 - . 2 1 3 8 3 4 6 . 0 i - , 11 1*5 -86 + 0 3
, 2 8 1 5 3 1 6 + 0 3 . 8 4 0 0 0 0 6 + 0 2 . 2 8 1 5 3 1 6 + 0 0
- . 1 1 1 8 5 8 6 + 0 2 - . 2 1 3 8 3 4 6 . 0 1
. 5 3 ^ 2 2 1 6 . 0 1 " , 2 3 2 0 0 6 6 . 0 1 - . 1 9 1 6 8 2 6 . 0 1
. 1 2 2 3 0 1 6 . 0 1 - . 2 4 5 8 5 7 6 . 0 2 - . 2 4 8 1 7 6 6 . 0 2
, 2 o 2 1 8 5 6 . 0 2
^ , 31 1 5 * 9 6 . 0 4 , 2 7 8 6 ^ 9 6 . 0 4 . 2 3 4 7 5 6 6 . 0 ?
- . 7 ? 4 7 2 6 E . 0 l . 2 1 7 7 * 5 6 . 0 4 , 3 0 3 7 8 4 6 . 0 ?
T . 4 5 * 3 6 5 6 . 0 ?2784 .71 6 . 0 ?
, 1 6 0 9 2 3 6 . 0 1 - . 1 3 7 9 2 4 6 . 0 1 - . 2 0 5 0 3 7 6 1 0 1
, 5 7 0 9 7 7 6 . 0 1 - . 2 5 2 6 2 4 6 . 0 1 - , 1 1 0 * * 8 6 + 0 0
, 2 8 4 0 1 3 6 + 0 0 , 6 3 8 0 0 0 6 + 0 0 , 2 * 4 0 1 3 6 + 0 0
- . 1 1 6 ) 8 0 * 6 + 02 - . 2 5 2 6 2 4 6 . 0 1
, 5 7 0 9 7 7 6 . 0 1 - . 2 0 5 0 3 7 6 . 0 1 - , 1 3 7 9 2 4 6 . 0 1
. 1 6 0 9 2 3 6 . 0 1 - . 2 7 6 4 7 1 6 . 0 2^ , 4583656.02
, 3 0 3 7 0 4 6 . 3 ? , 2 1 7 7 6 5 6 . 0 4
- . 7 3 4 7 2 6 6 . ?3 . 2 3 4 7 5 6 6 . 0 3 , 2 7 6 6 ^ 9 6 . 0 4
- , 3 i 1 5 * 9 6 . 0 4
Gai
n
A = 6 -o rd er Butterworth lowpass filter with Wc = . 6 TT rad/sec
B= 6 —pole Butterworth bandpass filter- with Wo = . 5 IT rad/sec ,Q = 10
00
(N
.3n .4ir .5 ti .6 h
Normalized gu (rad/sec).8n.7 n
Figure 10. Amplitude response of lowpass filters using the Kaiser-Harris window for various N.
K)VO
Gai
n
A=Lowpass filter with W c = . 6 2 8 n lad/sec B = 6-order Butterworth filter with
W c = .6 li rad/sec
oo
CN
.In . 2 tt .3n .4ir .5nNormalized go (rad/sec)
.70,6n .90
Figure 11. Comparison of digital lowpass filters usingKaiser-Harris window and Butterworth prototype.
U)o
C N f
,N=tl
___________ u/ " , 3 Tf
Normalized u) (rad/sec)
Figure 12Ripples in passband using the Kaiser-Harris window for various N.
CHAPTER 4
where
and
let
BANDPASS DIGITAL FILTER DESIGN
6-Pole Butterworth Bandpass Filters The equation of the prototype (Huelsman, 1980) is;
Nb p (s) = B W 3 s 3/ [ s 6 + 2BWs5 + (3coo2 + 2B W 2 )s 4
+ (4BWaj02 + BW3).s + (3(joo4 + 2BW2w^2)s
4 6■ + 2BWcoo s + a) ]•■
BW = bandwidth of the 6-pole bandpass filter
oj- = the center frequency
u)o = 0.Bit (rad/sec)
Eight different bandwidths are examined and the corresponding transfer functions are shown in Figure 13. For a small band-, width, or high-Q filter, the slopes of the rising region and falling region are much steeper than those of a low-Q filter. Also, the rising region is a little steeper than the falling region for each filter.
32
Gai
n
00-
o
.3n.2n .4rr .5nNormalized w(rad/sec)
.7n
Figure 13. Amplitude response of 6-pole Butterworth bandpass filters with u)o = 0 . 5tt for various Q.
wU)
34Direct Design for Bandpass
Digital FiltersThe first method used in designing a bandpass digital
filter with constant delay time is to subtract one lowpass filter from the other. By using Eg. 2.5, the coefficients of the unwindowed filter can be represented as
hb (nT) = ni [sin(h)c22nT)"sin(McllnT)]where
and
t0c22 = the cutoff frequency of lowpass filter 2 0}c-q = the cutoff frequency of lowpass filter 1
a’c22 > “ellObviously,
h ((N-n-1) T) = h(nT)As before, a window function is needed to reduce the Gibbs' oscillation. The new bandpass filter is obtained by letting
hw(nT) = w(nT) h^(nT)where
w(nT) - a finite duration window function It is clear that
hw ( (N-n-1) T) = h w (nT) and that there is a constant delay ^"^T.
Since the rising region is steeper, than the falling . region in a Butterworth bandpass filter, N in Figure 7 or Figure 10 corresponds to the slope of the rising region
35of the prototype only. From Figure 7, we choose N=101 to design the Butterworth bandpass filter with Q=10 by using a Hamming window. More than 101 taps are required when using the Kaiser-Harris window to simulate the same analog filter. For the bandpass filter of Q=50 in Figure 13, a very large value of.N is required to match the prototype.
As an example of designing a bandpass digital filter, the analog filter with Q=5 is chosen as a prototype. AfterN is selected, ioc^ is properly shifted to the left of
(Uq - ^f)- and (j0C22 ProPerly shifted to the right of(w + in the design. The. results are shown in Figure 14o zand Figure 15 for the Hamming window and the Kaiser-Harris window. The corresponding coefficients are listed in Table3. Table 3 also shows the effects of coefficient truncation due to the binary word length used for storage. The columns labeled "64-bit" and "16-bit" are the results for these degrees of precision in coefficient representation using roundoff. These effects will be discussed further in Chapter 5. The ripples in the low frequency stopband for N=61 and N=81 are also shown in Figure 16 and Figure 17.
Cascade Method for Bandpass Digital Filter Design
Another method for designing a bandpass filter is tocascade a highpass filter with a lowpass filter. In orderto keep constant delay in the highpass digital filter, wesubtract a lowpass filter with cutoff frequency w^ from a
36lowpass filter with cutoff frequency at u . Using Eg.2.5, the coefficient for the highpass filter can be obtained from:
hh (nT) = — [sin(7rnT)-sin (ojcnT) ] (4.2)
Two groups of highpass filters for different N using the Hamming.window and the Kaiser-Harris window are shown in Figure 18 and Figure 19. They are also translatable in frequency, as can be seen in Figure 20. The 6th-order Butterworth highpass filters for different cutoff frequencies are shown in Figure 21. . Since the value of N needed in the cascade method is the same for each section as that needed in the direct method, the cascade method is not an economical design for a bandpass digital filter.
In the next chapter, the errors resulting from a finite word length in the direct form structure will be investigated.
Ga
inA = Fcn=.22 , Fc22=.2Q4; N=81 B = Fcil=.22 , Fc22= 283 /' N = 6 l C = 6-pOle Bufterworth bandpass
with Wo=. 5 ft rad/sec ,Q = 5
00
O
<N
5 nr 6 nNormalized a) (rad/sec)
2rr 4n3n 7rr 9n8n
Figure 14. Comparison of digital bandpass filters using the Hamming window and Butterworth prototype.
38Table L. Coefficients of bandpass filter with 11=81
Hamming6 4 ^ b i t
Hamming 1 6 - bit
K a i s e r - H a r r is 6 4 —bit
K a is e r -H a r r is 1 6 - b i t
O9 7 9 6 5 71OE«0l o 759 58648E=0 3
- o l l 8 1 7 0 1 4 E - 0 2 “ o83706361E-03
o l34 1 3 0 67 E -0 2 o 8 3 H 8 7 0 1 E ” 0 3
° o12854927E“ 02 “ .o 62143848fc“ 03
o7 2 7 7 3 1 8 5E"03 o 86103402E"04 o635l35,96E"08 o 823 58 344E"03
“ e 29720919E*=02 ° o 2 0 2 33519E “ 0 2
o'6 15 49 5 3 6E °0 2 o 3 2 7 6 8 4 1 9 E " 0 2
= o 963 84609E"02 "o 42321293E-=D2
0 1.2 4 3 620 6 E "31 o45098041E-02
" o 13 22 5 3 71E -O' 1 "o38198630E"02
o105 80051E"0 1 o 20721590E"02
= o 32948 966E"02 o 5 5 6 6 1037E"0 3
" o 9 2 7 i3 2 3 3 E " 0 2 " o 3 6 2 6 1 6 2 8E"02
o 2 6 9 1 8766E"01 o65133066E"02
"o48476598E"01 =o 855 3 9 4 4 4E = 02
o 718 71948E"01 o 9 210 5580E"02
"o94404508E"01 = o 8 219 3898E " 0 2
o l l 3 l 8 3 l 3 E > 3 0 O56748694E"02
"o 1256 38136*00 "o20249141£=02
o133000Q06 *00 "o20249141E"O2 " o 125638136*00
o567486946"02 o113183136*00
"o82193898£"02 "o 9 4404508 E"01
o 9210558 0E"02 o 718 71948E“ 0 1
"o855394446"02 " o 484765986 -31
o 6 5 i3 3 0 6 6 £ "0 2 o 2 6 9 1 8 7 6 6 E -0 1
"o 3 6 2 6 1628E-02 "o 9 2 7 l3 2 3 3 E "0 2
o55o61037E-O3 " o 329489666=02
o 2 07215906=0 2 , 105 8 00516 = 01
"o 38198 6 306=0 2
o 9 7 6 5625 0E — 03 o 7 6293 945 E-0 3
- o l l 9 0 1 8 5 5 E " 0 2 — o 8 2 3 9 7 4 61 £ "0 3
o 13 42 773 4 E-0 2: o8 239 7461E"03i
” o l2817383E "02 " o 6 l0 3 5 l 5 6 E " 0 3 : o73242186E"03
o91552734E"04 . o 6408 6914 6-0 3
o8239746 I E -0 3 " o29502051£"02 "o 2 01416026=0 2
o 6 1 6 4 5 5 0 8 E " 0 2 o32653 809E"0 2
"<,964355476=02 -< ,424194346-02
o124511726-01 o4516601oE=02
- o1 3 2 1 4 111 6 = 0 1 =o38 1 4 6 9 7 3 6 -0 2
o 10589 6006-011 o20751953E=0 21
= <,329589346-02 o 549 316416=0 31
- , 9 2 7 7 3 4 3 8 6 - 0 2 - ,3 6 3 1 5 9 1 3 6 -0 2 :
,269165046=01 ,6 5 0 0 2 4 4 1 6 -0 2
- , 4 8 4 6 1 9 1 4 6 - 0 1 - ,3 5 4 4 9 2 1 9 6 = 0 2
,718688966=01 , 9 2 1 6 3 0 8 6 E - 0 2
= ,9 4 3 9 0 8 6 9 6 —01 - , 8 2 0 9 2 2 8 5 6=0 2
, 1 1 3 1 8 9 7 0 6 *0 0 , 5 6 7 6 2 6 9 5 6 -0 2
= ,1 2 5 6 4 0 8 7 6 * 0 0 - , 2 0 1 4 1 6 0 2 6 - 0 2
,1 3 0 0 0 4 8 8 6 *0 0 201416026=02
- , 1 2 5 6 4 0 8 7 6 * 0 0 ,5 6 7 6 2 6 9 5 6 -0 2 ,1 1 3 1 8 9 7 0 6 * 0 0
- , 8 209 223 5 E -0 2 - , 9 4 3 9 0 8 6 9 6 - 0 1
, 9 2 1 6 3 0 8 6 6 -0 2 ,7 1 8 6 8 8 9 6 6 -0 1
- , 8 5 4 4 9 2 1 9 6 - 0 2 - , 4 8 4 6 1 9 1 4 6 - 0 1
,6 5 0 0 2 4 4 1 6 -0 2 ,269165046=01
- ,3 6 3 1 5 9 1 8 6 = 0 2 - , 9 2 7 7 3 4 3 3 E -0 2
,5 4 9 3 1 6 4 1 6 -0 3 = ,3 2 9 5 8 9 8 4 6 -0 2
,2 0 7 5 1 9 5 3 6 -0 2 , 1 U 58 9 600 6—0 1
- , 3 8 1 4 6 9 7 3 6 - 0 2
O1 8 123656E- 0 4 ,1 7 1 5 35296-04
=>, 4 0 4 6 0 4 0 IE =04 - , 4 3 5 0 1 3 9 0 6 - 0 4
o992192636=04 , 8 2 0 2 2 3 3 1 6 - 0 4
= ,1 6 06 8 9 5 96 = 0 3 —,9 4 6 4 8 7 9 5 6 = 0 4
,1 3 1 2 0 9 576-03 , 1 7 9 8 6 2 6 9 6 -0 4
. , 1 5 1 2 1 9 3 2 6 -0 3 ,220665 7 4 6= 0 3
= , 88 70 48 7 9 6 -0 3 = ,6 6 7 0 6 1 4 7 6 -0 3
,222554476=02 , 1 2 9 1 5 0 2 0 6 - 0 2
- o 4 1 1 7 9 6 8 8 6 -0 2 - , 195029 526=0 2
,6 1 5 3 13 2 4 6= 0 2 , 2 3 8 5 4 3 2 5 6 -0 2
= , 744833296=02 = ,2 2 8 1 7 5 0 4 6 - 0 2
,6 6 7 8 46206 -02 , 1 3 7 7 3 3 6 0 6 -0 2
= 02 2 9 8 2 5 4 4 6 -0 2 ,4 0 6 0 7 1 9 6 6 -0 3
- ,7 0 5 1 5 3 2 0 6 = 0 2 = ,2 86620756"02
, 2 2 0 4 4 0 9 9 £ - 0 1 , 5 509 34586-0 2
= ,4 2 2 2 7 9 0 1 6 = 0 1 - , 7 6 5 1 2 1 4 5 6 - 0 2
, 6 5 8 2 1 1 4 3 6 - 0 1 ,861181 6 9 6= 0 2
= ,8 9 8 6 2 4 9 0 6 = 0 1 = , 7 9 4 3 0 5 1 4 6 - 0 2
, 1 1 0 735 306*0 0 ,5 6 0 5 55 8 1 6= 0 2
- , 1 2 4 9 5 4 1 9 6 * 0 0 - , 2 02215366=0 2
, 1 3 0 0 0 4 8 8 6 * 0 0 = ,2 0 2 2 1 5 3 6 6 -0 2
,1 1 0 7 3 5 3 0 6 * 0 0 - = 794305146-02 = ,8 9 8 6 2 4 9 0 6 -0 1
, 8 6 1 1 8 1 6 9 6 -0 2 , 6 5 8 2 1 1 4 3 6 - 0 1
— , 765121456—02 - , 42227 9 0 16 -0 1
,550934 5 8 6= 0 2 =220440986 -01
= . ,2 8 6 62 0 7 5 6 -0 2 - ,7 0 5 1 5 3 2 0 6 = 0 2
.» 4060719.66=03 = , 229825446 -32
,137733606=02 ,56 7 8 46206 -02
= , 228175046 -02
,30517578 6-0 4 ,305175786=04
= ,3 0 51 7 5 7 86 = 0 4 - , 3 0 5 1 7 5 7 8 6 = 0 4
, 9 1 5 5 2 7 3 4 6 -0 4 ,9155 2 73 4 E-0 4
— ,15258 73-9 E - 0 3— ,9 1 552734 6^0 4
,1 2 2 0 7 0 3 1 6 -0 3 ,305175 7 8 6= 0 4
' , 1 5 2 5 8 7 8 9 E—03 ,2 1 3 6 2 3 0 5 6 -0 3
- , 8 8 5 0 0 9776 -0 3 - , 6 7 1 3 8 6 7 2 6 - 0 3
=222778326-0 2 ,1 2 8 1 7 3 8 3 £ -0 2
= ,4 1 1 9 8 7 3 0 6 = 0 2 - , 1 9 5 3 1 2 5 0 6 -0 2
,61645508 6=02 ,2 3 8 0 3 7 1 1 6 = 0 2
- , 7 4 4 6 2 8 9 1 6 = 0 2 = ,2 2 8 9 8 1 8 4 6 - 0 2
, 6 6 8 3 3 4 9 6 6 -0 2 , 1 3 7 3 2 9 1 0 6 -0 2
- , 2 2 8 8 8 1 6 4 6 - 0 2 ; ,3967 28 52 6-03.
,7049560 5 6-02 . 28 68 6523 6 = 0 2 ,223 3 3 6 9 1 6 -0 1 ,552368166=02
= ,4 2 23 6 3 2 86 = 0 1 - , 7 6 5 9 9 1 2 1 6 = 0 2 ' ,65 8264166-01
, 8 6 0 5 9 5 7 0 6 -0 2 - , 8 9 8 7 4 2 6 8 6 -01 - , 7 9 3 4 5 7 0 3 6 - 0 2
L ,1 1 0 7 4 8 2 9 6 *0 0 ,5 6 1 5 2 3 4 4 6 -0 2
- , 1 2 4 9 3 8 9 6 6 * 0 0 - , 2 0 1 4 1 oO2E-0 2
,13000438 6 *00 - , 2 0 1 4 1 6 0 2 E -0 2 - , 1 2 4 9 3 8 9 6 6 * 0 0
,5 6 1 5 2 3 4 4 6 -0 2 , 110743296*00
- . 7 9 3 4 5 7 0 3 6 - 0 2 - . 8 9 8 7 4 2 5 8 6 - 0 1
,8 o 0 5 9 5 70 E -0 2 ,6 5 8 2 6 4 l o E - 0 1
- , 7 6 5 9 9 1 2 x 6 - 0 2 = ,4 2 2 3 6 3 2 3 E - 0 I
,5 5 2 3 6 8 1 6 6 -0 2 . 2 2 0 3 3 6 9 1 6 -0 1 2868.652 3 6 -02
- . 7 0 4 9 5 6 0 5 6 - 0 2 .3 96728526-03
- . 2 2 8 8 3 1 8 4 6 - 0 2 ,1 3 7 3 2 9 1 0 6 -0 2 , 6 6 8 3 3 4 9 6 6 -0 2
- . 2 2 8 8 8 1 8 4 6 -02
39
Table 1— ContinuedHamming
64 “ bitHamming
16-b itKaiser-Harris
6 4 -b itKaiser-»Harris
16-b it=*0 13 22537 iE“Oi ,453980412-02 O124 362068-01 -o 4232129 32-02 =o963846092-02 =327684192-02 ,615495362-02 -.202335192-02 -,297209192-02 .823583442-03 .63 5135 962-0 3 ,361034022—04 .727731852-03 “,621438 482-03 -,128549272-02 ,831187012-03 .134130672-02 -,837063612-03 -.118170148-02 .759586482-03 9 7 96 5 7102-03
-.132.141112-01 .451660162-02 .124511725-01 -.424194342-02 -.964355472-02 .326538092-02 .616455082-02 -.201416 022-0 2 -o298020512-02 .823974612-03 .640869142-03 .915527342-04 .7324218 8 2-0 3 -,61035156 2-03 <7 o.l2 8 17 38 3 2-02 .823974612-03 ,134277342-02 -.8 2 39 7461 2-0 3 -.119018552-02 .76 2939452-0 3 .9 76562502-03
-.744833292-02 .238543252-02 .615 313242-02 -.195029522-02 -.41179 6882=0 2 .129150202-02 .2225 54472-02— .667061472-0 3 -.88 7048792-0 3.220665742-03 .151219322-03 .179862692-04 .131209572-03— .94648 79 52—04 -.160689595-03.820223312-04,992192638-04-.435013906-04— .404604012—0 4 «171535292-04 .1812 36562 =0 4
-.7446 28 912-02 .236037112=02 .616455062-02 -.19 5312502-02 -.411967302-02 .126173832-02 , .222778322-02 — .67138 6722—0 3 -.68500977 2-03 .21362 305 2-03 ,152587892-03 .305175782-04 .122070312=03 -.915527342-04 -, 152 58 789F-0 3- .915527342-04 .9155 2734 2-0 4 -.30517578 2-04 — . 30 5i7573E-04 .305175782-04 . . 8 0 4 1 7 5 7 A F - 0 4
Gai
n
40
A - Fen=22, Fc22= 285, N=81
B—6-pole Bufterworth bandpass with W o=.5n rad/sec Q = 5
o
00
CN —
. 4 n . 5 tt .6TT
Normalized ca (rad/sec)
Figure 15. Comparison of bandpass digital filters using the Kaiser-Harris window and Butterworth prototype.
Gai
n (
dB
)41
A “ Hamming
A ” Hamming ; 1 6 - b l t coefficients B —Kaiser HarrisB— Kaiser Harris; 16-bit coefficients
. 3 tt. in . 2 tt
Normalized ^(rad/sec).4n
Figure 16. Amplitude response of bandpass filters withN=61 and a^=0.57T, low frequency stopband only.
Ga
in(d
B)
42
A - Hamming windowA - Hamming window ; ]6 -b it coefficientsB - Kaiser Harris' windowB - Kaiser Harris'window; 16-bit coefficients
-ee— /
TO . I tt .2rr ,3nNormalized oj (rad/sec)
.4 rr
Figure 17. Amplitude response of bandpass filters with N=81 and u)o=0 . Sir, low frequency stopband only.
A — 6-Order Butterworth highpass filter with Wc=.5n rad/sec
00
N=!
.4 n .5n .6nNormalized ^(rad/sec)
Figure 18. Amplitude response of highpass filters using theHamming window with gjc =0.5jt for various N.
U>
Gai
n
CO -
CN-N=:
t .5n .6nNormalized w (rad/sec)
.8 tt .9n
Figure 19. Amplitude response of highpass filters using theKaiser-Uar r is window with (^=0. 5-it for various N.
4
Gai
n
A — Hamming B — K aiser-H arris
00 -
o = 2n rad/sec
4ny3tt 6 n, 7ny 8n
CD.2tt .3tt .4n .5n
Normalized w(rad/sec).6tt .9n.7n.in
Figure 20. Amplitude response of highpass filters using the Hamming windowor the Kaiser-Harris window for various cutoff frequencies.
4*.Ul
Gai
n
rad/:
00
CN
.4n .5nNormalized w (rad/sec)
.6n .9rr.8n
Figure 21. Amplitude response of 6th-order Butterworth highpassfilters for various cutoff frequencies.
*>.Ch
CHAPTER 5
STATISTICAL ERROR ANALYSIS FOR LINEAR FIR FILTERS
In the real world, coefficients and signal values
must be quantized by rounding or truncation before they can
be stored in finite-length registers. Rounding is commonly
used since it produces half the error as does truncation.
On the other hand, floating-point arithmetric is used in
large computers and fixed point arithmetric in small com
puters. These errors are analyzed spearately with a statis
tical model in the following.
Statistical Model for (l+b)-bit Floating-Point Rounding Noise
The ideal linear FIR system implemented in direct
form is shown in Figure 22 (Oppenheim, 1976).
SOH) S(n-2)
© n
Figure 22. Ideal linear FIR system.
47
48Considering the rounding effect in floating-point arithmetic,
the statistical model is illustrated in Figure 23.
l + e (n) SCn) r T S (n -l) T S(n-2) T1 1 I
i nkSi(n)
&
S (n *2 ) Q * -
w(n)
h0(l+ao) hi(H"(%i) hzd+a?)
Il+<o(n) f+<i(n) 1+^2 (n)
i+7?,(n)— 0 * l+^en)
T —
i+ N | Ih-ShcN©*- I — J
Figure 23. Statistical model for floatingpoint rounding error.
In the figure1+ct = the effect of rounding of coefficient h^
1+e (n) = the effect of rounding of input x(n)1+5, (n) = the effect of rounding of floating-point sums
of S(n-k) and S(n-N+k+1)
andl+nk (n) = the effect of rounding of floating-point sums
l+ek (n) = the effect of rounding of floating-pointproducts
If we assume e (n), 6k (n), nk (n), and ek (n) are independent,uniformly distributed white-noise random variables, their
2'
2 2 2 2 variances are represented as a Q f o^ , g ^ r and a ^ with
values
From Figure 23, the output w(ri) can be expressed as
w(n) = [S (n) + S(n-N+1) I (l+6 o (n) )ho (l+a0) (l+e(n) )
Define
(l+n0 (n) ) + [S (n-1) + S(n-N+2)] (1+5^(n))
(1 +a^) (l+e1 (n) ) (l+ri0 (n) ) (l+n1 (n) ) + ...---
+ [S(n-'k) + S (n-N+k+1) ] (1+6^ (n) ) (1+a^)
(l+Ei. (n) ) tt (1+n j (n) ) + ..... .i= 0
+ [S (n - + S(n- ] (1+6N_2 (n) ) h^_gN-3 2 2
(l+a%_i) (l+c%_i(nl) tt (1+n-, (n)) +~T~ ^~2~ i = 0
S ( n - ^ ) h N_i(1+aN.i)-2 2N-32
(1+e • (n) ) it (1+n 4 (n) )' Hzl i= 0 1
A (n, k) = u- (1+n : (n)) i= 0 1
ThenN-3
2w(n) = { I [S(n-k) + S(n-N+l+k) ]h, (1+ct, ) (1+e, (n))
k= 0 .
/ . 50A (n ?k) } + iS ( n - ^ ) h N_ 1 (i+aN^1) (l+e-^^n))^!!,^-) }
2 2 2 (5.2)From Figure .22, the output of the ideal system is given by
N-32
y (n) = { I [S (n-k) + S(n-N+k+l)hk } + S ( n - ^ ) h N _ 1
k~° ~T~.
Let
Then
where
and
(5.3)
r(n) = the error output due to the rounding effects.
r (n) = w (n) -y (n)N-3
2 .= { V L (n,k) } +. L (n,^^) (5.4)
k= 0 z
L(n,k) = hk [S(n,k) + S(n-N+k+1)] [(l+ak) (l+6 k (n))
(l+ek (n))A(n,k)-lj
L ( n , ^ ) = S ( n - ^ ) [ (l+aN_ 1)(l+eN_ 1 (n))2 . ~1T 2
A ( n , ^ ) - 1 ]
Since 6 k (n), ek (n.) , and nk (n) are independent random variables with zero mean and uncorrelated with input S (n) the mean value:.of. the. error.•function, x (n)- is
. N-32
E {r (n) } = I a. h [E{S(n-k) } + E{S (n-N+k+1) }} k= 0 ...
2 2
Assume input signal has zero mean, i.e.,{E S(n)} = 0
thenE{r(n)} = 0
Next, we find the variance of the error function r(n), that is
- E{r2 (n)}N-2 N-3 N-3
r ? r v N— 1= E{ I I L (n, k) L (n,S.) + \ L (n,k) L ( n , ^ ). k= 0 & = 0 k= 0
N-3+ I L(n,£) L C n , ^ ) + L 2 ( n , ^ ) }
1 = 0 Z .
If k ^ Z ,. then E{L(n,k) L(n,Jl) } = 0 2Hence, or can be rewritten as
N~ 3 2
c 2 = f E{L2 (n,k)} + E{L 2 ( n , ^ ) } (5.5)r k= 0 ' 2
Each term in the summation can be computed as
E {L (n, k) } = E {h2 [S (n—k ).;'+• S .(n—N+l+k) 1 2 .. ....
2 '[ (l+ak) (l+6 k (n) ) (l+£k (n) )A(n,k)-l]z }
52= 2hk 2 as 2 E{(l+ak)2 (l+Sk (n))2 (l+ek (n))2 A 2 (n,k)
. - 2 (l+ak)(l+6 k (n)) (l+ek (n))A(n,k)+l>
= 2 hk 2 as 2 {(l+2 ak+ak2) (l+ak2) (l+a£2)
(I+aTi2 )k+1 -2(l+ak) + 1}
Substituting Eg. 5.1 into the equation above,
O O ') 0 O - ^ ^ ]c 4-0E'{L (n,k) } = 2aszhkz{ (l+2ak+ak ) ( 1+%— ) -l-2ak}(5.6)
2 ~ 2 bSince « 1 , Eg. 5.6 can be simplified by using thebinomial approximation. That is
O ' o o o 2 bE{L (n, k) } = 2as zhkz{ (l+2ak+akz) [l+(k+3 )^3— ]-l-2ak}
= 2as 2 hk 2 [ak 2 +(k+3)^3— ] (5.7)--2 b p -— 2 b
where [2 ak (k+3)— 2— j and [ctk (k+3)— — ] are neglected.
Similarly- 2 b
E(L2 (n,^i)} : g„ 2 h 2 H-l "1 (5.8)
Substituting Eg. 5.7 and Eg. 5.8 into Eg. 5.5, the variance of the output noise is
N-3— 2 — — — — — 2 b -
crr - kl 0 2°s \ [“k + C<+3)— +
Next we consider the rounding error for the input signal. Assuming zero mean input,
S(n) = (1 + e (n)) X (n)
E{S (n)} = E{X(n>> = 0
as 2 = (l+ae2 )ax 2 = . (5.10)
2where is the variance of the input signal x(n). Wea r 2define output noise to input signal ratio to be — UsingCTx
Eg. 5.9 and Eg. 5.10, the ratio can be represented as
2 Mzl■ (2 ! V ( a k2+ (k+3 ) ^ l , h2., + S ± l ^ }
°x k = 0 —--2 b
(1+^3— ) (5.11)
From Table 3 and Table 4, the coefficients are always lessthan or egual to 1 ,1 O 0 '• /
|hk| < 1 (5.12)
Also, the rounding error for a k is
54Therefore, from Eq. 5.12, Eq. 5.13, and Eq. 5.11, a
bound on the noise-to-signal ratio is obtained as
2 N- 3- ^ < { 2 I [ 2 " 2 b + ( k + 3 ) 2 — j + [2 -2b+N+l 2 — ] }
°x k= 0
2 ™2b• (1+^j— ) (5.14)9 - 2 b
As b > 7, (1+^— ) = 1
Then, Eq. 5.14 is simplified as
2 N— 3< { 2 l [ 2 ~ 2 b + l . k + 3 )~— ] } + (2'2b + ^ ^ — )
□ 2 k=0 J (5.15)X
Table 5 shows values of this upper bound on —^ for different N and different word lengths. ax
a 2Table 5. Upper bound of — ^ in floating point
realization. ax
4 4 X2 <dB)
N 8-bit 12-bit 16—bit 24-bit5 -31.86 —5666 -80.03 -128.1811 -2 7 4 2 -5 2 2 7 - 75.59 -123.7521 -23.43 —48.27 -71 .60 -119.7531 -20.81 —45.62 - 68.96 -117.14
41 -18.83 -43.68 — 66.99 -115.17
51 -17.24 -42.08 -6 5 .4 1 -113.57
61 -15 .95 -40 .75 — 64.07 -112.23
81 -13 .74 -3 8 .5 7 -6 1 .8 9 -110.08
55That the output noise depends on the input signal can be seen from Eg. 5.9. From Table 5, we see that a floatingpoint machine using 16-bit precision or more can get a very low noise to signal ratio.
Statistical Model for (b+l)-bit Fixed-Point Rounding Noise
Most small machines use fixed-point arithmetic. Thestatistical model for fixed-point rounding noise is shown inFigure 24.
S(n)s(n)
© e,(n)
w(n)
Figure 24. Statistical model for fixed-point rounding error.
wherees (n) = the noise due to the rounding of input x(n) ek (n) = the noise due to the rounding of products
and
= the effect of rounding of the coefficient h^
56We assume that e, (n) and e (n) are independent white-noise
2random variables. Their variances are represented ascrand with value 2 *3/l2. From Figure 24, the output
6sw(n) can be found to be
w(n) = [S(n)+S(n-N+1 )1 (ho+a0 )+eQ (n)
Le t
where
+ [S (n-1) +S (n-N+2) ] (h-j+c^) + @ 1 (N)
+ [S (n-k)+S(n-N+k+1 )] ( h ^ + a ^ ) ( n )
+ [S (n 2 ) (n 2 ) ] ^^n-3+aN-3 +eN-3~2~ ~ ~2~
+5 (n 2~^ ^ N - l +aN-l^+eN-l (5.16)
w (n) = y(n) + r (n)
y(n) = the output of an ideal system given by Eq. 5.3r (n) = the rounding error output in the fixed-point
realization
From Eq. 5.16 and Eq. 5.3, the output error function can beexpressed as '
N-32
r(n) = £ T(n,k) + T (n,— =--)k= 0
57where
T(n,k) = [S(n-k) + S(n-N+k+1)] + e^(n)and '
T ( n , ^ ) = S ( n - ^ ) o t N_I+e-N_x(n)2 2
The mean value of the error function isN-3 2 :
E{r(n)}> 2E{S(n)}ak + E{S(n)}aN ,k= 0 ' K ^
We assume that the input signal is a random variable with zero mean, therefore
E(r (n)} = 0
With E(r(n)} = 0, the variance of r (n) is
cr 2 = E{r 2 (n)}N-3 N-3 N-32 2 2 N_
= E{ % I T(n,k)T(n,£) + £ T (n,k) T (n,-^)' k= 0 & = 0 k= 0
N-3 ,+ I T(n,il)T(n,^) + T 2 ( n , ^ ) }
1=0 2 2
If k / then E{T(n,k)T(n,£)} = 0 2Thus cr can be expressed as
N-3 '2
cf„ 2 = I E{T2 (n,k) } + E{T2 (n,^)> (5.17)r k= 0 • 2
58Each term in the summation can be expressed as
E{T2 (n,k)> = E{[S(n-k) + S(n-N+k+1)]
+ 2E{ak [S(n,k) + S(n-N+k+1)] ek (n)>
+ E{ek2 (n)}
= 2ag2 ak 2 + a^2 (n) (5.18)where
a g 2 = the variance of S(n-k)2aQ = the variance of ek (n)
In the same way, the last term in Eq. 5.17 is
E{T2 ( n , ^ ) } = cs2 a2 ^ 1 + ce 2 - (5.19)
Combining Eq. 5.18, Eq. 5.19, and Eq. 5.17, the variance ofJr(n) is
N-3
°r2 ' t j 02"s2“k2 + =e2l + + "e2l
N-3- ^ -e2 ^ U j o 2ak2) * a2^ ] a s 2 ,5.20,
Considering the rounding noise for the input signal x(n), we see that
S (n) = x (n) + eg (n)
59We assume a zero-mean input signal, i.e.,
E{S (n) } - E{x (n) } - 0
Then the variance can be expressed as
as ae ax (5.21)
where
2crx = the variance of input signal x (n)
Substituting Eg, 5.21 into Eg. 5.20,N-3
°r2 * ¥ S 2 + ' [ < i 2% 2) + (°e 2 + "x2>K-U 2 (5.22)
Rearranging the above eguation,N-3
» 2 = + ,(, t 2 ak2) + 4 - 1 1r k= 0 — 2 ~N-3
+ t(J 2ak2) + a2_i1 ax2 , (5.23)k= 0
From the first part in Eg. 5.22, the output noise increaseswith N and is independent of the filter parameters. Thesecond part in Eg. 5,22 is the noise caused by rounding the
2 2coefficients in the filter. The values for a and o are- 2 b, -■ S • Ss -2 /12. Also, the rounding errors for coefficients are less
than 2 ^/2. Substituting these values into Eg. 5.23, a boundfor the noise is obtained as
60
a r 2 - 2 2b + if 2 4b> + | 2 2b ax 2 (5.24)
asb > 7 , « ± i 2 - ^ » 3 | 2 - ^
Neglecting 2-4b, then Eg. 5.24 can be simplified as
a r 2 < + | tx2) 2 2b (5.25)
VWe define output noise to input signal ratio as — thenctkthe upper bound ratio can be expressed as
is! , ,-JSi. + ?, a-2b (5.26)24»x
o 2Table 6 shows values of this upper bound on — for different
2N, ax , and word lengths.Comparing Table 6 and Table 5, the noise to signal
ratio in a fixed-point realization is better than that in a floating-point realization as Ions as the input signal is greater than 0.1. This is due to much more rounding in the floating-point realization.
In Chapter 4,. the coefficients of the bandpass filters, originally calculated with 64-bit precision, have been rounded off to 16-bit precision by using fixed-point arithmetic, and it has been shown that they have essentially the same response in output performance (see Figures 14 and 15).
61The dotted curves in Figures 16 and 17 are the ripples of 16-bit coefficients in the stopband for N=61 and N=81. From these, it is evident that the Kaiser-Harris window is more sensitive to word length than the Hamming window.
2Table 6 . Upper bound of — in fixed-point
realization. o
N axcr/ax ( dB )
8-bit 12-bit 16-bit 24-bit
5.01 -27.95 -52.03 -76.12 -124.28. 1 -36.92 1 cn o o -85.08 -133.24.8 i s -64.29 -88.37 -136.54
11.01 -24.92 —49.00 -73.09 -121.25.1 -33.26 -56.44 -81.42 -129.58.8 -36.86 -60.95 -85.03 -133.20
21.01 -22.28 —46.38 -70.47 — 11 8.61.1 -30.56 -53.74 -78.72 -126.88.8 -34.08 -53.17 -82.25 -130.42
31.01 -20.65 -421.73 —68.82 -116.95.1 -28.91 -52.09 -77.07 -125.23.8 -32.40 -56.49 -80.58 -128.76
51.01 -18.53 -42.6l -66•70 -114.86.1 -26.78 -49.96 -74.94 -123.10.8 -30.25 -54.34 -78.42 — 1 26.58
31.01 -16.55 -40•64 -64.73 -112.89.1 -24.79 -47.97 -72.95 -121.11.8 -28.24 -52.33 -76.41 -124.58
CHAPTER 6
CONCLUSION
SummaryThe performance of various window functions, in low-
pass FIR digital filter design has been discussed in Chapter2. From Table 1 and Figure 2, it is clear that none of the windows have both good ripple in passband and a steep transition region at the same N.
The Hamming window and the Kaiser-Harris window were chosen for the designs in Chapter 3 and Chapter 4. They represent two different kinds of windows. The former has a steep transition region, but relatively poor ripple and . attenuation. The latter has a more gradual transition region, but relatively good ripple and attenuation. A very good filter can be achieved, by using the Kaiser-Harris window ■ with large N. This cannot be achieved by using the Hamming window, since there is little improvement in ripple and attenuation, even with large N.
The.procedures for designing a digital filter to perform as well as a Butterworth prototype were described as follows: .
62
631. Choose between the Hamming window and the Kaiser-
Harris window according to the ripple and attenuation needed.
2. Choose the proper value of N from Figures 7 and 1 0 to provide the slope required in the transition region.
3. Shift some frequency from cutoff so that the attenuation is -3 dB at the cutoff frequency.
Some additional guidelines can be obtained from Chapter 5, when finite world length is used. A floatingpoint realization leads to increased dynamic range and to improved accuracy, but it also leads to increased cost of hardware and reduced speed of processing. A fixed-point realization requires signal scaling to avoid overflow; otherwise the output signal will be severely distorted.Also, it requires suitable input signal level to obtain a good signal to noise ratio. This can be shown in Eq. 5.22. Tables 5 and 6 show that word lengths greater than 16-bits provide good performance in both realizations..
The coefficients of a digital filter are easily generated by using the Hamming or Kaiser-Harris window. Constant delay is obtained so long as the coefficients aresymmetric or antisymmetric. The delay time is equal toN-l • -' ■(— j-T), where N is the number.of coefficients.
The filters obtained in Chapters 3 and 4 should be useful in Fourier Transform Spectrometer systems.
64Future Work
In Chapter 5, the errors in-finite word length realization were analyzed by using a statistical model.These results should be verified by simulating the finite word length realization on a large computer.
After a filter is selected, the design should be implemented and tested in the Fourier Transform Spectrometer system. From the system performance, one can determine whether the selected design is adequate.
LIST OF REFERENCES
A n t o n l o u A . , Digital Filters Analysis and Design, McGraw- Hill, Inc., New York, 1979.
Harris, F. J. ,. "On the Use of Windows for Harmonic Analysis with the Discrete Fourier Transform," Proceedings of the IEEE, Vol. 6 6 , No. 1, January 1978, pp. 84-90.
Huelsman, L. P., and Allen, P. E., Introduction to the Theory and Design of Active Filters, McGraw-Hill, Inc., New York, 1980, Chapter 2.
McClellan, J. H., "FIR Filter Design and Synthesis," Programs for Digital Signal Processing, IEEE, Inc., New York z 1979, Chapter 5.
McCurnin, T. W., "Control and Data Acquisition for a HighResolution Dynamic Fourier Transform Spectrometer," Ph.D. Dissertation, University of Arizona, 1981.
Nishiyama, T. , Yamauchi, M. Uhno, M,. Murii, N. Ura, andK. Masutani, "New Sampling Method in Fourier Spectroscopy," Japanese Journal of Applied Physics, Vol. 14, Supplement 14-1, 1975, pp. 67-69.
Nuttall, A. H. , "Some Windows with Very Good Sidelobe Be-' havior," IEEE Transaction on Acoustics, Speech,; and
Signal Processing, Vol. ASSP-29, No. 1, February 1981, pp. 51-83.
Oppenheim, A. V., and Schafer, R. W . , Digital Signal Processing , Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1975, pp. 404-462.
Papoulis, A., Probability, Random Variables, and Stochastic Processes, McGraw-Hill, Inc., New York, 1965, pp. 83-112.
Wait, J. W. , FAD User's Manual.,- University of Arizona, 1981.
65
S:
p