王 悉 馬連川 袁彬彬
(1.北京交通大學電子信息工程學院 北京 100044;2.軌道交通運行控制系統(tǒng)國家工程研究中心 北京 100044)
安全計算機平臺在軌道交通、石油、天然氣、化工、電力等工業(yè)控制領域以及武器裝備、核電、航空、航天等領域廣泛應用。
軌道交通包括城際軌道交通和城市軌道交通,城際軌道交通主要指鐵路,而城市軌道交通則主要指地鐵、輕軌等。對于軌道交通信號控制系統(tǒng)而言,一旦擁有安全計算機平臺,不同的僅僅是重新編寫或修改、移植應用軟件,對于硬件的修改很少或沒有,從而避免了每個不同的應用必須經(jīng)歷重新開發(fā)硬件、軟件的過程。
近年來,隨著中國列車運行控制系統(tǒng)(CTCS)的推廣使用,國內(nèi)的信號設備科研單位與廠商開發(fā)了諸如車站列控中心、軌道電路、機車信號等設備,也引進生產(chǎn)了車載安全計算機平臺(EVC)、微機聯(lián)鎖、無線閉塞中心(RBC)等設備,但由于種種原因還沒有研發(fā)出獨立、通用且通過安全評估的安全計算機平臺產(chǎn)品。目前,城市軌道基于通信的列車控制(CBTC)系統(tǒng)中大部分的車載ATP設備(VOBC)、聯(lián)鎖、區(qū)域控制器(ZC)和數(shù)據(jù)存儲單元(DSU)中的安全計算機平臺為直接引進國外廠商的成熟產(chǎn)品。
國外的許多信號設備廠商都有自己的安全計算機平臺產(chǎn)品,如西門子公司的SIMIS平臺,泰雷茲公司(原阿爾卡特公司)的TAS平臺,阿爾斯通公司和安薩爾多公司的3取2平臺,日立公司、日信公司和京三公司的2取2乘2平臺,龐巴迪公司、通用電氣、阿爾斯通公司的編碼微處理器平臺等。
在軌道交通信號控制系統(tǒng)中,安全計算機平臺為各廠商的核心技術,從技術、商業(yè)方面考慮,國外公司不可能轉(zhuǎn)讓安全計算機平臺等核心技術。以西門子公司為例,其SIMIS安全計算機平臺,最早從20世紀70年代使用Intel 8080開發(fā),到目前發(fā)展針對不同應用的系列型號,已經(jīng)歷40年,不可能全盤托出、轉(zhuǎn)讓出去。
筆者在研發(fā)自主知識產(chǎn)權的CBTC系統(tǒng)時,決定要突破這一技術壁壘,研發(fā)獨立、通用且通過安全評估的安全計算機平臺產(chǎn)品。
綜合國外安全計算機平臺的發(fā)展趨勢,其結構特點主要表現(xiàn)如下:
1)安全計算機平臺的結構并沒有大的改變,仍然是編碼微處理器、2取2、2取2乘2、3取2這幾種結構;
2)商用貨架產(chǎn)品(COTS)硬件和軟件廣泛應用,不再堅持使用專用安全元器件和芯片;
3)任務同步方式逐漸增多,與時鐘同步方式同時使用;
4)安全計算機平臺和應用分離。
因此,筆者研發(fā)安全計算機平臺的原則如下:
1)與CBTC應用的開發(fā)平行進行,既滿足應用對性能的要求,又能在“獨立、通用”指標上突破;
2)安全計算機平臺必須符合IEC 61508和EN 50129、EN 50128等標準,以通過國外安全評估機構的安全評估為目標;
3)使用COTS硬件和軟件開發(fā)。
2取2乘2安全計算機平臺采用分層設計方法,將系統(tǒng)分為容錯和安全管理層、應用處理層和數(shù)據(jù)通信層3個層次結構。容錯和安全管理層采用冗余硬件設計方法,包括2個容錯和安全管理單元(FTSM),每個容錯和安全管理單元獨立控制2取2應用處理層的2個應用處理機,并與其構成2取2乘2系統(tǒng)的一個通道。數(shù)據(jù)通信層包括2臺通信機,完成數(shù)據(jù)轉(zhuǎn)發(fā)的功能。兩臺處理機相互獨立工作,構成冗余的配置結構,為2取2乘2安全計算機平臺的兩系共同使用。2取2乘2安全計算機平臺的分層架構設計如圖1所示。

