劉 威,李 莉,陳海燕,孫世菊
(北京電子科技職業學院,北京 100015)
?
基于FPGA的軟件無線電同步系統設計與實現*
劉威*,李莉,陳海燕,孫世菊
(北京電子科技職業學院,北京 100015)
摘要:設計并實現了一種基于FPGA的軟件無線電同步系統,包括載波同步、位同步和幀同步。該同步系統可以通過設置相關參數,如Costas環中的NCO中心頻率、相差計算控制參數、濾波器參數、位同步和幀同步的分頻器系數即可實現較寬頻率范圍內的接收機同步。給出相應的仿真與實際測試,驗證設計的正確性。
關鍵詞:軟件無線電;FPGA;通用;載波同步
一般接收機同步包括載波同步、位同步和幀同步,它們是通信系統的核心,直接影響著通信系統的性能,也是通信領域研究的熱點課題之一[1]。而軟件無線電接收機對同步系統的要求更高,主要體現在要適合不同的調制方式、不同的載波頻率和不同的基帶信號速率。
目前的同步研究大多數采用分立器件、專用集成芯片和FPGA芯片。其中,分立器件和專用集成芯片的不足是模式單一,同步范圍窄。隨著FPGA技術的發展,為通信系統提供了一個方便、快速和靈活的高度可編程的硬件平臺,采用FPGA平臺對中頻調制解調器的研究也得到了廣泛的重視和研究[2-3]。而基于FPGA實現的接收機同步系統不但具有處理速度快、集成度高和抗干擾能力強,而且具有靈活實現和更新容易等優點[4-5],本文的目的就是采用FPGA實現接收機的同步系統,即載波同步、位同步和幀同步,以滿足軟件無線電對同步系統的要求。
在采用FPGA實現載波同步的方法中,主要有平方環和Costas環2種。其中,文獻[6]和文獻[7]實現的Costas環,文獻[8]主要解決相位檢測問題,并應用于多進制相位調制,不足之處是僅適于固定頻率載波的同步。本文在實現基于FPGA的Costas環載波同步基礎上,對設計進行了改進,使其適合更多的調制方式和不同速率的基帶信號的速率;位同步采用全數字鎖相環,其中的分頻器由控制器設置,實現任意分頻,使位同步器滿足基帶信號多速率的要求;幀同步設計上增加可調的前方和后方保護,而保護的同步數可靈活設置,使幀同步信號更加可靠。
同步系統整體結構如圖1所示。

圖1 同步系統整體結構圖
圖中虛線框內為FPGA實現的同步系統。下面分別介紹各部分的設計。
1.1載波同步原理與設計
載波同步采用Costas環同步電路。根據Costas環原理,其實現結構如圖2所示。

圖2 Costas環同步電路結構圖
從圖2可以看到,數字中頻調制信號經過帶通濾波器后分為同相和正交兩路,分別與本地NCO產生的正交載波信號相乘,然后入低通濾波器。由低通濾波器輸出的兩路信號進入誤差處理進行相差計算和環路濾波,得到誤差信號送NCO調整輸出信號相位并實現載波同步。在設計中,將NCO、相差計算、濾波器等采用開放接口設計,可由控制器輸入相關的命令和參數,實現不同調制方式、不同頻率、不同基帶信號速率以及不同幀同步性能的系統同步。
基本的調制信號一般可分為正交和非正交2種方式。其中,2ASK、2FSK、2PSK和2DPSK為非正交調制方式,這一類通過轉化可以采用2ASK和2PSK方式解調。假設基帶碼元為Sk∈{0,+1},而2ASK和2PSK的時域抽樣信號可以寫成
r(k)=KrSkcos(2πfckTs+θk)
(1)
其中,Kr為接收信號幅度,fc為載波頻率,Ts為采樣間隔,θk為信號相位。本地NCO產生的兩路正交載波分別為
(2)
(3)

對PSK信號,同相和正交兩路下變頻后的信號為
(4)
(5)
當本地載波與調制信號載波相差比較小時,可以推導出兩路信號為
(6)

對ASK信號進行相差計算得
(7)
所以,當Sk=0時,ek為0,本地載波輸出相位不改變;當Sk=1時,計算得到相差信號,控制NCO調整輸出載波的相位。
在正交調制信號中,均可采用QPSK載波同步方法進行同步。其時域抽樣信號表達式分別為
(8)
對QPSK信號,兩支路下變頻后的兩路信號為:
(9)
(10)
同樣,當本地載波與調制信號載波相差比較小時推導可得
(11)
因此,根據式(11)可以計算出正交調制方式下,本地NCO輸出與調制載波的相差信息。
1.2濾波器設計
濾波器采用文獻[9]設計的通用FIR濾波器,通過參數設置可實現不同截止頻率的低通、帶通濾波。環路濾波器采用圖3所示的數字環路濾波器結構。

