AI エンジンのグラフとカーネルは、さまざまな方法でデバッグできます。通常は、グラフとカーネルのデバッグ初期段階で、グラフとカーネルの機能が正しいことを確認します。AMD は、機能の正しさを確認するためのさまざまなシミュレーション フローを提供しており、これらのシミュレーションをデザイン フローの早期に実行することを推奨しています。
イベントは、AI エンジンのデバッグや性能分析において重要な機能となります。イベントはトリガーと同じ役割を果たします。特定イベントに関連する条件を満たしている場合、イベント信号がそのサイクルで High になります。イベントの例には、Conflict DM bank 0、Lock 11 Released、Floating point Overflow、PC event 0 などがあります。各イベントには 7 ビットの固有値があり、各 AI エンジンに最大 128 個のイベントがあります。イベント トレース機能を使用すると、AI エンジン、メモリ モジュール、およびインターフェイス モジュールに関連するこれらのイベントをハードウェアでキャプチャできます。
イベント トレース フローは、次の手順で構成されます。
- イベント トレースのビルド フローを実行する。
- ハードウェアでデザインを実行し、実行時にトレース データをキャプチャする。
- トレース データを表示して分析する。
AI エンジン グラフ アプリケーションのハードウェア上での性能解析の詳細は、 『AI エンジン ツールおよびフロー ユーザー ガイド』 (UG1076) のこのセクションを参照してください。
AI エンジン アレイ内のすべての AI エンジンにはデバッグ インターフェイスがあり、これを使用してすべての AI エンジン レジスタに対して読み出し/書き込みを実行できます。AI エンジン レジスタの読み出し/書き込み要求は、メモリ マップ方式の AXI4 (AXI4-MM) インターフェイスを介して送信され、AI エンジン デバッグ インターフェイスに転送されます。AI エンジンのすべてのレジスタは、AXI4-MM にマップされます。AXI4-MM インターフェイスには、32 ビットの読み出し/書き込みバスがあります。AXI4-MM インターフェイスを介して任意の AXI4-MM マップド アドレスを指定できます。外部の AXI4-MM マスター (PS など) は、制御/ステータス レジスタに書き込むことで特定の AI エンジンにストール信号を発行できます。システム制御 (通常のプログラム フローなど) 用とデバッガー用に独立したレジスタがあります。AMD Vitis™ System Debugger は、AI エンジン グラフとカーネルのデバッグをサポートする包括的なソース コード デバッガーを提供します。AI エンジン アプリケーションのデバッグの詳細は、 『AI エンジン ツールおよびフロー ユーザー ガイド』 (UG1076) のこのセクションを参照してください。
AI エンジン ハードウェアのプロファイルおよびデバッグ手法の詳細は、 『AI エンジン ツールおよびフロー ユーザー ガイド』 (UG1076) のこのセクションを参照してください。