• 検索結果がありません。

Atelier Inc. & WITZ Inc. © 2015 All Rights Reserved 2015/7/30 SECセミナー

ソフトウェアの誤動作に影響する故障原因 (Fault) の代表例

コンポーネント 故障モード

固着

タイムアウト 固着

データ化け 固着

データ化け 固着

データ化け

誤った命令の実行 命令が実行されない データの固着

アドレスの固着 データ化け

アドレス化け データの固着 アドレスの固着 データ化け

アドレス化け

クロック 周期の誤り

ソフトウェア ソフトウェアのバグ

スタックポインタ 命令デコーダ

ROM

RAM

マイコン故障に対する主なソフトウェアによる安全策

故障モード 主な安全策(故障診断方法) ISO26262-5 ROM 故障 ・チェックサムや CRC による ROM 故障検出 Table D.5 RAM 故障

・チェックサムやパターンテストによる RAM 故 障検出

・安全関連データの2重管理

Table D.6

CPU コア故障

・レジスタのテスト

・スタックオーバー/アンダーフロー検出

・実行シーケンスモニタ+ WDT

Table D.4

Table D.10

クロック故障 ・タイムウインド付き WDT Table D.10

内部バス故障検出 ・ウォーキングビットによるバス故障検出 Table D.14

Atelier Inc. & WITZ Inc. © 2015 All Rights Reserved 2015/7/30 SECセミナー

RAM 故障に対する安全策(故障診断)の例

ISO26262-5

90%

99%

60%

99%

99%

99%

DC

ソフトウェアのバグ(誤動作)検出機構( IEC61508 )

IEC61508-3

Atelier Inc. & WITZ Inc. © 2015 All Rights Reserved 2015/7/30 SECセミナー

ソフトウェアのバグ(誤動作)検出機構( ISO26262 )

ISO26262-6

<従来開発>

テストがしっかり出ていてバグが無い。

<機能安全>

テストの完全性は不可能。

バグが潜んでいることを前提に対処。

ソフトウェアの誤動作に影響する故障原因 (Fault) と異常動作の一例

1.v_req_heatの上下限補正

(0~5の範囲にする)

20.v_req_heat --S3押下割込み

30.v_req_heat ++

S4押下割込み main

2.v_req_heatに対応したS1,S2出 力時間(t)を変換テーブルから取得

し、v_tに格納する

3.S1のポートに‘1’を出力

4.Wait(v_t)

5.S1のポートに‘0’を出力

6.Wait(d)

7.S2のポートに‘1’を出力

8.Wait(v_t)

9.S2のポートに‘0’を出力

10.Wait(d) 処理のスキップ

処理の繰り返し

原因:ROM故障

原因:割込みコントローラ故障

・割込みが不要に入る

・割込みが入らない

原因:RAM故障、

ノイズによるRAM化け

・変数が異なる値になる

原因:クロック故障 待ち時間が期待値より長い・短い 誤処理

原因:CPUコア故障

(PC,SP,レジスタ,デコー ダ

,etc

※IHクッキングヒーターの例

Atelier Inc. & WITZ Inc. © 2015 All Rights Reserved 2015/7/30 SECセミナー

ソフトウェア詳細設計の改善例

IHクッキングヒーターの例

5. 安全分析演習

Atelier Inc. & WITZ Inc. © 2015 All Rights Reserved 2015/7/30 SECセミナー

【再掲】 H&R と 安全分析 の違い

• ハザード&リスク分析( H&R )≒ ISO12100

– ハザード(危険事象)を抽出し、

• 機能安全では「万が一故障した場合の誤動作」も想定

– リスクを評価し、

• 機能安全では「 SIL/ASIL 」などが決定

– 安全策を検討する。

• 安全分析(機能安全)

– 前提:電気系部位の故障対策(安全設計)が検討済 – 電気系部位について、故障しても危険にならないこ

とを確認する。

主な安全分析手法の概要

FTA

( Fault Tree Analysis)

故障原因

のリスト 単一の故障

関連したドキュメント