郭 京,朱曉峰,李雙明
(中國人民解放軍92941部隊第110所,遼寧 葫蘆島 125001)
基于FPGA的自適應解調器設計
郭 京,朱曉峰,李雙明
(中國人民解放軍92941部隊第110所,遼寧 葫蘆島 125001)
IRIG-B(AC)碼廣泛應用于航天測控系統的遠距離時間同步,由于在傳輸過程中信號易受干擾且存在路徑傳輸時延,因此采用IRIG-B(AC)碼實現時間同步其精度往往較差。為滿足遠距離高精度時間同步要求,針對IRIG-B(AC)碼同步誤差較大問題,提出一種基于FPGA的數字化解調方法。該方法采用全數字化軟件設計,具備相位自動判別功能,針對不同調制比和不同輸入幅值的IRIG-B(AC)碼,能夠實現快速自適應解調譯碼。測試結果表明,該方法抗干擾能力強,工作穩定可靠,使IRIG-B(AC)碼的時間同步精度得到極大提升,甚至優于1 μs。
IRIG-B(AC);現場可編程門陣列;相位識別;時間同步
現代時間同步技術主要包括短波授時[1]、長波授時[2]、衛星授時[3]、IRIG-B碼授時[4]、NTP授時[5]和PTP授時[6]等多種時間同步方法。短波授時由于信號不穩定、易受干擾、信號衰落明顯、噪聲大,其應用受到較大限制;長波授時抗干擾性強、信號穩定、傳輸距離遠,但授時精度較差[7];衛星授時應用較為廣泛,主要包括GPS、北斗和GLONASS三個衛星系統,按照工作方式又可分為衛星單向授時[8]、衛星共視比對[9]和衛星雙向比對授時[10]等;NTP授時主要應用于網絡時間同步,授時精度僅在ms級[11];PTP授時具備路徑時延修正功能,可實現亞μs級的時間同步精度[12];IRIG-B碼作為目前國際通用的一種標準時間同步碼型應用最為廣泛[13],特別在通信、電力、金融、控制、測量以及航天軍工等領域,其時間同步均采用IRIG-B碼授時技術為整個系統提供統一的時間基準。IRIG-B碼主要包括IRIG-B(DC)碼和IRIG-B(AC)碼2種(以下簡稱B(DC)碼和B(AC)碼)[14]。B(DC)碼同步精度高,可實現ns級的時間同步誤差[15],但傳輸距離短,適用于系統內設備的時間同步;B(AC)碼同步精度相對較差,但可以通過時延補償的方式進行修正,相比B(DC)碼,其優勢在于更適合遠距離信號傳輸。在現代靶場中,由于各參試站點比較分散,為實現總站和各分站之間的時間同步,主要采用B(AC)碼實現整個系統的時間同步。文獻[14,16]采用模擬方法從B(AC)信號中提取1 pps信號,其解調器同步精度能達到10 μs,但不支持相位自適應功能。本文采用數字化解調方法實現B(AC)碼的時間同步,利用雙極性解調法完成正弦波信號的極性自動識別,并通過相位補償和誤碼修正技術提高B(AC)碼的時間同步精度和工作可靠性。
IRIG-B碼包含100個碼元,每個碼元的寬度均為10 ms。B(DC)碼采用BCD編碼表示秒、分、時、天和年等時間信息,每個脈沖的前沿為碼元的準時點。時間編碼采用脈寬調制進行編碼,位置標示位P0、P1…P9以及基準碼元Pr均為脈寬8 ms的碼元,脈寬為2 ms的碼元表示二進制數“0”,脈寬為5 ms的碼元表示二進制數“1”[17]。B(AC)碼則是對B(DC)碼進行1 kHz載波調制后的交流碼信號,低幅值正弦信號表示低電平,高幅值正弦信號表示高電平。B(DC)碼的每個碼元和B(AC)碼的對應關系如圖1所示。

圖1 B(AC)碼調制信號
B(AC)碼雖然常用于遠距離傳輸,但經過長距離的信道傳輸后,其信號幅度經常受到削弱,且可能引入較大的環境噪聲,甚至會發生信號畸變,產生誤碼。傳統的B(AC)碼解調解碼設備,自適應能力比較差,鎖定性能差對信號幅度和信噪比要求較高,難以提供高可靠和高精度的基準時間信息。此外,現代靶場為實現快速機動性,配置了很多移動車載站,設備更換新站點后需要重新連接總站提供的B(AC)碼信號,可能會出現B(AC)碼輸入接反的情況,造成輸入信號相位反向180°,雖然時碼終端設備仍然可以正常解碼,但時間同步誤差會達到500 μs以上,導致系統同步時間精度變差,因此對時間統一系統提出了B(AC)碼解調器需具備相位識別功能[17]。
2.1 總體設計
系統由隔離變壓器、低通濾波器、AD轉換器、FPGA、DA轉換器、運放、光電耦合器和接口電路等組成,如圖2所示。B(AC)碼通過隔離變壓器和低通濾波器完成輸入信號的隔離和濾波,利用AD轉換器實現模擬量信號采集,再由FPGA進行采集數據的處理,實現B(AC)碼的解調譯碼,從中提取出精確時間信息,生成1 PPS、B(DC)及其他基準時間信號,再通過輸出光耦隔離以及接口電路輸出B(DC)碼。調制器能夠利用DA轉換器將生成的PWM信號調制成1 kHz交流信號,并根據高、低電平控制輸出正弦信號的幅值高低,從而獲得調制比為10∶3的B(AC)碼信號輸出。

