Main Content

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

指定した最小値と最大値を使用した最適化

説明

モデル内の信号とパラメーターに指定された最大値と最小値を使用して、生成されたコードを最適化します。

カテゴリ: 最適化

設定

既定の設定: オフ

オン

モデル内の信号とパラメーターに指定された最大値と最小値から得られる範囲情報を使用して、生成されたコードを最適化します。

オフ

コード生成時に指定された最小値と最大値を無視します。

ヒント

  • このパラメーターを使用することで生じるモデルと生成コードのシミュレーション間の不一致を検出するには、ノーマル、アクセラレータ、ソフトウェアインザループ (SIL)、またはプロセッサインザループ (PIL) のシミュレーションを実行する前に、[診断][データ有効性][シミュレーション範囲のチェック][警告] または [エラー] に設定します。

  • 以下の項目についてモデルの信号とパラメーターの最小値と最大値を指定します。

    • Inport ブロックと Outport ブロック。

    • ブロック出力。

    • ブロック入力 ( MATLAB Function ブロックや Stateflow Chart ブロックなど)。

    • Simulink.Signal オブジェクト。

  • この最適化では以下の項目について指定された最小値と最大値は考慮されません。

    • Merge ブロック入力。これに対処するには、Merge ブロック出力で Simulink.Signal オブジェクトを使用してこのオブジェクトの範囲を指定します。

    • バス要素。

    • Outport ブロックに直接接続される条件付き実行サブシステム (Triggered Subsystem など) のブロック出力。

      条件付き実行サブシステムの Outport ブロックでは、システムがトリガーされない場合にのみ使用する初期値を指定できます。この場合、ブロックの初期値が範囲に含まれない可能性があるため、最適化でブロック出力の範囲は使用できません。

  • このパラメーターを使用して生成されたコードを Polyspace® Code Prover™ ソフトウェアを使用して検証すると、前は緑だったコードがオレンジでマークされることがあります。たとえば、分母の範囲にゼロを含まない除算がモデルに含まれている場合、生成コードにゼロ除算に対する保護は含まれません。Polyspace Code Prover は、除算の入力に指定された最小値と最大値に関する情報がないため、このコードをオレンジでマークする場合があります。

    Polyspace Code Prover ソフトウェアは、Simulink.SignalSimulink.Parameter などの一部のオブジェクトについては、MATLAB® ワークスペースで指定された最小値と最大値を自動的にキャプチャしません。この例では、Polyspace Code Prover ソフトウェアに範囲情報を提供するために、除算の入力で Simulink.Signal オブジェクトを使用してゼロを含まない範囲を指定します。

    Polyspace Code Prover ソフトウェアは、それらの値をデータ範囲指定 (DRS) ファイルに格納します。ただし、Simulink® モデルで指定された最小値と最大値はキャプチャされません。Polyspace Code Prover に最小値と最大値の追加情報を提供するには、DRS ファイルを手動で定義できます。詳細については、Polyspace Code Prover のドキュメンテーションを参照してください。

  • 倍精度データ型を使用している場合、[コード生成][インターフェイス][非有限数のサポート] コンフィギュレーション パラメーターが選択されていると、この最適化は行われません。

  • モデルに再利用可能なサブシステムのインスタンスが複数あり、各インスタンスで異なる最小値と最大値が指定された入力信号を使用する場合、この最適化によってサブシステムごとに異なるコードが生成され、コードを再利用できなくなる可能性があります。この最適化を行わない場合、Simulink Coder™ ソフトウェアはサブシステムのコードを一度だけ生成し、そのコードをサブシステムの複数インスタンス間で共有します。

  • このオプションが選択されている場合、モデル アドバイザー チェックの [安全性関連の最適化設定をチェック] (Simulink Check) で警告が生成されます。セーフティ クリティカルなアプリケーションの多くでは、コードを追跡できなくなる可能性があるため、デッド コードを自動で除去することは許容されません。

  • この最適化を有効にすると、生成コードから不要なユーティリティ関数や飽和コードを排除する Fixed-Point Designer™ ソフトウェアの機能が向上します。

依存関係

  • このパラメーターは ERT ベースのターゲットの場合にのみ表示されます。

  • このパラメーターには、コード生成時に Embedded Coder® のライセンスが必要です。

コマンド ライン情報

パラメーター: UseSpecifiedMinMax
値: 'on' | 'off'
既定の設定: 'off'

推奨設定

アプリケーション設定
デバッグオフ
トレーサビリティオフ
効率性オン
安全対策

影響なし

関連するトピック