基于中檔FPGA多相濾波器的設(shè)計(jì)實(shí)現(xiàn)
相比之下, FIR濾波器沒(méi)有反饋,這意味著它的脈沖響應(yīng)在一個(gè)有限的時(shí)間范圍之內(nèi)。 FIR濾波器擁有優(yōu)于IIR濾波器的幾個(gè)優(yōu)點(diǎn),其中包括一個(gè)事實(shí),即在整個(gè)頻譜范圍,他們有完全恒定的群時(shí)延,在所有頻率范圍內(nèi),不論濾波器的大小,他們是完全穩(wěn)定的。
通用FIR濾波器的圖形表示如圖10所示。在這種情況下,輸入樣本xn通過(guò)一系列的緩沖寄存器(這些都標(biāo)記為z-1,對(duì)應(yīng)延時(shí)單元的Z變換)。
圖10 經(jīng)典FIR濾波器的通用表示
濾波器的工作原理是用一系列的常數(shù)(稱為抽頭系數(shù))乘以一系列最新的n個(gè)數(shù)據(jù)采樣,并對(duì)所得到的數(shù)組的單元進(jìn)行求和。通過(guò)改變系數(shù)和濾波器抽頭數(shù)目的加權(quán)(值),F(xiàn)IR濾波器實(shí)際上可實(shí)現(xiàn)幾乎任何所需的頻率響應(yīng)特性。
問(wèn)題是FIR濾波器可能需要大量的抽頭(有時(shí)數(shù)百個(gè)),以實(shí)現(xiàn)其預(yù)定的目標(biāo)。每一個(gè)抽頭需要消耗邏輯資源的乘法器累加器( Mac )單元。另外在每個(gè)時(shí)鐘,每個(gè)抽頭執(zhí)行消耗功率2的乘法和加操作。
用多相FIR濾波器進(jìn)行抽取
多相濾波器的基本概念是把FIR濾波器分割成若干較小的單元,然后組合這些單元的結(jié)果。首先,讓我們考慮一個(gè)基于常規(guī)8抽頭FIR濾波器的抽取子系統(tǒng)的符號(hào)表示,如圖11所示(為了使用這些例子,我們假設(shè)抽取因子為M = 4 )。
圖11 基于傳統(tǒng)的8抽頭FIR濾波器的抽取器的符號(hào)表示
現(xiàn)在讓我們假設(shè)主時(shí)鐘正在以某一頻率fHz運(yùn)行。像往常一樣,在濾波操作之后任何不要的樣本將被丟棄,但這樣做是低效率的,因?yàn)檫@意味著是以完全的時(shí)鐘頻率在進(jìn)行濾波。用另一種方式來(lái)看這種操作,即在每個(gè)時(shí)鐘時(shí)刻,每個(gè)抽頭級(jí)執(zhí)行乘法和加運(yùn)算。
相比多相實(shí)現(xiàn)的情況,我們可以將原來(lái)的8抽頭FIR濾波器分為四個(gè)2抽頭子濾波器,如圖12所示。
圖12 基于4 × 2抽頭多相濾波器的抽取器的符號(hào)表示
假設(shè)同樣的主時(shí)鐘以f Hz的頻率運(yùn)行,我們可以想象輸入數(shù)據(jù)流被送入一個(gè)旋轉(zhuǎn)開關(guān)(當(dāng)然,這可用標(biāo)準(zhǔn)的邏輯技術(shù)來(lái)實(shí)現(xiàn))。第一個(gè)數(shù)據(jù)值送入第一個(gè)子濾波器;第二個(gè)數(shù)據(jù)值送入第二個(gè)子濾波器;第三個(gè)數(shù)據(jù)值送入第三個(gè)子濾波器;第四個(gè)數(shù)據(jù)值送入第四個(gè)子濾波器。然后,我們進(jìn)行“循環(huán)”操作,以便第五個(gè)數(shù)據(jù)值送入第一個(gè)子濾波器;第六個(gè)數(shù)據(jù)值送入第二個(gè)子濾波器;等等。
使用子濾波器減少了可能的飽和/溢出(發(fā)生任何飽和/溢出通常只需要在最后的函數(shù)求和時(shí)進(jìn)行處理)。另外,使用子濾波器具有一個(gè)直接有效的優(yōu)點(diǎn),因?yàn)樵趫?zhí)行濾波操作之前,我們有效地“抽取”了數(shù)據(jù)。這也意味著,我們的四個(gè)子濾波器中的每個(gè)都能有效地以F ÷ 4Hz的頻率運(yùn)行,如圖13所示。
圖13 4 × 2抽頭多相濾波器的運(yùn)行情況
評(píng)論