XSCT コマンド

ザイリンクス ソフトウェア コマンド ツール (XSCT) を使用すると、Vitis ワークスペースの作成、ハードウェアおよびソフトウェアの調査、プロジェクトのデバッグおよび実行をすべてコマンド ラインからできます。

XSCT コマンドは、広く次のカテゴリに分類されます。各カテゴリのコマンドについては、次に説明します。

ヒント:
  • 各コマンドのヘルプは、XSCT コンソールで help <command> または <command> -help を実行すると表示されます。使用可能な XSCT コマンドは、help commands で表示できます。
  • Ctrl+C を使用すると、fpgaelf download、または for/while ループのような長く実行されているコマンドを終了することもできます。
  • XSCT は Ctrl+C を 2 回連続で押すと終了できます。
  • Windows 形式のパスは、波かっこ {} 内に含めます。

ターゲット接続管理

次に、接続コマンドをリストします。

connect

hw_server/TCF エージェントに接続します。

構文

connect [options]

サーバーへの接続、接続のリスト、または接続間の切り替えを実行します。

オプション

オプション 説明
-host <host name/ip> ホスト マシンの名前/IP アドレス。
-port <port num> TCP ポート番号
-url <url> hw_server/TCF エージェントの URL
-list オープン接続をリストします。
-set <channel-id> アクティブ接続を設定します。
-new 新しい接続を、同じ URL に対して既に 1 つある場合でも作成します。
-xvc-url <url> ザイリンクス仮想ケーブル接続を開きます。
-symbols シンボル サーバーを起動して、リモート接続のソース レベルのデバッグをイネーブルにします。

戻り値

戻り値は、使用されるオプションによって異なります。

-port, -host, -url, -new: 新しい接続の <channel-id> が返されるか、接続できなかった場合はエラーが返されます。

-list: オープン チャネルのリストが返されるか、オープン チャネルがない場合は何も返されません。

-set: なし

connect -host localhost -port 3121

ホスト localhost およびポート 3121 の hw_server/TCF エージェントに接続します。

connect -url tcp:localhost:3121

前の例と同じです。

disconnect

hw_server/TCF エージェントから接続を解除します。

構文

disconnect

アクティブ チャネルから接続を解除します。

disconnect <channel-id>

指定したチャネルから接続を解除します。

戻り値

接続が閉じた場合は何も返されません。無効なチャネル ID が指定された場合はエラー文字列が返されます。

targets

ターゲットをリストするか、ターゲット間を切り替えます。

構文

targets [options]

使用可能なターゲットをリストします。

targets <target id>

<target id> をアクティブ ターゲットとして選択します。

オプション

オプション 説明
-set 現在のターゲットをリストの 1 つのエントリに設定します。これは、-filter オプションと一緒に使用すると便利です。リストが空の場合や複数のエントリが含まれる場合は、エラーが返されます。
-regexp フィルター設定に regexp を使用します。
-nocase フィルター設定で大文字/小文字を区別しません。
-filter <filter-expression> リストに含めるターゲットをプロパティに基づいて制御するフィルター式を指定します。フィルター式は Tcl の expr 構文と類似しています。ターゲット プロパティは名前による参照です。Tcl 変数には $ 構文を使用してアクセスしますが、文字列はクォーテーションで囲む必要があります。演算子 ==、!=、<=, >=、<, >、&& および || のほか、() もサポートされます。これらの演算子は Tcl の expr 演算子と同じように動作します。文字列一致演算子 =~ および !~ は、regexp または文字列一致のいずれかを使用した rhs パターンの lhs 文字列と一致します。
-target-properties ターゲット プロパティを含むディクショナリの Tcl リストを返します。
-index <index> JTAG スキャン チェーンの位置に基づいてターゲットを含めます。これは -filter {jtag_device_index==<index>} を指定するのと同じです。
-timeout <sec> フィルター オプションで指定したターゲットがスキャン チェーンで見つかるか、タイムアウトするまでポーリングします。このオプションは、filter オプションにのみ使用できます。タイムアウト値の単位は秒です。デフォルトのタイムアウトは 3 秒です。

戻り値

戻り値は、使用されるオプションによって異なります。

<none>: オプションを使用しない場合はターゲット リスト。

-filter: フィルターされたターゲット リスト。

-target-properties: ターゲット プロパティを含む Tcl リスト。

ターゲットの選択ができなかった場合はエラーが返されます。

targets

すべてのターゲットをリストします。

targets -filter {name =~ "ARM*#1"}

ARM で始まり #1 で終わる名前のターゲットをリストします。

targets 2

id 2 のターゲットを現在のターゲットとして設定します。

targets -set -filter {name =~ "ARM*#1"}

ARM で始まり #1 で終わる名前のターゲットを現在のターゲットに設定します。

targets -set -filter {name =~ "MicroBlaze*"} -index 0

MicroBlaze で始まり、最初の JTAG デバイスであるターゲットを現在のターゲットに設定します。

gdbremote connect

GDB リモート サーバーに接続します。

構文

gdbremote connect [options] server

GDB リモート サーバー (qemu など) に接続します。リモートの GDB サーバーへの接続には、tcfgdbclient という特別なクライアントが使用されます。

オプション

オプション 説明
-architecture <name> デフォルト アーキテクチャを指定します。

戻り値

正しく接続された場合は何も返されません。接続されなかった場合はエラー文字列が返されます。

gdbremote disconnect

GDB リモート サーバーへの接続を解除します。

構文

gdbremote disconnect [target-id]

GDB リモート サーバー (qemu など) への接続を解除します。

戻り値

接続が閉じた場合は何も返されません。アクティブな接続がない場合は、エラー文字列が返されます。

ターゲット レジスタ

次に、レジスタ コマンドをリストします。

rrd

アクティブ ターゲットのレジスタを読み出します。

構文

rrd [options] [reg]

レジスタまたはレジスタ定義を読み出します。ターゲットがプロセッサ コアの場合、プロセッサ コア レジスタを読み出すことができます。ターゲットがプロセッサ コアのグループを示す場合、システム レジスタまたは IOU レジスタを読み出すことができます。

オプション

オプション 説明
-defs レジスタ値ではなく、レジスタ定義を読み出します。
-no-bits レジスタ値と一緒にビット フィールドは表示されません。デフォルトでは、ビット フィールドはある場合は表示されます。

戻り値

問題ない場合、レジスタ名および値またはレジスタ定義が返されます。レジスタが読みだせなかったり、無効なレジスタが指定された場合はエラー文字列が返されます。

rrd

最上位レジスタまたはグループを読み出します。

rrd r0

レジスタ r0 を読み出します。

rrd usr r8

グループ usr のレジスタ r8 を読み出します。

rwr

レジスタへ書き込みます。

構文

rwr <reg> <value>

<value><reg> で指定したアクティブなターゲット レジスタに書き込みます。プロセッサ コア ターゲットの場合、プロセッサ コア レジスタを書き込むことができます。プロセッサ コアのグループを示すターゲットの場合は、システム レジスタまたは IOU レジスタを書き込むことができます。

戻り値

問題がない場合は何も返されません。無効なレジスタが指定されるか、レジスタが書き込まれない場合はエラー文字列が返されます。

rwr r8 0x0

0x0 をレジスタ r8 に書き込みます。

rwr usr r8 0x0

0x0 をグループ usr のレジスタ r8 に書き込みます。

プログラムの実行

次に、実行コマンドをリストします。

state

ターゲットの現在のステートを表示します。

構文

state

ターゲットの現在の実行ステートを返します。

stop

アクティブ ターゲットを停止します。

構文

stop

アクティブ ターゲットの実行を停止します。

戻り値

ターゲットが停止された場合は何も返されません。ターゲットが既に停止されているか停止できない場合は、エラー文字列が返されます。

ターゲットが停止されると、コンソールに情報メッセージが表示されます。

con

アクティブ ターゲットを再開します。

構文

con [options]

アクティブ ターゲットの実行を再開します。

オプション

オプション 説明
-addr <address> <address> で指定したアドレスから実行を再開します。
-block ターゲットが停止するか、タイムアウトするまでブロックします。
-timeout <sec> タイムアウト値を秒数で指定します。

戻り値

ターゲットが再開した場合は何も返されません。ターゲットが既に実行中の場合、再開できない場合、または再開した後タイムアウト内に停止しない場合は、エラー文字列が返されます。

ターゲットが再開すると、コンソールに情報メッセージが表示されます。

con -addr 0x100000

アドレス 0x100000 からアクティブ ターゲットの実行を再開します。

con -block

アクティブ ターゲットの実行を再開し、ターゲットが停止するまで待機します。

con -block -timeout 5

アクティブ ターゲットの実行を再開し、ターゲットが停止するか 5 秒のタイムアウトに達するまで待機します。

stp

ソース コードの 1 行にステップ インします。

構文

stp [count]

制御がソース コードの別の行に属する命令に到達するまでアクティブ ターゲットの実行を再開します。関数が呼び出される場合は、その関数コードの最初の行で停止します。行番号情報がない場合は、エラーが返されます。<count> が 1 より大きい場合は、<count> 回分繰り返します。<cout> のデフォルト値は 1 です。

戻り値

ターゲットがシングル ステップの場合は何も返されません。ターゲットが既に実行中か再開できない場合はエラー文字列が返されます。

ターゲットが次のアドレスで停止すると、コンソールに情報メッセージが表示されます。

nxt

ソース コードの 1 行をステップ オーバーします。

構文

nxt [count]

制御がソース コードの別の行に属する命令に到達するまでアクティブ ターゲットの実行を再開しますが、呼び出された関数を全速力で実行します。行番号情報がない場合は、エラーが返されます。<count> が 1 より大きい場合は、<count> 回分繰り返します。<cout> のデフォルト値は 1 です。

戻り値

ターゲットが次のソース行にステップした場合は何も返されません。ターゲットが既に実行中か再開できない場合はエラー文字列が返されます。

ターゲットが次のアドレスで停止すると、コンソールに情報メッセージが表示されます。

stpi

マシン命令を実行します。

構文

stpi [count]

1 つのマシン命令を実行します。命令が関数呼び出しの場合は最初の命令で停止し、<count> が 1 より大きい場合は <count> 回繰り返します。<cout> のデフォルト値は 1 です。

戻り値

ターゲットがシングル ステップの場合は何も返されません。ターゲットが既に実行中か再開できない場合はエラーが返されます。

ターゲットが次のアドレスで停止すると、コンソールに情報メッセージが表示されます。

nxti

マシン命令をステップ オーバーします。

構文

nxti [count]

1 つのマシン命令をステップ オーバーします。命令が関数呼び出しの場合、制御が関数から戻るまで実行は続行されます。<count> が 1 より大きい場合は、<count> 回分繰り返します。<cout> のデフォルト値は 1 です。

戻り値

ターゲットが次のアドレスにステップした場合は何も返されません。ターゲットが既に実行中か再開できない場合はエラー文字列が返されます。

ターゲットが次のアドレスで停止すると、コンソールに情報メッセージが表示されます。

stpout

現在の関数から抜けます。

構文

stpout [count]

制御が現在の関数から返されるまで、現在のターゲットの実行を再開します。<count> が 1 より大きい場合は、<count> 回繰り返します。<cout> のデフォルト値は 1 です。

戻り値

ターゲットが現在の関数から抜けた場合は何も返されません。ターゲットが既に実行中か再開できない場合はエラーが返されます。

ターゲットが次のアドレスで停止すると、コンソールに情報メッセージが表示されます。

dis

命令をディスアセンブルします。

構文

dis <address> [num]

<address> で指定したアドレスで <num> 命令を逆アセンブルします。現在の PC で命令を逆アセンブルするには、キーワード pc を使用します。<num> のデフォルト値は 1 です。

戻り値

正しく実行された場合は、ディスアセンブルされた命令が返されます。ターゲットの命令を読み出せない場合は、エラー文字列が返されます。

dis

現在の PC 値の命令をディスアセンブルします。

dis pc 2

現在の PC 値の 2 つの命令をディスアセンブルします。

dis 0x0 2

アドレス 0x0 の 2 つの命令をディスアセンブルします。

print

演算式の値を取得または設定します。

構文

print [options] [expression]

<expression> で指定した演算式の値を取得または設定します。<expression> には、定数、ローカル/グローバル変数、CPU レジスタ、または演算子が含まれますが、#define で定義したプリプロセッサ マクロはサポートされません。CPU レジスタは {$r1} フォーマットで指定できます。この場合、r1 はレジスタ名です。構造型のような複雑なデータ型のエレメントは、'.' 演算子でアクセスできます。たとえば、var1.int_type は var1 struct の int_type エレメントのことです。配列エレメントには、それらのインデックスを使用してアクセスできます。たとえば、array1[0] は array1 のインデックス 0 のことです。

オプション

オプション 説明
-add <expression> <expression> を自動演算式リストに追加します。自動演算式リストの演算式の値または定義は、演算式名を指定しない場合に表示されます。よく使用される演算式は、自動演算式リストに追加しておくことをお勧めします。
-defs [expression] アドレス、タイプ、サイズ、RW フラグなどの演算式の定義が返されます。すべての定義がすべての演算式に使用できるわけではありません。たとえば、アドレスは変数にのみ使用できま、演算式に演算子が含まれる場合は使用できません。
-dict [expression] 結果は Tcl の dict 形式 (変数名が dict キーで変数値が dict 値) で返されます。構造型などの複雑なデータの場合、名前の形式は parent.child です。
-remove [expression] 自動演算式リストから演算式を削除します。前に -add オプションでリストに追加した演算式のみが削除できます。演算式名を指定しない場合、自動演算式リストのすべての演算式が削除されます。
-set <expression> 変数の値を設定します。定数または演算子を含む演算式の値は設定できません。

戻り値

戻り値は、使用されるオプションによって異なります。

<none> または -add: 演算式の値

-defs: 演算式の定義

-remove or -set: 戻り値なし

演算式の値が読みだせなかったり設定できない場合はエラー文字列が返されます。

print Int_Glob

変数 Int_Glob の値を返します。

print -a Microseconds

変数 Microseconds を自動演算式に追加して、その値を返します。

print -a Int_Glob*2 + 1

演算式 (Int_Glob*2 + 1) を自動演算式リストに追加して、その値を返します。

print tmp_var.var1.int_type

var1 struct の int_type エレメントの値を返します。この場合、var1 は tmp_var struct のメンバーです。

print tmp_var.var1.array1[0]

array1 配列のインデックス 0 のエレメントの値を返します。array1 は var1 struct のメンバーで、var1 struct は tmp_var struct のメンバーです。

print

自動演算式リスト内のすべての演算式の値を返します。

print -defs

自動演算式リスト内のすべての演算式の定義を返します。

print -set Int_Glob 23

変数 Int_Glob to 23 の値を設定します。

print -remove Microseconds

自動演算式リストから Microseconds 演算式を削除します。

print {r1}

CPU レジスタ r1 の値を返します。

locals

ローカル変数の値を取得または設定します。

構文

locals [options] [variable-name [variable-value]]

<variable-name> で指定した変数の値を取得または設定します。変数名および値を指定しない場合は、すべてのローカル変数の値が返されます。構造型のような複雑なデータ型のエレメントは、'.' 演算子でアクセスできます。たとえば、var1.int_type は var1 struct の int_type エレメントのことです。配列エレメントには、それらのインデックスを使用してアクセスできます。たとえば、array1[0] は array1 のインデックス 0 のことです。

オプション

オプション 説明
-defs アドレス、タイプ、サイズ、RW フラグなどの変数の定義が返されます。
-dict [expression] 結果は Tcl の dict 形式 (変数名が dict キーで変数値が dict 値) で返されます。構造型などの複雑なデータの場合、名前の形式は parent.child です。

戻り値

戻り値は、使用されるオプションによって異なります。

<none>: 変数の値

-defs: 変数の定義

変数値が設定されている場合は、何も返されません。変数値を読み出すことができなかったり、変数値が設定されていない場合はエラー文字列を返します。

locals Int_Loc

ローカル変数 Int_Loc の値を返します。

locals

現在のスタック フレームのローカル変数すべての値を返します。

locals -defs

現在のスタック フレームのローカル変数すべての定義を返します。

locals Int_Loc 23

ローカル変数 Int_Loc to 23 の値を設定します。

locals tmp_var.var1.int_type

var1 struct の int_type エレメントの値を返します。この場合、var1 は tmp_var struct のメンバーです。

locals tmp_var.var1.array1[0]

array1 配列のインデックス 0 のエレメントの値を返します。array1 は var1 struct のメンバーで、var1 struct は tmp_var struct のメンバーです。

backtrace

