劉 晴
(北京通號國鐵城市軌道技術有限公司,北京 100073)
隨著城市軌道交通的發展,國內軌道交通信號系統的地位越來越重要,如何研發安全的信號系統也成為關鍵的命題。近年來,CENELEC EN 5012X標準在國內廣泛應用,按照安全完善度等級(SIL)研發已經漸漸成為行業默認的規范。CENELEC EN 5012X標準中關注功能完善度等級和軟件完善度等級的定義和要求,卻未指出如何進行完善度等級確定和分配的方法。IEC 61508-5中給出功能完善度等級的確定方法示例,黃皮書(Yellow Book)中給出系統完善度分配的一些原則,但從工程應用角度關注更多的是如何將這些完善度確定方法、原則轉換成系統的分配方法,以便按照分配的完善度等級對照標準的要求進行開發。綜合IEC 61508-5推薦的風險圖方法和黃皮書中的原則,結合工程實踐總結提出一套簡單易用的功能和系統SIL分配方法,以便為后續的工程應用提供一定參考。
安全完善度等級(Safety Integrity Level,SIL),指的是在一定條件一定時間內系統滿足規定安全特性的置信度的數字。安全完善度等級是一組分級數字,它確定了系統達到要求的安全特性所需要的置信度[1,2]。
通常,鐵路和地鐵信號系統/功能的安全完善度等級被分成5個等級[1]。
1)最高等級也被叫做SIL4, 意味著系統中的整個功能對于鐵路和地鐵運輸是至關重要的,并且系統是安全苛求系統,需要進行故障-安全設計。
2)高等級也被叫做SIL3,意味著系統對于鐵路和地鐵運輸是至關重要的,并且系統是安全苛求系統,需要高完善度的安全設計。
3)中等級也被叫做SIL2,意味著系統功能對鐵路和地鐵運輸是必要的,同時系統需要中等完善度的安全設計。
4)低等級也叫做SIL1,意味著系統功能對于鐵路和地鐵運輸是基本的,系統安全設計是基本完善度。
5)零等級SIL0,意味著系統功能對于鐵路和地鐵運輸是基本的,系統被廣泛的認為是非安全相關的,且沒有安全需求說明。
軟件安全完善度等級:(Software Safety Integrity Level,SWSIL),是一組分級數字,決定了為減少剩余軟件故障以達到合適的水平(比如由EN 50128定義的水平)而采用的技術和措施。軟件安全完善度等級應當在軟件使用的風險水平基礎上確定。
EN 50128說明了軟件安全完善度等級的5個層次[3],如表1所示。

表1 軟件SIL列表
從以上的定義可以看出,安全完善度等級分配時,需要確立以下類別的安全完善度等級:
1) 系統安全完善度等級也叫系統SIL等級;
2) 功能的安全完善度等級也叫功能SIL等級;
3) 軟件安全完善度等級也叫軟件SIL等級。
系統SIL等級的定性分析分為以下情況。
1) 采用以往類似系統的SIL等級:若公司或行業中已有類似的系統,可以采取類似系統的SIL等級作為所開發系統的安全完善度等級。
2) 根據標準、法律、法規中的規定確定系統的安全完善度等級:若在國家或國際標準、法律法規中已經對此系統的安全完善度等級進行了規定,則可以采取被客戶或安全權威機構認可的標準、法律、法規中規定的SIL等級,例如TB/T 3027-2002 計算機聯鎖技術條件中規定“計算機聯鎖軟件的安全性完善度等級宜劃分為4級”,那么聯鎖系統中安全相關功能的等級可建議分為SIL4級[4]。
3) 根據所分配的功能SIL確定系統的SIL,本文將介紹此種方法。
在確定系統SIL時,除了上述的1),2)情況外,首先需要確定系統所具有功能的SIL,IEC 61508中的風險圖即是確定功能SIL的方法之一。此方法是基于功能的風險水平確定SIL等級。風險圖有4個緯度:后果的嚴重程度,暴露在危險中的時間,避免危險的可能性,沒有安全功能時不期望事件的發生概率。這個方法是以危險源相關的風險因素作為對象,輸出是安全功能所需要達到的安全水平[5]。IEC 61508推薦風險圖[6]如圖1所示。

圖1 IEC61508推薦的風險圖
以運營正線列車超速為例,列車超速導致的后果可能為脫軌或者沖撞,在運營線路上乘客人數較多,因此首先確定后果的嚴重程度指標為C4多人死亡。運營線路上沒有信號系統防護的列車通常也是由有經驗的司機駕駛,司機在超速前可能降低速度,減少超速,因此暴露在這種風險的時間可以認為是F1不經常(rare)到經常(frequent)之間。若司機能提前介入減速控制,那么可能避免列車超速,因此避免危險的可能性應為P1。沒有信號系統安全功能時,防止超速的控制主要是人工控制,因此發生超速的概率還是很高的,選擇W3。由以上分析可以得出,信號系統防護列車超速的功能SIL等級為SIL4。
對系統功能進行SIL分析后,可以獲得一系列的功能SIL等級,當這些功能組成系統時,系統的SIL應當至少與它最苛刻功能的SIL等級相同。
如表2所示,子系統SIL的分配和系統架構分配是相互聯系的,獲得初步的系統架構圖后,根據子系統和功能的對照表可以得出每個子系統的功能SIL,選取SIL最高的作為子系統的SIL。這里的子系統和功能必須具有一定的獨立性,獨立性指的是如下兩種情況[7]:

