FPGA的CIC滤波器的设计要点

FPGA的CIC滤波器的设计要点
FPGA的CIC滤波器的设计要点

基于FPGA的CIC数字滤波器的设计

摘要:级联积分梳状(Cascade Integrator Comb,CIC)滤波器是数字系统中实现大采样率变化的多速率滤波器,已经证明是在高速抽取和插值系统中非常有效的单元,在数字下变频(DDC)和数字上变频(DUC)系统中有广泛的应用。它不包含乘法器,只是由加法器,减法器和寄存器组成,而且需要的加法器的数目也减少了许多,因此CIC滤波器比FIR和IIR滤波器更节省资源,并且实现简单而高速。本文主要讨论了CIC滤波器的基本原理和基于FPGA的仿真实现方法,具体是采用Verilog HDL语言编程,将滤波器分为积分器模块和梳状器模块2个部分,对每个模块进行具体的功能分析和设计实现,最后通过Modelsim 仿真对滤波器的性能进行分析,验证了设计的正确性。

关键词:CIC滤波器;抽取;FPGA;Verilog HDL

the Design of Cascade Integrator Comb Filter Based on FPGA

Abstract:CIC (Cascade Integrator Comb, CIC) filter is a digital system to achieve large changes in multi-rate sampling rate filter, which has been proven to be a very effective unit in the high-speed extraction and interpolation system. It is widely used in the digital down conversion (DDC ) and digital up conversion (DUC) systems. It does not contain the multiplier, but just composes by adders, subtractors and registers, and the number of needing adders is reduced a lot. So it takes fewer resources than FIR filter and IIR filter. And the speed of CIC filter is very high and it is also very convenient to realize.This article discusses the basic principles of CIC filter and the simulation way based on FPGA. The modules were described with Verilog HDL. Firstly, the filter was divided into two parts which were integration module and the comb module. Then the function of each module were analyzed and designed. Finally the performance of the filter was analyzed under ModelSim and the correctness of the design was verified. Keywords:CIC filter; Decimation; FPGA; Verilog HDL

1. 引言:

数字滤波是数字信号分析中最重要的组成部分之一,数字滤波与模拟滤波相比,具

有精度和稳定性高,系统函数容易改变,灵活性高,不存在阻抗匹配问题,便于大规模集成,可实现多维滤波等优点。

级联积分梳状(Cascade integrator comb,CIC)滤波器,是由Hogenauer引入的一种非常有效的高分解速率的数字滤波器结构,已经证明是在高速抽取和插值系统中非常有效的单元。它具有较好的抗混叠和抗镜像性能;它不包含乘法器,只是由加法器,减法器和寄存器组成,而且需要的加法器的数目也减少了许多,因此CIC滤波器比FIR和IIR 滤波器更节省资源,并且实现简单而高速;无需存储滤波器的系数,结构规则易于拓展,无需外部控制,抽取倍数可变,对提高实时性和简化硬件有重要意义。

CIC滤波器的应用范围非常的广泛:由于其具有较好的抗混叠和抗镜像性能,可以实现任意采样率的转换,因此被用在软件无线电接收机中;用于正交多速率调制系统中,但又不仅仅是局限在调制器中,只要CIC滤波器之前或之后有FIR滤波器,对CIC滤波器的通带衰减进行补偿以后,都能够以很小的代价换取最大的硬件资源节省[1];在全数字接收机中的应用,CIC滤波器与HB滤波器共同实现了数字抽取滤波器,从输入的宽带高数据流的数字信号中提取所需的窄带信号,并在低通滤波器的作用下,下变频为数字基带信号[2];在-?

∑ADC中频信号处理模块中的应用,用CIC滤波器来匹配噪声抑制滤波器,并对采样后的数据再进行下采样,以降低噪声和后端硬件成本[3];在无线通信中的应用,如:蜂窝式无限电通信;CIC滤波器由于其结构的独有特性,已经成为了许多新型高性能器件的核心部件。因此研究它具有很重要的实用意义。

本文是要设计一个基于现场可编程门阵列(FPGA),用Verilog HDL语言编程实现的级联积分梳状(Cascade integrator comb,CIC)数字滤波器。主要内容包括:架构设计、接口逻辑设计、FSM设计、编码实现、功能仿真等。

2. 设计平台介绍:

系统设计需要使用Verilog HDL(Hardware Descriptions Language)、ModelSim 6.0、FPGA(Field Programmable Gates Array)现场可编程门阵列。

2.1 Verilog HDL简介:

Verilog HDL是一种硬件描述语言(HDL:Hardware Description Language),用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和完整的电子数字系统之间。数字系统能够按层次描述,并可在相同描述中显式地进行时序建模。以文本形式来描述数字系统硬件的结构和行为的

语言,用它表示逻辑电路图、逻辑表达式以及数字逻辑系统所完成的逻辑功能。

2.2 Modelsim简介:

M odelsim仿真工具是Model公司开发的。它支持Verilog VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化等。ModelSim是业界最优秀的HDL语言仿真器。它提供最友好的调试环境,是唯一的单内核支持VHDL和Verilog混合仿真的仿真器。全面支持VHDL和Verilog语言的IEEE 标准,支持C/C++功能调用和调试。2.3 FPGA简介:

现场可编程门阵列FPGA(Field Programmable Gates Array)是近10年加入到用户可编程技术行列中的器件。现场可编程阵列在器件的选择和内部的互联上提供了更大的自由度。FPGA的结构类似于掩膜可编程门阵列(MPGA),由逻辑功能块排列成阵列组成,并由可编程的内部连线连接这些逻辑功能块来实现不同的设计[4]。

FPGA是由掩膜可编程门阵列和可编程逻辑器件两者特性结合演变而来的,所以FPGA既具有门阵列的高密度和通用性,又具有可编程逻辑器件的用户可编程特性。对于ASIC设计,采用FPGA在实现小型化,集成化和高可靠性的同时,还减少了风险,降低了成本,缩短了周期。

2.3.1 FPGA基本原理:

FPGA就结构上而言,主要由三个部分主成:可编程逻辑块CLB(Configurable Logic Blocks),可编程输入/输出模块IOB(Input/Output Block),可编程互连资源PIR(Programmable Interconnect Resource)等三种可编程电路。图1所示为FPGA平面结构示意图[5]。

CLB是实现逻辑功能的基本单元,它们通常规则地排列成一个阵列,散步于整个芯片中;IOB主要完成芯片上的逻辑与外部引脚接口,它们通常排列在芯片的四周;PIR 包括各种长度的连线线段和一些可编程连接开关,它们将各个CLB之间或CLB与IOB 之间以及IOB之间连接起来,构成特定功能的电路。

其中,CLB主要由逻辑函数发生器,触发器,数据选择器等电路组成,逻辑函数发生器主要由查找表LUT(Look Up Table)构成;IOB主要由输入触发器,输入缓存器

图1. FPGA的平面结构示意图

Fig.1 The schematic diagram of FPGA

和输出触发/锁存器,输出缓存器组成,每个IOB控制一个引脚,它们可配置为输入,输出或双向I/O功能;PIR由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现各种电路的连接。

2.3.2 FPGA系统设计流程:

FPGA系统设计流程包括硬件和软件设计流程。

首先确定系统功能,并对关键部分予以仿真。在确定系统功能并划分功能块之后,根据不同的结构和算法,确定不同的资源消耗。由上述过程可以确定系统设计需要消耗的门数,存储器的大小。根据系统设计要求,对系统时序和时钟率进行考察和估计,可以确定所需器件的速度级别。根据系统外部接口的要求,确定接口时序和芯片引脚资源消耗情况。在上述过程完成以后,考虑系统功能和性能的可扩展性,确定器件型号。型号确定之后,需要确定配置方式,因为不同型号的器件,其配置方式是有很大差异的。硬件设计和软件设计可以同时进行。系统设计在经过设计,改进,查错,再设计,再改进,再查错的螺旋型过程后,即可完成系统所有的设计,进入产品生产[6]。如图2所示为FPGA系统设计流程:

图2. FPGA 设计流程 Fig.2 The design process of FPGA

3. CIC 滤波器的基本原理: 3.1 多速率信号处理原理:

所谓多速率信号处理是指改变信号的采样率,实质上是对采样后的离散序列重采样的过程,包括抽取和内插两种情况。使采样率降低的采样率转换称为抽取;使采样率升高的采样率转换称为内插。 3.1.1 整数倍抽取:

整数M 倍抽取是指原始抽样序列x(n)每隔(M-1)个取一个,形成一个新序列XM(n),XM(n)=x(Mn),正整数M 为抽取因子。M 倍抽取器符号如图3所示,设序列x(n)的频

谱为x(ejw),求得序列XM(n)的傅里叶变换(2)

1

01()w k M j jw

M M k x e X e M

π--=??=

????

