4)由给出的归一化原型巴特沃思低通滤波器传递函数可得所设计的模拟滤波器传递函数为:
1Ha(s)?2s?1.414s?1
5)用双线性变换法求出数字低通滤波器系统函数为:
H(z)?Ha(s)s?21?z?1?11?z?11?z?121?z?1 (2)?1.414(2)?11?z?11?z?11?2z?1?z?2?7.828?6z?1?2.172z?29.设某数字滤波器的运算速率(即取样速率)为fsa=16kHz,对于图P-2所示的技术指标,请用巴特沃思逼近、双线性变换方法设计出该滤波器的系统函数H(z)。
a (dB) 20dB 3dB 3dB f 0 2 4 6 8 10 12 14 16 18 20 (kHz)
解:
1) 将指标转换到数字域:
2?63?p?2??? ; ?s?2????
1641642) 将指标转换到设计域:
设?p?1,则:C?ctg?p2?ctg?8?2.4142
3?s?C?tg?2.4142?tg?28?2.4142?2.4142?5.82843) 设计Ha(s):由巴特沃思设计法:
?s
??10
0.1amax?1?1
21
N?lg[(100.1amin?1)12lg?s?]?1.3034 取N=2
求Ha(s)的极点,由:
(2k?1)??1?n????sin[]?k2n k=1,2 ?1(2k?1)????k??ncos[]2n???0.707?j0.70744可得:
33s2??sin??jcos???0.707?j0.70744所以有:
s1??sin??jcos?11Ha(s)??2?(s?s1)(s?s2)s?1.414s?1
4) 对进行双线性变换,求H(z):
H(z)?Ha(s)?s?C1?z?11?z?11
1?z?121?z?1(C)?1.414(C)?1?1?11?z1?z(1?z?1)2?2C(1?z?1)2?1.414C(1?z?1)(1?z?1)?(1?z?1)2将C=2.4142代入,经整理得:
1?2z?1?z?2H(z)?10.241?9.657z?1?3.415z?2
图P-2
10.写出下列算法的实现步骤,并画出相应的计算机程序流程。
1)采用重叠保存法计算线性卷积,信号序列x(n),长度为N1,系统单位脉冲响应h(n),长度为N2,而且N1>> N2。
2) 切比雪夫逼近法设计FIR滤波器过程中采用的Remez算法。
解:1)重叠保存法算法步骤为: a)先将x(n)分解成:
22
?x[n?iN?(N1?1)] 0?n?N?1xi(n)??
?0 其他b)利用FFT 算出:
yi(n)?xi(n)?h(n)
c)抛弃yi(n)的前N1-1个点;
d)将各个yi(n)顺序连接起来,即得到最终的卷积结果序列y(n)。
程序流程图略。
2)Remez算法步骤如下:
a)在频率子集
F
上等间隔地取N1?2个频率点
:
?0,?1,?,?NN1?11?1,作为交错点组的初始值,然后按下式计算ρ
??k?0N1?1??kkHd(?k) ?k(?1)?W(?k)k?0kN1?11??(?1)?式中: k?si?co?sk) i?0(coi?k利用拉格朗日插值公式(由数学上可以证明,满足最佳一致逼近的多项式为拉格朗日多项式,可见如《数值逼近》),不求a(n)即可得到初始的Hg(?):
N1?1Hg(?)?
??k?0N1?1?kco?s?co?sk?Ck?k?0?kco?s?co?sk
k?C?H(?)?(?1) k?0,1,?,N1?1 式中:kdW(?k)b)在子集F上,对所有频率ω计算E(ω),判断是否对所有频率均有:
E(?)??,若是,则
?0,?1,?,?N?1为交错点组,逼近结束;否则需要重
1新设立新的交错点组,其方法如下。
c)对前一次设定的交错点组中的每个点,都在其附近检查是否在某个频率处有,若有,则在该点E(?)??(通常在两交错点间设立一定的频率点密度,如设立16点)
23
附近找出局部极值点,并用这局部极值点代替原来的点,待N1+2个点检查完毕后,便得到一组新的交错点组。完成一次迭代。
d)用新得到的交错点组,重复1~3步,直至到达ρ的极限(是随着迭代次数递增的,当ρ到达其上限时,对应的Hg(?)即为最佳逼近Hd(ω)的解),就确定了Hg(?),结束迭代。
e)由Hg(?)作反变换,求得单位脉冲响应h(n)。
程序流程图略。
11.设某数字滤波器的运算速率(即取样速率)为fsa=8kHz,对于图P-3所示的技术指标,请用巴特沃思逼近、双线性变换方法设计出该滤波器的系统函数H(z)。
a(dB) 15dB 3dB
2 0 1 解:1)将指标转换到数字域:3dB 3 4 5 6 7 8 9 f(kHz) 1?图P-3 2??p?2??? ; ?s?2???84822) 指标转换到设计域:
?p??p?1,则:C?ctg?ctg?2.4142 设
28?s??s?C?tg?2.4142?tg?2.4142?1?2.4142
243) 设计Ha(s):由巴特沃思设计法:
??100.1amax?1?1
24
100.1amin?1)12N?lg[(?]lg??1.941 取N=2
s求Ha(s)的极点,由:
???k????1nsin[(2k?1)??2??n]1(2k1)? k????cos[=1,2 k?n2n]s?1??sin?jcos???0.707?j0.可得:44707
ssin332??4??jcos4???0.707?j0.707(s)?11所以有:Ha?(s?ss?s?21)(2)s?1.414s?1
4) 对进行双线性变换,求H(z):
H(z)?Ha(s)s?C1?z?11?z?1?11?z?121?z?1(C将
1?z?1)?1.414(C1?z?1)?1?(1?z?1)2C2(1?z?1)2?1.414C(1?z?1)(1?z?1)?(1?z?1)22.4142代入,经整理得:
)?1?2z?1?z?2H(z10.241?9.657z?1?3.415z?2
25
C=