スタック バック トレース。

構文

backtrace

現在のターゲットのスタック トレースを返します。ターゲットは停止する必要があります。最適な結果のためにデバッグ情報を使用します。

戻り値

問題のない場合はスタック トレースが返されます。ターゲットからスタック トレースを読み出せない場合はエラー文字列が返されます。

profile

GNU プロファイラーを設定および実行します。

構文

profile [options]

GNU プロファイラーを設定および実行します。プロファイルする BSP およびアプリケーションをビルドする際は、プロファイリングをイネーブルにする必要があります。

オプション

オプション 説明
-freq <sampling-freq> サンプリング周波数。
-scratchaddr <addr> プロファイリング関連データを格納するスクラッチ メモリ。プログラム セクションとはオーバーラップできないので、注意して割り当てる必要があります。
-out <file-name> プロファイリング データを書き込む出力ファイルの名前。このオプションは、プロファイラーも実行してデータを収集します。ファイル名を指定しない場合、プロファイリング データは gmon.out に書き込まれます。

戻り値

使用されるオプションによります。

-scratchaddr, -freq: 設定に問題がない場合は何も返しません。エラーが発生した場合は、エラー文字列を返します。

-out: 何も返さず、ファイルを生成します。エラーが発生した場合は、エラー文字列を返します。

profile -freq 10000 -scratchaddr 0

サンプリング周波数 10000 および 0x0 のスクラッチ メモリでプロファイラーを設定します。

profile -out testgmon.out

プロファイル データを testgmon.out に出力します。

mbprofile

MicroBlaze プロファイラーを設定および実行します。

構文

mbprofile [options]

MicroBlaze で実行するアプリケーションをプロファイルする非侵入型の MicroBlaze プロファイラーを設定して実行します。出力ファイルは gmon.out フォーマットで生成されます。結果は gprof エディターで表示できます。サイクル カウントの場合、命令の実行にかかる時間がわかりやすくマークされたアノテート済みのディスアセンブリ ファイルも生成されます。

オプション

オプション 説明
-low <addr> プロファイリング アドレス範囲の下位アドレス。
-high <addr> プロファイリング アドレス範囲の上位アドレス。
-freq <value> MicroBlaze クロック周波数 (MHz)。デフォルトは 100 MHz です。
-count-instr 実行される命令のカウント数。デフォルトでは、実行される命令のクロック数がカウントされます。
-cumulate 累積プロファイリング。プロファイリング バッファーをクリアにしないプロファイリング。
-start プロファイリングのイネーブルにして開始します。
-stop プロファイリングをディスエーブル/停止します。
-out <filename> プロファイリング データをファイルに出力します。<filename>: プロファイリング データを書き込む出力ファイルの名前。ファイル名を指定しない場合、プロファイリング データは gmon.out に書き込まれます。

戻り値

使用されるオプションによります。-low、-high、-freq、-count-instr、-start、-cumulate: 問題なくコンフィギュレーションが終了した場合は何も返しません。エラーが発生した場合は、エラー文字列を返します。

-stop: 何も返さず、ファイルを生成します。エラーが発生した場合は、エラー文字列を返します。

mbprofile -low 0x0 -high 0x3FFF

mb-profiler を 0x0 ~ 0x3FFF のアドレス範囲でコンフィギュレーションし、プロファイリングで実行された命令のクロック サイクル数がカウントされるようにします。

mbprofile -start

プロファイリングのイネーブルにして開始します。

mbprofile -stop -out testgmon.out

プロファイル データを testgmon.out に出力します。

mbprofile -count-instr

mb-profiler をプログラムのアドレス範囲全体をプロファイルして、実行される命令数をカウントするようにコンフィギュレーションします。

mbtrace

MicroBlaze トレースを設定および実行します。

構文

mbtrace [options]

MicroBlaze プログラムおよび MicroBlaze で実行されるアプリケーションをトレースするイベント トレースを設定して実行します。出力は、実行したプロジェクトを分解したものになります。

オプション

オプション 説明
-start トレースをイネーブルにして開始します。プログラムの実行がトレースの開始後に後の出力用に取り込まれます。
-stop トレースを停止して出力します。
-con コマンドおよび出力トレースを実行します。
注記: -con オプションはエンベデッド トレースと一緒にしか使用できません。
-stp
-nxt
-out <filename> トレース データをファイルに出力します。<filename>: トレース データを書き込む出力ファイルの名前。指定しない場合、データが標準出力に出力されます。
-level <level> トレース レベルは full、flow、event、または cycles に設定します。指定しない場合、full が使用されます。
-halt トレース バッファーがフルになったらプログラム実行を停止するように設定します。指定しない場合、トレースは停止しますが、プログラム実行は続きます。
-save ロードの取り込みをイネーブルにして、命令に新しいデータ値を提供します。
-low <addr> 外部トレース バッファーのアドレス範囲の下位および高位アドレスを設定します。アドレス範囲は、未使用のアクセス可能なメモリ空間を指定する必要があります。外部トレースとしか使用できません。
-high <addr>
-format <format> 外部トレース データ形式を mdm、ftm、または tpiu に設定します。形式が指定されない場合は、mdm が使用されます。Zynq-7000 PS から ftm および tpiu 形式が出力されます。外部トレースとしか使用できません。

戻り値

使用されるオプションによります。-start、-out、-level、-halt、-save、-low、-high、-format: 問題なくコンフィギュレーションが終了した場合は何も返しません。エラーが発生した場合は、エラー文字列を返します。

-stop, -con, -stp, -nxt: 何も返さず、ファイルまたは標準出力へのトレース データを出力します。エラーが発生した場合は、エラー文字列を返します。

mbtrace -start

トレースをイネーブルにして開始します。

mbtrace -start -level full -halt

トレースをイネーブルにして開始し、プログラム フローだけでなく完全なトレースを保存して、トレース バッファーがフルになったら実行を停止するように設定します。

mbtrace -stop

トレースを停止して標準出力へデータを出力します。

mbtrace -stop -out trace.out

トレースを停止して trace.out にデータを出力します。

mbtrace -con -out trace.out

実行を続行して、データを trace.out に出力します。

ターゲット メモリ

次に、メモリ コマンドをリストします。

mrd

メモリを読み出します。

構文

mrd [options] <address> [num]

アクティブ ターゲットの <address> で指定したメモリ アドレスから <num> で指定した値を読み出します。

オプション

オプション 説明
-force アクセス保護を解除します。デフォルトでは、予約されているアドレス範囲および無効なアドレス範囲へのアクセスはブロックされます。
-size <access-size> <access-size> には、次のいずれかの値を指定できます。 b: バイト アクセス h: ハーフワード アクセス w: ワード アクセス d: ダブルワード アクセス デフォルトのアクセス サイズは w です。-unaligned-access オプションが使用されていない場合、メモリが読み出される前にアドレスがアクセス サイズに揃えられます。ダブルワード アクセスがサポートされないターゲットでは、2 ワード アクセスが使用されます。読み出されるデータ値の数が 1 を超える場合は、デバッガーにより適切なアクセス サイズが選択されます。次に例を示します。 1. mrd -size b 0x0 4 デバッガーはメモリからの 1 ワードにアクセスし、4 バイトを表示します。2. mrd -size b 0x0 3 デバッガーはメモリからの 1 ハーフワードと 1 バイトにアクセスし、3 バイトを表示します。3. mrd 0x0 3 デバッガーはメモリからの 3 ワードにアクセスし、3 バイトを表示します。
-value 結果をコンソールに表示する代わりに、値の Tcl リストを返します。
-bin ターゲットから読み出したデータをバイナリ フォーマットで返します。
-file <file-name> ターゲットから読み出したバイナリ データを <file-name> に記述します。
-address-space <name> 現在のターゲットのデフォルト メモリ空間ではなく、指定したメモリ空間にアクセスします。ARM DAP ターゲットの場合、アドレス空間 DPR、APR、および AP<n> を使用すると、それぞれ DP レジスタ、AP レジスタ、および MEM-AP アドレスにアクセスできます。下位互換性のため、-address-space APR の短縮形の -arm-dap、-address-space AP<n> の短縮形の -arm-ap も使用できます。APR アドレス範囲は 0x0 ~ 0xfffc で、上位 8 ビットで AP を選択し、下位 8 ビットでその AP のレジスタ アドレスを指定します。
-unaligned-access 読み出しを実行する前にメモリ アドレスはアクセス サイズに揃えられません。アドレス サイズに揃えないアクセスのサポートは、ターゲット アーキテクチャによります。このオプションを指定しない場合、アドレスは自動的にアクセス サイズに揃えられます。

注記

  • ARM DAP および MEM-AP アドレス空間にアクセスする APU ターゲットを選択します。

戻り値

正しく実行された場合、メモリ アドレスと指定したフォーマットのデータが返されます。ターゲット メモリを読み出せない場合は、エラー文字列が返されます。

mrd 0x0

アドレス 0x0 から 1 ワードを読み出します。

mrd 0x0 10

アドレス 0x0 から 10 ワードを読み出します。

mrd -value 0x0 10

アドレス 0x0 から 10 ワードを読み出し、値の Tcl リストを返します。

mrd -size b 0x1 3

アドレス 0x1 から 3 バイトを読み出します。

mrd -size h 0x2 2

アドレス 0x2 から 2 ハーフワードを読み出します。

mrd -bin -file mem.bin 0 100

アドレス 0x0 から 100 ワードを読み出し、バイナリ データを mem.bin に記述します。

mrd -address-space APR 0x100

Zynq APB-AP CSW を読み出します。上位 8 ビット (0x1) は APB-AP を選択し、下位 8 ビット (0x0) は CSW のアドレスを指定します。

mrd -address-space APR 0x04

Zynq AHB-AP TAR を読み出します。上位 8 ビット (0x0) は AHB-AP を選択し、下位 8 ビット (0x4) は TAR のアドレスを指定します。

mrd -address-space AP1 0x80090088

DAP APB-AP のアドレス 0x80090088 を読み出します。0x80090088 は Zynq の Cortex-A9#0 の DBGDSCR レジスタを指定し、AP0 は APB-AP を選択します。

mrd -address-space AP0 0xe000d000

DAP AHB-AP のアドレス 0xe000d000 を読み出します。0xe000d000 は Zynq の QSPI デバイスを指定し、AP0 は AHB-AP を選択します。

mwr

メモリ書き込み。

構文

mwr [options] <address> <values> [num]

<values> のリストからの <num> データ値を <address> で指定したアクティブなターゲット メモリ アドレスに書き込みます。<num> を指定しない場合、リストからのすべての <values><address> で指定したアドレスに順次書き込まれます。<num><values> リストのサイズよりも大きい場合、リストの最後のワードで残りのアドレス位置が埋められます。

mwr [options] -bin -file <file-name> <address> [num]

バイナリ ファイルから <num> データ値を読み出して、<address> で指定したアクティブなターゲット メモリ アドレスに書き込みます。<num> を指定しない場合、そのファイルからのデータすべてが <address> で指定したアドレスから順次書き込まれます。

オプション

オプション 説明
-force アクセス保護を上書きします。デフォルトでは、予約済みおよび無効なドレス範囲へのアクセスがブロックされます。
-bypass-cache-sync メモリ書き込み中に CPU キャッシュをフラッシュまたは無効化しないようにしてください。このオプションを指定しておかないと、デバッガーはキャッシュをフラッシュまたは無効化して、キャッシュが同期するようにします。
-size <access-size> <access-size> は、b = バイト アクセス、h = ハーフワード アクセス、w = ワード アクセス、d = ダブルワード アクセスのいずれかの値にできます。デフォルトのアクセス サイズは w です。アドレスは、-unaligned-access オプションが使用されない場合は、メモリへ書き込まれる前にアクセス サイズに揃えられます。ターゲットでダブルワード アクセスがサポートされない場合、デバッガーは 2 ワード アクセスを使用します。書き込まれるデータ値が 1 より大きい場合、デバッガーは適切なアクセス サイズを選択します。たとえば、mwr -size b 0x0 {0x0 0x13 0x45 0x56} の場合、デバッガーは 4 バイトを 1 ワードにまとめてメモリに書き込みます。mwr -size b 0x0 {0x0 0x13 0x45} の場合、デバッガーは 3 バイトをまとめて 1 ハーフワードと 1 バイトをメモリに書き込みます。mwr 0x0 {0x0 0x13 0x45} の場合、デバッガーは 3 ワードをメモリに書き込みます。
-bin ファイルからバイナリ データを読み出して、ターゲット アドレス空間に書き込みます。
-file <file-name> バイナリ データを読み出してターゲット アドレス空間へ書き込むファイル。
-address-space <name> 現在のターゲットのデフォルト メモリ空間ではなく、指定したメモリ空間へアクセス。Arm DAP ターゲットの場合、アドレス空間 DPR、APR、および AP<n> を使用すると、DP レジスタ、AP レジスタ、および MEM-AP アドレスにそれぞれアクセスできます。後方互換性のため、-arm-dap および -arm-ap オプションを -address-space APR および -address-space AP<n> の省略としてそれぞれ使用できるようになっています。APR アドレス範囲は 0x0 - 0xfffc で、上位 8 ビットで AP を選択し、下位 8 ビットがその AP のレジスタ アドレスになります。
-unaligned-accesses メモリ アドレスは、書き込み操作を実行する前にはアクセス サイズに揃えられません。揃えられていないアドレスのサポートは、ターゲット アーキテクチャによって異なります。このオプションを指定しない場合、アドレスが自動的にアドレス サイズに揃えられます。

注記

  • APU ターゲットを選択すると、Arm DAP および MEM-AP アドレス空間にアクセスできます。

戻り値

問題がない場合は何も返されません。ターゲットが書き込めない場合はエラー文字列が返されます。

mwr 0x0 0x1234

0x1234 をアドレス 0x0 に書き込みます。

mwr 0x0 {0x12 0x23 0x34 0x45}

値のリストから 4 ワードをアドレス 0x0 に書き込みます。

mwr 0x0 {0x12 0x23 0x34 0x45} 10

値のリストから 4 ワードをアドレス 0x0 に書き込んで、リストからの最後のワードで残り 6 つのアドレス位置を埋めます。

mwr -size b 0x1 {0x1 0x2 0x3} 3

アドレス 0x1 にリストからの 3 バイトを書き込みます。

mwr -size h 0x2 {0x1234 0x5678} 2

アドレス 0x2 にリストから 2 ハーフワードを書き込みます。

mwr -bin -file mem.bin 0 100

バイナリ ファイルの mem.bin から 100 ワードを読み出して、ターゲット アドレス 0x0 にデータを書き込みます。

mwr -arm-dap 0x100 0x80000042

0x80000042 を Zynq の APB-AP CSW に書き込みます。上記 8 ビット (0x1) で APB-AP を選択します。下位 8 ビット (0x0) は CSW のアドレスです。

mwr -arm-dap 0x04 0xf8000120

0xf8000120 を Zynq の AHB-AP TAR に書き込みます。上位 8 ビット (0x0) で AHB-AP を選択します。下位 8 ビット (0x4) は TAR のアドレスです。

mwr -arm-ap 1 0x80090088 0x03186003

0x03186003 を DAP APB-AP のアドレス 0x80090088 に書き込みます。0x80090088 は Zynq の Cortex-A9#0 の DBGDSCR レジスタに該当します。AP1 で APB-AP を選択します。

mwr -arm-ap 0 0xe000d000 0x80020001

0x80020001 を DAP AHB-AP のアドレス 0xe000d000 に書き込みます。0xe000d000 は Zynq の QSPI デバイスに該当します。AP0 で AHB-AP を選択します。

osa

シンボル ファイルの OS 認識をコンフィギュレーションします。

構文

osa -file <file-name> [options]

指定したシンボル ファイル <file-name> の OS 認識をコンフィギュレーションします。シンボル ファイルを指定しない場合にターゲットのメモリ マップにシンボル ファイルが 1 つだけある場合は、そのシンボル ファイルが使用されます。シンボル ファイルを指定しない場合にターゲットのメモリ マップに複数のシンボル ファイルが含まれる場合は、エラーになります。

オプション

オプション 説明
-disable シンボル ファイルの OS 認識をディスエーブルにします。このオプションを指定しない場合、OS 認識はイネーブルになります。
-fast-exec 高速プロセス開始をイネーブルにします。新しいプロセスは、デバッグ用にトラックされず、デバッグ ターゲットのビューには表示されません。
-fast-step 高速ステッピングをイネーブルにします。現在のプロセスのみがステッピング後に再同期されます。このオプションをオンにすると、その他すべてのプロセスは再同期されません。

注記

  • fast-exec および fast-step オプションは、disable オプションと併用できません。

