連 潔,伍蔡倫
(河北省衛星導航技術與裝備工程技術研究中心,河北石家莊050081)
由于電離層折射引起的偽碼群延遲與載頻的平方成反比,利用GSP衛星在主頻率L1(1575.42MHz)和次頻率L2(1227.6MHz)2個載波頻率上發射導航信號之間的群延遲的不同,可以精確地估算出L1信號群延遲的大小,加以消除從而提高其偽距測量精度。為了測量信號的群延遲差,必須同時跟蹤2個載頻的PRN碼。L1頻率信號由C/A碼和P(Y)碼2個PRN碼調制。L2頻率信號均有P(Y)碼調制,只有少數衛星L2頻率信號有C/A碼調制。軍用P(Y)碼是保密的,這就是只有軍用用戶與才能消除電離層誤差的原因。因此,對GPS L2頻率P(Y)碼的載波跟蹤顯得尤為重要。本文提供了P碼復現,L1輔助L2進行P碼載波跟蹤等關鍵技術的解決方案,并在FPGA中進行了實現和驗證。
P(Y)碼是由P碼和W碼模2加而成。P碼是公開已知的,W碼未知,其速率約為500kHz。P(Y)碼信號的接收,通常有2種方法:無碼和半無碼技術。無碼技術是指在對P碼未知條件下利用平方法恢復L2載波信號。無碼技術的平方損耗較大,增加了接收機環路的均方根相位誤差,從而使L2載頻連續波信號的跳周概率上升,不適于做一般定位使用。而半無碼技術是利用一些P碼特性以恢復L2載波信號。平方損耗相較于無碼技術可降低3~20dB以上,半無碼技術是主流雙頻接收機常采用的方法。
GPS C/A碼序列長度為1023bit,碼片速率為1.023mHz,是粗精度民用碼。C/A碼的生成方式也是公開的。GPS L1頻率的C/A碼是可以跟蹤并解調出電文信息。對于同一顆衛星中L1和L2頻率使用的P碼序列是相同的。利用L1 C/A碼已知的時間信息和載波跟蹤環調整量等信息可以有效地輔助L2頻率的P(Y)碼的捕獲跟蹤。由于電離層延遲的影響,L2頻率的P(Y)碼序列與L1的P(Y)碼序列有一定的時間延遲。由文獻[1]可知,電離層延遲不超過150m,即延遲不超過P碼的6個碼片。在W碼的間隔內進行相關積累,利用L1的P(Y)碼的積累進行W碼的消除,延長積分時間。即可獲得L2頻率P(Y)碼的相關積累最大值。利用載波跟蹤環路進行跟蹤,即可獲得載波跟蹤的相位信息,實現P(Y)碼的載波跟蹤。在此之中,復現任意時刻的P碼序列、消除W碼和捕獲跟蹤流程是其中的關鍵技術。
P碼是復雜的偽隨機噪聲(PRN)碼,序列長度為2.354 695 927 65 ×1014,碼速率為10.23mHz,碼周期為266.41天,即38.058星期。在實際應用中,每顆衛星使用P碼的一星期長的碼元作為自己的擴頻序列,故每個序列長度是6.187 104×1012。
P碼的生成可參考ICD-GPS-200C[2],在此簡述一下P碼的產生原理。P碼生成主要由4個12級線性反饋移位寄存器(X1A,X1B,X2A,X2B)構成,系統時鐘為10.23mHz。
P碼的4個移位寄存器其自然周期為4095,均做截斷并按照一定的規律周期運行。X1A和X1B被截短為4092個碼片(chip)一個周期(cycle),X2A和X2B被截短為4093個碼片一個周期。X1序列按如下規律運行。X1A按其4092個碼片為1cycle,運行整3750個cycle。X1B按4093個碼片為1cycle,運行完成其自身的3749個cycle,然后停止推送待X1A運行完結后一同復位重新開始。X1B在完成其3749個cycle后,需停止推送343個碼鐘(3750×4092-3749×4093=343),便載入初相重新運轉。
同樣,X2序列中X2A和X2B的時序關系與X1序列中X1A和X1B的規律一樣,只是X2A到一個3750cyle結束時,X2A和X2B同時停止推送,待37個碼片時鐘后重新開始啟動。即X2A需停止推送37個碼鐘,X2B需停止343+37個碼鐘,再重新載入各自的初相重新運轉。X2由X2A和X2B異或而得,X1由X1A和X1B異或而得。X1和X2序列異或得出P碼序列。每顆衛星只用該序列的一個星期。在X2序列的輸出位置使用移位寄存器來對X2序列進行i個碼片(i的范圍從1~37)的延遲,就形成了37種不同的P碼序列。
要想復現任意時刻的P碼,必須知道該時刻4個寄存器的初相。然而任意時刻初相的推算較為復雜。為了滿足接收機的需要并且簡化設計,利用復位時的初相和序列的相對關系,把P碼產生器簡化為給定一周(7天)內任意第N個1.5s(第N個Zcnt),生成該時刻的P碼。
由P碼的生成原理可知,X1和X2序列中,只有X1A序列以固定周期連續運轉,沒有被停止推送。X1B、X2A和X2B以X1A為基準,均有相應的停止推送、等待復位的時序。
將X1A的3750個cycle的計數為1個Z計數(Zcnt),以X1A作為時序的標尺,有如下關系:

