主要内容

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

モデルの階層構造内のシミュレーション モードの選択

モデルの階層構造をシミュレーションする場合、最上位のモデルと参照モデルがどのように実行されるかを考慮しなければなりません。

  • 最上位モデル — すべての 金宝app模拟®シミュレーション モードをサポートします。最上位モデルの実行を高速化するために、金宝app模拟アクセラレータ モードやラピッド アクセラレータ モードを使用できます。

  • 参照モデル — モデルに対してどのシミュレーション モードでも指定することができますが、そのモデルを参照する際、参照モデルの各インスタンスの模型ブロックが、そのインスタンスのシミュレーション モードを制御します。親モデルのシミュレーション モードが模型ブロックのシミュレーション モードをオーバーライドする場合があります。

シミュレーション モードの詳細についてはシミュレーション モードの選択およびアクセラレータモードの動作を参照してください。

モデル参照のシミュレーション モード

模型ブロックに対して,次のどのシミュレーションモードでも指定することができます。

  • ノーマル

  • アクセラレータ

  • ソフトウェアインザループ (SIL)-嵌入式编码器®が必要

  • プロセッサインザループ (PIL)-嵌入式编码器が必要

ノーマル モードかアクセラレータ モードかを選択する際には、柔軟性と速度のトレードオフが生じます。ノーマル モードは、参照モデルでより多くの 金宝app模拟および 状态流®の機能 (スコープ、端子の値の表示、デバッグ ツールなど) をサポートします。アクセラレータ モードでは、参照モデルでサポートされる機能は少なくなりますが、モデルの階層構造をより速くシミュレーションします。

モデル化要件 ノーマル モード アクセラレータ モード
シミュレーションの速度

モデルの実行は、ノーマル モードではアクセラレータ モードより低速になります。ただし、ノーマル モードで実行される参照モデルは、シミュレーション ターゲットのビルドおよびコンパイルのために、シミュレーションを遅延させません。これは、ノーマル モードでは、参照モデルがインタープリター形式で実行されるためです。

アクセラレータ モードではノーマル モードよりもモデルが高速で実行されます。モデルのシミュレーションを行う前に、金宝app模拟はシミュレーション ターゲットをビルドしコンパイルしなければなりません。これはプロトタイピングには望ましくありません。詳細については、参照モデルに対するシミュレーション ターゲットの管理を参照してください。

デバッグ

金宝app模拟デバッガーを使用すると、ノーマル モードで実行される参照モデル内にブレークポイントを設定できます。詳細については、金宝app模拟デバッガーを参照してください。

金宝app模拟プロファイラーを使用すると、ノーマル モードで実行される参照モデルに対してプロファイリングを有効にできます。親モデルでプロファイリングを有効にしても、参照モデルのプロファイリングは有効になりません。詳細は、プロファイラーによるパフォーマンスデータの取得を参照してください。

アクセラレータモードで実行される参照モデルでは,仿金宝app真软件デバッガーおよび仿真软件プロファイラーによって行われる指定やアクションは無視されます。

動作確認

金宝app模拟链路覆盖™のモデルカバレッジ解析は,ノーマルモードで実行される参照モデルをサポートしています。

金宝app仿真软件覆盖のモデル カバレッジ解析は、アクセラレータ モードで実行される参照モデルを無視します。

調整可能性

ノーマル モードで実行される参照モデルについて、シミュレーション中にブロック パラメーターを調整できます。

アクセラレータモードで実行される参照モデルがベースワークスペースまたはデータディクショナリ内の変数を使用してパラメーター値を設定する場合,変数の値を調整することができます。詳細については,その他のモデル化の目的に関する調整可能性の考慮事項と制限を参照してください。

データ ログ

データ ログはノーマル モードで実行される参照モデルに対して広範なサポートを提供します。

アクセラレータ モードで実行される参照モデルについては、保存に时间序列形式を使用する場合にのみ、工作空间ブロックがデータをログ記録します。

データの可視化

シミュレーションデータインスペクターを使用して,インスタンス固有のシミュレーション結果を表示できます。

これらの可視化の方法によって、ノーマル モードで実行される参照モデルの 1.つのインスタンスのデータのみが表示されます。

  • 参照モデルの范围ブロック,浮动范围ブロックおよび观众范围ブロック

  • 端子の値などの実行時表示