圖3 數字環路濾波器結構圖


(12)
(13)

(14)
1.3NCO設計
NCO的設計采用文獻[10]設計結構,它主要由相位累加器、相位寄存器和波表組成,其結構如圖4所示。

圖4 DDS設計結構圖
NCO通過控制器對頻率控制字進行設置,而NCO實際輸出的頻率是由環路濾波器輸出的誤差控制信號進行動態調整,最終使本地NCO輸出載波的相位與調制載波信號的相位同步。
1.4位同步器設計
位同步采用全數字鎖相環實現,并對其進行了改進,即分頻器采用DDS思想實現,可以進行任意分頻,以實現基帶信號速率變化的需求,其原理方框圖如圖5所示。

圖5 全數字鎖相環位同步器結構圖
工作原理如下:設時鐘頻率為f,經過分頻送雙向窄脈沖形成器(分頻比為N),則該環路中高速雙相時鐘源的兩路輸出頻率為f/N,相位相差為π,分別送入附加門和扣除門,經過附加門和扣除門后,經或門輸入任意分頻器(M分頻)。M分頻器輸出信號本地位同步信號與外輸入基帶信號相位相比較,取出相位信息(分為同相、超前、滯后)送扣除門和添加門進行相位跟蹤。
1.5幀同步器設計
幀同步采用提取連貫式插入法幀同步碼的方法(這里使用巴克碼)。為了提高可靠性,增加了門限控制器和任意次數前后保護電路,其結構圖如圖6所示。

圖6 連貫式插入法提取幀同步碼結構圖
幀同步2個過程:同步建立和同步維持過程。同步建立過程是當基帶信號輸入時,由于未檢測到幀同步信號,所以沒有幀同步信號輸出。當檢測到第1個同步碼組時,判決器輸出一個高電平送保護器,保護器根據收到判決器的脈沖數確定是否輸出信號打開與門輸出幀同步信號;同步建立后則處于維持態。為了提高同步器性能,減小漏同步的概率,此時同步器降自動低門限電平,從而減少了漏同步的概率。為了檢測系統是否真正失步,在保護電路中增加了分頻器,當分頻器有脈沖輸出時表示幀同步信號丟失,此時輸出低電平關閉與門,沒有幀同步碼輸出,同步器重新進入捕捉態。
2.1硬件電路設計
硬件電路采用康芯SOPC實驗系統,包括控制和FPGA實現的數字處理兩部分組成。控制部分采用實現系統自帶的AT89C52單片機、鍵盤和液晶顯示器;數字處理采用Altera公司Cyclone系列EP1C12Q240C8,A/D、D/A分別采用TLC5540I(最高采樣率40 Msample/s)和THS5651AI(最高轉換速率125 Msample/s)。
2.2程序設計
軟件設計包括控制器軟件程序設計與FPGA程序設計兩部分。這里重點介紹FPGA程序的設計。
2.2.1載波同步電路的FPGA程序設計
載波同步程序設計采用圖2的Costas環結構,設計包括濾波器、乘法器、NCO和誤差信號處理幾部分。其中,濾波器采用31階Kaiser窗設計(β取0.5);乘法器用宏功能實現(要節省資源也可以自己編程用移位器和加法器);NCO取頻率控制器取16 bit,參考時鐘為20 MHz,設計的NCO頻率分辨率為9.54 Hz,波形存儲器存儲正弦載波一個周期內的1 024個10 bit幅度數值;誤差信號處理由相差計算模塊與環路濾波器模塊組成。實現的載波同步電路的FPGA頂層RTL設計如圖7所示。

圖7 中頻載波同步系統頂層RTL圖
同步器輸出端口COS、SIN為兩路正交的同步載波。I和Q為兩正交支路的解調信號。
載波同步電路在參數配置完成后,對DPSK調制信號進行同步提取,提取的載波同步的ModelSim仿真結果如圖8所示。

圖8 DPSK調制信號的載波同步仿真
圖8中,g_clk為系統時鐘,mess1為基帶信號,mess1dif為差分信號。psk_inst/fword為頻率控制字(設置為312.5 kHz)。car_i_buf為調制信號載波,s_mod為DPSK調制信號。nco/wavout_i為載波同步本地I路輸出載波,nco/wavout_q為Q路輸出載波。nco/kadj為環路濾波器輸出,kwire為本地NCO中心頻率控制字,Kaddreg為相差調整后的頻率控制字(控制本地NCO)。從仿真結果可以看出,Kaddreg信號穩定在312.5 kHz附近,與調制信號載波頻率一致,且本地NCO輸出的I路載波相位與調制信號載波相位一致,本地I路載波與調制信號載波同步。
2.2.2位同步軟件設計
根據圖5的全數字鎖相環結構,位同步FPGA程序設計電路如圖9所示。

圖9 位同步電路RTL圖

