高阶FIR滤波器的计算机设计与FPGA实现
2 基于Matlab和QuartusⅡ的FIR滤波器设计
2.1 利用Matlab进行滤波器系数设计
设计指标:采样频率为2 MHz,f1=200 kHz,f2=330 kHz,通带衰减1 dB,阻带衰减70 dB。通过参数指标确定所需的阶数和参数值,部分程序如下:
由图6验证设计指标。
如果设计指标不满足,则可通过调整滤波器参数直至满足设计要求。
2.2 利用QuartusⅡ进行设计和仿真
对Matlab产生的FIR滤波器抽头系数,用QuartusⅡ进行仿真。QuartusⅡ软件是Altera公司主推的FGPA设计软件,是集设计输入、编译、综合、仿真、布线、下载于一体的设计软件。由于Matlab产生的滤波器抽头系数为小数,根据工程需要将其转换为18位二进制系数使用。过程如下:
由Matlab产生的FIR数字滤波器系数如下:
按第2.3节提出的方法在QuartusⅡ中完成FIR滤波器的设计,通过编译综合功能对设计文件进行编译和综合,然后生成顶层模块,见图7。
通过QuartusⅡ的波形仿真功能,对其进行波形仿真并进行定量分析。波形仿真如图8所示。其中,cp50为系统时钟,由它控制输入信号xin_data的输入速率(本例为2 MHz)。data_result为滤波器未经取高位处理的乘加结果;data_result_out,为最终滤波输出结果。经验证,data_result与Matlab的运算结果一致,data_result可满足工程精度的要求。
3 结语
本文在结合Matlab和FPGA软件QuartusⅡ的基础上,完成了一种基于LPM参数化宏功能模块的FIR滤波器设计,该法是基于工程实际应用提出的,它对信号处理速率的要求不高,但对滤波器的阶数较高。当设计指标改变,只需调整各模块的参数,即可完成新的设计,该法已应用在实际工程中。
- 用频率采样法设计FIR滤波器(10-07)
- FIR结构IQ串行处理RRC滤波器(04-18)
- 优化FIR数字滤波器的FPGA实现(04-18)
- 基于Matlab的FIR数字滤波器设计(10-07)
- 详解FIR滤波器和IIR滤波器的区别(04-04)
- GreenFire系统:智能电网的核心(08-25)
- 妤傛ḿ楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閸忋劍鏌熸担宥咁劅娑旂姴鐨犳0鎴滅瑩娑撴氨鐓$拠鍡礉閹绘劕宕岄惍鏂垮絺瀹搞儰缍旈懗钘夊閿涘苯濮幃銊ユ彥闁喐鍨氶梹澶歌礋娴兼ḿ顫呴惃鍕殸妫版垵浼愮粙瀣瑎...
- 娑擃厾楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
缁箖鈧拷30婢舵岸妫亸鍕暥閸╃顔勭拠鍓р柤閿涘奔绗撶€硅埖宸跨拠鎾呯礉閸斺晛顒熼崨妯烘彥闁喕鎻崚棰佺娑擃亜鎮庨弽鐓庣殸妫版垵浼愮粙瀣瑎閻ㄥ嫯顩﹀Ч锟�...
- Agilent ADS 閺佹瑥顒熼崺纭咁唲鐠囧墽鈻兼總妤勵棅
娑撴挸顔嶉幒鍫n嚦閿涘苯鍙忛棃銏n唹鐟欘枃DS閸氬嫮顫掗崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱遍崝鈺傚亶閻€劍娓堕惌顓犳畱閺冨爼妫跨€涳缚绱癆DS...
- HFSS鐎涳缚绡勯崺纭咁唲鐠囧墽鈻兼總妤勵棅
鐠у嫭绻佹稉鎾愁啀閹哄牐顕抽敍灞藉弿闂堛垼顔夐幒鍦欶SS閻ㄥ嫬濮涢懗钘夋嫲鎼存梻鏁ら敍灞藉簻閸斺晜鍋嶉崗銊╂桨缁崵绮洪崷鏉款劅娑旂姵甯夐幓顡嶧SS...
- CST瀵邦喗灏濆銉ょ稊鐎广倕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閺夊孩妲戝ú瀣╁瘜鐠佽绱濋崗銊╂桨鐠佸弶宸緾ST閸氬嫰銆嶉崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱濋崝鈺傚亶韫囶偊鈧喕鍤滅€涳附甯夐幓顡塖T鐠佹崘顓告惔鏃傛暏...
- 鐏忓嫰顣堕崺铏诡攨閸╃顔勭拠鍓р柤
娑撳洣绗€妤傛ɑ銈奸獮鍐叉勾鐠у嚖绱濇潻娆庣昂鐠囧墽鈻兼稉杞扮稑閸︺劌鐨犳0鎴炲Η閺堫垶顣崺鐔枫亣鐏炴洘瀚甸懘姘剧礉閹垫挷绗呴崸姘杽閻ㄥ嫪绗撴稉姘唨绾偓...
- 瀵邦喗灏濈亸鍕暥濞村鍣洪幙宥勭稊閸╃顔勭拠鍓р柤閸氬牓娉�
鐠愵厺鎷遍崥鍫ユ肠閺囨潙鐤勯幆鐙呯礉缂冩垵鍨庨妴渚€顣剁拫鍙樺崕閵嗕胶銇氬▔銏犳珤閵嗕椒淇婇崣閿嬬爱閿涘本鍨滅憰浣圭壉閺嶉绨块柅锟�...