status
コマンドは、カードにプログラムされている xclbin
に含まれる Vitis パフォーマンス モニター (SPM) および軽量 AXI プロトコル チェッカー (LAPC) デバッグ IP のステータスをレポートします。
コマンド ライン構文は次のとおりです。
xbutil status [-d <card>] [--debug_ip_name]
次の表に、使用可能なオプションを示します。
オプション | 説明 | 必須 |
---|---|---|
-d <card>
|
ターゲット カードを指定します。<card> は、card_id または Bus:Device:Function (BDF) のいずれかに指定できます。指定しない場合は、デフォルトの card_id = 0 になります。 注記:
xbutil scan コマンドを使用すると、設置されたカードの ID と BDF の両方が表示されます。 |
N |
--<ip_name>
|
指定したデバッグ IP のステータスを返します。 | × |
status
コマンドは、アクセラレータ カード上のデバッグ IP のタイプと数を表示します。
xbutil status
次に、コマンドの出力例を示します。検出されたデバッグ IP すべてが表示されています。
INFO: Found total 1 card(s), 1 are usable
Number of IPs found: 9
IPs found [<ipname>(<count>)]: aim(5) tracefunnel(1) monitorfifolite(1) monitorfifofull(1) accelmonitor(1)
Run 'xbutil status' with option --<ipname> to get more information about the IP
INFO: xbutil status succeeded.
使用可能な IP のリストは、アクセラレータ カードで使用するためにコンパイルされた xclbinxclbin ファイルにより決定されます。次の IP が含まれます。
- Accelerator Monitor (AM)
- 計算ユニットの実行をカウントおよびトレースします。パフォーマンス モニターを追加するには、--profile オプション で説明するように
--profile.exec
オプションを使用します。 - AXI Interface Monitor (AIM)
- AXI4 接続上のトランザクションをカウントおよびトレースします。
- AXI4-Stream Monitor (ASM)
- AXI4-Stream 上のトランザクションをカウントおよびトレースします。
- Lightweight AXI Protocol Monitor (LAPC)
-
AXI4 のプロトコル チェックを実行します。プロトコル チェッカーを追加するには、--debug オプション で説明するように
--debug.protocol
オプションを使します。 - Streaming Protocol Checker (SPC)
- AXI4-Stream のプロトコル チェックを実行します。
- Trace Funnel
- すべてのモニターからトレース イベントを収集します。これがある場合、コンパイル時に
--profile.data
オプション (--profile オプション を参照)、ランタイム時にopencl_trace
オプション (xrt.ini ファイル を参照) を使用して、トレースがイネーブルになっています。 - FIFO Lite
- トレース イベントを格納する PL FIFO を制御します。これがある場合、コンパイル時に
--trace_memory
オプション (Vitis コンパイラの一般オプション を参照)を使用してメモリ オフロードが PL の FIFO に指定されています。トレース動作は xrt.ini ファイル での設定の影響を受けます。 - FIFO Full
- トレース イベントを格納する PL FIFO のデータ オフロード。これがある場合、コンパイルおよびランタイム時にトレースがイネーブルになっており、コンパイル時に
--trace_memory
オプションを使用してメモリ オフロードが PL の FIFO に指定されています。 - TS2MM
- トレース イベントを取り込み、メモリ リソース (DDR、HBM、PLRAM) にオフロードします。これがある場合、コンパイルおよびランタイム時にトレースがイネーブルになっており、コンパイル時に
--trace_memory
オプション (Vitis コンパイラの一般オプション を参照) を使用してメモリ オフロードがメモリ リソースに指定されています。
次のコマンド構文を使用すると、特定の IP のステータスを取得できます。
$ xbutil status --<ipname>
次に、--aim
オプションを使用した場合の出力例を示します。
$ xbutil status --aim
INFO: Found total 1 card(s), 1 are usable
AXI Interface Monitor Counters
Region or CU Type or Port Wr Bytes Wr Trans. Rd Bytes Rd Tranx. Outstanding Cnt
runOnfpga_1 m_axi_maxiport0-DDR[1] 0 0 0 0 0
runOnfpga_1 m_axi_maxiport1-DDR[1] 0 0 0 0 0
shell Memory to Memory 0 0 0 0 0
shell Host to Device 0 0 0 0 0
shell Peer to Peer 0 0 0 0 0
INFO: xbutil status succeeded.
次は同じ出力例の残りの列です。
INFO: Found total 1 card(s), 1 are usable
AXI Interface Monitor Counters
Region or CU Type or Port Last Wr Addr Last Wr Data Last Rd Addr Last Rd Data
runOnfpga_1 m_axi_maxiport0-DDR[1] 0x0 0x0 0x0 0x0
runOnfpga_1 m_axi_maxiport1-DDR[1] 0x0 0x0 0x0 0x0
shell Memory to Memory 0x0 0x0 0x0 0x0
shell Host to Device 0x0 0x0 0x0 0x0
shell Peer to Peer 0x0 0x0 0x0 0x0
INFO: xbutil status succeeded.
xclbin
にデバッグ IP がない場合は、次のようなメッセージが表示されます。
INFO: Found total 1 card(s), 1 are usable
INFO: Failed to find any debug IPs on the platform. Ensure that a valid bitstream with debug IPs (SPM, LAPC) is successfully downloaded.
INFO: xbutil status succeeded.
デザインにパフォーマンス モニター カウンター (AM、AIM、ASM) および LAPC を追加する方法は、アプリケーションのハングをデバッグするための手法 を参照してください。