cic滤波器的fpga实现

合集下载

改进型CIC抽取滤波器的FPGA实现

改进型CIC抽取滤波器的FPGA实现

改进型CIC抽取滤波器的FPGA实现谢海霞;赵欣【摘要】In order to reduce the data rate and power consumption of the previously-designed CIC decimation filter,the FPGA-based realization process of the improved CIC decimation filter is studied,the hardware implementation structure of the CIC decimation filter is optimized,and FPGA is used to design the decimation filter.The hardware implementation structure and bit wide of CIC decimation filter are analyzed.The filter structure is decimated through Hogenauer to get the CIC hardware implementation structure whose decimation rate is 16 and decimation degree is 6.The structure is transformed into four cascaded CIC decimation filters implemented with FPGA,which can reduce the data rate and improve the data bit wide.In the implementation process of CIC decimation filter with FPGA,the highest bit wide required by the register while it is operating is analyzed to avoid the data overflow problem.The experimental result shows that the modified CIC decimation filter is effective,and can reduce the data rate and system power consumption.%为了解决以往设计的CIC抽取滤波器存在的数据速率高以及功耗高的问题,研究了改进型CIC抽取滤波器的FPGA实现过程,优化CIC抽取滤波器硬件实现结构,采用FPGA实现抽取滤波器的设计.分析CIC抽取滤波器的硬件实现结构和位宽,通过Hogenauer抽取滤波器结构,得到6级16抽取的CIC硬件实现结构,将该结构变换成4个CIC抽取滤波器的级联式FPGA实现,逐级降低数据速率,提升数据位宽.以FPGA实现CIC抽取滤波器过程中,分析了其运算时寄存器所需的最高位宽,避免产生数据溢出问题.实验结果表明,所设计的改进型CIC抽取滤波器是有效的,可降低数据速率和系统功耗.【期刊名称】《现代电子技术》【年(卷),期】2017(040)016【总页数】3页(P148-150)【关键词】Hogenauer;CIC抽取滤波器;数据速率;FPGA【作者】谢海霞;赵欣【作者单位】海南热带海洋学院,海南三亚572022;海南热带海洋学院,海南三亚572022【正文语种】中文【中图分类】TN713-34;TP368.1地震检波器是地震数据采集系统的核心部件,其可检测到微弱信号,具有较高的探测性能。

基于FPGA的CIC滤波器的设计与实现

基于FPGA的CIC滤波器的设计与实现

设输 入序列 为 ( m) , 输 出序 列为 Y ( m) , 若输 入
采样 率为_ 厂 =1 / T , 输 出采 样率为_ 厂 = , / 。内插后 的序
列为
以单级 C I C抽 取 滤 波器 为例 , 积分 部 分 的积 分
程 为
I R滤波器 , 并且反 馈系数为 1 , 状态 方 y ( m ) : f ( 予 ) , , = 0 , ± , , ± 2 , , … ( ) 器是单 级点 的 I
符合设计 的要 求 。故 在 系统 中根据 需要 而设 计信 号 的速率非常重 要 , 而通 过 内插 和抽取 就可 以改变数 字 信号 的速率 , 故研 究 内插 和抽 取 对 于 软 件 无 线 电 的
设计 非常 有 必 要 。运 用 内插 和抽 取 的 就是 多 速 率 滤波 器 … , 这 种 常 用 的多 速 率 滤 波 器 有 C I C 滤 波 器、 H B滤 波 器 、 F I R滤 波器 。本 文设 计 的是 C I C滤

( G u i l i n U n i v e r s i t y o f E l e c t r o n i c T e c h n o l o g y , G u i l i n G u a n g x i 5 4 1 0 0 4, C h i n a )
【 A b s t r a c t 】 T h e d e s i g n a n d i m p l e m e n t ar a t o r c o m b( C I C ) i f l t e r a r e d e s c r i b e d . T h e v e i f l o g l a n g u a g e
2 内插 理论

CIC滤波器改进及其FPGA实现

CIC滤波器改进及其FPGA实现

