潘 奇,齊共新,岳俊峰
(南京電子技術研究所,南京 210039)
隨著裝備功能和性能提升需求,小型化、多功能、集成化已成為發展趨勢[1]。大型電子系統功能復雜,一般由多個不同體制和功能的設備(如雷達、紅外探測、光學設備等)組成,這些單獨的設備工作于不同的體制,相互之間異步工作。需要工作在統一的基準信息(如時間、方向、速度、角速度、經度、維度等信息)下,才能實現各設備之間的協同工作。
以往的電子系統經常借助于千兆以太網等組網技術,通過下發周期性的以太網報文來實現多個設備間的信息同步[2]。首先,該實現方式常用的UDP等以太網協議因沒有握手機制,無法在協議層避免數據丟失,這會給設備的協同工作帶來不確定性,若在應用層中增加握手和確認機制則會增加傳輸和處理延時,降低系統信息融合的精度;其次,以太網報文的協議解析一般都需要通過CPU實現,需要占用較多的CPU時間,對于同步精度要求較高的電子系統,這些同步信息的下發將會非常頻繁(例如為實現ms級的同步,至少每1 ms就要處理一次網絡報文),這將大大增加CPU的開銷,還會影響該設備協同處理的實時性[3];另外,單純使用下發報文的方式只能滿足同步精度要求較低的電子系統,無法實現各設備間ms級以下的同步需求[4]。
為實現多個不同體制和工作方式的電子系統之間的協同工作,需要設計高可靠的同步設備,提供高精度、低延時、高確定性的同步信息,如時間基準、位置信息及與設備工作相關的各類參數信息,實現電子設備間的微秒級的工作同步,有效發揮整個電子系統的效能。為適應各設備不同的參數和精度需求,該同步設備還需要根據不同的使用場景做到靈活配置,可根據應用需求在線調整輸出信息的內容、頻率等,具備較強的適應性。
如圖1所示,導航分發設備主要由輸入單元、處理單元、FPGA單元、輸出單元四部分組成,具體實現功能如下:

