![基于FPGA流水線分布式算法的FIR濾波器的實現_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/dc2f136d-7a0c-44a5-920a-be2122f79313/dc2f136d-7a0c-44a5-920a-be2122f793131.gif)
![基于FPGA流水線分布式算法的FIR濾波器的實現_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/dc2f136d-7a0c-44a5-920a-be2122f79313/dc2f136d-7a0c-44a5-920a-be2122f793132.gif)
![基于FPGA流水線分布式算法的FIR濾波器的實現_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/dc2f136d-7a0c-44a5-920a-be2122f79313/dc2f136d-7a0c-44a5-920a-be2122f793133.gif)
![基于FPGA流水線分布式算法的FIR濾波器的實現_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/dc2f136d-7a0c-44a5-920a-be2122f79313/dc2f136d-7a0c-44a5-920a-be2122f793134.gif)
![基于FPGA流水線分布式算法的FIR濾波器的實現_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/dc2f136d-7a0c-44a5-920a-be2122f79313/dc2f136d-7a0c-44a5-920a-be2122f793135.gif)
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于FPGA流水線分布式算法的FIR濾波器的實現摘要:提出了一種采用現場可編碼門陣列器件(FPGA)并利用窗函數法實現線性FIR數字濾波器的設計方案,并以一個十六階低通FIR數字濾波器電路的實現為例說明了利用Xilinx公司的Virtex-E系列芯片的設計過程。對于在FPGA中實現FIR濾波器的關鍵乘加運算,給出了將乘加運算轉化為查找表的分布式算法。設計的電路通過軟件進行了驗證并進行了硬件仿真,結果表明:電路工作正確可靠,能滿足設計要求。關鍵詞:FIR濾波器FPGA窗函數分布式摘要: 提出了一種采用現場可編碼門陣列器件(FPGA)并利用窗函數法實現線性FIR數字濾波器的設計方案,并以一個十六階
2、低通FIR數字濾波器電路的實現為例說明了利用Xilinx公司的Virtex-E系列芯片的設計過程。對于在FPGA中實現FIR濾波器的關鍵乘加運算,給出了將乘加運算轉化為查找表的分布式算法。設計的電路通過軟件進行了驗證并進行了硬件仿真,結果表明:電路工作正確可靠,能滿足設計要求。關鍵詞: FIR濾波器 FPGA 窗函數 分布式算法 流水線隨著數字技術日益廣泛的應用,以現場可編程門陣列(FPGA)為代表的ASIC器件得到了迅速普及和發(fā)展,器件集成度和速度都在高速長。FPGA既具有門陣列的高邏輯密度和高可靠性,又具有可編碼邏輯器件的用戶可編程特性,可以減少系統(tǒng)設計和維護的風險,降低產品成本,縮短設計
3、周期。分布式算法是一種以實現乘加運算為目的的運算方法。它與傳統(tǒng)算法實現乘加運算的不同在于執(zhí)行部分積運算的先后順序不同。簡單地說,分布式算法在完成乘加功能時是通過將各輸入數據每一對應位產生的部分積預先進相加形成相應部分積,然后在對各部門積進行累加形成最終結果,而傳統(tǒng)算法是等到所有乘積產生之后再進行相加來完成乘加運算的。與傳統(tǒng)算法相比,分布式算法可極大地減少硬件電路規(guī)模,很容易實現流水線處理,提高電路的執(zhí)行速度。FPGA有著規(guī)整的內部邏輯塊陣列和豐富的連線資源,特別適合細粒度和高并行度結構特點的數字信號處理任務,如FIR、FFT等。本文詳細討論利用FPGA實現FIR濾波器的設計過程,并且對設計中的
4、關鍵技術分布式算法進行詳細描述。1 FIR和分布式算法1.1 FIR的基本概念FIR濾波器的數學表達式為:式中,N是FIR濾波器的抽頭數,x(n)表示第n時刻的輸入樣本;h(i)是FIR濾波器的第i級抽頭系數。普通的直接型FIR濾波器結構如圖1所示。FIR濾波器實質上是一個分節(jié)的延遲線,把每一節(jié)的輸出加權累加,便得到濾波器的輸出。對于FIR濾波器,幅度上只需滿足以下兩個條件之一,就能構成線性相位FIR濾波器。h(n)=h(N-1-n) (2)h(n)=-h(N-1-n) (3)式(2)稱為第一類線性相位的幅度條件(偶對稱),式(3)稱為第二類線性相位的幅度條件(奇對稱)。1.2 FIR濾波器的
5、優(yōu)化在實際應用中,為了減少邏輯資源的占有量和提高系統(tǒng)的運行速度,對FIR濾波器需要進行優(yōu)化處理。本文采用的優(yōu)化主要有兩種:一種是對表達式進行優(yōu)化,另一種是在FPGA實現中利用特有的查找表進行優(yōu)化。對于線性相位因果FIR濾波器,它的系列具有中心對稱特性,即h(i)=h(N-1-i)。令s(i)=x(i) x(N-1-i),對于偶對稱,代入式(1)可得:根據方程(4),線性相位FIR濾波器的直接型結構可以改為如圖2所示的結構,從而使N次乘法減少為N/2次,加法次數增加了N/2次(N為偶數),總的運算量減少。由于實現的是固定系數的FIR濾波器,所以可以用利用簡化的過程(如查找表)減少設計所耗用的器件
6、資源。以一個8階FIR濾波器為例來說明在FPGA實現中優(yōu)化的過程。假定濾波器的輸入為2bit的正整數,由(4)可以得到輸出為:y(n)=s(0)h(0)+s(1)h(1)+s(2)h(2)+s(3)h(3) (5)這時的乘法和加法就可以并行地采用查找表實現,其結構示意圖如圖3所示。在圖3中,右面4個信號是輸入的低位bit,左邊是輸入信號的高位bit。低位和P1最多使用4bit,由于系數固定,查找表實現起來很方便;高位和P2可按同樣方法計算。在該結構中,部門積P1和P2可以利用Virtex-E的4輸入查找表實現,所有的計算都可并行完成。由于輸入為2bit,因此只用了一個加法器;對于更多位數的輸入
7、來說,將需要更多的加法器。這樣就實現了將乘法器轉化為回法器,減少了解邏輯資源,優(yōu)化了設計。1.3 分布式算法分布式算法在20多年前被首次提出,但直到Xilinx發(fā)明FPGA的查找表結構以后,分布式算法才在20世紀90年代初重新受到重視,并被有效地應用在FIR濾波器的設計中。下面介紹分布式算法的原理。式(1)可以用下式表示:式中,hi即h(i),xi(n)即x(n-i),N為濾波器的抽頭數。把數據源數據格式規(guī)定為2的補碼形式,則:式中,xib(n)為二進制數,取值為0或1;xio(n)為符號位,為1表示數據為負,為0表示數據為正。將(7)式代入(6)式可得:由此可以看出,方括號是輸入變量的一個數
8、據位和所有濾波器抽頭系數h0hi的每一位進行“與”運算并求和。而指數部分則說明了求和結果的位權,整數乘以2b就是左移b位,對此可以通過硬件連線實現,不占用邏輯資源。這樣就可以通過建立查找表來實現方括號中的運算,查找表可用所有輸入變量的一同一位進行尋址。2 系統(tǒng)設計與實現下面以一個16階的線性相位FIR低通濾波器為例說明設計的過程。2.1 設計指標及參數提取采樣頻率:50MHz 歸一化截止頻率:0.4MHz類型:低通 輸入數據寬度:8位階數:16階 輸出數據寬度:16位采用漢字窗函數(Hanning)設計16階線性相位FIR數字濾波器,并提取其特性參數。這里需要注意的是:下載到FPGA的程序是按
9、照FIR濾波器的差分方程式編寫的。由于從MATLAB17位,相當于乘上65536)。用漢字窗(Hanning)進行設計,此16階FIR數字低通濾波器特性參數經過換算如下:h0=h15=0000 h1=h14=0065 h2=h13=018Fh3=h12=035A h4=h11=0579 h5=h10=078Eh6=h9=0935 h7=h8=0A1F2.2 系統(tǒng)具體實現步驟我們知道,如果濾波器抽頭數N過多,用單個查找表就不能執(zhí)行全字(因為查找表位寬=濾波器抽頭數的數量)。在這種情況下,可以將表的地址輸入位數(即濾波器抽頭數N)進行降低,既利用部分表并將結果相加。如果加上流水線寄存器,這一改進并
10、沒有降低速度,但是卻可以極大地減少設計規(guī)模,因為查找表的規(guī)模是隨著地址空間,也就是濾波器抽頭數N的增加而呈指數增加,根據卷積和 定義16階內積。濾波器抽頭數是16個,考慮到線性FIR濾波器的偶對稱特性,只考慮8個獨立濾波器抽頭數,則需要一個2 88的表(其中指數8指的是8個濾波器抽頭數,后面的8指的是輸入數據的位寬)。但是Virtex-e FPGA只能提供4輸入的查找表,所以要對查找表的地址進行電路分割。將8位地址線分為高4位和低4位,分別作為兩個2 48的查找表的地址輸入,從而指數倍地節(jié)省了硬件資源。假定輸入數據xn的值x0=1 10=00000001 2c,x1=-1 10=1111111
11、1 2c,x2=3 10=00000011 2c,x3=2 10=00000010 2c。(注:2c代表用二進制補碼表示,最高位為符號位。)數據校驗結果:h0x0+h1x1+h2x+h3x3=2812說明利用分布式查表算法的計算結果與直接計算結果相同,算法正確無誤。查找表(2)的查表計算結果依此類推。只是需要注意:查找表(2)的數據輸入x是8位數據x4、x5、x6、x7,而不是x3、x2、x1、x0。根據系數偶對稱性質。x8、x9、x10、x11查查找表(2),x12、x13、x14、x15查查找表(1)。3 設計結果本系統(tǒng)的FPGA采用Xilinx公司的Virtex-E系列中的XCV100E FPGA,使用的軟件是Xilinx公司的ISE5.2i及Modelsim公司的Modelsim時序仿真工具,對FIR濾波器進行描述編程使用的是VHDL語言。實現FIR濾波器的最上層的原理圖如圖4所示,輸入16個8位數據data_in=1,-1,3,2,2-1,1,-1,1,-1,3,2,2,-1,1,1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年四年級英語下冊 Unit 3 What can you see第2課時說課稿 湘少版
- 7《美麗的化學變化》說課稿-2023-2024學年科學六年級下冊教科版
- 2025計算機購銷合同樣書
- 2025勞動合同法課程學習指南
- 2024年高中化學 專題3 常見的烴 第一單元 第1課時 脂肪烴的類別、烷烴說課稿 蘇教版選修5001
- 2憲法是根本法 第一課時 感受憲法日(說課稿)-部編版道德與法治六年級上冊
- 醫(yī)療試劑合同范例
- 包工項目合同范本
- 化妝店加盟合同范例
- 2024-2025學年高中地理 第二章 區(qū)域可持續(xù)發(fā)展 2.4 農業(yè)的可持續(xù)發(fā)展-以美國為例說課稿 湘教版必修3
- 20210年中考英語復習:閱讀理解信息歸納摘錄考題匯編(含答案)
- 團餐服務培訓資料
- 喉全切除術手術配合
- (正式版)SHT 3225-2024 石油化工安全儀表系統(tǒng)安全完整性等級設計規(guī)范
- 人教版六年級數學上冊《應用題》專項練習題(含答案)
- 第三單元 嘆錦繡中華書傳統(tǒng)佳話(教學設計) 三年級語文下冊大單元教學(部編版)
- 商業(yè)秘密培訓課件模板
- 網絡與信息安全管理培訓資料2024
- 洛奇化石復原腳本
- 道路交通安全法律法規(guī)課件
- 人教版三年級上冊豎式計算練習300題及答案
評論
0/150
提交評論