戻り値

OSA が正しくコンフィギュレーションされた場合は何も返されません。あいまいなオプションを指定した場合はエラーが返されます。

<symbol-file>osa -file -fast-step -fast-exec

<symbole-file> の OSA をイネーブルにして、fast-exec および fast-step モードをオンにします。

<symbol-file>osa -disable -file 

<symbol-file> の OSA をディスエーブルにします。

memmap

メモリ マップを変更します。

構文

memmap <options>

アクティブ ターゲットのメモリ マップ エントリを追加/削除します。

オプション

オプション 説明
-addr <memory-address> ターゲットのメモリ マップに追加またはメモリ マップから削除する必要のあるメモリ領域のアドレス。
-size <memory-size> メモリ領域のサイズ。
-flags <protection-flags> メモリ領域の保護フラグ。<protection-flags> は、次のいずれかの値のビット単位 OR にできます。0x1 = 読み出しアクセスを許可。0x2 = 書き込みアクセスを許可。0x4 = 命令フェッチ アクセスを許可。<protection-flags> のデフォルト値は 0x3 (読み出し/書き込みアクセス) です。
-list アクティブ ターゲットのメモリ マップに追加されたメモリ領域をリストします。
-clear メモリ領域をターゲットのメモリ マップから削除するかどうかを指定します。
-relocate-section-map <addr> プログラム セクションのアドレス マップを <addr> に再配置します。このオプションは、デバッガーがコードのデバッグ シンボル情報を検出できるように、コードが自己再配置である場合に使用する必要があります。<addr> は相対的アドレスで、すべてのプログラム セクションすべてが再配置されます。
-osa シンボル ファイルの OS 認識をイネーブルにします。高速プロセス開始および高速ステッピング オプションはデフォルトでオフになっています。これらのオプションは、osa コマンドを使用するとイネーブルにできます。詳細は、help osa を参照してください。
-properties <dict> アドバンス メモリ マップ プロパティを指定します。
-meta-data <dict> アドバンス メモリ マップ プロパティのメタデータを指定します。

注記

  • 削除できるのは、memmap コマンドで前に追加したメモリ領域のみです。

戻り値

メモリ マップや -list オプションを使用してメモリ マップのリストを設定する場合は何も返されません。

memmap -addr 0xfc000000 -size 0x1000 -flags 3

メモリ領域 0xfc000000 - 0xfc000fff をターゲットのメモリ マップに追加します。この領域では、読み出し/書き込みアクセスが許可されます。

memmap -addr 0xfc000000 -clear

ターゲットのメモリ マップから前に追加した 0xfc000000 のメモリ領域を削除します。

FPGA/バイナリのダウンロード

次に、ダウンロード コマンドをリストします。

dow

ELF およびバイナリ ファイルをターゲットにダウンロードします。

構文

dow [options] <file>

<file> で指定した ELF ファイルをアクティブ ターゲットにダウンロードします。

dow -data <file> <addr>

<file> で指定したバイナリ ファイルを <addr> で指定したターゲット アドレスにダウンロードします。

オプション

オプション 説明
-clear 初期化されていないデータ (bss) をクリアします。
-keepsym 以前にダウンロードした ELF をシンボル ファイルのリストに保持します。デフォルトでは、ELF のダウンロード時に古いシンボル ファイルはクリアされます。
-force アクセス保護を解除します。デフォルトでは、予約されているアドレス範囲および無効なアドレス範囲へのアクセスはブロックされます。
-bypass-cache-sync ELF のダウンロード時に CPU キャッシュをフラッシュ/無効にしません。このオプションを使用しない場合、キャッシュが同期するように、キャッシュがフラッシュされ、無効になります。
-relocate-section-map <addr> プログラム セクションのアドレス マップを <addr> に移動します。このオプションは、デバッガーがコードのデバッグ シンボル情報を検出できるように、コードが自己再配置である場合に使用する必要があります。<addr> は相対アドレスで、すべてのプログラム セクションがこのアドレスに再配置されます。
-vaddr ELF のダウンロード時に、ELF プログラム ヘッダーからの vaddr を使用します。このオプションは、ELF ファイルにのみ使用できます。

戻り値

なし。

verify

ELF/バイナリ ファイルが正しくターゲットにダウンロードされたかどうかを検証します。

構文

verify [options] <file>

ELF ファイル <file> が正しくアクティブ ターゲットにダウンロードされたかどうかを検証します。

verify -data <file> <addr>

バイナリ ファイル <file><addr> で指定されたあアクティブ ターゲット アドレスに正しくダウンロードされたかどうかを検証します。

オプション

オプション 説明
-force アクセス保護を上書きします。デフォルトでは、予約済みおよび無効なドレス範囲へのアクセスがブロックされます。
-vaddr ELF データの検証中に ELF プログラム ヘッダーから vaddr を使用します。このオプションは、ELF ファイルにのみ使用できます。

戻り値

問題がない場合は何も返されません。メモリ アドレスにアクセスできなかったり、不一致がある場合はエラー文字列が返されます。

fpga

FPGA をコンフィギュレーションします。

構文

fpga <bitstream-file>

指定したビットストリームで FPGA をコンフィギュレーションします。

fpga [options]

ビットストリームを指定するオプションで FPGA をコンフィギュレーションするか、FPGA ステートを読み出します。

オプション

オプション 説明
-file <bitstream-file> ビットストリームを含むファイルを指定します。
-partial 最初に現在のコンフィギュレーションをクリアにしないで FPGA をコンフィギュレーションします。このオプションは、2014.3 より前に作成したパーシャル ビットストリームまたはバイナリ形式のパーシャル ビットストリームをコンフィギュレーションする際に使用します。
-no-revision-check ビットストリーム vs シリコン リビジョンの互換性チェックをディスエーブルにします。
-skip-compatibility-check ビットストリーム vs FPGA デバイスの互換性チェックをディスエーブルにします。
-state FPGA がコンフィギュレーションされたかどうかを返します。
-config-status コンフィギュレーション ステータスを返します。
-ir-status IP キャプチャ ステータスを返します。
-boot-status ブート ヒストリ ステータスを返します。
-timer-status ウォッチ タイマー ステータスを返します。
-cor0-status コンフィギュレーション オプション 0 ステータスを返します。
-cor1-status コンフィギュレーション オプション 1 ステータスを返します。
-wbstar-status ワーム ブート開始アドレス ステータスを返します。

注記

  • ターゲットが選択されていない場合、または現在のターゲットがサポートされる FPGA デバイスではく、サポートされる FPGA デバイスがターゲット リストに 1 つしかない場合は、このデバイスがコンフィギュレーションされます。

戻り値

使用されるオプションによります。

-file, -partial: FPGA がコンフィギュレーションされる場合は何も返さず、コンフィギュレーションがエラーになった場合はエラーを返します。

その他のオプションの 1 つ: コンフィギュレーション値。

ターゲット リセット

次に、リセット コマンドをリストします。

rst

ターゲット リセット。

構文

rst [options]

アクティブ ターゲットをリセットします。

オプション

オプション 説明
-processor アクティブなプロセッサ ターゲットをリセットします。
-cores アクティブなプロセッサ グループをリセットします。このリセット タイプは Zynq でのみサポとされます。プロセッサ グループは、プロセッサのセットと OCM のようなオンチップ ペリフェラルとして定義されます。
-system アクティブなシステムをリセットします。
-srst アクティブ ターゲットのシステム リセットを生成します。これは、JTAG を使用する場合、アクティブ ターゲットに関連付けられた JTAG ケーブルの SRST ピンでパルスを生成すると実行できます。
-por アクティブ ターゲットのパワー オン リセットを生成します。これは、JTAG を使用する場合、アクティブ ターゲットに関連付けられた JTAG ケーブルの POR ピンでパルスを生成すると実行できます。
-ps Zynq MP で PS のみのリセットを生成します。これは、MicroBlaze PMU ターゲットを使用した場合にのみサポートされます。

戻り値

問題なくリセットされる場合は何も返されません。リセットがサポートされない場合はエラー文字列が返されます。

ターゲット ブレークポイント/ウォッチポイント

次に、ブレークポイント コマンドをリストします。

bpadd

ブレークポイント/ウォッチポイントを設定します。

構文

bpadd <options>

指定したアドレス、関数、または <file>:<line> にソフトウェアまたはハードウェア ブレークポイントを設定するか、読み出し/書き込みウォッチポイントまたはクロス トリガー ブレークポイントを設定します。

オプション

オプション 説明
-addr <breakpoint-address> ブレークポイントを設定するアドレスを指定します。
-file <file-name> ブレークポイントを設定するファイルの名前 (<file-name>) を指定します。
-line <line-number> ブレークポイントを設定するファイル内の行番号 (<line-number>) を指定します。
-type <breakpoint-type> ブレークポイントのタイプを指定します。<breakpoint-type> に指定可能な値は、次のとおりです。 auto: 自動。ブレークポイントのタイプが hw_server/TCF エージェントにより自動的に選択されます。これがデフォルトです。 hw: ハードウェア ブレークポイント sw: ソフトウェア ブレークポイント
-mode <breakpoint-mode> ブレークポイントをトリガーするアクセス モードを指定します。<breakpoint-mode> は、次の値のビット単位 OR です。 0x1: ブレークポイント位置からの読み出しでトリガーします。 0x2: ブレークポイント位置への書き込みでトリガーします。 0x4: ブレークポイント位置での命令実行でトリガーします。これが行およびアドレスのデフォルトです。 0x8: ブレークポイント位置での明示的な書き込みではないデータ変更でトリガーします。
-enable <mode> ブレークポイントの初期イネーブル ステートを指定します。<mode> が 0 の場合はブレークポイントはディスエーブルになり、それ以外の場合はブレークポイントはイネーブルになります。デフォルトはイネーブルです。
-ct-input <list> -ct-output <list> 入力および出力クロス トリガーを指定します。<list> はクロス トリガー ピンを識別する番号のリストです。Zynq では、0 ~ 7 はコア 0 の CTI、8 ~ 15 はコア 1 の CTI、16 ~ 23 は CTI ETB および TPIU、24 ~ 31 は FTM の CTI です。
-skip-on-step <value> ステップ実行でのトリガー動作を指定します。このオプションは、クロス トリガー ブレークポイントに対してのみ、ブレークポイントの入力として DBGACK が使用される場合にのみ適用されます。0: コアが停止するたびにトリガーします (デフォルト)。1: コードのブレークポイントをステップ オーバーではトリガーしません。2: ステップ実行ではトリガーしません。
-properties <dict> アドバンス ブレークポイント プロパティを指定します。
-meta-data <dict> アドバンス ブレークポイント プロパティのメタデータを指定します。
-target-id <id> ブレークポイントを設定するターゲット ID を指定します。<id> を all にすると、すべてのターゲットにブレークポイントを設定できます。このオプションを指定しない場合、targets コマンドで選択したアクティブ ターゲットにブレークポイントが設定されます。アクティブ ターゲットがない場合は、ブレークポイントはすべてのターゲットに設定されます。

注記

  • ブレークポイントは、hw_server/TCF に接続する前に XSDB で設定できます。ブレークポイントを設定するときにアクティブ ターゲットがない場合は、ブレークポイントはすべてのターゲットに設定されます。アクティブ ターゲットがない場合は、ブレークポイントはすべてのターゲットでイネーブルになります。-target-id オプションを使用すると、ブレークポイントを特定のターゲットまたはすべてのターゲットに設定できます。ブレークポイントを設定するアドレスまたはファイルと行数を指定する場合は、-addr、-file、または -line オプションを使用する必要はありません。アドレスを指定する場合は、引数としてほかのオプションの後に指定します。ファイルと行数を指定する場合は、<file>:<line> という形式で、引数としてほかのオプションの後に指定します。

戻り値

ブレークポイント ID が返されるか、無効なターゲット ID が指定された場合はエラーが返されます。

bpadd -addr 0x100000

アドレス 0x100000 にブレークポイントを設定します。ブレークポイントのタイプは hw_server/TCF エージェントにより自動的に選択されます。

bpadd -addr &main

main 関数にブレークポイントを設定します。ブレークポイントのタイプは hw_server/TCF エージェントにより自動的に選択されます。

bpadd -file test.c -line 23 -type hw

test.c ファイルの 23 行目にハードウェア ブレークポイントを設定します。

bpadd -target-id all 0x100

すべてのターゲットでアドレス 0x100 にブレークポイントを設定します。

bpadd -target-id 2 test.c:23

ターゲット 2 で test.c ファイルの 23 行目にブレークポイントを設定します。

bpadd -addr &fooVar -type hw -mode 0x3

変数 fooVar に読み出し/書き込みウォッチポイントを設定します。

bpadd -ct-input 0 -ct-output 8

Zynq のコア 0 が停止したときにコア 1 を停止するクロス トリガーを設定します。

bpremove

ブレークポイント/ウォッチポイントを削除します。

構文

bpremove <id-list> | -all

<id-list> で指定したブレークポイント/ウォッチポイント、または -all オプションを使用した場合はすべてのブレークポイントを削除します。

オプション

オプション 説明
-all すべてのブレークポイントを削除します。

戻り値

ブレークポイントが正しく削除された場合は何も返されません。<id> で指定したブレークポイントが設定されていない場合は、エラー文字列が返されます。

bpremove 0

ブレークポイント 0 を削除します。

bpremove 1 2

ブレークポイント 1 と 2 を削除します。

bpremove -all

すべてのブレークポイントを削除します。

bpenable

ブレークポイント/ウォッチポイントをイネーブルにします。

構文

bpenable <id-list> | -all

<id-list> で指定したブレークポイント/ウォッチポイント、または -all オプションを使用した場合はすべてのブレークポイントをイネーブルにします。

オプション

オプション 説明
-all すべてのブレークポイントをイネーブルにします。

戻り値

ブレークポイントが正しくイネーブルになった場合は何も返されません。<id> で指定したブレークポイントが設定されていない場合は、エラー文字列が返されます。

bpenable 0

ブレークポイント 0 をイネーブルにします。

bpenable 1 2

ブレークポイント 1 と 2 をイネーブルにします。

bpenable -all

すべてのブレークポイントをイネーブルにします。

bpdisable

ブレークポイント/ウォッチポイントをディスエーブルにします。

構文

bpdisable <id-list> | -all

<id-list> で指定したブレークポイント/ウォッチポイント、または -all オプションを使用した場合はすべてのブレークポイントをディスエーブルにします。

オプション

オプション 説明
-all すべてのブレークポイントをディスエーブルにします。

戻り値

ブレークポイントが正しくディスエーブルになった場合は何も返されません。<id> で指定したブレークポイントが設定されていない場合は、エラー文字列が返されます。

bpdisable 0

ブレークポイント 0 をディスエーブルにします。

bpdisable 1 2

ブレークポイント 1 と 2 をディスエーブルにします。

bpdisable -all

すべてのブレークポイントをディスエーブルにします。

bplist

ブレークポイント/ウォッチポイントをリストします。

構文

bplist

すべてのブレークポイント/ウォッチポイントと、各ブレークポイントの簡単なステータスおよび設定されているターゲットをリストします。

戻り値

ブレークポイントをリストします。

bpstatus

ブレークポイント/ウォッチポイントのステータスを表示します。

構文

bpstatus <id>

<id> で指定したブレークポイント/ウォッチポイントのステータスを表示します。ステータスには、アクティブのブレークポイントおよびブレークポイントのヒットカウントまたはエラー メッセージも含まれます。

オプション

なし

戻り値

ブレークポイントが存在する場合はブレークポイントのステータスが返されます。<id> で指定したブレークポイントが設定されていない場合は、エラー文字列が返されます。

JTAG UART

次に、ストリーム コマンドをリストします。

jtagterminal

JTAG ベースのハイパーターミナルを開始/停止します。

構文

jtagterminal [options]

Arm DCC または MDM UART インターフェイスと通信する JTAG ベースのハイパーターミナルを開始/停止します。

オプション

オプション 説明
-start JTAG UART ターミナルを開始します。これがデフォルト オプションです。
-stop JTAG UART ターミナルを開始します。
-socket ターミナルを開始する代わりにソケット ポート番号を返します。外部ターミナル プログラムを使用してこのポートに接続できます。

注記

  • このコマンドを実行する前に、MDM または Arm/MicroBlaze プロセッサを選択してください。

戻り値

ソケット ポート番号。

readjtaguart

JTAG UART からの読み出しを開始/停止します。

構文

readjtaguart [options]

Arm DCC または MDM UART Tx インターフェイスからの読み出しを開始/停止します。JTAG UART 出力は、標準出力に表示するか、ファイルに保存できます。

