Main Content

IEC 61508、IEC 62304、ISO 26262、ISO 25119 および EN 50128/EN 50657 の各規格へのモデルの準拠性のチェック

モデル アドバイザーを実行すると、モデルまたはサブシステムが以下の規格の選択した内容に準拠しているかどうかをチェックできます。

  • ISO 26262:2018 自動車 — 機能安全

  • ISO 25119:2018 農林業用トラクターおよび機械 — 制御系統の安全関連部品

  • IEC 61508:2010 電気/電子/プログラマブル電子安全システムの機能安全規格

  • EN 50128:2011 鉄道分野 - 通信システム、信号システムおよび処理システム - 鉄道の制御と保護システムのソフトウェア

  • EN 50657:2017 鉄道分野。鉄道車両分野。鉄道車両用ソフトウェア

  • IEC 62304:2015 医療機器ソフトウェア – ソフトウェア ライフ サイクル プロセス

  • MISRA C:2012 クリティカル システムにおける C 言語利用のガイドライン

これらの標準への準拠をチェックするには、モデル アドバイザーを開いて以下のフォルダーでチェックを実行します。

  • [タスク別][ISO 26262 のモデリング標準]

  • [タスク別][ISO 25119 のモデリング標準]

  • [タスク別][IEC 61508 のモデリング標準]

  • [タスク別][EN 50128/EN 50657 のモデリング標準]

  • [タスク別][IEC 62304 のモデリング標準]

この表は、IEC 61508、IEC 62304、ISO 26262、ISO 25119 および EN 50128/EN 50657 のチェックのリストです。

サブフォルダーモデル アドバイザー チェック
N/ADisplay configuration management data
Display model metrics and complexity report
Check for unconnected objects
MISRACheck for missing error ports for AUTOSAR receiver interfaces
Check for unsupported block names
Check bus object names that are used as bus element names
Check for equality and inequality operations on floating-point values
Check for bitwise operations on signed integers
Check integer word length
Check for missing const qualifiers in model functions
Check for recursive function calls
Check for switch case expressions without a default case
バグ レポートDisplay bug reports for IEC Certification Kit (IEC Certification Kit)
Display bug reports for Simulink Check (IEC Certification Kit)
Display bug reports for Simulink Coverage (IEC Certification Kit)
Display bug reports for Requirements Toolbox (IEC Certification Kit)
Display bug reports for Simulink Design Verifier (IEC Certification Kit)
Display bug reports for Simulink Test (IEC Certification Kit)
Display bug reports for Embedded Coder (IEC Certification Kit)
Display bug reports for AUTOSAR Blockset (IEC Certification Kit)
Display bug reports for Simulink PLC Coder (IEC Certification Kit)
Display bug reports for HDL Coder (IEC Certification Kit)
Display bug reports for Polyspace Bug Finder (IEC Certification Kit)
Display bug reports for Polyspace Bug Finder Server (IEC Certification Kit)
Display bug reports for Polyspace Code Prover (IEC Certification Kit)
Display bug reports for Polyspace Code Prover Server (IEC Certification Kit)

以下は、IEC 61508、IEC 62304、ISO 26262、ISO 25119、EN 50128 および EN 50657 の各標準が適用可能な高信頼性システム モデリングに対するチェックです。

高信頼性システム モデリングのモデル チェック

モデル アドバイザーを実行すると、モデルまたはサブシステムが高信頼性システム モデルの安全規格の選択した内容に準拠しているかどうかをチェックできます。

高信頼性システム モデルの規格への準拠性をチェックするには、次のモデル アドバイザーのフォルダーから高信頼性チェックを実行します。

  • [タスク別][DO-178C/DO-331 のモデリング標準][高信頼性システム]

  • [タスク別][IEC 61508 のモデリング標準][高信頼性システム]

  • [タスク別][IEC 62304 のモデリング標準][高信頼性システム]

  • [タスク別][EN 50128/EN 50657 のモデリング標準][高信頼性システム]

  • [タスク別][ISO 26262 のモデリング標準][高信頼性システム]

  • [タスク別][ISO 25119 のモデリング標準][高信頼性システム]

高信頼性システム モデル (Software Considerations in Airborne Systems and Equipment Certification) 標準および関連する標準の詳細については、Radio Technical Commission for Aeronautics (RTCA) を参照してください。

