インテル® Quartus® Prime プロ・エディション ユーザーガイド: スクリプティング

ID 683432
日付 9/24/2018
Public
ドキュメント目次

1.9. スクリプト実行の自動化

コンパイルのさまざまな時点でスクリプトが自動的に実行されるようにコンフィグレーションすることができます。 この機能を使用して、カスタムレポートを実行し、特定のアサインメントを作成し、他の多くのタスクを実行するスクリプトを自動的に実行します。

次の3 つのグローバル・アサインメントは、スクリプトが自動的に実行される時期を制御します。

  • PRE_FLOW_SCRIPT_FILE - フローの開始前
  • POST_MODULE_SCRIPT_FILE - モジュールの終了後
  • POST_FLOW_SCRIPT_FILE - フローの終了後

モジュールとは、フロー内で1つのステップを実行する インテル® Quartus® Prime実行コマンドです。たとえば、論理合成 (quartus_syn) とタイミング分析 (quartus_sta) の2つのモジュールです。

フローとは、 インテル® Quartus® Prime開発ソフトウェアが定義済みのオプションで実行する一連のモジュールです。たとえば、デザインのコンパイルは、一般に(指示されたモジュールによって実行される)次のステップで構成されるフローです。

  1. 論理合成 (quartus_syn)
  2. フィッター (quartus_fit
  3. アセンブラー (quartus_asm
  4. タイミング・アナライザー (quartus_sta)

その他のフローについては、execute_flow Tclコマンドのヘルプで説明しています。さらに、 インテル® Quartus® Prime GUIのProcessingメニューのコマンドの多くは、このデザインフローに対応しています。

自動的にスクリプトを実行するようにアサインメントを作成するには、次の形式でアサインメントをプロジェクトの.qsfに追加します。

set_global_assignment -name <assignment name> <executable>:<script name>

インテル® Quartus® Prime開発ソフトウェアがスクリプトを実行します。

<executable> -t <script name> <flow or module name> <project name> <revision name>

argv変数(またはquartus (args)変数)に引き渡される第1引数は、使用するアサインメントに応じて、実行中のフローまたはモジュールの名前になります。第2引数はプロジェクトの名前、第3引数はリビジョンの名前です。

最後のプロセス、現在のプロジェクト、および現在のリビジョンは、 インテル® Quartus® Prime開発ソフトウェアによって引き渡され、以下のコマンドでアクセスすることができます。
set process  [lindex $quartus(args) 0]
set project  [lindex $quartus(args) 1]
set revision [lindex $quartus(args) 2]

project_open $project -revision $revision

POST_MODULE_SCRIPT_FILEアサインメントを使用する場合、指定されたスクリプトはフロー内のすべての実行コマンドに続いて自動的に実行されます。モジュール名(スクリプトに引き渡された第1引数)との文字列比較を使用して、スクリプト処理を特定のモジュールに分離することができます。