メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

シミュレーション速度向上のヒント

ベースラインパフォーマンス数値の取得

HDL と Simulink® モデルの実行時間を個別に計測し、それらを合計することでパフォーマンス数値のベースラインを設定できますが、これよりも優れたパフォーマンスは期待できないかもしれません。個別のシミュレーションが代表的なものであることを確認してください。非現実的な入力刺激を使用して HDL のみのシミュレーターを実行すると、現実的な入力刺激が提供された場合よりもはるかに高速になる可能性があります。

シミュレーションパフォーマンスの分析

協調シミュレーションには一定のオーバーヘッドが伴いますが、HDL シミュレーション自体もパフォーマンスを低下させる場合があります。パフォーマンスを分析して改善しようとするときは、次の質問を自問してください。

考慮速度向上のための提案
NFS またはその他のリモート ファイル システムを使用していますか?ファイルシステムの速度はどれくらいですか?別のタイプを使用することを検討するか、使用しているファイル システムがパフォーマンスに影響を与えることを想定してください。
Simulink と HDL シミュレーターに別々のマシンを使用していますか?ネットワークの速度はどれくらいですか?ネットワークが静かになるまで待つか、システム管理者に連絡して接続を改善するためのアドバイスを求めてください。
Simulink と HDL シミュレーターに同じマシンを使用していますか?
  • ソケットの代わりに共有パイプを使用していますか?共有メモリは高速です。

  • Simulink プロセスと HDL プロセスは、ディスクへのスワップを引き起こすほどの大きさですか?メモリの追加を検討してください。そうしないと、巨大なプロセスが実行され、パフォーマンスに影響が出る可能性があることに注意してください。

HDL Cosimulation ブロックで 最適な (つまり、可能な限り大きい) Simulink サンプル レートを使用していますか?

たとえば、出力サンプル レートを 1 に設定し、10 サンプルごとに 1 つだけ使用する場合は、レートを 10 にして、Simulink と HDL シミュレータ間のトラフィックを削減できます。

もう 1 つの例としては、非常に高速なクロックを HDL Cosimulation ブロックへの入力として配置したが、他の入力にはそのような高速レートが必要ない場合が挙げられます。その場合、HDL でクロックを生成するか、(Xcelium™ および ModelSim® ユーザーのみ) HDL Cosimulation ブロックの Clocks または Simulation ペインを介してクロックを生成する必要があります。

ModelSim ユーザー:vopt フローを使用して HDL をコンパイル/作成していますか?-voptargs=+acc を使用して、設計を最適化し、(HDL) シミュレータの速度を最大化します (ModelSim ユーザーのみ)。

Simulink Accelerator™ モードを使用していますか?

加速モードを使用すると、モデルの実行を高速化できます。加速の詳細については、アクセラレーションとは (Simulink) を参照してください。

アクセラレータ モードは Vivado® シミュレータではサポートされていません。Vivado ユーザーは、コシミュレーションに通常モードを使用する必要があります。

Communications Toolbox™ ソフトウェアをお持ちの場合は、フレーム信号の使用を検討しましたか?フレーム化された信号は、Simulink/HDL 相互作用の数を減らします。