圖1 冗余式導航分發設備功能框圖
1)輸入單元:用于基準導航信息、時間信息、標準秒脈沖信號的輸入,并提供定制化的配置接口;
2)處理單元:用于導航信息的綜合處理,以及導航輸入接口形式的切換等;
3)FPGA單元:用于實現2路FC接口的導航信息分發、FC協議的時間服務、導航信息野值處理與推測等,同時接收標準秒脈沖信號,實現時間的精確同步,并對外提供不同量級的時間基準信號;
4)輸出單元:用于實現導航信息、時間基準信號的輸出。
冗余式導航分發設備用于接收外部輸入的各類同步信號,包括時鐘信號,RS422基準信號,以及通過串口、以太網、FC接口、RocketIO接口等形式提供的數字報文信息,包括導航信息、時碼信息、各類參數信息等。
冗余式導航分發設備通過對輸入的基準導航信息進行綜合處理,通過雙冗余FC接口為各電子系統提供統一的導航信息。通過對輸入的時碼信息進行綜合,基于輸入的秒脈沖100 kHz、1 MHz等時間基準信號進行時間信息處理,產生統一的時間基準信號,時、分、秒、年、月、日等秒及秒以上的信息通過雙冗余FC接口向各電子系統統一發布,根據各電子設備的應用需求,秒以下的精確時間基準信號通過射頻接口、RS422接口等形式提供,根據各設備的內部的對時精度需求,可提供秒脈沖、10 Hz、1 kHz、10 kHz、100 kHz、1 MHz等不同精度的時間基準信號。
冗余式導航分發設備采用高性能處理器和大規模FPGA組合實現導航信息、時間基準信息的融合處理與統一分發功能,通過設計雙冗余嵌入式處理器、雙冗余FC接口等冗余設計架構實現設備的高可用性,支持FC接口、RS422接口、射頻接口等形式的數據與信號分發,送出精確的時間基準信號、導航信息、時碼信息及各類參數信息。
為滿足各設備的不同應用需求,冗余式導航分發設備支持通過標準以太網接口實現設備功能、參數的在線配置,具有很強的靈活性。
本設備可采用FC接口輸入導航信息,并通過雙冗余FC接口進行信息分發,FC即光纖通道(FC,fiber channel) 是美國國家標準委員會( ANSI) 標準,同時具備基于通道的確定性高速傳輸和基于網絡的路由傳輸功能[5]。FC協議適合在實時性要求較高的場合使用,其主要特點如下:
1)帶寬高,光纖通道支持4、8、16、32 Gbps;
2)低延時,交換機端口轉發延時可控制在1 μs以內;
3)確定性傳輸,通過流控機制可實現數據幀不丟失;
4)互聯拓撲多樣,包括點到點、仲裁環以及交換拓撲;
5)可靠性高,可通過FPGA實現,靈活性強,占用資源少,協議解析不需要占用CPU資源,適合應用于嵌入式系統。
冗余式導航分發設備的輸入單元用于可接收外部輸入的各類同步信號。
原始的基準導航信息可通過串口、以太網接口、光口等形式輸入,并通過以太網輸入配置信息,具體的輸入和相關處理方式如下:
1)串口輸入方式:由串口協議轉換模塊[6]實現串口報文向以太網報文的轉換。串口協議轉換模塊主要由標準串口、以太網接口、串口到以太網協議轉換電路組成。串口可支持RS232、RS422、RS485協議,以太網則使用高效率的UDP協議,以太網接口為10/100/1 000 Mbps自適應。串口到以太網的協議轉換由嵌入式控制器實現,對于串口的工作模式(使用協議、波特率、數據位、停止位、校驗)、以太網的IP地址、端口號等可在獲取外部輸入的在線配置信息后,通過更改嵌入式控制器內的配置參數實現,配置方法簡單。轉換后的UDP數據包可通過以太網交換芯片,使用以太網的UDP組播報文,同時送給2個PowerPC處理器。
2)以太網接口(電口)輸入方式:冗余式導航分發設備可對外提供多路10/100/1 000 Mbps自適應以太網接口。基準導航信息通過該接口輸入后,由以太網交換芯片同時分發給2個PowerPC處理器。另外該設備的配置信息也是通過該以太網接口輸入。配置信息可由任何一臺帶有以太網接口的通用計算機提供,采用標準UDP協議實現。這些配置信息可在線輸入到2個PowerPC處理器,實現對本設備的動態配置[7]。
3)以太網接口(光口)輸入方式:輸入單元中的光口可承載1 000 BASE-X光以太網、FC、RocketIO三種協議的數據流,通過對切換電路的控制,實現通道切換。當光口切換為1 000 BASE-X光以太網輸入模式,網絡數據通過以太網交換芯片同時分發給2個PowerPC處理器。
4)FC接口輸入方式:當輸入單元中的光口切換為FC接口的輸入模式,基準導航信息直接輸入到FPGA單元的FC IP核內。數據通過FPGA單元后再送給2個PowerPC處理器。
5)RocketIO接口輸入方式:當輸入單元中的光口切換為RocketIO接口的輸入模式,導航基準導航信息直接輸入到FPGA單元的RocketIO IP核內。RocketIO IP核由FPGA單元的硬件資源實現。數據也是經FPGA單元處理后同時送給2個PowerPC處理器。
冗余式導航分發設備的處理單元設計了2個互為冗余的PowerPC處理器,工作時2個處理器均處于工作狀態,同步對輸入的導航信息、參數信息、在線配置信息等進行處理。
2個處理器用于接收和處理通過以太網或串口,或通過Local Bus總線送來的導航信息、在線配置信息。處理單元內的切換電路,分別通過2個PowerPC處理器的獨立的I/O接口進行控制。根據2個處理器目前的主從狀態,由主處理器根據輸入的在線配置參數判斷通過光口輸入信號的協議格式,將光口對應的輸入信號選擇接入對應的接口:
1)若輸入的是1 000 BASE-X的以太網接口,則將信號接入以太網交換芯片;
2)若輸入的為FC協議的接口,則將信號接入FC IP核;
3)若輸入的為RocketIO接口,則將信號接入RocketIO IP核。
最終通過串口、以太網接口、光口(1 000 BASE-X協議)的數據將進入2個PowerPC處理器進行處理,包括時間信息、位置信息、導航信息及與設備工作相關的各類參數等。
若外部的信息采用FC接口或RocketIO接口,數據將直接進入FC IP核或RocketIO IP核,由FPGA將數據解析后,通過兩個處理器對應的Local Bus IP核,將數據送給2個PowerPC處理器進行處理。
通過外部時統設備輸入的時碼信息可通過串口、以太網、FC接口、RocketIO接口,以通用報文的形式送給冗余式導航分發設備。外部輸入的報文同時交給2個PowerPC處理器進行處理。
外部時統設備送來的時碼信息可通過以太網或串口數據、FC接口、RocketIO接口的形式輸入到冗余式導航分發設備,外部輸入的基準導航信息中包含當前的秒以上的相關時間信息,由年、月、日、時、分、秒組成,為避免外部輸入的時碼出現異常,需要對輸入的時碼信息進行有效性判別,時碼處理功能如圖2所示。

