新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 對(duì)FIR數(shù)字濾波器的FPGA實(shí)現(xiàn)的研究

對(duì)FIR數(shù)字濾波器的FPGA實(shí)現(xiàn)的研究

作者: 時(shí)間:2010-04-26 來(lái)源:網(wǎng)絡(luò) 收藏

  如今,已成為系統(tǒng)的核心器件,尤其在數(shù)字通信、網(wǎng)絡(luò)、視頻和圖像處理等領(lǐng)域?,F(xiàn)在的不僅包含查找表、寄存器、多路復(fù)用器、分布式塊存儲(chǔ)器,而且還嵌入專用的快速加法器、乘法器和輸入,輸出設(shè)備。具有實(shí)現(xiàn)高速并行運(yùn)算的能力,因而成為高性能的理想器件。此外,與專用集成電路(ASIC)相比,F(xiàn)PGA具有可重復(fù)編程的優(yōu)點(diǎn)。

  根據(jù)單位脈沖響應(yīng)的不同,主要分為有限脈沖響應(yīng)()和無(wú)限脈沖響應(yīng)(IIR)2大類。在同樣的設(shè)計(jì)要求下,IIR方式計(jì)算工作量較小。但難以得到線性相位響應(yīng),且系統(tǒng)不易穩(wěn)定;方式的計(jì)算工作量稍大,但在設(shè)計(jì)任意幅頻特性時(shí),能保證嚴(yán)格的線性相位特性;由于其實(shí)現(xiàn)結(jié)構(gòu)主要是非遞歸的,F(xiàn)lR濾波器可以穩(wěn)定工作。是數(shù)字多普勒接收機(jī)的重要組成部分,因此,研究FIR的實(shí)現(xiàn)技術(shù)具有重要意義。隨著FPGA技術(shù)的不斷發(fā)展,F(xiàn)PGA逐漸成為信號(hào)處理的主流器件。而在FPGA中,數(shù)字濾波器不同的實(shí)現(xiàn)方法所消耗的FPGA資源是不同的,且對(duì)濾波器的性能影響也有較大差異。

  1 FIR濾波器的原理及結(jié)構(gòu)

  FIR濾波器存在N個(gè)抽頭的h(n),N稱為濾波器的階數(shù),其數(shù)學(xué)表達(dá)式為:

公式

  式中,x(k)為第k時(shí)刻的采樣值,y(n)為濾波器輸出。h(k)為FIR濾波器的第k級(jí)抽頭系數(shù)。

  通過(guò)對(duì)h(k)進(jìn)行Z變換得到FIR的傳遞函數(shù)H(Z),其在Z域內(nèi)的形式如下:

公式

  因此,根據(jù)傳遞函數(shù)H(Z)和FIR濾波器系數(shù)的對(duì)稱性,可得FIR濾波器的一般實(shí)現(xiàn)結(jié)構(gòu),如圖1所示。

FIR濾波器的一般實(shí)現(xiàn)結(jié)構(gòu)

  從串行結(jié)構(gòu)中可以看出,F(xiàn)IR濾波過(guò)程就是一個(gè)信號(hào)逐級(jí)延遲的過(guò)程,將各級(jí)延遲輸出加權(quán)累加,得到濾波輸出,其中最主要的運(yùn)算是乘累加運(yùn)算。FIR每完成一次濾波過(guò)程需要進(jìn)行N次乘法和(N-1)次加法運(yùn)算,N為濾波器的階數(shù)。所以,濾波器的運(yùn)算量完全取決于N的大小,當(dāng)N很大時(shí),延遲將非常長(zhǎng),無(wú)法實(shí)現(xiàn)高速信號(hào)處理。

  根據(jù)FIR數(shù)字濾波器的對(duì)稱特性,可以先進(jìn)行加法運(yùn)算,然后對(duì)加法運(yùn)算的結(jié)果進(jìn)行串行乘累加運(yùn)算,從而得到改進(jìn)的串行結(jié)構(gòu)。與串行結(jié)構(gòu)相比,改進(jìn)的濾波器完成一次濾波的時(shí)鐘周期減半,乘累加次數(shù)減半,提高了處理速度,但同時(shí)要消耗更多的硬件資源。圖1(b)為Ⅳ位偶數(shù)時(shí)改進(jìn)的串行結(jié)構(gòu)。與串行結(jié)構(gòu)相似,濾波器的運(yùn)算量完全取決于N的大小,當(dāng)N很大時(shí),延遲將非常長(zhǎng),無(wú)法實(shí)現(xiàn)高速信號(hào)處理。

  將串行結(jié)構(gòu)展開(kāi),根據(jù)濾波器的信號(hào)流圖用多個(gè)乘法器和加法器并行實(shí)現(xiàn),得到FIR濾波器的并行實(shí)現(xiàn)結(jié)構(gòu),如圖1(c)所示。并行濾波器的濾波速度快,一個(gè)時(shí)鐘周期內(nèi)完成一次濾波,但消耗大量的FPGA資源,如乘累加器,且器件的延遲較大,工作頻率不宜太高。

  FPGA具有規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,特別適合用于。但以前FPGA一般用于系統(tǒng)邏輯或時(shí)序控制,很少應(yīng)用在信號(hào)處理方面。其原因主要是FPGA中缺乏實(shí)現(xiàn)乘法運(yùn)算的有效結(jié)構(gòu)。隨著FPGA技術(shù)的不斷發(fā)展,查找表(LUT)技術(shù)的應(yīng)用有效地解決了這個(gè)問(wèn)題,使FPGA在數(shù)字信號(hào)處理方面得到了廣泛應(yīng)用。


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