摘要:針對GPS系統(tǒng)使用直接序列擴頻調(diào)制所使用的精測距碼P碼,P碼具有定位精度高,長周期,結(jié)構(gòu)復雜等的特性,以及其廣泛的軍事應用。通過對P碼的產(chǎn)生原理進行深入研究,采用在Xilinx ISE中使用Verilog HDL語言,對P碼產(chǎn)生電路進行硬件實現(xiàn)的方法,產(chǎn)生指定PRN號衛(wèi)星的P碼,通過對生成結(jié)果進行驗證以及特性分析,以解決GPS中長周期精測距碼(P碼)不借助導航信息中短周期測距碼的引導,實現(xiàn)P碼的快速直接捕獲的問題。
全球定位系統(tǒng)(Global Positioning System,GPS)是美國從上世紀70年代開始規(guī)劃研制,歷時21年,于1994年全面建成,是美國繼阿波羅登月、航天飛機之后的第三大航天工程,利用GPS衛(wèi)星實現(xiàn)全球、全天候、實時、連續(xù)導航定位的,具有海、陸、空全方位實時三維(時間、速度、方位)導航與定位能力的第二代衛(wèi)星導航系統(tǒng),是目前全球應用最為廣泛、最先進的衛(wèi)星導航定位系統(tǒng)。
GPS系統(tǒng)采用典型的CDMA體制,這種擴頻調(diào)制信號具有低截獲概率特性,系統(tǒng)利用直接序列擴頻調(diào)制技術(shù),以碼分多址復用的形式區(qū)分各個衛(wèi)星信號。GPS衛(wèi)星信號導航電文為50bps的二進制數(shù)據(jù)碼,利用偽隨機噪聲碼(PRN)對導航電文進行擴頻,碼片速率遠高于其本身的數(shù)據(jù)碼速率,對信號的頻譜進行擴展,再使用擴展的碼元去調(diào)制L波段載波,可以有效地將低速率導航電文發(fā)送到接收端。目前現(xiàn)代化的GPS信號有3種載波方式:載波L1頻段1 575.42 MHz,L2民用信號(L2C)頻段1 227.6 MHz,和一個位于1176.45 MHz成為L5頻段的載波。
GPS系統(tǒng)測距偽碼有C/A碼和P碼(Y碼),以及新的軍用M碼疊加在L1和L2頻段上?;诖a分多址復用(CDMA)的GPS需要其信號中偽碼具有良好的自相關(guān)和互相關(guān)性能,PRN(Pseudo Random Noise Code偽隨機噪聲碼)碼序列不僅具有高斯噪聲所有的良好自相關(guān)特性,而且具有可預知性和周期性的規(guī)律,它與自身的相移序列相加,結(jié)果仍然為PRN碼序列,只是改變了其相位。P(Y)碼又稱為精確測距碼,它同時調(diào)制在L1和L2載波信號上,主要應用于精測距、抗干擾及其保密性要求高的環(huán)境下。P碼是一種高精度定位碼,利用P碼進行衛(wèi)星定位要比利用粗測距碼C /A碼定位精度提高10倍左右,加密后的P碼稱為Y碼,只有特許用戶才能破譯使用,多用于軍事應用當中。由于P碼的特點是長周期,結(jié)構(gòu)復雜,因此對P碼的捕獲一直是備受關(guān)注,在P碼捕獲的過程中需要本地復現(xiàn)P碼,產(chǎn)生P碼周期內(nèi)指定PRN號衛(wèi)星任意時刻的P碼數(shù)據(jù),對提高P碼的捕獲研究有著非常重要的意義。
1 P碼的產(chǎn)生原理
GPS衛(wèi)星信號擴頻使用的P碼,序列長度2.35x1014,速率為10.23 MHz,序列周期為266.41天。在實際應用中,GPS衛(wèi)星使用序列中的一個星期的碼元,作為衛(wèi)星使用的擴頻偽碼序列,所以其長度為6.287×1012,遠大于C/A碼的1 023個碼元長度。
依據(jù)ICD-GPS-200C,P碼的生成主要由4個稱為X1A,X1B,X2A和X2B的12位移位寄存器產(chǎn)生PRN序列。圖1中給出了這種寄存器方案的詳細框圖。GPS基于CDMA技術(shù)的直接序列擴頻調(diào)制技術(shù),在P碼的情況下,延時的整碼片數(shù)與對應的衛(wèi)星PRN號相同。X1A和X1B寄存器的輸出由一個異或電路形成X1碼發(fā)生器,X2A和X2B寄存器輸出異或形成X2碼發(fā)生器,X2結(jié)果饋送給一個移位寄存器,延遲衛(wèi)星PRN號的碼片數(shù),然后與X1結(jié)果異或合并產(chǎn)生P碼。
P碼的設計規(guī)范要求4個移位寄存器每一個都有一組反饋抽頭,這些抽頭用異或電路相互合并在一起,并反饋到各個寄存器的輸入級。描述這些反饋移位寄存器方案的多項式表達示在表1中。
這4個反饋移位寄存器產(chǎn)生的m序列的自然周期是經(jīng)過截短的,寄存器X1A和X2A都是在4092個碼片之后復位,去掉了它們自然的4 095個碼片序列的最后3個碼片;寄存器X1B和X2B是在4 093個碼片后復位,去掉了它們自然的4 095個碼片序列的最后2個碼片。這導致在每個X1A寄存器循環(huán),X1B序列相位相對于X1A序列都滯后一個碼片,結(jié)果在兩個寄存器之間有相對相位進動,在X2組寄存器之間也發(fā)生同樣的相位進動。
P碼發(fā)生器4個反饋移位寄存器所用多項式和初始狀態(tài)如表1所示。
在GPS星期的起始點,所有移位寄存器均置于初始狀態(tài),在每個移位寄存器歷元的末尾,移位寄存器也復位到其初始狀態(tài)。所謂“4092碼片截短”具體功能就是當X1A寄存器的輸出序列等于第4 092個碼片的時候。輸出“1”將X1A復位到初始狀態(tài)。截斷碼片狀態(tài)示于表2中。
X1歷元是由X1A的復位信號3750分頻得來的,已經(jīng)驗證過X1A歷元的周期為4 092x3 750=15 345 000個碼片(1.5 s),而X1B的歷元時間為4093x3 749=15 344 657個碼片,滯后于X1歷元343個碼片。對于X1B的驅(qū)動時鐘不是直接來自于P碼發(fā)生器模塊的輸入,而是經(jīng)過一個時鐘控制模塊。此模塊檢測來自于X1歷元的恢復信號和X1B歷元的暫停信號的上升沿來控制X1B工作狀態(tài)。由于X1B歷元快于X1歷元343個碼片,所以X1B經(jīng)過一個歷元之后就被自己產(chǎn)生的歷元信號掛停,然后等待343個碼片時間之后,被X1歷元恢復工作,從而達到同步進動的效果。
X1歷元的重要的功能是為GPS標準時間進行計時和標定。X1歷元為GPS系統(tǒng)中重要的所謂“Z計數(shù)器”提供計數(shù)時鐘,其中低19位(這個計數(shù)器又被稱為周時間計數(shù)器,即time-of-week,簡稱TOW)是以403200為模來計數(shù)的。可以計算有1.5x403 200÷60÷60÷24=7天。
X2A/X2B移位寄存器相對于X1A/X1B移位寄存器來說也有相位進動,這表現(xiàn)在每一個X1周期在X2歷元和X1歷元之間有37個碼片的相位進動,這是由將X2周期調(diào)整成比X1周期長37個碼片而產(chǎn)生的??刂芚2A/X2B的原理基本上和控制X1A/X1B相同,但有2個區(qū)別:1)掛停信號不是像X1A/X1B一樣來自于X1歷元而是來自于周復位模塊,也就是說X2A/X2B每星期才暫停一次(發(fā)生在每個星期的結(jié)束時間段,即1.5 s的EOW時間段內(nèi)X2A/X2B歷元發(fā)生的時刻),而不是發(fā)生在每個歷元(即每個1.5 s)的時刻。2)恢復信號也是每星期一次(發(fā)生在每個星期的開始時間段,即1.5 s的SOW時間段內(nèi)),它發(fā)生在SOW時間段內(nèi)中的X2A歷元時刻之后的37個碼片。在這37個碼片時間段內(nèi),X2A/X2B均由暫停時鐘控制,使得它們在這段時間內(nèi)保持不變。因此,X2移位寄存器的實際周期為15345037個碼片時間,比X1的要長37個。在這里需要說明的是,EOW和SOW均來自周復位模塊。Z計數(shù)器的零狀態(tài)下的X1歷元被定義為當前星期的開始(SOW),大約在星期六到星期天的午夜,這里午夜的定義是指調(diào)整宇宙時間(UTC)的零點也就是所謂的格林威治子午線時刻。而EOW則是SOW的前一個X1歷元。
P碼的發(fā)生是X1與X2的延時疊加而來,X2的延時不像C/A碼從移位寄存器上抽頭而來,而是直接經(jīng)過一個37位的移位寄存器,每位m序列的抽頭分別對應37顆衛(wèi)星的PRN號,因此每顆衛(wèi)星的X2碼延時輸出碼片時間就等于其PRN號,使各個都能產(chǎn)生自己獨特的P碼序列。
2 P碼產(chǎn)生器設計
依據(jù)P碼產(chǎn)生方框圖,P碼產(chǎn)生模塊分為時鐘控制模塊、反饋移位寄存器組、譯碼截止模塊、3750/3749分頻模塊、Z計數(shù)器及周復位信號產(chǎn)生模塊、37位移位寄存器組。各個模塊功能如下:
1)時鐘控制模塊:依據(jù)控制信號,定時控制X1B,X2A和X2B 3個移位寄存器工作,時鐘為系統(tǒng)時鐘10.23 MHz;
2)反饋移位寄存器組:分別實現(xiàn)4個12級線性反饋移位寄存器(X1A,X1B,X2A,X2B)的功能,根據(jù)反饋邏輯多項式各自生成輸出移位序列;實現(xiàn)過程中,直接設計觸發(fā)器的復位整合其初始化量,如初始化時該觸發(fā)器輸出為“1”,則直接設置其觸發(fā)器復位時輸出為“1”,省略初始化信號賦值模塊;
3)譯碼電路:根據(jù)各移位寄存器生成序列,對其輸出序列進行截斷,并產(chǎn)生復位信號使移位寄存器組復位到其初始狀態(tài);
4)Z計數(shù)器,周復位信號產(chǎn)生器:觸發(fā)為X1歷元,周時間計時,并產(chǎn)生當前星期的開始(SOW)和當前星期的結(jié)束(EOW)信號,供X2A和X2B兩個移位寄存器時鐘控制信號實現(xiàn)時鐘的暫停與恢復功能;
5)37位移位寄存器組:A和B移位寄存器的輸出(第12級)由異或電路合并起來,形成X1序列,及C和D形成的X2序列,對X2組移位器寄存器產(chǎn)生序列進行移位,移位與所需衛(wèi)星對應的PRN號一致,輸出后與X1組序列再異或操作后,產(chǎn)生對應PRN號的P碼。
3 P碼產(chǎn)生器仿真
依據(jù)表3中P碼的碼相位分配和碼序列初始段,得到衛(wèi)星PRN號為2的P碼數(shù)據(jù)前12個P碼片(八進制)為4000,以此于仿真結(jié)果進行驗證。
如圖,為在Xilinx ISE 10.0中生成的PRN號為2號衛(wèi)星的P碼的仿真信號輸出圖,圖中P_code為P碼產(chǎn)生的序列,Select[5:0]為衛(wèi)星信號選擇輸入,在此為6’H02。
4 結(jié)論
通過對設計結(jié)果分析,可以看出P碼的長周期,以及結(jié)構(gòu)復雜的特點,也正是因此才保證其應用在精測距、抗干擾及其保密性要求高的環(huán)境下,在P碼捕獲的過程中本地產(chǎn)生復現(xiàn)P碼,產(chǎn)生P碼周期內(nèi)指定PRN號衛(wèi)星任意時刻的P碼數(shù)據(jù),以解決在不借助短周期粗測距碼的引導下,對P碼實現(xiàn)直接快速捕獲。