圖1 2取2乘2安全計算機平臺分層架構
在分層結構的2取2乘2系統(tǒng)中,數(shù)據(jù)通信層的通信機和應用處理層的應用處理機采用x86架構的COTS工控機來實現(xiàn),容錯和安全管理層指揮數(shù)據(jù)通信層和應用處理層各處理器工作,完成時鐘控制、模式管理、故障檢測和故障導向安全功能,是整個系統(tǒng)安全可靠運行的“裁判”,因此它的安全完善度等級應高于2取2雙機。為了保證其可信且安全,容錯和安全管理單元采用純硬件電路的方式來實現(xiàn),硬件邏輯結構可以采用2取2,3取2或其他多模冗余結構。
2取2乘2系統(tǒng)中的2取2冗余處理器可以工作于時鐘級和任務級2種同步方式。由于采用了COTS工控機作為2取2結構的主處理器,因此任務級同步是最合適的方案。在任務級同步模式下,2取2雙機構成松散耦合冗余結構,由于存在同步容差,對共模錯誤抑制能力高。對于任務級同步的2取2結構而言,可以證明不存在可糾正同步誤差的雙機同步算法,這是由雙機不可能判斷誰對誰錯的邏輯二難特性所決定的。所以,任務級同步需要有可信且安全的“第三方”來進行監(jiān)督,通過和2取2雙機軟件配合實現(xiàn)任務級同步。在該系統(tǒng)中,由容錯和安全管理單元作為“第三方”為2取2結構中的應用處理機提供同步脈沖,并監(jiān)督同步狀態(tài)。
對于周期運行的控制系統(tǒng),通常的方式是在周期開始或結束處進行同步,考慮軌道交通控制系統(tǒng)是安全完善度等級很高的安全苛求系統(tǒng),對雙機失步后系統(tǒng)的故障反應時間有很高要求。如果僅在周期開始或結束處設置同步檢查點,很難達到控制精度和故障反應時間的要求。因此將工作周期分解為若干微周期,2取2雙機接收到本系容錯和安全管理單元發(fā)送的同步脈沖后同時開始工作,在每個微周期的末尾設置同步檢查點,若容錯和安全管理單元在規(guī)定時間內(nèi)收不到來自2取2雙機的同步應答信息,或雙機之間的應答間隔過大,都會判斷為失步。在這種方式下,微周期設置越密集,控制精度越高,故障反應速度也越快。考慮系統(tǒng)的復雜性與周期控制的特點,可優(yōu)選將控制周期分為數(shù)據(jù)輸入、應用處理和數(shù)據(jù)輸出3個典型階段的方式,在每個階段設置一個同步點。基于微周期的同步機制如圖2所示。

圖2 基于微周期的同步機制
2取2乘2安全計算機平臺的工作狀態(tài)和模式由容錯和安全管理單元來進行管理。根據(jù)整個系統(tǒng)的工作狀態(tài)不同,分為“工作”狀態(tài)和“非工作”狀態(tài)。“工作”狀態(tài)包括“主”和“備”兩種模式?!胺枪ぷ鳌睜顟B(tài)包括“上電”、“故障”、“同步”和“維護”4種模式。容錯和安全管理單元監(jiān)控應用處理機的工作狀態(tài),并向應用處理機發(fā)送模式碼來通知工作模式。同時,容錯和安全管理單元通過自鎖/互鎖邏輯來實現(xiàn)兩系間工作模式的協(xié)調(diào)和管理,避免兩個通道間互相進行判斷時出現(xiàn)“雙主”或者“雙備”的狀態(tài),保證安全、可靠地實現(xiàn)“主”“備”通道狀態(tài)切換。狀態(tài)轉(zhuǎn)移如圖3所示。