オプション

オプション 説明
-start JTAG UART 出力の読み出しを開始します。
-stop JTAG UART 出力の読み出しを停止します。
-handle <file-handle> データを保存するファイル ハンドルを指定します。ファイル ハンドルを指定しない場合、データは標準出力に表示されます。

注記

  • このコマンドを実行する前に、MDM または Arm/MicroBlaze プロセッサを選択してください。
  • 非インタラクティブ モードでスクリプトを実行する場合、JTAG UART からの出力をログに記述するには、readjtaguart -stop を使用する必要があります。

戻り値

正しく実行された場合は何も返されません。JTAG UART からデータを読み出せない場合は、エラー文字列が返されます。

readjtaguart

JTAG UART からの読み出しを開始し、出力を標準出力に表示します。 set fp [open test.log w] readjtaguart -start -handle $fp JTAG UART からの読み出しを開始し、出力を test.log に記述します。

readjtaguart -stop

JTAG UART からの読み出しを停止します。

その他

loadhw

Vivado HW デザインをロードします。

構文

loadhw [options]

Vivado HW デザインをロードして、現在のターゲット用にメモリ マップを設定します。現在のターゲットがプロセッサのグループの親である場合、その子プロセッサすべてのメモリ マップが設定されます。現在のターゲットがプロセッサの場合、その親の子プロセッサすべてのメモリ マップが設定されます。このコマンドを実行すると、HW デザイン オブジェクトが返されます。

オプション

オプション 説明
-hw HW デザイン ファイル。
-list そのターゲットの開いていデザインのリストが返されます。
-mem-ranges [list {start1 end1} {start2 end2}] メモリ マップを設定するメモリ範囲のリスト。メモリ マップは、これらの範囲外のアドレス用には設定されません。このオプションを指定しない場合、メモリ マップがハードウェア デザインのすべてのアドレスに対して設定されます。

戻り値

HW デザインがロードされてメモリ マップが問題なく設定される場合は、デザイン オブジェクトが返されます。HW デザインを開けなかった場合はエラー文字列が返されます。

targets -filter {name =~ "APU"}; loadhw design.xsa design.xsa というハードウェア デザインを読み込み、APU ターゲットのすべての子プロセッサのメモリ マップを設定します。 targets -filter {name =~ "xc7z045"}; loadhw design.xsa design.xsa というハードウェア デザインを読み込み、xc7z045 が親である子プロセッサすべてのメモリ マップを設定します。

unloadhw

Vivado HW デザインをアンロードします。

構文

unloadhw

loadhw コマンドで開いていた Vivado HW デザインを閉じて、現在のターゲット用にメモリ マップをクリアにします。現在のターゲットがプロセッサのグループの親である場合、その子プロセッサすべてのメモリ マップがクリアにされます。現在のターゲットがプロセッサの場合、その親の子プロセッサすべてのメモリ マップがクリアにされます。このコマンドは、ユーザーが明示的に設定したメモリ マップをクリアにはししません。

戻り値

なし。

mdm_drwr

MDM デバッグ レジスタに書き込みます。

構文

mdm_drwr [options] <cmd> <data> <bitlen>

MDM デバッグ レジスタに書き込みます。<cmd> は、デバッグ レジスタにアクセスする 8 ビットの MDM コマンドです。<data> はレジスタ値で、<bitlen> はレジスタの幅です。

オプション

オプション 説明
-target-id <id> アクセスする MicroBlaze デバッグ モジュールまたは MicroBlaze インスタンスを指定します。このオプションが使用されない場合および -user が指定されない場合は、現在のターゲットが使用されます。
-user <bscan number> ユーザー BSCAN ポート番号を指定します。

戻り値

正しく実行された場合は何も返されません。

mdm_drwr 8 0x40 8

MDM ブレーク/リセット制御レジスタに書き込みます。

mb_drwr

MicroBlaze デバッグ レジスタへ書き込みます。

構文

mb_drwr [options] <cmd> <data> <bitlen>

MDM で使用可能な MicroBlaze デバッグ レジスタへ書き込みます。cmd は デバッグ レジスタにアクセスする 8 ビットの MDM コマンドです。data はレジスタ値で、bitlen はレジスタ幅です。

オプション

オプション 説明
-target-id <id> アクセスする MicroBlaze インスタンスを示すターゲット ID を指定します。このオプションが使用されない場合および -user が指定されない場合は、現在のターゲットが使用されます。
-user <bscan number> ユーザー BSCAN ポート番号を指定します。
-which <instance> MicroBlaze インスタンス番号を指定します。

戻り値

問題がない場合は何も返されません。

mb_drwr 1 0x282 10

MicroBlaze 制御レジスタに書き込みます。

mdm_drrd

MDM デバッグ レジスタから読み出します。

構文

mdm_drrd [options] <cmd> <bitlen>

MDM デバッグ レジスタを読み出します。<cmd> はデバッグ レジスタにアクセスする 8 ビット MDM コマンドで、<bitlen> はレジスタの幅です。16 進数のレジスタ値を返します。

オプション

オプション 説明
-target-id <id> アクセスする MicroBlaze デバッグ モジュールまたは MicroBlaze インスタンスを指定します。このオプションおよび -user オプションがどちらも指定されていない場合は、現在のターゲットが使用されます。
-user is not specified, then the current target is used.
-user <bscan number> ユーザー BSCAN ポート番号を指定します。

戻り値

正しく実行された場合はレジスタ値が返されます。

mdm_drrd 0 32

XMDC ID レジスタを読み出します。

mb_drrd

MicroBlaze デバッグ レジスタから読み出します。

構文

mb_drrd [options] <cmd> <bitlen>

MDM で使用可能な MicroBlaze デバッグ レジスタを読み出します。cmd は デバッグ レジスタにアクセスする 8 ビットの MDM コマンドで、bitlen はレジスタの幅です。16 進数のレジスタ値を返します。

オプション

オプション 説明
-target-id <id> アクセスする MicroBlaze インスタンスを示すターゲット ID を指定します。このオプションが使用されない場合および -user が指定されない場合は、現在のターゲットが使用されます。
-user <bscan number> ユーザー BSCAN ポート番号を指定します。
-which <instance> MicroBlaze インスタンス番号を指定します。

戻り値

正しく実行された場合はレジスタ値が返されます。

mb_drrd 3 28

MicroBlaze ステータス レジスタを読み出します。

configparams

コンフィギュレーション パラメーターをリスト、取得、または設定します。

構文

configparams <options>

使用可能なコンフィギュレーション パラメーターの名前と説明をリストします。コンフィギュレーション パラメーターはグローバルにできるほか、接続別にもできるので、使用可能なコンフィギュレーション パラメーターのリストおよびそれらの値は現在の接続によって異なる可能性があります。

configparams <options> <name>

コンフィギュレーション パラメーター値を取得します。

configparams <options> <name> <value>

コンフィギュレーション パラメーター値を設定します。

オプション

オプション 説明
-all すべてのコンテキストの値を結果に含めます。
-context [context] 取得または設定する値のコンテキストを指定します。デフォルトのコンテキストはグローバル デフォルトを示す "" です。すべてのオプションがコンテキスト特有の値をサポートするわけではありません。
-target-id <id> 取得または設定するターゲット ID または値を指定します。これは、-context オプションの代わりに使用できます。

戻り値

指定した引数によって異なります。

<none>: 各パラメーターのパラメーターおよび説明のリストを返します。

<parameter name>: サポートされないパラメーターを指定した場合は、パラメーター値またはエラーを返します。

<parameter name> <parameter value>: 値を設定した場合は何も返しませんが、サポートされないパラメーターを指定した場合はエラーを返します。

configparams force-mem-accesses 1

dow、mrd、および mwr コマンドのアクセス保護を無効にします。

configparams vitis-launch-timeout 100

Vitis の起動タイムアウトを 100 秒に変更し、Vitis バッチ モードのコマンドの実行に使用します。

version

Vitis または TCF サーバーのバージョンを取得します。

構文

version [options]

Vitis または TCF サーバーのバージョンを取得します。オプションを指定しない場合は、Vitis ビルド バージョンが返されます。

オプション

オプション 説明
-server アクティブ接続の TCF サーバー ビルド バージョンを取得します。

戻り値

このコマンドが正しく実行された場合は、Vitis または TCF サーバーのバージョンが返されます。接続がない場合は、エラー文字列が返されます。

xsdbserver start

XSDB コマンド サーバーを開始します。

構文

xsdbserver start [options]

XSDB コマンド サーバー リスナーを開始します。XSDB コマンド サーバーでは、外部プロセスが XSDB に接続してコマンドを評価できます。XSDB サーバーは、接続されたソケットから一度に 1 行ずつコマンドを読み出します。評価が終了したら、okay または error で開始される 1 行が返され、そのあとに結果またはエラーがバックスラッシュのクォーテーション付きの文字列として表示されます。

オプション

オプション 説明
-host <addr> 入力接続を聞くネットワーク インターフェイスを制限します。
-port <port> 聞くポートを指定します。このオプションを指定しない場合、またはポートが 0 の場合は、ダイナミックに割り当てられたポート番号が使用されます。

戻り値

サーバーが開始される場合、サーバーの詳細がコンソールに表示されます。サーバーが既に開始された場合は問題がないことが示されるか、エラー文字列が返されます。

xsdbserver start

ダイナミックに割り当てられたポートを使用して XSDB サーバー リスナーを開始します。

xsdbserver start -host localhost -port 2000

ポート 2000 を使用して XSDB サーバー リスナーを開始して、このホスト上の入力接続のみを許可します。

xsdbserver stop

XSDB コマンド サーバーを停止します。

構文

xsdbserver stop

XSDB コマンド サーバー リスナーを停止し、接続されているクライアントがある場合は接続解除します。

戻り値

サーバーが正しく閉じられた場合は何も返されません。サーバーが開始していない場合はエラー文字列が返されます。

xsdbserver disconnect

アクティブ XSDB サーバーへの接続を解除します。

構文

xsdbserver disconnect

現在の XSDB サーバーへの接続を解除します。

戻り値

接続が閉じた場合は何も返されません。アクティブな接続がない場合は、エラー文字列が返されます。

xsdbserver version

XSDB コマンドのサーバー バージョンを返します。

構文

xsdbserver version

XSDB コマンドのサーバー プロトコル バージョンを返します。

戻り値

アクティブな接続がある場合はサーバー バージョンを返します。アクティブな接続がない場合はエラー文字列を返します。

JTAG アクセス

jtag targets

JTAG ターゲットをリストするか、JTAG ターゲット間を切り替えます。

構文

jtag targets

使用可能な JTAG ターゲットをリストします。

jtag targets <target id>

<target id> をアクティブな JTAG ターゲットとして選択します。

オプション

オプション 説明
-set 現在のターゲットをリストの 1 つのエントリに設定します。これは、-filter オプションと一緒に使用すると便利です。リストが空の場合や複数のエントリが含まれる場合は、エラーが返されます。
-regexp フィルター設定に regexp を使用します。
-nocase フィルター設定で大文字/小文字を区別しません。
-filter <filter-expression> リストに含めるターゲットをプロパティに基づいて制御するフィルター式を指定します。フィルター式は Tcl の expr 構文と類似しています。ターゲット プロパティは名前による参照です。Tcl 変数には $ 構文を使用してアクセスしますが、文字列はクォーテーションで囲む必要があります。演算子 ==、!=、<=, >=、<, >、&& および || のほか、() もサポートされます。これらの演算子は Tcl の expr 演算子と同じように動作します。文字列一致演算子 =~ および !~ は、regexp または文字列一致のいずれかを使用した rhs パターンの lhs 文字列と一致します。
-target-properties ターゲット プロパティを含むディクショナリの Tcl リストを返します。
-open リストのすべてのターゲットを開きます。リストは、target-ids を指定するか、フィルターを使用すると短かくできます。
-close リストのすべてのターゲットを閉じます。リストは、target-ids を指定するか、フィルターを使用すると短かくできます。
-timeout <sec> フィルター オプションで指定したターゲットがスキャン チェーンで見つかるか、タイムアウトするまでポーリングします。このオプションは、filter オプションにのみ使用できます。タイムアウト値の単位は秒です。デフォルトのタイムアウトは 3 秒です。

戻り値

戻り値は、使用されるオプションによって異なります。

<none>: オプションを使用しない場合は JTAG ターゲット リスト。

-filter: フィルターされた JTAG ターゲット リスト。

-target-properties: JTAG ターゲット プロパティを含む Tcl リスト。

JTAG ターゲットの選択ができなかった場合はエラーが返されます。

jtag targets

すべてのターゲットをリストします。

jtag targets -filter {name == "arm_dap"}

arm_dap という名前のターゲットをリストします。

jtag targets 2

id 2 のターゲットを現在のターゲットとして設定します。

jtag targets -set -filter {name =~ "arm*"}

arm で始まる名前のターゲットを現在のターゲットとして設定します。

jtag targets -set -filter {level == 0}

JTAG ケーブルをリストします。

jtag sequence

JTAG シーケンス オブジェクトを作成します。

構文

jtag sequence

JTAG シーケンス オブジェクトを作成します。

説明

jtag sequence コマンドは新しいシーケンス オブジェクトを作成します。作成後のシーケンスは空です。次のシーケンス オブジェクト コマンドを使用できます。

sequence state new-state [count]

JTAG ステート マシンを <new-state> に移動し、<count> 個の JTAG クロックを生成します。<clock> が指定されていて、<new-state> がループ ステート (RESET、IDLE、IRSHIFT、IRPAUSE、DRSHIFT または DRPAUSE) ではない場合、ステート マシンが RESET ステートに移行します。

sequence irshift [options] [bits [data]]

sequence drshift [options] bits [data]: IRSHIFT または DRSHIFT ステートでデータをシフトします。データは最後の引数として渡されるか、if -tdi オプションが指定される場合、-tdi に指定した引数によって、データはすべて 0 になるかすべて 1 になります。-register オプションを指定した場合、<bits> および <data> 引数は irshift には使用されません。使用可能なオプション: -register <name>: 命令レジスタを名前で指定します。このオプションは、irshift でのみサポートされます。-tdi <value>: SHIFT ステートのすべてのクロックに使用する TDI 値。-binary: <data> のフォーマットがバイナリあることを指定します (バイナリ フォーマットのファイルからのデータなど)。-integer: <data> のフォーマットが整数であることを指定します。データの最下位ビットが最初にシフトされます。-bits: <data> のフォーマットがバイナリ テキスト文字列であることを指定します。文字列の最初のビットが最初にシフトされます。-hex: <data> のフォーマットが 16 進数テキスト文字列であることを指定します。文字列の最初のバイトの最下位ビットが最初にシフトされます。-capture: シフト中に TDO データを取り込んで、sequence run コマンドから返されます。-state <new-state>: シフトが終了した後のステートを指定します。デフォルトは RESET です。

sequence delay usec

シーケンス コマンド間に遅延を生成します。遅延中は JTAG クロックは生成されません。遅延は <usec> マイクロ秒以上になりますが、JTAG クロックを生成しないと遅延がサポートされないケーブルでは、それより長くできます。

sequence get_pin pin

<pin> の値を取得します。サポートされるピンはケーブルによって異なります。

sequence set_pin pin value

<pin> の値を <value> に設定します。サポートされるピンはケーブルによって異なります。

sequence atomic enable

アトミック シーケンスを設定または取得します。これは、正確なタイミングで実行されるか必ずエラーになるシーケンスを作成する場合に便利です。アトミック シーケンスは、エラーのリスクを最小限に抑えるため、できるだけ短くする必要があります。

sequence run [options]

現在選択されている JTAG ターゲットに対して JTAG 操作をシーケンスの順番で実行します。このコマンドは、shift コマンドに -capture オプションを付けた結果および get_pin コマンドの結果を返します。使用可能なオプション: -binary: 戻り値をバイナリとしてフォーマットします。最初にシフト アウトされるビットは戻される最初のバイトの最下位ビットです。-integer: 戻り値を整数としてフォーマットします。最初にシフト アウトされるビットはその整数の最下位ビットです。-bits: 戻り値をバイナリのテキスト文字列としてフォーマットします。最初にシフト アウトされるビットは文字列の最初の文字です。-hex: 戻り値を 16 進数にテキスト文字列としてフォーマットします。最初にシフト アウトされるビットは、その文字列の最初のバイトの最下位ビットです。-single: すべての戻り値を 1 つのデータにまとめます。このオプションを指定しない場合、戻り値は shift -capture および get_pin ごとに 1 つのエントリのリストになります。

sequence clear

シーケンスからすべてのコマンドを削除します。

