Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

DO-178C/DO-331 標準へのモデルの準拠性のチェック

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

DO 標準への準拠性をチェックするには、モデル アドバイザーを開いて[タスク別][DO-178C/DO-331 のモデリング標準] でチェックを実行します。

この表は、DO-178C/DO-331 のチェックのリストです。

DO-178C/DO-331 標準が適用される高信頼性システムのモデリングのチェックは以下のとおりです。

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

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

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

  • [タスク別][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)
Relational Operator ブロックの使用をチェック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 ブロックの使用方法 (余剰と逆数)
Math Function ブロック (関数 log および log10) の使用をチェックhisl_0004: Math Function ブロックの使用方法 (自然対数と 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 チャートで単項演算子の使用を禁止してコード準拠性を高める
Simulink との I/O で厳密なデータ型指定が行われていることをチェックhisf_0009: 厳密なデータ型指定 (Simulink および 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: ゼロ除算の計算を回避
Stateflow チャートでのビット演算の使用をチェックhisf_0003: ビット演算の使用方法
ループ制御変数のデータ型をチェック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: Math Function ブロックの使用方法 (余剰と逆数)
Check usage of square root operationshisl_0003: Square Root ブロックの使用
Check usage of log and log10 operationshisl_0004: Math Function ブロックの使用方法 (自然対数と 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: 再帰関数呼び出しを禁止してコード準拠性を向上

関連するトピック