外部プログラムの呼び出し - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: Tcl スクリプト機能の使用 (UG894)

Document ID
UG894
Release Date
2022-06-08
Version
2022.1 日本語

外部プログラムを Tcl 内から呼び出して、戻された結果を取り込むことができます。外部プログラムまたはコマンドを呼び出す場合、未知の Tcl コマンドを OS (Windows/Linux) に送信して実行する自動メカニズムもありますが、常に手動で指定することをお勧めします。これには、exec コマンドを使用します。

スクリプトがすべてのホスト OS (Windows または Linux) および Vivado モード (Tcl モード、GUI、またはバッチ モード) で動作するようにするためには、exec コマンドを使用して結果が同じになるようにしておくことが重要です。

次の例 (Linux) では、run コマンドを呼び出して、ls ディレクトリの下のすべてのファイルとディレクトリのリストを取得しています。

vivado% set result [exec ls]
vivado% foreach element [split $result \n] { ... }

Windows での同等の例は次のとおりです。

vivado% set result [exec cmd /c dir /B]
vivado% foreach element [split $result \n] { ... }

exec を付けずに ls コマンドを呼び出すと、一部の Vivado モードでスクリプトがエラーになる可能性があるので、注意してください (Vivado IDE (統合設計環境)/Tcl モード vs バッチ モードを参照)。

次の例では、Perl スクリプトを実行して、その結果を Tcl 環境に送信しています。exec コマンドで /bin/perl (ユーザー環境と一致すると想定) を呼び出すことで、Perl スクリプト自体が呼び出されます。

vivado% set result [exec /bin/perl <path_to>/my_perl_script.pl]