《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于XC2V1000型FPGA的FIR抽取濾波器的設計
基于XC2V1000型FPGA的FIR抽取濾波器的設計
摘要: 現場可編程門陣列(FPGA)有著規整的內部邏輯陣列和豐富的連線資源,特別適用于數字信號處理,但長期以來,用FPGA實現抽取濾波器比較復雜,其原因主要是FPGA中缺乏實現乘法運算的有效結構。現在,FPGA集成了乘法器,使FPGA在數字信號處理方面有了長足的進步。本文介紹用Xilinx公司的XC2V1000型FPGA實現FIR抽取濾波器的設計方法。
Abstract:
Key words :

1 引言

  抽取濾波器廣泛應用在數字接收領域,是數字下變頻器的核心部分。目前,抽取濾波器的實現方法有3種:單片通用數字濾波器集成電路、DSP和可編程邏輯器件。使用單片通用數字濾波器很方便,但字長和階數的規格較少,不能完全滿足實際需要。使用DSP雖然簡單,但程序要順序執行,執行速度必然慢。現場可編程門陣列(FPGA)有著規整的內部邏輯陣列和豐富的連線資源,特別適用于數字信號處理,但長期以來,用FPGA實現抽取濾波器比較復雜,其原因主要是FPGA中缺乏實現乘法運算的有效結構。現在,FPGA集成了乘法器,使FPGA在數字信號處理方面有了長足的進步。本文介紹用Xilinx公司的XC2V1000型FPGA實現FIR抽取濾波器的設計方法。

2 XC2V1000簡介

  Virtex-Ⅱ系列是Xilinx公司近幾年研發的具有高性能、高速度和低功耗特點的新一代FPGA,一經問世就備受界內人士的青睞。該系列FPGA基于IP核和專用模塊設計,能夠為電信、無線電、網絡、視頻和數字信號處理領域的應用提供完整的解決方案。XC2V1000是Virtex-Ⅱ家族的一員,具有如下主要特點:

  ●100萬個系統門;

  ●40×32個可配置邏輯單元(5120個slice);

  ●40個18×18 bits乘法器,1個工作時鐘內即可完成乘法運算;

  ●720Kbits RAM,可靈活配置(單口、雙口、有使能或無使能等);

  ●8個DCM(Digital Clock Manager)模塊;

  ●328個用戶I/O。

  此外,Xilinx公司還提供了功能強大的開發平臺(ISE),開發者可通過該平臺完成全部設計。

3 抽取濾波器的工作原理

  抽取濾波器的工作原理是在濾波過程中實現抽取。對于抽取率為N的抽取濾波器而言,不是每進入1個新數據就完成1次濾波運算,然后再抽取,而是當進來N個數據時濾波器才完成1次濾波運算,輸出1次濾波結果。抽取濾波器的結果和先濾波后抽取的結果是一致的,只是對于同樣的數據,進行濾波運算的次數大大減少。在數字系統中采用抽取濾波器的最大優點是增加了每次濾波的可處理時間,從而達到實現高速輸入數據的目的。下面以抽取率為2的具有線性相位的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個累加器采用流水線操作在2個工作時鐘內就可以完成2次加法、2次乘法和2次累加運算,就可以完成一次抽取濾波。

3階Ⅱ類FIR線性相位濾波器結構

4 具體實現

4.1 結構設計

  基于上述抽取濾波器的工作原理,筆者用XC2V1000實現了這個抽取率為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是控制器模塊。控制器定時向加法器、乘法器和累加器發送數據或控制信號,實現流水線操作。

抽取濾波器的頂層原理圖

點擊看原圖

 

 

 

4.1.1控制器(fir_controller)

  控制器是抽取濾波器的核心模塊,有2種功能:接收輸入數據,向其他模塊發送數據和控制信號。它根據加法器、乘法器和累加器的時序特性,規律地向加法器發送抽頭數據,向乘法器發送系數,向累加器發送控制信號,讓加法器、乘法器和累加器每個時鐘都完成指定的任務,從而實現流水線操作。控制器用YHDL語言描述,用寄存器存放抽頭和系數。

