《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于優化DA算法濾波器的設計及其FPGA實現
基于優化DA算法濾波器的設計及其FPGA實現
2015年電子技術應用第2期
朱效效,蔡 俊,陸 偉
安徽理工大學 電氣與信息工程學院,安徽 淮南232001
摘要: 由于傳統MAC方法在設計數字濾波器時頻繁使用乘法器,導致整個系統運行速率下降,而一般DA算法在設計高階濾波器時存在查找表規模過大以至于難以實現的問題。提出一種優化的DA算法來克服這一缺陷,為此設計了一個18階的線性相位結構的FIR低通濾波器,并用Verilog HDL語言在FPGA上實現,在第三方仿真平臺Modelsim工具上仿真。仿真結果與MATLAB計算的理論值進行對比,驗證了此優化算法的正確性。
中圖分類號: TN713
文獻標識碼: A
文章編號: 0258-7998(2015)02-0059-02
Implementation of digital filter with optimal distributed arithmetic based on FPGA
Zhu Xiaoxiao,Cai Jun,Lu Wei
School of Electrical and Information Engineering,Anhui University of Science and Technology,Huainan 232001,China
Abstract: Due to traditional MAC method used multiplier frequently in design of the digital filter,which led to decrease the speed of the whole system,while the general DA algorithm in the design of high order filter existed the problem of that the scale of look-up table was too large to achieve.This papper proposes an optimized DA algorithm to overcome this defect,to verify the algorithm the thesis design a 18 order linear phase structure of FIR low pass filter. Finally,this algorithm is brought out that is used Verilog HDL in FPGA,and simulated in Modelsim tool. The simulation outcome is contrasted with that the MATLAB calculated theoretical values,which verifies the correctness of optimization algorithm.
Key words : MAC;optimization of DA algorithm;linear phase;FPGA

  

0 引言

  FIR濾波器具有嚴格的線性相頻特性,同時又可保證任意幅頻特性。而這個特點使FIR濾波器在數據傳輸、圖像處理和識別、語音處理和通信系統中具有廣泛的應用。除此之外,FIR濾波器除0以外沒有其他的極點,所以整個濾波系統是相對穩定的,不存在不穩定的問題,這是FIR區別于IIR的本質原因,而FIR在傳輸數據時存在色散。

  本文只討論FIR濾波器的設計方法?;贒A算法的濾波器有效解決了MAC結構的不足,但是隨著濾波器的階數增加,查找表的規模呈指數增加,再設計高階濾波器時普通DA算法甚至難以實現。本文提出了一種優化的DA算法來克服一般DA算法在設計高階濾波器時的缺陷,并用Verilog HDL語言在FPGA上實現[1]。

1 線性相位FIR濾波器的結構

  如果FIR中的h(n)為實數,并符合下列條件其中的一種:

  偶對稱:h(n)=h(N-1-n)

  奇對稱:h(n)=-h(N-1-n)

  稱其具有線性相位結構。

  當N為奇數時,其系統函數為[2]:

  1.png

  其直接型結構如圖1所示。

001.jpg

  當N為偶數時,其系統函數為:

  2.png

  其直接型結構如圖2所示。

002.jpg