∑,表明抽取后序列XM(n)的频谱为原序列x(n)的频谱经频移和M 倍展宽后的M 个频谱的叠加和。根据Nyquist 采样定理,若序列x(n)的采样率为fs ,则模拟信号的最高频率(无模糊带宽)fH≤fs /2,否则x(n)的频谱会发生混叠。当以M 倍抽取率对x(n)进行抽取后得到的抽取序列XM(n)之取样率为fs /M ,其无模糊带宽为fs /(2M),所以当x(n)中含有大于fs /(2M)

的分量时,XM(n)的频谱必然产生混叠,无法从XM(n)中恢复x(n)中频率小于fs /(2M)的低频信号分量。如果先用一个数字滤波器(归一化带宽B=π/M)对X(ejw)进行滤波得到V(ejw),该信号只含有小于π/M 频率分量,再对V(ejw)进行M 倍抽取,就可以避免频谱混叠。一个完整的M 倍抽取器结构如图4所示:

图3. M 倍抽取器符号 Fig.3The symbol of M times extractor

图4. M 倍抽取器结构

Fig.4The structure of M times extractor

3.1.2 整数倍内插:

整倍数内插是指在原始抽样序列的相邻两抽样点之间插入(L-1)个零值,设原始抽样序列为x(n),则内插后的序列为

(/),

()0,

L x n L x n ?=?

? 0,,2n L L =±

±其他