CIC滤波器改进及其FPGA实现李凯勇【摘要】On the basis of analysis of the structure and characteristics of the multi-stage CIC filter, the paper elaborates an efficient FPGA implementation method which uses the Hogenauer "cut off" theory which can eliminate some of the less signifi-cant bits from the former class to improve the CIC filter performance, and realize a multi-stage CIC filter on FPGA. The timing simulation analysis of Quartus Ⅱ verifies the correctness and feasibility of the method and shows that the method can meet the re-quirements of modern mobile communication system and improve the system operation efficiency. The improvement of the inter-nal register bits wide saves great hardware resources and increases running speed.%在分析多级CIC滤波器结构和特性的基础上,阐述了一种利用Hogenau er“剪除”理论通过消除来自前级的一些较低有效位来提高CIC滤波器性能,并完成多级CIC滤波器的高效FPGA实现方法.通过Quartus Ⅱ时序仿真分析验证了该方法的正确性和可行性,能够满足现代移动通信系统要求,提高了系统运算效率.通过对内部寄存器的位宽进行改进,极大地节约了硬件资源,提高了系统运行速率.【期刊名称】《现代电子技术》【年(卷),期】2013(036)001【总页数】3页(P61-63)【关键词】CIC滤波器;混叠;剪除;FPGA【作者】李凯勇【作者单位】青海民族大学物理与电子信息工程学院,青海西宁810007【正文语种】中文【中图分类】TN713-34数字下变频(DDC)技术不仅是软件无线电核心技术之一,还是中频数字化接收系统重要组成部分。

改进型CIC抽取滤波器设计与FPGA实现

改进型CIC抽取滤波器设计与FPGA实现

改进型CIC抽取滤波器设计与FPGA实现摘要:为了改善级联积分梳状(CIC)滤波器通带不平和阻带衰减不足的缺点,给出一种改进型CIC 滤波器。

该滤波器在采用COSINE 滤波器提高阻带特性的基础上,级联了一个SINE 滤波器,补偿了其通带衰减。

硬件实现时,采用新的多相分解方法结合非递归结构,不仅大大减少了存储单元数量,还使电路结构更加规则。

经仿真和FPGA 验证,改进型CIC 滤波器使用较少硬件,实现了阻带衰减100.3 dB,通带衰减仅为O.000 1 dB 。

关键词:CIC 抽取滤波器;COSINE 滤波器;SINE 滤波器;设计优化;FPGA抽取滤波器是∑-△模/数转换器中的重要组成部分,积分梳状滤波器经常作为第一级滤波器,用以实现抽取和低通滤波。

其优点是实现时不需要乘法器电路,且系数为整数,不需要电路来存储系数,同时通过置换抽取可以使部分电路工作在较低频率,与相同滤波性能的其他FIR 滤波器相比,节约了硬件开销。

经过仿真,抽取率为32 的一阶积分梳状滤波器第一旁瓣相对于主瓣的衰减最大约为15 dB,这样的阻带衰减根本达不到实用滤波器的设计要求。

为了改变滤波性能,一般采用级联积分梳状滤波器(CIC)。

但经过CIC 降频滤波系统降频后会产生信号混叠现象,并且主瓣曲线不平,需要用新的算法或新结构来修正改善这些特性。

1 CIC 抽取滤波器原理经典的抽取滤波器为Hogenauer CIC 滤波器,其传输函数表达式为:式中:参数M 为降频因子,决定了CIC 的通带大小;K 为滤波器的阶数,对阻带衰减起到加深作用。

频率响应为:滤波电路由积分模块与差分模块组成,根据置换原则将抽取因子提到差分模块之前,使其工作在较低频率,并节省了M-1 个存储单元,框图如图1 所示。

CIC插值滤波器的FPGA设计与实现

CIC插值滤波器的FPGA设计与实现

CIC插值滤波器的FPGA设计与实现摘要:基于多速率信号处理原理,设计了用于下变频的CIC插值滤波器,由于CIC 滤波器结构只用到加法器和延迟器,没有乘法器,很适合用FPGA来实现,所以本文分析了CIC滤波器的原理,性能及影响参数,借助MATLAB设计符合系统要求CIC 滤波器,并利用Modelsim软件建模仿真,验证CIC滤波器性能是否达到要求。

