新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 塑料光纖通信中基帶升余弦濾波器的FPGA實現(xiàn)

塑料光纖通信中基帶升余弦濾波器的FPGA實現(xiàn)

作者: 時間:2017-06-05 來源:網(wǎng)絡(luò) 收藏

塑料光纖(POF)具有柔軟性好、易于連接等優(yōu)點,在短距離通信中得到廣泛重視,繼其在汽車內(nèi)部網(wǎng)絡(luò)的成功應(yīng)用之后,室內(nèi)通信網(wǎng)絡(luò)將是塑料光纖通信的下一個巨大市場[1-3]。但塑料光纖由于芯徑粗,模式色散大,造成信號波形經(jīng)傳輸后失真大,高速率傳輸時碼間干擾嚴(yán)重。奈奎斯特(Nyquist) 第一準(zhǔn)則告訴我們:如果信號經(jīng)傳輸后整個波形發(fā)生了變化,但只要其特定點的抽樣值保持不變,那么用再次抽樣的方法,仍然可以準(zhǔn)確無誤地恢復(fù)原始信號。根據(jù)這一準(zhǔn)則,如果在發(fā)送前,采用奈奎斯特FIR濾波器將數(shù)字基帶信號進行成形濾波,壓縮旁瓣,就可以大大減小碼間干擾的影響,從而降低誤碼率。因此,濾波器的設(shè)計在塑料光纖通信系統(tǒng)中占有重要的地位,它的性能將直接影響整個通信系統(tǒng)的性能指標(biāo)。

目前FIR濾波器的實現(xiàn)方法主要有3種:單片通用數(shù)字濾波器集成電路、DSP器件和可編程邏輯器件。單片通用數(shù)字濾波器使用方便,但由于字長和階數(shù)的規(guī)格較少,不能完全滿足實際需要。使用DSP器件實現(xiàn)雖然簡單,但由于程序順序執(zhí)行,執(zhí)行速度較慢,在某些實時性要求高的場合中受到限制??删幊踢壿嬮T陣列(FPGA)有著規(guī)整的內(nèi)部邏輯陣列和豐富的連線資源,采用的是硬件并行算法,特別適合于實時通信要求高的場合[4,5]。塑料光纖數(shù)字基帶傳輸系統(tǒng)的目標(biāo)是實現(xiàn)100 Mb/s以上的傳輸速率,成型濾波器的工作頻率較高,而FPGA的成本不斷降低,所以用FPGA來設(shè)計塑料光纖通信成型濾波器具有明顯的優(yōu)勢。

1 基帶升余弦滾降數(shù)字濾波器設(shè)計

滿足奈奎斯特第一準(zhǔn)則的濾波器有無窮多種,最常用的是升余弦滾降濾波器。升余弦滾降濾波器的時域表達式為:
  
式中,0α1為滾降系數(shù),Ts為碼元寬度??梢娚嘞覞L降濾波器是一個無窮階數(shù)的系數(shù)對稱濾波器。為了能夠在硬件電路上實現(xiàn),必須截取其中一部分階數(shù)。

由于實際設(shè)計中只能采用有限階數(shù)有限精度濾波器,因而設(shè)計的濾波器頻率響應(yīng)與理想頻率響應(yīng)之間存在誤差。為了減小誤差,需要對濾波器進行優(yōu)化。衡量誤差的標(biāo)準(zhǔn)有兩種:一種是最大誤差最小化準(zhǔn)則,就是使濾波器頻率響應(yīng)在一定的頻率范圍內(nèi)與理論濾波器頻率響應(yīng)相比最大誤差最??;另一種是,就是使濾波器的頻率響應(yīng)與理論濾波器頻率響應(yīng)相比誤差的均方值最小。本文采用了最小均方誤差優(yōu)化的準(zhǔn)則,對升余弦濾波器的系數(shù)進行優(yōu)化。

Matlab的freqz函數(shù)能夠方便地計算濾波器的頻譜,可用于濾波器的優(yōu)化。其過程是:選擇一對對稱的系數(shù),增加或減少一個量化的最小單位(8位二進制量化最小單位是1/128);如果系數(shù)改變后頻譜誤差減少就采用改變后的系數(shù),否則保持原來的系數(shù);選擇新的一對系數(shù),重復(fù)上面的過程,一直調(diào)整到誤差不能再減小為止。例如取滾降系數(shù)a=0.22,取樣頻率為4,F(xiàn)IR濾波器的有限長度N為23,可以得到其幅度和相位響應(yīng)如圖1(a)所示,相應(yīng)的濾波系數(shù)如圖1(b)所示。


2 升余弦滾降數(shù)字濾波器在FPGA上的實現(xiàn)

本文引用地址:http://m.butianyuan.cn/article/201706/349208.htm

DA(Distributed Arithmetic)是一種以實現(xiàn)乘累加為目的的運算方法。對于FIR濾波器的輸出y(n)可以看作是濾波系數(shù)(即單位沖擊響應(yīng))與輸入信號x(n)的卷積和,其表達式為:

對于有符號的DA數(shù)值,最高有效位用來區(qū)別正數(shù)和負數(shù),其x(n)可寫成:

式中xb(n-i)表示x(n-i)的第b位,將式(3)代入式(2)中,可得FIR濾波器的DA表達式:

式(4)中方括號的乘累加在DA中利用查找表LUT來實現(xiàn),查找表的地址矢量xb=[xb(K-1)……xb(0)],即查找表的地址有K個輸入信號的同位權(quán)位組成。如果濾波器的系數(shù)為B位,則一個DA查找表規(guī)模為2N×B bit。可以看到抽頭系數(shù)N過多,則DA表的規(guī)模將十分龐大。這是因為LUT的規(guī)模隨著地址空間的變化(也就是N的增加)而呈指數(shù)增加。

