專利名稱:提高衛(wèi)星時間同步脈沖保持性能的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線通信領(lǐng)域中的衛(wèi)星定時技術(shù),尤其涉及提高衛(wèi)星時間同步脈沖保持性能的方法。
背景技術(shù):
目前應(yīng)用較為廣泛的衛(wèi)星導(dǎo)航系統(tǒng)有全球定位系統(tǒng)(GPS)、全球?qū)Ш叫l(wèi)星系統(tǒng)(GLONASS)以及北斗導(dǎo)航系統(tǒng)。它們均利用導(dǎo)航衛(wèi)星進行測時和測距,能夠在海、陸、空進行全方位實時的三維導(dǎo)航與定位。由于它們具有精度高、全天候、覆蓋范圍廣等特點,衛(wèi)星導(dǎo)航系統(tǒng)在精密導(dǎo)航、指揮和調(diào)度等方面發(fā)揮了十分重要的作用。
具體而言,衛(wèi)星導(dǎo)航系統(tǒng)的主要用途是導(dǎo)航定位和定時。只要裝備有衛(wèi)星接收機的用戶,便能夠全天候、實時地接收空間衛(wèi)星發(fā)出的信號,從而獲得精確的導(dǎo)航定位信息和精確的時間信息,其中時間信息包含年、月、日、時、分、秒以及衛(wèi)星時間同步脈沖信號,即1PPS(秒脈沖)信號等。由于衛(wèi)星上都安裝有銫原子鐘,因而具有很高的頻率精度和時間精度。
在無線通信領(lǐng)域中,任何設(shè)備都需要時鐘為其提供工作頻率,所以時鐘性能是影響設(shè)備性能的一個重要因素。通常通過提高外部同步信號的質(zhì)量來提高時鐘的性能。常規(guī)的產(chǎn)生時鐘頻率的方法是利用晶體和原子鐘。但是晶體會老化,易受外界環(huán)境變化的影響,長期的精度漂移影響其輸出的頻率;原子鐘長期使用后也會產(chǎn)生偏差,需要定期校準,因此兩者均不能夠提供高質(zhì)量的外部同步信號。而衛(wèi)星系統(tǒng)定期對自身時鐘系統(tǒng)進行修正,所以它們的時鐘系統(tǒng)長期穩(wěn)定,具有對外界物理因素變化不敏感的特性。目前許多產(chǎn)品都將衛(wèi)星信號作為外部同步信號,獲取準確頻率、實現(xiàn)精確定時。各產(chǎn)品的本地時鐘以衛(wèi)星時鐘為參考,盡可能與衛(wèi)星保持時間同步。通常的做法是衛(wèi)星卡接收衛(wèi)星的1PPS和絕對時間信息后,將接收到的信息轉(zhuǎn)發(fā)給系統(tǒng),再由系統(tǒng)作相應(yīng)的處理,從而實現(xiàn)整個網(wǎng)絡(luò)的時間同步。
當衛(wèi)星卡接收天線受地球磁場干擾或天氣的影響而暫停工作時,衛(wèi)星信號會暫時丟失。為了不中斷使用衛(wèi)星信號的系統(tǒng)的工作,可以利用本地時鐘來跟蹤衛(wèi)星的時鐘信號,實現(xiàn)對衛(wèi)星時間同步脈沖的保持功能,以便系統(tǒng)在失去衛(wèi)星信號后還能夠正常工作一段時間。通常,保持時間的長短是由本地時鐘的頻率準確度決定的。
通信設(shè)備通常選用晶振作為本地時鐘。在規(guī)定條件下,晶振的輸出頻率相對于標稱頻率的允許偏離值稱為是該晶振的頻率準確度。為了提高本地時鐘相對于衛(wèi)星時鐘信號的保持性能,就需要提高晶振的頻率準確度,即選用一個性能較好的晶振作為本地時鐘源。晶振可以分為普通晶振(PXO)、溫補晶振(TCXO)、壓控晶振(VCXO)和恒溫晶振(OCXO)等。其中普通晶振是一種沒有采取溫度補償措施的晶體振蕩器,頻率穩(wěn)定度取決于其內(nèi)部所用晶體的性能,一般用于普通場所中的振源或中間信號,是晶振中最廉價的產(chǎn)品;溫補晶振在晶振內(nèi)部采取了對晶體頻率-溫度特性進行補償?shù)拇胧?,以達到在較寬的溫度范圍內(nèi)滿足穩(wěn)定度的要求,由于其良好的開機特性、功耗低、體積小、環(huán)境適應(yīng)性較強等多方面優(yōu)點,因而獲得了廣泛應(yīng)用;壓控晶振是一種可通過調(diào)整外加電壓使晶振輸出頻率隨之改變的晶體振蕩器,主要用于鎖相環(huán)路或頻率微調(diào),其頻率控制范圍及線性度主要取決于電路所用變?nèi)荻O管及晶體參數(shù)的組合;恒溫晶振采用精密控溫,使電路元件及晶體工作在該晶體的零溫度系數(shù)點的溫度上,中精度產(chǎn)品的頻率穩(wěn)定度約為10-7~10-8,高精度產(chǎn)品的頻率穩(wěn)定度在10-9量級以上,主要用作頻率源或標準信號??紤]到各種晶振的性能及成本,一般選擇恒溫晶振作為本地時鐘源。
如圖1所示,本地時鐘與衛(wèi)星時間同步脈沖信號保持同步的方法是恒溫晶振輸出的時鐘信號分成兩路,一路經(jīng)過分頻器產(chǎn)生本地1PPS信號,另一路用作1Hz鑒相模塊的計數(shù)時鐘,即控制相鄰兩次鑒相的時間間隔。由于分頻器的實現(xiàn)方式為計數(shù)分頻,分頻器中的計數(shù)器從計數(shù)初值開始減1計數(shù),當計數(shù)值為某一數(shù)值時,分頻器的輸出信號狀態(tài)改變,因此經(jīng)過分頻得出的本地1PPS信號的相位可以通過調(diào)整分頻器的計數(shù)初值而改變。分頻出的本地1PPS信號與衛(wèi)星1PPS信號在1Hz鑒相模塊中進行鑒相,CPU讀取兩者的相位差后調(diào)整分頻器的計數(shù)初值,從而調(diào)整本地1PPS信號的相位,實現(xiàn)本地1PPS信號跟蹤衛(wèi)星1PPS信號。另外,衛(wèi)星1PPS信號輸入到1PPS信號丟失檢測模塊中,通過該模塊向CPU提供衛(wèi)星時間同步脈沖是否丟失的信息。而本地1PPS信號輸入到CPU的目的是方便CPU利用1PPS進行計時。當恒溫晶振輸出頻率較低的時鐘信號時,可以在本方案的恒溫晶振與分頻模塊之間增加倍頻模塊,以提高本地1PPS信號跟蹤衛(wèi)星1PPS信號的效果。
上述方案存在的問題是雖然在衛(wèi)星信號不丟失的情況下能夠使本地1PPS對齊衛(wèi)星的1PPS信號,但是當衛(wèi)星信號丟失后,1Hz鑒相模塊停止工作,CPU不再從鑒相模塊中獲取鑒相值,此時本地1PPS的準確性則只能依靠恒溫晶振的性能來保證。但是恒溫晶振不可避免的會因為老化而產(chǎn)生頻率的漂移,而分頻計數(shù)器還是按照其標稱頻率對恒溫晶振產(chǎn)生的時鐘信號進行分頻,產(chǎn)生本地1PPS。顯然此時分頻出來的本地1PPS的頻率已經(jīng)不再是1HZ了,這樣的后果就是導(dǎo)致本地1PPS和衛(wèi)星的1PPS發(fā)生相位偏差。如果不進行校正,則該相位偏差將逐漸增大,當本地1PPPS與衛(wèi)星1PPS的相差超過相差容限時,系統(tǒng)無法正常工作。
本方案中恒溫晶振的長期偏移影響本地1PPS與衛(wèi)星時間同步脈沖之間的保持。假設(shè)恒溫晶振的老化率為K,標稱頻率為F,經(jīng)過N年的老化后,其輸出頻率與標稱頻率間的偏差值為ΔF,則ΔFF=K⇒ΔF=KF]]>
每秒鐘的偏差為每個周期的偏差乘以頻率,即ΔS=(1F+ΔF-1F)×F=ΔFF+ΔF=K1+K,]]>則一天的偏差為S=ΔS×24×3600=K1+K×24×3600.]]>通常,恒溫晶振的年老化率約為0.1ppm,即0.1×10-6,則將K用0.1ppm替換后得出一天的偏差為S=8.6ms。
可見,當衛(wèi)星信號丟失時,本套裝置對衛(wèi)星時間同步脈沖的保持性能較低。
為了克服上述方案的缺點,考慮到恒溫晶振老化所帶來的頻率漂移使得本地1PPS無法長時間保持1Hz的頻率,故現(xiàn)有的一種方案是利用直接數(shù)字合成器(DDS)來抵消恒溫晶振老化產(chǎn)生的頻率漂移。
如圖2所示,采用DDS抵消恒溫晶振的頻率漂移的方法是恒溫晶振向DDS輸出參考時鐘信號,DDS用其內(nèi)部累加寄存器中的數(shù)值對參考時鐘信號的頻率進行調(diào)整后,輸出DDS時鐘信號。由于DDS輸出的信號含有高次諧波噪聲,因此需要經(jīng)過整形模塊進行濾波整形處理后送給分頻器。分頻器經(jīng)分頻處理后輸出本地1PPS信號,同時該信號進入1HZ鑒相模塊,和衛(wèi)星的1PPS信號進行鑒相。CPU通過1PPS丟失檢測模塊獲取衛(wèi)星1PPS存在與否的信息。當衛(wèi)星1PPS未丟失時,CPU讀取鑒相模塊的鑒相值,計算出DDS內(nèi)部累加寄存器中的數(shù)值后寫入DDS,再由DDS調(diào)整自身的輸出頻率,進而調(diào)整鑒相模塊中本地1PPS和衛(wèi)星的1PPS的相差。這樣的一個閉環(huán)控制系統(tǒng)經(jīng)過一段時間的運行后,最終使進入穩(wěn)定狀態(tài),實現(xiàn)本地1PPS信號跟蹤衛(wèi)星的1PPS信號。當1PPS丟失檢測模塊發(fā)現(xiàn)衛(wèi)星信號丟失并上報給CPU后,鑒相模塊停止工作,即不再向CPU傳送鑒相值,因而控制環(huán)路斷開。此時本地1PPS信號的相位保持性能取決于DDS輸出時鐘的頻率準確度。
利用DDS抵消恒溫晶振的頻率漂移這一方法的不足在于由于需要增加DDS和整形模塊等器件,增加了成本。
如圖3所示,目前還存在另一種實現(xiàn)本地1PPS與衛(wèi)星1PPS相保持的方法利用改變VCXO的電壓控制信號來微調(diào)其輸出頻率的特性,用VCXO替代恒溫晶振。具體過程如下VCXO輸出的時鐘信號經(jīng)分頻器分頻后產(chǎn)生本地1PPS信號,同時本地1PPS在鑒相模塊中與衛(wèi)星1PPS鑒相。CPU獲取鑒相值后,計算出相位調(diào)整值,并將其寫入數(shù)據(jù)鎖存器(REG)。REG的數(shù)字信號經(jīng)過高精度數(shù)/模(D/A)轉(zhuǎn)換器轉(zhuǎn)換為模擬信號。由于此時的信號含有高頻諧波,因此在低通濾波器(LPF)中濾除此噪聲,輸出低頻的電壓控制信號作為VCXO的輸入。VCXO在電壓控制信號的作用下改變輸出頻率,從而通過分頻器改變本地1PPS的相位,達到減小鑒相模塊中相差的目的。經(jīng)過不斷的調(diào)整,整個閉環(huán)控制環(huán)路進入穩(wěn)定狀態(tài),本地1PPS較好地跟蹤衛(wèi)星的1PPS信號的相位。在1PPS丟失檢測模塊發(fā)現(xiàn)衛(wèi)星1PPS信號丟失后,將丟失信息提供給CPU,此時鑒相模塊停止工作,即不再向CPU傳送鑒相值,因而控制環(huán)路斷開。此時本地1PPS信號的相位保持性能取決于VCXO輸出時鐘的頻率準確度。
利用VCXO替代恒溫晶振這一方法的不足在于由于需要增加VCXO、REG、D/A轉(zhuǎn)換器及LPF等器件,特別是VCXO和高精度的D/A轉(zhuǎn)換器價格較高,因此該方法的成本較高。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種衛(wèi)星時間同步脈沖的保持方法,延長本地1PPS信號與衛(wèi)星時間同步脈沖的相位保持時間。
本發(fā)明包含一種提高衛(wèi)星時間同步脈沖保持性能的方法,該方法包括以下步驟A1.CPU設(shè)置相位校正門限并建立先入先出存儲器;B1.CPU根據(jù)校正門限調(diào)整本地秒脈沖的相位;C1.CPU在先入先出存儲器中存儲本次校正與上次校正之間的時間間隔;
D1.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E1,否則,返回執(zhí)行步驟B1;E1.CPU根據(jù)存儲的校正時間間隔計算下次校正與本次校正之間的時間間隔,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
所述的步驟B1包括以下步驟B11.CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B12.CPU判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟B13,否則,返回執(zhí)行步驟B11;B13.CPU校正本地秒脈沖的相位,校正量等于相位校正門限。
步驟E1所述CPU計算下次校正與本次校正之間時間間隔的方法為對步驟C1所述先入先出存儲器中的所有校正時間間隔求平均值,該平均值為下次校正與本次校正之間的時間間隔。
步驟E1所述CPU對本地秒脈沖相位校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于相位校正門限,而后返回執(zhí)行步驟D1。
本發(fā)明包含另一種提高衛(wèi)星時間同步脈沖保持性能的方法,該方法包括以下步驟A2.CPU設(shè)置校正時間間隔并建立先入先出存儲器;B2.CPU根據(jù)本地秒脈沖與衛(wèi)星秒脈沖之間的相位差調(diào)整本地秒脈沖的相位;C2.CPU在先入先出存儲器中記錄并存儲本次相位校正量;D2.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E2,否則,返回執(zhí)行步驟B2;E2.CPU根據(jù)存儲的相位校正量計算下次校正的相位校正量,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
所述的步驟B2包括以下步驟
B21CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B22CPU判斷是否到達校正時間,如果是,則執(zhí)行步驟B23,否則,返回執(zhí)行步驟B21;B23CPU校正本地秒脈沖的相位,校正量等于步驟B21中所讀取的相位差。
步驟E2所述CPU計算下次校正的相位校正量的方法為對步驟C2所述先入先出存儲器中的所有相位校正量求平均值,該平均值為下次校正的相位校正量。
步驟E2所述CPU對本地秒脈沖的相位進行校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于步驟E2中計算出來的相位校正量,而后返回執(zhí)行步驟D2。
本發(fā)明還包含一種提高衛(wèi)星時間同步脈沖保持性能的方法,該方法包括以下步驟A3.CPU設(shè)置相位校正門限并建立第一先入先出存儲器FIFO1和第二先入先出存儲器FIFO2;B3.CPU根據(jù)本地秒脈沖與衛(wèi)星秒脈沖之間的相位差調(diào)整本地秒脈沖的相位,并在第一先入先出存儲器FIFO1中記錄存儲所述相位差;C3.CPU在第二先入先出存儲器FIFO2中記錄并存儲校正時間;D3.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E3,否則,返回執(zhí)行步驟B3;E3.CPU根據(jù)存儲的相位差和校正時間間隔計算下次校正與本次校正之間的時間間隔,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
所述的第一先入先出存儲器FIFO1的深度為1;所述的第二先入先出存儲器FIFO2的深度為2。
所述的步驟B3包括以下步驟
B31.CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B32.CPU判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟B33,否則,返回執(zhí)行步驟B31;B33.CPU將相位差記錄到第一先入先出存儲器FIFO1中;B34.CPU校正本地秒脈沖的相位,校正量為步驟B33中的相位差。
步驟E3所述CPU計算下次校正與本次校正之間時間間隔的方法為CPU首先將第一先入先出存儲器FIFO1中的相位差除以第二先入先出存儲器FIFO2中最近兩次校正時間的差值,得出平均每秒的相位校正量;然后,將相位校正門限除以平均每秒的相位校正量,得出下次校正與本次校正之間的時間間隔。
步驟E3所述對本地秒脈沖的相位進行校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于相位校正門限,而后返回執(zhí)行步驟D3。
應(yīng)用本發(fā)明,CPU在衛(wèi)星1PPS信號丟失后,根據(jù)記錄存儲的丟失前的各校正參數(shù)進行統(tǒng)計學(xué)習(xí),得出本地1PPS相對于衛(wèi)星1PPS的變化趨勢,進而計算出衛(wèi)星信號丟失后的校正參數(shù),并按照計算結(jié)果對本地1PPS信號的相位進行調(diào)整,從而提高本地1PPS與衛(wèi)星1PPS的保持性能。具體而言,本發(fā)明具有如下有益效果1.本發(fā)明在現(xiàn)有的實現(xiàn)衛(wèi)星時間同步脈沖保持功能的硬件基礎(chǔ)上增加少量軟件算法,不增加任何硬件模塊,因此硬件結(jié)構(gòu)較為簡單,同時成本較低;2.本發(fā)明的軟件算法較為簡單,易于實現(xiàn);3.本發(fā)明通過多種方式對衛(wèi)星1PPS丟失前的各校正參數(shù)進行統(tǒng)計學(xué)習(xí),并在衛(wèi)星1PPS信號丟失后,CPU按照統(tǒng)計學(xué)習(xí)的結(jié)果調(diào)整本地1PPS信號的相位,使得本地1PPS信號繼續(xù)使用衛(wèi)星1PPS信號丟失之前的相位變化規(guī)律,從而大大提高了本地1PPS對衛(wèi)星1PPS信號的保持性能,延長了保持時間。
圖1為衛(wèi)星時間同步脈沖保持性能實現(xiàn)原理圖。
圖2為衛(wèi)星時間同步脈沖保持性能改進方案一原理圖。
圖3為衛(wèi)星時間同步脈沖保持性能改進方案二原理圖。
圖4為本發(fā)明固定相位校正量、統(tǒng)計相位校正時間間隔的實施例的流程圖。
圖5為本發(fā)明固定相位校正時間間隔、統(tǒng)計相位校正量的實施例的流程圖。
圖6為本發(fā)明統(tǒng)計每秒平均相差的實施例的流程圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明做進一步的詳細說明。
本發(fā)明為提高衛(wèi)星時間同步脈沖保持性能的方法,其基本思想是利用恒溫晶振短時間內(nèi)的輸出頻率固定的特性,針對圖1中的硬件增加少量軟件算法,使CPU可以通過對衛(wèi)星信號丟失之前的校正數(shù)據(jù)和校正頻度的統(tǒng)計學(xué)習(xí),而在衛(wèi)星信號丟失后的較長時間內(nèi)繼續(xù)使本地1PPS與衛(wèi)星時間同步脈沖保持同步。
本發(fā)明至少可通過如下的三種方式實現(xiàn)延長本地1PPS信號與衛(wèi)星時間同步脈沖的相位保持時間(1)固定相位校正量、統(tǒng)計相位校正時間間隔;(2)固定相位校正間隔、統(tǒng)計相位校正量;(3)統(tǒng)計每秒平均相差。
下面對本發(fā)明的具體實現(xiàn)進行詳細描述。
實施例1固定相位校正量、統(tǒng)計相位校正時間間隔。
由于恒溫晶振的短期穩(wěn)定性很好,在短時間內(nèi)可以近似認為恒溫晶振的輸出頻率是固定的。但是恒溫晶振的實際輸出頻率不可能絕對等于其標稱頻率,兩者之差記做ΔF。在短時間內(nèi)可以認為ΔF是恒定的。由于信號的相位是頻率的積分,因此如果沒有CPU對分頻器的校正,本地1PPS和衛(wèi)星1PPS的相差將會隨著時間線性增加,并最終超出系統(tǒng)的相差容限。當本地1PPPS與衛(wèi)星1PPS的相差超過相差容限時,系統(tǒng)無法正常工作。
本實施例中,系統(tǒng)設(shè)置一個遠小于相差容限的相位校正門限,當本地1PPS與衛(wèi)星1PPS之間的相位差達到相位校正門限時,校正本地1PPS的相位;在衛(wèi)星1PPS丟失后,CPU可以根據(jù)衛(wèi)星1PPS丟失前一段時間的校正頻度計算以后的校正時間間隔,繼續(xù)對本地1PPS的相位進行校正。
如圖4所示,本實施例包括以下步驟步驟401CPU設(shè)置校正門限并建立深度為L的FIFO。
本步驟中CPU首先將工作方式設(shè)置為固定相位校正量、統(tǒng)計相位校正時間間隔。由于該方式的相位校正量是固定的,因此CPU還設(shè)置相位校正門限的數(shù)值,作為后續(xù)步驟中判斷是否需要進行校正的標準以及校正時的相位校正量;然后CPU建立一個深度為L的FIFO,用于存儲衛(wèi)星1PPS丟失前一段時間的校正時間間隔,作為衛(wèi)星1PPS丟失后校正本地1PPS的學(xué)習(xí)統(tǒng)計數(shù)據(jù)源。
步驟402CPU讀取本地1PPS與衛(wèi)星1PPS的相位差。
本地1PPS與衛(wèi)星1PPS在1Hz鑒相模塊中鑒相后,CPU從鑒相模塊的輸出端讀取兩者的相位差。
步驟403CPU判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟404;否則返回執(zhí)行步驟402。
步驟404CPU校正本地1PPS的相位,校正量等于相位校正門限。
本步驟CPU校正本地1PPS信號相位的具體過程是CPU根據(jù)相位校正門限的數(shù)值計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位接近衛(wèi)星1PPS信號的相位。
步驟405CPU在FIFO中記錄存儲本次校正與上次校正之間的時間間隔ΔTn。
FIFO的特性是只保留最新的數(shù)據(jù)。具體而言,F(xiàn)IFO按時間先后的順序存放各個數(shù)據(jù),時間上較早的數(shù)據(jù)放在前面,而后來的數(shù)據(jù)放在后面;在存儲的數(shù)據(jù)個數(shù)達到其深度L后,此時在放入新來的數(shù)據(jù)時,F(xiàn)IFO將丟棄最前面的數(shù)據(jù)。本實施例利用FIFO先入先出的特性記錄存儲最新的校正時間間隔。
步驟406CPU判斷衛(wèi)星1PPS信號是否丟失,如果是,則執(zhí)行步驟507;否則,返回執(zhí)行步驟402。
本步驟中CPU通過讀取1PPS丟失檢測模塊的輸出信號來判斷衛(wèi)星1PPS信號是否丟失。
步驟407根據(jù)FIFO中存儲的校正時間間隔計算下次校正與本次校正之間的時間間隔ΔT=(ΔTn+ΔTn-1+K+ΔTn-K+1)/K,其中n為FIFO中所記錄的最后一個時間間隔的標號,K為FIFO中存儲的時間間隔的個數(shù)。
當系統(tǒng)開始工作不久衛(wèi)星的1PPS信號就丟失時,F(xiàn)IFO中所記錄存儲的校正時間間隔的個數(shù)沒有達到其深度L,即K<L,那么以后的校正時間間隔就是FIFO中所有校正時間間隔的平均值;當系統(tǒng)已經(jīng)工作一段時間后衛(wèi)星的1PPS信號丟失時,F(xiàn)IFO已經(jīng)記滿,此時存儲的校正時間間隔的個數(shù)等于FIFO的深度L,即K=L,則校正時間間隔的計算公式變?yōu)棣=(ΔTn+ΔTn-1+K+Δn-1-L+1)/L。
步驟408判斷是否到達校正時間,如果是,則執(zhí)行步驟409;否則,返回執(zhí)行本步驟。
圖1中本地1PPS信號每秒鐘向CPU送入一個脈沖,因此CPU可以利用這一脈沖進行計時。CPU從本次校正結(jié)束時刻開始,根據(jù)步驟407中計算出來的校正時間間隔ΔT進行計時,例如ΔT等于10秒,則CPU接收到10個本地1PPS信號即表示到達校正時間。
步驟409CPU校正本地1PPS的相位,校正量等于相位校正門限。
本步驟中CPU根據(jù)相位校正門限的數(shù)值計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位與衛(wèi)星1PPS信號的相位相同。
本實施例中,當本地1PPS與衛(wèi)星1PPS的相位差大于或等于相位校正門限時,CPU對本地1PPS進行校正,校正量等于相位校正門限。由于偏移量大于或等于校正量,因此校正后本地1PPS與衛(wèi)星1PPS仍然可能不完全同步。但是校正后兩信號的相位差能夠累計到在下次校正前的相位差中,再由CPU進行校正。所以本實施例中的技術(shù)方案在工作一段時間后能夠較好的保持本地1PPS與衛(wèi)星1PPS的同步。
實施例2固定相位校正時間間隔、統(tǒng)計相位校正量。
本實施例中,系統(tǒng)固定校正的時間間隔,即當校正時間一到,CPU即刻校正本地1PPS的相位。在衛(wèi)星1PPS丟失后,CPU可以根據(jù)衛(wèi)星1PPS丟失前一段時間的相位校正量計算以后的校正量ΔΦ,繼續(xù)對本地1PPS的相位進行校正。
如圖5所示,本實施例包括以下步驟步驟501CPU設(shè)置校正時間間隔ΔT并建立深度為L的FIFO。
本步驟中CPU首先將工作方式設(shè)置為固定相位校正間隔、統(tǒng)計相位校正量。由于該方式的校正時間間隔是固定的,因此CPU要設(shè)置校正時間間隔的數(shù)值,作為后續(xù)步驟中判斷是否需要進行校正的標準;然后CPU建立一個深度為L的FIFO,用于存儲衛(wèi)星1PPS丟失前一段時間的相位校正量,作為衛(wèi)星1PPS丟失后校正本地1PPS的學(xué)習(xí)統(tǒng)計數(shù)據(jù)源。
步驟502CPU讀取本地1PPS與衛(wèi)星1PPS的相位差ΔΦn。
步驟503CPU判斷是否到達校正時間,如果是,則執(zhí)行步驟504;否則返回執(zhí)行步驟502。
步驟504CPU校正本地1PPS的相位,校正量等于步驟502中所讀取的本地1PPS與衛(wèi)星1PPS的相位差ΔΦn。
本步驟CPU校正本地1PPS信號相位的具體過程是CPU根據(jù)本地1PPS與衛(wèi)星1PPS的相位差計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位與衛(wèi)星1PPS信號的相位相同。
步驟505CPU在FIFO中記錄存儲本次相位校正量ΔΦn。
FIFO按時間先后的順序存放各個相位校正量,時間上較早的相位校正量放在前面,而后來的相位校正量放在后面;在存儲的相位校正量個數(shù)達到其深度L后,此時在放入新來的相位校正量時,F(xiàn)IFO將丟棄最前面的相位校正量。因此FIFO中存儲的是最新的相位校正量。
步驟506CPU判斷衛(wèi)星1PPS信號是否丟失,如果是,則執(zhí)行步驟507;否則,返回執(zhí)行步驟502。
本步驟中CPU通過讀取1PPS丟失檢測模塊的輸出信號來判斷衛(wèi)星1PPS信號是否丟失。
步驟507根據(jù)FIFO中存儲的相位校正量計算下次校正的相位校正量ΔΦ=(ΔΦn+ΔΦn-1+K+ΔΦn-K+1)/K,其中n為FIFO中所記錄的最后一個時間間隔的標號,K為FIFO中時間間隔的個數(shù)。
當系統(tǒng)開始工作不久衛(wèi)星的1PPS信號就丟失時,F(xiàn)IFO中所記錄存儲的校正時間間隔的個數(shù)沒有達到其深度L,即K<L,那么以后的校正時間間隔就通過FIFO中所有的數(shù)值計算出來;當系統(tǒng)已經(jīng)工作一段時間后衛(wèi)星的1PPS信號丟失時,F(xiàn)IFO已經(jīng)記滿,此時校正時間間隔的個數(shù)等于FIFO的深度L,即K=L,則以后校正時間間隔的計算公式變?yōu)棣う担?ΔΦn+ΔΦn-1+K+ΔΦn-L+1)/L。
步驟508判斷是否到達校正時間,如果是,則執(zhí)行步驟509;否則,返回執(zhí)行本步驟。
圖1中本地1PPS信號每秒鐘向CPU送入一個脈沖,因此CPU在本步驟中可以利用這一脈沖進行計時。CPU從本次校正結(jié)束時刻開始,根據(jù)步驟501中設(shè)置的校正時間間隔ΔT進行計時,例如ΔT等于10秒,則CPU接收到10個本地1PPS信號即表示到達校正時間。
步驟509CPU校正本地1PPS的相位,校正量等于ΔΦ。
本步驟中CPU根據(jù)步驟507計算出來的相位校正量計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位與衛(wèi)星1PPS信號的相位保持相同。
實施例3統(tǒng)計每秒平均相差。
本實施例中,系統(tǒng)只記錄最近一次的相位差和校正時間間隔,在衛(wèi)星信號丟失后,CPU根據(jù)統(tǒng)計學(xué)習(xí)每秒的相位校正量ΔΨ,進而計算出校正的時間間隔。
如圖6所示,本實施例包括以下步驟步驟601CPU設(shè)置相位校正門限并建立深度分別為1和2的FIFO1和FIFO2。
由于系統(tǒng)只記錄最近一次的相位差,因此存放相位差的FIFO1的深度只需為1;而最近一次的校正時間間隔要通過衛(wèi)星1PPS丟失之前的最后兩次校正的校正時間相減得出,因此深度為2的FIFO2用來存儲兩個校正時間,以便得到最近一次的校正時間間隔。
步驟602CPU讀取本地1PPS與衛(wèi)星1PPS的相位差ΔΦn。
步驟603判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟604;否則返回執(zhí)行步驟602。
步驟604~606CPU將相位差ΔΦn記錄到FIFO1中之后,對本地1PPS的相位進行校正,同時將校正時間Tn記錄到FIFO2中。
本步驟CPU校正本地1PPS信號相位的具體過程是CPU根據(jù)本地1PPS與衛(wèi)星1PPS的相位差ΔΦn計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位與衛(wèi)星1PPS信號的相位相同。
步驟607判斷衛(wèi)星1PPS信號是否丟失,如果是,則執(zhí)行步驟608;否則返回執(zhí)行步驟602。
步驟608~609CPU首先根據(jù)FIFO中存儲的相位差計算平均每秒鐘的相位校正量,公式為ΔΨ=ΔΦn/(Tn-Tn-1);然后計算校正時間間隔,公式為ΔT=相位校正門限/ΔΨ。
步驟610判斷是否到達校正時間,如果是,則執(zhí)行步驟611,否則,返回執(zhí)行本步驟。
圖1中本地1PPS信號每秒鐘向CPU送入一個脈沖,因此CPU在本步驟中可以利用這一脈沖進行計時。CPU從本次校正結(jié)束時刻開始,根據(jù)計算出來的校正時間間隔ΔT進行計時,并判斷是否到達校正時間。
步驟611CPU校正本地1PPS的相位,校正量為相位校正門限。
本步驟中CPU根據(jù)步驟601中CPU設(shè)置的相位校正門限計算并調(diào)整分頻器的計數(shù)初值,使得本地1PPS信號的相位與衛(wèi)星1PPS信號的相位保持相同。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種提高衛(wèi)星時間同步脈沖保持性能的方法,其特征在于,該方法包括以下步驟A1.CPU設(shè)置相位校正門限并建立先入先出存儲器;B1.CPU根據(jù)校正門限調(diào)整本地秒脈沖的相位;C1.CPU在先入先出存儲器中存儲本次校正與上次校正之間的時間間隔;D1.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E1,否則,返回執(zhí)行步驟B1;E1.CPU根據(jù)存儲的校正時間間隔計算下次校正與本次校正之間的時間間隔,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
2.如權(quán)利要求1所述的方法,其特征在于,所述的步驟B1包括以下步驟B11.CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B12.CPU判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟B13,否則,返回執(zhí)行步驟B11;B13.CPU校正本地秒脈沖的相位,校正量等于相位校正門限。
3.如權(quán)利要求1所述的方法,其特征在于,步驟E1所述CPU計算下次校正與本次校正之間時間間隔的方法為對步驟C1所述先入先出存儲器中的所有校正時間間隔求平均值,該平均值為下次校正與本次校正之間的時間間隔。
4.如權(quán)利要求1所述的方法,其特征在于,步驟E1所述CPU對本地秒脈沖相位校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于相位校正門限,而后返回執(zhí)行步驟D1。
5.一種提高衛(wèi)星時間同步脈沖保持性能的方法,其特征在于,該方法包括以下步驟A2.CPU設(shè)置校正時間間隔并建立先入先出存儲器;B2.CPU根據(jù)本地秒脈沖與衛(wèi)星秒脈沖之間的相位差調(diào)整本地秒脈沖的相位;C2.CPU在先入先出存儲器中記錄并存儲本次相位校正量;D2.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E2,否則,返回執(zhí)行步驟B2;E2.CPU根據(jù)存儲的相位校正量計算下次校正的相位校正量,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
6.如權(quán)利要求5所述的方法,其特征在于,所述的步驟B2包括以下步驟B21CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B22CPU判斷是否到達校正時間,如果是,則執(zhí)行步驟B23,否則,返回執(zhí)行步驟B21;B23CPU校正本地秒脈沖的相位,校正量等于步驟B21中所讀取的相位差。
7.如權(quán)利要求5所述的方法,其特征在于,步驟E2所述CPU計算下次校正的相位校正量的方法為對步驟C2所述先入先出存儲器中的所有相位校正量求平均值,該平均值為下次校正的相位校正量。
8.如權(quán)利要求5所述的方法,其特征在于,步驟E2所述CPU對本地秒脈沖的相位進行校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于步驟E2中計算出來的相位校正量,而后返回執(zhí)行步驟D2。
9.一種提高衛(wèi)星時間同步脈沖保持性能的方法,其特征在于,該方法包括以下步驟A3.CPU設(shè)置相位校正門限并建立第一先入先出存儲器FIFO1和第二先入先出存儲器FIFO2;B3.CPU根據(jù)本地秒脈沖與衛(wèi)星秒脈沖之間的相位差調(diào)整本地秒脈沖的相位,并在第一先入先出存儲器FIFO1中記錄存儲所述相位差;C3.CPU在第二先入先出存儲器FIFO2中記錄并存儲校正時間;D3.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E3,否則,返回執(zhí)行步驟B3;E3.CPU根據(jù)存儲的相位差和校正時間間隔計算下次校正與本次校正之間的時間間隔,并在到達下次校正時間時對本地秒脈沖的相位進行校正。
10.如權(quán)利要求9所述的方法,其特征在于,所述的第一先入先出存儲器FIFO1的深度為1;所述的第二先入先出存儲器FIFO2的深度為2。
11.如權(quán)利要求9或10所述的方法,其特征在于,所述的步驟B3包括以下步驟B31.CPU讀取本地秒脈沖與衛(wèi)星秒脈沖的相位差;B32.CPU判斷相位差是否大于或等于相位校正門限,如果是,則執(zhí)行步驟B33,否則,返回執(zhí)行步驟B31;B33.CPU將相位差記錄到第一先入先出存儲器FIFO1中;B34.CPU校正本地秒脈沖的相位,校正量為步驟B33中的相位差。
12.如權(quán)利要求9或10所述的方法,其特征在于,步驟E3所述CPU計算下次校正與本次校正之間時間間隔的方法為CPU首先將第一先入先出存儲器FIFO1中的相位差除以第二先入先出存儲器FIFO2中最近兩次校正時間的差值,得出平均每秒的相位校正量;然后,將相位校正門限除以平均每秒的相位校正量,得出下次校正與本次校正之間的時間間隔。
13.如權(quán)利要求9或10所述的方法,其特征在于,步驟E3所述對本地秒脈沖的相位進行校正的方法為CPU從本次校正結(jié)束時刻開始計時,當?shù)竭_下次校正時間時,校正本地秒脈沖的相位,校正量等于相位校正門限,而后返回執(zhí)行步驟D3。
全文摘要
本發(fā)明公開了通過固定相位校正量、統(tǒng)計相位校正時間間隔的方式提高衛(wèi)星時間同步脈沖保持性能的方法,該方法包括以下步驟A1.CPU設(shè)置相位校正門限并建立先入先出存儲器;B1.CPU根據(jù)校正門限調(diào)整本地秒脈沖的相位;C1.CPU在先入先出存儲器中記錄并存儲本次校正與上次校正之間的時間間隔;D1.判斷衛(wèi)星的秒脈沖信號是否丟失,如果是,則執(zhí)行步驟E1,否則,返回執(zhí)行步驟B1;E1.CPU計算下次校正與本次校正之間的時間間隔,并在滿足校正條件時對本地秒脈沖的相位進行校正。另外,本發(fā)明還公開了通過固定相位校正間隔、統(tǒng)計相位校正量以及統(tǒng)計每秒平均相差的方式提高衛(wèi)星時間同步脈沖保持性能的方法。
文檔編號H04B7/26GK1752890SQ20041008010
公開日2006年3月29日 申請日期2004年9月23日 優(yōu)先權(quán)日2004年9月23日
發(fā)明者周偉寧, 馬全紅 申請人:華為技術(shù)有限公司