(一)CIC滤波器基本原理A.CIC滤波器的基本单元CIC滤波器主要由积分滤波Integrator和梳状滤波Comb两个基本单元部分构成。

典型的CIC滤波器的结构,它由两个基本单元I(积分滤波器)和C(梳状滤波器)级联构成。

本设计主要针对插值滤波器,所以插值滤波器的结构示意图如图1-1所示:图 1-1 3级级联的CIC插值滤波器结构示意图积分器和梳状滤波器之间是一个采样率转换器,对于CIC插值器而言,它完成在每一个样值后补上R-1个0值的工作,,对于CIC抽取器来说,它完成在实际的抽取工作,每R个样值中取样一个。

R(插值倍数),M(延迟因子,一般取1或者2)以及N(级联级数)是影响CIC 滤波器的三个参数,它们的值需根据通带性能的需求而设定。

(二)CIC插值滤波器的设计流程根据CIC滤波器的原理,本设计的流程如图2-1所示:图2-1 CIC 插值滤波器的设计流程图(三)模型的建立和测试A .位宽策略对于数字滤波器,一个不得不考虑的问题是为防止溢出每一级所需的位宽。

对于抽取器来说,CIC 滤波器的输出增益为(*)NG R M = (3-1)所以,在全精度的情况下,最后一级输出的位宽为2log (*)out in B B N R M =+ (3-2)其中in B 表示输入数据的宽度,为了保证精度,每一个积分器和梳状滤波器的输入输出位宽都为out B 。

对于插值器而言,输出增益为212,1,2,....2(*)/,1, 2......2i i N i N i N G R M R i N N N --⎛⎫== ⎪ ⎪=++⎝⎭ (3-3)因此,第i 级为避免溢出所需要的位宽为2log ()i in i W B G =+ (3-4)最后一级输出位宽为22log (*)log out in B B N R M R =+- (3-5)在实际当中,当差分延时M=1时,为保证稳定,所有积分器的位宽在理论值的基础上加一。

CIC滤波器的FPGA实现

CIC滤波器的FPGA实现

CIC滤波器的FPGA实现
范艳根
【期刊名称】《黑龙江科技学院学报》
【年(卷),期】2008(018)003
【摘要】为了解决软件无线电通信系统中频采样之后的极大数据量在基带处理部分对DSP计算的压力,在发射和接收过程中采用采样率变换技术,并引入CIC滤波器实现采样率转换,很好地满足了抗混叠效应的要求.采用常规方法和Hongenauer 剪除理论的改进算法完成该滤波器的设计,结果表明:对于5级CIC滤波器,前者最高工作频率为160MHz,占用228个逻辑单元;后者最高工作频率为193MHz,占用225个逻辑单元.QuartusⅡ时序仿真验证了两种方法的正确性,而后者更适用于高速多速率信号处理系统.
【总页数】3页(P206-208)
【作者】范艳根
【作者单位】哈尔滨工业大学,微电子中心,哈尔滨,150001;黑龙江科技学院,电气与信息工程学院,哈尔滨,150027
【正文语种】中文
【中图分类】TN92
【相关文献】
1.基于FPGA的CIC滤波器的设计与实现 [J], 徐艳;田克纯
2.多级CIC滤波器的FPGA实现 [J], 谢海霞;孙志雄
3.CIC滤波器改进及其FPGA实现 [J], 李凯勇
4.基于FPGA的CIC滤波器优化设计与实现 [J], 许彦辉;年夫顺;张超
5.基于FPGA的多级CIC滤波器的设计与实现 [J], 王璞;张玉明;田野;张坤;杨军因版权原因,仅展示原文概要,查看原文内容请购买。

cic滤波器的fpga实现

cic滤波器的fpga实现

cic滤波器的FPGA实现发布时间:2016-01-26 15:07:21技术类别:CPLD/FPGA一、关于多采样率数字滤波器很明显从字面意思上可以理解,多采样率嘛,就是有多个采样率呗。

