單元 14 · 硬體層 Part 5 與軟硬體相依

硬體安全需求、FMEDA、隨機硬體失效

14.1 硬體層在做什麼

ISO 26262 Part 5 硬體層開發:把 TSR 中分配給硬體的部分變成硬體安全需求、硬體設計、硬體驗證,並用量化分析證明隨機硬體失效風險可接受。

軟體工程師要懂它:硬體失效(記憶體位元翻轉、感測器故障)正是軟體要偵測與應對的對象——安全機制常常是「軟體 + 硬體」合作。

14.2 兩種失效來源

類型成因處理方式
系統性失效設計/製程/規格錯誤流程(ISO 26262 Part 6/8)+ 測試
隨機硬體失效物理劣化、輻射等隨機事件量化分析(FMEDA)+ 安全機制

14.3 量化指標

指標含義ASIL D 參考
PMHF平均每小時失效機率< 10⁻⁸ /h
SPFM單點失效度量> 99%
LFM潛在失效度量> 90%

這些指標用 FMEDA(失效模式、影響與診斷分析)估算:對每個元件列出失效模式、影響、是否被安全機制診斷、殘餘風險。

14.4 FMEDA 摘要範例

範例
元件:微控制器 RAM(ASIL D)
失效模式      → 影響            → 安全機制        → 診斷率
單一 bit 翻轉  → 資料錯誤        → ECC 校正        → 99%
雙 bit 翻轉    → 不可校正錯誤    → 錯誤中斷→安全狀態 → 98%
位址解碼失效   → 錯誤寫入        → 記憶體保護檢查    → 95%

合計:PMHF 達標(<10⁻⁸/h)+ SPFM/LFM 達標

14.5 軟硬體相依設計考量

Part 11(半導體指南):半導體元件的功能安全應用指引——失效率、誤差、熱等考量,供 IC 供應商使用。

14.6 Worked Example:一個硬體故障的軟體反應

範例
情境:AEB ECU 的 RAM 發生 ECC 不可校正錯誤(UE)
硬體:產生不可遮罩中斷(NMI)→ 觸發安全狀態請求
軟體:NMI handler 在 50ms 內執行:
      1. 凍結輸出(煞車請求維持安全值)
      2. 記錄錯誤碼與上下文
      3. 進入有限安全模式(警示駕駛)
驗證:故障注入測試(強制 UE)證明 NMI→安全狀態 ≤50ms

動手:列舉你系統中「軟體必須應對的 3 個硬體故障」,各配一個偵測與反應。

14.7 深入原理:FMEDA 把硬體失效連到診斷覆蓋

FMEDA 的價值不是產出一個漂亮的百分比,而是把元件失效模式、系統影響、診斷機制與殘餘風險逐項對上。軟體工程師要確認:診斷訊號是否真的可讀、反應時間是否在 FTTI 內、錯誤旗標是否可能被清除,以及安全狀態是否定義清楚。SPFM/LFM/PMHF 是不同角度的證據,不能用單一指標代替完整失效分析。

失效分類意義工程反應
單點失效無診斷即可破壞安全目標增加監視、冗餘或修改架構
殘餘失效安全機制也失效後仍有風險分析組合故障與 FTTI
潛在失效未被發現且可能削弱備援週期診斷與維修檢查

14.8 Worked Example:從 ECC 旗標到安全需求

範例
硬體失效:RAM uncorrectable error 置位 UE_INT。
TSR:UE_INT 必須在 10 ms 內被安全軟體確認,
50 ms 內停止使用受影響資料、記錄 DTC 並進入安全狀態。
驗證:故障注入 UE,量測中斷到輸出凍結的時間,
再測重複中斷、啟動期間錯誤與清除旗標失敗。

14.9 練習

  1. 選一個硬體故障,列出偵測、反應、診斷延遲與驗證方法。
  2. 說明單點失效與潛在失效在測試策略上的差異。
  3. 檢查一個安全機制是否可能被自身的硬體故障繞過。

14.10 交付物檢查清單

量化分析與實際測試要互相校正:FMEDA 假設某診斷可在 50 ms 內反應,就必須在軟體與硬體整合測試中量測這個時間,而不能只引用分析表。

14.11 實務判讀:量化結果背後的假設