圖2 時碼處理功能框圖
2個互為冗余的PowerPC處理器接收到時碼報文后,首先對報文的數據進行校驗,然后對連續輸入的6組時碼數據進行有效性判別,若6組時碼數據連續有效,則判斷外部的時碼報文有效。同時FPGA內部的定時IP對外部輸入的秒脈沖信號進行有效性檢測,若外部秒脈沖信號連續6次有效,則判斷為外部秒脈沖有效。
為確保秒以上信息與秒脈沖等時間基準信號的同步,若外部的時碼報文和秒脈沖同時出現6次有效,則認為外部時統設備提供的時間信息有效,冗余式導航分發設備將使用外部的時碼數據更新本地的時間信息。
若外部輸入的時碼數據無效,則由PowerPC處理器進行守時處理,將守時單元處理后的時間作為本地時間,并最終通過Local Bus IP核將當前處理后的時間信息送給數據流控制器。
PowerPC處理器守時處理的計數由內部FPGA內部守時IP提供的高精度定時器提供,確保能夠提供精確的秒以下的計數信息。
通過RS422輸入接口或射頻接口輸入的基準秒脈沖信號、基準時間信號、外部中斷信號將輸入到FPGA的定時IP中,據此精確產生秒以下時間,并實時提供給PowerPC處理器,具體的時間處理如圖3所示。在外部秒脈沖異常或外部時碼報文異常的情況下,守時IP通過內部的高精度定時器,依舊能正常輸出秒脈沖等時間基準信號,處理器則根據接收到的內部秒脈沖完成本地秒及秒以上時間的同步更新。

