《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > FPGA實現IRIG-B(DC)碼編碼和解碼的設計
FPGA實現IRIG-B(DC)碼編碼和解碼的設計
吳 煒 周 燁 黃子強
摘要: 為達到IRIG-B碼與時間信號輸入、輸出的精確同步,采用現代化靶場的IRIG-B碼編碼和解碼的原理,從工程的角度出發,提出了使用現場可編程門陣列(FPGA)來實現IRIG-B碼編碼和解碼的設計方案和體系結構,設計中會涉及到幾個不同的時鐘頻率,FPGA對時鐘的同步性具有靈活性、效率高、且功耗低??垢蓴_性好的特點。結果表明,FPGA能夠確保為從設備提供同源的時鐘基準,使時鐘與信號的延遲控制在200ns以內,從而得到了IRIG-B碼與時間精確同步的效果。
Abstract:
Key words :

     IRIG (Inter Range Instrumentation Group)起源于軍隊靶場的時間同步,靶場中的時間系統為衛星或航天器發射、常規武器試驗、測控系統提供標準時間。IBIG-B時間碼(簡稱B碼)就是由IRIG所屬的TCG(Telecommunication Group)制訂的一種串行時間碼,被廣泛應用于時間信息傳輸系統中。在實際的應用中,根據距離B碼發生器的遠近及不同時間精度的要求,B碼在實際傳輸中采用了兩種碼型AC碼(交流碼)和DC碼(直流碼)。當傳輸距離比較遠時采用AC碼,當傳輸距離近時則采用DC碼。在本文中只涉及DC碼。
    FPGA為時碼技術、時統設備的研制與開發注入了新的生機,為整個系統內的從設備分配相干的工作時鐘,從而確保從設備具有同源相干的時鐘基準。系統時鐘送出時間信號,FPGA對接收到的時間信號進行編制,并且生成與GPS輸出信號1 pps精確同步的B碼信號。而解碼系統是FPGA對B碼格式信號進行解調,產生出所需的絕對時間和各種控制信號,提供給測量設備。對時統設備進行高度集成,實現時統設備大規模、高速度、低成本、低開發費用、設計周期短、電路簡單、易于調試和可靠性高的目標,是時統設備發展的必然趨勢。

1 IRIG-B碼格式與原理
    IRIG-B碼的時幀周期是1 s,包含100個碼元,每個碼元周期為10ms,即B碼的碼元速率為100 pps。B碼有3種碼元,位置識別標志P,二進制“1”和“0”,脈寬分別為8ms、5ms和2 ms。位置識別標志P0的前沿在幀參考點前一個索引計數間隔處,以后每10個碼元有一個位置識別標志,分別為P1、P2、……、p9、P0,PR為幀參考點。脈沖信號如圖1所示。


    一個時間格式幀從幀參考標志開始,由相鄰兩個幀參考標志之間的碼元組成,每個時幀的準時為該時幀參考標志的前沿。如果連續出現兩個8 ms的位置識別標志,則該時幀的開始是位于第2個8ms的位置識別標志前沿。
    IRIG-B碼中第1個字段(PR~P1)傳送的是秒信息,第2個字段(P1~P2)傳送的是分信息,第3個字段(P2~P3)傳送的是時信息,第4、5個字段(P3~P5)傳送的是天數信息,即從1月1日開始計算的年積日,所以在第5個字段結束后時間信號已經解析并保存在寄存器中。另外,在第8個字和第10個字中分別有3位表示上站和分站的特標控制碼元。不僅包含豐富的時間信息,也包含必要的控制信息和監測信息,方便后端用戶進行使用。
    FPGA對B碼的編碼和解碼時根據其格式和原理使用計數器和狀態機來實現,其中會涉及到多個時鐘信號,這些時鐘信號都是由FPGA外部晶振40 MHz的時鐘分頻而來。編碼時鐘為5 MHz;解碼的時鐘有10 kHz、10 MHz,同時會輸出時間信號,即天、時、分、秒信號。

2 IRIG-B碼編碼
   