即X1A正常運行,得出Zcnt同步標志和整周復位標志;X1B在每一個Zcnt的起始與X1A同步一次(X1為主序列,一直維持自同步);X2序列在一個整周的起始與X1A同步一次(X2被X1序列同步);X2B在每個X2 Zcnt(1個Zcnt+37chips)與X2A同步一次(X2序列自同步)。
FPGA實現任意時刻P碼的生成時,為避免復雜的運算,均以4個序列的相對時序來推送碼生成。設計主要分為4個模塊,即引導時刻換算模塊、X1序列時序產生模塊、X2序列時序產生模塊和P碼多項式偽碼產生器。
引導時刻換算模塊,將Zcnt計數換算為X1序列和X2序列的啟動順序脈沖。X2序列比X1序列延時(Zcnt-1)*37個碼鐘。令2個序列均從初相開始運行。X1序列時序產生模塊,從啟動開始,X1A按規律運轉,X1B按照X1A的對應時序運轉。輸出兩序列的置入初相和X1B的停止等待信號。X2序列時序產生模塊中,X2A和X2B也同時從啟動脈沖開始計數運轉,生成相應的重置初相和停止等待信號。全部信號時序具備,輸入P碼產生器中,按生成多項式移位運算,重置信號到來時,置入對應序列的初相;停止等待信號到來時,對應的移位寄存器停止運轉。該P碼產生器,已在FPGA中實現并經過驗證,圖1為GPS1號衛星,在Zcnt=40313時刻,生成的P碼。X1_pn為X1序列偽碼,X2_pn為X2序列偽碼。

