您当前的位置:五五电子网电子知识电工技术电工文摘典型滤波器的SystemView设计与仿真 正文
典型滤波器的SystemView设计与仿真

典型滤波器的SystemView设计与仿真

点击数:7879 次   录入时间:03-04 11:33:32   整理:http://www.55dianzi.com   电工文摘
Veriolg HDL:Verilog公司推出的硬件描述语言,在ASIC设计方面与VHDL语言平分秋色[7]。
2.3.4 仿真软件选择
经过选择,决定选用MATLAB和SystemView两种仿真软件。
主要原因是由于此论文课题为教师科研题,希望可以作为教学使用。另一方面而MATLAB和SystemView这两种软件在教学仿真中是当仁不让的不二选择。
另一方面,正如上述的介绍,MATLAB和SystemView这两种软件有操作简单,容易上手,界面直观等特点,也是促使作者选用这二者的原因。
第三章 典型滤波器的SystemView
设计与仿真
3.1 MATLAB仿真
3.1.1 FIR数字滤波器的设计
1、FIR数字滤波器设计的窗口法
有限冲击响应(FIR)数字滤波器的转移函数为:

(3.1)

FIR滤波器的设计包括以下步骤:给出所需要的滤波器的技术指标;设计一个H(z)使其逼近所需要的技术指标;实现所设计的H(z)。
FIR滤波器的冲激响应就是系统函数各次项的系数,所以设计FIR滤波器的方法之一是:从时域出发,截取有限长的一段冲激响应作为H(z)的系数,冲激响应长度N就是系统函数H(z)的阶数。只要N足够长,截取的方法合理,总能够满足频域的要求。这就是FIR滤波器的窗口设计法。目标是设计一个线性相位的FIR数字滤波器,要求的理想频响为 ,它是 w的周期函数。
因此,可以展开成傅里叶级数: e (3.2)
式中:h (n)为傅里叶系数。但是,我们不能以作为h (n)设计FIR数字滤波器的h (n),因为h (n)一般是非因果的,且无限长,物理上是不可实现的。为了解决这个问题,可以先把无限长的h (n)的截短为有限长序列,然后把有限长序列右移使之成为因果序列入h(n)。用h(n)近似h (n)设计出来的FIR滤波器,其频响 一定也是理想频响 的近似。以上方法中的截短就是加窗,所以称窗口设计[5]。
2 FIR数字滤波器设计的频率采样法
窗口法是以h (n)为媒介的时域设计法,而滤波器指标往往是在频域给出的,为此,要由 算出h (n),加窗后又从h(n)算出h (n)来检验。当理想频响 是任意曲线,或者不存在明确的解析表达式时,求H(n)就困难一些。因此,我们不得不想:能否不要频域一时域一频域地反复,而直接从频域来设计呢?这就是采用FIR滤波器的频域设计法一频率采样法。频率采样法先对理想频响 采样,得到样值H(k),再利用插值公式直接求出系统转换函数H(z),以便实现;或者求出频响H(e ),以便与理想频响进行比较。
在[O,2π]区间上对H(z)进行N点采样,等效于时域以N为周期延π。
频率采样法的步骤可归纳为:
a)给定理想频响 。
b)确定采样点数,对理想频响采样得到H(k)。
c)代入下式,即得FIR数字滤波器的转移函数:
H(z)= (3.3)
频率采样法可以看做为插值法,这种方法的缺点是通带和阻带的边缘要精确确定[4]。
3 FIR数字滤波器设计的切比雪夫逼近法
在上面的两个部分中,我们介绍了数字滤波器的窗口设计法和频率抽样法,用这两种方法设计出的滤波器的频率特性都是在不同意义上对所给理想频率特性 的逼近。从数值逼近的理论来看,对某个函数f(x)的逼近一般有三个方法:插植法;最小平方逼近法;最佳一致逼近法。所谓插值,即寻找一n阶多项式(或三角多项式)P(x),使它在N+1个点X , X …X 处满足P(x )=f(x ),k=0,l,⋯ ,n 。而在非插值点上,P(x)是 f(x )的某种组合。当然,在非插植点上,p(x)和f(x)存在一定的误差。频率抽样法可以看作为插值法,它在抽样点w 上保证了H(e )= H (e )而在非抽样点上,H(e )是插值函数S(w,k)的线性组合,其权重是H (e )。这种设计方法的缺点是通带和阻带的边缘不容易精确的确定。
最小平方逼近是在所需要的范围内,如区间[a,b]:使积 为最小。设计方法是着眼于使整个区间[a,b]的总误差为最小,但它并不一定能保证在每个局部位置误差都最小。实际上,在某些位置上,有可能存在着较大的误差。实际上,傅立叶级数法就是一种最小平方逼近法。该方法在间断点处出现了较大的过冲(Gibbs现象)。为了减少这种过冲和欠冲,采用了加窗口的方法,当然,加窗口以后的设计方法,已不再是最小平方逼近。
最佳一致逼近法,是着眼于在所需要的区间[a,b]内,使误差函数E(x)=|p(x)-f(x)|比较均匀一致,并且通过合理地选择p(x),使E(x)的最大值E 达到最小。切比雪夫逼近理论解决了p(x)的存在性、唯一性及如何构造等一系列问题。
切比雪夫最佳一致逼近的基本是,对于给定区间[a,b]上的连续函数p(x),在所有n次多项式的集合中,寻找一多项式 ,使它在[a,b]上对f(x)的偏差和其他一切属于集合的多项式p(x)对f(x)的偏差相比是最小的,即