sequence delete

シーケンスを削除します。

戻り値

JTAG シーケンス オブジェクト。

set seqname [jtag sequence] $seqname state RESET $seqname drshift -capture -tdi 0 256 set result [$seqname run] $seqname delete

jtag device_properties

デバイス プロパティを取得/設定します。

構文

jtag device_properties idcode

<idcode> に関連付けられている JTAG デバイス プロパティを取得します。

jtag device_properties key value ...

JTAG デバイス プロパティを設定します。

戻り値

指定の ID コードの JTAG デバイス プロパティが返されるか、ID コードが不明な場合は何も返されません。

jtag device_properties 0x4ba00477

ID コード 0x4ba00477 のデバイス プロパティを含む Tcl dict を返します。

jtag device_properties {idcode 0x4ba00477 mask 0xffffffff name dap irlen 4}

ID コード 0x4ba00477 のデバイス プロパティを設定します。

jtag lock

JTAG スキャン チェーンをロックします。

構文

jtag lock [timeout]

現在の JTAG ターゲットを含む JTAG スキャン チェーンをロックします。スキャン チェーン ロックが使用可能になるまで待ってから、ロックします。<timeout> を指定すると、待機時間は <timeout> ミリ秒に制限されます。JTAG ロックにより、ほかのクライアントがスキャン チェーンで JTAG シフトまたはステート変更を実行しないようになります。その他のスキャン チェーンは並列で使用できます。jtag run_sequence コマンドはシーケンスのすべてのコマンドを実行するので、jtag lock を使用する必要があるのは、複数の jtag run_sequence コマンドを割り込みなしに実行する必要がある場合のみです。

注記

  • 複数のスキャン チェーンをロックするとデッドロックになるので、クライアントは複数のスキャン チェーンをロックしないようにする必要があります。

戻り値

なし。

jtag unlock

JTAG スキャン チェーンのロックを解除します。

構文

jtag unlock

現在の JTAG ターゲットを含む JTAG スキャン チェーンのロックを解除します。

戻り値

なし。

jtag claim

JTAG デバイスをクレームします。

構文

jtag claim <mask>

現在の JTAG デバイスのクレーム マスクを設定します。このコマンドは、現在の JTAG デバイスのクレーム マスクを設定しようとします。<mask> で設定されているビットが claim マスクで既に設定されている場合は、「already claimed」 (クレーム済み) というエラーが返されます。

クレーム マスクを使用すると、クライアントが JTAG デバイスを使用して制御を交渉できるようになります。jtag lock の違いは、1) スキャン チェーン内のデバイス特有である点と、2) クレームに効力がある間はどのクライアントも JTAG 操作を実行できる点です。

注記

  • 現時点では、クレームは Arm DAP デバイスのマイクロプロセッサおよび MicroBlaze プロセッサを含む FPGA デバイスの制御をディスエーブルにするために使用します。

戻り値

なし。

jtag disclaim

JTAG デバイスのクレーム マスクを解除します。

構文

jtag disclaim <mask>

現在の JTAG デバイスのクレーム マスクをクリアします。

戻り値

なし。

jtag frequency

JTAG 周波数を取得/設定します。

構文

jtag frequency

現在のスキャン チェーンの JTAG クロック周波数を取得します。

jtag frequency -list

現在のスキャン チェーンでサポートされる JTAG クロック周波数を取得します。

jtag frequency <frequency>

現在のスキャン チェーンの JTAG クロック周波数を設定します。この周波数は、hw_server が実行されている限り同じで、新しい hw_server が開始されるとデフォルト値にリセットされます。

戻り値

引数を指定しなかった場合、または JTAG 周波数が問題なく設定された場合は、現在の JTAG 周波数が返されます。-list オプションを使用しない場合は、サポートされる JTAG 周波数が返されます。無効な周波数を指定するか、周波数が設定できない場合はエラー文字列が返されます。

jtag skew

JTAG スキューを取得/設定します。

構文

jtag skew

現在のスキャン チェーンの JTAG クロック スキューを取得します。

jtag skew <clock-skew>

現在のスキャン チェーンの JTAG クロック スキューを設定します。

注記

  • JTAG ケーブルの中にはクロック スキュー プロパティをサポートしないものもあります。

戻り値

引数を指定しなかった場合、または JTAG スキューが問題なく設定された場合は、現在のクロック スキューが返されます。無効なスキューを指定するか、スキューが設定できない場合はエラー文字列が返されます。

jtag servers

JTAG サーバーをリスト、開く、または閉じます。

構文

jtag servers [options]

JTAG サーバーをリスト、開く、または閉じます。JTAG サーバーは、異なるタイプの JTAG ケーブルのサポートをインプリメントするために使用します。開いている JTAG サーバーがリストされるか、使用可能な JTAG ポートに接続されます。

オプション

オプション 説明
-list 開いているサーバーをリストします。ほかのオプションを指定しない場合、これがデフォルトです。
-format サポートされるサーバー文字列のフォーマットをリストします。
-open <server> 開くサーバーを指定します。
-close <server> 閉じるサーバーを指定します。

戻り値

指定したオプションによって異なります。

<none>、-list: 開いている JTAG サーバーをリストします。

-format: サポートされる JTAG サーバーをリストします。

-close: サーバーが閉じた場合は何も返されません。無効なサーバーが指定された場合は、エラーが返されます。

jtag servers

開いているサーバーと関連付けられているポートの数をリストします。

jtag servers -open xilinx-xvc:localhost:10200

ホスト localhost 10200 の XVC サーバーに接続します。

jtag servers -close xilinx-xvc:localhost:10200

ホスト localhost 10200 の XVC サーバーを閉じます。

ターゲット ファイル システム

tfile open

ファイルを開きます。

構文

tfile open <path>

指定したファイルを開きます

戻り値

ファイル ハンドル

tfile close

ファイル ハンドルを閉じます。

構文

tfile close <handle>

指定したファイル ハンドルを閉じます。

戻り値

tfile read

ファイル ハンドルを読み出します。

構文

tfile read <handle>

指定したファイル ハンドルから読み出します。

オプション

オプション 説明
-offset <seek> 読み出すファイル オフセットを指定します。

戻り値

読み出されたデータ

tfile write

ファイル ハンドルに書き込みます。

構文

tfile write <handle>

指定したファイル ハンドルに書き込みます。

オプション

オプション 説明
-offset <seek> 書き込むファイル オフセットを指定します。

戻り値

tfile stat

指定したパスのファイル属性を取得します。

構文

tfile stat <handle>

<path> のファイル属性を取得します。

戻り値

ファイル属性

tfile lstat

指定したパスからリンク ファイル属性を取得します。

構文

tfile lstat <path>

<path> のリンク ファイル属性を取得します。

戻り値

リンク ファイル属性

tfile fstat

ハンドルからファイル属性を取得します。

構文

tfile fstat <handle>

<handle> のファイル属性を取得します。

戻り値

ファイル属性

tfile setstat

指定したパスのファイル属性を設定します。

構文

tfile setstat <path> <attributes>

<path> のファイル属性を設定します。

戻り値

ファイル属性

tfile fsetstat

ハンドルのファイル属性を設定します。

構文

tfile fsetstat <handle> <attributes>

<handle> のファイル属性を設定します。

戻り値

ファイル属性

tfile remove

パスを削除します。

構文

tfile remove <path>

<path> を削除します。

戻り値

tfile rmdir

ディレクトリを削除します。

構文

tfile rmdir <path>

ディレクトリ <path> を削除します。

戻り値

tfile mkdir

ディレクトリを作成します。

構文

tfile mkdir <path>

ディレクトリ <path> を作成します。

戻り値

tfile realpath

絶対パスを取得します。

構文

tfile realpath <path>

<path> の絶対パスを取得します。

戻り値

絶対パス

tfile rename

パスの名前を変更します。

構文

tfile rename <old path> <new path>

ファイルまたはディレクトリの名前を変更します。

戻り値

tfile readlink

シンボリック リンクを読み出します。

構文

tfile readlink <path>

リンク ファイルを読み出します。

戻り値

ターゲット パス

tfile symlink

シンボリック リンクを作成します。

構文

tfile symlink <old path> <new path>

シンボリック ファイルまたはディレクトリを作成します。

戻り値

tfile opendir

ディレクトリを開きます。

構文

tfile opendir <path>

ディレクトリ <path> を開きます。

戻り値

ファイル ハンドル

tfile readdir

ディレクトリを読み出します。

構文

tfile readdir <file handle>

ディレクトリを読み出します。

戻り値

ファイル ハンドル

tfile copy

ターゲット ファイルをコピーします。

構文

tfile copy <src> <dest>

ファイル <src><dest> にコピーします。

戻り値

ターゲットのローカルにコピーされたファイル

tfile user

ユーザー属性を取得します。

構文

tfile user

ユーザー属性を取得します。

戻り値

ユーザー情報

tfile roots

ファイル システムのルートを取得します。

構文

tfile roots

ファイル システムのルートを取得します。

戻り値

ファイル システムのルートのリスト

tfile ls

ディレクトリの内容をリストします。

構文

tfile ls <path>

ディレクトリの内容をリストします。

戻り値

ディレクトリの内容

SVF 操作

次に、SVF コマンドをリストします。

svf config

SVF ファイルのオプションを設定します。

構文

svf config [options]

SVF ファイルを設定して生成します。

オプション

オプション 説明
-scan-chain <list of idcode-irlength pairs> ID コードと IR 長のペアのリストを指定します。これは、XSDB コマンド jtag targets で取得できます。
-device-index <index> JTAG スキャン チェーンのデバイスを選択します。
-cpu-index <processor core> SVF ファイルを生成する CPU インデックスを指定します。ZynqMP 上の A53#0 ~ A53#3 には CPU インデックス 0 ~ 3、ZynqMP 上の R5#0 ~ R5#1 には CPU インデックス 4 ~ 5、Zynq 上の A9#0 ~ A9#1 には CPU インデックス 0 ~1 を使用します。複数の MicroBlaze プロセッサが MDM に接続されている場合は、実行用に特定の MicroBlaze インデックスを指定します。
-out <filename> 出力 SVF ファイルを指定します。
-delay <tcks> AP 書き込み間の遅延をティック数で指定します。
-linkdap ZynqMP シリコン バージョン 2.0 以上の JTAG チェーンに DAP をリンクする SVF を生成します。
-bscan <user port> MDM を接続するユーザー BSCAN ポートを指定します。
-mb-chunksize <size in bytes> ダウンロード時の各トランザクションのチャンク サイズをバイト数で指定します。MicroBlaze プロセッサでのみサポートされます。

戻り値

なし

svf config -scan-chain {0x14738093 12 0x5ba00477 4} -device-index 1  -cpu-index 0 -out "test.svf"

コア A53#0 用に test.svf という SVF ファイルを作成します。

svf config -scan-chain {0x14738093 12 0x5ba00477 4} -device-index 0  -bscan pmu -cpu-index 0 -out "test.svf"

PMU MB 用に test.svf という SVF ファイルを作成します。

svf config -scan-chain {0x23651093 6} -device-index 0 -cpu-index 0  -bscan user1 -out "test.svf"

BSCAN USER1 の MDM に接続されている MB 用に test.svf という SVF ファイルを作成します。

svf generate

SVF ファイルを生成します。

構文

svf generate

config コマンドで指定したパスに SVF ファイルを生成します。

オプション

なし

戻り値

正しく実行された場合は何も返されません。正しく実行されなかった場合はエラーが返されます。

svf generate

svf mwr

メモリ書き込みを SVF ファイルに記録します。

構文

svf mwr <address> <value>

<value> で指定した値を <address> で指定したメモリ アドレスに書き込みます。

オプション

なし

戻り値

正しく実行された場合は何も返されません。正しく実行されなかった場合はエラーが返されます。

svf mwr 0xffff0000 0x14000000

svf dow

ELF ダウンロードを SVF ファイルに記録します。

構文

svf dow <elf file>

ELF ファイル <elf file> のダウンロードをメモリに記録します。

svf dow -data <file> <addr>

バイナリ ファイル <file> のダウンロードをメモリに記録します。

オプション

なし

戻り値

正しく実行された場合は何も返されません。正しく実行されなかった場合はエラーが返されます。

svf dow "fsbl.elf"

ELF ファイル fsbl.elf のダウンロードを記録します。

svf dow -data "data.bin" 0x1000

バイナリ ファイル data.bin のダウンロードをアドレス 0x1000 に記録します。

svf stop

コアの停止を SVF ファイルに記録します。

構文

svf stop

現在のターゲットの実行停止を SVF ファイルに記録します。

オプション

なし

戻り値

なし

svf stop

svf con

コアの再開を SVF ファイルに記録します。

構文

svf con

アクティブ ターゲットの実行再開を SVF ファイルに記録します。

オプション

なし

戻り値

なし

svf con

svf delay

遅延 (ティック数) を SVF ファイルに記録します。

構文

svf delay <delay in tcks>

遅延 (ティック数) を SVF ファイルに記録します。

オプション

なし

戻り値

なし

svf delay 1000

1000 ティックの遅延を SVF ファイルに追加します。

デバイス コンフィギュレーション システム

次に、device コマンドをリストします。

device program

PDI/BIT をプログラムします。

構文

device program <file>

PDI または BIT ファイルをデバイスにプログラムします。
注記: ターゲットが選択されていない場合、または現在のターゲットがコンフィギュレーションギャラブル デバイスではく、サポートされるデバイスがターゲット リストに 1 つしかない場合は、このデバイスがコンフィギュレーションされます。それ以外の場合は、targets コマンドを使用してデバイスを選択する必要があります。

戻り値

ターゲットがコンフィギュレーションされた場合は何も返されません。コンフィギュレーションがエラーになった場合はエラーが返されます。

device status

JTAG レジスタのステータスを返します。

構文

device status <options> <jtag-register-name>

デバイス JTAG レジスタのステータスを返すか、レジスタ名を指定しない場合は使用可能なレジスタを返します。

オプション

オプション 説明
-jreg-name <jtag-register-name> 読み出す JTAG レジスタの名前を指定します。これはデフォルト オプションであり、レジスタ名はこのオプションを使用しなくても引数として指定できます。
-hex 返されたデータを 16 進数でフォーマットします。

戻り値

ステータス レポート

Vitis プロジェクト

次に、プロジェクト コマンドをリストします。

getaddrmap

プロセッサに接続されている IP のアドレス範囲を取得します。

構文

getaddrmap <hw spec file> <processor-instance>

プロセッサに接続されているすべての IP のアドレス範囲と、IP のサイズやアクセス フラグなどの詳細を表形式で返します。

オプション

なし

戻り値

コマンドが正しく実行された場合は、IP の出力およびアドレス範囲が返されます。正しく実行されなかった場合はエラーが返されます。

getaddrmap system.xsa ps7_cortexa9_0

ps7_cortexa9_0 に接続されているペリフェラルのアドレス マップを返します。system.xsa は、Vivado からエクスポートされたハードウェア仕様ファイルです。

getperipherals

ハードウェア デザインに含まれるすべてのペリフェラルのリストを取得します。

構文

getperipherals <xsa> <processor-instance>

ハードウェア デザインに含まれるすべてのペリフェラルと、それらのバージョンおよびタイプを返します。プロセッサ インスタンス (<processor-instance>) を指定した場合は、そのプロセッサに接続されているスレーブ ペリフェラルのみが返されます。

オプション

なし

戻り値

コマンドが正しく実行された場合は、ペリフェラルのリストが返されます。正しく実行されなかった場合はエラーが返されます。

getperipherals system.xsa

ハードウェア デザインに含まれるすべてのペリフェラルを返します。

getperipherals system.xsa ps7_cortexa9_0

ハードウェア デザインのプロセッサ ps7_cortexa9_0 に接続されているペリフェラルを返します。

repo

ソフトウェア リポジトリを取得、設定、変更します。

構文

repo [OPTIONS]

現在使用されているソフトウェア リポジトリ パスを取得/設定します。このコマンドは、リポジトリをスキャンし、リポジトリから OS、ライブラリ、ドライバ、アプリケーションのリストを取得するために使用します。

オプション

オプション 説明
-set <path-list> リポジトリ パスを設定し、使用可能なすべてのソフトウェア コアをロードします。複数のリポジトリ パスを Tcl リストとして指定できます。
-get リポジトリ パスを取得します。
-scan リポジトリをスキャンします。このオプションは、変更をした場合にリポジトリをスキャンするために使用します。
-os リポジトリからすべての OS のリストを返します。
-libs リポジトリからすべてのライブラリのリストを返します。
-drivers リポジトリからすべてのドライバーのリストを返します。
-apps リポジトリからすべてのアプリケーションのリストを返します。
-add-platforms <platform-name> <platform-name> で指定したプラットフォームをリポジトリに追加します。