4.1.2加法器(adder18)

  加法器的輸入和輸出都是18bits,用VHDL語言描述實現。它有2個工作時鐘的延遲,在輸入數據準備好的情況下,第一個時鐘得出相加結果,第二個時鐘把相加結果鎖存輸出。

 


4.1.3乘法器(multl8)

  乘法 器是18bits輸入和36bits輸出,用庫元件MULT18X18S和36bits鎖存器實現。MULT18Xl8S是XC2V1000自帶的18×18bits乘法器,單個時鐘就可完成乘法運算;36bits鎖存器工作于時鐘的上升沿,用VHDL語言描述。乘法器(mult18)也有2個工作時鐘的延時,在輸入數據準備好的情況下,第一個時鐘得出相乘結果,第二個時鐘把相乘結果鎖存輸出。加法器和乘法器采用鎖存輸出的結構,雖然增加了1個工作時鐘的延遲,但有利于抽取濾波器穩定的工作,提高可靠性。

4.1.4累加器(acc36)

  36bits累加器用于累加乘法器的輸出,得出濾波結果。它有1個控制端口clr,當clr為高電平時,輸出前一輪累加結果,并初始化開始新一輪累加;當clr為低電平時.進行累加運算。累加器用VHDL語言描述。

4.1.5數據截位器(signal_36-18)

  數據截位器用VHDL語言描述,用于把累加器的36位輸出進行取舍處理,一般截掉數據低位部分,保留數據高位。為了對抽取濾波器進行功能仿真,這里截掉數據高18位,保留數據低18位。

4.2 工作過程及功能仿真

  加法器、乘法器和累加器在控制器

 