(3.4)
切比雪夫逼近理论指出,这样的多项式 是存在的,且是惟一的,并指出了构造这种最佳一致逼近多项式的方法,这就是有名的”交错点组定理”,该定理可描述如下:
设f(x)是定义在[a,b]上的连续函数,P(x)是集合中一个多项式,并令
E = (3.5)
以及E(x)= ,p(x)是f(x)最佳一致逼近多项式的充要条件是,E(x)在[a,b]上至少存在n+2个交错点n≤x ≤…≤x ≤b,使得
E(x )=±E .i= l,2,⋯ ,n+2 (3.6)
且 E(x ) =-E(x ),i=l,2,⋯ ,n + 2 (3.7)
这n+2个点即是”交错点组”,显然x ,x ,x 是E(z)的极值点。n阶切比雪夫多项式
(3.8)

在区间[-l,1]存在n+1个点 ,轮流似的 取得最大值+1和最小值一l, 是x的多项式,且最高项 的系数是 ,可以证明,在所有n阶多项式中,多项式 / ,和0的偏差最小。这样,如果我们在寻找P(x)时,能使误差函数为某一个 ,那么,这样的P(x)将是对f(x)的最佳一致逼近[4]。
使用MATLAB语言来设计FIR数字滤波器
除了上面几种主要的设计方法,我们设计滤波器也可以采用MATLAB本身的来实现。MATLAB语言的应用很广泛,特别是在数字信号的处理方面,因为它有着强大的仿真功能。
以上述的各种方法一一在MATLAB中实现。
1.窗函数法
以一个线性相位FIR低通滤波器为实例,其性能指标为:通带边界频率ωp=0.5π,阻带边界频率ωS=0.66π,阻带衰减不小于40dB,通带波纹不大于3dB。
在此例中,阻带衰减不小于40dB,选取汉宁窗。
用MATLAB编程程序见附录1。
程序运行后,即得所设计FIR线性相位滤波器的频率特性。如图3.1和3.2所示。
图3.1 FIR线性相位滤波器的频率特性
图3.2 FIR线性相位滤波器的相位特性
2.频率采样法
以前面的线性相位FIR低通滤波器为实例,其性能指标为:通带边界频率ωp=0.5π,阻带边界频率ωS=0.66π。在此法设计中,没有用到允许最大最小衰减等设计指标。
用MATLAB编程程序见附录2。
程序运行后,可以看到所设计FIR滤波器的幅频特性、冲激响应和衰减特性曲线等。
如下图3.3、3.4、3.5所示。

图3.3 所设计的FIR滤波器频率特性

