數(shù)字濾波器設(shè)計(jì)譯文_第1頁(yè)
數(shù)字濾波器設(shè)計(jì)譯文_第2頁(yè)
數(shù)字濾波器設(shè)計(jì)譯文_第3頁(yè)
數(shù)字濾波器設(shè)計(jì)譯文_第4頁(yè)
數(shù)字濾波器設(shè)計(jì)譯文_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文)附件 附件C:譯文指導(dǎo)教師評(píng)定成績(jī)(五級(jí)制):指導(dǎo)教師簽字:附件C:譯文 基于FPGA的數(shù)字濾波器設(shè)計(jì) Chi-Jui Chou, Satish Mohanakrishnan, Joseph B. EvansTelecommunications& Information Sciences LaboratoryDepartment of Electrical & Computer EngineeringUniversity of KansasLawrence, KS 66045-2228摘要數(shù)字濾波算法被廣泛應(yīng)用在通用數(shù)字信號(hào)處理器中來(lái)實(shí)現(xiàn)音頻應(yīng)用,或者應(yīng)用在專

2、用的數(shù)字濾波芯片中以及利用在專用集成電路((ASICs)中實(shí)現(xiàn)高效率。本文介紹了一種基于現(xiàn)場(chǎng)可編程門陣列(FPGA)來(lái)實(shí)現(xiàn)數(shù)字濾波器的方法?;贔PGA方法的優(yōu)點(diǎn)在于數(shù)字濾波器的實(shí)現(xiàn),與傳統(tǒng)的DSP芯片相比,擁有更高的采樣率,與中等批量應(yīng)用的ASIC相比成本更低,與其他方法相比,更具有靈活性。由于目前許多FPGA架構(gòu)在系統(tǒng)可編程,如果需求,器件的配置可以改變來(lái)實(shí)現(xiàn)不同的功能。我們的例子說(shuō)明FPGA的方法是靈活多變的,提供性能媲美或優(yōu)于傳統(tǒng)方法。1.介紹最常用的實(shí)現(xiàn)數(shù)字濾波算法是在通用的數(shù)字信號(hào)處理芯片中實(shí)現(xiàn)音頻應(yīng)用,或應(yīng)用在專用的數(shù)字濾波芯片以及利用在專用集成電路(ASIC)實(shí)現(xiàn)高效率9,14

3、。本文介紹了一種基于實(shí)施現(xiàn)場(chǎng)可編程數(shù)字濾波算法門陣列(FPGA)的方法。FPGA技術(shù)的近來(lái)發(fā)展,已經(jīng)使這些設(shè)備能實(shí)現(xiàn)傳統(tǒng)保留在ASIC中的各種應(yīng)用FPGA非常適合于數(shù)據(jù)通路的設(shè)計(jì),如所提及的數(shù)字濾波的應(yīng)用。 新型可編程邏輯器件的密集型可以這樣描述,一個(gè)不普通的算術(shù)運(yùn)算比如所提及的數(shù)字濾波運(yùn)算在一個(gè)很簡(jiǎn)單的單元中?;贔PGA方法的優(yōu)點(diǎn)在于數(shù)字濾波器的實(shí)現(xiàn),與傳統(tǒng)的DSP芯片相比,擁有更高的采樣率,與中等批量應(yīng)用的ASIC相比成本更低,與其他替代方法相比,更具有靈活性。特別是,多個(gè)乘法累加(MAC)單元在單個(gè)FPGA上可以實(shí)現(xiàn)的,對(duì)比通用架構(gòu)單一MAC單元,性能相當(dāng)。此外,由于目前許多FPGA架

4、構(gòu)在系統(tǒng)可編程,器件的配置可以改變來(lái)實(shí)現(xiàn)可選擇的濾波運(yùn)算,比如格形濾器和基于梯度的自適應(yīng)濾波器,或完全不同的功能。 2.背景數(shù)字濾波器的定制實(shí)現(xiàn)研究都集中在使用不同的VLSI技術(shù)的執(zhí)行。這些濾波器的架構(gòu)已很大程度上取決于目標(biāo)應(yīng)用程序的特定實(shí)現(xiàn)。如今幾個(gè)廣泛使用的數(shù)字信號(hào)處理器有德州儀器TMS320數(shù)字信號(hào)處理器,摩托羅拉56000和ADI公司的ADSP-2100系列,實(shí)現(xiàn)高效率的音頻濾波處理。這些器件是非常靈活的,但性能上有缺陷。采樣頻率大于100 MH的高性能濾波設(shè)計(jì),可以利用CMOS3, 4, 6, 8, 9, 14, 17, 19, 20, 21 和BiCMOS 8, 20, 22 技術(shù)

5、來(lái)實(shí)現(xiàn)并且使用從全定制技術(shù)到傳統(tǒng)技術(shù)出廠配置門陣列的方法。這些努力成果促進(jìn)了特定應(yīng)用領(lǐng)域的高性能濾波器設(shè)計(jì)的發(fā)展。定制VLSI技術(shù)存在幾個(gè)潛在的缺點(diǎn),但它確實(shí)保證最佳的性能和效率,對(duì)于特定的應(yīng)用程序的一個(gè)特定的設(shè)計(jì)目的。最明顯的問(wèn)題是這種定制技術(shù)缺乏靈活性。定制器件通常只適合某個(gè)特定的應(yīng)用程序,并不能容易地重新配置即使在同一領(lǐng)域的其他應(yīng)用。定制VLSI技術(shù)還存在另一個(gè)問(wèn)題是缺乏適應(yīng)性,一旦器件是在某系統(tǒng)使用。典型的定制技術(shù)不允許器件的功能在系統(tǒng)上進(jìn)行修改比如故障維護(hù)。雖然這些問(wèn)題在深謀遠(yuǎn)慮下可以克服,但在性能上的代價(jià),實(shí)現(xiàn)的復(fù)雜度以及額外的設(shè)計(jì)時(shí)間是問(wèn)題的解決不是那么靈活。缺乏靈活性阻礙了某些

6、特殊算法在高性能實(shí)時(shí)系統(tǒng)上進(jìn)行有效的評(píng)估。只有大批量應(yīng)用或者極為關(guān)鍵的少批量應(yīng)用才能平衡完整定制方案的開(kāi)發(fā)費(fèi)用。存在很多算法使用通用處理器不能實(shí)現(xiàn),并且在全定制的方案中不存在共通的地方。這些算法不能通過(guò)傳統(tǒng)的方法進(jìn)行評(píng)估,從而限制了創(chuàng)新?,F(xiàn)場(chǎng)可編程門陣列(FPGA),可以緩解定制方法的一些問(wèn)題。FPGA是可編程邏輯器件,與傳統(tǒng)的定制門陣列有明顯類似。雖然有各式各樣的FPGA實(shí)現(xiàn)方法,但存在一些些比較普及流行的方法,它們都涉及任意可編程邏輯陣列塊以及用于互連陣列塊可配置布線資源。許多最流行的FPGA在系統(tǒng)可編程的,通過(guò)簡(jiǎn)單的重新編程,可以修改器件操作。FPGA的可編程性也有很多限制。特別是,F(xiàn)P

7、GA的密集度只能達(dá)到完整模塊合理復(fù)雜度的水平。器件架構(gòu)的約束性也導(dǎo)致FPGA有所缺陷,比如邏輯塊中的邏輯單元制約性和陣列中的線路延遲。這些困難都可以通過(guò)周密設(shè)計(jì)來(lái)克服。由于集成電路的制造技術(shù)日益發(fā)展,F(xiàn)PGA高密度和高速度的趨勢(shì)也將愈發(fā)明顯。許多FPGA系列都是基于存儲(chǔ)技術(shù),這方面的發(fā)展也必然帶來(lái)FPGA的發(fā)展。這也是FPGA在某些具有挑戰(zhàn)性的應(yīng)用領(lǐng)域的沿用變得可能。FPGA非常適合定點(diǎn)數(shù)字信號(hào)處理算法。FPGA相比于DSP的優(yōu)勢(shì)在于FPGA的可重配置性所帶來(lái)的附加靈活性。除了低成本實(shí)現(xiàn)高性能系統(tǒng),由于集成電路制造延遲消除,F(xiàn)PGA的設(shè)計(jì)測(cè)試周期也相當(dāng)短??紤]到不可預(yù)見(jiàn)的要求,這種新方法還可以