圖10 位同步添碼過程實際仿真圖
其中,分頻系數取117,窄脈沖形成器的分頻比為4。同步電路添碼與扣碼過程的仿真如圖10和圖11所示。

圖11 位同步扣碼過程實際仿真圖
2.2.3幀同步電路設計
根據圖6的設計原理,幀同步電路的頂層RTL圖如圖12所示,圖13是仿真圖。

圖12 幀同步電路的RTL圖

圖13 幀同步電路仿真圖
圖10中,bs為位同步信號,sin為輸入信號,fsout為幀同步輸出信號。
實際測試同樣以DQPSK為例,參數采用軟件測試時的相同參數,系統晶振時鐘為20 MHz。儀器是泰克TDS210-60MHz數字示波器。實際測試結果如圖14所示。

圖14 硬件測試結果
其中,圖14中的A通道為上面的波形,即1通道;B通道是下面的波形,即2通道。圖14(a)1通道為輸入的DPSK調制信號,2通道為D/A輸出的I路載波,并以其作為示波器的觸發源;圖14(b)A通道為基帶碼,B為提取出的位同步信號;圖14(c)為解調后的基帶信號。由實際測試結果可知,所設計的同步系統可正確的實現載波同步、位同步和幀同步。通過對其他幾種調制方式同樣進行了測試,并設置了多組測試參數,測試結果表明,該系統可在20 kHz~600 kHz頻率范圍內,實現8種數字調制信號的同步。
本文設計并實現了一種基于FPGA的同步系統。仿真和測試結果表明該系統滿足設計要求,所設計的同步系統具有占用資源少、支持模式多、范圍廣等優點。由于采用可編程邏輯器件實現,無需改變硬件電路,適當改變相應的參數即可實現功能和性能的提高。
參考文獻:
[1]譚雪霏,趙春波,陳鞏.數字通信系統中的同步技術研究[J].現代電子技術,2010(7):48-52.
[2]Johnson C R,Setharesw A.Telecommunication Breakdown:Concepts of Communication Transmitted via Software-Defined Radio[M].Prentice Hall,2003.
[3]何偉剛,蘇珊,吳其琦.宏小區無線電波傳播預測模型仿真分析[J].電子器件,2013,36(1):24-27
[4]謝紅,何祥宇,王立瑩.基于軟件無線電的同步技術研究[J].信息技術,2008(2):71-81,84.
[5]王際兵,趙明,姚彥.軟件無線電實現方案研究[J].通信學報,2000,21(3):70-74.
[6]Yuan Huimei,Hu Xiaoguang,Huang Juyong.Design and Implementation of Costas Loop Based on FPGA[C]//Industrial Electronics and Applications,2008.ICIEA 2008.3rd IEEE Conference on:2383-2388.
[7]Mei Xiao,Tao Cheng.Improved Implementation of Costas Loop for DQPSK Receivers Using FPGA[C]//Communication Technology,2006.ICCT’06.International Conference on:1-4.
[8]Linn Y.Robust M-PSK Phase Detectors for Carrier Synchronization PLLs in Coherent Receivers:Theory and Simulations[J].IEEE Transactions on Communications,2009,57(6):1795-1805.
[9]聶偉,楊勝姚,王巖嵩.基于FPGA的通用FIR濾波器設計[J].實驗技術與管理,2010,27(10):69-72.
[10]聶偉,王巖嵩,張永杰.軟件無線電中頻解調器的設計與實現[J].實驗技術與管理,2011,28(4):52-57

劉威(1963-),女,漢族,吉林長春人,北京電子科技職業學院通信技術系工作,系主任,副教授,碩士(北京航空航天大學),研究方向為無線電通信、系統仿真,bkylw@126.com。
TheDesignandImplementationofSoftRadioSynchronizationSystemBasedonFPGA*
LIUWei*,LILi,CHENHaiyan,SUNShijiu
(Department of Telecom of Beijing Electronic Science and Technology Institute,Beijing 100015,China)
Abstract:A synchronization system of software radio system was designed and implemented based on FPGA,including the carrier synchronization,bit synchronization and frame synchronization.The synchronization system can achieve receiver synchronization in a wider frequency range,by setting the related parameter,such as the NCO center frequency of Costas loop,difference calculation control parameters and the parameters of the filter,the divider coefficient of bit synchronization and frame synchronization.The related simulation and practical test has proved the correctness of the design.
Key words:software radio;FPGA;universal;carrier synchronization
doi:EEACC:615010.3969/j.issn.1005-9490.2014.04.021
中圖分類號:TN925
文獻標識碼:A
文章編號:1005-9490(2014)04-0674-05
收稿日期:2013-09-26修改日期:2013-11-14
項目來源:北京市科研基地項目(PXM2010-014386-098718);北京電子科技職業學院2013年科技重點課題項目(YZK2013011);北京市高等教育學會“十二五”高等教育科學研究規劃課題項目(BG125ZD026)