内插器符号如图5所示。设序列x(n)的频谱为x(ejw),求得序列XL(n)的傅里叶变换XL(ejw)=X(ejwL),表明内插后序列xL(n)的频谱为原序列x(n)的频谱经L 倍压缩得到的。因此,xL(ejw)中不仅含有x(ejw)的基带分量(w≤π/M ,而且还含有其高频分量(w>π/L)。对内插后的信号进行低通滤波,就可以从内插信号频谱中恢复出原始基带谱,使内插序列中的(L-1)个零值都变为x(n)的准确值,所以经过内插提高信号时域分辨率。完整的L 倍内插器结构如图6所示:

图5. L 倍内插器符号

Fig.5 The symbol of L times interpolator

jw jw

图6. L 倍内插器结构

Fig.6 The structure of M times interpolator

3.2 单级CIC 滤波器:

CIC 滤波器是由积分器(Integrator )和梳状(Comb )滤波器两部分级联而成的,根据其结构的不同,可分别实现抽取(Decimation )功能和插值(Interpolation )功能。如图7和图8所示:

图7. 单级CIC 抽取滤波器结构图

Fig.7 The structure of single-stage CIC decimation filter

图8. 单级CIC 插值滤波器结构图

Fig.8 The structure of single-stage CIC interpolation filter

积分部分的积分器是单极点的IIR 滤波器,并且反馈系数为1,状态方程如下:

y(n)=y(n-1)+x(n) (1)

积分器也可看成是累加器,根据Z 变换,积分器的传输函数为:

1

H (z)=

I -1

1-z (2) 梳状器是一个对称的FIR 滤波器,其状态方程表示为:

y(n)=x(n)-x(n-DM) (3)

式中,D 是设计参数,称为微分延迟,其传输函数为:

-DM H (z)=1-z c (4)

则单级CIC 滤波器的传递函数为:

1

H(z)=

(1)-1

1-z DM z -- (5) 其传递函数的频率响应为:

sin(wDM/2)

jw H(e )=

sin(/2)

w (6)

CIC 滤波器的幅频特性如图9所示,其中[0,2π/DM]为其主瓣,其他的区间成为旁瓣:

图9. CIC 滤波器的幅频特性

Fig.5 The frequency-amplitude characteristic of CIC filter

由图中可以看出,随着频率的增大,旁瓣电平不断减小,当DM>>1时,第一旁瓣的电平为2DM/3π,它与主瓣电平的差值为:

320lg

20lg 13.3622/3DM a dB DM π

π

=== (7)

可见单级CIC 滤波器的旁瓣电平较大,阻带衰减较差。为降低旁瓣电平,可以采用多级CIC 滤波器级联的办法来实现。假设有N 级级联,则阻带衰减为单级衰减的N 倍,即13.36*N (DB )。 3.3 多级CIC 滤波器:

多级CIC 滤波器的传递函数为[7]:

(1)1N H z H ()I 11(1)1N

DM N

DM

z z Z N

z z --??

--=

=?

?---?-??

?N H(z)=()C (8)

其中,N 为CIC 滤波器的级数,D 为梳状部分延迟因子,M 为抽取因子。

滤波器的频率响应为:

N

N

sin(wDM/2)

jw H(e )

=

sin(/2)

w (9)

令w1表示通带截止频率,w2表示阻带截止频率,在抽取后,对有用信号产生混叠的阻带带宽为w1,则有w2(2/)1DM w π=-。则N 级CIC 滤波器的阻带衰减为:

0()

20lg 20lg (2/1)

sin(1/2)/sin(/1/2)

()

j H e DM

N a j DM w s

w DM D w H e

πππ==--- (10)

定义带宽比例因子b 为信号带宽与抽取后输出采样率的比值,即b=w1DM/2π,则:

sin[(1)/]

20Nlg 20lg sin()

DM b DM N a N b s

b ππ-=≈- (11)

N 级CIC 滤波器的通带波纹为:

0()sin(/)20lg 20lg

1sin()()

j H e R b DM N a s jw b H e ππ== (12) 由(11)式可知,滤波器的阻带衰减随着N 的增加而增加。所以多级CIC 滤波器的阻带衰减远远优于单级CIC 滤波器。一般来说阻带衰减达到70dB 左右就能基本满足实际要就。并且由(12)式可知,随着N 的增大,通带波纹也会增大,所以CIC 滤波器的级数是有限的。多级CIC 滤波器的性能由3个参数N,D,M 决定。级数N 可以用来控制阻带衰减,N 越大阻带衰减越大,通带内的混叠就越小,但是由于N 级CIC 滤波器的带内容差是单级时的N 倍,增大阻带衰减的同时会增大带内容差,所以N 不可太大,一般不超过5级。延迟因子D 决定零点的位置,D 的增大可以有效的减少通带内的混叠,但是D 太大会导致通带内主瓣衰减过大,所以一般D 取1或2,抽取因子M 决定了抽取后信号的采样频率,它同延迟因子一起决定了主瓣和旁瓣的宽度。通常情况下,根据工程要求来确定抽取因子M ,然后对通带带宽,通带衰减,和混叠特性进行折衷考虑来确定延迟因子D 和滤波器的级数N 。 4. 详细设计:

首先构造一个3级的CIC 抽取滤波器,只需把3级积分器的输出和3级梳状器的输入串联起来,就构成了3级的CIC 滤波器。图10为3级CIC 抽取滤波器的结构图,而内插滤波器的级联方式与抽取器相反。

为了能够更加直观的观察多级CIC 滤波器的幅频特性,特在MATLAB 中对3级的CIC 抽取滤波器的幅频特性进行了绘制(抽取因子M 为16,梳状部分延迟D 为2),并且与单级的CIC 滤波器进行比较,所得到的图形为图11。

图10. 3级CIC抽取滤波器的结构图

Fig.10 The structure of three stages CIC decimation filter

图11. CIC滤波器幅频特性图

Fig.11 The frequency-amplitude characteristic of CIC filter

从图11中可以看出:CIC滤波器是低通滤波器,3级CIC滤波器比单级的CIC滤波器的性能更好,主瓣电平比旁瓣电平高大概40dB,说明阻带衰减比较快;而单级的CIC 滤波器的旁瓣只比主瓣低13.36dB,阻带衰减很差。因此多级CIC滤波器的性能比单级的要好,MATLAB幅频特性程序见附录1。

多级CIC滤波器结构简单,而且可以很方便地实现速率变换,在滤波器的两个部分之间,速率发生了变化。对于CIC的抽取滤波器而言,在最后一级积分器的输出端,采样速率由f s变为f s/M。

在设计CIC滤波器的过程中应注意的问题就是防止积分器的数据发生溢出,可以采

取以下两个方法,并且不会影响滤波的正确性:

(1) 所采用的数据编码具有如下特点:当从高端溢出时返回到低端,从低端溢出时返回到高端,其实质是对数据求模;

(2) 寄存器所存数值的大小大于,等于整个滤波器最后输出地数值范围。 第一个条件采用二进制补码形式实现(在Modelsim 中会自动将负数用二进制补码表示)。

下面分析如何实现第二个条件:

为了得到CIC 滤波器的幅频响应,将iw z e =带入系统的传递函数,即式(8),为了表示方便把iw z e =表示成2/(2)2/2/1i F MF i f M iw i F F z e e e e πππ====的形式,其中/2f F F =称为相对于2F 的归一化频率,将它带入(8)式可得N 级CIC 滤波器的幅频响应:

sin()

H ()N sin(/)

N

Df f f M ππ= (13)

从式(13)可知,N 级CIC 滤波器级联的最大幅度增益为:

N G=(DM) (14)

由于DM 的值很大,N 级CIC 滤波器级联的N (DM)的值也很大,所以在设计过程中为了防止溢出,必须相应的扩大数据的位数,以减少误差。如果B in 为输入数据的位数,

那么最大内部位宽为:

B B lg DM out in 2

N =+() (15) 其中lg DM 2N ()为最大动态范围的增长。为防止数据溢出,最大限度的节省FPGA 的

硬件资源,应该把积分器的积分部分和梳状的寄存器位宽扩展到B out 位[8]。

设计的时候从CIC 滤波器的功能要求出发,将该滤波器分为三个部分:积分部分:实现了三个积分器;抽取部分:实现了下采样功能;梳状部分:实现了三个梳状器,再分析各个模块所实现的功能,并对这三个模块进行详细的设计。 4.1 前端设计:

首先对CIC 滤波器的各个参数进行设定:滤波器的输入数据为8位,级数N 为3,梳状部分的延迟D 为2,抽取因子为16 ,并且由(15)式可计算出它的最大内部位宽

为23。根据精度要求,输出可以取小于23,本设计中取23位。然后从CIC滤波器的功能要求出发,将该滤波器的输入信号设为以下几个:reset, clk, x_in, 其中reset是复位信号(防止程序运行过程中产生随机数),clk是输入的时钟信号,x_in是所输入的8位的数据。输出信号为:y_out,它表示所输出的23位的数据。则端口列表为:

input reset;

input clk;

input [7:0] x_in;

output [22:0] y_out;

寄存器型的变量可以理解为实际电路中的寄存器,它具有记忆特性,是一种存储元件,在输入信号消失后它可以保持原有的数值不变。寄存器型变量一般使用关键字reg 进行定义,并且在定义时可以加入位宽,位宽为1的变量也称为标量,位宽大于1的变量称为矢量。由于在Verilog HDL中默认的变量类型是wire型,所以如果某个变量的类型需要为寄存器型,则必须在程序中加以定义,而且值得注意的是,任何在always块内被赋值的变量都必须是寄存器型[9]。在本设计中,需定义如下变量:

reg derived_clk;

reg[3:0] counter;

reg[22:0] IntReg0[1:0],IntReg1[1:0],IntReg2[1:0],IntReg3;

reg[22:0] ComReg0[2:0],ComReg1[2:0],ComReg2[2:0],ComReg3;

4.2 积分器模块设计:

三级的CIC滤波器前面的积分部分是由三个一级的积分器级联而成,是一类IIR滤波器,但是它没有前馈,而只有回馈部分。分别用寄存器:IntReg0[1:0],IntReg1[1:0],IntReg2[1:0]来表示第一,第二,第三个一级积分器,积分器的输出放在寄存器IntReg3中。积分器实现的关键是如何实现输入信号的延时,本设计是通过将输入信号放在寄存器中,经过一个单位的延时以后再调用这个寄存器中的值,从而实现延时的,积分器模块的实现如下:

//积分器实现模块

always @(posedge clk) //时钟上升沿有效

begin: INTEGRATOR

//复位时所有的寄存器输出为0

if(!reset)

begin

IntReg0[0] <=0;

IntReg0[1] <=0;

IntReg1[0] <=0;

IntReg1[1] <=0;

IntReg2[0] <=0;

IntReg2[1] <=0;

IntReg3 <=0;

end

else

begin

IntReg0[0][7:0] <= x_in; //将输入信号赋值给IntReg0的低八位

IntReg0[1] <= IntReg0[0]; /*将IntReg0[0]赋值给IntReg0[1]相当于延时*/

IntReg1[0] <= IntReg0[1] + IntReg0[0];

IntReg1[1] <= IntReg1[0];

IntReg2[0] <= IntReg1[1] + IntReg1[0];

IntReg2[1] <= IntReg2[0];

IntReg3 <= IntReg2[1] + IntReg2[0];

end

end

4.3 抽取器模块设计:

改变系统的抽样频率有两种方法:其中减少抽样率的过程成为信号的“抽取”,也称为“抽样率压缩”;增加抽样率的过程称为信号的“插值”,亦称为“抽样率扩张”。抽取器的主要作用是转换抽样率,使系统工作在多抽样率状态。本设计中所要用到的是抽样压缩,其定义如下:

当信号的抽样数据量太大时,可以在每A个抽样中取一个,或者说每隔A-1个抽样取出一个,以便减小数据量,A是整数,称为抽取因子,这样的抽取称为整数倍抽取[10]。

本设计中抽取器的实现主要是通过一个计数器来实现的,因为抽取因子为16,所以定义了一个4位的计数器reg [3:0] counter,其具体的实现模块如下:

//计数器

always @(posedge clk)

begin

if(!reset)

counter <= 0;

else

begin

if(counter>=10) //生成下采样后的时钟

derived_clk = 1;

else

derived_clk = 0;

counter = counter + 1;

end

end

4.4 梳状器模块设计:

梳状滤波器的积分器是一类FIR滤波器,由于这种滤波器每个抽头系数非“0”,即“1”,因此仅需延时器和加法器就可以实现。它是由三个单级的微分器级联而成的,分别用ComReg0[2:0],ComReg1[2:0],ComReg2[2:0]来表示依次第一,第二,第三个一级的微分器,梳状器的输出放在寄存器ComReg3中。实现它的关键也是延时部分的实现,但是跟积分器不同的是,梳状器的延时是两个时间单位,因此要将信号连续赋值给两个寄存器来实现延时。其具体的实现模块如下:

//梳状器实现模块

always @(posedge derived_clk)

begin:COMB

if(!reset)

begin

ComReg0[0] <= 0;

ComReg0[1] <= 0;

ComReg0[2] <= 0;

ComReg1[0] <= 0;

ComReg1[1] <= 0;

ComReg1[2] <= 0;

ComReg2[0] <= 0;

ComReg2[1] <= 0;

ComReg2[2] <= 0;

ComReg3 <= 0;

end

else

begin

ComReg0[0] <= IntReg3;

ComReg0[1] <= ComReg0[0];

ComReg0[2] <= ComReg0[1]; //延时两个时间单位

ComReg1[0] <= ComReg0[0] - ComReg0[2];

ComReg1[1] <= ComReg1[0];

ComReg1[2] <= ComReg1[1];

ComReg2[0] <= ComReg1[0] - ComReg1[2];

ComReg2[1] <= ComReg2[0];

ComReg2[2] <= ComReg2[1];

ComReg3 <= ComReg2[0] - ComReg2[2];

end

end

将上述三个模块综合起来,就形成了一个完整的Verilog HDL的CIC滤波器的程序见附录2。

5. 在Modelsim环境下的功能仿真:

验证是保证设计在功能上的正确性的一个过程,要对所设计的程序进行仿真验证就要编写一个Testbench文本,即测试平台。简单来说,在仿真的时候Testbench用来产生测试激励给待验证设计(DUV),或者称为待测设计(DUT),同时检查DUV的输出是否与预期的一致,达到验证设计功能的目的。图12为基于Testbench的仿真流程:

图12. 基于Testbench的仿真流程

Fig.12 The simulation flow chart of Testbench

从图中可以清晰地看出Testbench的主要功能:

(1)为DUT(Design Under Test,待测设计)提供激励信号;

(2)正确实例化DUT;

(3)将仿真数据显示在终端或者存为文件,也可以显示在波形窗口中以供分析检查;

一个Testbench设计好以后,可以为芯片设计的各个阶段服务,比如在对RTL代码,综合网表和布线之后的网表进行仿真的时候,都可以采用同一个Testbench[11]。

将实现CIC滤波器功能的设计呈现在Modelsim环境下进行波形仿真,经过多次

的调试和程序修改后,运行的仿真波形图可将CIC滤波器的功能表示出来。图13为CIC 滤波器在Modelsim环境下进行波形仿真:

图13. Modelsim波形仿真

Fig.13 The wave Simulation of Modelsim

线网型(net)的变量可以理解为实际电路中的导线,通常用于表示结构体之间的物

理连接,就不可以存储任何值,并且一定要受到驱动器额驱动才有效。一个线网型变量可能同时受到几个驱动源的驱动,此时该线网型变量的取值由逻辑强度较高的驱动源决定;如果多个驱动源的逻辑强度相同,则取值为不定态,这和实际电路模型的情况是完全相符的。本设计中y_out被申明为wire型,因此在刚开始仿真的一段时间里y_out的输出值为不定态x。为了便于观察将波形进行缩小,并且将时间轴右移一些得到图14所示的波形图:

图14. Modelsim波形仿真

Fig.14 The wave Simulation of Modelsim

通过观察波形可以知道,每16个时钟周期,y_out输出一个数值,实现了抽取率为16的功能,基本实现了CIC抽取滤波器的功能。

在利用Modelsim进行仿真的过程中,首先利用MATLAB产生一个周期为16的正弦波,并从中采样了4096个点存储在sin.txt中,然后将这些数据导入测试程序中,因此为了能够更加直观的观察滤波器的功能,将输入和输出的数据模拟表示为图15。

从图15中可以看出:输出的波形较输入波形有一段时间的延时,波形前面一段输出的是直线,是由于积分器和梳状器的延时所导致的输出的不定态X,但输出波形整体上也是一个正弦波,和输入波形保持一致,并且是呈阶梯状的,其中每一个阶梯就是一个抽取因子。Testbench测试文件见附录3,正弦波数据产生程序见附录4。

图15. Modelsim波形仿真

Fig.15 The wave Simulation of Modelsim

6. 结束语:

CIC滤波器结构简单,仅有两个功能模块,能够节省资源,并且在工程上易于实现,是一种经济型滤波器。滤波是只做加法运算,无需一般的FIR滤波器所需的乘法运算,大大简化了计算量,从而降低了后续电路的处理速度。文中叙述了CIC滤波器的基本原理及其多级CIC滤波器的具体设计,仿真结果证明了设计方案的正确性和可行性。CIC 滤波器是多速率信号处理中的一种重要的部件,在软件无线电中起到了重要的作用,研究它具有重要意义。(Hogenauer还引入了“剪除”理论对每一级的位宽进行裁剪,在实际的应用中,考虑到资源和速度的问题,CIC滤波器应采用剪除理论来实现,文中未做介绍。)

参考文献:

[1]. ZHANG JIAN.CHEN Yan.WANG Hua. Performance Analysis of Cascaded Integrator-Comb Filter in

Modulator [J].Transaction of Beijing Institute of Technology.2006.26(04).345-348

[2]. 刘福奇.刘波.Verilog HDL应用程序设计实例精讲[M].北京:电子工业出版社.2009.11.189-205

[3]. QainLinjun.Design of CIC Filter Baced on ∑-△ADC [J].Electronic Component &. Device

Applications.2009.11(01).44-46

[4]. 高明伦. Verilog与PC机接口电路设计[M].合肥:安徽科学技术出版社.2002.62-63

[5]. 朱明程.现场可编程门阵列器件[M].北京:电子工业出版社.1994.12-32

[6]. 叶淦华.FPGA嵌入式应用系统开发典型实例[M].北京:中国电力出版社.2005.40-41

[7]. 刘凌.胡永生译.数字信号处理的FPGA实现[M].北京:清华大学出版社.2002.134-139

[8]. ZhuGuojun.ZhangHao.ZhangZhijun.Implementation of CIC Filter Based on FPGA [J].Electronic

Science and Technology.2006(11).19-22

[9]. 王冠.黄熙.王鹰. Verilog HDL与数字电路设计[M].北京:机械工业出版社.2005.30-32

[10]. 程佩青.数字信号处理教程[M].北京:清华大学出版社.2000.122-128

[11]. 吴继华,王城.设计与验证-Verilog HDL[M].北京:人民邮电出版社.2006.159-161

%单级CIC滤波器参数

m1=2; %延迟因子

n1=1; %滤波器阶数

r1=32; %抽取因子

%三级CIC滤波器的参数

m2 = 2;

n2= 3;

r2= 32;

dw=0.01;

w=0:dw:1*pi;

%计算滤波器的频率响应

h1= exp(i*n1*w/2*(1-r1*m1)).*(sin(r1*m1*w/2)./sin(w/2)).^n1;

%计算滤波器的频率响应

h2=exp(i*n2*w/2*(1-r2*m2)).*(sin(r2*m2*w/2)./sin(w/2)).^n2;

plot(w/pi,20*log10(abs(h1)),'m'); %绘制单级CIC滤波器的幅频特性

hold on;

plot(w/pi,20*log10(abs(h2)),'b:'); %绘制3级CIC滤波器的幅频特性

grid on;

legend('single stage','three-stage',2)

xlabel('Normalized Frequency Relative to the High Sampling Rate(\times\pirad/sample)'); ylabel('Magnitude (dB)');

title('Frequency Response');

第4章___数字滤波器设计要点

第四章数字滤波 第二节数字滤波的设计 通信与电子信息当中,在对信号作分析与处理时,常会用到有用信号叠加无用噪声的问题。这些噪声信号有的是与信号同时产生的,有的是在传输过程中混入的,在接收的信号中,必须消除或减弱噪声干扰,这是信号处理中十分重要的问题。根据有用信号与噪声的不同特性,消除或减弱噪声,提取有用信号的过程就称为滤波。滤波器的种类很多,实现方法也多种多样,本章利用Matlab来进行数字滤波器的 设计。 数字滤波器是一离散时间系统,它对输入序列x(n)进行加工处理后,输出序列 y(n),并使y(n)的频谱与x(n)的频谱相比发生某种变化。 由DSP理论得知,无限长冲激响应(IIR)需要递归模型来实现,有限长冲激 响应(FIR)滤波器可以采用递归的方式也可采用非递归的方式实现。本章把FIR 与IIR滤波器分别用Matlab进行分析与设计。数字滤波器的结构参看《数字信号处理》一书。 数字滤波器的设计一般经过三个步骤: 1.给出所需滤波器的技术指标。 2.设计一个H(Z),使其逼近所需要的技术指标。 3.实现所设计的H(Z)。 4.2.1 IIR数字滤波器设计 设计IIR数字滤波器的任务就是寻求一个因果、物理可实现的系统函数H(z),使它的频响H(e jω)满足所希望得到的低通频域指标,即通带衰减A p、阻带衰减A r、通带截频ωp、阻带截频ωr。而其它形式的滤波器由低通的变化得到。 采用间接法设计IIR数字滤波器就是按给定的指标,先设计一个模拟滤波器,

进而通过模拟域与数字域的变换,求得物理可实现的数字滤波器。从模拟滤波器变换到数字滤波器常用的有:脉冲响应不变法和双线性变换法。IIR滤波器的设计 过程如下 数字频域指标→模拟频域指标→设计模拟滤波器H(S) →设计数字滤波器H(z) 1. 模拟滤波器简介 模拟滤波器的设计方法已经发展得十分成熟,常用的高性能模拟低通滤波器有巴特沃斯型、切比雪夫型和椭圆型,而高通、带通、带阻滤波器则可以通过对低通进行频率变换来求得。必须指出,这三种滤波器都是非线性的相频特性。具体设计方法参见《数字信号处理》一书。 (1)巴特沃斯低通滤波器的特点是:通、阻带均为单调下降。这种单调下降的特性使得系统的误差分布不均匀。在设计中,如果在通带满足指标,阻带指标就过于好了。或者说,在阻带满足指标,通带指标也过于好了。这样不利于以最小的阶数来满足设计指标。 (2)切比雪夫模拟低通滤波器分成Ι型和ΙΙ型:Ι型是通带等波纹,阻带单调下降;ΙΙ型滤波器是通带单调下降,阻带等波纹。切比雪夫的等波纹特性使得可以用较小的阶数设计出符合指标的滤波器。 (3)椭圆滤波器特点是通、阻带均为等波纹。椭圆滤波器的误差均匀分布在通、阻带,比较上面几种滤波器,在同样衰耗指标下,椭圆滤波器所要求的阶数最小。在同样阶数情况下,椭圆滤波器的通带到阻带的变化最陡峭、性能最好。 2.模拟滤波器映射到数字滤波器 从模拟滤波器变换到数字滤波器常用的有:冲激响应不变法和双线性变换法。(1)冲激响应不变法

滤波器设计步骤及实现程序

数字滤波器的设计步骤及程序实现 湖南理工学院信息与通信工程学院 一、IIR 脉冲响应不变法设计步骤 1、已知实际数字指标as s ap p ,,,ωω 2、将数字指标化为原型模拟指标As s Ap p ,,,ΩΩ,可设T=pi, T /ω=Ω 3、求原型模拟滤波器的c N Ω,,其中:??? ???ΩΩ--=)/lg(2)]110/()110lg[(10/10/s p A A s p N N A p cp p 210 /1 10 -Ω= Ω N A s cs s 210 /1 10 -Ω= Ω ][cs cp c ΩΩ∈Ω, 4、根据N 写出归一化原型系统函数)(p G a 5、用c s p Ω=/代入得原型系统函数c s p a a p G s H Ω==/)()( 6、将)(s H a 化为部分分式展开形式∑-=k k a s s A s H )( 7、写出)(z H 的极点T s k k e z =,并写出)(z H 的部分分式展开形式∑--?= 11)(z z A T z H k k 8、将)(z H 化为分子分母形式,验证设计结果。 二、IIR 双线性变换法设计步骤 1、已知实际数字指标as s ap p ,,,ωω 2、将数字指标化为原型模拟指标As s Ap p ,,,ΩΩ,可设T=2, 2 tan 2ω?= ΩT 3、求原型模拟滤波器的c N Ω,,其中:?? ? ???ΩΩ--=)/lg(2)]110/()110lg[(10/10/s p A A s p N N A p cp p 210 /1 10 -Ω= Ω N A s cs s 210 /1 10 -Ω= Ω ][cs cp c ΩΩ∈Ω, 4、根据N 写出归一化原型系统函数)(p G a 5、用c s p Ω=/代入得原型系统函数c s p a a p G s H Ω==/) ()( 6、用11 112--+-?=Z Z T s 代入原型系统函数)(s H a 得1 1 112)()(--+-? ==Z Z T s a s H z H 8、将)(z H 整理成分子分母形式,验证设计结果。

有源低通滤波器设计报告要点

课程设计(论文)说明书 题目:有源低通滤波器 院(系):信息与通信学院 专业:通信工程 学生姓名: 学号: 指导教师: 职称: 2010年 12 月 19 日

摘要 低通滤波器是一个通过低频信号而衰减或抑制高频信号的部件。理想滤波器电路的频响在通带内应具有一定幅值和线性相移,而在阻带内其幅值应为零。有源滤波器是指由放大电路及RC网络构成的滤波器电路,它实际上是一种具有特定频率响应的放大器。滤波器的阶数越高,幅频特性衰减的速率越快,但RC网络节数越多,元件参数计算越繁琐,电路的调试越困难。根据指标,本次设计选用二阶有源低通滤波器。 关键词:低通滤波器;集成运放UA741;RC网络 Abstract Low-pass filter is a component which can only pass the low frequency signal and attenuation or inhibit the high frequency signal . Ideal frequency response of the filter circuit in the pass band should have a certain amplitude and linear phase shift, and amplitude of the resistance band to be zero. Active filter is composed of the RC network and the amplifier, it actually has a specific frequency response of the amplifier. Higher the order of the filter, the rate of amplitude-frequency characteristic decay faster, but more the number of RC network section, the more complicated calculation of device parameters, circuit debugging more difficult. According to indicators ,second-order active low-pass filter is used in this design . Key words:Low-pass filter;Integrated operational amplifier UA741;RC network,

金属同轴腔滤波器设计要点

金属同轴腔滤波器设计 摘要 近年来,随着移动通信、导航技术和电子对抗的快速发展,对现有微波元器件的需求和性能的改进都提出了很高的要求。同轴腔体带通滤波器作为微波带通滤波器中应用最广的一种滤波器,具有功率容量大、插入损耗低、寄生通带远等特点,在现代无线通信、数字电视广播、卫星导航、遥测遥感和雷达等系统中得到了广泛的应用。 本文对同轴腔体带通滤波器做了详细的分析,分析讨论了同轴谐振腔的电磁特性,主要包括谐振频率、谐振腔的耦合结构和外部品质因数等。利用响应函数得到腔体之间的耦合系数。应用三维全波仿真软件,分析了腔体结构参数与耦合系数和耦合窗的关系。最后论文给出了同轴腔滤波器设计实例,测试结果性能良好,符合设计指标要求。 关键词:微波滤波器带通滤波器同轴谐振腔全波仿真分析 1

ABSTRACT With the rapid development of mobile communication system, the quality of microwave components is becoming more and more important. As a microwave band-pass filter, coaxial cavity filter is widely applied in modern wireless communication and radar systems, for its high power capacity, low insertion loss and far spurious pass-band. Based on the research of coaxial filter, the electromagnetic properties of coaxial cavity resonator are proposed in the paper, including resonant frequency, coupling structure and external Q of the cavities. The coupling coefficient of filter can be getting by utilizing response function. The width of coupling windows and in-put/out-put coupling lines are acquired by full wave simulation and optimization. At last, a coaxial cavity filter is designed and measured, which has perfect performances and is satisfied with the technical specifications. Key Words: microwave filter band-pass filter coaxial resonator full wave simulation

FIR滤波器程序设计要点

FIR滤波器程序设计 中文摘要 21世纪是数字化的时代,随着信息处理技术的飞速发展,DSP(数字信号处理器)技术逐渐发展成为一门主流技术,它在电子信息、通信、软件无线电、自动控制、仪表技术、信息家电等高科技领域得到了越来越广泛的应用。相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号,频率响应特性可做成非常接近于理想的特性,且精度可以达到很高,容易集成等,这些优势决定了数字滤波器的应用越来越广泛,工程上常用它来做信号处理、数据传送和抑制干扰等。。同时DSP的出现和迅速发展也促进了数字滤波器的发展,并为数字滤波器的硬件实现提供了更多的选择。 本课题主要应用MATLAB软件设计FIR数字滤波器,并对所设计的滤波器进行仿真;应用DSP集成开发环境—CCS调试汇编程序,用TMS320C5402来实现了FIR数字滤波。具体工作包括:对FIR数字滤波器的基本理论进行了分析和探讨;采用MATLAB软件来学习数字滤波器的基本知识,计算数字滤波器的系数,研究算法的可行性,对FIR低通数字滤波器进行前期的设计和仿真;系统介绍了TI公司TMS320C54x系列数字信号处理器的硬件结构、性能特点和DSP的集成开发环境CCS;应用DSP集成开发环境—CCS调试汇编程序,用TMS320C5402来实现了FIR数字滤波。 关键词:频率抽样,FIR滤波器,Matlab,TMS320C5402,CCS,仿真

FIR滤波器程序设计 1设计任务和目的 1.1设计题目 FIR滤波器程序设计 1.2设计目的 1)掌握DSP编程的过程和指令的使用; 2)熟悉运用CCS集成开发环境进行仿真和TMS320C5402的基本功能和使用方法; 3)熟悉FIR滤波器的实现方法和设计过程。 2设计思路 DSP是一种实时、快速、特别适合于实现各种数字信号处理运算的微处理器。由于它由具有丰富的硬件资源、改进的哈佛结构、高速数据处理能力和强大的指令系统。 数字滤波器的设计可分为5个独立的阶段:滤波器技术规范、系数计算、实现结构、误差分析和滤波器实现。滤波器技术规范与应用有关,且应该包括振幅和相位特性的规范。 系数计算本质上就是求出满足所期望的规范的h(n)值。计算FIR滤波器系数最常用的方法有三种:窗口方法,频率抽样方法,最佳方法。窗口方法是最容易的,但是缺乏灵活性,特别是当通带波纹和阻带波纹不同时更是如此。频率抽样方法非常适合FIR滤波器的递归实现,频率抽样法也适合那些除了要求标准频率选择性滤波器(低通、高通、带通和带阻)之外的滤波器。最佳方法是最高效和灵活的一种设计方法。三中最常用的FIR滤波器结构是横向结构、频率抽样结构和快速卷积结构。横向结构包含一个使用滤波器系数的直接卷积;频率抽样结构直接同系数计算的频率抽样方法相联系。结构的选择与具体的应用有关。此处选择横向结构。 长字长的或者高阻带衰减的FIR滤波器的性能可能会受到有限字长的影响。例如,系数量化后他们的频率响应可能会发生变化。因而应当对这些滤波器的特性进行检查以确保允许的合适的字长。 在完成好前四步后,通常要考虑实现问题,以及考虑软件编程或选择结构的硬件实现。