前面所说的FIR,IIR滤波器都是只有一个采样频率,是固定不变的采样率,然而有些情况下需要不同采样频率下的信号,具体例子我也不解释了,我们大学课本上多速率数字信号处理这一章也都举了不少的例子。

按照传统的速率转换理论,我们要实现采样速率的转换,可以这样做,假如有一个有用的正弦波模拟信号,AD采样速率是f1,现在我需要用到的是采样频率是f2的信号,传统做法是将这个经过f1采样后的信号进行DA转换,再将转换后的模拟信号进行以f2采样频率的抽样,得到采样率为f2的数字信号,至此完成采样频率的转换但是这样的做法不仅麻烦,而且处理不好的话会使信号受到损伤,所以这种思想就被淘汰了,现在我们用到的采样率转换的方法就是抽取与内插的思想。

二、抽取先来总体来解释一下抽取的含义:前面不是说,一个有用的正弦波模拟信号经采样频率为f1的抽样信号抽样后得到了数字信号,很明显这个数字信号序列是在f1频率下得到的,现在,假如我隔几个点抽取一个信号,比如就是5吧,我隔5个点抽取一个信号,是不是就是相当于我采用了1/5倍f1的采样频率对模拟信号进行采样了?所以,抽取的过程就是降低抽样率的过程,但是我们知道,这是在时域的抽样,时域的抽样等于信号在频域波形的周期延拓,周期就是采样频率,所以,为了避免在频域发生频谱混叠,抽样定理也是我们要考虑的因素下面来具体来介绍如上图所示,假如上面就是某一有用信号经采样频率f1抽样得到的频谱,假设这时候的采样频率为8Khz ,可以通过数格子得到,从0到F1处有8个空格,每个空格代表1Khz,有些朋友可能会问,这不是在数字频域吗,单位不是π吗,哪来的hz?是的,这里是数字频域,采样频率F1处对应的是2π,这里只是为了好解释,我们用模拟频率来对应数字频率。

CIC滤波器的原理及FPGA实现

CIC滤波器的原理及FPGA实现
3. 3 梳状滤波器的 FPGA 实现 由式 (3) 推出单级梳状滤波器的差分方程 y (n) = x (n) - y (n - 1) , 可以看出用减法器即可实现。 对于C IC 滤波器来说, 正常的输出字宽一般都明显 比W 小, 比如 9 位。V HDL 代码示例如下:
com ber: p rocess (clk_ com b) b eg in if (clk_ com b’even t and clk_ com b= ’1’) then
x ≤x_ in; - - x_ in 是 8 位输入 i0 ≤i0+ conv_ in teger (sx tx) ; i1 ≤i1+ i0; - - 累加 i2 ≤i2+ i1; i3 ≤i3+ i2; - - i3 为第四级积分器输出
……… End if; End p rocess in tegra to r;
大。鉴于此, 当前的专用DDC 芯片中, 都采用了一种 高 效的滤波器—— C IC 滤波器 (C IC 滤 波 器 是 由 Hogenauer E. B. 于 1981 年提出的, 因此又被称为 Hogenauer 滤波器) 作为第一级滤波器, 实现抽取、 低 通滤波; 第二级则采用一般的 F IR 或者 F IR 实现 的特殊滤波器 (如半带滤波器) , 此时它们工作在较 低的频率下, 且滤波器的参数得到了优化, 因此更容 易以较低的阶数实现, 节省资源, 降低功耗。 本文在研究C IC 滤波器基本原理的基础上, 对 其进行了 FPGA 仿真、综合, 并最终应用在工程中, 达到了设计要求。
resou rces and can p lay w ell in h igher frequency. B a sed on the theo ry of C IC filter, I have
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

cic滤波器的FPGA实现发布时间:2016-01-26 15:07:21技术类别:CPLD/FPGA一、关于多采样率数字滤波器很明显从字面意思上可以理解,多采样率嘛,就是有多个采样率呗。

前面所说的FIR,IIR滤波器都是只有一个采样频率,是固定不变的采样率,然而有些情况下需要不同采样频率下的信号,具体例子我也不解释了,我们大学课本上多速率数字信号处理这一章也都举了不少的例子。