8、進(jìn)行調(diào)整。相比于DSP,F(xiàn)PGA的缺陷在于FPGA架構(gòu)帶來(lái)的密集度和布線限制性。另外邏輯門單元的數(shù)目和運(yùn)算單元的數(shù)目也是有限的。陣列中的模塊互連也存在一定的延遲。FPGA的限制性促使數(shù)字濾波算法必須通過(guò)某種媒介采用低復(fù)雜度的高性能架構(gòu)2。高效的濾波算法設(shè)計(jì)和FPGA的應(yīng)用是有必要充分利用新技術(shù)的優(yōu)勢(shì)。在這方面,Xilinx的XC4000系列FPGA被用來(lái)實(shí)現(xiàn)各種數(shù)字濾波算法并且性能可觀。Xilinx XC4000是由一系列可配置邏輯塊(CLB)組成。其中每一個(gè)CLB具有多個(gè)輸入(F1-F4,G1-G4)和輸出(X,Y,XQ,YQ)。每個(gè)CLB同時(shí)包含隨機(jī)邏輯和同步元件。此外除了具有通用的邏輯功

9、能,每個(gè)CLB還可以實(shí)現(xiàn)特殊的快速進(jìn)位加法運(yùn)算。該XC4000系列擁有局部和全局布線資源。局部資源允許極低延遲互連相同的鄰域內(nèi)的CLB,以及通過(guò)開(kāi)關(guān)矩陣的擴(kuò)展連接。全局資源允許寬間隔點(diǎn)陣列中的低延遲信號(hào)的布線。專門應(yīng)用程序的速度是高度依賴于Xilinx的FPGA布線。XC4000系列包括部從8*8 CLB陣列到24*24 CLB陣列。所有這些器件都在系統(tǒng)可編程。許多低功耗版本也是可用的。 3.乘法累加單元一些作者1,11,12,13已證實(shí)了乘法累加(MAC)操作作為內(nèi)核的各種數(shù)字信號(hào)處理算法。很多實(shí)現(xiàn)MAC的方法都是可行的7,10。這項(xiàng)工作將側(cè)重于使用陣列方法實(shí)現(xiàn)乘法和使用脈沖進(jìn)位的方法實(shí)現(xiàn)加