圖3 狀態(tài)轉(zhuǎn)移
2.3.1 軟件表決和硬件監(jiān)督的數(shù)據(jù)表決機制
為了對2取2雙機軟件在周期運行中的狀態(tài)進行監(jiān)督,需要對2取2雙機的輸入數(shù)據(jù),輸出數(shù)據(jù)和中間運行狀態(tài)等信息進行表決,保證雙機運行狀態(tài)的一致性。2取2雙機間通過內(nèi)網(wǎng)進行數(shù)據(jù)交換,各自對數(shù)據(jù)進行表決,將表決結果發(fā)送給容錯和安全管理單元。容錯和安全管理單元收到表決結果后,采用硬件表決機制對結果進行判斷,只有雙機的表決結果完全一致,才會認為表決成功;否則命令2取2雙機停止工作,轉(zhuǎn)入故障安全狀態(tài)。采用軟件表決,硬件監(jiān)督的策略,既可以發(fā)揮軟件優(yōu)勢,根據(jù)數(shù)據(jù)的重要程度采用不同的一致性控制策略,又避免了使用硬件表決器對于吞吐量和數(shù)據(jù)處理能力的要求,其安全性不會與純硬件數(shù)據(jù)有很大區(qū)別。
2.3.2 軟件流程碼
根據(jù)時間確定性原則,將系統(tǒng)的整個工作周期劃分為若干個微周期,應用處理機需要在每個微周期固定的時間內(nèi)完成應用計算,同時向容錯和安全管理單元發(fā)送對應的軟件流程特征碼。如果未在規(guī)定的時間內(nèi)向容錯和安全管理單元進行匯報,或者匯報錯誤的軟件流程碼,則判斷該2取2通道狀態(tài)異常。
2.3.3 動態(tài)信號
為能夠及時檢測出應用軟件“跑飛”或者因為設計缺陷而進入死循環(huán)的情況,應用處理機需要向容錯和安全管理單元輸出周期翻轉(zhuǎn)的動態(tài)信號,為了進一步提高動態(tài)信號的可靠性和安全性,動態(tài)信號使用雙相碼編碼方式,即每個二進制代碼分別利用2個具有不同相位的二進制新碼表示。
當容錯和安全管理單元檢測到任意一臺應用處理機或者通信機工作異常時,可以通過硬件復位和切斷電源2種方式使故障的COTS工控機導向安全狀態(tài)。
為了提高可靠性以及可用性,可將硬件復位以及電源控制部分的電路結構配置成2取2或者多模冗余結構。
為了保證發(fā)生“主”“備”狀態(tài)切換時,切換動作是無縫的,需要保證“主”“備”兩系間狀態(tài)同步。除了保證應用處理機在進入“備”模式之前,必須在“同步”模式中根據(jù)處于“主”模式的應用處理機發(fā)送的數(shù)據(jù)進行狀態(tài)同步之外,在本方案中還通過以下2種方式保證應用處理層雙機之間的狀態(tài)同步。
1)兩系之間的應用處理機處于周期同步的工作狀態(tài)。由于應用處理機的工作周期是受容錯和安全管理單元控制的,所以在兩個容錯和安全管理單元之間設置同步連接線以及同步計數(shù)器切換開關。當容錯和安全管理單元所在一系為“主”時,其輸出的同步信號控制自身的同步計數(shù)器,并通過同步連接線控制“備”容錯和安全管理單元中的同步計數(shù)器;當容錯和安全管理單元所在的通道為“備”時,其計數(shù)器模塊受“主”容錯和安全管理單元同步計數(shù)器的控制。
2)數(shù)據(jù)通信層通信機保證給應用處理機發(fā)送輸入數(shù)據(jù)的一致性。由于外部輸入數(shù)據(jù)到來時刻的隨機性以及應用處理機并非時鐘級同步,某一控制周期中的輸入數(shù)據(jù)并非存在不一致的可能性,從而造成雙機狀態(tài)的不同步。設置數(shù)據(jù)通信管理層的好處在于,可以通過通信機來保證給應用處理層雙機發(fā)送數(shù)據(jù)的一致性。
在采用了以上方法后,可以保證“主”系的運行狀態(tài)和“備”系的運行狀態(tài)是周期同步的。在“主”“備”兩系的一致性校驗方法上,采用了無條件支持“主”系輸出的方法,在每個控制周期應用處理完畢后,“主”系會把自己的計算結果發(fā)送給“備”系,“備”系把“主”系的計算結果與本地計算的結果進行比較,如果出現(xiàn)了不一致的情況,則判定“備”系出現(xiàn)了問題,使其轉(zhuǎn)入“故障”模式。
2取2乘2安全計算機平臺機柜的尺寸為:2250 mm×600 mm×800 mm(高×寬×深),整體結構如圖4所示。