按照传统的速率转换理论,我们要实现采样速率的转换,可以这样做,假如有一个有用的正弦波模拟信号,AD采样速率是f1,现在我需要用到的是采样频率是f2的信号,传统做法是将这个经过f1采样后的信号进行DA转换,再将转换后的模拟信号进行以f2采样频率的抽样,得到采样率为f2的数字信号,至此完成采样频率的转换但是这样的做法不仅麻烦,而且处理不好的话会使信号受到损伤,所以这种思想就被淘汰了,现在我们用到的采样率转换的方法就是抽取与内插的思想。

二、抽取先来总体来解释一下抽取的含义:前面不是说,一个有用的正弦波模拟信号经采样频率为f1的抽样信号抽样后得到了数字信号,很明显这个数字信号序列是在f1频率下得到的,现在,假如我隔几个点抽取一个信号,比如就是5吧,我隔5个点抽取一个信号,是不是就是相当于我采用了1/5倍f1的采样频率对模拟信号进行采样了?所以,抽取的过程就是降低抽样率的过程,但是我们知道,这是在时域的抽样,时域的抽样等于信号在频域波形的周期延拓,周期就是采样频率,所以,为了避免在频域发生频谱混叠,抽样定理也是我们要考虑的因素下面来具体来介绍如上图所示,假如上面就是某一有用信号经采样频率f1抽样得到的频谱,假设这时候的采样频率为8 Khz ,可以通过数格子得到,从0到F1处有8个空格,每个空格代表1Khz,有些朋友可能会问,这不是在数字频域吗,单位不是π吗,哪来的hz?是的,这里是数字频域,采样频率F1处对应的是2π,这里只是为了好解释,我们用模拟频率来对应数字频率。

上面是采样频率为8K的数字信号频域图,现在我要对这个数字信号进行时域抽取,从而来降低信号的采样率,我们知道,一旦我们对数字信号进行时域抽取,那么采样率下降,而采样率就是数字信号频域的波形周期,那么也就是周期下降,所以,我们对信号进行抽取要有个度,要在满足抽样定理的条件下对信号进行抽取,否则就会发生频谱混叠。

上图就是对信号进行了1/5倍的F1采样频率抽取,可见,由于发生了频谱混叠现象,因为1/5倍的F1是1600hz,而信号的频带是1000hz,不满足抽样定理,导致发生了频谱混叠,所以,为了避免发生这种情况,除了要满足抽样定理之外,即抽样倍数不能太高,我们还需要把信号的频带设置在F1/2以下,才能确保信号不发生频谱混叠,因此,我们需要在抽取之前加一个低通滤波器,书上叫做抗混叠低通滤波器,用来限制信号的频带,然后再进行抽取,这样的话我们来算一下低通滤波器的截止频率就是1/2倍的经抽取后的采样速率,即fc = 1/2 * (F1/M),M是抽取倍数。

而1/2 *F1对应的数域频率是π,因此我们得出,抗混叠低通滤波器的截止频率是π/M三、内插抽取的过程是降低采样率的过程,那么插值的过程当然就是提高采样率的过程。

大体的思路可以这么理解,我们将经f1抽样下得到的数字信号的每两个点之间进行插值,插入的值是0,插值之后,信号在单位时间内的采样点数增多,当然也就是采样速率的提升,采样速率提升后我们知道,那么信号的频谱的周期就会增加需要注意的一点就是,插值前后,我们只是在时域信号中间插入了D-1个零值,仅仅是改变了采样率,并没有改变信号的信息,因此,在频域,信号频谱的形状是不会改变的,改变的仅仅是周期,如上图,F1是插值之前信号的周期,插值之后,信号频谱的形状不变,周期成了F1 *D,D是插值倍数。

如果我们直接用F1 *D倍的采样率采信号,得到的频谱会发现,就不会有中间两个波形,因此,这两个波形是多余的,书上叫做是镜像频谱。

既然是多余的,我们就可以将它用一个低通滤波器滤掉,这样的低通滤波器,就叫做镜像低通滤波器。