在塑料光纖數(shù)字基帶傳輸系統(tǒng)中,為了減少FPGA邏輯資源的占有量和提高系統(tǒng)的運行速度,對升余弦滾降數(shù)據(jù)濾波器需要進一步優(yōu)化處理。優(yōu)化包括兩個方面:一是在FPGA實現(xiàn)中利用特有的查找表進行優(yōu)化,一是對表達式進行優(yōu)化。

對查找表的優(yōu)化,可以利用部分表計算,然后將結(jié)果相加。長度為LM(N=LM)的內(nèi)積為:

這樣就可以將和分配到L個獨立的M階并行DA查找表之中,表格的規(guī)模從一個2N×B bit降到L×2M×B bit,一般M控制在4個或8個最好。如果再加上流水線寄存器,由于大部分FPGA芯片的每個邏輯單元都有一個寄存器,所以并沒有增加電路規(guī)模,卻能大幅度提高電路的執(zhí)行速度。DA算法的主要特點就是巧妙地利用了ROM查找表將固定系數(shù)的MAC運算轉(zhuǎn)化為查表操作,其運算速度不隨著系數(shù)和輸入數(shù)據(jù)位數(shù)的增加而降低,而且相對直接實現(xiàn)乘法器而言在硬件規(guī)模上得到了極大的改善。

對表達式進行優(yōu)化,考慮到升余弦滾降濾波器系數(shù)是奇對稱的,h(i)=h(N-1-i),合并對稱的部分可以減少大約一半的乘法運算,即
  
基于優(yōu)化的和利用FIR濾波器的線性相位特性,能夠極大地提高電路的執(zhí)行速度[7]。升余弦滾降濾波器的FPGA實現(xiàn)電路原理圖如圖2所示。圖2中的加法樹采用樹形結(jié)構(gòu)減少多個數(shù)累加次數(shù)的方法,即Wallace樹結(jié)構(gòu)加法器。Wallace樹充分利用全加器3-2壓縮的特性,隨時將可利用的所有輸入和中間結(jié)果及時并行計算,因而可以將N個部分積的累加次數(shù)從N-1次減少到logN次,大大節(jié)省了計算時延。圖3為Wallace樹結(jié)構(gòu)與CSA結(jié)構(gòu)的對照,其結(jié)構(gòu)的關(guān)鍵特性在于利用不規(guī)則的樹形結(jié)構(gòu)對所有準(zhǔn)備好輸入數(shù)據(jù)的運算及時并行處理。Wallace樹結(jié)構(gòu)是一種高速加法器,其顯著優(yōu)點是速度快,尤其對處理多個數(shù)相加的情況具有相當(dāng)?shù)膬?yōu)越性。


3 優(yōu)化結(jié)果與分析


塑料光纖數(shù)字基帶傳輸系統(tǒng)升余弦滾降數(shù)據(jù)濾波器的設(shè)計首先采用MATLAB確定濾波器參數(shù),產(chǎn)生一個濾波器的模型對給定的技術(shù)參數(shù)進行逼近,根據(jù)逼近結(jié)果得到的濾波器模型、濾波器系數(shù),再用FPGA進行最后的硬件實現(xiàn)。

本FIR升余弦濾波器是在Altera公司Quartus II6.0版本軟件開發(fā)環(huán)境下,并應(yīng)用了該公司的Cyclone系列的FPGA芯片(EP2C5型號),進行FPGA程序編譯和時序仿真。VHDL強大的行為描述能力和程序結(jié)構(gòu),使其具有支持對大規(guī)模設(shè)計進行分解,以及對已有的設(shè)計進行再利用的功能。本文采用VHDL語言編寫了實現(xiàn)FIR升余弦滾降濾波器的FPGA程序代碼,經(jīng)編譯完成后僅僅需要254個LE邏輯單元,節(jié)省了大量的資源,該算法具有極大的優(yōu)勢,可以有效解決在FPGA設(shè)計中資源緊張的問題,用VHDL語言實現(xiàn)硬件的流程圖如圖4所示。根據(jù)圖1(b)中在Matlab中仿真計算出FIR數(shù)字升余弦滾降濾波器的量化系數(shù),按照上面描述的方法在FPGA實現(xiàn)FIR升余弦濾波器。用VHDL編程并仿真,仿真結(jié)果如圖5所示,實驗仿真的結(jié)果與理論計算結(jié)果一致。

分布式算法在實現(xiàn)乘累加功能時,是通過將各輸入數(shù)據(jù)的每一對應(yīng)位產(chǎn)生的部分積預(yù)先進行相加形成相應(yīng)的部分積,然后再對各個部分積累加形成最終結(jié)果的。它與傳統(tǒng)算法實現(xiàn)乘累加的不同在于執(zhí)行部分積運算的先后順序不同。與傳統(tǒng)串行算法相比,分布式算法可以利用查找表的方式實現(xiàn),能極大地減少硬件電路的規(guī)模,提高電路的執(zhí)行速度。本文根據(jù)塑料光纖基帶傳輸系統(tǒng)模式色散大的特點,采用分布式算法在FPGA上設(shè)計了升余弦滾降成型濾波器,實現(xiàn)了23階FIR升余弦滾降濾波器的實驗仿真,仿真結(jié)果與理論計算結(jié)果一致,驗證了設(shè)計方法的正確性和高效性,設(shè)計過程不僅克服了傳統(tǒng)濾波器設(shè)計帶來的諸多弊端,同時也提高了系統(tǒng)的整體性能。



評論


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

關(guān)閉