10、法,但其他方法也同樣適用于FPGA領(lǐng)域。一個(gè)MAC單元的結(jié)構(gòu),如圖1中示出。 本節(jié)中介紹的MAC單元由一個(gè)8*8陣列乘法器和一個(gè)16位累加器。這些字節(jié)大小,影響著數(shù)據(jù)精度,是由FPGA的密集度決定的。若每片的MAC數(shù)目減少,字節(jié)較長(zhǎng)是可能的。FPGA的高密集度發(fā)展將會(huì)給設(shè)計(jì)者帶來(lái)設(shè)計(jì)空間,并且上述影響也不為大。 圖1 MAC單元的結(jié)構(gòu)3.1乘法器的實(shí)現(xiàn) 一位部分乘法運(yùn)算使用一個(gè)CLB單元。2輸入與門進(jìn)行一位部分乘法運(yùn)算,但其他電路必須整合在一起才能完成完整的運(yùn)算。8*8的乘法器一般情況下使用64個(gè)CLB單元。基本的單元結(jié)構(gòu)如圖2所示。 圖2 乘法器的基本單元結(jié)構(gòu)每個(gè)單元被配置為一個(gè)全加器(除A

11、型單元)。該全加法器接受先前操作的和和進(jìn)位輸入和輸入xi 和ai邏輯與門結(jié)果,如圖2中所示。全加器產(chǎn)生的和和進(jìn)位輸出被送到CLB單元中,如圖3所示。該乘法器執(zhí)行二進(jìn)制補(bǔ)碼表示的有符號(hào)數(shù)的乘法運(yùn)算。圖3中的小圓圈代表負(fù)的輸入輸出,這些位必須是減去而不是加上。最左邊的縱行陣列單元僅僅代表兩個(gè)輸入的與門。如果兩個(gè)輸入中有一個(gè)是負(fù)的,結(jié)果也就必須是負(fù)的。常規(guī)的1位全加器其三個(gè)輸入兩個(gè)輸出都是正的。根據(jù)輸入輸出的正負(fù)可以將全加器分為四種類型,如7中討論。四種類型的全加器如圖4所示。圖3 組合陣列乘法器框圖0類型呢3類型全加器布爾表達(dá)式如下:1類型和2類型的表達(dá)式如下:0類型和3類型全加器具有相同的邏輯表