这样我们来计算一下镜像低通滤波器的截止频率根据上面这张图我们可以求出镜像低通滤波器的截止频率,可以看到,fc = 1/2 *F1,这里我们假设,内插之后的采样频率为F2 = F1*D,那么,fc =1/2 *(F2/D),而1/2*F2对应的是π,注意,这里是1/2*F2对应π,不是1/2*F1了,因为这已经是插值之后采样率增加之后的频谱了,所以我们得出:镜像低通滤波器的截止频率为:π/D四、分数倍抽取与内插根据前面抽取与内插的介绍我们知道了,内插的过程是先进行内插处理,再通过镜像低通滤波器,抽取的过程就是先进行抗混叠低通滤波,再进行抽取,我们可以看出来,假如我们想进行分数倍抽取,比如我要进行3/5倍抽取,就可以先进行3倍内插,再进行5倍抽取,这样就可以实现分数倍抽取。

再来看一下,当进行分数倍抽取与内插的时候,镜像低通滤波器和抗混叠低通滤波器是连在一起的,因此,我们可以将这两个滤波器合二为一,截止频率取两个滤波器截止频率的最小值就可以了五、多速率滤波器的Matlab实现这里我们假设,要对一个频率为100hz的正弦波模拟信号进行抽样,抽样频率为900hz,现在我要对采样信号进行5/3倍提升根据我们前面分析的,进行分数倍的抽样率转换,先要进行内插处理,内插的过程就是在原有的时域信号之间,插入I - 1个零值点,采用matlab实现很简单,首先我们可以计算插值完成之后信号的长度,然后将原来信号进行填充即可插值完成之后,需要进行低通滤波,由前面的讨论可以知道,根据低通滤波器的截止频率计算公式,来计算滤波器截止频率为π/I,然后调用函数生成FIR滤波器系数即可。

紧接着,需要进行的是抽取处理,抽取过程的算法跟内插类似,可以先计算抽取之后的信号的长度,然后每个D个采样点进行一次抽取下面看一张图,是我绘制了这个过程的整个流程根据上面这张图我们可以看到,最上面的是原始信号经900hz频率采样后得到的信号时域波形,然后我对其进行了5倍内插,也就是在每两个采样点之间插入了4个零值,之后通过了低通滤波器,去掉镜像波形后的时域波形,可以看到,此时的采样率已经是原来的5倍,接着对其进行3倍抽取,即每隔两个点抽取一个点作为新的采样点,得到最下面的时域波形,整个过程原始信号没有发生变化,变化的仅仅是采样率。

六、关于CIC滤波器说了这么多,终于进入正题了。

前面的都是些基础知识,只有先掌握了前面的内容,才能理解下面的知识,包括下两篇文章要讲的FIR半带滤波器和多相结构的FIR半带滤波器。

CIC滤波器呢,是积分梳状滤波器的英文简称,先来看CIC滤波器的单位冲击响应很明显的一个特征就是,CIC滤波器的单位脉冲响应只有0和1,再来想一下,既然单位脉冲响应只有0和1,那么也就是意味着,我们在进行卷积运算的时候,就不需要乘法器,为什么呢?因为滤波器系数为1的话,相当于将输入信号乘了个1,所以就不需要乘法器,只需要加法器就可以完成卷积运算,正因为如此,CIC滤波器结构简单,非常适合工作在高采样率条件下但是这并不是我们常用的滤波器结构,既然是积分梳状滤波器,总得体现一下积分、和梳状这两个特点吧,这名字不是白叫的,因此有如下变形可以看到,上面的式子是CIC滤波器的系统函数,对其进行变换之后可以得到两个部分的乘积形式,即分子部分为一个梳状FIR滤波器,剩余部分为一个积分器,至此,我们CIC滤波器的结构才已经成型。

根据变形后的CIC滤波器的系统函数可以知道,滤波器的极点为1,因此看上去滤波器是一个不稳定的系统,但是从整体角度来看,这个结构是由一个FIR滤波器变形而来的,本身是一个因果稳定的,因此,变形后的系统应该也是一个因果稳定的,因此我们考虑到零极点抵消的原因,致使变形后的系统仍是一个因果稳定的系统。