圖2 系統組成結構
由于B(AC)碼在遠距離傳輸過程中容易受到干擾,經常會發生波形畸變,如何消除引入的信號干擾、解決波形畸變帶來的解調誤碼問題是系統設計的關鍵。同時還需要具備信號消抖技術,準確提取穩定的1 PPS秒信息,實現B(AC)碼相位自動識別和相位補償功能,能夠滿足正向和反向B(AC)碼均可自適應解調譯碼。從如圖2中也可看出,系統設計的主要功能均需在FPGA軟件實現。
2.2 FPGA軟件設計
FPGA軟件設計是解調器的核心設計部分,采用了Verilog HDL語言實現軟件編程,主要包括:解調器、譯碼器、誤碼判別、時延修正、鎖定判決和時間信號發生器等功能模塊。
解調器主要功能是將B(AC)碼轉化為B(DC)碼,包含過零檢測、邏輯判決、相位識別和相位補償等4個子模塊,如圖3所示。采集到的B(AC)碼信息送入FPGA后,一路通過正向過零檢測器,另一路通過反向過零檢測器,在每個正弦周期內均可提取出一個正向過零點和一個反向過零點,信號過零點包含了關鍵的秒信號起始時刻點等基準時間信息。過零點信息結合邏輯判決器即可將B(AC)碼解調,轉變為B(DC)碼。

圖3 解調器工作原理

(1)

采用雙極性判別法實現對正向和反向輸入B(AC)碼的自動識別,通過相位識別器自動完成極性判別并解調出正確的B(DC)碼,如圖4所示。

圖4 雙極性解調示意
從正向解調和反向解調的波形圖可以看出,相位超前半個正弦周期的信號為正確的B(DC)碼。由于低通濾波器、AD轉換器以及FPGA軟件處理模塊會導致輸入B(AC)碼的相位延遲,因此需要利用相位補償器進行時延補償。譯碼器從解調的B(DC)碼提取出年、天、時、分、秒以及1 PPS等時間信息。
B(AC)碼信號在傳輸過程中會因波形出現畸變導致解調誤碼產生,因此需要對接收的信號進行誤碼判別,將前一幀接收到的時間加1 s后和當前幀接收的時間進行比較,如果相等則認為當前幀正確,否則判斷該幀為誤碼。如發現誤碼,則判定信號失鎖;如連續3幀時間正確,則可判斷信號鎖定,同時將當前時間加1 s作為譯碼器下一秒輸出的時間信息。時延修正用于對B(AC)碼遠距離傳輸所產生的路徑時延進行補償。時統產生器則將得到的BCD時間碼生成各種基準時間信息輸出,并在外輸入信號斷開或失鎖時,能夠自動進入守時工作狀態。時統產生器主要由外時統、內時統、時間選擇器以及基準時間信號產生器組成。當處于鎖定狀態時,時統產生器以外時統作為時間源;當失鎖時,時統產生器以內時統作為時間源;失鎖時,內時統會以外時統最后一次有效時間作為起始時間,每秒自動進行加1 s處理,確保輸出時間信號的連續性和準確性。系統軟件流程圖如圖5所示。

圖5 軟件流程
常溫25 ℃、濕度42%、傳輸線纜長度2 m的情況下,經過測試,正向和反向B(AC)碼均能正確解碼,時間同步精度優于1 μs,B(AC)碼同步精度測試結果如表1所示。

表1 B(AC)碼同步精度
從表1中可以看出,正向B(AC)碼和反向B(AC)碼的時間同步精度有差異,這主要是由于信號的零點漂移導致正向過零點和反向過零點采樣誤差造成。此外,低幅值信號的時間同步精度較差,則是因為小信號達到過零點判決門限需要的時間更長,致使實際提取的過零點信號相對于大幅值信號提取的過零點相位偏移較大,從而導致時間同步精度變差,如圖6所示。