詳細については,ノーマル モードでの複数の参照モデル インスタンスのシミュレーションを参照してください。

シミュレーションデータインスペクターを使用して,インスタンス固有のシミュレーション結果を表示できます。

これらの可視化の方法によって、アクセラレータ モードで実行される参照モデルについてはデータは表示されません。

  • 参照モデルの范围ブロック,浮动范围ブロックおよび观众范围ブロック

  • 端子の値などの実行時表示

最上位モデルの范围ブロックでは、[信号とスコープのマネージャー] を使用して参照モデルにテスト ポイントを追加する場合、アクセラレータ モードで実行される参照モデルのデータを表示できます。テスト ポイントの追加や削除には、モデルのモデル参照シミュレーション ターゲットをリビルドする必要があります。

診断

コンフィギュレーション パラメーター設定は指定されたとおりに適用されます。

アクセラレータ モードで参照されるモデルについては、金宝app模拟は一部のコンフィギュレーション パラメーター設定を無視する場合があります。詳細については、アクセラレータ モードで無視される診断を参照してください。

実行時のチェック

実行時のチェックは有効になります。

一部のブロックでは,そのブロックをアクセラレータモードの参照モデルに含めたときに,ブロックに含まれている実行時チェックが無効になります。このようなブロックの例には,分配ブロック,选择器ブロック,MATLAB函数ブロック,MATLAB系统ブロックがあります。

線形化解析と最適化

ノーマル モードでは、参照モデルのブロックごとの線形化が可能です。この方法により、正確な線形化が達成できます。

アクセラレータ モードでは、モデル参照の離散状態は線形化に提供されません。これらの離散状態は線形化中に摂動しないため、平衡化処理では完全に自由になりません。

ランダムなブロックの出力は、平衡化中に一定に保たれません。出力が一定に保たれないと、最適化プロセスに影響する可能性があります。

外部関数

ノーマル モードで実行される参照モデル内のMATLAB函数ブロックでは、コード生成用に外部関数として宣言された MATLAB®関数を呼び出すことができます。

アクセラレータモードで実行される参照モデル内のMATLAB函数ブロックでは、コード生成用に外部関数として宣言された MATLAB関数を呼び出すことはできません。

系统函数

ノーマル モードで実行される参照モデルは、アクセラレータ モードで実行される参照モデルよりも多くの S函数をサポートします。詳細については、参照モデルにおける 系统函数を参照してください。

アクセラレータ モードで実行される参照モデルでは、ノーマル モードで実行される参照モデルよりもサポートされる S函数は少なくなります。詳細については、参照モデルにおける 系统函数を参照してください。

SILシミュレーション モードおよび 皮尔シミュレーション モードでは、組み込みプロセッサ用の量産コードを生成することで、参照モデルを実行します。ターゲット ハードウェアが使用できないときにはホスト プラットフォームで実行できるため、SILモードは 皮尔シミュレーションの便利な代替手段になります。詳細については、SILシミュレーションおよび公益诉讼シミュレーション(嵌入式编码器)を参照してください。

オーバーライドされたシミュレーション モード

親モデルのシミュレーション モードが模型ブロックのシミュレーション モードをオーバーライドする場合があります。次の表に,親モデルのシミュレーションモードと関連する模型ブロックに基づいて,参照モデルインスタンスに対して仿真金宝app软件が使用するシミュレーションモードを示します。

親モデルによって使用されるシミュレーション モード 模型ブロックのシミュレーション モード
ノーマル アクセラレータ
ノーマル

共存 — 参照モデルはノーマル モードでシミュレーションを実行する。

共存 — 参照モデルはアクセラレータ モードでシミュレーションを実行する。

アクセラレータ

オーバーライド — 参照モデルはアクセラレータ モードでシミュレーションを実行する。

共存 — 参照モデルはアクセラレータ モードでシミュレーションを実行する。

ラピッド アクセラレータ(最上位モデルのみ)

SILおよび 皮尔の詳細については模型参照层次结构中的仿真模式替代行为(嵌入式编码器)を参照してください。

関連するトピック