張 瑩,肖練剛,張繼生,田 豐,周 華
(北京航天自動控制研究所,北京 100084)
【信息科學與控制工程】
一種航天光纖總線的交換單元熱備份方法
張 瑩,肖練剛,張繼生,田 豐,周 華
(北京航天自動控制研究所,北京 100084)
為了提高航天應用中交換式光纖總線的可靠性,保證數據的正確實時傳輸,針對在該拓撲結構中處于關鍵節點的交換單元,提出了一種熱備份冗余方法。該方法采用了兩個硬件結構完全相同的交換單元,通過硬件冗余和FPGA的軟件可編程模塊實現故障檢測、故障隔離、通道切換與故障報警等功能。通過Quartus的仿真試驗,驗證了該方法的可行性,具有很強的工程實用價值。
光纖;交換單元;熱備份;高可靠性;冗余
在航天領域中,交換式拓撲結構的光纖總線憑借其高帶寬,質量輕,低延遲,低誤碼率,抗干擾能力強,可連接的設備多等優勢已經得到應用。在該拓撲結構中,處于中心位置的交換單元擔負著單機之間進行數據交換的樞紐任務。交換單元一旦發生故障,將對整個總線系統造成巨大影響。為了保證總線系統穩定運行,保證數據正確實時傳輸,需要提高總線交換單元的可靠性。
提高可靠性需要從兩個方面考慮,即故障預防和故障容錯[1]。故障預防是選擇可靠性高的元器件,在一定程度上抑制故障的產生[1]。故障容錯是指系統在出現一定的運行性故障時,能依靠系統內部的能力保持系統連續正確地執行各個功能[2]。容錯技術的實質是利用冗余思想屏蔽故障,降低系統的失效率。如在總線式拓撲結構的1553B總線中采用的熱備份冗余技術是采用一套完全一樣的鏈路進行備份,主鏈路故障時切換到備用鏈路[3];在交換式拓撲結構的AFDX中采用網絡雙冗余的“熱備份”方式,避免了單一網絡的故障[4]。
目前交換式拓撲結構的光纖總線還沒有使用冗余熱備份,本文針對其進行了交換單元的冗余熱備份設計,該設計主要采用了兩個硬件結構完全相同的交換單元來實現故障檢測,故障隔離,通道切換與故障報警等功能。
1.1 交換單元熱備份系統的主要概念
交換單元的熱備份系統屬于一種集群[5],集群是指一組相互獨立的節點在網絡中表現為單一的系統,并以單一的形式進行管理。這些節點擁有一個共同的名字和任務,節點之間可以協調管理,屏蔽故障。具有高擴展性,高可用性,高性能,高性價比等優點。
交換單元的熱備份系統又是一個簡單的并聯系統。A/B通道都正常時屬于雙冗余狀態,A/B通道只有一個工作時屬于單通道狀態。A/B通道都故障時系統崩潰。
1.2 熱備份系統的可靠性分析
因為熱備系統為簡單并聯系統,可用Kaufman A等提出的組合模型[6]來分析系統的可靠度。系統正常工作有3種情況:① 兩個交換單元節點都工作正常。②A交換單元工作正常,B有故障并且能夠被監測定位。③B交換單元工作正常,A有故障并且能夠被監測定位。系統的可靠性為
R(t)=R1(t)R2(t)+R1(t)(1-R2(t))C2+
R2(t)(1-R1(t))C1
(1)
其中:R1(t)、C1分別表示交換單元A的可靠度、故障覆蓋率;R2(t)、C2分別表示交換單元B的可靠度、故障覆蓋率。
若A/B的可靠度和故障覆蓋率完全一樣,R1(t)=R2(t)=Rm(t)且當C1=C2=1時,式(1)化為
R(t)=1-(1-Rm(t))2
(2)
假設一個交換單元節點的可靠度為
Rm(t)=exp(-1.238×103t)
(3)
則系統可靠度化為
Rm(t)=1-(1-exp(-1.238×103t))
(4)
雙冗余系統和無冗余系統的可靠性曲線如圖1所示。如此可見雙冗余熱備份系統大大提高了系統的可靠性。
該系統的架構如圖2所示。系統由兩個獨立的硬件結構完全相同的節點組成。主備同時接受外部數據,又同時不斷更新本節點和對方節點的狀態,進行狀態的監督和判斷。在主交換單元硬件或者軟件發生故障時,能夠及時檢測定位,并能自動實時切換成備用交換單元,保證整個總線的數據傳輸不中斷,繼續完成正常的任務要求。
主備交換單元之間有專門的通信通道,是輔助兩個通道的冗余配置,保證整個總線系統的正常工作。通過該通道可實現主/備的角色確認、切換及狀態和數據同步等。