次の表に、高信頼性システム モデルのチェックおよびそれぞれに対応するモデリング ガイドラインを示します。高信頼性モデリング ガイドラインの詳細については、高信頼性システムのモデリングを参照してください。

高信頼性システム モデリングのチェック

高信頼性システム モデルのチェック該当する高信頼性システム用のモデリング ガイドライン
Lookup Table ブロックの使用をチェック hisl_0033: Lookup Table 系ブロックの使用方法
不整合のあるベクトル インデックス手法をチェックhisl_0021: 一貫したベクトル インデックス方法
バリアント ブロックの使用をチェックhisl_0023: バリアント ブロックの検証
プロパティが不明なルート Inport のチェックhisl_0024: Inport インターフェイス定義
Relational Operator ブロックの使用をチェックhisl_0017: 関係演算子を計算するブロックの使用方法 (2)
浮動小数点信号の関係比較のチェックhisl_0016: 関係演算子を計算するブロックの使用方法
Logical Operator ブロックの使用をチェックhisl_0018: Logical Operator ブロックの使用方法
While Iterator ブロックの使用をチェックhisl_0006: While Iterator ブロックの使用方法
For Iterator サブシステムと While Iterator サブシステムの使用をチェックhisl_0007: For Iterator Subsystem または While Iterator Subsystem の使用方法
For Iterator ブロックの使用をチェックhisl_0008: For Iterator ブロックの使用方法
If ブロックおよび If Action Subsystem ブロックの使用をチェックhisl_0010: If ブロックと If Action Subsystem ブロックの使用方法
Switch Case ブロックおよび Switch Case Action Subsystem ブロックの使用をチェックhisl_0011: Switch Case ブロックと Action Subsystem ブロックの使用方法
論理信号に対する安全性関連の最適化設定をチェックhisl_0045: [コンフィギュレーション パラメーター]、[数学とデータ型]、[boolean データ (対 double) として論理信号を処理]
ブロック削減に対する安全性関連の最適化設定をチェックhisl_0046: [コンフィギュレーション パラメーター]、[シミュレーション ターゲット]、[ブロック削減]
アプリケーションのライフスパンに対する安全性関連の最適化設定をチェックhisl_0048: [コンフィギュレーション パラメーター]、[数学とデータ型]、[アプリケーションのライフスパン (日)]
データ初期化に対する安全性関連の最適化設定をチェックhisl_0052: [コンフィギュレーション パラメーター]、[コード生成]、[最適化]、[データの初期化]
データ型変換に対する安全性関連の最適化設定をチェックhisl_0053: [コンフィギュレーション パラメーター]、[コード生成]、[最適化]、[範囲外の値をラップする浮動小数点から整数への変換コードを削除]
除算演算の例外に対する安全性関連の最適化設定をチェックhisl_0054: [コンフィギュレーション パラメーター]、[コード生成]、[最適化]、[除算演算の例外処理を防止するコードを削除]
コメントに対する安全性関連のコード生成設定をチェックhisl_0038: [コンフィギュレーション パラメーター]、[コード生成]、[コメント]
安全性関連のコード生成インターフェイス設定をチェックhisl_0039: [コンフィギュレーション パラメーター]、[コード生成]、[インターフェイス]
コード スタイルに対する安全性関連のコード生成設定をチェックhisl_0047: [コンフィギュレーション パラメーター]、[コード生成]、[コード スタイル]
安全性関連のコード生成識別子の設定をチェックhisl_0049: [コンフィギュレーション パラメーター]、[コード生成]、[識別子]
Abs ブロックの使用をチェックhisl_0001: Abs ブロックの使用法
Math Function ブロック (関数 rem および逆数関数) の使用をチェックhisl_0002: 残余演算および逆数演算の使用
Math Function ブロック (関数 log および log10) の使用をチェックhisl_0004: 自然対数演算と 10 を底とする対数演算の使用
Assignment ブロックの使用をチェックhisl_0029: Assignment ブロックの使用方法
Signal Routing ブロックの使用をチェックhisl_0034: Signal Routing ブロックの使用方法
範囲定義が不明なルート Inport のチェックhisl_0025: 入力インターフェイスの設計の最小値/最大値指定
不明な範囲定義があるルート Outport のチェックhisl_0026: 出力インターフェイスの設計の最小値/最大値指定
Stateflow チャートのタイプのステート マシンをチェックhisf_0001: ステート マシン タイプ
パラレル ステート境界を横切る遷移パスに関する Stateflow チャートのチェックhisf_0013: 遷移パスの使用方法 (パラレル ステートの境界を越える)
ステートと遷移の順序に対して Stateflow チャートをチェックhisf_0002: ユーザー指定のステート/遷移実行順序
Stateflow デバッグ オプションをチェックhisf_0011: Stateflow のデバッグ設定
固有に定義されたデータ オブジェクトの Stateflow チャートをチェックhisl_0061: 明確性のための一意の識別子
厳密なデータ型指定に関する Stateflow チャートのチェックhisf_0015: 厳密なデータ型指定 (変数とパラメーターを式で変換する)
Stateflow チャート内の代入演算のチェックhisf_0065: コード準拠性を高める Stateflow 型キャスト演算
単項演算子に関する Stateflow チャートのチェックhisf_0211: Stateflow チャートで単項演算子の使用を禁止してコード準拠性を高める
継承されたプロパティをもつ MATLAB Function インターフェイスのチェックhiml_0002: MATLAB 関数の境界での厳密な型指定
MATLAB Function のメトリクスのチェックhiml_0003: ユーザー定義の MATLAB 関数の複雑度
MATLAB コード アナライザー メッセージをチェックhiml_0004: コード生成に関する MATLAB コード アナライザーの推奨事項
安全性関連のモデル リファレンス設定をチェックhisl_0037: [コンフィギュレーション パラメーター]、[モデル参照]
ソルバーに対する安全性関連の診断設定をチェックhisl_0043: [コンフィギュレーション パラメーター]、[診断]、[ソルバー]
シミュレーション時間に関する安全性関連のソルバー設定のチェックhisl_0040: [コンフィギュレーション パラメーター]、[ソルバー]、[シミュレーション時間]
ソルバー オプションに関する安全性関連のソルバー設定のチェックhisl_0041: [コンフィギュレーション パラメーター]、[ソルバー]、[ソルバーオプション]
タスクおよびサンプル時間に関する安全性関連のソルバー設定のチェックhisl_0042: [コンフィギュレーション パラメーター]、[ソルバー]、[タスクとサンプル時間オプション]
サンプル時間に対する安全性関連の診断設定をチェックhisl_0044: [コンフィギュレーション パラメーター]、[診断]、[サンプル時間]
パラメーターに対する安全性関連の診断設定をチェックhisl_0302: [コンフィギュレーション パラメーター]、[診断]、[データ有効性]、[パラメーター]
デバッグで使用されるデータに対する安全性関連の診断設定をチェックhisl_0305: [コンフィギュレーション パラメーター]、[診断]、[データ有効性]、[デバッグ]
データ ストア メモリに対する安全性関連の診断設定をチェックhisl_0013: Data Store ブロックの使用方法
型変換に対する安全性関連の診断設定をチェックhisl_0309: [コンフィギュレーション パラメーター]、[診断]、[型変換]
信号の接続性に対する安全性関連の診断設定をチェックhisl_0306: [コンフィギュレーション パラメーター]、[診断]、[接続性]、[信号]
バスの接続性に対する安全性関連の診断設定をチェックhisl_0307: [コンフィギュレーション パラメーター]、[診断]、[接続性]、[バス]
ファンクション コールの接続性に適用する安全性関連の診断設定をチェックhisl_0308: [コンフィギュレーション パラメーター]、[診断]、[接続性]、[関数の呼び出し]
互換性に対する安全性関連の診断設定をチェックhisl_0301: [コンフィギュレーション パラメーター]、[診断]、[互換性]
モデルの初期化に関する安全性関連の診断設定をチェックhisl_0304: [コンフィギュレーション パラメーター]、[診断]、[データ有効性]、[モデルの初期化]
モデル リファレンスの安全性関連の診断設定をチェックhisl_0310: [コンフィギュレーション パラメーター]、[診断]、[モデル参照]
保存に対する安全性関連の診断設定をチェックhisl_0036: [コンフィギュレーション パラメーター]、[診断]、[保存]
Merge ブロックに関する安全性関連の診断設定のチェックhisl_0303: [コンフィギュレーション パラメーター]、[診断]、[データ有効性]、[Merge blocks]
Stateflow に関する安全性関連の診断設定のチェックhisl_0311: [コンフィギュレーション パラメーター]、[診断]、[Stateflow]
モデル オブジェクト名のチェックhisl_0032: モデル オブジェクト名
要件へのリンクのないモデル要素をチェックhisl_0070: モデル内の要件リンクの配置
遷移パスの不適切な使用をチェックhisf_0014: 遷移パスの使用方法 (ステートを通過する)
Bitwise Operator ブロックの使用をチェックhisl_0019: ビット演算の使用方法
インデックス信号をもつブロックのデータ型をチェックhisl_0022: インデックス信号のデータ型の選択
モデル ファイル名をチェックhisl_0031: モデル ファイル名
MATLAB Function ブロック内の if/elseif/else パターンをチェックhiml_0006: MATLAB コードの if/elseif/else パターン
MATLAB Function ブロック内の switch ステートメントをチェックhiml_0007: MATLAB コードの switch/case/otherwise パターン
グラフィカル関数のグローバル変数をチェックhisl_0062: グラフィカル関数内のグローバル変数
ユーザー定義オブジェクト名の長さをチェックhisl_0063: MISRA C:2012 準拠性を高めるユーザー定義オブジェクト名の長さ
Merge ブロックの使用をチェックhisl_0015: Merge ブロックの使用方法
条件付き実行サブシステムの使用をチェックhisl_0012: 条件付き実行サブシステムの使用方法
標準化された MATLAB 関数ヘッダーの使用をチェックhiml_0001: 標準化された MATLAB 関数ヘッダーの使用
MATLAB Function ブロック内の関係演算子の使用をチェックhiml_0008: MATLAB コードの関係演算子のデータ型
MATLAB Function ブロック内での論理演算子と論理関数の使用をチェックhiml_0010: MATLAB コードでの論理演算子と論理関数の使用
条件式の型とサイズをチェックhiml_0011: 条件式のデータ型とサイズ
Stateflow チャート内の端子の名前をチェックhisf_0016: Stateflow の端子名
Stateflow データ オブジェクトのスコープをチェックhisf_0017: Stateflow データ オブジェクトのスコープ
Gain ブロックの使用をチェックhisl_0066: Gain ブロックの使用方法
Check for divide-by-zero calculationshisl_0067: ゼロ除算の計算を回避
ループ制御変数のデータ型をチェックhisl_0102: MISRA C:2012 準拠性を高めるループ制御変数のデータ型
MISRA C:2012 のコンフィギュレーション パラメーターをチェックhisl_0060: MISRA C:2012 準拠性を高めるコンフィギュレーション パラメーター

