驗證和確認計劃
驗證和確認流程也必須在安全功能實現之前計劃好。所有的設計階段都要選擇故障避免文檔中的措施進行驗證。計劃的措施必須闡明目前的項目將在真實情況中如何表現。舉個例子,計劃的措施可以是靜態代碼分析。那么對應的驗證和確認計劃應當覆蓋所有將由代碼檢查器檢驗的軟件模塊(SW-Module),包含使用該工具的流程并將如何對結果進行處理、分析和存檔的說明。
另一個例子是FPGA設計過程中的網表檢查。第一步是明確這個步驟必須完成,誰來執行這個任務以及輸入和輸出的文件是什么。下一步是定義進行該任務需要使用的工具以及發布流程。
該計劃可用作針對所有驗證和確認流程的檢查表,能夠為所有計劃流程的完成度提供完整的概覽。
工具認證
針對在生命周期中的所有階段密集使用任何類型軟件工具的情況,所有將用于實現安全部分的工具將按照它們對于安全功能的影響進行分析。這意味著,首先需要列出所有的工具,然后將所有的軟件工具根據工具重要性等級(IEC61508-4:2010標準中的T1、T2、T3等級)進行分類。
表4:工具重要性等級
表4展示了標準中的相關定義以及萊迪思工具列表,后者按照使用FPGA實現安全相關任務時的相應等級進行分類。在真實的項目中,該列表需要填上所有使用到的工具。知曉某個工具在項目中的重要性是有用的,但這并不會讓人們獲得更加安全的系統。這就是為什么要進行額外的工作,比如說進行工具認證讓工程師對使用的工具有把握。有把握的意思是能夠確認或知曉工具發生的錯誤。如果該工具能夠正確地滿足規范要求并且使用者已經獲得了該工具經過確認的憑據,那么他就可以不受任何約束地使用該工具。如果該工具無法按照規范要求工作,用戶則需要相關錯誤的信息并暫時避開導致錯誤發生的情況。如果分析人員得出的結論是工具的輸出不可信或規范還不夠詳細,用戶就必須制定其他方法來檢測上述錯誤。
分析過程有可能為用戶帶來潛在問題。如果用戶自身不具備有關該工具的足夠知識、經驗或數據,就會產生問題。在這種情況下,如果該工具的制造商能夠為客戶提供相關支持,比如所有必要的數據,則會非常有幫助,如果工具制造商還能提供由獨立機構認證和批準的數據和文檔,那就更為理想了。
萊迪思已邀請TüV Rheinland按照IEC61508標準對“Diamond 2.1”工具套件進行了高達SIL 3級別的審核。這為安全項目團隊提供了使用該工具鏈以及所有相關文檔和安全手冊的便利,使用者無需進行額外的確認。審核所獲的結果節約了項目相關的成本和時間,并簡化了為安全應用選擇萊迪思FPGA的決策過程。同上述工具一道,萊迪思還可提供經過量產驗證的 FPGA,可靠并且具備認可的失效概率數據。由相關機構頒發的認證讓評估人員更加信任萊迪思的產品,并能加速型號審核流程。
安規產品設計的工作流程
除了所有的功能安全管理,還要實現安全設計流程以確保產品安全。讓我們假設有一個需要實現SIL 2或SIL 3級別設備的項目。
項目第一步是建立安全方案。安全方案能夠勾勒出具備相關細節的大致架構,如包含單通道或雙通道架構、通信路徑、輸入和輸出接口、電源等信息。安全要求規范(safety requirement specification, SRS)由安全方案和產品規范衍生。為了使方案確定下來,推薦在塊層面執行第一次失效模式和影響分析(Failure Modes and Effect Analysis, FMEA)。通常情況下,FMEA結果會推進要求列表的制定。IEC61508標準提供了一些失效控制措施,包括復雜電子元器件故障模式和指令故障檢測模式,用于支持結構化分析。在雙通道或多通道架構中,共因失效必須得以定位和消除。對于安全設計來說,環境和EMC情況也是非常重要的。根據應用的情況,應當按需參照其他標準進行確認和檢視。所有的要求都確定下來之后,就可以按照由高到低,從架構到模塊的順序開始設計。請記住一定要建立所有步驟的規范和描述,因為這些輸入文件將用于所有的審核以及測試階段。為了項目流程的順利推進,所有的測試應當與開發同時進行。
在所有的原理圖和電路導出之后,部分FMEA必須完成,隨后進行安全參數的計算。部分FMEA也會被用做故障導入測試(Fault Insertion Test, FIT)規范中的輸入信息。軟件應當按照圖2所示的流程來實現。
在完成系統和型號等所有測試后,該設計應當能夠滿足所有安全要求。最后一點特別關鍵,所有安全相關的信息必須寫入新產品的用戶手冊中。
第一次實行這樣的流程和設計可能會碰到一些困難。無論如何,良好的計劃以及安全設計方面的專業技術將幫助您在市場上推出質量和安全性都很優秀的產品。為了降低啟動成本,Innotec(http://www.innotecsafety.com/)可提供安全設計的審核服務,幫助您解決從方案到整合過程中的問題。
評論
查看更多