圖1 硬件設計及系統連接框圖
跟蹤處理流程如圖2所示。
圖2L2 P(Y)跟蹤處理流程圖
用本地復現的載波進行下變頻后,形成同相I和正交相Q兩條支路。I和Q信號分別與并行的超前、即時、滯后的復現碼進行相關。由于L2頻率P碼延遲不超過6個碼片。L2頻率P碼的并行支路需覆蓋整個延遲范圍。產生超前L1頻率的P碼2個碼片的L2頻率P碼。以半碼片作為相關間隔,向后搜索8個碼片的范圍。在文獻[3]中,給出了W碼的周期。W碼頻度為0.511MHz和0.465MHz交替發生,20個P碼為一個W碼,持續11個W碼,后面為22個P碼為一個W碼,持續21個此周期的W碼。兩個周期的W碼合并為一個H周期,15個H周期為1ms。由此可知,P碼的相關積累可在一個W碼內進行。L1信號的處理與L2信號的處理相同,均做W碼內的P碼相關積累。取L1的W碼的符號位,與L2的相關積累值相乘,消除W碼,擴大P碼的相關積累范圍,有效延長了預檢測積分的時間。在此基礎上進行了時長1ms的相關積累。搜索到相關峰值,判斷門限。將相關積累值,送入跟蹤環路。捕獲跟蹤環路的處理可以復用L1信號的處理流程。碼發生器由碼環NCO,由接收機的碼跟蹤環控制。使用載波跟蹤環路控制。當相位鎖定時,I信號最大,而Q支路只含有噪聲。由于L2 P(Y)本身比L1 P(Y)信號弱3dB,再加上平方損失,L2 P(Y)環路的跟蹤比較脆弱,所以加入了失鎖重捕機制。若載噪比低于一定門限,認為L2 P(Y)碼跟蹤失鎖。由L1的C/A碼重新進行時間引導,并將當前Doppler頻偏信息,置入L2 P(Y)跟蹤支路。
將P碼生成模塊嵌入GPS L1和L2雙頻接收機中,用思博倫信號模擬器模擬GPS衛星的發射信號。將雙頻信號接入雙頻接收機中。從L1的C/A碼電文中可以解出當前P碼的時刻。將時間置入P碼生成模塊,已知固定延時關系,P碼生成模塊可以生成出與L1頻率C/A碼碼片級對齊的P碼。在環路跟蹤程序段中,存取I和Q支路的相關積累值做圖,如圖3所示。環路穩定后,上一條曲線為I支路積累值,下面為Q支路積累值。I支路為信號能量,Q支路為噪聲能量,表明FPGA實現的L2 P(Y)碼可以跟蹤鎖定。此時,L2 P(Y)載噪比為34.27dBHz,L1載噪比為43.12dBHz。兩者相差8.85dBHz。

圖3 I和Q支路各自的相關積累值
基于半無碼技術跟蹤L2 P(Y)碼的方法,研究并解決了P碼復現和消除W碼延長積分時間等關鍵技術。以跟蹤L1頻率中C/A碼和P(Y)碼得出的相關量輔助L2 P(Y)碼的捕獲跟蹤。為了增加環路的工作穩定性,加入了失鎖重捕機制。階段性成果均在FPGA中實現并進行了試驗驗證。結果表明,在工程中實現了跟蹤L2頻率P(Y)碼。
[1]劉基余,李征航,王躍虎,等.全球定位系統原理及其應用[M].北京:測繪出版社,1993.
[2]IS-GPS-200 Revision D IRN-200D-001 7March 2006.Navstar GPS Space Seg-ment/Navigation User Interface[S].
[3]GARY L.Method and Apparatus for Improved L2 Performance in Dual Frequency Semi-codeless GPS Receivers[P].CA(US):US 2007/0230545 A1,2005.9.27.
[4]秦明峰,王興剛,張國強.基于MATLAB集成環境的GPS接收機設計[J].無線電工程,2009,39(02):61-64.
[5]潘申富,張麗娜.一種低信噪比解調的實現方案及性能仿真[J].無線電通信技術,2011,37(02):55-58.
[6]劉偉,鐘子發.OFDM信號碼片時寬與符號長度估計[J].無線電通信技術,2011,37(02):23-25.
[7]羅顯志.基于定向天線的導航信號參數估計方法研究[J].無線電工程.2011,41(03):30-33.
[8]董立橋,周雪娟.基于PXI架構的導航信號模擬器設計[J].無線電工程.2011,41(03):34-37.
[9]姚勇.低軌衛星自跟蹤技術分析[J].無線電工程,2011,41(10):17-20.
[10]劉會紅,林春霞.基于帶通采樣QPSK高速解調器的技術分析[J].無線電通信技術,2011,37(01):59-61.