基于FPGA的IRIG-B編碼器實現(xiàn)
4.2.4 交流調(diào)制方法
把按照第4.2.1節(jié)方法生成的正弦查找表生成Altera mif文件,再例化一個M4K ROM,使用上述文件作為ROM的初始化文件。建立一個周期為10μs的定時器和一個地址計數(shù)器。地址計數(shù)器和定時器在B碼直流信號的變化沿復(fù)位,定時器溢出后啟動地址計數(shù)器?;蛘甙堰壿?對應(yīng)的查找表放在ROM的上半部,如果把邏輯1對應(yīng)的查找表放在ROM的下半部,且輸入的直流B碼信號作為地址的高位,則此時刻對應(yīng)的ROM輸出即為DAC的調(diào)制輸出,ROM查找表VHDL的代碼實現(xiàn)如下:本文引用地址:http://butianyuan.cn/article/163206.htm
其中:B為來自編碼器中IRIG-B的直流編碼;AQC為地址計數(shù)器;ddata為輸出到DAC的數(shù)字調(diào)制輸出。由于查找表是按照對正弦信號做100次等間隔采樣形成的,交流載波為1 kHz。所以AQC每隔10μs自加1,順序輸出100個編碼值,在B碼的每個變化邊沿復(fù)位。
按上述方法設(shè)計的數(shù)字調(diào)制模塊,用示波器測得輸出波形如圖5所示。
圖5中,通道1(從上至下第一個信號)為M12T輸出的100pps信號PPM12;通道2(從上至下第三個信號)為IRIG-B的直流編碼輸出信號;通道3(從上至下第二個脈沖)為從PPM12信號中恢復(fù)的每秒脈沖數(shù)信號;通道4(最下面的波形)為IRIG-B編碼的交流輸出波形。圖5中示波器的觸發(fā)點即為B碼參考點Pr。
4.3 IRIG-B編碼輸出
4.3.1 直流碼輸出
為了保證輸出信號的邊沿和抗干擾,將第4.1節(jié)得到的TTL電平B碼信號和秒脈沖經(jīng)高速光耦隔離,輸出電路如圖6所示。
圖6中,輸入信號IRIG-B為第4.1節(jié)所述FPGA編碼模塊輸出的直流編碼信號;pps為FPGA從M12T的100 pps信號中恢復(fù)的秒脈沖信號;D350和D351實現(xiàn)了TTL/RS485的電平轉(zhuǎn)換。
4.3.2 模擬調(diào)制電壓輸出
IRIG-B編碼的交流碼輸出電路如圖6所示。將第4.2.3節(jié)所述數(shù)字調(diào)制信號通過DAC接口輸出到MAX5712上進行D/A轉(zhuǎn)換,經(jīng)過AD8601濾除高次諧波后,再用電容耦合到由晶體管Q301構(gòu)成的電壓放大器中,然后經(jīng)600∶600的隔離變壓器輸出。
5 結(jié) 語
利用FPGA和M12T授時型GPS內(nèi)核構(gòu)成的IRIG-B編碼模塊采用M12T的100 pps信號觸發(fā)IRIG-B編碼器,使得編碼輸出的每個碼元上升沿均與GPS模塊嚴格一致,每個碼元間隔嚴格相等,而且每個碼元的上升沿均可作為同步參考點。利用FPGA的并發(fā)處理能力,使得系統(tǒng)實時性好。本文介紹的基于查找表的B碼編碼方法和通過查找表的數(shù)字調(diào)制方法具有占用資源小,設(shè)計簡單,調(diào)制輸出高次諧波小,信號邊沿穩(wěn)定等特點。
經(jīng)過軟件仿真和系統(tǒng)測試。本文實現(xiàn)的B碼編碼器中DC碼參考點Pr和M12T GPS模塊的pps參考點的時間誤差小于20 ns。與絕對時間參考點之間的誤差小于40 ns,AC碼與DC碼之間的延遲為100 ns。利用上述方法實現(xiàn)的模塊已經(jīng)成功地應(yīng)用在我公司的通信管理機和同步時間服務(wù)器中,現(xiàn)場運行結(jié)果穩(wěn)定、準確、可靠。
評論