インテル® Quartus® Primeプロ・エディション ユーザーガイド: パーシャル・リコンフィグレーション

ID 683834
日付 5/11/2020
Public
ドキュメント目次

2.8.5. PRペルソナ・シミュレーション・モデルの生成

Intel Quartus Prime EDA Netlist Writerを使用して、PRペルソナ・シミュレーション・モデルを作成します。シミュレーション・モデルは、ペルソナの合成後ゲートレベル・ネットリストを表します。

PRシミュレーション・モデルをペルソナに対して使用する場合、ネットリストには、そのモデル用の新しい altera_sim_pr_activate 最上位信号が含まれています。この信号を非同期に駆動して、モデル内のすべてのレジスターをXでロードすることができます。この機能を使用すると、新しいペルソナのリセットシーケンスの検証をPRイベントの完了時に行うことができます。リセットシーケンスの検証は、SystemVerilogアサーション、または他のチェッカーを使用して行います。

デフォルトで、PRシミュレーション・モデルは、pr_activate 信号のアサート時に、Xをレジスターのストレージエレメントに非同期にロードします。この動作のパラメーター化は、レジスターごとで行うか、またはシミュレーション全体のデフォルトの基準で行います。シミュレーション・モデルでは、次の4つの組み込みモードをサポートしています。

  • load X
  • load 1
  • load 0
  • load rand

SystemVerilogクラスを使用して、次のモードを指定します。

  • dffeas_pr_load_x
  • dffeas_load_1
  • dffeas_load_0
  • dffeas_load_rand

必要に応じて、独自のPRアクティベーション・クラスを作成し、クラスで pr_load 変数を定義してPRアクティベーション値を指定してください。

次の手順に従って、PRデザインのシミュレーション・モデルを生成します。

  1. インテル® Quartus® Primeプロ・エディションでPRプロジェクトのベースリビジョンを開き、Processing > Start > Start Analysis & Synthesisをクリックします。 または、次のコマンドラインを実行します。
    quartus_syn <project name> -c <base revision name>
  2. 合成が完了したら、Project > Export Design Partitionをクリックします。root partitionPartition nameに対して選択し、synthesizedSnapshotに対して選択してから、OKをクリックします。または、次のコマンドラインを実行します。
    quartus_cdb <project name> -c <base revision name> \ "--export_block root_partition --snapshot synthesized \ --file <static qdb name>
  3. Project > Revisionsをクリックして、現在のリビジョンを、エクスポートするペルソナのリビジョンに切り替えます。
  4. Processing > Start > Start Analysis & Synthesisをクリックします。または、次のコマンドラインを実行します。
    quartus_syn <project name> -c <persona revision name>
  5. ペルソナリビジョンの合成が完了したら、次のコマンドラインを実行してPRシミュレーション・モデルを生成します。
    quartus_eda <project name> –c <persona revision name> "--pr --simulation \ --tool=modelsim --format=verilog --partition=<pr partition name> \ --module=<partition name>=<persona module name>
  6. ステップ3から5をシミュレーションを行うすべてのペルソナに対して繰り返します。

PRシミュレーション・モデル生成の全スクリプト

quartus_syn <project name> -c <base revision name> quartus_cdb <project name> -c <base revision name> \ "--export_block root_partition --snapshot synthesized \ --file <static qdb name> quartus_syn <project name> -c <persona revision name> quartus_eda <project name> –c <persona revision name> \ "--pr --simulation --tool=modelsim --format=verilog \ --partition=<pr partition name> --module=<partition name>=\ <persona module name>