Main Content

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

デッド ロジックの検出

モデルをシミュレートする前に、デッド ロジックの検出を使用して、デッド ロジックについてモデルを解析します。Simulink® Design Verifier™ におけるデッド ロジックの設計エラー検出には、次の 2 つの解析方法があります。

  • デッド ロジック (一部):このオプションを選択した場合、Simulink Design Verifier は、浮動小数点の有理近似などの近似を行わずに、またはループの近似中にモデルを解析します。詳細については、近似を参照してください。このオプションを使用すると、Simulink Design Verifier でアクティブ ロジックまたは未判定のオブジェクティブがレポートされず、モデルのデッド ロジックが特定されない場合があります。

    このオプションは次で使用できます。

  • 網羅的解析を実行:このオプションを使用すると、Simulink Design Verifier は、デッド ロジックと未判定のオブジェクティブに加えて、アクティブ ロジックをレポートします。このオプションにより、場合によっては追加のデッド ロジックが特定または検出される場合があります。解析では近似が使用され、それに応じてレポートされます。

    このオプションは、[コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier][設計エラー検出] ペインで使用できます。

デッド ロジックの部分チェックを実行

モデル アドバイザーを使用していない場合、デッド ロジックを検出するには、次を行います。

  1. [Design Verifier] タブの [モード] セクションで、[設計エラー検出] を選択します。

  2. [エラー検出の設定] をクリックします。

  3. [コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier][設計エラー検出] ペインで、次を行います。

    1. デッド ロジック (一部)オプションを有効にします。

    2. 網羅的解析を実行オプションが選択されている場合、オフにします。

  4. [OK] をクリックしてこれらの設定を適用し、[コンフィギュレーション パラメーター] ダイアログ ボックスを閉じます。

  5. [設計エラー検出] をクリックします。

デッド ロジックの網羅的解析を実行

  1. [Design Verifier] タブの [モード] セクションで、[設計エラー検出] を選択します。

  2. [エラー検出の設定] をクリックします。

  3. [コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier][設計エラー検出] ペインで、デッド ロジック (一部)および網羅的解析を実行の各オプションを有効にします。

  4. [OK] をクリックしてこれらの設定を適用し、[コンフィギュレーション パラメーター] ダイアログ ボックスを閉じます。

  5. [設計エラー検出] をクリックします。

デッド ロジック解析の実行および結果の確認

この例では、sldvSlicerdemo_dead_logic モデル例でのデッド ロジックの検出方法を説明します。デッド ロジックの検出では、モデル要素が非アクティブで残される原因となる、モデル内の到達不可能なオブジェクティブを見つけます。

  1. sldvSlicerdemo_dead_logic モデルを開きます。

    open_system('sldvSlicerdemo_dead_logic');
  2. [Design Verifier] タブの [モード] セクションで、[設計エラー検出] を選択します。

  3. [エラー検出の設定] をクリックします。

  4. [コンフィギュレーション パラメーター] ダイアログ ボックスの [Design Verifier][設計エラー検出] ペインで、デッド ロジック (一部)オプションを有効にし、網羅的解析を実行オプションをオフにします。

  5. [設計エラー検出] をクリックします。

    デッド ロジックについてモデルが解析され、結果が [検証結果の概要] ウィンドウに表示されます。結果には、24 個のオブジェクティブ中 7 個がデッド ロジックであることが示されています。

  6. [解析結果をモデル上で強調表示] をクリックします。デッド ロジックのモデル要素は赤で強調表示されます。

  7. Controller subsystem を開き、赤で強調表示された OR ブロックをクリックします。結果インスペクターにはデッド ロジックの概要が表示されます。

    set 入力は 1 と等しいため、OR ブロックの input port 1[true のみ可能] となります。ステータスは、input port 1 の偽条件がデッド ロジックであることを示しています。同様に、オブジェクティブが実行されないため、input port 2unreachable であり、これはデッド ロジックです。

  8. [検証結果の概要] ウィンドウで [HTML] をクリックして、詳細な解析レポートを参照します。

    レポートには、モデル内でデッド ロジックとなるすべての結果の概要が表示されます。

    デッド ロジック

    詳細な解析結果は、Simulink Design Verifier データ ファイルDeadLogic field に格納されます。このデータ ファイルは、結果のさらなる解析に使用できます。

関連するトピック