12、達(dá)式,與常規(guī)的一位全加器相同(0類型)。3類型全加器可以通過(guò)0類型的輸入輸出取反得到,反之亦然。1類型和2類型全加器存在同樣的關(guān)系。圖4 四種類型的全加器3.2加法器的實(shí)現(xiàn)XC4000系列中,每個(gè)CLB擁有可以激活配置的高速進(jìn)位邏輯功能。2個(gè)4位輸入函數(shù)發(fā)生器可以配置位一個(gè)內(nèi)置隱含進(jìn)位的2位全加器,并能擴(kuò)展到任何長(zhǎng)度。在MAC單元中的16位加法器使用專用的進(jìn)位邏輯,需要9個(gè)CLB單元。中間的14位使用7個(gè)CLB,最高位和最低位各用一個(gè)。在每個(gè)CLB中,G函數(shù)和F函數(shù)分別實(shí)現(xiàn)低位和高位。顯然,使用G函數(shù)實(shí)現(xiàn)最低位,使用F函數(shù)實(shí)現(xiàn)最高位。對(duì)于CLB中的最低位,兩個(gè)輸入值分配在G1和G4管腳。進(jìn)位輸

13、入信號(hào)分配在F1管腳,通過(guò)G進(jìn)位邏輯,在COUT管腳上輸出。最低位的F函數(shù)沒(méi)有使用而是用于其它目的。對(duì)于中間的CLB被配置成使用F和G函數(shù)實(shí)現(xiàn)的兩位全加器A+B,其中,低位A和B輸入分配在F1和F4管腳高,位A和B輸入分配在G1和G4管腳。進(jìn)位信號(hào)通過(guò)CIN管腳輸入,通過(guò)F和G進(jìn)位邏輯,輸出在COUNT管腳。對(duì)于最高位來(lái)說(shuō),兩個(gè)輸入值分配在F1和F2管腳,進(jìn)位信號(hào)經(jīng)CIN引腳引入,通過(guò)F進(jìn)位邏輯,在COUT管腳上輸出。最高位的F函數(shù)發(fā)生器用來(lái)進(jìn)位信號(hào)的輸出,或者計(jì)算二進(jìn)制補(bǔ)碼。使用內(nèi)置進(jìn)位邏輯的缺陷在于進(jìn)位輸出(COUT)引腳只能連接到上方或下方的CLB進(jìn)位(CIN)的引腳。因此加法器的快速進(jìn)

14、位邏輯只能配置在陣列的縱向。專用的進(jìn)位電路大大提高了加法器的工作效率和性能。傳統(tǒng)方法在提高性能方面,比如進(jìn)位的產(chǎn)生和傳輸,都作用不大,甚至是在16位層次上。并且,長(zhǎng)字節(jié)會(huì)帶來(lái)邊緣效應(yīng)。然而前文所提的全加器,僅有20.5ns的組合延遲。3.3乘法累加單元的實(shí)現(xiàn)乘法器的8位有效輸出接入全加器的地位輸入。該全加器的8位輸入是有符號(hào)的并且加上先前級(jí)制補(bǔ)碼加法的輸出。MAC單元可以在乘法器和累加器之間使用流水線寄存器,來(lái)提高吞吐量。CLB中的觸發(fā)器被用作流水線寄存器,因此不需要額外的CLB單元。XC4000系列中單個(gè)MAC單元布局如圖5所示。圖5 XC4000系列中單個(gè)MAC單元布局8*8的乘法器和16

15、位加法器的MAC單元的性能是由乘法器的速率決定的。乘法器的最高延遲一般為100ns。因此該MAC單元時(shí)鐘頻率還是能超過(guò)10MHz。雖然這限制了MAC單元在各種系統(tǒng)配置中的使用,但是充分使用橫向陣列來(lái)對(duì)關(guān)鍵通路信號(hào)的布局,頻率能大大提高。在XC4000系列中實(shí)現(xiàn)MAC需要73個(gè)CLB單元。 4.數(shù)字濾波器4.1濾波器結(jié)構(gòu)N節(jié)FIR濾波器轉(zhuǎn)移函數(shù)如下:這種結(jié)構(gòu)可以通過(guò)多種方式實(shí)現(xiàn),比如典型結(jié)構(gòu),流水線結(jié)構(gòu)和倒置結(jié)構(gòu),如圖6所示。圖6 FIR濾波器多種實(shí)現(xiàn)形式4.2高性能濾波器在FPGA上的實(shí)現(xiàn)圖6的濾波器結(jié)構(gòu)很容易達(dá)到高采樣率,甚至在高階濾波器上也可以。這可能是因?yàn)橥掏铝恳蕾囉诹魉€而不是非常依靠