圖3 秒以下時間處理功能框圖
冗余式導航分發設備可為外部電子設備提供秒脈沖、100 kHz,1 MHz等精確時間基準信號,各設備內部可按照守時IP的設計,實現設備內部的精確計時,確保外部各電子設備按照相同的時間基準開展工作。
利用FC的時間同步服務(具體見FIBRE CHANNELFRAMING AND SIGNALING-5,即FC-FS-5協議),通過FC IP核可實現本設備與各設備的時間同步。按照FC的時間同步服務協議,將該設備設置為時間服務器功能,各設備設置為時間服務客戶端[8]。
本設備作為時間服務器周期性產生同步事件,通過時鐘同步原語周期性地向對時設備(客戶端)發送當前的時間信息[9]。對時的周期默認為1 s,可通過網絡實現在線配置。對時設備(客戶端)收到信息后,通過糾正時鐘同步原語的傳輸延時后,更新本地時鐘的相關信息[10]。
本設備的FC IP核在FPGA單元內由硬件實現FC報文的協議解析,實時性高。對于FC的時間服務報文的解析、處理、發送時間服務報文均通過FPGA單元內的硬件實現。各設備根據時鐘同步原語及鏈路傳輸延時對本地時鐘進行同步,設備的時間同步的精確度可達μs級,滿足設備的時間同步精度需求。該時間同步方法簡單,直接利用復用分發導航數據的FC接口即可實現。
導航信息的接收方式與時碼信息相同,系統的橫搖、縱搖、方向、速度、角速度、經度、維度等信息,可通過串口、以太網、FC接口、RocketIO接口,以通用報文的形式送給冗余式導航分發設備,外部輸入的報文接收后,最終交給2個PowerPC處理器進行處理。
在實際工作過程中,通過導航設備采集,并經長距離鏈路傳輸的各類導航信息,受傳感器性能、震動顛震等使用環境、鏈路傳輸等因素的影響,采集并傳輸到導航分發設備的數據有時會存在異常跳變的值,這種由測量設備或傳輸過程產生的嚴重偏離正常值的數據稱為野值,野值的出現將使得用于整個電子系統同步的基準出現偏差,造成系統處理精度下降甚至功能失效。因此,剔除野值是導航信息處理的重要環節。
對于測量數據的野值剔除方法很多,國內對包括對孤立型野值、斑點型野值、連續型野值的剔除都有較多的研究。本時統導航設備采用嵌入式處理器,為滿足導航數據實時處理要求,經反復測試,采用最小二乘估計野值剔除算法[11]進行數據的估值。按照萊特準則判別方法進行野值判別。按照萊特判別準則[12],當數值服從高斯分布時,數值位于其三倍方差[-3δ,3δ]區間內的概率不小于99.7%,即處于此區間外的數值不超過0.3%,萊特準則判別方法也稱為3δ方法。
采用動態野值剔除方法,具體流程如下:
1)利用連續的6個測量數據,采用最小二乘估計獲得第i時刻數據的估值;
2)計算第i時刻數據的標準差δ,得到3 δ方;
3)計算實際測量數據與估值的差異,若超過3 δ則判斷為野值,當前的值用估值來替代。
導航信息包括橫搖、縱搖、方向、速度、角速度、經度、維度等信息,通過在FPGA內部設計野值剔除IP進行硬件加速處理,單個數據的野值剔除可控制在2 μs以內,確保了導航數據處理的實時性。
若外部有2套導航采集設備提供數據,冗余式導航分發設備可根據導航采集設備的置信度,對導航數據進行加權綜合,提高導航數據的精度。
同時,在因通道斷開、導航采集設備故障等異常情況下出現外部導航數據失效問題,可基于運動趨勢對橫搖、縱搖、方向、速度、角速度、經度、維度等信息進行推測,確保在導航基準信息丟失時對外提供導航信息的穩定性和準確性。
導航信息包括橫搖、縱搖、方向、速度、角速度、經度、維度等,另外用于控制各電子設備工作的各類參數信息,也將與導航信息一起封裝成導航報文發送給各電子設備。
根據各電子設備內部導航信息的同步精度需求,導航信息可按照不同的周期,通過雙冗余FC接口發送給各電子設備。
對于精度要求較高的設備,可按照1 kHz或者更高的頻率發送封裝好的導航報文。對于精度要求不高、處理能力較弱的設備,可按照100 Hz、10 Hz等頻率發送導航報文。
通過FC協議的FC-AE-ASM報文格式,以點播或組播形式,通過FC交換單元發送給各電子設備。
在通過雙冗余FC接口發送時,由數據流控制器對兩路FC接口的狀態進行檢測,確保導航數據從工作狀態正常的FC接口送出。
冗余式導航分發設備需要為多個電子設備提供高精度、低延時、確定性的同步信息,其可靠性對于整個系統來說非常關鍵[13]。通過對關鍵處理設備和通道采用冗余設計,確保了該設備的高可靠性,主要體現在如下方面:
1)對于時碼、導航信息的輸入,支持多種基準信息的輸入,該設備可對外部輸入的信息進行有效性判斷,若無效可自動切換使用備份源提供的信息;
2)處理單元采用兩個獨立工作的PowerPC處理器同時對時碼、導航數據進行處理[14],由FPGA內部的數據流控制器選擇使用的數據;
3)兩個PowerPC處理器通過兩個Local Bus IP核;與數據流控制器進行通訊,確保2個處理器的數據能夠同時訪問;
4)該設備最終通過兩路互為冗余的FC接口對外送出導航信息,分別由兩路獨立的FC IP核和兩路獨立的FC接口實現。
冗余功能的具體切換方式如下:
1)輸入源有效性檢測。考慮到時碼、導航信息的重要性,外部的時統設備、導航設備一般會采用冗余設計形式,確保在主設備工作異常時,備份設備能夠正常工作并輸出有效的時碼、導航信息及時間基準信號。
通過對時碼信息有效性的連續檢測,可用于判別時統設備的工作狀態。冗余式導航分發設備將切換使用工作正常的時統設備,并在本地進行統計。
對于導航信息的有效性檢測,則在導航信息的處理環節中實現。通過對橫搖、縱搖、方向、速度、角速度、經度、維度、系統工作參數等各類信息的野值剔除進行統計,對導航采集設備的有效性進行評估,按照參數化的門限值設計,若連續多次出現野值,則將切換使用備份導航采集設備提供的導航信息。
2)PowerPC處理器工作狀態的切換。為確保出現異常時,時統導航處理功能實現快速切換,初始狀態時2個PowerPC處理器均處于同時工作狀態,同步處理和生成導航等數據,但只有第1個處理器通過Local Bus IP核將處理后的數據送給數據流控制器,這樣可確保對外送出的處理后的導航和時碼數據的唯一性[15]。當檢測到第1個PowerPC處理器或其互聯的資源(如網絡、內存、Local Bus接口等)出現故障,將由檢測控制電路對該通道進行切換,選擇將第2個PowerPC處理器處理后的導航數據和時碼數據發送至數據流控制器,并通過BIT信息及時對外上報具體的故障信息。
3)FC輸出通道的切換。為實現對外發布的導航、時碼信息通道的高可靠性設計,冗余式導航分發設備對外提供了2路互為冗余的FC接口,并實現FC通道的冗余設計。FC接口通過兩個獨立的FC IP核實現,數據流控制器內的檢測電路可實時獲取2個FC IP核的狀態,判斷兩路FC IP核是否工作正常、對外互聯的光纜是否正確連接、對應的FC交換機端口是否工作正常,從而決定使用哪一路FC IP核和對應的通道進行導航數據的分發[16]。2路FC端口分別連接到2個互為備份的FC交換單元,確保任意一路FC數據均能正常送給各外部電子設備,如圖4所示。

