新聞中心

EEPW首頁(yè) > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 基于FPGA實(shí)現(xiàn)FIR濾波器的研究

基于FPGA實(shí)現(xiàn)FIR濾波器的研究

——
作者: 時(shí)間:2007-02-06 來(lái)源:電子技術(shù)應(yīng)用 收藏

基于實(shí)現(xiàn)的研究
武漢大學(xué)電氣工程學(xué)院(430072) 郭曉宇 潘 登 楊同中
 
  摘 要:針對(duì)在中實(shí)現(xiàn)的關(guān)鍵——乘法運(yùn)算的高效實(shí)現(xiàn)進(jìn)行了研究,給出了將乘法化為查表的算法,并采用這一算法設(shè)計(jì)了。通過仿真驗(yàn)證,證明了這一方法是可行和高效的,其實(shí)現(xiàn)的濾波器的性能優(yōu)于用DSP和傳統(tǒng)方法實(shí)現(xiàn)的FIR濾波器。最后介紹了整數(shù)的表示和還處于研究階段的根據(jù)FPGA實(shí)現(xiàn)的要求改進(jìn)的最優(yōu)表示。
  關(guān)鍵詞:FPGA FIR濾波器

  數(shù)字濾波器是語(yǔ)音與圖像處理、模式識(shí)別、雷達(dá)信號(hào)處理、頻譜分析等應(yīng)用中的一種基本的處理部件,它能滿足濾波器對(duì)幅度和相位特性的嚴(yán)格要求,避免模擬濾波器所無(wú)法克服的電壓漂移、溫度漂移和噪聲等問題。有限沖激響應(yīng)(FIR)濾波器能在設(shè)計(jì)任意幅頻特性的同時(shí)保證嚴(yán)格的線性相位特性。
  目前FIR濾波器的實(shí)現(xiàn)方法有三種:利用單片通用數(shù)字濾波器集成電路、DSP器件和可編程邏輯器件實(shí)現(xiàn)。單片通用數(shù)字濾波器使用方便,但由于字長(zhǎng)和階數(shù)的規(guī)格較少,不能完全滿足實(shí)際需要。使用DSP器件實(shí)現(xiàn)雖然簡(jiǎn)單,但由于程序順序執(zhí)行,執(zhí)行速度必然不快。FPGA有著規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,特別適合于數(shù)字信號(hào)處理任務(wù),相對(duì)于串行運(yùn)算為主導(dǎo)的通用DSP 芯片來(lái)說,其并行性和可擴(kuò)展性更好。但長(zhǎng)期以來(lái),F(xiàn)PGA一直被用于系統(tǒng)邏輯或時(shí)序控制上,很少有信號(hào)處理方面的應(yīng)用,其原因主要是因?yàn)樵贔PGA中缺乏實(shí)現(xiàn)乘法運(yùn)算的有效結(jié)構(gòu)。現(xiàn)在這個(gè)問題得到了解決,使FPGA在數(shù)字信號(hào)處理方面有了長(zhǎng)足的發(fā)展。
1 分布式運(yùn)算原理
  分布式算法()早在1973年就已經(jīng)被Croisier提出來(lái)了,但是直到FPGA出現(xiàn)以后,才被廣泛地應(yīng)用在FPGA中計(jì)算乘積和。
  一個(gè)線性時(shí)不變網(wǎng)絡(luò)的輸出可以用下式表示:


  
  假設(shè)系數(shù)c[n]是已知常數(shù),x[n]是變量,在有符號(hào)DA系統(tǒng)中假設(shè)變量x[n]的表達(dá)式如下:


  
  重新分別求和(也就是分布式算法的由來(lái)),其結(jié)果如下:


  
  從(1)式可以發(fā)現(xiàn),分布式算法是一種以實(shí)現(xiàn)乘加運(yùn)算為目的的運(yùn)算方法。它與傳統(tǒng)算法實(shí)現(xiàn)乘加運(yùn)算的不同在于執(zhí)行部分積運(yùn)算的先后順序不同。分布式算法在實(shí)現(xiàn)乘加功能時(shí),是通過將各輸入數(shù)據(jù)的每一對(duì)應(yīng)位產(chǎn)生的部分積預(yù)先進(jìn)行相加形成相應(yīng)的部分積,然后再對(duì)各個(gè)部分積累加形成最終結(jié)果的,而傳統(tǒng)算法是等到所有乘積已經(jīng)產(chǎn)生之后再來(lái)相加完成乘加運(yùn)算的。與傳統(tǒng)串行算法相比,分布式算法可極大地減少硬件電路的規(guī)模,提高電路的執(zhí)行速度。它的實(shí)現(xiàn)框圖如圖1(虛線為流水線寄存器)所示。


2 用分布式原理實(shí)現(xiàn)FIR濾波器
2.1 串行方式
  當(dāng)系統(tǒng)對(duì)速度的要求不高時(shí),可以采用串行的設(shè)計(jì)方法,即采用一個(gè)DA表、一個(gè)并行累加器和少量的寄存器就可以了。
  在用LUT實(shí)現(xiàn)串行分布式算法的時(shí)候,假設(shè)系數(shù)為8位,則DA表的規(guī)模為2N



關(guān)鍵詞: CSD DA FIR濾波器 FPGA

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