段沛沛 王鋒茂
(1.西安石油大學 西安 710065;
2.深圳市磊科實業有限公司 西安 710075)
在可靠性要求比較高的系統中,一般都會采用雙主控冗余備份的方式工作,當其中一張主控板故障時,可自動切換到另一張主控板進行工作。為了實現自動切換,需要定義一套嚴格的機制,使只有處于活動的主控板才對系統享有完全的控制權,備用的主控板實時監視活動主控板的狀態,并備份活動主控板的實時數據,一旦活動主控板發生故障,備用主控板可以立即轉變為活動狀態,并基于實時備份的狀態繼續運行。本設計基于看門狗的動態監控原理,再利用RS觸發器的互鎖機制,使一個系統中的兩個主控板首先競爭系統控制權,競爭成功的主控板進入活動狀態,競爭失敗的主控板則進入備用狀態。并且,如果活動態的主控板無法維持其狀態時,系統的控制權會自動轉移到備用的主控板上。
主控板采用統一化的設計,雙機倒換功能主要由主處理器模塊、雙機模塊和單板管理模塊完成,各模塊之間的關系如圖1所示。兩種主控板之間的接口主要有ACT互控總線、IIC管理總線和實時備份總線,ACT互控總線為三態輸出,信號包括ACTin#和ACTout#,均為低電平有效,ACTin#信號均在單板接口出上拉,如果對方主控板不存在或是斷電時,可保證該信號為無效的高電平。IIC管理基于IIC總線,主處理器為IIC主設備,每個單板的IIC管理模塊為IIC從設備,IIC總線由ACT#信號控制,只有處于活動狀態的主控板才有權利控制各單板的IIC管理模塊。實時備份總線基于高速以太網,主備之間大量的動態數據通過該總線傳輸。

圖1 應用動態雙機倒換的主控板
主處理器模塊實現本板狀態機的切換與運行,該模塊由IIC管理模塊送出的PORST#信號進行復位,當主處理器復位后,首先應當禁用看門狗復位(WDEN=1)。ACT#為有效的低電平時,標識本板處于活動狀態,并由ACT#信號控制打開IIC管理總線以及主控板其他對系統的管理接口,該主控板才能對系統實施管理。另外,主控板需要定期的更新WDI信號,以保持雙機模塊的狀態。
IIC管理模塊用于主控板單板,該模塊接收活動的主控板發出的命令并執行,在雙機倒換機制中,該模塊主要用于主處理器模塊的復位處理。IIC模塊接受3種復位源,分別來自雙機模塊的WDRST#、MRRST#和IIC總線的復位命令,任意條件滿足時,IIC管理模塊都會向主處理器模塊發出復位操作。
雙機模塊本板的監測以及和對方主控板進行交互、實現雙機監測和切換,雙機模塊會監測WDI信號,如果在設定周期內沒有正常收到WDI信號,雙機模塊會在WDRST#信號上輸出低電平和ACTout#信號上輸出高電平。當WDI恢復時,WDRST#信號上會立即恢復高電平,但只有ACTin#為高電平時,在ACTout#信號才能輸出低電平。而且優先進入活動狀態的主控板需要維持自己的活動狀態,一旦該板無法維持其活動狀態,將會觸發雙機模塊重新仲裁。
雙機模塊由看門狗電路和與非門構成,看門狗電路實現對主處理模塊的故障檢測,監測結果WDO和ACTin#信號送到一個與非門的輸入端。與非門的輸出便為ACTout#,ACTout#信號連接到另一張主控板ACTin#,兩張主控板的ACTout#信號和ACTin#信號在背板上交叉連接,組成一個RS觸發器,如圖2所示。主控板啟動完成后,會啟用自己的看門狗系統,看門狗電路的輸出WDO信號才能變為高電平,RS觸發器可以鎖定其輸出狀態,能保證只有先啟動起來的主控板處于活動狀態,后啟動的主控板無論如何也無法改變RS觸發器的輸出狀態,除非活動的主控板故障,無法繼續維持WDO狀態。

圖2 動態雙機模塊實現方式
雙機模塊是雙機切換的關鍵部分,負責兩種主控板的狀態仲裁,仲裁遵循優先原則,即先啟動的主控板優先進入活動狀態,后啟動的主控板只能進入備用狀態,并且不得影響正在正常運行的主控板。
主控板有4種狀態,分別是斷電態、啟動態、活動態和備用態,它們之間的關系和切換條件如圖3所示。
只有當主控板需要拔板或出現嚴重故障時,才會處于斷電態。當主控板插入時,主控板默認為自動加電并進入啟動態,該狀態用于主處理機初始化,由于啟動態處于不穩定期,所以主處理機加電后應當暫時禁止看門狗,待正常啟動后,主處理機開始執行喂狗操作,并使能看門狗。當雙機模塊收到主處理機的喂狗信號后,便開始與對方主控板的雙機模塊競爭活動狀態,如果對方此時處于非活動態(ACTin=1),則雙機模塊就可以將自身的輸出ACTout#置為有效,并標識本板處于活動狀態(ACT=0)。如果對方主控板已經處于活動態,則雙機模塊將無法將自身置為活動態,所以本板只能處于備用態(ACT=1)。主處理機根據ACT信號的狀態,決定自己進入活動態或備用態。

圖3 主控板狀態機
主控板的各種運行狀態及處理方式有:
A.由啟動態到活動態
當系統中只存在一張主控板時,或者另一張主控板也處于非活動態,本板的ACTin#信號就會被置為無效,所以只要主控板完成啟動后,必然會轉到活動態。
B.由啟動態到備用態
主控板要進入備用態,另一張主控板必須為活動狀態,本板的ACTin#信號由于被置為有效,所以只要主控板完成啟動后,只能轉到備用態。
C.活動態和備用態之間切換
除非活動的主控板自己放棄其活動態,才能轉到備用態,備用的主控板才能轉為活動態,主控板自己放棄活動態的可能原因有:
a.自身故障被動放棄;
b.手動切換主動放棄。
當自身故障無法維持雙機模塊狀態時,主控板將會被看門狗強行復位,備用的雙機模塊將會因此而競爭到活動狀態,備用的主控板也會升級為活動態。
手動切換命令只能發生在活動的主控板上,主處理器可以通過暫停喂狗的方式觸發雙機模塊重新仲裁,如果備用主控板狀態正常,將會因此而競爭到活動態,當原活動的主控板重新恢復看門狗狀態后,將無法再次競爭到活動態。但如果備用主控板的狀態不正常,所以也無法切換,當活動的主控板重新恢復看門狗狀態后,將繼續競爭到活動態,本次手動切換也將失敗。
本文描述的基于看門狗電路的動態雙機切換機制,該設計具有電路簡單實用,可靠性高,成本低等優點,并能有效解決死鎖問題。較傳統的靜態觸發機制,有明顯的優勢,尤其可為大型刀片式的電信設備提供高可靠性保證,能夠有效降低光傳輸、城域網交換以及工業控制等領域的設計成本,并加快研發進度。
[1]康寧公司.創新解決方案加速中國FTTH建設[J].通訊世界,2011(06).
[2]沈成彬,趙煥東,蔣銘,王波.EPON設備互通性研究[J].電信科學,2006,(1):59 -63.
[3]鄒超,楊慶豐.我國ADSL與FTTH的組網方式及成本要素[J].西安交通大學學報(社會科學版),2008,28(1):41 -43.
[4]李莉,吳重慶.寬帶接入網的接入技術及應用探討[J].華北電力技術,1999(12).
[5]毛飛磊.城市光網與維護[J].大眾科技,2011(03),21 -24.