戻り値

指定したオプションによって異なります。

-scan, -set: 何も返しません。

-get: 現在のリポジトリ パスを返します。

-os, -libs, -drivers, -apps: OS、ライブラリ、ドライバー、アプリケーションのリストをそれぞれ返します。

<repo-path>repo -set 

リポジトリ パスを <repo-path> で指定したパスに設定します。

repo -os

リポジトリからすべての OS のリストを返します。

repo -libs

リポジトリからライブラリのリストを返します。

platform

プラットフォームをリスト、コンフィギュレーション、リスト、レポートします。

構文

platform <sub-command> [options]

プラットフォーム プロジェクトを作成するか、指定した <sub-command> に基づいてプラットフォーム プロジェクトでその他さまざまな操作を実行します。サポートされるサブコマンドは次のとおりです。active - アクティブなプラットフォームを設定または返します。clean - プラットフォームをクリーンします。config - プラットフォームのプロパティをコンフィギュレーションします。create - プラットフォームを作成/定義します。fsbl - fsbl の追加コンパイラ/リンカー フラグを指定します。generate - プラットフォームをビルドします。list - ワークスペースのプラットフォームすべてをリストします。pmufw - pmufw の追加コンパイラ/リンカー フラグを指定します。report - プラットフォームの詳細をレポートします。read - ファイルからプラットフォーム設定を読み出します。remove - プラットフォームを削除します。write - ファイルにプラットフォーム設定を保存します。help のあと platform sub-command と入力するか、platform sub-command のあと -help を付けると、詳細が表示されます。

オプション

sub-command によって異なります。詳細は、sub-command のヘルプを参照してください。

戻り値

sub-command によって異なります。詳細は、sub-command のヘルプを参照してください。

詳細は、sub-command のヘルプを参照してください。

platform active

アクティブなプラットフォームを設定/取得します。

構文

platform active [platform-name]

アクティブなプラットフォームを設定または取得します。platform-name を指定すると、それがアクティブ プラットフォームになります。指定しない場合は、アクティブ プラットフォームの名前が返されます。アクティブ プラットフォームが存在しない場合は、空の文字列が返されます。

オプション

なし

戻り値

プラットフォームがアクティブとして設定されるか、アクティブなプラットフォームがない場合は、空の文字列が返されます。アクティブなプラットフォームが読み出されると、プラットフォーム名が返されます。

platform active

アクティブなプラットフォームの名前を返します。

platform active zc702_platform

zc702_platform をアクティブなプラットフォームとして設定します。

platform clean

プラットフォームをクリーンします。

構文

platform clean

ワークスペースのアクティブ プラットフォームをクリーンします。プラットフォームの FSBL、PMUFW などのコンポーネントがすべてクリーンされます。

オプション

なし

戻り値

なし。コンソールにビルド ログが表示されます。

platform active zcu102

platform clean

zcu102 をアクティブ プラットフォームに設定し、クリーンします。

platform config

アクティブなプラットフォームをコンフィギュレーションします。

構文

platform config [options]

アクティブなプラットフォームのプロパティをコンフィギュレーションします。

オプション
オプション 説明
-desc <description> プラットフォームに関する簡単な説明を追加します。
-updatehw <hw-spec> <hw-spec> で指定した新しいハードウェア仕様ファイルを使用するようにプラットフォームをアップデートします。
-samples <samples-dir> <samples-dir> で指定したアプリケーション テンプレートをプラットフォームに含めます。このオプションは、アクセラレーション可能なアプリケーションにのみ使用できます。repo -apps <platform-name> を使用すると、指定したプラットフォーム名に使用可能なアプリケーション テンプレートがリストされます。
-make-local 参照した SW コンポーネントをプラットフォームに対してローカルにします。
-fsbl-target <processor-type> 既存の fsbl を再生成する必要があるプロセッサ タイプを指定します。このオプションは、Zynq UltraScale+ にのみ使用できます。
-create-boot-bsp プラットフォームのブート コンポーネントを生成します。
-remove-boot-bsp プラットフォーム作成中に生成されたブート コンポーネントすべてを削除します。
-fsbl-elf <fsbl.elf> remove-boot-bsp オプションが指定される場合にブート コンポーネントとして使用する fsbl.elf をプリビルドします。
-pmufw-elf <pmufw.elf> remove-boot-bsp オプションが指定される場合にブート コンポーネントとして使用する pmufw.elf をプリビルドします。
戻り値

プラットフォームが正しく設定された場合は空の文字列が返されます。アクティブなプラットフォームがない場合やプラットフォームが設定できなかった場合はエラー文字列が返されます。

platform active zc702

platform config -desc "ZC702 with memory test application"

-samples /home/user/newDir: ZC702 をアクティブなプラットフォームにし、プラットフォームの説明を指定し、プラットフォームの /home/user/newDir 部分にサンプルを作成します。

platform config -updatehw /home/user/newdesign.xsa

新しい XSA でプラットフォーム プロジェクトをアップデートします。

platform create

新規プラットフォームを作成します。

構文

platform create [options]

ハードウェア定義ファイルをインポートして新規プラットフォームを作成します。プラットフォームは、定義済みハードウェア プラットフォームからも作成できます。サポートされる定義済みプラットフォームは、zc702、zcu102、zc706、および zed です。

オプション
オプション 説明
-name <software-platform name> 生成するソフトウェア プラットフォームの名前を指定します。
-desc <description> ソフトウェア プラットフォームの簡単な説明を指定します。
-hw <handoff-file> プラットフォームの作成に使用するハードウェア記述ファイルを指定します。
-out <output-directory> ソフトウェア プラットフォームを作成するディレクトリをしていします。ワークスペースが設定されている場合は、プラットフォームはワークスペースに作成されるので、このオプションを指定する必要はありません。ワークスペースもこのオプションも設定されていない場合は、プラットフォームは現在の作業ディレクトリに作成されます。
-prebuilt プラットフォームを既にビルドされているソフトウェア中間ファイルから作成するようマークします。このオプションは、ソフトウェア プラットフォームの中間ファイルが存在する場合にのみ使用可能です。
-proc <processor> 使用するプロセッサを指定します。ツールによりデフォルト ドメインが作成されます。
-samples <samples-directory> プラットフォームの一部として <samples-directory> にサンプルを作成します。
-os <os> 使用する OS を指定します。ツールによりデフォルト ドメインが作成されます。これは、-proc オプションと共に使用します。
-xpfm <platform-path> プロジェクトをインポートして現在のプラットフォームの一部とする既存のプラットフォームを指定します。
-no-boot-bsp プラットフォームをブート コンポーネントなしで作成します。
戻り値

プラットフォームが正しく作成された場合は空の文字列が返されます。プラットフォームが作成できない場合はエラー文字列が返されます。

platform create -name "zcu102_test" -hw zcu102

定義済みハードウェア記述ファイルのソフトウェア プラットフォームを定義します。

platform create -name "zcu102_test" -hw zcu102 -proc psu_cortexa53_0 -os standalone

定義済みハードウェア記述ファイルのソフトウェア プラットフォームを定義します。psu_cortexa53_0 上で実行されるスタンドアロン OS のデフォルト ドメインを作成します。

platform create -xpfm /path/zc702.xpfm

これにより、xpfm ファイルで指定されたプラットフォームのプラットフォーム プロジェクトが作成されます。

platform create -name "ZC702Test" -hw /path/zc702.xsa

ハードウェア記述ファイルのソフトウェア プラットフォームを定義します。

platform fsbl

FSBL を設定します。

構文

platform fsbl

FSBL の追加のコンパイラ フラグおよびリンカー フラグを設定します。

オプション
オプション 説明
-extra-compiler-flags <flags> FSBL に <flags> で指定したコンパイラ フラグを設定します。
-extra-linker-flags <flags> FSBL に <flags> で指定したリンカー フラグを設定します。
-report FSBL の追加のコンパイラ フラグおよびリンカー フラグを表形式で返します。
戻り値

フラグが正しく設定された場合は空の文字列が返されます。フラグが設定できない場合はエラー文字列が返されます。

platform fsbl -extra-compiler-flags "-DFSBL_DEBUG_INFO"

FSBL アプリケーションをビルドする際に、コンパイラ オプションに -DDEBUG_INFO を追加します。

platform fsbl -report

設定された追加のコンパイラ フラグおよびリンカー フラグを表形式で返します。

platform generate

プラットフォームをビルドします。

構文

platform generate

アクティブなプラットフォームをビルドしてリポジトリに追加します。プラットフォームは platform create コマンドで作成して、ビルド前にアクティブなプラットフォームとして選択しておく必要があります。

オプション
オプション 説明
-domains <domain-list> ビルドしてリポジトリに追加する必要のあるドメインのリスト。このオプションを指定しない場合、プラットフォームの一部であるドメインすべてがビルドされます。
戻り値

プラットフォームが正しく生成された場合は空の文字列が返されます。プラットフォームがビルドできなかった場合はエラー文字列が返されます。

platform generate

アクティブなプラットフォームをビルドしてリポジトリに追加します。

platform generate -domains a53_standalone,r5_standalone

a53_standalone、r5_standalone ドメインのみをビルドしてリポジトリに追加します。

platform list

プラットフォームをリストします。

構文

ワークスペースおよびリポジトリに含まれるプラットフォームをリストします。

オプション

なし

戻り値

プラットフォームのリスト。プラットフォームがない場合は、「No active platform present」 (アクティブ プラットフォームがありません) という文字列が返されます。

platform list

ワークスペースおよびリポジトリに含まれるプラットフォームをリストします。

platform pmufw

PMUFW を設定します。

構文

platform pmufw

PMUFW を追加のコンパイラおよびリンカー フラグを使用してビルドするよう設定します。

オプション
オプション 説明
-extra-compiler-flags <value> PMUFW に追加のコンパイラ フラグを設定します。
-extra-linker-flags <value> PMUFW に追加のリンカー フラグを設定します。
-report PMUFW に設定されたフラグのリストを返します。
戻り値

フラグが正しく設定された場合は空の文字列が返されます。フラグが設定できない場合はエラー文字列が返されます。

platform pmufw -extra-compiler-flags "-DDEBUG_INFO"

PMUFW アプリケーションをビルドする際に、コンパイラ オプションに -DDEBUG_INFO を追加します。

platform read

プラットフォーム ファイルから読み出しをします。

構文

platform read [platform-file]

プラットフォーム ファイルからプラットフォーム設定を読み出して、編集できるようにします。プラットフォーム ファイルはプラットフォーム自体の作成中に作成され、ハードウェア仕様、プロセッサ情報などのプラットフォームの詳細すべてを含みます。

オプション

なし

戻り値

プラットフォームが正しく読み出された場合は空の文字列が返されます。プラットフォーム ファイルを読み出せない場合は、エラー文字列が返されます。

<platform.spr>platform read 

platform.spr ファイルからプラットフォームを読み出します。

platform remove

プラットフォームを削除します。

構文

platform remove <platform-name>

指定したプラットフォームを削除します。プラットフォーム名 (<platform-name>) を指定しない場合は、アクティブ プラットフォームが削除されます。

オプション

なし

戻り値

プラットフォームが正しく削除された場合は空の文字列が返されます。プラットフォームが削除できない場合はエラー文字列が返されます。

platform remove zc702

ディスクから zc702 プラットフォームを削除します。

platform report

プラットフォームの詳細をレポートします。

構文

platform report [platform-name]

プラットフォームのドメイン、プロセッサ コアなどの詳細を返します。プラットフォーム名 (platform-name) を指定しない場合は、アクティブなプラットフォームの詳細がレポートされます。

オプション

なし

戻り値

プラットフォームの詳細を示す表が表示されるか、プラットフォームがない場合はエラー文字列が返されます。

platform report

アクティブなプラットフォームの詳細を含む表を返します。

platform write

プラットフォーム設定をファイルに記述します。

構文

platform write

プラットフォーム設定を platform.spr ファイルに記述します。このファイルは、platform read コマンドを使用してリードバックできます。

オプション

なし

戻り値

プラットフォーム設定が正しく記述された場合は空の文字列が返されます。プラットフォーム設定が記述できない場合はエラー文字列が返されます。

platform write

プラットフォーム設定を platform.spr ファイルに記述します。

domain

ドメインを作成、コンフィギュレーション、リスト、レポートします。

構文

domain <sub-command> [options]

指定した <sub-command> に基づいて、ドメインを作成するか、ドメインでその他さまざまな操作を実行します。サポートされるサブコマンドは次のとおりです。active - アクティブなドメインを設定/取得します。config - ドメインのプロパティをコンフィギュレーションします。create - アクティブ プラットフォームにドメインを作成します。list - アクティブ プラットフォームのドメインをすべてリストします。report - ドメインの詳細をレポートします。remove - ドメインを削除します。help の後に app <sub-command> と入力するか、app <sub-command> の後に -help を付けると、詳細が表示されます。

オプション

<sub-command> によって異なります。詳細は、サブコマンドのヘルプを参照してください。

戻り値

<sub-command> によって異なります。詳細は、sub-command のヘルプを参照してください。

詳細は、サブコマンドのヘルプを参照してください。

domain active

アクティブなドメインを設定/取得します。

構文

domain active [domain-name]

アクティブなドメインを設定または取得します。ドメイン名を指定した場合、それがアクティブ ドメインになります。指定しない場合、アクティブ ドメインの名前が返されます。アクティブ ドメインが存在しない場合は、空の文字列が返されます。

オプション

なし

戻り値

ドメインがアクティブとして設定されるか、アクティブなドメインがない場合は、空の文字列が返されます。アクティブなドメインが読み出されると、ドメイン名が返されます。

domain active

アクティブなドメイン名を返します。

domain active test_domain

test_domain をアクティブなドメインとして設定します。

domain active

アクティブなドメインを設定/取得します。

構文

domain active [domain-name]

アクティブなドメインを設定または取得します。ドメイン名を指定した場合、それがアクティブ ドメインになります。指定しない場合、アクティブ ドメインの名前が返されます。アクティブ ドメインが存在しない場合は、空の文字列が返されます。

オプション

なし

戻り値

ドメインがアクティブとして設定されるか、アクティブなドメインがない場合は、空の文字列が返されます。アクティブなドメインが読み出されると、ドメイン名が返されます。

domain active

アクティブなドメイン名を返します。

domain active test_domain

test_domain をアクティブなドメインとして設定します。

domain config

アクティブ ドメインのプロパティを設定します。

構文

domain config [options]

アクティブ ドメインのプロパティを設定します。

オプション
オプション 説明
-display-name <display name> ドメインの表示名を指定します。
-desc <description> ドメインの簡単な説明を指定します。
-image <location> PetaLinux プロジェクトの作成時に、OS が Linux のドメインにこのディレクトリからのビルド済み Linux イメージを使用します。このオプションは、Linux ドメインにのみ使用できます。
-sw-repo <repositories-list> このドメインの生成中に、ドライバーやライブラリなどのソフトウェア コンポーネントを選択するのに使用するリポジトリを指定します。リポジトリは、ソフトウェア リポジトリのパスの Tcl リストとして指定する必要があります。
-mss <mss-file> ドメイン用に MSS を生成するのではなく、<mss-file> で指定した MSS を使用します。
-prebuilt-data <directory-name> アクセラレータを含まないユーザー アプリケーションのビルドに、<directory-name> で指定した生成済みのハードウェア データを使用します。これにより、ビルド時間が短縮されます。
-readme <file-name> ドメインにブート手順などを含む README ファイルを追加します。
-inc-path <include-path> このドメイン用のアプリケーションをビルドする際に追加する必要のあるインクルード パスを指定します。
-lib-path <library-path> このドメイン用に作成するアプリケーションのリンカー設定に追加する必要のあるライブラリ検索パスを指定します。
-sysroot <sysroot-dir> プラットフォームに追加する必要のある Linux sysroot ディレクトリを指定します。この sysroot は、アプリケーションのビルド時に消費されます。
-boot <boot-dir> Linux イメージのビルド後にコンポーネントを生成するディレクトリをしていします。
-bif <file-name> Linux ブート用のブート イメージを作成する際に使用する BIF ファイルを指定します。
-qemu-args <file-name> すべての PS QEMU 引数をリストしたファイルを指定します。これは、PS QEMU を開始するのに使用します。
-pmuqemu-args <file-name> すべての PMC QEMU 引数をリストしたファイルを指定します。これは、PMU QEMU を開始するのに使用します。
-pmcqemu-args <file-name> すべての pmcqemu 引数をリストしたファイルを指定します。これは、pmcqemu を開始するのに使用します。
-qemu-data <data-dir> -qemu-args および -pmuqemu-args オプションで指定された <file-name> にリストされているすべてのファイルを含むディレクトリを指定します。
戻り値