图3.4 所设计的FIR滤波器相位特性
3.切比雪夫逼近法
继续实现之前的线性相位FIR低通滤波器。通带边界频率ωp=0.5π,阻带边界频率ωS=0.66π,阻带衰减不小于40dB,通带波纹不大于3dB。

由此可以写出MATLAB程序见附录3。
程序运行后,可以看到所设计FIR滤波器的幅频特性。

图3.5 FIR滤波器的幅频特性
3.1.2椭圆模拟滤波器的设计
MATLAB还可用于模拟滤波器的设计。
椭圆的模拟低通滤波器原型的平方幅值响应函数为

(3.9)
式中,μ为小于1的正数,表示波纹情况;ωC为截止频率; 为椭圆函数,定义为
当N为偶数(N=2m)时,
(3.10)

当N为奇数(N=2m+1)时,
(3.11)

其中,

椭圆模拟滤波器的特点是:在通带和阻带内均具有等波纹起伏特性。和其它滤波器原型相比,相同的性能指标所需的阶数最小。但相频响应具有明显的非线性。
此外,在MATLAB中,有一个专门的函数ELLIP可用于椭圆模拟滤波器设计。其调用格式为
[b,a]= ellip(n,RP,RS,ωn,’s’)
[b,a]= ellip 2(n, RP,RS,ωn,’ftype’,’s’)
[z,p,k]= ellip 2(…)
[A,B,C,D]= ellip 2(…)
其中,RP为通带波纹(dB),RS为阻带衰减(dB)[8]。
下面以一个高通椭圆模拟滤波器为例,假定此滤波器的设计性能指标为:通带边界频率ωp=1500Hz,阻带边界频率ωS=1000Hz,通带波纹RP=0.5dB,阻带衰减RS=20dB。
用MATLAB编定程序见附录4。
运行结果,滤波器为3阶。滤波器的幅频特性如图3.7所示。
图3.6 椭圆滤波器幅频特性
3.2 SystemView仿真
本文采用了SystemView和MATLAB两种仿真软件,在滤波器数学模型的基础上借助SystemView对典型滤波器–椭圆模拟滤波器和FIR(有限脉冲响应)数字滤波器的特性进行仿真分析。
3.2.1椭圆滤波器仿真
点击选择菜单条上的”Filter/Analog”或单击”Analog”按钮,可以设计五种模拟滤波器。它们是:巴特沃斯、贝赛尔、切比雪夫、椭圆、线性相位。这些滤波器可以是低通、高通或带通。所选择的滤波器的一般形状由滤波器的类型决定,需要输入的数据是滤波器的极点数、-3dB带通或截止频率、相位纹波系数、增益等参数,按”Finish”完成设计[10]。
以在MATLAB中已仿真过的高通椭圆模拟滤波器为例,假定此滤波器的设计性能指标为:通带边界频率ωp=1500Hz,阻带边界频率ωS=1000Hz,通带波纹RP=0.5dB,阻带衰减RS=20dB。
按”Gain”可看到如下图3.7所示的增益响应波形图

图3.7 椭圆滤波器增益响应波形图
按”Time”可看到如下图3.8中的特性曲线
图3.8 椭圆滤波器特性曲线
由此,我们可看出其特性仿真与MATLAB中的仿真结果是相吻合的。
3.2.2椭圆滤波器效果验证(方波信号的合成分解)
在此节中,为了更好的论证椭圆滤波器的特性,设计了一个仿真系统–方波信号的合成与分解,借此阐明其滤波作用。
1.信号分解与合成原理
为了便于研究信号传输和信号处理等问题,往往将一些信号分解为比较简单(基本)的信号分量之和。分解的方法有多种,常见的分析方法有:直流分量与交流分量,偶分量与奇分量,脉冲分量和正交函数集等。其中将信号分解为正交函数集的研究方法在信号与系统理论中占有重要地位。傅立叶分析法是常见的一种,一个偶对称的矩形信号可分解为:

上一页  [1] [2] [3] [4] [5] [6]  下一页


本文关键字:滤波器  电工文摘电工技术 - 电工文摘

《典型滤波器的SystemView设计与仿真》相关文章>>>