16、濾波器節(jié)數(shù)。事實(shí)上乘法器占用了大塊區(qū)域,因此更高階次的濾波器的實(shí)現(xiàn)變得不切實(shí)際。如2中闡述,在FPGA實(shí)現(xiàn)相當(dāng)節(jié)數(shù)的高性能濾波器可以通過(guò)近似濾波器的系數(shù)為兩個(gè)2的次方數(shù)的和或者差的方法。數(shù)字濾波器通過(guò)有限的2的次方數(shù)簡(jiǎn)化,所以只需要少量的移位器和加法器。15, 16中提出了很多最弱化由于這這些限制導(dǎo)致頻率響應(yīng)惡化的影響。這中優(yōu)化系數(shù)的方法對(duì)于大多數(shù)應(yīng)用都是很好的。4.3中等性能濾波器在FPGA上的實(shí)現(xiàn)當(dāng)芯片的大小有限時(shí),算術(shù)資源共享需要犧牲速率。圖7所示的結(jié)果很是算術(shù)資源的共享。這是一個(gè)帶有四個(gè)乘法器和一個(gè)加法器鏈。輸入和相應(yīng)的濾波器系數(shù)被送到MAC單元,如圖7所示。隨著流水線寄存器的插入,時(shí)

17、鐘頻率得到提高。乘法器的延遲大于加法器的,因此時(shí)鐘頻率主要有乘法器的延遲決定。MAC單元有四個(gè)乘法器,用它們的延時(shí)總和來(lái)計(jì)算時(shí)鐘周期。因此4節(jié)濾波器的采樣率可以等于時(shí)鐘頻率,8節(jié)濾波器的采樣率是時(shí)鐘頻率的一半。一般,若有M個(gè)乘法器,延時(shí)為Ts,則N節(jié)濾波器的最大采樣率f如下公式:圖7中所示的基于多輸入的MAC單元的方法可以實(shí)現(xiàn)一般性能的任意節(jié)數(shù)濾波器。Xilinx XC4010中MAC單元的位置如圖8所示。4個(gè)乘法器布置在20*20陣列的四個(gè)對(duì)角以此來(lái)減少輸入管腳的延時(shí)。乘法器的輸入成直角,如前面所釋,陣列如此布局,可以最小化板子的線路延時(shí)。為了便于理解,乘法器輸出的最高位(M),中間位(I)

18、,和最低有效位(L)標(biāo)記如圖。這四個(gè)加法器垂直排列,在XC4000系列中利用專用的進(jìn)位邏輯。該芯片的大小限制了乘法器的數(shù)目為4。4列CLB單元分配給加法器。三個(gè)中間的加法器的位數(shù)分別為16、16和17位。這些加法器器布局在兩列中如圖8所示。這使得完整的兩列可以支持大于70位的加法器,并為大多數(shù)應(yīng)用提供足夠的中間字節(jié)保護(hù)。運(yùn)算單元之間的布線不是很關(guān)鍵,因?yàn)槌朔ㄆ鞯难訒r(shí)為100ns,加法器的延時(shí)為22.5ns(對(duì)于16位加法器來(lái)說(shuō)),若除去時(shí)鐘頻率的影響,允許加法器的延時(shí)可以多達(dá)75ns。10MHz的時(shí)鐘頻率可以通過(guò)全局時(shí)鐘緩沖器用在流水線寄存器中。芯片需要額外的支持輸入乘法器同步。加法器分配完后

19、,還留下幾個(gè)CLB單元可以用來(lái)其他器件的接口邏輯。MAC單元有四個(gè)乘法器,延時(shí)為100ns,則N節(jié)濾波器的采樣率為40/NMHz,在此N為4。若為32節(jié)濾波器,則采樣率為1.25MHz。 5.IIR濾波器乘法累加單元的實(shí)現(xiàn)表明大型的FPGA支持相當(dāng)字節(jié)大小的和比較高采樣率的二階II濾波器。利用FPGA的可重配置,設(shè)計(jì)可實(shí)現(xiàn)更高的密度和速度。5.1IIR濾波器的結(jié)構(gòu)N階IIR濾波器轉(zhuǎn)移函數(shù)如下: 圖7 使用MAC實(shí)現(xiàn)FIR濾波器圖8 Xilinx XC4010系列FPGA四個(gè)乘法器的MAC單元布局如18中所提,一些可以實(shí)現(xiàn)的結(jié)構(gòu)有直接I型和直接II型。為了減少寄存器的通路延遲,本文的實(shí)現(xiàn)方式如圖

