崔新民
(北京全路通信信號(hào)研究設(shè)計(jì)院,北京 100073)
DS6-K 5B(以下簡(jiǎn)稱K 5B)系統(tǒng)是北京全路通信信號(hào)研究設(shè)計(jì)院與日本京三公司合作開(kāi)發(fā)的成熟的計(jì)算機(jī)聯(lián)鎖系統(tǒng)。
該系統(tǒng)具有二乘二取二冗余結(jié)構(gòu), 聯(lián)鎖機(jī)由并列兩重系組成,以主從方式并行運(yùn)行。每一系采用故障-安全的雙CPU處理器,稱邏輯控制單元,用于完成聯(lián)鎖邏輯運(yùn)算和聯(lián)鎖系統(tǒng)軟硬件管理,以二取二表決保證該層的故障-安全特性。
該系統(tǒng)單系采用雙CPU總線同步比較方式保障故障-安全。兩系之間采取處理周期同步的并行運(yùn)行方式。正常時(shí),兩系同時(shí)具有向外進(jìn)行控制輸出的能力。當(dāng)一系發(fā)生故障時(shí),另外一系轉(zhuǎn)入單系工作,而故障系停止對(duì)外輸出。系統(tǒng)單系保證“故障-安全”,兩重系保證高可用性。
K 5B系統(tǒng)中,邏輯部的軟件由應(yīng)用軟件和系統(tǒng)軟件兩部分組成。應(yīng)用軟件負(fù)責(zé)邏輯運(yùn)算;系統(tǒng)軟件負(fù)責(zé)硬件管理、輸入輸出管理以及通信和周期管理。
多年來(lái),K 5B系統(tǒng)在現(xiàn)場(chǎng)運(yùn)行狀況良好,邏輯部的雙系幾乎未發(fā)生不同步的現(xiàn)象,一系故障時(shí),自動(dòng)切換到另一系運(yùn)行,對(duì)現(xiàn)場(chǎng)使用沒(méi)有任何影響。
但K 5B系統(tǒng)增加以太網(wǎng)接口后,現(xiàn)場(chǎng)發(fā)生雙系不同步的情況明顯增多。當(dāng)雙系不同步時(shí),如果發(fā)生系切換,會(huì)影響設(shè)備運(yùn)行的連續(xù)性,嚴(yán)重時(shí)可能使系統(tǒng)停機(jī),甚至產(chǎn)生危險(xiǎn)性錯(cuò)誤。
雖然問(wèn)題發(fā)生的概率比較小,但在二乘二取二系統(tǒng)冗余結(jié)構(gòu)中,雙系的同步運(yùn)行是至關(guān)重要的。在CTCS-3級(jí)列控系統(tǒng)中,作為聯(lián)鎖或列控中心控制的K 5B系統(tǒng)一旦故障,可能會(huì)影響相關(guān)RBC控制范圍內(nèi)的所有列車運(yùn)行,影響面巨大。為了提高設(shè)備可用性,我們組織人員,對(duì)問(wèn)題發(fā)生的原因進(jìn)行了分析。
K 5B系統(tǒng)邏輯部的兩系間采用“或”的思想來(lái)保證輸入數(shù)據(jù)一致性,從而獲得一致的輸出,保證雙系的同步,如圖1所示。

圖1中,邏輯部每一系的輸入數(shù)據(jù),包括電子終端(ET)輸入數(shù)據(jù),人機(jī)界面(MM I)輸入數(shù)據(jù)、125 M高速LAN輸入數(shù)據(jù),在進(jìn)入邏輯部前,都由系統(tǒng)軟件經(jīng)過(guò)“或”處理。這樣處理的目的是使外部不同通道收到的數(shù)據(jù),在送達(dá)雙系之前經(jīng)過(guò)一致性處理,使邏輯部雙系在每周期運(yùn)算的開(kāi)始得到相同的輸入數(shù)據(jù),由于它們運(yùn)行相同的邏輯,自然產(chǎn)生相同的輸出數(shù)據(jù),從而保證雙系運(yùn)行的同步。
邏輯部在增加以太網(wǎng)接口后,與外部的接口發(fā)生了變化,如圖2所示。