的作用下每個時鐘都要完成指定的任務,從而形成流水線操作,實現抽取濾波。

  下面以抽取濾波器完成1次抽取濾波的全過程為例,說明抽取濾波器的工作過程。假設時鐘1、時鐘2、時鐘3和時鐘4控制器已接收了數據x(n-3)、x(n-2)、x(n-1)和x(n),那么,

  時鐘5:控制器向加法器發送數據x(n)和x(n-3);

  時鐘6:加法器進行。x(n)+x(n-3)運算;控制器向加法器發送數據x(n-1)和x(n-2);

  時鐘7:加法器進行x(n-1)+x(n-2)運算,輸出x (n)+x(n-3)運算結果。控制器向乘法器發送系數h(0);

  時鐘8:加法器輸出x(n-1)+x(n-2)運算結果,乘法器進行h(0)[x(n)+x(n-3)]運算,控制器向乘法器發送系數h(1) ;

  時鐘9:乘法器進行h(1)[x(n-1)+x(n-2)]運算,輸出h(0)[x(n)+x(n-3)1運算結果。控制器向累加器發送控制信號(clr為高電平);

  時鐘10:乘法器輸出h(1)[x(n-1)+x(n-2)]運算結果。累加器初始化開始累加操作。控制器向累加器發送控制信號(clr為低電平);

  時鐘11:累加器進行累加運算h(0)[x(n)+x(n-3)]+h(1)[x(n-1)+x(n-2)]。控制器向累加器發送控制信號(clr為高電平),控制器輸出濾波數據有效信號(valid為高電平);

  時鐘12:累加器輸出h(0)[x(n)+x(n-3)]+h(1)[x(n-1)+x(n-2)]累加結果,并初始化開始新一輪累加操作。控制器輸出濾波數據無效信號(valid為低電平);

  以上就是抽取濾波器完成1次抽取濾波的全過程。可見,從數據x(n)輸入到濾波結果y(n)輸出需要8個工作時鐘。如果控制器不停地向加法器、乘法器和加法器發送抽頭、系數和控制信號,就會形成流水線操作,那么每2個時鐘,抽取濾波器就會輸出1個濾波結果。圖3是抽取濾波器的仿真波形圖,其中在控制器中設置系數h(0)=1和h(1)=2。

抽取濾波器的仿真波形

點擊看原圖

 

 

 

4.3注意事項

  2個n位二進制數相加,其和至少需要n+l位二進制數才能正確表示。本設計中的加法器輸入輸出都是18位,為了防止加法器溢出,應確保18位輸入數據x(n)的最高2位相同(都是符號位)。

  為了實現抽取濾波器的多級串聯結構,應統一輸入數據有效信號enable和輸出數據有效信號valid的時序要求。本設計規定控制器在累加器輸出濾波結果數后下1個時鐘送出濾波結果有效信號,時寬為1個工作時鐘周期。

5 設計特點

  采用此設計結構實現抽取濾波器具有以下3個特點:

  (1)節省片內資源和提高資源使用效率

  Xilinx公司為了方便用戶設計濾波器,在IP核中集成了通用數字濾波器的設計,但利用IP核生成的數字濾波器往往不能針對實際情況合理地利用片內資源,造成資源浪費。本設計中采用了流水線結構,所有功能模塊都滿負荷工作,沒有空閑等待時鐘,從而節省了片內資源,提高了資源使用率。

  (2)可以實現抽取濾波器多級結構

  針對抽取濾波器的輸出特性,可以采取相同的設計方法再設計一級抽取濾波器,對前一級輸出的數據再次抽取濾波,從而實現多級抽取濾波器結構。

  (3)設計靈活且擴展性強

  用寄存器存放抽頭和系數適用于濾波器階數較少的情況,如果需要用上百階的抽取濾波,最好用片內:RAM存放抽頭和系 數,這時只要稍加改動控制器的邏輯設計既可實現。在此基礎上,還可實現可編程抽取濾波器。


6 結束語

  本文以實現抽取率為2的具有線性相位的3階FIR抽取濾波器為例,介紹了一種用XC2V1000型FPGA實現FIR抽取濾波器的設計方法。用該方法設計出的抽取濾波器靈活性強、資源利用率高,能廣泛應用于數字接收領域。

 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩亚洲国产欧美| 欧美一区二区免费观在线| 亚洲深夜激情| 亚洲国产老妈| 在线观看日韩专区| 国内精品久久久久久影视8 | 99国产成+人+综合+亚洲欧美| 亚洲高清色综合| 精品二区视频| 一区二区亚洲精品国产| 国产一区二区三区成人欧美日韩在线观看 | 久久久精品欧美丰满| 久久爱www| 久久国产一区| 久久久久久久久久久久久9999| 欧美一区二区三区喷汁尤物| 欧美亚洲综合另类| 久久精品观看| 久热精品视频| 欧美韩日一区二区| 欧美精品在线一区二区| 欧美日韩在线高清| 国产精品嫩草久久久久| 国产精品一区一区三区| 国产婷婷色一区二区三区四区| 国产一区二区三区久久精品| 国产在线观看91精品一区| 国产亚洲成av人在线观看导航| 国产综合色一区二区三区| 极品裸体白嫩激情啪啪国产精品| 在线观看日产精品| 亚洲清纯自拍| 亚洲一区二区免费| 欧美一区二区精品| 亚洲国产一区二区视频| 日韩亚洲欧美在线观看| 亚洲一区二区在线播放| 午夜在线电影亚洲一区| 久久久久免费视频| 欧美激情综合在线| 国产精品扒开腿做爽爽爽软件| 国产欧美另类| 亚洲国产精品va在看黑人| 99re热精品| 欧美亚洲免费高清在线观看| 亚洲区一区二区三区| 亚洲午夜一区二区三区| 久久国产日韩| 欧美精品一区三区| 国产美女精品人人做人人爽| 樱花yy私人影院亚洲| 日韩一级黄色大片| 午夜精品影院| 亚洲精品无人区| 先锋影音国产精品| 欧美va亚洲va日韩∨a综合色| 欧美视频中文一区二区三区在线观看 | 欧美在线播放一区二区| 亚洲精品一区中文| 亚洲欧美一区二区激情| 狂野欧美性猛交xxxx巴西| 欧美午夜不卡影院在线观看完整版免费| 国产日韩欧美夫妻视频在线观看| 亚洲国产影院| 午夜精品在线| 在线天堂一区av电影| 久久成人精品无人区| 欧美精品1区2区| 国产婷婷97碰碰久久人人蜜臀| 亚洲精品国产精品国产自| 篠田优中文在线播放第一区| 亚洲美女视频网| 久久成人免费视频| 欧美日韩一区二区在线视频| 黄色精品免费| 亚洲欧美成aⅴ人在线观看| 亚洲美洲欧洲综合国产一区| 欧美一区二区三区视频免费播放| 欧美精品18+| 极品少妇一区二区三区精品视频| 亚洲午夜一区二区| 日韩亚洲视频在线| 久热re这里精品视频在线6| 国产精品视频免费一区| 亚洲日本中文字幕免费在线不卡| 久久国产日韩| 欧美亚洲日本国产| 欧美日韩亚洲一区二| 在线观看中文字幕亚洲| 欧美一区二区三区电影在线观看| 亚洲午夜视频在线观看| 欧美精品xxxxbbbb| 在线视频国内自拍亚洲视频| 欧美一区激情| 午夜在线观看免费一区| 欧美色视频日本高清在线观看| 亚洲国产精品成人综合| 亚洲高清自拍| 久久久综合网站| 国产亚洲欧美一区二区| 亚洲女同同性videoxma| 亚洲影院高清在线| 欧美日产一区二区三区在线观看| 亚洲高清视频一区二区| 亚洲国产高清自拍| 久久中文精品| 一区在线观看视频| 亚洲成人在线视频播放 | 久久成人免费日本黄色| 国产精品久久久久aaaa| 99热在这里有精品免费| 日韩视频―中文字幕| 欧美成人精品一区二区| 伊人久久大香线蕉综合热线| 久久精品国产在热久久| 久久久久免费视频| 国精品一区二区| 久久成人羞羞网站| 久久精视频免费在线久久完整在线看| 国产乱码精品一区二区三区av| 在线一区二区三区做爰视频网站 | 久久亚洲欧洲| 精品99一区二区三区| 久久精品国产一区二区电影 | 久久久噜噜噜久久| 国产一区二区精品久久99| 午夜视频一区在线观看| 翔田千里一区二区| 国产欧美精品久久| 欧美一区二区三区另类| 久久蜜臀精品av| 一区精品在线播放| 亚洲精品欧美精品| 欧美日韩国产影院| 一区二区三区视频在线播放| 亚洲欧美自拍偷拍| 国产深夜精品| 亚洲国产成人av| 欧美黑人多人双交| 一本色道久久加勒比精品| 亚洲一区视频| 国产精品一区二区三区免费观看| 午夜视频精品| 免费不卡欧美自拍视频| 亚洲人成网在线播放| 亚洲视频免费看| 国产欧美成人| 亚洲韩国一区二区三区| 欧美日韩999| 一区二区三区国产盗摄| 欧美一区二区三区久久精品| 韩国v欧美v日本v亚洲v| 亚洲精品免费在线观看| 欧美性猛片xxxx免费看久爱 | 欧美色欧美亚洲高清在线视频| 亚洲一区二区三区高清| 久久九九国产精品怡红院| 黄色成人在线免费| 一区二区三区高清不卡| 国产精品视频观看| 亚洲第一在线综合在线| 欧美日韩美女一区二区| 亚洲免费综合| 免费观看成人| 亚洲视频电影图片偷拍一区| 久久精品综合| 亚洲精品在线观看视频| 欧美在线亚洲在线| 亚洲国产欧美一区二区三区久久| 亚洲在线日韩| 好吊妞**欧美| 亚洲私人影院在线观看| 国产一区二区三区自拍| 一本色道久久综合亚洲精品按摩| 国产精品视频大全| 亚洲欧洲一区二区三区久久| 国产精品黄色| 亚洲娇小video精品| 国产精品你懂的在线| 亚洲精品乱码久久久久久黑人| 国产精品美女在线观看| 亚洲精品久久嫩草网站秘色 | 久久久久国产一区二区| 日韩亚洲不卡在线| 久久久欧美一区二区| av成人免费在线| 免费在线观看一区二区| 亚洲欧美日韩国产中文在线| 欧美精品一区视频| 久久精品人人做人人综合 | 国产亚洲成av人在线观看导航| 一区二区免费在线观看| 国产一区二区三区在线观看免费视频 | 国产精品久久久久久久免费软件| 亚洲电影av| 国产精品视频xxxx| 在线视频欧美精品| 在线播放亚洲| 久久久精彩视频| 亚洲综合电影|