20、9所示。這種實(shí)現(xiàn)方式,比如直接II型,通過(guò)流水線寄存區(qū)級(jí)聯(lián)自回歸(AR)濾波器和滑動(dòng)平均(MA)濾波器。延時(shí)元器件可以布置在兩個(gè)個(gè)加法器和一個(gè)乘法器路徑中,或者在一個(gè)乘法器和至多一個(gè)加法器中。這種簡(jiǎn)單布線方式更能最小化線路延遲。圖9 IIR濾波器改進(jìn)型典型結(jié)構(gòu)5.2通用IIR濾波器在FPGA上的實(shí)現(xiàn) 通用乘法器的二階IIR濾波器可以把系數(shù)當(dāng)做芯片的外界輸入,并且通過(guò)級(jí)聯(lián)或并聯(lián)實(shí)現(xiàn)更高階IIR濾波器。XC4013系列支持通用高采樣率的二階IIR濾波器的設(shè)計(jì)。轉(zhuǎn)移函數(shù)分母首項(xiàng)可以根據(jù)定點(diǎn)系數(shù)的位數(shù)進(jìn)行縮放。這就意味著在流水線之前要放置縮放模塊。移位器可以實(shí)現(xiàn)分頻,而不會(huì)增加面積和延時(shí),原因在于通過(guò)

21、量化系數(shù)的離散優(yōu)化使系數(shù)最接近2的次方。該方法中,乘法器和加法器各有8位和16位輸入。乘法器的16位輸出輸入到加法器中,加法器輸出的高八位反饋輸入到乘法器中。在濾波器自回歸部分的兩個(gè)加法器是通過(guò)兩個(gè)專用進(jìn)位邏輯加法器的級(jí)聯(lián),如圖9所示。加法器的總延時(shí)為23ns(2.5+20.5),接近于單個(gè)專用進(jìn)位邏輯加法器延時(shí)。因此,兩個(gè)加法器邏輯通路延時(shí)并不是很關(guān)鍵,而主要在于加法器和乘法器的通路延時(shí),除非通過(guò)周密布局來(lái)避免。芯片布局如圖10所示。通過(guò)周密布局來(lái)減少延遲。在24*24的CLB陣列中,三個(gè)8*8乘法器在頂部,其他兩個(gè)在下面。a2和b2乘法器布置不是很關(guān)鍵,因?yàn)樵谒鼈兊倪壿嬐分袥](méi)有加法器。加

22、法器垂直布置,是為了充分利用專用進(jìn)位邏輯。通過(guò)3位移位輸入移位器實(shí)現(xiàn)縮放模塊(S)。移位器有兩種,第一種實(shí)現(xiàn)0、1、2、4次移位,需要8個(gè)CLB,第二種實(shí)現(xiàn)0和3次移位,需要4個(gè)CLB。邏輯通路的最大延遲不多于145ns。因此在XC4013系列大多數(shù)產(chǎn)品中使用這種實(shí)現(xiàn)方法,可以設(shè)計(jì)中取樣率7MHz,具有適當(dāng)字節(jié)數(shù)的通用二階IIR濾波器。圖10 IIR濾波器改進(jìn)型典型結(jié)構(gòu)在XC4013上的布局5.3專用IIR濾波器在FPGA上的實(shí)現(xiàn) 當(dāng)陣列被配置,專用IIR濾波器存在“硬件”系數(shù)編程。在二級(jí)制乘法中,若乘數(shù)某位為1,那么結(jié)果是被乘數(shù)移位后的數(shù)值,若乘數(shù)為0,那么結(jié)果為0。0部分不需要計(jì)算并且乘法

23、器陣列中的行加法器可以去除,達(dá)到了了高密集度設(shè)計(jì)。下文將闡述在XC4013系列上利用這種方法實(shí)現(xiàn)兩個(gè)專用二階IIR濾波器。 為了評(píng)價(jià)單片F(xiàn)PGA上專用二階濾波器的實(shí)用性,通過(guò)在Xilinx XC4013上級(jí)聯(lián)兩個(gè)二階濾波器形成典型的低通IIR濾波器。由于系數(shù)具有很小比特?cái)?shù),乘法可以通過(guò)移位和加法實(shí)現(xiàn)。因此,對(duì)于以下濾波器:第一個(gè)二階需要12列,第二個(gè)需要11列。這是在一個(gè)簡(jiǎn)單的XC4013芯片實(shí)現(xiàn)的。關(guān)鍵元器件的布局如圖11所示。圖11 XC4013系列上實(shí)現(xiàn)兩個(gè)專用二階IIR濾波器的布局N位輸入的加法是由進(jìn)過(guò)N-1步專用進(jìn)位邏輯(DC)加法或減法。虛線表示水平長(zhǎng)行,陰影三角形代表移位器。寄存