基于MATLAB的数字滤波器的设计程序

IIR 低通滤波器的设计程序为: Ft=8000; Fp=1000; Fs=1200; As=100 ; Ap=1; wp=2*pi*Fp/Ft; ws=2*pi*Fs/Ft; fp=2*Fp*tan(wp/2); fs=2*Fs*tan(ws/2); [n11,wn11]=buttord(wp,ws,1,50,'s'); [b11,a11]=butter(n11,wn11,'s'); [num11,den11]=bilinear(b11,a11,0.5); [h,w]=freqz(num11,den11); axes(handles.axes1); plot(w*8000*0.5/pi,abs(h)); xlabel('Frequency/Hz'); ylabel('Magnitude'); title('巴特沃斯数字低通滤波器'); 巴特沃斯带通滤波器设计程序为: Ft=8000; Fp1=1200; Fp2=3000; Fs1=1000; Fs2=3200; As=100; Ap=1; wp1=tan(pi*Fp1/Ft); wp2=tan(pi*Fp2/Ft); ws1=tan(pi*Fs1/Ft); ws2=tan(pi*Fs2/Ft); w=wp1*wp2/ws2;

bw=wp2-wp1; wp=1; ws=(wp1*wp2-w.^2)/(bw*w); [n12,wn12]=buttord(wp,ws,1,50,'s'); [b12,a12]=butter(n12,wn12,'s'); [num2,den2]=lp2bp(b12,a12,sqrt(wp1*wp2),bw); [num12,den12]=bilinear(num2,den2,0.5); [h,w]=freqz(num12,den12); plot(w*8000*0.5/pi,abs(h)); axis([0 4000 0 1.5]); xlabel('Frequency/Hz'); ylabel('Magnitude'); title('巴特沃斯数字带通滤波器'); IIR 高通滤波器的设计程序为: Ft=8000; Fp=4000; Fs=3500; wp1=tan(pi*Fp/Ft); ws1=tan(pi*Fs/Ft); wp=1; ws=wp1*wp/ws1; [n13,wn13]=cheb1ord(wp,ws,1,50,'s'); [b13,a13]=cheby1(n13,1,wn13,'s'); [num,den]=lp2hp(b13,a13,wn13); [num13,den13]=bilinear(num,den,0.5); [h,w]=freqz(num13,den13); axes(handles.axes1); plot(w*21000*0.5/pi,abs(h)); xlabel('Frequency/Hz'); ylabel('Magnitude'); title('切比雪夫Ⅰ型数字高通滤波器');

