張博,張斌
空軍工程大學信息與導航學院,陜西西安 710077
基于FPGA的數字式GPS接收機載波環設計與實現
張博,張斌
空軍工程大學信息與導航學院,陜西西安 710077
同步系統工作的好壞,在很大程度上決定了通信系統的質量。GPS接收機將天線接收到的衛星信號經射頻前端處理后變成了數字中頻信號,接收機對GPS衛星的信號處理過程,可依次分為捕獲、跟蹤、位同步和幀同步4個階段。針對GPS信號的BPSK調制和強度微弱等特點,模擬GPS接收機基帶數字信號處理過程,首先介紹了科斯塔斯(Costas)接收機的工作原理,分析研究了基于現場可編程門陣列(field-programmable gate array,FPGA)的軟件無線電載波同步技術的實現方法,并采用Costas環實現了載波同步,性能測試驗證了設計的正確性和可行性。
載波同步;偽隨機碼;Costas環;現場可編程門陣列
接收機對GPS衛星的信號處理過程,可以依次分為捕獲、跟蹤、位同步和幀同步4個階段。由于位同步、幀同步均需要以數據解調為前提條件,除了幅度調制及頻率調制可以采用非相干解調外,大部分調制方式都采用相干解調以獲取更好的性能,而進行相干解調,接收端就必須提取相干載波。載波同步的性能直接影響著通信系統的性能。針對GPS信號的BPSK調制和強度微弱等特點,GPS接收機鎖相環通常采用I/Q解調法來幫助完成對輸入信號的下變頻、鑒相和數據解調等任務。自同步法是工程上廣泛應用的一種載波同步方式。自同步法主要有鎖相環、平方環、Costas環和判決反饋環等。目前工程上最常用的抑制載波跟蹤環是平方環和Costas環等。由于Costas環不需要對接收信號進行平方變換,也不需要對鎖相環路中DDS輸出的載波信號進行分頻處理,因此實現復雜度更小些,所耗費的硬件資源也更少。模擬GPS接收機基帶數字信號處理過程,首先介紹了科斯塔斯(Costas)接收機的工作原理,分析研究了基于現場可編程門陣列(field-pro-grammable gate array,FPGA)的軟件無線電載波同步技術的實現方法,并采用Costas環實現了載波同步,性能測試驗證了設計的正確性和可行性,對實際應用具有一定的指導價值。
J.P.Costas在1956年首先提出采用同相―正交環來恢復載波信號,隨后Riter證明跟蹤低信噪比的抑制載波信號的最佳裝置是Costas環及平方環。傳統的模擬Costas環因存在同相支路與正交支路的不平衡性從而使環路的性能受到一定影響,且模擬電路還存在直流零點漂移、難以調試等缺點,而采用全數字的實現方式,則可以有效避免這些問題。
Costas環的工作原理如圖1所示,主要由數字頻率合成器(direct digital frequency synthesizers,DDS)、數字鑒相器(乘法器)、偽碼發生器(pn_ gen)、低通濾波器(LPF)和環路濾波器(LF)等組成。由于它是由輸入信號分別乘以同相和正交兩路載波信號,因此常稱這種環路為同相―正交環,也稱為科斯塔斯環(Costas)。輸入信號經上、下支路分別乘以同相和正交載波,然后再與偽碼進行相乘,并通過低通濾波器后再相乘,完成鑒相功能,最后經環路濾波器輸出控制本地振蕩器的誤差電壓。

圖1 科斯塔斯環(Costas)的工作原理
設輸入BPSK調制信號為S(t)=SBPSK(t)=PN(t)m(t)cos(wct),式中:PN(t)為偽碼信號,m(t)為基帶信號,cos(wct)為載波信號。
環路鎖定時,DDS輸出的是與發送信號頻率相同相位差為φ的相干載波,記作UDDS(t)=cos(wct+φ)此信號和它經π/2相移后的正交信號分別在同相支路和正交支路,首先與輸入信號進行混頻可實現對輸入信號的下變頻,然后再與偽碼進行相乘,得

經過低通濾波器后的輸出分別為

由于q0(t)和i0(t)都包含有調制信號,因此將它們再相乘可消除調制信號的影響,得

由此可見,Costas環DDS的誤差控制信號與調制信號無關,只取決于相位差。