時間模塊由CPU進行處理,提取系統的時間信號,即秒信號sec_bcd[7..0],分信號min_bcd[7..0],時信號hour_bcd[6..0],天信號day_bcd[10..0],為FPGA的輸入信號,這些輸入信號都是并行信號,并且是BCD碼。GPS模塊為編碼系統提供1 pps信號上升沿,即秒同步信號,也作為FPGA的輸入信號。IRIG-B碼編碼的寄存器傳輸級(RTL)視圖如圖2所示。


    圖2中,FPGA對IRIG-B碼的編碼主要由兩個模塊構成,一個為時鐘分頻模塊,另一個為數據處理模塊。系統的晶振時鐘為40 MHz,通過分頻,采用5 MHz的時鐘,所以此處的誤差最大為200ns。當GPS產生1個pps_in信號后,時間信號同時進入FPGA。為了產生的IRIG-B碼和GPS產生的pps_in信號精確同步,所以IRIG-B碼的準時位置應對準GPS模塊發出的1 pps信號上升沿。B碼編碼的狀態機流程圖如圖3所示。


    FPGA完成這個時刻的B碼編碼后,會立即不斷地搜索下一個pps_in的上升沿,GPS模塊每秒都會觸發pps_in的上升沿,一旦發現pps_in上升沿,馬上進入下一秒的編碼。這樣編程的好處是B碼大致上可以與1 pps同步,延遲少且方便測試。FPGA對IRIG-B碼秒信號的編碼仿真波形如圖4所示。


    如上圖所示,第1行信號是40 MHz的晶振時鐘;第2行信號是輸入信號pps_in;第3行信號是復位信號,低電平有效;第4行信號是分頻后的時鐘信號5 MHz;第5行是輸入秒信號,此時秒信號sec bcd[7..0]為8位二進制數10001000;最后一行信號是B碼的編碼信號。當pps_in上升沿到來時,FPGA對B碼在5 MHz時鐘的上升沿處立即產生高電平,首先是B碼輸出位置識別標志Pr(高電平8 ms,低電平2 ms),接著8位二進制的秒信號從低位至高位輸出,實現計數器計數編碼,放大波形可以知道,此時B碼與pps_in有100 ns的滯后,100ns的延遲對時序同步影響很小,可以忽略不計。然后FPGA根據狀態機的狀態運行,直到下一個pps_in上升沿來臨。

3 IRIG-B碼解碼
   