自适应滤波器毕业设计论文

大学 数字信号处理课程要求论文 基于LMS的自适应滤波器设计及应用 学院名称: 专业班级: 学生姓名: 学号: 2013年6月

摘要自适应滤波在统计信号处理领域占有重要地位,自适应滤波算法直接决定着滤波器性能的优劣。目前针对它的研究是自适应信号处理领域中最为活跃的研究课题之一。收敛速度快、计算复杂性低、稳健的自适应滤波算法是研究人员不断努力追求的目标。 自适应滤波器是能够根据输入信号自动调整性能进行数字信号处理的数字滤波器。作为对比,非自适应滤波器有静态的滤波器系数,这些静态系数一起组成传递函数。研究自适应滤波器可以去除输出信号中噪声和无用信息,得到失真较小或者完全不失真的输出信号。本文介绍了自适应滤波器的理论基础,重点讲述了自适应滤波器的实现结构,然后重点介绍了一种自适应滤波算法最小均方误差(LMS)算法,并对LMS算法性能进行了详细的分析。最后本文对基于LMS算法自适应滤波器进行MATLAB仿真应用,实验表明:在自适应信号处理中,自适应滤波信号占有很重要的地位,自适应滤波器应用领域广泛;另外LMS算法有优也有缺点,LMS算法因其鲁棒性强特点而应用于自回归预测器。 关键词:自适应滤波器,LMS算法,Matlab,仿真