因為鎖相環鎖定時,相位差很小,有所以,同相支路的輸出就是解調后的基帶信號。
2.1 參數選取
全數字載波環系統參數設計為:數據速率4 MHz;偽碼速率10 MHz;載波頻率70 MHz;系統時鐘100 MHz;中頻采樣后的載波頻率6 MHz;信道帶寬20 MHz;調制方式為BPSK。
2.2 系統設計
1)直接數字頻率合成器的設計與實現
直接數字頻率合成器的基本工作原理框圖如圖2所示。

圖2 DDS基本工作原理框圖
直接數字頻率合成器(DDS)用于產生頻率及相位可控的正、余弦信號。DDS的基本工作原理是在時鐘信號的驅動下讀取三角函數表。在FPGA實現中,通常采用ISE工具提供的DDS核來實現。
DDS的設計直接采用ISE提供的DDS核即可。設計者需要確定的主要參數有DDS相位累加字位寬(頻率字位寬)BDDS、驅動時鐘頻率fclk、輸出數據位寬A等參數。環路中,DDS的輸出數據位數A通常與輸入數據位數Bdata相同,即A=Bdata。當然,DDS的輸出數據位數也可以根據實際情況進行調整,DDS的輸出數據位數越多,則本地振蕩器輸出信號的旁瓣抑制比(spurious free dynamic range,SFDR)性能越好,系統所耗費的硬件資源也越多。DDS的旁瓣抑制滿足A/D轉換的字長效應,輸出波形的位寬每增加1 bit,其旁瓣抑制比就提升6 dB。即FP-GA內部的任何一點信號,每多用1 bit,其信噪比提升6 dB。DDS的驅動時鐘頻率fclk通常與輸入數據采樣速率fs相同,即fclk=fs。相位累加字位寬不僅影響到整個環路的總增益,更重要的是直接決定了更新頻率字所能達到的頻率分辨率,工程上通常需要頻率分辨率小于1 Hz。其中頻率字Δθ、輸出頻率fout、頻率字位寬BDDS之間的關系為

這樣就可以通過改變頻率控制字Δθ來改變輸出頻率。從原理中可以看出,DDS所能產生的最小頻率為fout=fclk/2Bdds,這個頻率被稱為是DDS的分辨率。顯然,增加頻率字位數BDDS,可以產生更小頻率的信號,提高頻率的分辨率。在設計整個載波同步環路時,環路的總增益是一個非常重要的參數,而其中DDS的增益KDDS為

式中:TDDS為DDS頻率字更新周期。顯然,頻率字位數越多,DDS的增益越小;頻率字更新周期越長,DDS增益越大。
DDS的仿真波形如圖3所示。系統仿真是由Modelsim10.1a軟件實現的。

圖3 DDS的仿真波形
2)偽碼發生器的設計與實現
GPS從根本上講是一個基于碼分多址(code di-vision multiple access,CDMA)的擴頻(spread spec-trum,SS)通信系統。擴頻調制是通過偽隨機碼或偽隨機序列來實現的。GPS采用的GOLD序列就是由m序列優選對產生的,其目的之一是用來實現碼分多址,目的之二是用來測距。
m序列碼發生器是一種反饋移位型結構的電路,它由n位移位寄存器加異或反饋網絡組成,其序列長度M=2n-1,只有一個冗余狀態即全0狀態,所以稱為最大線性碼發生器。
由于其結構已定型,且反饋函數和連接形式都有一定規律,因此利用查表就可以設計出m序列碼。表1列出了部分m序列碼的反饋函數和移位寄存器位數n的對應關系。如果給定一個序列信號長度M,則根據M=2n-1求出n,由n查表便可得到相應的反饋函數。

表1 m序列反饋函數表
考慮用長度m=5的線性反饋移位寄存器產生一個m序列。從表1中選擇[3,5]作為反饋連接,編寫相應代碼進行仿真,結果如圖4所示(初始狀態為00001)。系統仿真是由Modelsim10.1a軟件實現的。通過仿真波形可以看出,偽碼發生器輸出的序列為1000010010110011111000110111010…,碼序列周期M=31。

