根據(jù)ISO26262, 對于任何一項需求,其功能安全大致可以通過以下幾個步驟來保證:
1)進行Hazard Analysis和Risk Assessment。這個步驟是為了獲得需求的E、C、S值。
2)評出此需求的ASIL評級并建立Safety Goal。Safety Goal 是一個具體的、定性的安全目標,比如轉(zhuǎn)向助力那個例子中,“助力方向一致”這個需求一定是ASIL D級,故障后會有相當大的安全風險。其Safety Goal就是把故障風險降低至可容忍風險以下。Safety Goal繼承對應需求的ASIL評級。
3) 將Safety Goal進一步分解為Functional Safety Concept 和 Technical Safety Concept。要怎樣降低“助力方向一致” 故障的風險呢?一個可行的辦法是進行冗余計算:用兩套不同的算法計算助力方向,保證結(jié)果的正確性?;蛘?,把助力電機的力矩限制在一個較小的值也是個好辦法,因為這樣一來即便助力方向錯誤,由于助力有限,駕駛員還是可以控制汽車。這些解決方法就是Functional Safety Concept。把Functional Safety Concept進一步在技術(shù)上具體化,就是Technical Safety Concept。它們將繼承步驟2)評出的ASIL等級。不同的ASIL等級對Functional Safety Concept 和 Technical Safety Concept有不同的要求。
4)由Technical Safety Concept 形成Software Safety Requirements 和 Hardware Safety Requirements。這些就是非常具體的安全需求了,可以直接作為軟/硬件設計的依據(jù)。這些需求也繼承了相同的ASIL等級。
5)根據(jù)4)步得到的安全需求,結(jié)合其ASIL 等級制定測試與驗證方案。對于不同等級的安全需求,ISO26262對測試方案有著硬性的要求。比如ASIL D級需求除了進行MISRA、PolySpace等測試外,還要進行完備的功能測試和覆蓋率100%的MCDC測試,并對Traceability (可溯性?)也有相應要求。
上圖是功能安全設計開發(fā)流程,在進行這套流程的同時,還需配合FMEA 和 DRBFM 對系統(tǒng)設計進行分析和評價。可以說,全套流程結(jié)束以后,功能安全能夠得到有效的保障。
功能安全和V模式設計流程
ISO26262標準包含10個部分,其中跟汽車V模式開發(fā)流程相關(guān)的是概念階段(第3部分)、產(chǎn)品開發(fā)系統(tǒng)級(第4部分)、產(chǎn)品開發(fā)硬件級(第5部分)、產(chǎn)品開發(fā)軟件級(第6部分)、以及生產(chǎn)和運行階段(第7部分)。在這幾個階段中,跟汽車制造商緊密相關(guān)的則是概念階段(第3部分)。概念階段的主要工作包含:相關(guān)項定義、安全生命周期初始化、HARA(Hazard Analysis and Risk Assessment,危害分析和風險評估),以及提出功能安全需求并進行需求分配。相關(guān)項定義描述整車有哪些功能,功能之間的接口、法律法規(guī)要求、環(huán)境約束等,安全生命周期初始化的主要工作是識別這些功能是全新開發(fā),還是在原有的實現(xiàn)方案上進行修改。如果是全新開發(fā),則執(zhí)行完整的安全生命周期,如果是修改后復用則需要對安全生命周期進行裁剪。HARA主要是識別不同駕駛情境下功能故障(malfunction) 在整車級別造成的危害,并且通過評估危害事件的嚴重性S、暴露率E和可控性C得到危害事件的ASIL等級(Automotive Safety Integrity Level,汽車安全完整性等級,分為A,B,C,D四個等級,A是最低等級,D是最高等級),從而得出SG(Safety Goal,安全目標)及其ASIL等級。