ドメインが正しく設定された場合は空の文字列が返されます。アクティブなドメインがない場合、またはドメインを設定できなかった場合は、エラー文字列が返されます。

domain config -display-name zc702_MemoryTest

-desc "Memory test application for Zynq" -prebuilt-data /home/user/build_dir/ アクティブ ドメインの表示名および説明を指定し、ビルド済みデータのディレクトリを指定します。

domain config -image "/home/user/linux_image/"

ビルド済み Linux イメージから PetaLinux プロジェクトを作成します。 domain config -inc-path /path/include/ -lib-path /path/lib/ ドメインのアプリケーション ビルド設定にインクルード パスおよびライブラリ検索パスを追加します。

domain create

新規ドメインを作成します。

構文

domain create [options]

アクティブ プラットフォームに新規ドメインを作成します。

オプション
オプション 説明
-name <domain-name> ドメインの名前を指定します。
-display-name <display_name> この名前は、ドメインのレポートに表示されます。
-desc <description> ドメインの簡単な説明を指定します。
-proc <processor> ドメインの作成に使用するプロセッサ コアを指定します。SMP Linux では、プロセッサ コアの Tcl リストを指定できます。
-os <os> OS タイプを指定します。デフォルト タイプは standalone です。
-support-app <app-name> <app-name> で指定されているアプリケーションに必要な BSP 設定を使用してドメインを作成します。このオプションは、スタンドアロン ドメインにのみ使用できます。使用可能なアプリケーションをリストするには、repo -apps コマンドを使用できます。
-auto-generate-linux Linux 中間ファイルを自動的に生成します。
-image <location> PetaLinux プロジェクトの作成時に、OS が Linux のドメインにこのディレクトリからのビルド済み Linux イメージを使用します。このオプションは、Linux ドメインにのみ使用できます。
-sysroot <sysroot-dir> プラットフォームに追加する必要のある Linux sysroot ディレクトリを指定します。この sysroot は、アプリケーションのビルド時に消費されます。
戻り値

ドメインが正しく作成された場合は空の文字列が返されます。ドメインが作成できない場合はエラー文字列が返されます。

domain create -name "ZUdomain" -os standalone -proc psu_cortexa53_0

-support-app {Hello World} スタンドアロン ドメインを作成し、Hello World テンプレート アプリケーションに必要な設定を指定します。

domain create -name "SMPLinux" -os linux

-proc {ps7_cortexa9_0 ps7_cortexa9_1} アクティブ プラットフォームのプロセッサ コア ps7_cortexa9_0 および ps7_cortexa9_1 に SMPLinux という Linux ドメインを作成します。

domain list

ドメインをリストします。

構文

domain list

アクティブ プラットフォームのドメインをリストします。

オプション

なし

戻り値

アクティブ プラットフォームのドメインのリスト。ドメインがない場合は空の文字列が返されます。

platform active platform1

domain list

platform1 に作成されたすべてのドメインを表示します。

domain remove

ドメインを削除します。

構文

domain remove [domain-name]

アクティブ プラットフォームからドメインを削除します。ドメイン名 (domain-name) を指定しない場合は、アクティブ ドメインが削除されます。

オプション

なし

戻り値

ドメインが正しく削除された場合は空の文字列が返されます。ドメインが削除されなかった場合はエラー文字列が返されます。

domain remove test_domain

アクティブ プラットフォームから test_domin を削除します。

domain report

ドメインの詳細をレポートします。

構文

domain report [domain-name]

ドメインのプラットフォーム、プロセッサ コア、OS などの詳細を返します。ドメイン名 (domain-name) を指定しない場合は、アクティブ ドメインの詳細がレポートされます。

オプション

なし

戻り値

domain-name またはアクティブ ドメインが存在する場合は、ドメインの詳細を示す表が表示されます。アクティブ どメインが存在しない場合や domain-name を指定しなかった場合は、エラー文字列が返されます。

domain report

アクティブなドメインの詳細を含む表を返します。

bsp

ベアメタル ドメインの BSP 設定をコンフィギュレーションします。

構文

bsp <sub-command> [options]

指定した <sub-command> に基づいて、アクティブ ドメインのライブラリ、ドライバー、OS バージョンを含む BSP 設定を指定します。サポートされるサブコマンドは次のとおりです。config -BSP 設定の コンフィギャラブルなパラメーターを変更します。getdrivers - List IP インスタンスとそのドライバーをリストします。getlibs - BSP 設定からライブラリをリストします。getos - BSP 設定から OS の詳細をリストします。listparams - OS/プロセッサ/ライブラリのコンフィギャラブル パラメーターをリストします。regenerate - BSP ソースを再生成します。removelib - BSP 設定からライブラリを削除します。setdriver - IP インスタンスのドライバーを設定します。setlib - ライブラリを設定します。setosversion - OS のバージョンを設定します。help の後に bsp <sub-command> と入力するか、bsp <sub-command> の後に -help を付けると、詳細が表示されます。

オプション

<sub-command> によって異なります。詳細は、サブコマンドのヘルプを参照してください。

戻り値

<sub-command> によって異なります。詳細は、サブコマンドのヘルプを参照してください。

詳細は、サブコマンドのヘルプを参照してください。

bsp config

BSP 設定のパラメーターをコンフィギュレーションします。

構文

bsp config <param> <value>

コンフィギャラブル パラメーターに値を設定/取得/追加します。<param> および <value> を指定しない場合は、BSP 内のプロセッサ、OS、または全ライブラリのコンフィギャラブル パラメーターすべての詳細が返されます。<param> を指定して <value> 値を指定しない場合は、パラメーターの値が返されます。<param> および <value> を指定した場合は、パラメーターの値を設定します。bsp list-params <-os/-proc/-driver> を使用すると、OS/プロセッサ/ドライバーのコンフィギャラブル パラメーターがわかります。

オプション
オプション 説明
-append <param> <value> パラメーターに指定した値を追加します。
戻り値

パラメーターが正しく設定/追加された場合は何も返されません。<value> を指定しない場合は、パラメーターの現在の値が返されます。パラメーターが設定/追加できなかった場合はエラー文字列が返されます。

bsp config -append extra_compiler_flags "-pg"

extra_compiler_flags に -pg を追加します。

bsp config stdin

stdin の現在の値が返されます。

bsp config stdin ps7_uart_1

stdin を ps7_uart_1 に設定します。

bsp getdrivers

ドライバーをリストします。

構文

bsp getdrivers

BSP の IP に割り当てられているドライバーを返します。

オプション

なし

戻り値

IP と、それに対応するドライバーおよびドライバー バージョンの表。IP が存在しない場合は空の文字列が返されます。

bsp getdrivers

IP とそのドライバーのリストを返します。

bsp getlibs

BSP 設定に追加されたライブラリをリストします。

構文

bsp getlibs

BSP 設定に追加されたライブラリを表示します。

オプション

なし

戻り値

ライブラリのリスト。追加されたライブラリがない場合は、空の文字列が返されます。

bsp getlibs

アクティブ ドメインの BSP 設定に追加されたライブラリのリストを返します。

bsp getos

BSP 設定から OS の詳細を表示します。

構文

bsp getos

現在の OS とそのバージョンを表示します。

オプション

なし

戻り値

OS 名とそのバージョン。

bsp getos

アクティブ ドメインの BSP 設定から OS 名とバージョンを返します。

bsp listparams

BSP の設定可能なパラメーターをリストします。

構文

bsp listparams <option>

<option> の設定可能なパラメーターをリストします。

オプション
オプション 説明
-lib <lib-name> BSP のライブラリの設定可能なパラメーターを返します。
-os BSP の OS の設定可能なパラメーターを返します。
-proc BSP のプロセッサの設定可能なパラメーターを返します。
戻り値

パラメーター名。パラメーターがない場合は、空の文字列が返されます。

bsp listparams -os

BSP の OS の設定可能なパラメーターをリストします。

bsp regenerate

BSP ソースを再生成します。

構文

bsp regenerate

ソースを BSP に加えた変更を含めて再生成します。

オプション

なし

戻り値

BSP が正しく生成された場合は何も返されません。BSP が生成できない場合はエラー文字列が返されます。

bsp regenerate

BSP ソースを BSP 設定の変更を含めて再生成します。

bsp removelib

BSP 設定からライブラリを削除します。

構文

bsp removelib -name <lib-name>

アクティブ ドメインの BSP 設定からライブラリを削除します。

オプション
オプション 説明
-name <lib-name> BSP 設定から削除するライブラリを指定します。
戻り値

ライブラリが正しく削除された場合は何も返されません。ライブラリが削除できない場合はエラー文字列が返されます。

bsp removelib -name xilffs

BSP 設定から xilffs ライブラリを削除します。

bsp setdriver

IP にドライバーを設定します

構文

bsp setdriver [options]

アクティブ ドメインの BSP 設定で IP コアにドライバーを設定します。

オプション
オプション 説明
-driver <driver-name> IP に設定するドライバーを指定します。
-ip <ip-name> ドライバーを追加する IP インスタンスを指定します。
-ver <version> ドライバーのバージョンを指定します。
戻り値

ドライバーが正しく設定された場合は何も返されません。ドライバーが設定できない場合はエラー文字列が返されます。

bsp setdriver -ip ps7_uart_1 -driver generic -ver 2.0

BSP 設定で ps7_uart_1 IP インスタンスに generic ドライバーを設定します。

bsp setlib

BSP 設定にライブラリを追加します。

構文

bsp setlib [options]

アクティブ ドメインの BSP 設定にライブラリを追加します。

オプション
オプション 説明
-name <lib-name> BSP 設定に追加するライブラリを指定します。
-ver <version> ライブラリのバージョンを指定します。
戻り値

ライブラリが正しく設定された場合は何も返されません。ライブラリが設定できない場合はエラー文字列が返されます。

bsp setlib -name xilffs

BSP 設定に xilffs ライブラリを追加します。

bsp setosversion

OS バージョンを設定します。

構文

bsp setosversion [options]

アクティブ ドメインの BSP 設定の OS バージョンを設定します。デフォルトでは、最新バージョンに設定されます。

オプション
オプション 説明
-ver <version> OS バージョンを指定します。
戻り値

OS バージョンが正しく設定された場合は何も返されません。OS バージョンが設定できない場合はエラー文字列が返されます。

bsp setosversion -ver 6.6

アクティブ ドメインの BSP 設定の OS バージョンを 6.6 に設定します。

library

ライブラリ プロジェクトを管理します。

構文

library <sub-command> [options]

指定した <sub-command> によって、ライブラリ プロジェクトを作成するか、ライブラリ プロジェクトでさまざまなその他の操作を実行します。サポートされるサブコマンドは次のとおりです。 build: ライブラリ プロジェクトをビルドします。 clean: ライブラリ プロジェクトをクリーンします。 create: ライブラリ プロジェクトを作成します。 list: ワークスペースのすべてのライブラリ プロジェクトをリストします。 remove: ライブラリ プロジェクトを削除します。 report: ライブラリ プロジェクトの詳細をレポートします。help の後に library <sub-command> と入力するか、library <sub-command> の後に -help を付けると、詳細が表示されます。

オプション

<sub-command> によって異なります。詳細は、サブコマンドのヘルプを参照してください。

戻り値

<sub-command> によって異なります。

例は、サブコマンドのヘルプを参照してください。

library build

ライブラリ プロジェクトをビルドします。

構文

library build -name <project-name>

ワークスペースの <project-name> で指定したライブラリ プロジェクトをビルドします。-name オプションの指定はオプションであり、<project-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <project-name> ビルドするライブラリ プロジェクトの名前を指定します。
戻り値

ライブラリ プロジェクトが正しくビルドされた場合は何も返されません。ライブラリ プロジェクトがビルドされなかった場合はエラー文字列が返されます。

library build -name lib1

lib1 ライブラリ プロジェクトをビルドします。

library clean

ライブラリ プロジェクトをクリーンします。

構文

library clean -name <project-name>

ワークスペースの <project-name> で指定したライブラリ プロジェクトをクリーンします。-name オプションの指定はオプションであり、<project-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <project-name> ビルドをクリーンするライブラリ プロジェクトの名前を指定します。
戻り値

ライブラリ プロジェクトが正しくクリーンされた場合は何も返されません。ライブラリ プロジェクトのビルドがクリーンされなかった場合は、エラー文字列が返されます。

library clean -name lib1

lib1 ライブラリ プロジェクトをクリーンします。

library create

ライブラリ プロジェクトを作成します。

構文

library create -name <project-name> -type <library-type> -platform <platform>

-domain <domain> -sysproj <system-project>: 既存プラットフォームおよびドメインを使用してライブラリ プロジェクトを作成します。<platform><domain> および <sys-config> を指定しない場合は、アクティブ プラットフォームとドメインが使用されてライブラリ プロジェクトが作成されます。ライブラリ プロジェクトを作成して既存のシステム プロジェクトに追加する具体的な方法は、次のユース ケースを参照してください。

library create -name <project-name> -type <library-type> -sysproj <system-project>

-domain <domain>: <domain> で指定したドメインのライブラリ プロジェクトを作成して、<system-project> で指定したシステム プロジェクトへ追加します。<system-project> が既に存在する場合は、そのシステム プロジェクトに該当するプラットフォームを使用してライブラリ プロジェクトが作成されます。<domain> を指定しない場合は、アクティブ ドメインが使用されます。

オプション
オプション 説明
-name <project-name> 作成する必要のあるプロジェクト名。
-type <library-type> <library-type> は、static または shared にできます。
-platform <platform-name> プラットフォームの名前。repo -platforms を使用すると、使用可能な定義済みプラットフォームをリストできます。
-domain <domain-name> ドメインの名前。platform report <platform-name> を使用すると、プラットフォームで使用可能なドメインがリストできます。
-sysproj <system-project> システム プロジェクトの名前。sysproj list を使用すると、ワークスペースで使用可能なシステム プロジェクトがわかります。
戻り値

ライブラリ プロジェクトが正しく作成された場合は何も返されません。ライブラリ プロジェクトが作成されなかった場合はエラー文字列が返されます。

library create -name lib1 -type static -platform zcu102 -domain a53_standalone

lib1 という名前のスタティック ライブラリ プロジェクトを、a53_standalone という名前のドメインを持つプラットフォーム zcu102 用に作成します。

library create -name lib2 -type shared -sysproj test_system -domain test_domain

lib2 という名前のライブラリ プロジェクトを作成し、test_system システム プロジェクトに追加します。

library list

ライブラリ プロジェクトをリストします。

構文

ワークスペースのすべてのライブラリ プロジェクトをリストします。

オプション

なし

戻り値

ワークスペースのライブラリ プロジェクトをリストします。ライブラリ プロジェクトが存在しない場合は、空の文字列が返されます。

library list

ワークスペースのすべてのライブラリ プロジェクトをリストします。

library remove

ライブラリ プロジェクトを削除します。

構文

library remove [options] <project-name>

ワークスペースからライブラリ プロジェクトを削除します。

オプション

なし

戻り値

ライブラリ プロジェクトが正しく削除された場合は何も返されません。ライブラリ プロジェクトが削除されなかった場合はエラー文字列が返されます。

library remove lib1

ワークスペースから lib1 を削除します。

library report

ライブラリ プロジェクトの詳細をレポートします。

構文

library report <project-name>

ライブラリ プロジェクトのプラットフォーム、ドメインなどの詳細を返します。

オプション

なし

戻り値

ライブラリ プロジェクトの詳細が返されるか、ライブラリ プロジェクトが存在しない場合はエラー文字列が返されます。

app report lib1 ライブラリ lib1 の詳細を返します。

setws

Vitis ワークスペースを設定します。

構文

setws [OPTIONS] [path]

プロジェクトを作成する Vitis ワークスペースを <path> に設定します。<path> が存在しない場合は、ディレクトリが作成されます。<path> を指定しない場合、現在のディレクトリが使用されます。

オプション

オプション 説明
-switch <path> 既存のワークスペースを閉じ、新しいワークスペースに切り替えます。

戻り値

ワークスペースが正しく設定された場合は何も返されません。指定したパスがファイルの場合は、エラー文字列が返されます。

setws /tmp/wrk/wksp1

現在のワークスペースを /tmp/wrk/wksp1 に設定します。

setws -switch /tmp/wrk/wksp2

現在のワークスペースを閉じ、新しいワークスペース /tmp/wrk/wksp2 に切り替えます。