圖4 偽碼發生器的仿真波形
3)低通濾波器的設計與實現
濾波器是數字信號處理中十分常用的模塊之一,一般來講,對于一些比較復雜的通用數字運算或處理需求,如果目標器件及開發工具提供相應的IP核,則一般選用IP核進行設計,這樣不僅可以提高設計效率,同時也可以保證系統的性能。
Xilinx公司作為世界上最大的FPGA/CPLD生產商之一,多年來一直占據行業領先的地位。Xilinx 的FPGA/CPLD具有高性能、高集成度和高性價比的優點,而且它還提供了功能全面的開發工具和豐富的IP核、宏功能等。ISE(intergrated synthesis en-vironment)是Xilinx FPGA/CPLD的綜合性集成設計平臺,利用該平臺可完成從設計輸入、仿真、邏輯綜合、布局布線與實現、時序分析、程序下載與配置、功耗分析等整個FPGA/CPLD的開發過程,其最新版本為ISE14.7 Suit系列。ISE 13.1提供了功能十分強大的FIR核FIR Compiler v5.0。FIR核進行配置后,即可以使用。
FIR Compiler v5.0核可根據用戶需要,選擇生成乘/加結構(multiply-accumulate,MAC)或分布式結構(distributed arithmatic,DA)的濾波器;最多可同時支持256個通道;抽頭系數從2~1 024,輸入數據位寬及濾波器系數最多可支持49 bit,能夠自動發掘系數的對稱性來節省資源。
首先用MATLAB仿真低通濾波器系數,對濾波器系數進行n位量化,并將濾波器系數存入FPGA所需的COE文件。然后,用FIR濾波器進行設計和實現。低通濾波器(lowpass filter,LPF)的仿真波形如圖5所示。系統仿真由Modelsim10.1a軟件實現。

圖5 低通濾波器的仿真波形
4)數字鑒相器的設計
數字鑒相器原理圖如圖6所示。

圖6 數字鑒相器原理圖
根據圖1 Costas環的工作原理,鑒相器實際上是同相支路與正交支路的乘法運算。在FPGA實現過程中,乘法運算不僅需要耗費較大的硬件資源,且運算速度也會受到一定限制。工程上通常取同相支路的符號位作為過零檢測脈沖,并與正交支路進行異或運算。
5)數字環路濾波器的設計
數字環路濾波器的結構如圖7所示。

圖7 數字環路濾波器的結構圖
環路濾波器在Costas接收機中起著非常重要的作用。它具有低通特性,一方面可以起低通濾波器的作用,更重要的是它對環路參數調整起著決定性的作用。在模擬電路中,常用的環路濾波器有RC積分濾波器、無源比例積分濾波器和有源比例積分濾波器。其中高增益的有源比例積分濾波器因其性能優良,是鎖相環中應用最為廣泛的濾波器(理想積分濾波器)。數字環路濾波器設計的關鍵問題在于獲取濾波器系數C1、C2。對于理想積分濾波器來講,其數字化系統函數表示為

式中:ξ為環路無阻尼系數,對于理想二階鎖相環來講,工程上一般取0.707;wn為環路無阻尼振蕩頻率(自然角頻率);T為數據采樣周期,T=1/fs;K為總增益;C1、C2為環路濾波器的系數。環路總增益是一個非常重要的參數,其計算方法為

式中:Blp為環路濾波器輸出的有效數據位數,N為DDS的相位累加字位寬,TDDS為頻率字更新周期,fs為數據采樣時鐘頻率。確定好環路總增益、環路自然角頻率后,就可以設計出環路濾波器的系數C1、C2,從而完成整個環路濾波器參數的設計。
由于在Costas環設計中,N=34,Blp=30,取TDDS=8/fs,可計算得出K=0.785 4,C1=0.053 0,C2=0.001 1,系統函數的極點為0.979 2±0.020 4 i,因此系統是穩定的。
圖8為系統設計在Xilinx ISE開發平臺下實現后的仿真波形。系統仿真是由Modelsim10.1a軟件實現的。根據無線電技術的慣例,以二進制數“0”代表正電平(+1),以二進制數“1”代表負電平(-1)。從I、Q支路輸出波形可以看出,BPSK調制后,在偽碼發生器輸出“0”時,載波相位狀態不變,在偽碼發生器輸出“1”時,載波相位會有180o跳變。
通過仿真波形還可以看出,對于不知道偽隨機碼(PN碼)的用戶而言,擴頻后的信號簡直就是噪聲。FPGA實現后,可以在ISE界面十分方便地查看到整個系統所占用的硬件資源及最高系統運算速度。其中,Slice Registers(寄存器資源)使用了759個,占3%;Slice LUTs(查找表資源)使用了631個,占3%;BlockRAM/FIFO使用了1個,占3%;BUFG/BUFGCTRLs(全局時鐘資源)使用了1個,占3%;DSP48Es使用了8個,占25%。Minimum period:7.958ns{1}(Maximum frequency:125.660 MHz)最高系統時鐘頻率可達125.660 MHz,顯然滿足設計要求的100 MHz。