1.引言 滤波技术在当今信息处理领域中有着极其重要的应用。滤波是从连续的或离散的输入数据中除去噪音和干扰以提取有用信息的过程,相应的装置就称为滤波器。滤波器实际上是一种选频系统,他对某些频率的信号予以很小的衰减,使该部分信号顺利通过;而对其他不需要的频率信号予以很大的衰减,尽可能阻止这些信号通过。滤波器研究的一个目的就是:如何设计和制造最佳的(或最优的)滤波器。Wiener于20世纪40年代提出了最佳滤波器的概念,即假定线性滤波器的输入为有用信号和噪音之和,两者均为广义平稳过程且己知他们的二阶统计过程,则根据最小均方误差准则(滤波器的输出信号与期望信号之差的均方值最小)求出最佳线性滤波器的参数,称之为Wiener滤波器。同时还发现,在一定条件下,这些最佳滤波器与Wiener滤波器是等价的。然而,由于输入过程取决于外界的信号、干扰环境,这种环境的统计特性常常是未知的、变化的,因而不能满足上述两个要求,设计不出最佳滤波器。这就促使人们开始研究自适应滤波器。自适应滤波器由可编程滤波器(滤波部分)和自适应算法两部分组成。可编程滤波器是参数可变的滤波器,自适应算法对其参数进行控制以实现最佳工作。自适应滤波器的参数随着输入信号的变化而变化,因而是非线性和时变的。 2. 自适应滤波器的基础理论 所谓自适应滤波,就是利用前一时刻已获得的滤波器参数等结果,自动地调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。所谓“最优”是以一定的准则来衡量的,最常用的两种准则是最小均方误差准则和最小二乘准则。最小均方误差准则是使误差的均方值最小,它包含了输入数据的统计特性,准则将在下面章节中讨论;最小二乘准则是使误差的平方和最小。 自适应滤波器由数字结构、自适应处理器和自适应算法三部分组成。数字结构是指自适应滤波器中各组成部分之间的联系。自适应处理器是前面介绍的数字滤波器(FIR或IIR),所不同的是,这里的数字滤波器是参数可变的。自适应算法则用来控制数字滤波器参数的变化。 自适应滤波器可以从不同的角度进行分类,按其自适应算法可以分为LMS自适应滤波

滤波器设计

实验四十二 电力电子电路滤波器设计 (信号与系统—电力电子学综合实验) 一、实验原理 1. 滤波器及种类 滤波器是由集中参数或分布参数的电阻、电感和电容构成的网络,把叠加在有用信号上的噪声分离出来。采用滤波的方法,就是不阻止具有有用频率的工作信号通过,而衰减非工作信号的干扰的频率成分。从信号频谱分析的原理上说,滤波器就是压缩或降低干扰信号的频谱(通常远高于信号频谱),使传导出去的干扰值不超过规范要求的限值。滤波技术是抑制电气、电子设备传导电磁干扰的重要措施之一。 用无损耗的电抗元件构成的滤波器能阻止噪声通过,并把它反射回信号线;用有损耗元件构成的滤波器能将不期望的频率成分吸收掉。在抗干扰和滤除高频信号的情况下常用低通滤波器。 滤波器对抑制感性负载瞬变噪声有很好的效果;电源输入端接入一定结构形式的滤波器后能降低来自电网的干扰和谐波,或抑制来自电力电子装置的干扰和谐波对电网的侵害。 设计滤波器时,必须注意电容、电感等元器件的寄生特性(如电感的寄生电容和电容的寄生电感等),以避免滤波特性偏离预期值。在滤波电路中,通常还采用很多专用的滤波元件,如穿心电容、铁氧体磁环等(特别适合于高频滤波场合),它们能改善滤波器的高频特性。适当地设计或选择滤波器,并正确安装和使用滤波器,是电力电子技术和抗干扰技术的重要组成部分。 滤波器分有源和无源两种。本实验主要研究无源滤波器的设计和应用。 滤波器按类型一般分为低通滤波器、高通滤波器、带通滤波器、带阻滤波器、吸收滤波器、有源滤波器和专用通滤波器。滤波器按电路一般分为单容型(C型)、单电感型(L 型)、Γ型、反Γ型、T型和 p 型。不同结构的电路合适于不同的源阻抗和负载阻抗。 选择滤波器的原则,一般根据干扰源的特性、频率范围、电压和阻抗等参数及负载特性的要求综合考虑: (1). 要求电磁干扰滤波器在相应工作频段范围内,能满足负载要求的衰减特性,若一种滤波器衰减量不能满足要求时,则可采用多级联,可以获得比单级更高的衰减,不同的滤波器级联,可以获得在宽频带内良好衰减特性。 (2).要满足负载电路工作频率和需抑制频率的要求,如果要抑制的频率和有用信号频率非常接近时,则需要频率特性非常陡峭的滤波器,才能满足把抑制的干扰频率滤掉,只允许通过有用频率信号的要求。

数字滤波器设计步骤

数字信号处理 数字滤波器的设计 学院计算机与电子信息学院 专业电子信息科学与技术班级电子15-2 班姓名学号 指导教师刘利民

数字滤波器的设计 一、模拟低通滤波器的设计方法 1、B utterw orth 滤波器设计步骤: ⑴。确定阶次N ① 已知Ωc 、Ωs 和As 求Bu tt er worth DF 阶数N ② 已知Ωc 、Ωs 和Ω=Ωp (3dB p Ω≠-)的衰减A p 求Bu tterwort h DF 阶数N ③ 已知Ωp、Ωs和Ω=Ωp 的衰减A p 和As 求B utte rwo rth DF 阶数N /10 /1022(/)101,(/)101p s A A N N p c s c ΩΩ=-ΩΩ=-则:

⑵.用阶次N 确定 ()a H s 根据公式: 1,2,2N ()()a a H s H s -在左半平面的极点即为()a H s 的极点,因而 2,,N 2、切比雪夫低通滤波器设计步骤: ⑴.确定技术指标p Ω p α s Ω s α 归一化: /1p p p λ=ΩΩ= /s s p λ=ΩΩ ⑵.根据技术指标求出滤波器阶数N 及ε: 0.12 10 1δε=- p δα= ⑶.求出归一化系统函数 其中极点由下式求出:

或者由N 和S直接查表得()a H p 二、数字低通滤波器的设计步骤: 1、 确定数字低通滤波器的技术指标:通带截止频率p ω、通带最大衰减系数 p α、 阻带截止频率ω、阻带最小衰减系数s α。 2、 将数字低通滤波器的技术指标转换成模拟低通滤波器的技术指标。 巴特沃斯: 切比雪夫:/s s p λ=ΩΩ 0.1210 1δ ε=- p δα=

FIR数字滤波器设计论文

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

ads设计的滤波器.

1 课题背景 随着信息化浪潮的推进,现代社会产生了巨大的信息要求,通信技术正在向高速、多频段、大容量方向发展。目前移动通信中所使用的主要频率为0.8-1.0GHz,全球GSM频段分为4段,即850/900/1800/1900MHz。在宽带移动化方面,IEEE802工作组先后制定了WLAN和WiMAX等技术规范,希望能沿着固定、游牧/便携、移动这样的演进路线逐步实现宽带移动化,常用的WLAN通信频段标准为IEEE802.1b/g(2.4-2.5GHz)和IEEE802.11a(5.2-5.8GHz)。为了在移动环境下实现宽带数据传输,IEEE802.16WiMAX成了宽带移动的主要里程碑,促进了移动宽带的演进和发展,2.3-2.4GHz和3.4-3.6GHz频段均被划分为WiMAX的全球性统一无线电频段。这正是S波段的应用,因此如何研究出高性能,小型化的滤波器是目前电路设计的的关键之一。 当频率达到或接近GHz时,滤波器通常由分布参数元件构成,分布参数不仅可以构成低通滤波器,而且可以构成带通和带阻滤波器。平行耦合微带传输线由两个无屏蔽的平行微带传输线紧靠在一起构成,由于两个传输线之间电磁场的相互作用,在两个传输线之间会有功率耦合,这种传输线也因此称为耦合传输线。平行耦合微带线可以构成带通滤波器,这种滤波器是由四分之一波长耦合线段构成,它是一种常用的分布参数带通滤波器。 当两个无屏蔽的传输线紧靠一起时,由于传输线之间电磁场的相互作用,在传输线之间会有功率耦合,这种传输线称之为耦合传输线。根据传输线理论,每条单独的微带线都等价为小段串联电感和小段并联电容。每条微带线的特性阻抗为Z0,相互耦合的部分长度为L,微带线的宽度为W,微带线之间的距离为S,偶模特性阻抗为Z e,奇模特性阻抗为Z0。单个微带线单元虽然具有滤波特性,但其不能提供陡峭的通带到阻带的过渡。 如果将多个单元级联,级联后的网络可以具有良好的滤波特性。如图1.1所示。

带通滤波器设计步骤