24、器模塊被陰影化??s放模塊和乘法運(yùn)算可以復(fù)用移位器。負(fù)系數(shù)處理利用進(jìn)位減法器;其輸入上有小圓圈。加法運(yùn)算和大量移位運(yùn)算需要消耗大量線路資源。在每步中,存在空列來(lái)提供額外的線路資源。鑒于上述原因,如圖10所示,一個(gè)二階濾波器布置在頂部,雖然XC4013的24列能滿足這兩個(gè)二階濾波器的需求,但實(shí)際上用了23個(gè)。加法器的22位輸出的高14位反饋輸入到移位和加法模塊中。 該方法的采樣率超過(guò)10MHz。 很多定點(diǎn)濾波器的設(shè)計(jì)都使用這種方法來(lái)鑒定性能。在所有案例中,在單片F(xiàn)PGA中實(shí)現(xiàn)兩個(gè)IIR濾波器是切實(shí)有效的。 6.流水線MAC單元乘法器的延遲對(duì)最大采樣率有很大限制。陣列乘法器可以配置為流水線的操作模式

25、,單個(gè)乘法器操作可以重疊。在這種模式下,最后一排的乘法器陣列中的進(jìn)位傳輸延時(shí)可以最小化,其決定了流水線的吞吐量。這種方法能達(dá)到極高速度的實(shí)現(xiàn)5。在XC4000系列的FPGA上,隨著更有效的流水線,MAC單元的采樣率可達(dá)100MHz,因此可以實(shí)現(xiàn)高采樣率濾波器。流水線MAC單元可以實(shí)現(xiàn)FIR和IIR濾波器,以及其他可以容忍流水線延遲的信號(hào)處理算法。6.1流水線MAC單元的結(jié)構(gòu)結(jié)構(gòu)如圖12所示。這些基本元件與非流水線的MAC相同,除了那些包含流水線寄存器的單元。寄存器需要輸送乘數(shù)和被乘數(shù)到目標(biāo)處,并且傳輸已產(chǎn)生的結(jié)果位,其過(guò)程與新的結(jié)果位產(chǎn)生是并行。圖12 流水線MAC單元結(jié)構(gòu)對(duì)于N*N位的乘法器

26、,N行流水線寄存器連接的半加器代替進(jìn)位傳輸加法器。這意味著僅在一個(gè)位置的進(jìn)位傳輸需要任何兩個(gè)連續(xù)的行。時(shí)鐘頻率只取決于乘法器單元。如果要實(shí)現(xiàn)多節(jié)濾波器,加法器需要累加從先前的輸出得到反饋的結(jié)果。通過(guò)立即引入一組對(duì)角下方的全加器,把它們的輸出反饋到寄存器,如此位級(jí)的流水線MAC單元就形成了。如圖12所示,4*4的乘法器,6位累加器,其乘法器輸出高六位反饋到累加器的輸入,虛線對(duì)角線表示進(jìn)位保存的地方。由于4個(gè)低四位被丟棄,虛方框表示的延遲元件不需要。所需數(shù)量的累加器和乘法器確定后,輸出必須配以時(shí)鐘,累加器需進(jìn)行復(fù)位。使用流水線MAC單元很容易實(shí)現(xiàn)FIR濾波器。根據(jù)基本時(shí)鐘,濾波器的系數(shù)和相應(yīng)延遲輸

27、入被同步輸送到乘法器。N節(jié)濾波器完成一個(gè)輸出的計(jì)算需要N+1個(gè)時(shí)鐘周期。6.2FPGA實(shí)現(xiàn)與非流水線MAC單元不同,流水線MAC單元線路延時(shí)是很關(guān)鍵的。這是因?yàn)榱魉€寄存器在獲得時(shí)鐘后需要3ns穩(wěn)定輸出,然后傳送,最后在下一個(gè)CLB又有4.5ns延遲。因此至少有7.5ns的延遲,除非適當(dāng)處理。從邊緣上的導(dǎo)電金屬化區(qū)到直接輸入存在3.0ns延時(shí),同時(shí)系數(shù)輸送到元件中也存在延遲。一些CLB單元被用來(lái)當(dāng)作邊緣上的導(dǎo)電金屬化區(qū)和單元之間的寄存器。因此,這些延遲會(huì)降低時(shí)鐘速率。在XC4010上已能實(shí)現(xiàn)8*8位乘法器和12位加法器的MAC單元。CLB中的流水線寄存器用在加法器中。乘數(shù)和被乘數(shù)的位分布也是延

