Monday, May 27, 2019

FIR Filter Design

The objective of this project is to use three diametric radiation pattern methods to design a low-pass separate that accomplishs specifications given, and then study these three different methods through different parameters. In this project, seven filters should be designed using Matlab. And we compare them on worst case gain, largest tap lading coefficient, supreme passband and stopband delusion, magnitude frequency response, impulse response, group mark and zeros/poles location. Finally, use these filters to do filtering, and then compare their responses to the predicted one.Discussion of Results partly 1 Window Method(a) Use fir1 function to synthesize an FIR that meets specifications using a boxcar window.Worst gain = 1.8372 Largest tap weight coefficient = 0.3694maximum passband misunderstanding = 0.1678 supreme stopband error = 0.0795(b) Use Hann window to synthesize an FIR that meets specifications.Worst gain = 1.4154 Largest tap weight coefficient = 0.3496Maxim al passband error = 0.0052 Maximal stopband error = 0.2385** leach 1 is the unwindowed design, and Filter 2 is the windowed design.From the parity above, we bear see that the unwindowed design has a more critical passband and stopband edge, but the windowed one has a little maximal passband error as we expected. Also, the windowed one has a larger fading on stopband than the unwindowed one. The group stay put responses of cardinal designs are the same.(c) Use Kaiser window to synthesize an FIR that meets specificationsWorst gain = 1.6900 Largest tap weight coefficient = 0.3500 N = 21 (which is in 20 in matlab)Maximal passband error = 0.0706 Maximal stopband error = 0.0852** Filter 1 is the unwindowed design, and Filter 2 is the kaiser design.From the coincidence above, we can see that both designs have critical passband and stopband edges, but the kaiser one has a smaller maximal passband error as we expected. Also, the kaiser one has a smaller attenuation on stopband compare with the unwindowed one. The group delay responses of two designs are different, the Kaiser one only has twentieth order, so the group delay is 10, not 11 as the unwindowed one.(d)The zeros of the three windowed designs** Filter 1 is the boxcar design, and Filter 2 is the Hann design, Filter 3 is the Kaiser design.From figure above, we can see that Hann design has a zero far from unit circle, which is corresponding to the slower attenuation compared to the other two designs. The zeros of boxcar design are similar to the Kaiser design. Part 2 LMS Method(a) Using Matlabs firls function to meet the pilot design specification.Worst gain = 1.5990 Largest tap weight coefficient = 0.3477Maximal passband error = 0.0403 Maximal stopband error = 0.1137** Filter 1 is the 2(a) design, and Filter 2 is the boxcar design.From the analogy above, we can see that the boxcar design has a more critical passband and stopband edge, but the LMS one has a smaller maximal passband error as we expected. A lso, the LMS one has a larger attenuation on stopband than the boxcar one. The group delay responses of two designs are the same.(b) Using Matlabs fircls1 function to meet the original design specification.Worst gain = 1.6771 Largest tap weight coefficient = 0.3464Maximal passband error = 0.0516 Maximal stopband error = 0.0782** Filter 1 is the 2(a) design, and Filter 2 is the 2(b) design.From the comparison above, we can see that the 2(b) design has a more critical passband and stopband edge, but the 2(a) one has a smaller maximal passband error. Also, the 2(a) one has a larger attenuation on stopband than the 2(b) one. The group delay responses of two designs are the same.(c)The zeros of the two LMS designs** Filter 1 is the 2(a) design, and Filter 2 is the 2(b) design.From figure above, we can see that 2(b) design has a zero far from unit circle, which is corresponding to the slower attenuation compared to the other design. The zeros around the unit circle are similar to each oth er. Part 3 Equiripple Method(a) Using Matlabs firgr function to meet the original design specification (uniform error weight)Worst gain = 1.6646 Largest tap weight coefficient = 0.3500Maximal passband error = 0.0538 Maximal stopband error = 0.0538** Filter 1 is the 3(a) design, and Filter 2 is the boxcar design.From the comparison above, we can see that the boxcar design has a more critical passband and stopband edge, but the 3(a) one has a smaller maximal passband error. Also, the boxcar one has a larger attenuation on stopband than the 3(a) one. The group delay responses of two designs are the same.(b) Using Matlabs firpm function to meet the original design specificationWorst gain = 1.6639 Largest tap weight coefficient = 0.3476Maximal passband error = 0.0638 Maximal stopband error = 0.0594** Filter 1 is the 3(a) design, and Filter 2 is the 3(b) design.From the comparison above, we can see that the 3(b) design has a more critical passband and stopband edge. And the stopband error is 0.0488 (which is consistent with 0.0538*(1-20%)=0.04304), the passband error is 0.0639 (which is consistent with 0.0538/(1-20%)=0.06725). The group delay responses of two designs are the same.(c) The zeros of the two equiripple designs** Filter 1 is the 3(a) design, and Filter 2 is the 3(b) design.From figure above, we can see that 3(a) design has a zero far from unit circle, which is corresponding to the slower attenuation compared to the other design (almost no attenuation on the figure shown ). There is only one zero stays outside the unit circle for 3(b) design, which is the token(prenominal) phase design. Part 4 Testing(a)Table the features for the 7 designed FIRsFeaturesFilter 1Filter 2Filter 3Filter 4Filter 5Filter 6Filter 7Maximum gain1.83721.41541.69001.59901.67711.66461.6639Maximum passband linear0.16780.00520.07060.04030.05160.05380.0638Maximum passband error(dB)-15.5052-45.7568-23.0266-27.8855-25.7472-25.3838-23.9007Maximum stopband linear0.07950.23850.08520.11370.0 7820.05380.0594Maximum stopband error(dB)-21.9886-12.4495-21.3913-18.8858-22.1339-25.3838-24.5274Group delay11111011111111Largest tap weight coefficient0.36940.34960.35000.34770.34640.35000.3476(b) From the figure followed, we can figure out that the group delay is 22-11=11 samples regardless of the input frequency.(c) Compare the original, mirror, and complement FIRs impulse, magnitude frequency, and group delay response**Filter 1 is the original filter, Filter 2 is the mirror filter, and Filter 3 is the complement filter.(d) Maximal output is 1.8372, which equals to the worst gain prediction of this filter. Part 5 Run- era Architecture(a) N = 8, M=1 N = 12, M=1 N = 16, M=1Round off errorN=8 N=12N=16From the comparison above, we can see clearly that as the value of N increases, the round-off error decreases.Bits of precision is N-1-1=N-2(b) Choose two 12-bit address space which has memory cycle time of 12 ns, so the maximum run-time filter speed is 1/ (12ns/cycle*16 bits) =1/ (192 ns/filter cycle) =5.21*106 filter cycles/sec Part 6 experiment(a) The maximal of the output time-series is 1.1341. It is reasonable, because it is smaller than the worst case gain which is 1.8372. So this agrees with the predicted filter response.(b) The chirp function makes a short, high-pitched sound, and it sounds four times, which is corresponding to the 4*fs. When all the .wav files are played, we can hear obviously that the frequency of output sound is much lower than the frequency of input sound, which means that the filter did filter high-frequency components out.From the figure above, we can see the high-frequency components are gone, which agrees with the predicted filter response, a low-pass filter.SummaryThrough this project, the detailed processes of designing a filter by three different methods have been understood. And we know more about all the parameters which would affect properties of the filters, and how to use different methods to design them and make best trade -off between each other.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.