圖6 正弦信號過零點提取
該方法具備相位自動判別功能,能夠自適應正向和反向的B(AC)碼信號,解調精度可實現小于1 μs,相比文獻[5-6]的B(AC)同步指標提高了10倍,遠優于國內同類產品。相比采用比較器法提取過零點和全波整形實現相位自適應的模擬處理方法,本文方法更靈活、方便,可靠性更高,而且減少了硬件設計復雜度,降低了成本。
本文提出的基于FPGA的數字化B(AC)碼解調設計能夠實現精確時間同步,其技術指標已處于國內領先水平,可極大地提高航天測控系統的時間同步精度。實際應用結果表明,設備工作穩定可靠、抗干擾能力強,對于遠距離傳輸且具有波形畸變的B(AC)碼能夠正確解碼。系統中采用的AD轉換器為ADS805E[16],采樣速率僅有5 MHz,且并未調整輸入信號的零點漂移,后續研究可在以上兩方面進行改進,能夠進一步提高B(AC)碼同步精度。
[1] 蒙智謀.BPM短波時碼授時發播技術方案[J].時間頻率學報,2014,37(3):145-150.
[2] 魏孝鋒,車愛霞,喬建武,等.光纖傳輸高精度時頻信號在長波授時中的應用[J].時間頻率學報,2015,38(2):95-100.
[3] 龔小維.基于北斗二號/GPS授時的靶場時間統一系統設計[D].南京:南京理工大學,2013.
[4] 李群續,張滬玲,李冠宇.岸船衛星雙向對時應用系統IRIG-B碼設計[J].無線電工程,2010,40(2):42-43.
[5] 毛瀛洲.NTP網絡授時系統設計與實現[D].濟南:山東大學,2008.
[6] IEEE1588-2008.IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems[S].
[7] 李瑞敏.長波授時附加二次相位因子ASF時延修正的研究[D].西安:中國科學院國家授時中心,2012.
[8] 張立新,楊文強.單項衛星授時體制及精度分析[J].空間電子技術,2001(3):1-3.
[9] 趙當麗,胡水軍,翟慧生,等.基于衛星共視技術的電網時間同步[J].電力科學與技術學報,2011,26(3):20-24.
[10] 孟凡芹.基于星地雙向時間比對的衛星鐘差確定方法[D].西安:中國科學院國家授時中心,2013.
[11] 黃沛芳.基于NTP的高精度時間同步系統實現[J].電子技術應用,2009,35(7):122-127.
[12] 李洪亮.基于PTP協議的高精度網絡時間同步系統的設計與實現[D].天津:天津大學,2012.
[13] 童寶潤.時間統一系統[M].北京:國防工業出版社,2004.
[14] 陳 濤,曹永剛.IRIG-B碼數字解調技術[J].光學精密工程,1999,7(2):73-75.
[15] 林習良,唐曉春.基于SDH的IRIG-B(DC)碼時間信號傳輸方案設計[J].無線電工程,2005,35(6):32-34.
[16] 佟 剛,崔 明,曹永剛,等.MSP430F149在IRIG-B碼解碼中的應用[J].計算機測量與控制,2007,15(11):1 597-1 598.
[17] GJB2991A-2008.B時間碼接口終端通用規范[S].
Design of Adaptive Demodulator for IRIG-B(AC)Code Based on FPGA
GUO Jing,ZHU Xiao-feng,LI Shuang-ming
(The110thInstituteofUnit92941,PLA,HuludaoLiaoning125001,China)
IRIG-B(AC)code is widely used in aerospace measurement and control systems for long-distance time synchronization.However,due to the signal interference and transmission delay during the process of transmission,the accuracy of time synchronization realized by IRIG-B(AC)code is quite low.In order to meet the requirement for long-distance high accuracy time synchronization,and considering the synchronization error of IRIG-B(AC)code,a novel digital demodulation method based on FPGA software is proposed.This method adopts an all-digital software design with an automatic phase discrimination function.According to the different modulation ratios and input amplitudes of IRIG-B(AC)codes,the method can realize fast adaptive demodulation and decoding.The test results show that this method has a strong anti-interference capability and operates stably and reliably.With the function of this method,the time synchronization accuracy of IRIG-B(AC)code is greatly improved,even better than 1 μs.
IRIG-B(AC);FPGA;phase identification;time synchronization
2017-02-28
10.3969/j.issn.1003-3106.2017.06.19
郭 京,朱曉峰,李雙明.基于FPGA的自適應解調器設計[J].無線電工程,2017,47(6):79-82.[GUO Jing,ZHU Xiaofeng,LI Shuangming.Design of Adaptive Demodulator for IRIG-B(AC)Code Based on FPGA[J].Radio Engineering,2017,47(6):79-82.]
V249
A
1003-3106(2017)06-0079-04
郭 京 男,(1975—),碩士,高級工程師。主要研究方向:測控及水面靶標總體。
朱曉峰 男,(1981—),工程師。主要研究方向:測控及水面靶標總體。