28、時(shí)的主要來(lái)源。用來(lái)存放被乘數(shù)和乘數(shù)位的寄存器必須穿插在每行乘法器CLB之間,以此減少延遲。最后的結(jié)果是在對(duì)角全加器上計(jì)算的。因此這些全加器中的寄存器是在累加周期末進(jìn)行復(fù)位的。由于位級(jí)流水線,這些寄存器必須在進(jìn)位保存最后一階段一開(kāi)始就復(fù)位。逐個(gè)寄存器通過(guò)判定復(fù)位輸入和一組斜寄存器進(jìn)行復(fù)位。但是8ns的復(fù)位延遲還是無(wú)法避免的。充分利用XC4000系列的復(fù)用能力能解決這個(gè)問(wèn)題,當(dāng)清零信號(hào)有效時(shí),對(duì)角單元的輸出被強(qiáng)制為零。通過(guò)周密布局,最大線路延遲可保持在4.6ns內(nèi),最差位12.1ns。因此,可以達(dá)到超過(guò)80 MHz的時(shí)鐘頻率。XC4010 FPGA的流水線MAC布局如圖13中所示,這表明,兩個(gè)這樣

29、的MAC單元可以容納在一個(gè)XC4013上。 圖13 在XC4010上流水線MAC單元布局 7.總結(jié) 本文描述一種基于現(xiàn)場(chǎng)可編程們陣列(FPGA)實(shí)現(xiàn)數(shù)字濾波算法的方法。通用DSP實(shí)現(xiàn)方式不能達(dá)到合適的采樣率。ASIC方法缺少靈活性,對(duì)于有些應(yīng)用,不是經(jīng)濟(jì)有效的。本文所述在FPGA實(shí)現(xiàn)的FIR和IIR濾波器是很靈活的,而且性能相當(dāng),或優(yōu)于傳統(tǒng)的方法。由于這項(xiàng)技術(shù)的可編程性,本文的案例可以擴(kuò)展到多種其他高性能FIR和IIR濾波器實(shí)現(xiàn)。 文獻(xiàn)1 P. R. Cappello, editor. VLSI Signal Processing. IEEE Press,1984.2 J. B. Evans.

30、 An efficient FIR filter architecture. In IEEE Int.Symp. Circuits and Syst., pages 627630,May 1993.3 J. B. Evans, Y. C. Lim, and B. Liu. A high speed programmable digital FIR filter. In IEEE Int. Conf. Acoust.,Speech, Signal Processing,Apr 1990.4 R. Hartley, P. Corbett, P. Jacob, and S. Karr. A high

31、 speed FIR filter designed by compiler. In IEEE Cust. IC Conf.,pages 20.2.120.2.4,May 1989.5 M. Hatamian and G. Cash. A 70-mhz 8-bit x 8-bit parallel pipelined multiplier in 2.5-um CMOS. IEEE J. Solid State Circuits, SC-21:505513,Aug 1986.6 M. Hatamian and S. Rao. A 100MHz 40-tap programmable FIR fi

32、lter chip. In IEEE Int. Symp. Circuits and Syst., pages 30533056,May 1990.7 K. Hwang. Computer Arithmetic: Principles, Architecture,and Design. JohnWiley & Sons, Inc., 1979.8 R. Jain, P. Yang, and T. Yoshino. Firgen: A computer-aided design system for high performance FIR filter integrated circuits.

33、 IEEE Trans. Signal Processing,39(7):16551668,Jul 1991.9 K.-Y. Khoo, A. Kwentus, and A. N.Willson, Jr. An efficient 175MHz programmable FIR digital filter. In IEEE Int. Symp. Circuits and Syst., pages 7275,May 1993.10 I. Koren. Computer Arithmetic Algorithms. Prentice-Hall,1993.11 S. Y. Kung. VLSI A

34、rray Processors. Prentice-Hall, 1988.12 S. Y.Kung, R. E.Owen, and J. G.Nash, editors. VLSI Signal Processing II. IEEE Press, 1986.13 S. Y. Kung, H. J.Whitehouse, and T. Kailath, editors. VLSI and Modern Signal Processing. Prentice-Hall, Inc., 1985.14 J. Laskowski and H. Samueli. A 150-Mhz 43-tap half-band FIR digital filter in 1.2-um CMOS generated by compiler.In IEEE Cust. IC Conf., pages 11.4.111.4.4,May 1992.15 D. Li, J. Song, and Y. C. Lim. A polynomial-time al

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論