FMEDA 的數字必須和元件版本、失效率資料來源、診斷覆蓋假設與使用環境一起閱讀。當硬體料號、時脈、電源或診斷韌體改變,不能只沿用舊的 PMHF 結論。審查時要挑一個代表性失效,從失效模式追到診斷訊號、軟體反應與故障注入結果,確認量化分析不是孤立報告。

快速問法:FMEDA 宣稱「可診斷」時,能否指出實際診斷 owner、反應時間與測試案例?
看完這單元你應該能說出:
  • 說明硬體層開發(Part 5)的主要活動。
  • 解釋 FMEDA 與隨機硬體失效的量化指標。
  • 描述軟體/硬體相依的設計考量。

延伸閱讀

14.A 進階真實情境 Worked Example

進階範例:安全關鍵需求的追溯性管理實務
系統:電動車電池管理系統(BMS)
需求數量:500+ 條功能需求,其中 120 條為安全關鍵需求(ASIL B/C/D)

┌─ 追溯矩陣架構 ──────────────────────────────────────────┐
│ Level 1:客戶需求 → 系統需求                              │
│   CR-001 → SR-001, SR-002, SR-003                        │
│                                                           │
│ Level 2:系統需求 → 硬體需求                              │
│   SR-001 → HW-001 (電壓感測精度 ±5mV)                   │
│                                                           │
│ Level 3:系統需求 → 軟體需求                              │
│   SR-001 → SW-001 (電壓濾波演算法)                       │
│                                                           │
│ Level 4:軟體需求 → 軟體單元                              │
│   SW-001 → UC-001 (voltage_filter.c)                     │
│                                                           │
│ Level 5:軟體單元 → 測試案例                              │
│   UC-001 → TC-001, TC-002, TC-003                       │
│                                                           │
│ Level 6:安全需求 → 安全驗證                              │
│   SA-001 → SV-001 (故障注入測試)                         │
├─ 安全關鍵需求的特殊要求 ──────────────────────────────────┤
│ 1. 雙向追溯:每個安全需求必須同時有前向和後向追溯        │
│ 2. 覆蓋率檢查:每個安全需求至少被 1 個測試案例覆蓋        │
│ 3. 變更影響分析:安全需求變更時,自動識別影響範圍         │
│ 4. 版本控制:安全需求變更需保留完整歷史紀錄              │
│                                                           │
│ 工具:Jama Connect + 自動化腳本                          │
│   • 每週自動檢查追溯完整性                               │
│   • 變更時自動通知相關人員                               │
│   • 覆蓋率儀表板(Dashboard)即時顯示                    │
└────────────────────────────────────────────────────────────┘

14.B 深入原理擴充

ISO 26262 Part 8 §6 要求「需求管理」必須建立雙向追溯性。 ASPICE SWE.1 / SYS.2 也有類似要求,但 ISO 26262 的追溯性要求更嚴格—— 必須覆蓋從客戶需求到安全驗證的完整鏈路。

關鍵概念:「追溯性矩陣」的自動化。手動維護追溯矩陣在 500+ 條需求的規模下 幾乎不可能——每週變更 5-10 條需求,手動更新追溯矩陣會成為瓶頸。自動化工具(如 Jama Connect) 可以:① 自動檢查追溯完整性、② 變更時自動識別影響範圍、③ 即時顯示覆蓋率。

14.C 診斷式疑難排解表

症狀可能原因解決方案
追溯矩陣缺口(Gap)需求變更時未同步更新追溯建立變更觸發機制:需求變更 → 自動檢查追溯 → 通知相關人員
追溯矩陣過於龐大無法維護需求粒度過細,追溯關係過多按 ASIL 等級分層管理:安全關鍵需求單獨管理,非安全需求簡化追溯
工具導入後追溯完整性反而下降團隊未正確使用工具提供充分培訓,並建立「工具使用規範」文件

14.D 進階挑戰題

  1. 為 BMS 系統設計完整的追溯矩陣架構,涵蓋 6 個層級的追溯關係。
  2. 若安全關鍵需求 SR-001 在開發中期變更,如何進行影響分析?列出完整的影響分析流程。
  3. 比較手動追溯管理與自動化工具管理的優缺點,各舉 3 個例子。