基于FPGA的IRIG-B編碼器實現
摘要:旨在設計一款基于FPGA的IRIG-B時間系統。該系統采用FPGA作為控制器,GPS引擎M12T作為標準時鐘源,利用M12T輸出的100 pps信號觸發IRIG-B編碼模塊,完成DC碼編碼。在DC碼的基礎上,通過正弦查找表實現了IRIG-B交流碼的數字調制,同時設計調制輸出電路。采用VHDL語言進行全數字設計,所有功能都由硬邏輯實現,保證了B碼信號邊沿的準確;帶預進位功能的計時鏈,保證了B碼絕對時間精準。軟件仿真和示波器觀測以及現場運行表明,系統設計達到了預期目標,定時精確可靠。
關鍵詞:授時碼;IRIG-B;數字調制;GPS
我國靶場測量、工業控制、電力系統測量與保護、計算、通信、氣象等測試設備均采用國際標準IRIG-B格式的時間碼(簡稱B碼)作為時間同步標準。B碼是一種串行的時間格式.分為直流碼(DC碼)和交流碼(AC碼)兩種,其格式和碼元定時在文獻中有詳細描述。本文介紹一種基于FPGA并執行IRIG-B標準的AC/DC編碼技術,與基于MCU或者DSP和數字邏輯電路實現的編碼方法相比,該技術可以大大降低系統的設計難度,降低成本,提高B碼的精確性和系統靈活性。
在此,組合GPS引擎和FPGA,得到B碼的編碼輸出,直接采用GPS引擎的100 pps信號觸發輸出B碼的每個碼元,利用從100 pps中恢復的1 pps信號提供B碼的時間參考點。DC編碼和AC數字調制均由純硬件邏輯通過查找表實現,它能使每個碼元的上升沿都非常精準,都可以作為百分秒的時間參考點。而計時鏈的預進位功能則保證了絕對時間的精確,不僅可以滿足實時系統對時間同步,還可以實現多節點的數據采集嚴格同步,為分析和度量異步發生的事件提供有力的支持。
1 IRIG-B編碼格式
IRIG標準規定的B格式碼如圖1所示,每秒鐘發1次,每次100個碼元,包含1個同步參考點(P,脈沖的上升沿)和10個索引標記。碼元寬度為10 ms,用高電平寬度為8 ms的脈沖表示索引標記,用寬度為5 ms的脈沖表示邏輯1,用寬度為2 ms的脈沖表示邏輯0。
如圖1所示,交流碼的載波是1 kHz正弦信號,幅度變化峰-峰值范圍為0.5~1 0 V。調制比為U1/U0=1/6~1/2,即邏輯1是5個幅度為U1的1 kHz正弦信號。邏輯0是2個幅度為己U1的1 kHz正弦信號,索引標記是8個幅度為U1的1 kHz正弦信號,其他時間是幅度為U0的1 kHz正弦信號。
評論