趙宏軍 上海鐵路局電務(wù)處
安全計(jì)算機(jī)是在冗余(硬件冗余、時(shí)間冗余、信息冗余、軟件冗余)的基礎(chǔ)上,在軟件的有效管理下而形成的高安全、高可靠、高可用的計(jì)算機(jī)系統(tǒng)。安全計(jì)算機(jī)控制系統(tǒng)被廣泛的應(yīng)用于安全苛求系統(tǒng)的控制,以避免計(jì)算機(jī)系統(tǒng)向被控設(shè)備輸出危險(xiǎn)側(cè)的控制信號(hào),從而造成重大的人員傷亡和財(cái)產(chǎn)損失。
列車運(yùn)行監(jiān)控系統(tǒng)是控制列車運(yùn)行和保障行車安全、提高運(yùn)輸效率的主要設(shè)備,其主要任務(wù)在于監(jiān)督列車的運(yùn)行速度、輸出控制指令、實(shí)現(xiàn)列車的超速防護(hù)。這種安全性、可靠性要求很高的控制系統(tǒng),必須要有高可靠、高安全的運(yùn)行基礎(chǔ),因此,對(duì)安全計(jì)算機(jī)技術(shù)在車載設(shè)備的應(yīng)用進(jìn)行研究具有十分重要的意義。
失效、故障、錯(cuò)誤是影響系統(tǒng)可靠性和安全性的三個(gè)因素,失效是系統(tǒng)偏離其預(yù)期的設(shè)計(jì)要求或規(guī)定功能的現(xiàn)象,失效是不可避免的,所有系統(tǒng)都有固有的可以量化的失效概率。失效產(chǎn)生的根本原因?yàn)橄到y(tǒng)出現(xiàn)的功能性故障或技術(shù)性故障,功能性故障多為人為造成的,包括軟件及硬件的設(shè)計(jì)缺陷,技術(shù)性故障又稱物理故障或硬件故障,主要是由于系統(tǒng)內(nèi)元件老化或外界環(huán)境影響,為隨機(jī)性故障。故障的發(fā)生并不意味著一定會(huì)影響系統(tǒng)的正常工作,只有在故障組件被應(yīng)用而激活時(shí),才會(huì)在系統(tǒng)功能中表現(xiàn)出來,由于故障而產(chǎn)生的非正常行為或狀態(tài)的現(xiàn)象稱為錯(cuò)誤,故障是錯(cuò)誤的起因,錯(cuò)誤是故障的產(chǎn)物和結(jié)果,錯(cuò)誤傳遞至整個(gè)系統(tǒng)時(shí)系統(tǒng)失效,系統(tǒng)失效導(dǎo)致危險(xiǎn)側(cè)輸出時(shí),系統(tǒng)處于非安全狀態(tài)。
故障只有被激活后才會(huì)產(chǎn)生錯(cuò)誤,為有效規(guī)避故障對(duì)系統(tǒng)的影響通常采用冗余技術(shù),冗余技術(shù)是提高系統(tǒng)可靠性和安全性最常用的技術(shù)手段,是故障掩蔽技術(shù)和系統(tǒng)重組技術(shù)的核心,當(dāng)系統(tǒng)某一組件故障時(shí),冗余組件投入運(yùn)用并承擔(dān)故障組件的工作,以減少系統(tǒng)錯(cuò)誤情況的發(fā)生,保證系統(tǒng)在規(guī)定的時(shí)間和規(guī)定的條件下完成規(guī)定的功能。雙機(jī)熱備冗余架構(gòu)、三取二冗余架構(gòu)、二乘二取二冗余架構(gòu)等是通常采用的系統(tǒng)冗余架構(gòu)。
系統(tǒng)可靠性的提高只能減少失效的發(fā)生而不可能徹底消除失效現(xiàn)象。歐洲(EN)系列標(biāo)準(zhǔn)中將系統(tǒng)失效分為兩類:安全失效和危險(xiǎn)失效,安全失效會(huì)導(dǎo)致系統(tǒng)無法正常工作,但不會(huì)導(dǎo)致事故的發(fā)生,危險(xiǎn)失效才是安全設(shè)計(jì)要考慮的首要對(duì)象,它可能會(huì)直接造成安全性事故的發(fā)生。
根據(jù)安全度的計(jì)算公式,系統(tǒng)的安全度可以通過以下三個(gè)方面采取措施進(jìn)行提高:
(1)采用固有安全特性或故障安全型電路使其故障后自動(dòng)導(dǎo)向安全側(cè)以降低危險(xiǎn)失效的比率。
(2)通過選用高等級(jí)品質(zhì)的元件或組件并正確的使用這些元件,合理規(guī)劃系統(tǒng)的架構(gòu),提高系統(tǒng)的可靠性。
(3)提高系統(tǒng)的檢測(cè)(診斷)覆蓋率,使故障能夠以極高的概率被檢測(cè)出來,并進(jìn)入限制性的安全狀態(tài)。
三取二架構(gòu)安全計(jì)算機(jī)是由三個(gè)獨(dú)立的模塊構(gòu)成的三重冗余安全計(jì)算機(jī)系統(tǒng),三個(gè)模塊同步工作,獨(dú)立完成數(shù)據(jù)采集、信息接收、故障檢測(cè)、運(yùn)算判斷、命令輸出的過程,最終三個(gè)模塊的輸出通過表決機(jī)構(gòu)表決后作為系統(tǒng)的最終輸出。三個(gè)模塊只要不同時(shí)出現(xiàn)相同的錯(cuò)誤,就能屏蔽掉故障模塊的錯(cuò)誤,保證系統(tǒng)正確的輸出。由于三個(gè)模塊是互相獨(dú)立的,兩個(gè)模塊同時(shí)出現(xiàn)同樣的錯(cuò)誤是極小概率事件,故可以大大提高系統(tǒng)的可靠性。同時(shí),為保障每個(gè)模塊的可靠性,保證及時(shí)處理一次故障的影響,系統(tǒng)通過上電自檢,周期性自檢或在需要時(shí)對(duì)故障的檢測(cè),發(fā)現(xiàn)故障及時(shí)定位、及時(shí)處理,減少二次故障發(fā)生的概率。另外,對(duì)于關(guān)鍵性輸出,采用故障安全型設(shè)計(jì),確保系統(tǒng)的故障安全特性。三取二架構(gòu)安全計(jì)算機(jī)的基本冗余結(jié)構(gòu)如圖1所示。
圖1 三取二架構(gòu)安全計(jì)算機(jī)冗余結(jié)構(gòu)示意圖
輸入信號(hào)分別通過三個(gè)獨(dú)立的輸入通道進(jìn)入三套控制主機(jī)中的每套主機(jī),每套主機(jī)對(duì)三路冗余的輸入信號(hào)進(jìn)行三取二表決,表決后的結(jié)果作為計(jì)算輸入。對(duì)輸入信息的表決將規(guī)避輸入信息處理通道、控制主機(jī)的單點(diǎn)故障及其交叉故障。
依據(jù)表決后的輸入信息,每套主機(jī)分別計(jì)算,計(jì)算后的輸出結(jié)果進(jìn)行三取二表決,表決后的結(jié)果作為控制輸出。對(duì)計(jì)算輸出結(jié)果的表決將規(guī)避控制主機(jī)的單點(diǎn)故障和可能的軟件缺陷。
各控制主機(jī)將表決結(jié)果進(jìn)行輸出,三路控制輸出最終由硬件進(jìn)行三取二表決,表決結(jié)果作為系統(tǒng)的最終控制輸出。
二乘二取二安全計(jì)算機(jī)由兩個(gè)獨(dú)立的二取二架構(gòu)計(jì)算機(jī)系統(tǒng)構(gòu)成,兩個(gè)系統(tǒng)互為冗余,每個(gè)系統(tǒng)上集成兩個(gè)獨(dú)立的模塊,兩個(gè)模塊同步運(yùn)行并進(jìn)行實(shí)時(shí)比較,只有兩個(gè)模塊一致時(shí)才對(duì)外輸出或傳送運(yùn)算結(jié)果,二取二架構(gòu)可快速發(fā)現(xiàn)系統(tǒng)出現(xiàn)的故障并保證系統(tǒng)的安全輸出導(dǎo)向。而二乘二取二架構(gòu)綜合了二取二和雙機(jī)熱備兩種結(jié)構(gòu)的優(yōu)點(diǎn),既包括了二取二的高安全性,又包括了雙機(jī)熱備的高可靠性。
二乘二取二架構(gòu)安全計(jì)算機(jī)的基本冗余結(jié)構(gòu)如圖2所示。
圖2 二乘二取二架構(gòu)安全計(jì)算機(jī)冗余結(jié)構(gòu)示意圖
系統(tǒng)由相互獨(dú)立的I系和II系組成,兩系構(gòu)成相同,互為冗余,當(dāng)某系出現(xiàn)故障時(shí),故障系退出控制,系統(tǒng)由正常系控制并持續(xù)運(yùn)行,當(dāng)雙系均故障時(shí),系統(tǒng)導(dǎo)向安全側(cè)。系統(tǒng)中的每系由兩套相互獨(dú)立的處理模塊組成,兩個(gè)模塊同時(shí)處理同一任務(wù),并將結(jié)果進(jìn)行相互比較,當(dāng)比較結(jié)果一致時(shí),認(rèn)為兩個(gè)模塊均正常工作,結(jié)果正確可以輸出。當(dāng)比較結(jié)果不一致時(shí),即認(rèn)為兩個(gè)模塊中至少有一個(gè)出現(xiàn)錯(cuò)誤。在這種情況下,即使只有一個(gè)模塊出現(xiàn)錯(cuò)誤,由于不能確定那一個(gè)模塊的運(yùn)算結(jié)果是正確的,因而必須同時(shí)放棄兩套結(jié)果,并觸發(fā)相應(yīng)的安全反應(yīng)。
三取二安全計(jì)算機(jī)系統(tǒng)和二乘二取二安全計(jì)算機(jī)系統(tǒng)各有優(yōu)劣,二取二架構(gòu)采用的是主動(dòng)冗余的方式,以檢測(cè)錯(cuò)誤為主要目的,雖然為雙模結(jié)構(gòu),但在運(yùn)行中所有的部件都是不可或缺的,兩個(gè)模塊執(zhí)行相同的任務(wù),輸出結(jié)果進(jìn)行比較驗(yàn)證,為提高系統(tǒng)的可靠性,實(shí)際使用過程中,采用雙系統(tǒng)冗余的方式,即由兩套二取二架構(gòu)的安全計(jì)算機(jī)系統(tǒng),組成熱備冗余或并行運(yùn)行的系統(tǒng)。三取二系統(tǒng)采用的是被動(dòng)冗余的方式,它由三個(gè)模塊執(zhí)行相同的任務(wù),可以屏蔽單點(diǎn)故障的發(fā)生,可進(jìn)行故障定位并及時(shí)提示,有利于異常模塊的快速修復(fù)。
以二乘二取二架構(gòu)安全計(jì)算機(jī)作為控制核心的系統(tǒng),由于采用的是雙套冗余的架構(gòu),維修方便、可以進(jìn)行脫機(jī)測(cè)試,這是三取二安全計(jì)算機(jī)系統(tǒng)所不具備的,同時(shí)其安全性能也高于三取二安全計(jì)算機(jī)系統(tǒng),在強(qiáng)調(diào)“安全第一”的列控設(shè)備中獲得了更廣泛的應(yīng)用并逐漸成為列控設(shè)備的主流架構(gòu)。
通常使用的故障安全技術(shù)包括組合-故障安全技術(shù)、反應(yīng)故障-安全技術(shù)及固有故障-安全技術(shù)。
組合-故障安全技術(shù)要求每種安全功能至少由兩個(gè)部件完成,每個(gè)部件必須和其它部件保持獨(dú)立,以避免共模故障,只有大多數(shù)部件一致時(shí),才允許進(jìn)行非限制性輸出,當(dāng)某個(gè)部件發(fā)生危險(xiǎn)失效,必須在足夠短的時(shí)間內(nèi)被診斷或切除,以防止另一個(gè)部件出現(xiàn)相關(guān)聯(lián)的失效,常見的組合-故障安全大多指冗余架構(gòu),例如二取二、三取二架構(gòu)。
反應(yīng)-故障安全技術(shù)允許安全功能由一個(gè)部件完成,但需要通過危險(xiǎn)失效的快速診斷和對(duì)失效進(jìn)行避錯(cuò)處理來保證它的安全操作(例如通過編碼、反復(fù)計(jì)算和多版本比較或通過連續(xù)的測(cè)試)。盡管只有一個(gè)部件完成安全功能,但相關(guān)的檢測(cè)/監(jiān)視/診斷/切除部分可以看作是第二部件,他們之間需要保持獨(dú)立性以避免產(chǎn)生共模故障,也就是說控制和防護(hù)部分應(yīng)該完全獨(dú)立。
固有故障-安全技術(shù)是在假定單個(gè)部件所有可信的失效模式均無危險(xiǎn)的情況下,允許安全功能由一個(gè)單獨(dú)部件來執(zhí)行。固有故障-安全技術(shù)也可用在“組合故障-安全”和“反應(yīng)故障-安全”系統(tǒng)的某些功能中,例如用來確保部件之間的獨(dú)立性或如果檢測(cè)到一個(gè)危險(xiǎn)失效時(shí)來強(qiáng)制停止運(yùn)轉(zhuǎn)。
容錯(cuò)技術(shù)是在容忍故障的前提下考慮解除故障影響的技術(shù)措施。根據(jù)對(duì)故障處理方式的不同,容錯(cuò)技術(shù)主要包括故障檢測(cè)技術(shù)、故障屏蔽技術(shù)、冗余技術(shù)等。
故障檢測(cè)技術(shù)包含兩個(gè)主要的類別,即脫機(jī)檢測(cè)和聯(lián)機(jī)檢測(cè),在脫機(jī)檢測(cè)情況下,進(jìn)行檢測(cè)時(shí)設(shè)備不能進(jìn)行正常的工作;而聯(lián)機(jī)檢測(cè)提供了實(shí)時(shí)檢測(cè)能力,因?yàn)槁?lián)機(jī)檢測(cè)與正常的工作可同時(shí)執(zhí)行。奇偶校驗(yàn)、冗余校驗(yàn)、一致性校驗(yàn)和協(xié)議檢查是檢測(cè)故障的常用手段。
故障屏蔽技術(shù)是防止系統(tǒng)中的故障在該系統(tǒng)的信息結(jié)構(gòu)中產(chǎn)生差錯(cuò)的各種措施的總稱,其實(shí)質(zhì)是在故障效應(yīng)達(dá)到模塊的輸出以前,利用冗余資源將故障影響掩蓋起來,達(dá)到容錯(cuò)的目的。依據(jù)故障屏蔽措施層級(jí)的不同,故障屏蔽技術(shù)分為元件級(jí)故障屏蔽技術(shù)、邏輯級(jí)故障屏蔽技術(shù)、模塊級(jí)故障屏蔽技術(shù)和系統(tǒng)級(jí)故障屏蔽技術(shù)。
冗余技術(shù)是容錯(cuò)技術(shù)的基礎(chǔ),采取的主要手段是投入更多的設(shè)計(jì)資源來換取更高的可靠性,冗余的方式主要包括:硬件冗余、軟件冗余、信息冗余、時(shí)間冗余。依據(jù)不同的運(yùn)營環(huán)境,四種冗余要有機(jī)的相互配合使用才能達(dá)到較高的可靠性指標(biāo)。
二取二或三取二架構(gòu)安全計(jì)算機(jī)均要求各模塊同步運(yùn)行,同步是安全計(jì)算機(jī)進(jìn)行數(shù)據(jù)采集、運(yùn)算處理、數(shù)據(jù)校核的基礎(chǔ)。按照使用同步方式的不同,同步分為時(shí)鐘同步(指令同步)和周期同步(任務(wù)同步)兩種。時(shí)鐘同步(指令同步)的實(shí)現(xiàn)方法通常將兩套完全一樣的CPU及其核心電路集成在同一電路板上,使用同一時(shí)鐘并采用總線校核電路對(duì)CPU總線進(jìn)行比較監(jiān)督,時(shí)鐘同步方式主要依靠硬件完成,包括雙CPU的同步控制、數(shù)據(jù)校核、錯(cuò)誤檢出、故障導(dǎo)向等,對(duì)硬件有較高的要求。周期同步(任務(wù)同步)的實(shí)現(xiàn)方法通常為雙CPU獨(dú)立工作,軟件通過CPU的同步控制接口和數(shù)據(jù)校核通道,在應(yīng)用程序、任務(wù)或進(jìn)程中設(shè)置檢查點(diǎn)或同步表決點(diǎn),通過通信協(xié)議實(shí)現(xiàn)CPU的同步校核,周期同步(任務(wù)同步)對(duì)軟件有較高要求,軟件的相關(guān)算法要有高度的安全性和可靠性。
時(shí)鐘同步的方式存在無法在兩個(gè)CPU間實(shí)現(xiàn)相異算法的缺點(diǎn),無法消除軟件的共模故障。同時(shí),隨著硬件技術(shù)的發(fā)展,CPU芯片本身存在封閉緩存,時(shí)鐘同步的方式對(duì)于高性能的CPU芯片幾乎無能為力,硬件平臺(tái)在硬件的更新?lián)Q代時(shí)也受到了一定的限制。目前國內(nèi)研發(fā)的二乘二取二系統(tǒng)多基于周期同步(任務(wù)同步)方式,通常將同步點(diǎn)設(shè)置在硬件層,而同步協(xié)議基于軟件的方法,以達(dá)到容易設(shè)計(jì)制造和應(yīng)用軟件兼容性好的目的。
為滿足當(dāng)前鐵路運(yùn)輸安全的要求,按照鐵總的統(tǒng)一安排,河南思維自動(dòng)化設(shè)備股份有限公司、中車株洲電力機(jī)車研究所有限公司聯(lián)合開展了LKJ-15型列車運(yùn)行監(jiān)控系統(tǒng)的研發(fā)工作,與既有LKJ相比,LKJ-15型列控設(shè)備主要技術(shù)特點(diǎn)如下:
(1)使用安全計(jì)算機(jī)作為系統(tǒng)的控制核心,安全性和可靠性獲得大幅提升。
LKJ-15基于二乘二取二安全計(jì)算機(jī)平臺(tái),綜合應(yīng)用了故障安全技術(shù)、容錯(cuò)技術(shù)和安全數(shù)據(jù)通信技術(shù),平臺(tái)達(dá)到了國際鐵路應(yīng)用的安全計(jì)算機(jī)技術(shù)先進(jìn)水平,并通過了獨(dú)立第三方評(píng)估。
(2)人機(jī)界面單元采用主備冗余架構(gòu),確保了人機(jī)界面單元的應(yīng)急保障能力。
人機(jī)界面單元核心控制、按鍵輸入、供電、IC卡輸入等部分均采用主備冗余架構(gòu),故障時(shí)可迅速在主備機(jī)間進(jìn)行切換,確保單機(jī)故障不影響系統(tǒng)正常工作。
(3)對(duì)LKJ外圍設(shè)備進(jìn)行了統(tǒng)一的整合,有利于設(shè)備的統(tǒng)一管理。
LKJ-15設(shè)置獨(dú)立的擴(kuò)展單元實(shí)現(xiàn)相關(guān)的功能擴(kuò)展,便于設(shè)備的統(tǒng)一安裝、維護(hù)和管理。
(4)支持車載計(jì)算機(jī)預(yù)存基礎(chǔ)數(shù)據(jù)和應(yīng)答器提供基礎(chǔ)數(shù)據(jù)兩種控車方式,滿足列車在不同線路上的運(yùn)營要求。
LKJ-15增加了與應(yīng)答器設(shè)備的通信接口,豐富了車地通信的手段,使系統(tǒng)的控制方式更加準(zhǔn)確和靈活。
(5)依托更合理的數(shù)據(jù)結(jié)構(gòu)和編制管理辦法,確保數(shù)據(jù)的安全高效管理
通過深入分析基礎(chǔ)數(shù)據(jù)項(xiàng)的特征,LKJ-15超脫了LKJ2000虛擬數(shù)據(jù)交路的組織結(jié)構(gòu)形式,實(shí)現(xiàn)了徑路數(shù)據(jù)與線路設(shè)施、設(shè)備數(shù)據(jù)分離,滿足了靈活多變的鐵路運(yùn)輸需求。
目前LKJ-15已經(jīng)完成需求評(píng)審、方案評(píng)審、試用評(píng)審、技術(shù)評(píng)審等階段的工作,在一年多的在線運(yùn)行期間,設(shè)備工作穩(wěn)定、可靠,LKJ-15型列車運(yùn)行監(jiān)控系統(tǒng)的推廣應(yīng)用,必將使LKJ列控設(shè)備在安全性、可靠性方面取得大幅提升。
本文對(duì)影響系統(tǒng)安全性和可靠性的關(guān)鍵因素進(jìn)行了討論,給出了二乘二取二和三取二安全計(jì)算機(jī)系統(tǒng)的基本架構(gòu),并對(duì)安全計(jì)算機(jī)平臺(tái)所使用的關(guān)鍵技術(shù)進(jìn)行了簡要描述,按照鐵總要求,應(yīng)用安全計(jì)算機(jī)技術(shù)的LKJ-15型列車運(yùn)行監(jiān)控系統(tǒng)已研發(fā)完成并通過獨(dú)立第三方SIL4級(jí)安全認(rèn)證。