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