表2 子系統SIL分配舉例
1)物理上獨立:使用不同的處理器、存儲器;
2)接口防御機制:某一部件的故障只對部件本身有影響,不會影響到其他部件,例如可以通過內存保護、代碼分析保證此部件的內存不會被其他部件寫入等方法。
實際情況中,除了物理上的獨立性很容易被證明外,接口防御機制通常需要進行大量的分析且不容易被證明,因此實際應用中并不建議使用。
建立功能與軟件的對應關系,某一軟件的SIL等級初步確定為其所包含功能的最高SIL等級。如表3所示,子系統1中包含軟件SW1和SW2,SW1包含的安全相關功能為F1,故SW1的SIL暫定為SIL1,而SW2不包含任何安全相關功能,因此SIL等級暫定為SIL0,即非安全相關系統。

表3 初步軟件SIL等級
值得注意的是,功能SIL的分配是按照風險去確定的,但是并不代表功能的開發流程就要按照功能SIL進行。例如,如果一個功能按照風險分析確定是SIL0的,但是不代表承載這個功能的軟件要按照EN 50128 SIL0要求開發。這取決于軟件運行的設備是否具有獨立性,獨立性要求如子系統獨立性要求。如圖2所示。

圖2 軟件獨立性示例
情況1中兩個軟件運行于獨立的硬件平臺上,兩者使用了不同的處理器、不同的存儲器,具有較低SIL等級的SW2并不影響具有較高SIL等級的SW1,因此SW2可以具有低于SW1的SIL等級;
情況2中兩個軟件運行于同一個硬件平臺上,共用同一個處理器和存儲器,具有較低SIL等級的SW2會影響具有較高SIL等級的SW1,此情況下SW2的SIL等級應當與SW1相同。
通過以上的分析與舉例,確定了軌道交通信號系統SIL分配的3個重要參數即系統SIL,功能SIL及軟件SIL。首先根據IEC 61508的風險圖原理確定功能的SIL,然后根據系統所包含的功能確定系統SIL,最后根據軟件所具有的功能、軟件所運行的子系統硬件確定軟件最終的SIL。系統、子系統即根據EN 50126,EN 50129中SIL要求進行實施,軟件即根據EN 50128中SIL要求進行實施。
本文中基于IEC 61508中風險圖確定了功能、系統、軟件等的SIL,但是在SIL所對應的系統結構設計方面并未深入展開。如果存在保護機制(硬件或者軟件)以阻止軟件導致系統進入不安全狀態,模塊的軟件安全完善度等級可以減少。(在這種情況下,保護機制的安全完善度等級應當至少與系統的安全完善度等級相同。這里的保護機制包括(但不限于):使用冗余架構來建立高等級的SIL;具有一個“連接器”(比如表決機制)。如表4所示,列舉了黃皮書[7]中可以被接受的連接器機制,前提條件是:低等級的功能物理上獨立且使用了不同的設計原則;如果其中一個較低等級的功能失效,此連接器將抑制由此失效導致的所有危險源;連接器需繼承最高的SIL等級。因此,如何從不犧牲功能安全的角度出發,提高系統結構設計的合理性和有效性是研究的一個重要方向。

表 4 連接器機制可接受SIL分配表
[1] CENELEC.EN 50129 Railway applications Communication,signaling and processing systems Safety related electronic systems for signaling[S].UK:British Standards Institution(BSI), 2003.
[2] CENELEC.EN 50126 Railway application-The Specification and demonstration of Reliability,Availability,Maintainability and Safety (RAMS) [S].UK:British Standards Institution(BSI), 1999.
[3] CENELEC.EN 50128 Railway applications Communication,signaling and processing systems Software for railway control and protection systems[S].UK: British Standards Institution (BSI),2011.
[4]中華人民共和國鐵道部.TB 3027-2002 計算機聯鎖技術條件[S]. 北京:中國鐵道出版社,2002.
[5] Beugin.J,Renaux.D,Cauffriez.L.A SIL quantification approach based on an operating situation model for safety evaluation in complex guided transportation systems[J].Reliability Engineering and System Safety,2007(92):1686-1700.
[6] IEC.IEC 61508-5 Functional safety of electrical/electronic/programmable electronic safety-related systems Part 5:Examples of methods for the determination of safety integrity levels[S].UK:International Electrotechnical Commission,2000.
[7] Rail Safety and Standards Board. Engineering Safety Management (The Yellow Book) Volumes 1 and 2 Fundamentals and Guidance [M].UK:Rail Safety and Standards Board,2007.
[8]郭海濤,陽憲惠.一種安全儀表系統SIL分配的定量方法[J].化工自動化及儀表,2006, 3(6):65-67.
[9]曹啟濱.城市軌道交通延長線路信號系統貫通方案分析[J].鐵路通信信號工程技術,2017,14(1):69-70.