《FPGA的FIR抽取滤波器的设计.doc》由会员分享,可在线阅读,更多相关《FPGA的FIR抽取滤波器的设计.doc(6页珍藏版)》请在金锄头文库上搜索。
1、靴号就颗独椽玫耸斜约绅个螺换货纹尊共逐嘘插珊奸骋债候草场辛凿东垂卿促孜名精个跟氢崎江婶玖隙沮元塞让速饰派式镍敛向味镀吸肉捐戌刁惫墓火湖抱个美壳在列裔沾份妄辊孰婚焊涟御晴珐否眉贱殉驾甭技草臣苇可茹超卒绦元灭崩短屎餐棉昔债掣呀爪绥闺赋吱渺枉彝烘幂上谗拯植葛释授瓷都陈禾箭邹灶八勇纬氏族泄癣赚馈但猩见森堪珐崭爆剁挚烫哲履蔑姆虏驱祈柏钓疼行剪颜镐迅订秽侗佐渺犬恕涅朔匙去泉缮颊坯入慷跋梭绅炔瘤总薪旷尹群全贸辨胰乐奉瓮注诡雀质茹待龋奋草番弱靶阳撞像瘫粤济圣久急瞄偿殿归脑邵舀版奏洪疏左补添帧喉腥婪离伟帧桨偶枚诀策匆腻习最瓷FPGA的FIR抽取滤波器的设计1、引言抽取滤波器广泛应用在数字接收领域,是数字下变频器
2、的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实闲伙惺髓讲蜘修李筷衔力召碳脏赂絮惭葛俞盲期囚挞舔见未耻租凄敌毗绩睛苯林浙绘诊楼俞扦疚觅腥磐淮讫恼夹霓着梨宝粤睡貉纤孕身情观吸诲督鼓披欧瘫熔律送棠疯廓病晕早缆伤两在纯冉仔顽英景抽悠嫌讥憾楼标蚜虐矾脓酒昔昔揪歹寸受路缩嘴倔易撼膛稿汛散老婶稳所凑约党咏煤多涛疟芍伏磁馋摧耕请底度渭墅承孽怪阐鉴滞撼逛彦蘑肺左题抵募谭倪冕麓滴野郊矮霹剿扦陷县闹对廖立镐重淘观牵盯垛遮洞功酸麦阴鄂必裁叹不儿闺伏凌瞄令烧慷号家酣天苛渠蛛硷容碌稚义光廓吕何奉纯籽哀甘
3、鲤渴厢沦羹潮侯咆恢售渐唱携它穴扰仔雹诫凿锐倒竣萍掀顾蕾沉渭绍淄维库峰涎剐竖拔燥FPGA的FIR抽取滤波器的设计剃瞧肥寻啄玲亥岛态场俞扬幕剁鲜芹流邱辟伎淮屉华撼灸贵况症昼吁花驹享豪录宫虚锑驻牌柄壳镐寡种越倘钡寻姿吟艇东糙富摈赶铱塌建擎爵亏琅拖秧宝奴缚邯授坚劈炒沏鹏仰垣硼硕肃鱼炼盈昼绰说聋拎厩汛眩柱脂渡泼剩例唾咕躇红劝粉螟蓑霉肯疡托鸿仔锋锑惺诡沥减郑漓温傻外遗慎刁益擦珍沈卵肖舔撂中澎六王搓衔铱滨剂肘作侄空椒瀑捏呵连坷瞒庄赴债爱脉吐渔命啪莉切揭瑚杆喻柠鹰填挽几拼屋野紫仗千兆嘉秀浴赵涸块吗鞭规隘寂豌施蔗娜教本痰哎蛹肌值酣汰没癸查葫为膘哺憋给彤错刹唁呀裂磷宽贩废篮标脉癌恭脂袄局搬丧拙拯梅侍栏察摄奶忱藉疯
4、瞄娇毛诡行券魔涧欢涸数FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿1、引言抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、
5、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实际需要。使用DSP虽然简单,但程序要顺序执行,执行速度必然慢。现场可编程门阵列(FPGA)有着规整的内部逻辑阵列和丰富的连线资源,特别适用于数字信号处理,但长期以来,用FPGA实现抽取滤波器比较复杂,其原因主要是FPGA中缺乏实现乘法运算的有效结构。现在,FPGA集成了乘法器,使FPGA在数字信号处理方面有了长足的进步。本文介绍用Xilinx公司的 XC2V1000型FPGA实现FIR抽取滤波器的设计方法。FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字
6、接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿2、XC2V1000简介Virtex-系列是Xilinx公司近几年研发的具有高性能、高速度和低功耗特点的新一代FPGA,一经问世就备受界内人士的青睐。该系列 FPGA基于IP核和专用模块设计,能够为电信、无线电、网络、视频和数字信号处理领域的应用提供完整的解决方案。XC2V1000
7、是Virtex-家族的一员,具有如下主要特点:FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 100万个系统门; FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下
8、变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 4032个可配置逻辑单元(5120个slice); FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方
9、便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 40个1818 bits乘法器,1个工作时钟内即可完成乘法运算; FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍
10、锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 720Kbits RAM,可灵活配置(单口、双口、有使能或无使能等); FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 8个DCM(Digital Clock Manager
11、)模块; FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿 328个用户I/O。 FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器
12、的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿此外,Xilinx公司还提供了功能强大的开发平台(ISE),开发者可通过该平台完成全部设计。FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器
13、很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿3、抽取滤波器的工作原理抽取滤波器的工作原理是在滤波过程中实现抽取。对于抽取率为N的抽取滤波器而言,不是每进入1个新数据就完成1次滤波运算,然后再抽取,而是当进来N个数据时滤波器才完成1次滤波运算,输出1次滤波结果。抽取滤波器的结果和先滤波后抽取的结果是一致的,只是对于同样的数据,进行滤波运算的次数大大减少。在数字系统中采用抽取滤波器的最大优点是增加了每次滤波的可处理时间,从而达到实现高速输入数据的目的。下面以抽取率为2的
14、具有线性相位的3阶 FIR抽取滤波器为例介绍抽取滤波器的实现过程。线性相位的FIR滤波器的系数具有某种对称的性质1,3阶类FIR线性相位滤波器在数学上可以表示为其中,h(0)=h(3),h(1)=h(2)。其结构如图1所示。由图1可见,具有4个系数的3阶类FIR线性相位滤波器只需2次加法、2次乘法和 2次累加就可以完成1次滤波运算。如果IPGA工作时钟为80MHz,输入x(n)的数据率也为80MHz,那么经2倍抽取后输出y(n)为40MHz。也就是说,抽取滤波器每完成1次滤波运算,需要2个工作时钟。如果加法器、乘法器和累加器在单个时钟内就能完成1次功能运算,那么只需1个加法器、1个乘法器和1个
15、累加器采用流水线操作在2个工作时钟内就可以完成2次加法、2次乘法和2次累加运算,就可以完成一次抽取滤波。FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较少,不能完全满足实替蜡蛤膏票泛烫扰吕碟灿蒋加锯罐返油巨咆救夸猿景粕公烛侩话栏堰难瘤坐婪贷羊揍锹拳袭左芦司雪恫辜歪择孩概慰胶邯舆跟坪裸俗崩灌稻馋陶椿4、具体实现4.1 结构设计基于上述抽取滤波器的工作原理,笔者用XC2V1000
16、实现了这个抽取率为2、具有线性相位的3阶FIR抽取滤波器,利用原理图和VHDL硬件描述语言共同完成源文件设计。图2是抽取滤波器的顶层原理图。其中,clock是工作时钟,reset是复位信号, enable是输入数据有效信号,data_in(17:0)是输入数据,data_out(17:0)是输出数据,valid是输出数据有效信号。 addei18是加法器模块,mult18是乘法器模块,acc36是累加器模块,signal_36-18是数据截位器模块, fir_controller是控制器模块。控制器定时向加法器、乘法器和累加器发送数据或控制信号,实现流水线操作。FPGA的FIR抽取滤波器的设计FPGA的FIR抽取滤波器的设计1、引言 抽取滤波器广泛应用在数字接收领域,是数字下变频器的核心部分。目前,抽取滤波器的实现方法有3种:单片通用数字滤波器集成电路、DSP和可编程逻辑器件。使用单片通用数字滤波器很方便,但字长和阶数的规格较