基于DA算法的FIR濾波器設計與實現_第1頁
基于DA算法的FIR濾波器設計與實現_第2頁
基于DA算法的FIR濾波器設計與實現_第3頁
基于DA算法的FIR濾波器設計與實現_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于DA算法的FIR濾波器設計與實現時間:2007-09-04   來源:   作者:張大智 張望 牟志新   點擊:680   字體大小:【大 中 小】 1引言    在數字信號處理系統中,FIR數字濾波器多采用專用DSP芯片(如TMS320CXX系列),這種基于DSP的處理系統存在很多優點,比如方案靈活、可操作性強、程序易于移植。但這種結構的濾波器多是根據FIR 濾波器的數據移位相乘累加的算法編寫相應軟件,利用軟、硬件相互結合完成濾波器的設計。由于軟件運行時,指令都是串行執行的,這嚴重制約了系統的運行速率,不能滿足高傳輸

2、速率,大數據吞吐量的數字信號的實時性處理要求。而基于DA算法的FPGA濾波器則是一種采用純硬件的方式實現FIR 濾波器的方式,這種方法突出的優點是運算速度快,特別適合在高速、實時、快變的數字信號處理要求。2DA算法的基本思想    第一個討論分布式算法(distributed arithmetic,DA)的可以追溯到1973年Cr0i Croisier的一篇論文,并由Peled和Liu來推廣。但是直到FPGA出現以后,才在FPG計算乘積和中被廣泛地應用。在FPGA 芯片設計中,分布式算法(distributed arithmetic,DA)是一種很重要的技術。它在

3、乘積和的計算中已被廣泛應用,為了理解DA算法設計原理,我們考慮有一個線性時不變網絡的輸出可以用下式表示: 假設系數cn是已知常數,xn是變量,在有符號DA系統中假設變量xn的表達式如下: 其中xbn表示 xn的第b位,即xn是x第n個樣點。所以,內積y 可以表示為: 我們重新分別求和次序(這就是分布式算法的由來),結果是:y=(c0xB-10+c1+cN-1xB-1N-1)2B-1+(c0xB-20+c1+cN-1xB-2N-1)2B-2     (2-4).+(c0x00+c1x01+cN-1x0N-1)20 &

4、#160;  用更緊湊的形式表示為:     從(24)式可以發現,分布式算法是一種以實現乘加運算為目的的運算方法。它與傳統算法實現乘加運算的不同在于執行部分積運算的先后順序不同。分布式算法在實現乘加功能時,是通過將各輸入數據的每一對應位產生的部分積預先進行相加形成相應的部分積,然后再對各個部分積累加而得到最終的結果,而傳統算法是等到所有乘積已經產生之后再來相加完成乘加運算的。與傳統串行算法相比,分布式算法可極大地減少硬件電路的規模,提高電路的執行速度。3基于DA算法的FIR數字濾波器的硬件實現    由上面分析可

5、以知道,對于任何一個線性時不變網絡總可以將它轉換成式(2-5)那樣的形式,FIR濾波器是一個很典型的線性時不變網絡,它的表達式是: 我們可以將它轉化成下面這樣的形式: 在本系統中,采用的是8 位輸入,所以B = 8 則:     線性相位FIR濾波器滿足系數對稱條件,本系統設計的系統為16階,那么它的系數關于h7偶對稱,即有:hn= h16-1-n= h15-n   (3-4)    由式(3-3)和(3-4)可得到實現系統硬件框圖如圖3-1: 4系統的VHDL描述4.1頂層

6、模塊設計Library ieee;Use ieee.std_logic_1164.a11;Use ieee.std_logic_unsigned.all;Entity FIR isPort (x: in std_logic_vector(7 downto 0);clk : in std_logic;y : out std_logic_vector(7 downto 0);end FIR;architecture behave of FIR iscomponent lpfirport (in : in std_logic_vector(7 downto 0);clk : in std_logic

7、;out : out std_logic_vector(7 downto 0);end component ;beginprocess(clk)beginu1:lpfir port map (x,clk,y);end process;end behave;4.2 LUT查詢表ROM的建立用MIF文件格式編輯的ROM初始化值WIDTH = 16DEPTH = 16ADDRESS_RADIX = HEX ;DATA_RADIX = HEX ;CONTENT BEGIN0 : 0000;1 : 0045;2 : 00E6;F : 0000;END;4.3 濾波器系數的設計  &#

8、160; 我們利用matlab 自帶的濾波器設計工具FDAtool和信號處理工具Pstool設計出一個16階窗函數FIR低通濾波器。它的具體參數是:窗函數類型:Blackman窗,信號采樣頻率:50KHz,通帶截至頻率10KHz,濾波系數hn見下表1,該濾波器的傳輸特性如下圖4-1 所示: 5系統的仿真與結果分析    為了驗證與檢測該系統的效果,我們采用Cyclone 公司EP1C6Q240C8芯片對系統進行了開發,并通過ALTERA 公司的綜合設計工具Quartus II 4.2 對該系統進行了綜合編譯與仿真,我們對該系統連續輸入了16個數據(0.3

9、,0.32,-0.79,0.45,-0.87,-0.91,-0.12,0.89,0.37,0.66,-0.57,0.75,-0.21,0.96,0.56,-0.19)進行處理,得到了如下仿真結果。5.1 系統綜合性能的仿真結果    系統的綜合性能見表5-1:      由表5-1可以看出系統占有硬件資源很少,運行速度很高。5.2 系統處理準確性的仿真結果    系統的處理結果與理論結果對比見表5-2:    為了獲得一個更為準確的結果,取后8 個數據進行分析,通過表5-2我們可以看出該系統的實際處理結果與理論計算結果誤差很小,可以滿足實際工程方面的需求。6 結論    以上理論分析和仿真結果表明,軟硬件結合串行執行的DS

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論