2 分布式算法

  2.1 分布式算法基礎

  DA算法是基于查找表結構的,其詳細公式解析如下[3]:

  SX{GIT%V6@AVXE~Q}8D(IRS.png

  重新分配求和的順序,其結果如下:

  y=c[0]( xB-1[0]2B-1+ xB-2[0]2B-2+…+ x0[0]20)

  +c[1]( xB-1[1]2B-1+ xB-2[1]2B-2+…+ x0[1]20)+…

  +c[N-1](xB-1[N-1]2B-1+xB-2[N-1]2B-2+…+x0[N-1]20)

  =(c[0] xB-1[0]+c[1] xB-1[1]+…+c[N-1]xB-1[N-1])2B-1

  +c[0] xB-2[0]+c[1] xB-2[1]+…+c[N-1]xB-2[N-1])2B-2

  +…+(c[0] x0[0]+c[1] x0[1]+…+c[N-1] x0[N-1])20

  (6)

  2.2 分布式算法的優化

  假如N的數量增加,一個單一的LUT無法執行全字,就能夠利用部分表并先將結果相加。其原理為:假定長度為LN的內積)QHPKUPTM[O}9P~7[$45ZQM.png,那么可以用一個DA體系結構實現它:

  7.png

  表的規模從一個24N B的LUT減少4個2N B表。優化的DA算法的結構圖如圖3所示。

003.jpg

3 基于FPGA的FIR低通濾波器的設計

  3.1 基于FPGA的FIR設計流程

  本文設計的FIR濾波器的流程如圖4所示,主要分為系數提取和FPGA完成[4]。

004.jpg

  3.2 FIR濾波器的MATLAB設計

  本文設計濾波器主要參數為阻帶最小衰減為30 dB,通帶波紋小于0.5 dB,截止頻率為0.4。為此設計了18階的FIR線性相位低通濾波器,采用窗函數中的凱澤窗來設計。根據凱澤窗參數?對濾波器的性能的影響,來滿足條件。由這些技術指標可通過MATLAB提供的濾波器設計工具箱FDAtool來仿真設計濾波器,從而提取濾波器的系數[5]。

  由于提取出來的系數是浮點型,而FPGA只能處理定點型數據,所以需要把提取出來的系數進行量化,在該設計方案中將系數擴大1 024倍,即210。再通過編碼轉化為二進制形式。通過FDAtool工具提取出的數據及其量化結果如下:

  h(0)=h(17)=-0.014 361 548 558 709 025,

  h(1)=h(16)

  =0.000 000 000 000 000 007 952 163 344 493 980 7,

  h(2)=h(15)=0.028 618 979 697 780 135,

  h(3)=h(14)=0.024 250 698 402 580 449,

  h(4)=h(13)=-0.033 323 873 349 896 04,

  h(5)=h(12)= -0.075 849 033 020 568 446,

  h(6)=h(11)

  =0.000 000 000 000 000 014 598 689 803 221 391,

  h(7)=h(10)=0.197 209 967 107 277 67,

  h(8)=h(9)=0.373 454 809 721 535 27。

  其量化結果分別為:-15,0,29,25,-34,-78,0,202,

  382。十六進制補碼分別為fff1,0000,001d,0019,ffde,ffb2,0000,00ca,017e。

  3.3 線性相位FIR濾波器的FPGA實現

  本文采用模塊化思想,由一個主時鐘控制各個子時鐘,全部模塊分別為并串轉換、延時與預求和、移位累加、查找表采用3個分割查表結構和求部分和的模塊[6]。

  為了驗證電路能否連續正確運行,本文連續隨機輸入序列0、127、100、57、26、5、20、26、79、8、12、49、35、102、99、125、63、82在Modelsim工具上進行仿真,其結果如圖5所示。

005.jpg

  仿真結果與MATLAB工具計算的理論值相比較,其Modelsim部分仿真結果如下:0、-2、-1、3、6、0、-11、-9、

  19、19、66。MATLAB理論計算結果對應為:0、-1.823 9、-1.436 2、2.816 0、5.568 3、-0.247 6、-11.1261、-9.084 2、

  19.414 9、66.125 3。通過仿真與MATLAB計算理論結果進行比較,理論值與仿真結果存在誤差但是誤差在允許的范圍內,誤差主要是因為量化時產生的。

4 結束語

  本文提出的優化DA算法本質是提出對查找表的優化,事實證明濾波器階數越高,此優化算法的作用越明顯,而且可以節省內部邏輯資源。最后通過硬件實現,結果與理論值相比較,設計符合預期。

參考文獻

  [1] 程佩青.數字信號處理[M].北京:清華大學出版社,2001.

  [2] Meyer-Baese U(美).數字信號處理的FPGA實現[M].北京:清華大學出版社,2011.

  [3] 杜勇.數字濾波器的MATLAB與FPGA實現[M].北京:電子工業出版社,2012.

  [4] 高耀紅.基于FPGA的FIR低通濾波器[D].長沙:湖南大學,2012.

  [5] 劉朋全.基于FPGA的FIR數字濾波器的設計和實現[D].西安:西北工業大學,2006.

  [6] 夏宇聞.數字系統設計教程[M].北京:北京航空航天大學出版社,2008.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产综合色在线视频区色吧图片 | 亚洲国产欧美日韩 | 在线免费看黄的网站 | 欧美三级黄视频 | 亚洲成人在线免费观看 | 欧美特黄三级在线观看 | 日本韩国三级在线观看 | 日本中文字幕在线看 | 国产成人精品福利站 | 成人免费看黄网址 | 欧美videos另类精品 | 亚洲一级高清在线中文字幕 | xyx性爽欧美视频 | 日韩视频免费在线观看 | 欧美亚洲国产成人综合在线 | 亚洲免费资源 | 精品欧美日韩一区二区 | 美日韩中文字幕 | 嗯啊使劲用力在线观看视频 | 欧美日韩中文视频 | 天堂黄色| 92精品国产自产在线观看48 | 国产精品免费视频一区一 | 亚洲国产欧美在线不卡中文 | 蝌蚪网在线观看 | 柠檬福利第一导航在线 | 久久综合狠狠综合久久综合88 | 很黄很色又爽很黄很色又爽 | 狂野欧美性猛交xxxx乱大交 | 刺激花蒂抽搐视频在线看 | 一级毛片毛片毛片毛毛片 | 日本黄色二级片 | 国产成人精品.一二区 | 欧美一级视频在线观看欧美 | 永久免费毛片手机版在线看 | 亚洲日韩中文字幕一区 | 亚洲视频在线观看免费视频 | 欧美 日韩 国产在线 | 国产爱v| 婷婷视频在线观看 | 亚洲 欧美 精品专区 极品 |