基于MATLAB的数字基带传输的 FIR滤波器的设计
O 引言
目前,数字基带传输已广泛地应用于利用对称电缆构成的近程数据通信系统之中。随着数字通信技术的发展,基带传输方式不仅可以用于低速数据传输,而且也可以用于高速数据传输。然而数字基带传输也同样不可避免地要产生由码间串扰造成的误码现象。为了消除码间串扰,在时域上,基带传输系统的冲激响应波形h(t)要在本码元的抽样时刻上有最大值,并在其它码元的抽样时刻上均为0,也就是基带传输系统在频域上要满足奈奎斯特第一准则。满足奈奎斯特第一准则的H(w)有很多种,首先是理想低通型,理想低通传输特性虽然可满足基带系统的极限传输速率和极限频带利用率,但这种特性在物理上很难实现,并且理论特性冲激响应的尾巴衰减振荡幅度较大,抽样时刻稍有偏差就会出现严重地码间串扰。为了解决理想低通特性存在的问题,可采用升余弦滚降特性的系统,以使理想低通滤波器的边缘缓慢下降,并使振幅特性在滚降段中心频率处呈奇对称,从而保证满足奈奎斯特第一准则。这种系统可减小码间串扰和位定时误差。
由于FIR数字滤波器可实现对升余弦滚降特性的近似,故本文经过FIR数字滤波器设计来对各种窗函数进行选择,并通过窗函数法实现对升余弦特性低通滤波器的设计,同时用MATIAB来仿真实现。
1 有限长单位脉冲响应(FIR)数字滤波器
1.1 FIR数字滤波器的优点
首先,有限长单位脉冲响应(FIR)数字滤波器在保证幅度特性满足技术要求的同时,很容易保证严格的线性相位特性;另外,FIR数字滤波器的单位脉冲响应是有限长的,因此,滤波器一定是稳定的,只要经过一定的延时,任何非因果的有限长序列都将变成因果的有限长序列,因而总能用因果系统来实现;最后,FIR数字滤波器由于单位脉冲是有限长的,故可以用FFT算法来过滤信号,这样可以大大提高运算效率。
1.2 FIR数字滤波器的特征
FIR数字滤波器的系统函数为:
其中,单位脉冲响应h(n)是有限长的(0nN一1),由该系统函数可以得到H(z)是z-1的(N一1)阶多项式,并在有限z平面(0|z|∞)有(N一1)个零点,而且(N一1)阶极点全部位于z平面的原点(z=0)处。
(1)线性相位条件
FIR数字滤波器的h(n)为实数,且满足以下任一条件:
h(n)=h(N一l一n)偶对称
h(n)=-h(N-1-n)奇对称
若其对称中心在n=(N-1)/2处,则滤波器就有准确的线性相位。
且当h(n)偶对称时,有:
(2)幅度函数的特点
由于h(n)的长度取奇数或偶数对H(w)的特性会有影响,因此,对于两类线性相位,可分为4种情况,具体如表l所列。
2 基于MATLAB的FIR数字滤波器设计
用窗函数法设计一个FIR低通滤波器,若已知:
其中,wc=0.5π,那么,就可分别用矩形窗、汉宁窗来设计该滤波器,且取N=2l、3l。
2.1 MATLAB的程序设计
下面是基于MATIAB来设计FIR数字滤波器的程序代码:
%1)矩形窗N=2l
N1=21;a1=(N1―1)/2;wc=pi/2;
n1=[0:l:(Nl―1)];
m1=n1一al+eps;%避免被零除
hdl=sin (wc*m1)./(pi*m1);
%加矩形窗
[h1,wl]=freqz(hdl,1);
subplot(2,2,1);plot(wl/pi,20*log10(abs(h1)/abs(hl(1))));axis([0,1,-50,1O]);
xlabel('频率');ylabel('幅频响应');
title('FIR加矩形窗函数的幅频特性N=21');
%2)汉宁窗N=21
w_hanl=(hanning(N1))';
hl=hdl.*w_hanl;%加汉宁窗
[hhl,w1]=freqz(hl,1);
subplot(2,2,2);plot(wl/pi,20*log10(abs(hhl)/abs(hhl(1))));axis([0,l,一80,lO]);
xlabel('频率');ylabel('幅频响应');
title('FIR加汉宁窗函数的幅频特性N=21');
%3)矩形窗N=31
N2=3 1;a2=(N2-1)/2;wc=pi/2;
n2=[0:1:(N2-1)];
m2=n2一a2+eps;%避免被零除
hd2=sin(wc*m2)./(pi*m2);
%加矩形窗
[h2,w2]=freqz(hd2,1);
subplot(2,2,3);plot(w2/pi,20*log 1O(abs(h2)/abs(h2(1))));axis([0,1,一50,10]);
xlabel('频率');ylabel('幅频响应');
title('FIR加矩形窗函数的幅频特性N=31');
%4)汉宁窗N=31
w_han2=(hanning(N2))';
h2=hd2.*w_han2;%加汉宁窗
[hh2,w2]=freqz(h2,1);
subplot(2,2,4);plot(w2/pi,20*logl0(abs(hh2)/abs(hh2(1))));axis([0,1,-80,10]);
xlabel('频率');ylabel('幅频响应');
title('FIR加汉宁窗函数的幅频特性N=31');
2.2 MATLAB仿真结果分析
本设计的仿真结果如图1所示,比较图l,利用矩形窗设计滤波器时,N取31比取21所设计的滤波器的过渡带小,调整窗口长度N可以有效地控制过渡带的宽度,但由图中也可以看到,改变N不能有效的减小带内波动以及加大阻带的衰减。另外,比较利用矩形窗和汉宁窗设计的滤波器,可见,利用汉宁窗设计的滤波器的带内波动小且阻带衰减大,故改变窗函数可以有效地减小带内波动并加大阻带衰减。
对上述实验结果进行理论分析发现,在窗函数法设计滤波器过程中,对hd(n)加窗截断后,H(w)将Hd(w)在截止频率处的间断点变成了连续的曲线,并使理想频率特性不连续点处的边缘加宽,从而形成一个过渡带,过渡带的宽度等于窗的频率响应WR(w)的主瓣宽度△w=4π/N,窗函数的主瓣宽度越宽,过渡带也越宽。同时在截止频率wc的两侧,H(w)会出现最大尖峰值,尖峰的两侧形成起伏振荡,其振荡幅度取决于旁瓣的相对幅度,而振荡的多少取决于旁瓣的多少。由此分析,因为过渡带的宽度为窗的频率响应WR(w)的主瓣宽度△w=4π/N,所以,加大N可以减小过渡带的宽度,而由于尖峰值将直接影响通带特性和阻带衰减,故窗函数的选取也会影响通带特性和阻带衰减,通常所选取的窗函数的窗谱主瓣尽可能的窄,最大旁瓣的相对幅度尽可能的小。
- 基于Hilbert变换的电压凹陷检测方法(06-20)
- 牛奶微生物检测仪的设计 (06-13)
- 基于MATLAB的皮肤听声器系统的研究(08-20)
- 线性预测及其Matlab实现(04-22)
- 在WaveMaster中创建自定义运算函数(06-17)
- 实时与非实时综合应用在多个信号的测量(06-25)