圖4 安全平臺機柜整體結構圖
2取2的1系包含應用處理機1和2,2取2的2系包含應用處理機3和4,它們配置完全一樣,應用處理機1~4采用完全相同的COTS工控機(IPC)。不論是硬件復位還是切斷電源控制,都由FTSM控制。
通信控制器1和2的配置完全一樣,與上述處理單元一樣,采用完全相同的工控機(IPC),故障導向安全由FTSM控制。
安全計算機平臺的核心是容錯和安全管理單元(FTSM),負責整個2取2乘2安全計算機平臺的故障安全和調(diào)度機制的處理。
容錯和安全管理單元(FTSM)需要針對2取2的1系、2取2的2系、通信控制器1、通信控制器2設置必要的按鈕和指示燈,根據(jù)對按鈕和指示燈的美觀、實用、可靠工作等要求,需要設置3U高84R寬的機械組件,具體如下。
1)按鈕:對2取2的1系設置1系工作、1系恢復2個按鈕,對2取2的2系設置2系工作、2系恢復2個按鈕,對通信控制器1設置通信控制器1恢復按鈕,對通信控制器2設置通信控制器2恢復按鈕。
2)指示燈:對2取2的1系設置1系電源、1系運行、1系工作、1系恢復4個指示燈,對2取2的2系設置2系電源、2系運行、2系工作、2系恢復4個指示燈,對通信控制器1設置通信控制器1電源、通信控制器1運行、通信控制器1恢復3個指示燈,對通信控制器2設置通信控制器2電源、通信控制器2運行、通信控制器2恢復3個指示燈。
繼電器組件是整個安全計算機平臺故障導向安全的執(zhí)行機構,它接收來自于容錯和安全管理單元(FTSM)的控制信號,通過控制2取2的1系、2取2的2系、通信控制器1、通信控制器2的4組交流220V電源和復位信號來實現(xiàn)電源關斷和硬件復位。
安全計算機平臺的電源插箱用于外部兩路220V交流電源的接入。兩路電源使用了配置冗余結構,分別進行防雷和濾波處理后供整個機柜的1系和2系使用。
為了滿足2取2乘2安全計算機平臺的生產(chǎn)、維護、維修之用,還設計了2取2乘2安全計算機平臺測試臺,主要針對其安全電源板、輸入輸出板、邏輯板、指示燈和按鈕操作組件、繼電器組件、電源插箱等電路板和組件進行板級測試,對于FTSM,則測試其控制邏輯的正確性與完備性。安全平臺測試臺機柜的尺寸為1 600 mm×600 mm×800 mm(高×寬×深),其整體結構如圖5所示。

圖5 2取2乘2安全計算機平臺測試臺結構
無論對每種電路板或組件的板級測試,還是FTSM的功能測試,首先需要建立測試環(huán)境,提供測試所需的各種外部條件。采用計算機全自動測試的有FTSM的功能、邏輯板、輸入輸出板和通信板的測試,采用計算機輔助半自動測試的有安全電源板、指示燈和操作按鈕組件、繼電器組件、電源插箱、工控機、維護機、交換機的測試。2取2乘2安全計算機平臺測試臺軟件操作界面如圖6所示。

圖6 2取2乘2安全計算機平臺測試臺軟件操作界面
筆者研發(fā)的2取2乘2安全計算機平臺產(chǎn)品經(jīng)過了高低溫、振動等形式試驗以及電磁兼容測試,也經(jīng)過了實驗室、北京地鐵車輛廠試車線的初試和大連快軌中試的嚴格功能測試,并通過了國外獨立第三方的安全認證,產(chǎn)品成功應用于北京地鐵亦莊線和昌平線的ZC、DSU設備,經(jīng)歷了各種現(xiàn)場測試,目前正在可靠、安全地服務于北京地鐵亦莊線和昌平線。
[1]燕飛,唐濤.軌道交通信號系統(tǒng)安全技術的發(fā)展和研究現(xiàn)狀[J],中國安全科學學報,2005,15(6).94-99.
[2]唐濤,燕飛,郜春海.軌道交通信號系統(tǒng)安全評估與認證體系研究[J],都市快軌交通,2004,17(1).74-79.
[3]吳汶淇.軌道交通運行控制與管理[M].上海:同濟大學出版社,2004.38-43.
[4]袁由光,陳以農(nóng).容錯與避錯技術及其應用[M].北京:科學出版社,1992:1-4.
[5]員春欣.鐵路信號容錯技術[M].北京:中國鐵道出版社,1997:2-5.
[6]陳樹泉,唐濤.2乘2取2安全計算機關鍵算法的設計與實現(xiàn)[J].計算機安全,2004(17):7-9.
[7]王猛,寧濱,馬連川.基于COTS的安全計算機系統(tǒng)[J].鐵道通信信號,2007,43(3):56-58.