圖2 系統的體系結構
2.1 交換單元的硬件結構方案
節點的硬件結構參與實現主備的切換控制,每個節點包括以下3個部分:
1) AVAGO的光電模塊AFBR57R5APZ,光電模塊實現光電轉換功能,此光電模塊采用850 nm波長的短波,可以實現全雙工的數據收發。
2) TI的串并轉換芯片TLK3132。該芯片進行串并/并串轉換,同時實現8B/10B編解碼。
3) ALTERA的FPGA芯片EPC4CGX50DF27I7,FPGA是實現交換和冗余功能的主要芯片。其中除了FPGA主備之間的數據通信,狀態指示(主備角色指示信號和心跳信號),實時切換模塊外,剩余的模塊是完全獨立的。
2.2 交換單元的FPGA邏輯設計要點
實現主備切換主要有以下4點設計原則:
1) 主/備交換單元確認:上電時,通過讀取板上Flash里存儲的諸元數據進行主備角色的確認;諸元數據可由外部發送指令幀進行裝訂。
2) 主/備交換單元數據同步:交換單元收到的數據分為兩種情況處理。如果主備交換單元只對外部收到的數據進行轉發,則主備同時接收,主交換單元進行轉發的處理,備用交換單元不做任何輸出,數據的同步是由外部來統一觸發。如果對于收到的數據進行處理并能產生新的數據,則主備之間進行有用新數據的通信,保證主備數據狀態的一致性。
3) 主/備交換單元切換(故障屏蔽):主備交換單元切換的條件分為軟件故障,硬件故障,手動切換。具體的故障判據包括主交換單元軟件運行發生嚴重故障無法通信,硬件出現電壓異常,監控軟件無響應或者監控的數據發生嚴重偏差,主備之間通信異常認定主單元故障。
4) 故障檢測:故障種類繁雜,從光纖協議模型層面上把故障分為3類。物理層存在由硬件問題引發的掉電、檢測不到光信號等故障;編碼層存在出現持續亂碼或者無碼狀態等故障;協議層存在持續握手失敗,登陸失敗等故障。這些軟硬件的故障可以通過CRC效驗,算術邏輯運算,看門狗,心跳檢測,異常中斷,環路法等方式進行檢測。
熱備份的實現主要體現在FPGA的模塊設計上,主要包括初始化模塊,數據收發模塊,主備狀態指示模塊,故障監控模塊,數據同步模塊,切換控制模塊等。結構如圖3所示。

圖3 FPGA模塊框圖
3.1 雙冗余系統的主備單元正常工作流程
主單元的工作流程如圖4所示:在初始化后,先進行鏈路握手,握手完畢后進行幀登錄,由此完成整個鏈路的連接;隨后讀取主備指示模塊確定本身為主模塊,進行幀接收、處理及轉發;工作中一旦發生故障切換警告則進行通道切換。
備用單元的工作流程與主單元的區別僅在于其不進行數據幀的轉發。
3.2 實現熱備份冗余管理的重要過程
3.2.1 主備單元指示過程
主備指示模塊要對主備信號進行檢測和處理并實時確定主備狀態和切換狀態。根據故障信息的綜合,確定通道的有效性,并監視對方的有效性,與通道切換模塊共同完成切換任務。主備指示具體的工作流程如圖5所示。

圖4 主單元工作流程

圖5 主備指示流程
3.2.2 故障檢測過程
故障檢測模塊需要對總線數據狀態、主備間數據通信狀態、主備角色指示狀態、對端心跳信號進行實時監控,判斷和處理。通常采用CRC效驗碼,故障保險,安全失效邏輯等方法。在發生故障時協同切換模塊、主備指示模塊進行主備切換。故障檢測的具體分類如圖6所示。
3.2.3 主備切換控制過程
根據主備狀態指示模塊和故障檢測模塊發來的消息進行主備單元切換的判定。不同的故障類型,其判定條件有所差異,具體切換流程如圖7所示。
本研究的設計仿真平臺采用的是Altera公司的FPGA/CPLD開發工具Quartus 8.0版本。驗證主單元故障時能夠及時切換變為備用單元。

圖6 故障分類