圖2中,以太網(wǎng)的數(shù)據(jù)與其他來(lái)源的數(shù)據(jù)有所區(qū)別。由于以太網(wǎng)數(shù)據(jù)對(duì)系統(tǒng)軟件不透明,系統(tǒng)軟件無(wú)法對(duì)以太網(wǎng)數(shù)據(jù)進(jìn)行“或”操作。通常K 5B通過(guò)以太網(wǎng)連接的設(shè)備對(duì)象較多,雙系分別使用自己的以太網(wǎng)接口與通信對(duì)象建立通信任務(wù),冗余連接的通信任務(wù)存在一些微小的通信時(shí)差,這些時(shí)差可使每個(gè)周期K 5B兩系所獲得的外部數(shù)據(jù)產(chǎn)生不同。當(dāng)兩系以太網(wǎng)的數(shù)據(jù)不一致時(shí),雙系就不能同時(shí)得到相同的運(yùn)算輸入,容易產(chǎn)生不同步的對(duì)外輸出,如圖3所示。

綜上所述,由于以太網(wǎng)的接入,導(dǎo)致雙系輸入數(shù)據(jù)的不一致,從而造成系統(tǒng)不同步。由于以太網(wǎng)數(shù)據(jù)對(duì)系統(tǒng)軟件不透明,使系統(tǒng)軟件無(wú)法對(duì)以太網(wǎng)輸入數(shù)據(jù)進(jìn)行同步處理,但通過(guò)應(yīng)用軟件對(duì)以太網(wǎng)數(shù)據(jù)進(jìn)行解析后,進(jìn)行“或”處理,可以有效解決該問(wèn)題。
如圖4所示,大多數(shù)情況下,系統(tǒng)都是雙系同時(shí)運(yùn)行,在每個(gè)運(yùn)行周期內(nèi),I系可以接收到一份以太網(wǎng)數(shù)據(jù),同時(shí)又通過(guò)雙系間的通信通道,取得II系的以太網(wǎng)數(shù)據(jù),然后進(jìn)行適當(dāng)?shù)暮喜⑻幚恚玫降男聰?shù)據(jù)作為運(yùn)算輸入。同樣,對(duì)于II系來(lái)說(shuō),將自己接收到的以太網(wǎng)數(shù)據(jù)與通過(guò)雙系間的通信通道得到的I系以太網(wǎng)數(shù)據(jù)進(jìn)行合并處理,作為運(yùn)算輸入。

由于K 5B的雙系基本是同步運(yùn)行的,每個(gè)運(yùn)行周期經(jīng)過(guò)以上處理后,即使I系和II系的以太網(wǎng)數(shù)據(jù)不一致,合并處理后的以太網(wǎng)數(shù)據(jù)卻可保持一致,經(jīng)過(guò)運(yùn)算后,自然產(chǎn)生相同的輸出,保證I系和II系的同步。
值得注意的是,雙系數(shù)據(jù)的合并處理算法應(yīng)根據(jù)具體的應(yīng)用和接口數(shù)據(jù)協(xié)議來(lái)確定,合并處理的目的是使兩系輸入數(shù)據(jù)保持一致性,并能提高系統(tǒng)的可用性。因此,必須遵守任何一系的數(shù)據(jù)均是通過(guò)了安全校驗(yàn)的數(shù)據(jù)原則,即保證當(dāng)兩系以太網(wǎng)數(shù)據(jù)不一致時(shí),合并處理的結(jié)果數(shù)據(jù)既能保證一致性,又能保證安全性。
我們采用上述方案對(duì)應(yīng)用軟件進(jìn)行修改,并在實(shí)驗(yàn)室進(jìn)行了試驗(yàn)驗(yàn)證。試驗(yàn)環(huán)境采用一套完整的邏輯部,I系作為主系,II系作為備系,如圖5所示。

試驗(yàn)結(jié)果如表1所示。

表1 試驗(yàn)結(jié)果
通過(guò)對(duì)K 5B加入以太網(wǎng)接口,導(dǎo)致的雙系不同步現(xiàn)象的分析,找到了問(wèn)題產(chǎn)生的原因,根據(jù)導(dǎo)致問(wèn)題的原因,采取了數(shù)據(jù)合并的處理措施,并且對(duì)實(shí)施方案進(jìn)行了有效的驗(yàn)證。
通過(guò)以太網(wǎng)的數(shù)據(jù)合并處理,大大提升了K 5B系統(tǒng)的雙系同步機(jī)率,從而提高了系統(tǒng)的可用性,使該系統(tǒng)在運(yùn)行CTCS-3級(jí)列控系統(tǒng)的客運(yùn)專線上的可靠運(yùn)營(yíng)得到了保障。