解碼部分的設計采用兩個時鐘來處理,晶振的時鐘為40 MHz,通過分頻,可以得到一個是10 kHz的時鐘,和一個10 MHz的時鐘。先采用10 kHz的時鐘,當連續監測到2個脈寬為8 ms的位置標示信號時,啟動1個計時器,當計時器計時到990 ms時,產生1個使能信號EN,這個信號是傳遞給高頻時鐘的監測使能信號。接著計時器清零,等待下一次監測到連續2個脈寬為8 ms的信號出現時,計時器重新開始計時。
    如果只采用高頻時鐘的話,要監測2個脈寬為8 ms的信號與計時將會非常浪費邏輯資源。所以在前一部分的監測與計時用低頻時鐘進行;在準時對應的上升沿來臨前2 ms為高頻時鐘部分提供1個使能信號;高頻時鐘處理部分接收到此使能信號EN后再監測B碼的PR的上升沿,當監測到PR為高電平后,發出1個脈沖1 pps。經過這樣的處理,就能精確的提取出1 pps信號以及與1 pps精確同步的10 MHz脈沖信號。1 pps對時信號的提取如圖5所示。


    當檢測到P5時,時間信號已經檢測出來,這些時間信號都放在相應的寄存器(都是BCD碼的并行信號)中,當有使能信號EN時,此時將已經檢測出的時間信號加1 s,并在輸出1 pps信號的同時輸出時間信號,這樣就保證了時間的準確性,也是用10 MHz的時鐘同步,然后將時間信號在監測到2個脈寬為8 ms的位置標示信號時清零。FPGA對IRIG-B碼的解碼仿真如圖6所示。


    如上圖,當第3行的信號使能信號EN觸發1個上升電平時,時間信號會在此時加上1 s。原先解碼出來的時間信號秒、分、時、天信號為sec_out[7..0]、min_out[7..0]、hour_out[6..0]、day_out [10..0],加1 s后的時間信號放在寄存器sec_final[7..0]、min_final[7..0]、hour_final[6..0]、day_final[10..0]中,已經將它們化為十進制數,根據B碼的格式,它們的第4位均為無效信號,即sec_out[4]、min_ out[4]、hour_out[4]、day_out[4]、sec_final[4]、min_final[4]、hour_final[4]、day_final[4]都是無效信號。
    當使能信號EN有效時,即在FPGA處理時間信號加1 s的過程中,當原先的秒信號sec_out寄存器為59 s時,加1 s后,輸出的sec_final寄存器使其秒清零,并且在分信號寄存器加一。同理適用于分、時、天信號,它們都有一個上限,分信號的上限同樣是59時信號的上限是23,而天信號的上限是365或366,需要進行判斷后得出,一旦超過了各自信號的上限,輸出寄存器就會自動清零,同時進位加一。
    由圖6可以知道,寄存器sec_out的值為十六進制數45,使能信號EN有效后,即加上1 s后,sec_final的值為十六進制數46,因為其第4位無效,所以秒時間為26,最后解碼出來的時間是145天11時41分26秒。這些時間信號存在FPGA的寄存器中,當1 pps輸出時,它們會隨10 MHz的時鐘頻率同步輸出到外部總線上,外部總線接受到時間信號實現時間同步,去校準從設備的實時時間,實現了FPGA對IRIG-B的解碼。

4 結論
   
隨著通信技術和通信媒體的發展,如何解決時統信號在不同媒體中的傳輸,對靶場時間統一系統提出了更高的要求。
    本設計中用到CycloneEP1C6Q240C8芯片,并且使用modelsim實現功能和時序仿真。實踐證明,通過FPGA完成了對IRIG-B碼的編、解碼設計,能夠實現與系統時鐘信號的精確同步,當GPS送入pps_in信號時,FPGA進行編碼,輸出的IRIG-B碼暫時保存在FPGA的存儲器中,當需要為外部設備提供精確的對時時鐘時,FPGA進行解碼操作,輸出同步脈沖信號1pps和時間信號,從而去校準從設備的實時時間,使設備具有精度高的同步的時鐘基準,獲得精確且同步的控制效果,便于對從設備進行遠程管理和監測。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日本乱人伦免费播放 | 中文国产成人精品久久无广告 | 国产午夜视频在线观看第四页 | 在线观看中文字幕一区 | 在线一本| 波多野结衣免费一区二区三区香蕉 | 久久免费成人 | 成年黄网站色视频免费观看 | 黄色毛片免费看 | 一级特黄a 大片免费 | 亚洲 午夜在线一区 | 久久厕所精品国产精品亚洲 | 国产伦一区二区三区高清 | 亚洲国产成人久久综合一区 | 中国一及黄色片 | 主播蜜汁丝袜 精品自拍 | 中国黄色一级大片 | 精品在线免费观看视频 | 暗香影院午夜片 | 成人超污免费网站在线看 | 一级做a爰片性色毛片16美国 | 超人碰碰碰人人成碰人 | 大黄免费 | 免费看黄视频在线观看 | 在线看片黄 | 午夜成私人影院在线观看 | 成人午夜视频免费看欧美 | 中文无码日韩欧 | 黄污视频在线 | 综合 欧美 国产 视频二区 | 国产亚洲精品自在久久77 | 日本欧美一区二区三区在线 | 欧日韩一区二区三区 | 91短视频testflight | 久操视频在线观看免费 | 日韩成人国产精品视频 | 妇欲欢公爽公妇高h欲 | 免费视频精品一区二区 | 久久九九精品一区二区 | 国产专区在线播放 | 免费黄色网址网站 |