邵忠俊 營旭東 秦嶺 劉巍 潘宇波



【摘要】? ? 面對各種重要工作領域提出的要求,如航空航天、銀行及電廠所要求的高安全行業,都對使用到的電子系統提出了更高的安全性要求。容錯計算機的出現,進一步取代雙機熱備產品,出現在了高安全領域,從此掀開了高安全性電子設備的新篇章。設計一種高可靠的容錯計算機,可應用于如航空航天、列車、銀行及電廠所要求的高安全行業。
【關鍵詞】? ? 雙機熱備? ? 冗余? ? 容錯
一、結構冗余設計
1.1硬件結構冗余
該計算機從系統架構上采用2乘2取2結構,兩個計算機系同時運行,一個擁有控制權,另一個只有監視權,在I端計算機系故障的情況下,II端計算機系取得控制權;兩端的計算機系內各包含兩個通道,分別為命令通道(A通道)和監控通道(B通道)兩個通道。兩個通道具有相同的硬件設計,采集相同的數據,運行相同的軟件。通道內處理器模塊通過局部CPCI總線訪問接口模塊。兩個通道之間可通過CCDL或者以太網進行通信,雙余度設計分別對兩路輸入信號和運算結果進行同步比較,只有兩個運算結果一致時,該計算機系才會輸出,否則控制權交由另一結構與之相同的計算機系輸出結果,本機則馬上發出報警信號并輸出安全態。
1.2 軟件結構冗余
命令通道(A通道)和監控通道(B通道)的軟件系統結構框圖1如下所示。
二、信息同步設計
基于信息冗余思想,采用軟件為主,軟/硬結合的雙握手同步算法實現通道間的同步,兩次同步的處理過程,能夠確保計算機系內兩通道工作流程的同步性,而兩通道數據的一致性則通過數據同步流程實現,即兩通道間處理器板在每一次數據交換時,增加周期幀信息,以此來保證系統失步后能在相同的周期內與另一通道重新同步。
本案中兩臺計算機的同步設計可采用信號燈同步和數據同步方式相互結合的方式。其中信號燈同步:兩臺計算機通過相互交叉點亮和熄滅對方的信號燈實現同步,也就是“置位”和“復位”特定的信號存儲單元。該方式能夠做到任務周期的同步,是應用最廣泛的同步技術,也叫“信號握手”(見圖2);數據同步:在數據幀傳輸時,通過增加同步幀達到同步目的。該方式能夠解決系統失步后的重新同步問題。
計算機系內的兩個通道通過信號燈同步(包含初始同步和周期同步)和數據同步的方式實現任務同步。采用以軟件為主,軟/硬結合的雙握手同步算法實現通道間的同步。
計算機同步的過程是在系統同步程序的管理下,結合硬件定時器,通過信號燈,完成通道間的同步。此信號燈同步方式通過軟件對計算機系內兩通道同步故障檢測板內部相應寄存器進行“置位”和“復位”操作并比較結果實現。
初始同步:系統完成初始化、上電自檢后,進入周期任務之前,計算機系的A、B通道要進行初始同步,初始同步的兩次握手最大等待時限為2秒。該過程要清零看門狗計時器。當初始同步失敗后,軟件不再執行周期任務,在故障寄存器中記錄初始同步故障,并交出系統的控制權。
周期同步:在每個工作周期開始時,A、B通道要進行同步握手,其最大允許等待時間為200微秒;在讀取輸入數據和對方計算結果后,要比較同步幀的一致性。周期同步過程不清零看門狗計時器。如果兩個通道的周期同步失敗,給周期同步失敗計數器加1,并重新啟動任務周期,若連續10次均同步失敗,將不再執行周期任務,在故障寄存器中記錄周期同步故障,并交出系統的控制權。
以上兩種同步的方式區別在于初始同步解決兩機同步啟動問題,兩次握手最大等待時限為2秒;周期同步解決應用任務的同步問題,最大允許等待時間為200微秒,故障寄存器記錄10次故障后報錯。重復次數和等待時間為設計經驗參考值(下同),可根據用戶需求調整。
數據同步是指兩通道間處理器板在每一次數據交換時,增加同步幀信息,以此來保證系統失步后能在相同的周期內與另一通道重新同步。當發生數據同步錯誤時,可采用以下兩種方式處理數據同步后的失步問題:1、強制將同步幀號中較大的同步幀號改為兩者中較小的同步幀號,同時,數據同步錯誤計數器加1,任務繼續向下進行。2、數據幀中較大的周期幀通道等待較小的周期幀通道指令,等待3個周期仍失敗時,數據同步錯誤計數器加1,并重新啟動任務周期。若同步連續10次均失敗,將不再執行周期任務,在故障寄存器中記錄數據同步故障,并交出系統的控制權,同步流程圖見圖2。兩種同步幀失步后的處理方式可根據用戶需求修改。
三、容錯算法決策與安全態輸出
產品的硬件冗余結構與其軟件冗余結構相互配合,保證系統能夠高可靠性工作。然而,這種高可靠性對輸入信號或產品本身是極為“敏感”的,這種“敏感”極易造成產品輸出出現瞬態錯誤現象。為了消除這種高可靠性引起的“敏感”特性,產品在各計算機系中的安全輸出板,增加了一種軟件“容錯技術”,進一步增加產品的可靠性。
經計算機同步的兩通道數據通過各自CPCI總線分別進入可編程邏輯模塊中的CCQI及CCQII邏輯中,當CCQI及CCQII接收到對應通道的周期幀及有效數據后,接收數據標志信息位由‘0變為‘1,表示本邏輯已收到數據;當接收數據標志信息位都發生變化后,開始對比兩有效數據的周期幀信息,若兩者相同,則說明兩組數據是同一時刻數據;當已經判斷數據沒有丟失的情況下,在CPU輸出數據比較寄存器中,對兩通道數據進行比較,若比較一致,說明兩通道數據相同,CPU數據比較錯誤計數器減1;若比較不一致時,說明本系有故障,CPU數據比較錯誤計數器加1,當該計數器超過8時,輸出導向安全態,從而實現容錯策略。
兩臺計算機系輸出控制權的切換由三個信號決定:外部給定的控制權、I端計算機系的故障情況和II端計算機系的故障情況。如果I端、II端計算機系都沒有故障,則由外部設定控制權,確定計算機系輸出(主控)端;如果I端、II端計算機系中有一個故障另一個正常,那么無論外部控制權在哪端計算機,系統都由無故障的計算機系輸出,當主控計算機系故障時,系統要馬上給出報警信號。
控制權計算部分根據兩個通道的通道故障邏輯輸入、另一個和控制權外部輸入決定本控制器是否允許輸出,并將該信號提供給安全輸出板。
通道故障邏輯的輸入為離散量,為提高可靠性,采用兩位編碼,bit1.0=10,表示邏輯0,bit1.0=01,表示邏輯1。
下表1是控制權切換邏輯的真值表。
四、結束語
1、系統采用2取2安全計算機結構,為系統的高可靠性要求,提供了必要的硬件基礎平臺;
2、計算機系內的兩個通道通過信號燈同步和數據同步的方式實現任務同步。采用以軟件為主,軟/硬結合的雙握手同步算法實現通道間的同步,增強了對采樣數據對比的有效性;
3、安全輸出板對有效數據再一次進行有效性比較;再一次確保有效數據的有效性;同時,針對偶發故障進行了一種容錯邏輯處理,確保設備在允許范圍內,不由于自身或外界的某些影響而產生不必要的輸出切換或報警;
4、當出現系統故障后,安全輸出板立刻將輸出導向“安全態”,保證受控設備時時處于可控、安全狀態。
參? 考? 文? 獻
[1]容錯控制系統的分析與綜合[M]. 浙江大學出版社 , 葛建華,孫優賢著, 1994.
[2]控制系統的故障診斷和容錯控制[M]. 機械工業出版社 , 聞新等著, 1998.
[3]王德軍、故障診斷與容錯控制方法研究[D].吉林大學,2004.