0 引言
衛星通信系統中,在信號發射前需要對頻譜較寬的基帶信號進行成形濾波處理,以改善其頻譜特性,在消除碼間干擾(Inter Symbol Interference,ISI)與達到最佳檢測接收的前提下,提高信道的頻帶利用率。通信系統中采用發送端的成形濾波器和接收端的匹配濾波器共同實現升余弦濾波的效果,對信號進行濾波處理。由于平方根升余弦(Square Root Raised Cosine,SRRC)具有較快的衰減特性和較好的可實現性,一般采用SRRC濾波器實現通信系統的基帶成形濾波[1]。
多速率變換常用于通信系統中的信號處理,通過內插(上采樣)或抽取(下采樣)改變信號的采樣頻率,并對信號濾波處理。衛星通信的高帶寬通信業務及AD轉換率的提高,促進了通信系統發射端對不同符號率信號采樣率的提高。在通信系統的接收端,過高的采樣率和數據吞吐量不利于數據的實時處理,需要對信號降采樣處理。
FPGA以其并行處理及靈活可編程特性,廣泛用于基帶信號處理[2]。本文基于FPGA設計一種多速率變換器提高信號的采樣率,實現任意倍數的符號率變換(本文主要實現了上采樣變換,下采樣實現方法相同)。采用SRRC濾波與半帶(Half-band,HB)濾波器、級聯積分梳狀(Cascade Integrator Comb,CIC)濾波器、Farrow濾波級聯進行上采樣,實現平方根升余弦濾波及信號任意倍數的上變頻處理。其中,針對不同的滾降系數,SRRC濾波器的濾波系數可重載;CIC及Farrow濾波器上采樣倍數在線可重載。該多速率變換模塊有效節約了FPGA資源,高效、實現簡單,并可以實現任意倍數的多速率變換。
1 SRRC濾波及各變速率模塊
1.1 SRRC濾波
1.1.1 SRRC的實現原理
當信道傳輸函數的幅頻特性滿足滾降系數為a的升余弦濾波器特征時,可以實現無碼間串擾傳輸[3],如圖1所示。
圖1(a)為升余弦濾波器的滾降特性,fN是奈奎斯特帶寬。圖1(b)是升余弦特性的時域特征,圖中箭頭所指為最佳采樣點,可以看出:滿足無碼間串擾的最大傳輸速率為2fN。
其中a是滾降系數,決定升余弦的滾降特性。當a=1時具有理性低通特性,a越大,旁瓣衰減越快,信號成形濾波后的波形對位定時精度要求越低。
在通信系統的發射端和接收端同時使用SRRC濾波器可以實現升余弦濾波的效果,消除碼間干擾。SRRC濾波器在發射端用做成形濾波,在接收端用做匹配濾波。成形濾波能有效克服碼間干擾,減小誤碼率,提高整個通信系統的性能。匹配濾波則能修正碼間干擾帶來的信號畸變,實現最佳接收。
SRRC濾波器傳輸函數如式(2)所示[4]:
式中,fN為奈奎斯特帶寬,a為滾降系數。
1.1.2 SRRC的滾降系數重載
本文中采用Xilinx IP核實現系數可重載式SRRC濾波,滾降系數有0.25和0.35兩種,可以在線重載。
采用IP核實現系數重載時,可以將幾組verctor合并為一組,也可將幾組濾波器系數放到一個coe文件中,通過IP核中config端口來重載Fir IP核的濾波系數[5]。
在生成IP核時,將Number of coefficient sets設置為N(假設有N組濾波器系數),通過配置s_axis_config_tdata端口值為M(M≤N-1),可以選擇第M+1組系數進行SRRC濾波,便于工程應用時濾波系數的修改。
本文中采用MATLAB的Fdatool工具生成SRRC濾波器系數,只需配置好滾降系數a、信號傳輸速率、奈奎斯特速率等,操作簡便、高效。
Fdatool配置頁面中,信號傳輸速率應至少等于傳輸帶寬B的兩倍,即:
式中,FS為信號傳輸速率,FC為奈奎斯特速率。
1.2 CIC濾波
1.2.1 CIC濾波的實現原理
CIC濾波器是零極點相消的濾波器,結構簡單,效率高。當采樣頻率的變換較大時,由于抗混疊的優越性,采用CIC濾波效果更好。
CIC濾波器的一級阻帶衰減為13.36 dB,M級阻帶衰減為13.36M dB[6]。M增大可以增大阻帶衰減和旁瓣抑制,但受通帶帶內容限的限制,M一般不大于5。上采樣因子D決定CIC濾波器的主瓣寬度和CIC濾波后的采樣頻率,實際應用中應根據需求設定。
CIC濾波器實現簡單,不需要濾波系數。配置CIC濾波器IP核時,濾波器系統時鐘要為輸入數據時鐘的3倍。
1.2.2 CIC濾波器多速率變換倍數在線重載
本文中CIC濾波器采用CIC IP核實現。在實現過程中,配置CIC濾波器IP核為內插倍數可編程[7],能增強代碼的可重用性,有效提高FPGA的資源利用率。
具體實現方法:配置采樣率變換為programmable,采樣率變換的范圍為Minimum Rate,Maximum Rate。則在S_axis_config_tvalid上升沿有效的前提下,通過修改S_axis_config_tdata[7:0]為N,可以實現CIC濾波器的N倍上采樣,從而實現CIC濾波器上采樣倍數的在線重載。
1.3 HB濾波
HB濾波是偶對稱,奇次線性相位的高效數字濾波器,可用于實現2N的抽取或內插,具有運算復雜度低、實時性強的特點。HB濾波器級聯在CIC濾波器后,HB可以對CIC濾波器的主瓣增益進行修正,對其中含有較大混疊能量的頻率區域進行抑制[8]。
HB的沖擊響應h(k)為實數。HB濾波器的系數具有偶對稱特性,如式(4)所示,偶次系數為零,運算量可以減少一半,具有很高的實現效率[9]。
其中:N為濾波器階數,為奇數。
HB濾波器是一種特殊FIR濾波器,采用FIR IP核實現。由FDATOOL工具生成濾波系數,保存為coe文件加載到IP核中。
1.4 Farrow濾波器
Farrow濾波器則可以實現小數倍的速率變換。Farrow濾波器采用3次內插濾波器的Farrow結構,可通過調制數字延遲改變頻率轉換的比例。Farrow結構的濾波器用于內插時,具有去鏡像的性質。
1.4.1 Farrow濾波器的實現原理
本文通過Verilog編程可以實現三階內插Farrow濾波器。根據Farrow濾波器的輸入輸出數據頻率,通過調制數字延遲uk改變頻率轉換的比例。
設輸入信號周期為Ts,輸出信號的周期為Ti。則:
則三次內插多項式的Farrow濾波器結構如圖2所示。
1.4.2 Farrow濾波器上采樣倍數在線重載
由Farrow濾波器的實現原理可知:在輸入信號周期為Ts時,調制數字延遲uk可以實現,可以調整輸出信號的周期為Ts,最終實現信號采樣率的變換。也即實現Farrow濾波器上采樣倍數在線重載。在工程實現過程中,通過放大uk來提高精度。
2 SRRC濾波及多速率變換的實現
在本文中的多速率變換模塊,采用3個SRRC濾波器可選,3個級聯2倍內插HB濾波器,1個9種內插倍數的CIC濾波器,以及1個3階內插的Farrow濾波器級聯實現。該多速率變換模塊的級聯結構如圖3所示,通過Verilog編程能實現輸入信號任意倍數的上采樣變換。
多速率變換的倍數由參數fir_array[16:0]控制。
fir_array[16]=1表示采用Farrow濾波器;fir_array[16]=0表示不采用Farrow濾波器。Farrow濾波器內插倍數由uk控制。
fir_array[15:6]表示CIC濾波器內插倍數。CIC內插倍數共有4、5、6、7、8、9、10、14、21幾個等級,與SRRC、HB、Farrow級連可以滿足任意符號率變換的需求。fir_array[15:6]=0則表示不采用CIC濾波器。
fir_array[5:3]控制選用級聯的2倍內插HB濾波器的個數(共有3個級聯HB濾波器可選)。
fir_array[2:0]控制SRRC濾波器采用的內插倍數,fir_array[2:0]分別表示4倍、3倍、2倍內插。
當輸入信號為2 MHz,要上采樣到168 MHz,則通過fir_array設置為{1′b1,10′b0001000000,3′b001,3′b100},通過4倍內插的SRRC濾波,一個2倍HB內插濾波,10倍CIC內插濾波,一級160 MHz到168 MHz的Farrow內插濾波實現。
在ISE平臺中,采樣IP核fir_compiler 6.3與MATLAB的FDATOOL工具共同實現了系數可重載式SRRC濾波器和HB濾波器的設計,采用基于AXI總線的cic_compiler 3.0 IP核實現插值倍數可重載的CIC濾波器,Farrow濾波器則根據三階內插結構采用Verilog語言編程實現。
其中,SRRC濾波和HB濾波系數均采用FDATOOL工具產生,48階,漢明窗。HB濾波器采樣率為100 MHz,截止頻率為25 MHz。SRRC濾波器的采樣率為100 MHz,截止頻率為25 MHz。
設置仿真時鐘為168 MHz,輸入信號的速率為2 MHz。數據源為10個隨機數X(-1,-1,1,1,1,-1,1,1,1,-1)8倍內插,插值為0得到的。通過ModelSim仿真工具進行仿真驗證,仿真結果如圖4所示。
從圖4(a)可以看出:SRRC濾波并變速率后,仿真波形為升余弦波形,和輸入信號基本一致,且具有較好的平滑性。系統時鐘aclk為168 MHz,則從圖4(b)可以看出:對輸入信號SRRC濾波并進行多速率變換后,信號速率上采樣到168 MHz。
3 實驗驗證
在實驗板上,將20 MHz符號率的16APSK調制信號經SRRC濾波及多速率變換模塊(上采樣到168 MHz)、DA轉換模塊及射頻輸出后,用頻譜儀觀察射頻輸出信號的星座圖、信號質量及帶寬,如圖5所示。
頻譜儀測試結果表明:16APSK調制信號經SRRC濾波處理及多速率變換后,輸出信號的帶寬有效限制到了20 MHz,且能正常解出16APSK星座圖,信號EVM約為3%,即有效消除了碼間干擾。其中,EVM(0%~100%)越小,表示輸出調制信號的質量越好。
4 結論
本文詳細介紹了一種基于FPGA實現SRRC濾波及多速率變換模塊的方法。該模塊通過級聯SRRC、HB、CIC、Farrow濾波器實現,通過在線重載SRRC濾波系數,CIC、Farrow濾波器插值倍數,能夠實現不同滾降系數的升余弦濾波及多速率變換,有效節約了FPGA資源。通過仿真分析和實驗驗證了該模塊SRRC濾波及多速率變換特性。該模塊易于工程實現,能有效消除碼間干擾,提高頻帶利用,較好地滿足了現代通信與數字系統處理中的實時性要求。
參考文獻
[1] SREEVIDYA N,SATEESHKUMAR H C.SRRC filter implementation as per DVB-S2 standard[J].International Journal of Innovative Research and Development,2013,2(5):1148-1161.
[2] 馮佳梅,鄒剛,朱南,等。基于可變帶寬多速率處理算法的設計與實現[J]。數字通信世界,2015(8):21-25.
[3] 樊昌信,曹麗娜。通信原理[M]。北京:國防工業出版社,2012.
[4] VANUKURU H R,YOGESH P K R,RAVICHANDRAN V,et al.Performance analysis of root raised cosine filtering in CCSDS ACM[C].International Conference on Wireless Communications,Signal Processing and Networking,2016.
[5] Xinlinx Inc.LogiCORE IP FIR Compiler V6.3 DS795[Z],2011.
[6] cic濾波器的FPGA實現[EB/OL].2016-06-04].http://blog.sina.com.cn/s/blog_4b1046f80102wjrh.html.
[7] Xinlinx Inc.LogiCORE IP CIC Compiler V3.0 DS845[Z].2011.
[8] 曹檢飛,文雙春,劉昱,等。多速率軟件無線電數字中頻系統的研究與實現[J]。計算機工程與科學,2017,39(6):1079-1086.
[9] 婁陽,王中訓,高興龍,等。數字下變頻DDC的設計與FPGA實現[J]。中國集成電路,2017,26(Z1):52-56.
評論
查看更多