圖7 主備切換流程
4.1 典型故障類型具體設計
為了驗證主備的切換,針對一種典型的故障類型即主單元誤碼率過高進行主備切換。
local_cnt_out置高時代表此單元為主交換單元。
當幀開始發送后(frame_trans_beg有一個脈沖),等待一段時間收到的回復幀為拒接幀(rjt_received)。當主單元系統判斷收到的拒接幀超過一定數量,認定主單元誤碼率過高,進行切換告警(shift_alert置高)。
4.2 仿真實驗
故障仿真圖如圖8,在12.96 μs左右,主單元系統判定拒收幀達到上限,認定誤碼率過高有故障,進行切換告警(shift_alert置高),從而開始進行主備切換。
在仿真圖9中,對兩個交換單元接收和轉發的數據進行采集。在開始的一段時間內,冗余交換單元轉發的數據(reveive_frame)是交換單元a接收的數據(rt_a_frame)。在13.0 μs左右,log_a置高,表明交換單元a完全退登錄,冗余交換單元轉發的數據是交換單元b接收的數據(rt_b_frame),此時主備切換完成。整個網絡結構正常工作,實現了主備切換功能。
仿真的時鐘周期定為20 ns。對比仿真圖8、圖9,從開始切換到切換結束,只占用了3個時鐘周期,切換時間屬于ns級,表明切換具有快速性。

圖8 主單元誤碼故障仿真圖

圖9 兩個交換單元接收和轉發的數據采集
分析了航天光纖總線的一種交換單元熱備份冗余的設計思路和關鍵技術,利用軟硬件實現了交換單元的高可靠性,為未來航天總線的高可靠性提供了一種簡單可行的方案。
[1] 郝順義.一種多模冗余結構存儲器系統的容錯設計與研究[J].計算機測量與控制,2009,17(1):190-194.
[2] AVIZIENNIS A.Fault tolerant systerm[C].IEEE Trans.Computers,1976:56-60.
[3] 賓辰忠.基于1553B總線的實時消息流實現與控制[J].計算機測量與控制,2005,13(9):967-969.
[4] 楊峰.AFDX網絡技術綜述[J].電子技術應用,2016,42(4):4-6,19.
[5] 史文路.雙機熱備份系統的研究與設計[D].南京:南京工業大學,2006.
[6] KAUFMAN A.Mathematic Models for the Study of the Reliability of Systems[M].Academic Press Jnc,1977.
[7] ANSI INCITS.Fiber Channel Fabric Generic Requirements (FC-FG)[Z].1996.
[8] 邱毅.一種交換式光纖總線系統監控方法研究[J].兵器裝備工程學報,2016,37(2):53-57.
[9] 李小云,胡之惠.基于熱備份的主備倒換在高端路由器中的應用[J].現代電子技術,2005(11):71-72,76.
[10]程新明.一種二模冗余計算機的設計與實現[J].空軍雷達學院學報,2001,15(3):42-45.
[11]韓衛東.程控交換單元原理和維護[M].北京:電子工業出版社,1998.
(責任編輯楊繼森)
A Exchange-Unit Hot-Backup Design Method f the Fiber Optic Bus in Spacecraft
ZHANG Ying, XIAO Lian-gang, ZHANG Ji-sheng, TIAN Feng, ZHOU Hua
(Beijing Aerospace Automatic Control Institute, Beijing 100084, China)
In order to improve the high reliability of the switching fiber bus in aerospace applications, and to ensure the correct real-time transmission of data, in this paper, a kind of hot backup redundancy method was proposed, which is based on the exchange unit of the key nodes.The method used two same switching nodes in hardware structures. And through the hardware redundancy and software programmable software modules of FPGA, we achieved fault detection, fault isolation and channel switching and fault alarm and other functions. The feasibility of the method was verified by the simulation experiment of Quartus, which is of great practical value.
fiber; switch; hot-backup; high-reliability; redundancy
2016-08-27;
2016-09-25
總裝共用技術基金“運載火箭多元異構自主組合控制系統技術”(9140A201003)
張瑩(1991—),女,碩士研究生,主要從事導航制導與控制研究。
10.11809/scbgxb2017.01.025
張瑩,肖練剛,張繼生,等.一種航天光纖總線的交換單元熱備份方法[J].兵器裝備工程學報,2017(1):106-109.
format:ZHANG Ying, XIAO Lian-gang, ZHANG Ji-sheng, et al.A Exchange-Unit Hot-Backup Design Method of the Fiber Optic Bus in Spacecraft[J].Journal of Ordnance Equipment Engineering,2017(1):106-109.
TJ768.3
A