合成後およびインプリメンテーション後のタイミング シミュレーションを実行するとき、シミュレータには次のものが含まれます。
- SIMPRIM ライブラリ コンポーネントを含むゲートレベルのネットリスト
-
SECUREIP
- 標準遅延フォーマット (SDF) ファイル
デザインの全体的な機能は最初に定義しています。デザインがインプリメントされると、正確なタイミング情報が利用できるようになります。
ネットリストおよび SDF を作成するため、Vivado Design Suite は次の処理を実行します。
-
write_verilog
オプションを使用してネットリスト ライターの-mode timesim
、およびwrite_sdf
(SDF アノテーター) を呼び出します。 - 生成されたネットリストをターゲット シミュレータに送ります。
これらのオプションを変更するには、シミュレーション設定で説明されているように、[Settings] ダイアログ ボックスの [Simulation] ページを使用します。
-transport_int_delays -pulse_r 0 -pulse_int_r 0
オプションを追加する必要があります。合成後のタイミング シミュレーション
合成 run が正常に完了すると、
を実行できるようになります。合成後は、汎用ロジック デザインがデバイス特定のプリミティブに合成され、配線遅延およびコンポーネント遅延の見積もり値が利用できます。合成後のタイミング シミュレーションを実行することにより、インプリメンテーション段階で時間を費やす前に、タイミング クリティカル パスがないかを確認できます。合成後のタイミング シミュレーションを選択すると、タイミング ネットリストと SDF ファイルの見積もり遅延が生成されます。シミュレータで生成された SDF ファイルが含められるよう、ネットリスト ファイルには $sdf_annotate
コマンドが含まれます。
インプリメンテーション後のタイミング シミュレーション
インプリメンテーション run が完了すると、
を実行できるようになります。インプリメンテーション後は、デザインはハードウェアにインプリメントおよび配線されています。この段階でタイミング シミュレーションを実行すると、正確なタイミング遅延を使用して、指定速度でデザインが機能しているかどうかを確認できます。このシミュレーションは、制約が設定されていないパスや、非同期パスのタイミング エラー (リセットで発生するエラーなど) を検出するのに便利です。インプリメンテーション後のタイミング シミュレーションを選択すると、タイミング ネットリストと SDF ファイルが生成されます。ネットリスト ファイルには $sdf_annotate
コマンドが含まれるので、生成された SDF ファイルが自動的に指定されます。
シミュレーション設定を指定したときに、SDF ファイルを作成するかどうかと、プロセス コーナーをファーストまたはスローに設定しました。
SDF ファイルには、指定したプロセス コーナーに基づいて異なる min
および max
値が含まれます。
2 つの異なるシミュレーションを実行して、セットアップおよびホールド違反をチェックをしてください。
セットアップ チェックを実行するには、[-process_corner] を [slow] に設定して SDF を作成し、SDF ファイルの max 列を使用します。
ホールド チェックを実行するには、[-process_corner] を [fast] に設定して SDF ファイルを作成し、SDF ファイルの min 列を使用します。使用する SDF 遅延フィールドの指定方法は、使用するシミュレーション ツールによって異なります。このオプションの設定方法は、ご使用のシミュレーション ツールの資料を参照してください。
4 つのタイミング シミュレーションすべてを実行するには、次のように指定します。
- スロー コーナー: SDFMIN および SDFMAX
- ファースト コーナー: SDFMIN および SDFMAX