从单级CIC滤波器的幅频响应考虑,由于其特殊的结构,导致单级CIC滤波器的衰减不足,可以见下图可见,单级CIC滤波器滤波器的衰减并不是很足,在阶数比较大的情况下,CIC滤波器的衰减一般稳定在13.6dB,要想加大衰减,就必须采用多级CIC滤波器级联的形式,每增加一级滤波器,阻带衰减增加13.6dB,但是为了增加阻带衰减而采用级联方式,也会导致一些弊端,为此,这方面的知识总结如下,具体理论不再解释了,书上的推导过程比较复杂,大家还是自己看书为好。

总结:1、要同时满足通带容限跟阻带容限的误差的CIC滤波器实现起来比较困难,因为要想阻带衰减大,就要增大滤波器级数,但是会导致通带容限增大。

2、如果要实现这样的滤波器,只有当有用信号的频带相对于采样信号的速率很小时才能设计出符合要求的滤波器,这样的话通带衰减较大的情况下也对有用信号影响较小。

3、有用信号的频带相对于采样信号的速率很小也就是意味着信号的采样率很高,所以,CIC滤波器适合应用在多速率信号处理的前端,作为抗混叠滤波器来用,或者是作为后端的抗混叠插值滤波器。

七、多级 Hogenauer CIC抽取滤波器的FPGA实现Hogenauer CIC抽取滤波器是一种特殊的结构,可以用来提高滤波器的运行速度,节省硬件资源等前面已经说过了,CIC滤波器的系统函数经过变形之后,可以得到一个M阶的梳状滤波器和一个积分器相乘的形式,二者共同组成了抗混叠低通滤波器,在抽取的过程中,一般是信号先经过抗混叠低通滤波器进行滤波,来避免频谱混叠现象的发生,然后再进行抽取处理,但是我们可以利用Noble恒等式,先对信号进行抽取,再对其进行滤波,即也就是说,在滤波器阶数跟抽取倍数相同的情况下,如果先滤波后抽取,那么滤波器的长度是M,但是如果先抽取后滤波,那么滤波器的长度就会降低为1阶,因此,采用Noble恒等式,先抽取后滤波,可以降低滤波器长度,从而达到节省硬件资源的目的。

前面说了,单级的CIC滤波器很难满足需求,要达到一定的阻带衰减,就必须通过级联的方式我们可以看到,如果是三级的CICI滤波器级联的话,也就是有3个积分器和三个梳状滤波器,这时候我们可以利用Noble恒等式进行移位变换,让积分器放在一起,梳状滤波器放在一起,这时候的梳状滤波器是M阶的,因为此时还没有经过抽取,所以我们可以再利用Noble恒等式,将抽取器放到梳状滤波器之前,这样的话,梳状滤波器就会降为1阶,长度为2,从而大大节省了硬件资源现在我们假设抽取倍数是5,根据要求,这时我们的滤波器长度也应该是5,采用3级CIC滤波器级联的方式,用Hogenauer CIC抽取滤波器结构在FPGA上设计1、三级积分器模块altera 的CIC滤波器的IP核手册中给出了CIC滤波器中间运算数据字长的计算公式,这里我们假设我们的输入数据是经过10bit量化过的正弦波数字信号,那么CIC滤波器的中间运算字长为:Wi = Win +N*log2(MD)Win 是输入字长为10,N为滤波器长度5,M为抽取倍数5,D位级联数3因此算得CIC滤波器的中间字长为 Wi = 10 +5*log2(5*3) =30知道了我们中间运算的字长就可以来设计我们的模块了,首先是积分器积分器的设计比较简单,就是一个反馈回路,输出结果跟输入相加后延时一个时钟单元后再与输入相加剩下两级积分器也是一样,第一级积分器的输出要送到第二级积分器的输入,代码这里不再列出,都是跟第一级积分器类似2、五倍抽取器抽取器的实现很简单,从积分器输出的数据,我们每隔5个数据抽取一个数据就好了3、三级梳状滤波器我们知道,经过抽取之后的梳状滤波器阶数降为1,长度为2的这样一个FIR滤波器,由于他的频谱很像一把梳子,因此得名为梳状滤波器。

相关文档
最新文档