圖8 系統仿真波形
GPS接收機對信號的跟蹤主要是借助載波環和碼環來完成的。載波環通過復制一個與接收載波信號的相位或頻率相一致的載波,然后讓接收信號與復制載波進行相乘混頻,以實現對輸入信號的下變頻,從中獲得對接收載波信號的相位或頻率的測量值,并且解調出接收信號上所調制的導航電文數據比特。載波同步的性能直接影響著通信系統的性能。全數字的載波同步環對GPS接收機來講就非常重要。
[1]HAYKIN S.通信系統:4版[M].宋鐵成,等譯.北京:電子工業出版社,2012:75-89.
[2]謝鋼.GPS原理與接收機設計[M].北京:電子工業出版社,2009:16-40.
[3]趙剛.擴頻通信系統實用仿真技術[M].北京:國防工業出版社,2009:150-155.
[4]杜勇.數字通信同步技術的MATLAB與FPGA實現[M].北京:電子工業出版社,2013:97-138.
[5]杜勇,路建功,李元洲.數字濾波器的MATLAB與FPGA實現[M].北京:電子工業出版社,2012:300-342.
[6]何賓.Xilinx FPGA設計權威指南[M].北京:清華大學出版社,2012:418-460.
[7]徐文波,田耕.Xilinx FPGA開發實用教程[M].北京:清華大學出版社,2012:123-194.
[8]楊頌華,馮毛官,孫萬蓉,等.數字電子技術基礎:2版[M].西安:西安電子科技大學出版社,2009:165-171.
[9]COSTAS JP.Synchronous communications[J].Proceedings of the IRE,1956,44(12):1713-1718.
[10]RITER S.An optimum phase reference detector for fully modulated phase shift keyed signal[J].IEEE Transactions on Aerospace and Electronic Systems,1969,4(7):627-631.
[11]MECHLENBRAUKERW F G.Remarks on the zero-input behaviour of second order digital filters designed with one magnitude truncation quantiser[J].IEEE T-ASSP,1975,23(3):240-242.
Design and im p lementation of the carrier tracking loop for a digital GPS receiver based on FPGA
ZHANG Bo,ZHANG Bin
Information and Navigation College,Air Force Engineering University,Xi’an 710077,China
The quality of communication systems can be largely determined by the synchronization technology used in the system design.GPS receiver transforms a satellite signal received by an antenna into a digitalmedium-fre-quency signal by processing at the radiation frequency frontend.The processing of the receiver for the signal of GPS satellite can be divided into four steps in order:capturing,tracking,bit synchronization and frame synchronization.Aiming at such characteristics as BPSK modulation and weak strength of GPS signal,this paper simulates the process of GPS receiver for processing digital signals of baseband.First,the working principle of Costas receiver is introduced,the realizationmethod for FPGA-based software radio carrier synchronization technology is analyzed and researched.In addition,Costas loop is used to realize carrier synchronization.The performance testing demonstrated the accuracy and feasibility of design.
arrier synchronization;pseudo random code;Costas loop;FPGA(field-programmable gate array)
P228.42
A
1009-671X(2015)02-029-04
10.3969/j.issn.1009-671X.201407008
2014-07-25.
日期:2015-03-25.
國家自然科學基金資助項目(61273049).
張博(1989-),男,碩士研究生;張斌(1968-),男,教授.
張斌,E-mail:zhangbin5037@163.com.
http://www.cnki.net/kcms/detail/23.1191.u.20150325.1255.007.html