C/C++ 量産コード展開に推奨されないブロックがないかチェック

MISRA C:2012 で推奨されないブロックをチェック

hisl_0020: MISRA C:2012 準拠で推奨されないブロック

指定された最小値と最大値について安全性関連の最適化設定をチェック

hisl_0056: [コンフィギュレーション パラメーター]、[コード生成]、[最適化]、[指定した最小値と最大値を使用した最適化]
Check usage of remainder and reciprocal operationshisl_0002: 残余演算および逆数演算の使用
Check usage of square root operationshisl_0003: 平方根演算の使用
Check usage of log and log10 operationshisl_0004: 自然対数演算と 10 を底とする対数演算の使用
Check usage of Reciprocal Sqrt blockshisl_0028: Reciprocal Square Root ブロックの使用
Check safety-related settings for hardware implementationhisl_0071: Configuration Parameters > Hardware Implementation >Inconsistent hardware implementation settings
Check usage of recursionshisf_0004: 再帰関数呼び出しを禁止してコード準拠性を向上
Check MATLAB functions not supported for code generationhiml_0012: コード生成での MATLAB 関数の使用方法
Metrics for generated code complexityhiml_0013: 組み込み MATLAB 関数の複雑度に関する制限
Check for parameter tunability ignored for referenced modelshisl_0072: 参照モデルの調整可能なパラメーターの使用方法
Check usage of bit-shift operationshisl_0073: ビットシフト演算の使用方法
Check safety-related diagnostic settings for variantshisl_0074: [コンフィギュレーション パラメーター]、[診断]、[バリアントに関するモデル化の問題]
Check for disabled and parameterized library linkshisl_0075: ライブラリ リンクの使用方法
Check for unreachable and dead codehisl_0101: デッド ロジックが発生する演算を回避し、コード準拠性を高める

関連するトピック