getws

Vitis ワークスペースを取得します。

構文

getws

現在の Vitis ワークスペースを取得します。

戻り値

現在のワークスペース。

app

アプリケーション プロジェクトの管理

構文

app <sub-command> [options]

指定した <sub-command> によって、アプリケーション プロジェクトを作成するか、アプリケーション プロジェクトでさまざまなその他の操作を実行します。サポートされるサブコマンドは次のとおりです。build - アプリケーション プロジェクトをビルドします。clean - アプリケーション プロジェクトをクリーンします。config - アプリケーション プロジェクトの C/C++ ビルド設定をコンフィギュレーションします。create - アプリケーション プロジェクトを作成します。list - ワークスペースにすべてのアプリケーション プロジェクトをリストします。remove - アプリケーション プロジェクトを削除します。report - アプリケーション プロジェクトの詳細をレポートします。switch - 別のプラットフォームを参照するようにアプリケーション プロジェクトを切り替えます。help のあと app sub-command と入力するか、app sub-command のあと -help を付けると、詳細が表示されます。

オプション

sub-command によって異なります。詳細は、sub-command のヘルプを参照してください。

戻り値

sub-command によって異なります。詳細は、sub-command のヘルプを参照してください。

具体例は、サブコマンドのヘルプを参照してください。

app build

アプリケーションをビルドします。

構文

app build -name <app-name>

ワークスペースの <app-name> で指定したアプリケーションをビルドします。-name オプションの指定はオプションであり、<app-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <app-name> ビルドするアプリケーションの名前を指定します。
戻り値

なし。コンソールにビルド ログが表示されます。

app build -name helloworld

helloworld アプリケーションをビルドします。

app clean

アプリケーションをクリーンします。

構文

app clean -name <app-name>

ワークスペースの <app-name> で指定したアプリケーションをクリーンします。-name オプションの指定はオプションであり、<app-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <app-name> クリーンにビルドするアプリケーションの名前を指定します。
戻り値

なし。コンソールにビルド ログが表示されます。

app clean -name helloworld

helloworld アプリケーションをクリーンします。

app config

アプリケーションの C/C++ ビルド設定を指定します。

構文

指定したアプリケーションの C/C++ ビルド設定を指定します。アプリケーションには、次の設定を指定できます。assembler-flags: アセンブラーのさまざまなフラグ。build-config: ビルド コンフィギュレーションを取得/設定。compiler-misc: コンパイラのさまざまなフラグ。compiler-optimization: 最適化レベル。define-compiler-symbols: シンボルを定義。例: MYSYMBOL include-path: ヘッダー ファイルのインクルード パス。libraries: リンク中に追加されるライブラリ。library-search-path: 追加したライブラリの検索パス。linker-misc: リンカーのさまざまなフラグ。linker-script: リンクのためのリンカー スクリプト。undef-compiler-symbols: 未定義のシンボル。例: MYSYMBOL

app config -name <app-name> <param-name>

<app-name> で指定したアプリケーションのコンフィギュレーション パラメーター <param-name> の値を取得します。

app config [OPTIONS] -name <app-name> <param-name> <value>

<app-name> で指定したアプリケーションのコンフィギュレーション パラメーター <param-name> の値を設定/変更/削除します。

オプション
オプション 説明
-name アプリケーションの名前。
-set 新しい <value> にコンフィギュレーション パラメーターを設定します。
-get コンフィギュレーション パラメーター値を取得します。
-add 新しい <value> をコンフィギュレーション パラメーター値に追加します。-add オプションは compiler-optimization ではサポートされません。
-info コンフィギュレーション パラメーターに関する可能な値および可能な演算のような情報をさらに表示します。このオプションを指定する場合は、パラメーター名を指定する必要があります。
-remove コンフィギュレーション パラメーター値から <value> を削除します。-remove オプションは、assembler-flags、build-config、compiler-misc、compiler-optimization、linker-misc および linker-script ではサポートされません。
戻り値

指定した引数によって異なります。<none>: 各パラメーターのコンフィギュレーションおよび説明に使用可能なパラメーターのリストを返します。

<parameter name>: パラメーター値、またはサポートされないパラメーターを指定した場合はエラーを返します。

<parameter name> <paramater value>: 値が問題なく設定された場合は何も返しませんが、サポートされないパラメーターが指定された場合はエラーを返します。

app config -name test build-config

test という名前のアプリケーションの現在のビルド コンフィギュレーションを返します。

app config -name test define-compiler-symbols FSBL_DEBUG_INFO

テスト アプリケーションをビルドする際に、コンパイラ オプションに -DFSBL_DEBUG_INFO を追加します。

app config -name test -remove define-compiler-symbols FSBL_DEBUG_INFO

テスト アプリケーションをビルドする際に、コンパイラ オプションから -DFSBL_DEBUG_INFO を削除します。

app config -name test -set compiler-misc {-c -fmessage-length=0 -MT"$@"}

テスト アプリケーションのコンパイラのさまざまなフラグとして {-c -fmessage-length=0 -MT"$@"} を設定します。

app config -name test -append compiler-misc {-pg}

テスト アプリケーションのコンパイラのさまざまなフラグに {-pg} を追加します。

app config -name test -info compiler-optimization

コンパイラ最適化レベルの可能な値とデフォルト値に関する情報をさらに表示します。

app create

アプリケーションを作成します。

構文

app create [options] -platform <platform> -domain <domain>

-sysproj <system-project>: 既存のプラットフォームおよびドメインを使用してアプリケーションを作成し、システム プロジェクトに追加します。<platform> および <domain> を指定しない場合は、アクティブ プラットフォームとドメインが使用されてアプリケーションが作成されます。<system-project> を指定しない場合は、appname_system という名前でシステム プロジェクトが作成されます。アプリケーションを作成して既存のシステム プロジェクトに追加する具体的な方法は、次のユース ケースを参照してください。サポートされるオプションは、-name、-template です。

app create [options] -sysproj <system-project> -domain <domain>

<domain> で指定したドメインでアプリケーションを作成し、<system-project> で指定したシステム プロジェクトに追加します。<system-project> が既に存在する場合は、そのシステム プロジェクトに該当するプラットフォームを使用してアプリケーションが作成されます。<domain> を指定しない場合は、アクティブ ドメインが使用されます。サポートされるオプションは、-name、-template です。

app create [options] -hw <hw-spec> -proc <proc-instance>

<hw-spec> で指定したハードウェア プラットフォームに <proc-instance> で指定されたプロセッサ コア用のアプリケーションを作成します。サポートされるオプションは、-name、-template、-os、-lang です。

オプション
オプション 説明
-name <application-name> 作成するアプリケーションの名前。
-platform <platform-name> プラットフォームの名前。repo -platforms を使用すると、使用可能な定義済みプラットフォームをリストできます。
-domain <domain-name> ドメインの名前。platform report <platform-name> を使用すると、プラットフォームで使用可能なシステム コンフィギュレーションがリストできます。
-hw <hw-spec> Vivado (XSA) からエクスポートしたハードウェア仕様ファイル。
-sysproj <system-project> システム プロジェクトの名前。sysproj list を使用すると、ワークスペースで使用可能なシステム プロジェクトがわかります。
-proc <processor> どのプロセッサ コア用にアプリケーションを作成するかを指定。
-template <application template> テンプレート アプリケーションの名前。デフォルトは Hello World です。repo -apps を使用すると、使用可能なテンプレート アプリケーションをリストできます。
-os <os-name> OS タイプ。デフォルト タイプは standalone です。
-lang <programming language> プログラム言語は c または c++ のいずれかにできます。
戻り値

アプリケーションが正しく作成された場合は何も返されません。アプリケーションが作成されなかった場合はエラー文字列が返されます。

app create -name test -platform zcu102 -domain a53_standalone

test という名前で、プラットフォーム ZCU102 用の、a53_standalone という名前のドメインで Hello World アプリケーションを作成します。

app create -name zqfsbl -hw zc702 -proc ps7_cortexa9_0 -os standalone

-template "Zynq FSBL": zc702 ハードウェア プラットフォームに zqfsbl という名前の ps7_cortexa9_0 プロセッサ コア用の Zynq FSBL アプリケーションを作成します。

app create -name memtest -hw /path/zc702.xsa -proc ps7_cortexa9_0 -os standalone

-template "Memory Tests": zc702.xsa のハードウェア プラットフォームに memtest という名前の ps7_cortexa9_0 プロセッサ コア用のメモリ テスト アプリケーションを作成します、

app create -name test -sysproj test_system -domain test_domain

test という名前の Hello World アプリケーション プロジェクトを作成し、test_system システム プロジェクトに追加します。

app list

アプリケーションをリストします。

構文

app list

ワークスペースのすべてのアプリケーションをリストします。

オプション

なし

戻り値

ワークスペースのアプリケーションのリスト。アプリケーションが存在しない場合は、「No application exist」 (アプリケーションが存在しません) という文字列が返されます。

app list

ワークスペースのすべてのアプリケーションをリストします。

app remove

アプリケーションを削除します。

構文

app remove <app-name>

ワークスペースからアプリケーションを削除します。

オプション

なし

戻り値

アプリケーションが正しく削除された場合は何も返されません。アプリケーションが削除されなかった場合はエラー文字列が返されます。

app remove zynqapp

ワークスペースから zynqapp アプリケーションを削除します。

app report

アプリケーションの詳細をレポートします。

構文

app report <app-name>

アプリケーションのプラットフォーム、ドメイン、プロセッサ コア、OS などの詳細を返します。

オプション

なし

戻り値

アプリケーションの詳細が返されるか、アプリケーションが存在しない場合はエラーが返されます。

app report test

アプリケーション test の詳細を返します。

app switch

別のドメイン/プラットフォームを使用するようにアプリケーションを切り替えます。

構文

app switch -name <app-name> -platform <platform-name> -domain <domain-name>

別のプラットフォームおよびドメインを使用するようにアプリケーションを切り替えます。ドメイン名を指定しない場合、アプリケーションが同じプロセッサ用に現在のドメインとして作成された最初のドメインに移動されます。このオプションは、このプラットフォーム下に 1 つしかアプリケーションがない場合にサポートされます。

app switch -name <app-name> -domain <domain-name>

同じプラットフォームないに別のドメインを使用するようにアプリケーションを切り替えます。新しいドメインは、同じプロセッサ用に現在のドメインとして作成する必要があります。

オプション
オプション 説明
-name <application-name> 切り替えるアプリケーションの名前。
-platform <platform-name> 新しいプラットフォームの名前。platform -list で使用可能なプラットフォームをリストします。
-domain <domain-name> 新しいドメインの名前。domain -list を使用してアクティブ プラットフォームで使用可能なドメインをリストします。
戻り値

アプリケーションが問題なく切り替えられる場合は何も返されず、プラットフォーム プロジェクトが存在しない場合やプラットフォーム プロジェクトに有効なドメインが含まれない場合は、エラー文字列が返されます。

app switch -name helloworld -platform zcu102

ZCU102 プラットフォームを使用するように helloworld アプリケーションを切り替えます。

sysproj

システム プロジェクトの管理

構文

sysproj <sub-command> [options]

指定した <sub-command> に基づいてシステム プロジェクトをリストおよびレポートします。サポートされるサブコマンドは次のとおりです。build - システム プロジェクトをビルドします。clean - システム プロジェクトをクリーンします。list - ワークスペースにすべてのシステム プロジェクトをリストします。remove - システム プロジェクトを削除します。report - システム プロジェクトの詳細をレポートします。help のあと sysproj sub-command と入力するか、sysproj sub-command のあと -help を付けると、詳細が表示されます。

オプション

sub-command によって異なります。詳細は、sub-command のヘルプを参照してください。

戻り値

sub-command によって異なります。

具体例は、sub-command のヘルプを参照してください。

sysproj build

システム プロジェクトをビルドします。

構文

sysproj build -name <sysproj-name>

ワークスペースの <sysproj-name> で指定したアプリケーションをビルドします。-name オプションの指定はオプションであり、<sysproj-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <sysproj-name> ビルドするシステム プロジェクトの名前を指定します。
sysproj build -name helloworld_system

指定したシステム プロジェクトをビルドします。

sysproj clean

アプリケーションをクリーンします。

構文

sysproj clean -name <app-name>

ワークスペースの <sysproj-name> で指定したアプリケーションをクリーンします。-name オプションの指定はオプションであり、<sysproj-name> は -name を使用せずに直接指定できます。

オプション
オプション 説明
-name <sysproj-name> クリーンにビルドするアプリケーションの名前を指定します。
戻り値

アプリケーションが正しくクリーンされた場合は何も返されません。アプリケーション ビルドがクリーンされなかった場合は、エラー文字列が返されます。

sysproj clean -name helloworld_system

指定したシステム プロジェクトのビルドをクリーンします。

sysproj list

システム プロジェクトをリストします。

構文

sysproj list

ワークスペースのすべてのシステム プロジェクトをリストします。

オプション

なし

戻り値

ワークスペースのライブラリ プロジェクトのリスト。システム プロジェクトが存在しない場合は、空の文字列が返されます。

sysproj list

ワークスペースのすべてのシステム プロジェクトをリストします。

sysproj remove

システム プロジェクトを削除します。

構文

sysproj remove [options]

ワークスペースからシステム プロジェクトを削除します。

オプション

なし

戻り値

システム プロジェクトが正しく削除された場合は何も返されません。システム プロジェクトが削除されなかった場合はエラー文字列が返されます。

sysproj remove test_system

ワークスペースから test_system を削除します。

sysproj report

システム プロジェクトの詳細をレポートします。

構文

sysproj report <sysproj-name>

システム プロジェクトのプラットフォーム、ドメインなどの詳細を返します。

オプション

なし

戻り値

システム プロジェクトの詳細が返されるか、システム プロジェクトが存在しない場合はエラー文字列が返されます。

sysproj report test_system

システム プロジェクト test_system の詳細を返します。

importprojects

プロジェクトをワークスペースにインポートする

構文

importprojects <path>

<path> からすべての Vitis プロジェクトをワークスペースにインポートします。

戻り値

プロジェクトが正しくインポートされた場合は何も返されません。プロジェクト パスが指定されていない場合、またはプロジェクトがインポートできない場合は、エラー文字列が返されます。

importprojects /tmp/wrk/wksp1/hello1

Vitis プロジェクトを現在のワークスペースにインポートします。

importsources

ソースをアプリケーション プロジェクトにインポートします。

構文

importsources [OPTIONS]

パスのソースをワークスペースのアプリケーション プロジェクトにインポートします。

オプション

オプション 説明
-name <project-name> ソースをインポートするアプリケーション プロジェクトを指定します。
-path <source-path> インポートするソース ファイルへのパスを指定します。<source-path> がファイルの場合、そのファイルがアプリケーション プロジェクトにインポートされます。<source-path> がディレクトリの場合、<source-path> に含まれるすべてのファイル/サブディレクトリすべてがアプリケーション プロジェクトにインポートされます。アプリケーションの既存のソース ファイルは上書きされ、新しいファイルがコピーされます。-linker-script オプションが使用されていない場合は、リンカー スクリプトはアプリケーション ディレクトリにコピーされません。
-linker-script リンカー スクリプトもコピーします。

戻り値

プロジェクト ソースが正しくインポートされた場合は何も返されません。無効なオプションが使用されている場合、またはプロジェクト ソースが読み込み/インポートできない場合は、エラー文字列が返されます。

importsources -name hello1 -path /tmp/wrk/wksp2/hello2

hello2 プロジェクトのソースを hello1 アプリケーション プロジェクトにリンカー スクリプトを除いてインポートします。

importsources -name hello1 -path /tmp/wrk/wksp2/hello2 -linker-script

hello2 プロジェクトのソースを hello1 アプリケーション プロジェクトにリンカー スクリプトを含めてインポートします。

toolchain

プロジェクトのビルドに使用するツールチェーンを設定または取得します。

構文

toolchain

使用可能なツールチェーンおよびサポートされるプロセッサ タイプのリストを返します。

toolchain <processor-type>

<processor-type> の現在のツールチェーンを取得します。

toolchain <processor-type> <tool-chain>

<processor-type><toolchain> を設定します。作成される新規プロジェクトはすべて、ビルド中に新しいツールチェーンを使用します。

戻り値

指定した引数によって異なります。<none>: 使用可能なツールチェーンおよびサポートされるプロセッサ タイプのリストを返します。

<processor-type>: processor-type の現在のツールチェーンを返します。

<processor-type> <tool-chain>: ツールチェーンが設定されている場合は何も返しませんが、サポートされないツールチェーンを指定している場合はエラーを返します。