带通滤波器设计步骤 1、根据需求选择合适的低通滤波器原型 2、把带通滤波器带宽作为低通滤波器的截止频率,根据抑制点的频率距离带通滤波器中心频点距离的两倍作为需要抑制的频率,换算抑制频率与截止频率的比值,得出m 的值,然后根据m 值选择低通滤波器的原型参数值。 滤波器的时域特性 任何信号通过滤波器都会产生时延。Bessel filter 是特殊的滤波器在于对于通带内的所有频率而言,引入的时延都是恒定的。这就意味着相对于输入,输出信号的相位变化与工作的频率是成比例的。而其他类型的滤波器(如Butterworth, Chebyshev,inverse Chebyshev,and Causer )在输出信号中引入的相位变化与频率不成比例。相位随频率变化的速率称之为群延迟(group delay )。群延迟随滤波器级数的增加而增加。 模拟滤波器的归一化 归一化的滤波器是通带截止频率为w=1radian/s, 也就是1/2πHz 或约0.159Hz 。这主要是因为电抗元件在1弧度的时候,描述比较简单,XL=L, XC=1/C ,计算也可以大大简化。归一化的无源滤波器的特征阻抗为1欧姆。归一化的理由就是简化计算。 Bessel filter 特征:通带平坦,阻带具有微小的起伏。阻带的衰减相对缓慢,直到原理截止频率高次谐波点的地方。原理截止频率点的衰减具有的经验公式为n*6dB/octave ,其中,n 表示滤波器的阶数,octave 表示是频率的加倍。例如,3阶滤波器,将有18dB/octave 的衰减变化。正是由于在截止频率的缓慢变化,使得它有较好的时域响应。 Bessel 响应的本质截止频率是在与能够给出1s 延迟的点,这个点依赖于滤波器的阶数。 逆切比雪夫LPF 原型参数计算公式(Inverse Chebyshev filter parameters calculate equiations ) ) (cosh )(cosh 11Ω=--Cn n 其中 1101.0-=A Cn , A 为抑制频率点的衰减值,以dB 为单位;Ω为抑制频率与截止频率的比值 例:假设LPF 的3dB 截止频率为10Hz,在15Hz 的频点需要抑制20dB,则有: 95.91020*1.0==Cn ;Ω=15/10=1.5 1.39624.0988.2) 5.1(cosh )95.9(cosh 11===--n ,因此,滤波器的阶数至少应该为4

毕业论文-数字滤波器设计

目录 摘要 (1) 第1章绪论 (2) 1.1数字滤波器的研究背景与意义 (2) 1.2数字滤波器的应用现状与发展趋势 (2) 1.3数字滤波器的实现方法分析 (4) 1.4本章小结 (4) 第2章数字滤波器的概述 (5) 2.1数字滤波器的基本结构 (5) 2.1.1IIR滤波器的基本结构 (5) 2.1.2FIR滤波器的基本结构 (7) 2.2数字滤波器的设计原理 (8) 2.2.1滤波器的性能指标 (9) 2.2.2IIR数字滤波器的设计方法 (9) 2.2.3FIR数字滤波器的设计方法 (10) 2.3IIR滤波器与FIR滤波器的分析比较 (12) 2.4本章小节 (13) 第3章数字滤波器的算法设计及仿真 (14) 3.1由模拟滤波器设计IIR数字滤波器 (14) 3.1.1巴特奥兹滤波器 (14) 3.1.2切比雪夫滤波器 (15) 3.1.3椭圆滤波器 (17) 3.2用MATLAB设计数字滤波器 (20) 3.2.1FDATool界面 (20) 3.2.2用Fdatool进行带通滤波器设计 (21) 3.3将系统函数由直接型化成级联型 (23) 3.3.1二阶节系数的确定 (24) 3.3.2系数转换成二进制码 (24) 3.4本章小结 (26) 第4章IIR带通滤波器的VHDL描述及仿真 (27) 4.1IIR带通滤波器的VHDL描述 (27) 4.2IIR带通滤波器的M ODELSIM仿真 (29) 4.2.1仿真波形 (29) 4.2.2仿真输出 (30) 4.3本章小节 (30)

第5章总结 (31) 5.1滤波器功能和性能总结 (31) 5.2设计心得和体会 (31) 第6章结束语 (32) 参考文献 (33) 附录 (34) 译文 (37) 外文原文 (41)

IIR数字滤波器的设计要点

数字信号处理课程设计报告 题目: IIR数字滤波器的设计 学院:化工过程自动化学院 专业班级: 学号: 姓名: 指导教师: 起止日期:2015年6月22日~2015年6月28日

目录 1课程设计的意义与任务要求 (1) 1.1课程设计的意义 (1) 1.2课程设计的任务要求 (1) 2课程设计的理论基础 (1) 2.1数字滤波器简介 (2) 2.2IIR数字滤波器的设计原理 (2) 2.3IR数字滤波器的特点 (3) 3 MATLAB软件介绍 (3) 3.1MATLAB软件介绍 (3) 3.2MATLAB应用领域 (4) 3.3MATLAB相关语句 (4) 4课程设计的具体内容 (5) 4.1数字滤波器设计步骤 (5) 4.2脉冲响应不变法和双线性变换法的变换原理和步骤. 错误!未定义书签。 4.2.1脉冲响应不变法的变换原理和步骤 ........... 错误!未定义书签。 4.2.2双线性变换法的变换原理和步骤 (6) 4.3实验步骤及运行程序 (6) 5课程设计的总结与心得 (10) 参考文献 (11)

1、课程设计的意义与任务要求 1.1 课程设计的意义 数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高、稳定性好、、灵活性强等优点。 1.2 课程设计的任务要求 (1)熟悉用脉冲响应不变法和双线性变换法设计IIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数设计IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 2、课程设计的理论基础 利用MATLAB信号处理工具箱中的滤波器设计和分析工具(FDATool)可以很方便地设计出符合应用要求的未经量化的IIR数字滤波器。需要将MATLAB设计出的IIR数字滤波器进一步分解和量化,从而获得可用FPGA实现的滤波器系数。IIR数字滤波器的设计方法有两类:间接设计法和直接设计法。间接设计法是借助模拟滤波器设计方法进行设计的,先根据数字滤波器设计指标设计相应的过渡模拟滤波器,再将过渡模拟滤波器转换为数字滤波器。直接设计法师在时域或频域直接设计数字滤波器。 由于模拟滤波器设计理论非常成熟,而且有很多性能优良的典型滤波器可供选择(如,巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器等),设计公式和图表完善,而且许多实际应用需要模拟滤波器的数字仿真,所以间接设计法得到广泛的应用。而直接设计法要求解联立方程组,必须采用计算机辅助设计。在计算机普及的今天,各种设计方法都有现成的设计程序(或设计函数)可供调用,

matlab数字滤波器设计程序

%要求设计一butterworth低通数字滤波器,wp=30hz,ws=40hz,rp=0.5,rs=40,fs=100hz。>>wp=30;ws=40;rp=0.5;rs=40;fs=100; >>wp=30*2*pi;ws=40*2*pi; >> [n,wn]=buttord(wp,ws,rp,rs,'s'); >> [z,p,k]=buttap(n); >> [num,den]=zp2tf(z,p,k); >> [num1,den1]=impinvar(num,den); Warning: The output is not correct/robust. Coeffs of B(s)/A(s) are real, but B(z)/A(z) has complex coeffs. Probable cause is rooting of high-order repeated poles in A(s). > In impinvar at 124 >> [num2,den2]=bilinear(num,den,100); >> [h,w]=freqz(num1,den1); >> [h1,w1]=freqz(num2,den2); >>subplot(1,2,1); >>plot(w*fs/(2*pi),abs(h)); >>subplot(1,2,2); >>plot(w1*fs/(2*pi),abs(h1)); >>figure(1); >>subplot(1,2,1); >>zplane(num1,den1); >>subplot(1,2,2); >>zplane(num2,den2);

自适应滤波器的设计与实现毕业论文

自适应滤波器的设计与实现毕业论文 目录 第一章前言 (1) 1.1 自适应滤波器简介 (1) 1.2 选题背景及研究意义 (1) 1.3 国外研究发展现状 (2) 第二章自适应滤波器的基础理论 (4) 2.1 滤波器概述 (4) 2.1.1 滤波器简介 (4) 2.1.2 滤波器分类 (4) 2.1.3 数字滤波器概述 (4) 2.2 自适应滤波器基本理论 (7) 2.3 自适应滤波器的结构 (9) 第三章自适应滤波器递归最小二乘算法 (11) 3.1 递归最小二乘算法 (11) 3.1.1 递归最小二乘算法简介 (11) 3.1.2 正则方程 (11) 3.1.3 加权因子和正则化 (16) 3.1.4 递归计算 (18) 3.2递归最小二乘(RLS)算法的性能分析 (22) 第四章基于MATLAB自适应滤波器仿真 (23) 4.1 正弦波去噪实验 (23) 4.2 滤波器正则化参数的确定 (28) 4.2.1 高信噪比 (28) 4.2.2 低信噪比 (31) 4.2.3 结论 (33) 4.3 输入信号不同对滤波效果的影响 (33)

4.3.1 输入信号为周期信号 (33) 4.3.2 输入信号为非周期信号 (38) 第五章结论与展望 (44) 5.1 结论 (44) 5.2 对进一步研究的展望 (44) 参考文献 (45) 致谢 (46) 附录 (46) 声明 (58)

第一章前言 1.1自适应滤波器简介 自适应滤波器属于现代滤波的畴,它是40年代发展起来的自适应信号处理领域的一个重要应用,自适应信号处理主要是研究结构可变或可调整的系统,可以通过自身与外界的接触来改善自身对信号处理的性能,通常这类系统是时变的非线性系统,可以自动适应信号传输的环境和要求,无须详细的知道信号的结构和实际知识,无须精确设计处理系统本身。 自适应系统的非线性特性主要是由系统对不同的信号环境实现自身参数的调整来确定的。自适应系统的时变特性主要是由其自适应响应或自适应学习过程来确定的,当自适应过程结束和系统不再进行时,有一类自适应系统可成为线性系统,并称为线性自适应系统,因为这类系统便于设计且易于数学处理,所以实际应用广泛。本文研究的自适应滤波器就是这类滤波器。 自适应滤波器是相对固定滤波器而言的,固定滤波器属于经典滤波器,它滤波的频率是固定的,自适应滤波器的频率则是自动适应输入信号而变化的,所以其适用围更广。在没有任何信号和噪声的先验知识的条件下,自适应滤波器利用前一时刻已获得的滤波器参数来自动调节现时刻的滤波器参数,以适应信号和噪声未知或随机变化的统计特性,从而实现最优滤波。1.2选题背景及研究意义 伴随着移动通信事业的飞速发展,自适应滤波技术应用的围也日益扩大。早在20世纪40年代,就对平稳随机信号建立了维纳滤波理论。根据有用信号和干扰噪声的统计特性(自相关函数或功率谱),用线性最小均方误差估计准则设计的最佳滤波器,称为维纳滤波器。这种滤波器能最大程度地滤除干扰噪声,提取有用信号。但是,当输入信号的统计特性偏离设计条件,则它就不是最佳的了,这在实际应用中受到了限制。到60年代初,由于空间技术的发展,出现了卡尔曼滤波理论,即利用状态变量模型对非平稳、多输入多输出随机序列作最优估计。现在,卡尔曼滤波器已成功地应用到许多领域,它既可对平稳的和非平稳的随机信号作线性最佳滤波,也可作非线性滤波。实质上,维纳滤波器是卡尔曼滤波器的一个特例。 在设计卡尔曼滤波器时,必须知道产生输入过程的系统的状态方程和测量方程,即要求对信号和噪声的统计特性有先验知识,但在实际中,往往难以预知这些统计特性,因此实现不了真正的最佳滤波。 Widrow.B等于1967年提出的自适应滤波理论,可使自适应滤波系统的参数自动地调整而

滤波器设计—简明教程

引言 滤波器是一种二端口网络。它具有选择频率的特性,即可以让某些频率顺利通过,而对其它频率则加以阻拦,目前由于在雷达、微波、通讯等部门,多频率工作越来越普遍,对分隔频率的要求也相应提高;所以需用大量的滤波器。再则,微波固体器件的应用对滤波器的发展也有推动作用,像参数放大器、微波固体倍频器、微波固体混频器等一类器件都是多频率工作的,都需用相应的滤波器。更何况,随着集成电路的迅速发展,近几年来,电子电路的构成完全改变了,电子设备日趋小型化。原来为处理模拟信号所不可缺少的LC型滤波器,在低频部分,将逐渐为有源滤波器和陶瓷滤波器所替代。在高频部分也出现了许多新型的滤波器,例如:螺旋振子滤波器、微带滤波器、交指型滤波器等等。虽然它们的设计方法各有自己的特殊之点,但是这些设计方法仍是以低频“综合法滤波器设计”为基础,再从中演变而成,我们要讲的波导滤波器就是一例。 通过这部分内容的学习,希望大家对复变函数在滤波器综合中的应用有所了解。同时也向大家说明:即使初看起来一件简单事情或一个简单的器件,当你深入地去研究它时,就会有许多意想不到的问题出现,解决这些问题并把它用数学形式来表示,这就是我们的任务。谁对事物研究得越深,谁能提出的问题就越多,或者也可以说谁能解决的问题就越多,微波滤波器的实例就能很好的说明这个情况。我们把整个问题不断地“化整为零”,然后逐个地加以解决,最后再把它们合在一起,也就解决了大问题。这讲义还没有对各个问题都进行详细分析,由此可知提出问题的重要性。希望大家都来试试。 第一部分滤波器设计 §1-1滤波器的基本概念 图1 图1的虚线方框里面是一个由电抗元件L和C组成的两端口。它的输入端1-1'与电源相接,其电动势为E g,内阻为R1。二端口网络的输出端2-2'与负载R2相接,当电源的频率为零(直流)或较低时,感抗jωL很小,负载R2两端的电压降E2比较大(当然这也就是说负载R2可以得到比较大的功率)。 但是,当电流的频率很高时,一方面感抗jωL变得很大,另一方面容抗-j/ωC 却很小,电感L上有一个很大的压降,电容C又几乎把R2短路,所以,纵然电源的电动势E g保持不变,负载R两端的压降E2也接近于零。换句话说,R2不能从电源取得多少功率。网络会让低频信号顺利通过,到达R2,但阻拦了高频信号,使R2不受它们的作用,那些被网络A(或其他滤波器)顺利通过的频率构成一个“通带”,而那些受网络A 阻拦的频率构成一个“止带”,通带和止带相接频率称为截止频率。 什么机理使网络A具有阻止高频功率通过的能力呢?网络A是由电抗元件组成的,而电抗元件是不消耗功率的,所以,高频功率并没有被网络A吸收,在图一所示的具体情况中,它有时贮存于电感L的周围,作为磁能;在另一些时间,它又由电感L交

相关文档
最新文档