圖4 雙冗余FC通訊框圖
2個PowerPC處理器、2個FC IP核均具備獨立的狀態檢測和恢復機制,能夠定時檢測本模塊的工作狀態,通過單元復位等方式實現功能的自動恢復,并定時上報更新相關信息。本設備的2個PowerPC處理器能定時收集相關功能模塊的狀態信息,并提供冗余式導航分發設備實時運行狀態的日志和查詢功能。
冗余式導航分發設備的對外提供2路互為冗余的FC接口,以及RS422接口和射頻輸出接口等。
2路FC接口用于按照FC的時間同步服務的方式為外部電子設備提供精確的對時服務,并且根據導航信息的分發要求,按照設置的周期輸出各類導航報文、參數信息。
通過RS422輸出接口、射頻輸出接口分發基準秒脈沖信號、時間基準信號,其中時間基準信號根據需求可設置,頻率從10 Hz~10 MHz可調。利用基準秒脈沖信號、時間基準信號,增加必要的電路,在各設備內部可實現精度更高的時間同步,基本可達到與各設備內部子系統同量級的精確時間同步。
冗余式導航分發設備具有開放式配置接口,可根據實際應用需求實現在線配置,配置通過以太網接口即可完成。配置使用通用的可視化界面,該配置軟件可在普通調試計算機上運行,只需要計算機上配有以太網網卡即可實現。可對本設備的如下信息進行配置:
1)基準導航信息輸入的接口形式、報文內容、與導航相關的各類參數的設置;
2)輸出的綜合導航信息的具體內容、報文格式、輸出頻率等;
3)輸出的時間基準信號的周期、輸出通道;
4)外部輸入導航、時碼信息對應設備的優先級;
5)人工干預當前輸出的導航信息,可任意定制當前輸出的導航信息中的相關字段;
6)系統工作所需的各類參數信息。
當前的配置信息以文件的形式存儲在冗余式導航分發設備內,可根據不同的應用需求存儲定制化的配置信息。
另外,通過在外部計算機上運行的監測界面,可實時查看本設備當前運行的工作狀態、日志信息、當前的導航信息、時碼信息,以及本設備的當前的各類配置信息等[17]。
如圖5所示,一種冗余式導航分發設備在某大型電子系統中完成應用,外部輸入的信息包括:

圖5 應用框圖
1)主/備份導航設備送出的導航報文,包括橫搖、縱搖、方位、速度、角速度、姿態等各種導航參數信息,根據信息更新的頻率,分為10 kHz、1 kHz、100 Hz、10 Hz等多種形式;
2)主/備份時統設備送出的時碼報文,包含時間信息、經度、維度、海拔等信息;并提供的基準秒脈沖、1 MHz、100 kHz等時間基準信號;
3)通過配置終端提供的在線配置信息,以及系統內部工作的實時參數信息。
冗余式導航分發設備對外部輸入的各類導航和時碼報文進行處理,主要包括:
1)對主/備份導航設備、時統設備提供的方位、速度、角速度、姿態、經度、維度、海拔等信息進行綜合處理,包括有效性判斷、野值剔除、數據推算等,確保送出的導航信息的實時性、有效性;
2)對主/備份時統設備提供的時碼信息進行處理,包括時間、秒脈沖有效性的判斷,通過守時功能確保在時碼和秒脈沖丟失的情況下,送出的時碼信息、時間基準信號的精確性;
3)對主/備份時統設備提供秒脈沖、時間基準信號進行處理,實現時間同步功能,并對外提供綜合后的秒脈沖、1 MHz、100 kHz等基準時間信號。各信息系統依據本設備提供的統一的秒脈沖和1 MHz、100 kHz等基準信號,按照圖3的方法,產生內部的精確時間信息,實現與本設備的精確同步;
4)通過本設備提供雙冗余FC接口,本設備作為時鐘服務器,按照FC的時間同步服務,通過在各信息系統內部運行的時鐘服務客戶端,提供精度達μs級的精確對時服務;
5)本設備內部使用2個PowerPC處理器和1個大規模FPGA,實現主要功能和接口的冗余設計。采用雙冗余FC接口,根據各信息系統的精度要求,按照10 kHz、1 kHz、100 Hz等不同的頻率,對外提供各類導航和參數信息。
該導航分發設備通過綜合外部多個同步設備提供的各類時間、導航及參數信息,為大型電子系統內部各不同體制和工作方式的信息系統提供統一的導航、時間和參數信息,實現整個電子系統內部各設備間μs級的時間、導航和參數信息同步。通過后端處理設備的信息融合,有效提高該大型電子系統的精度和效率[18-20]。
本文針對不同功能和體制的設備間的信息同步,提出了一種信息精確同步的方法。通過對外部多個信息源提供的時間、導航及參數信息進行信息綜合處理,為電子系統內的設備提供統一的導航、時間和參數信息,實現整個電子系統內部各設備間μs級的信息同步。通過對輸入/輸出通道、處理器、各功能IP等進行冗余設計,大幅提高了設備的可用度,采用網絡接口實現在線配置,使用靈活、方便。該設備對于已有軍事裝備間的同步處理、信號融合、情報綜合等具有較強的指導意義,對未來裝備的多功能、集成化設計具有重要參考價值。