VCD を使用した AI エンジンのトレース - 2023.2 日本語

AI エンジン ツールおよびフロー ユーザー ガイド (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 日本語

VCD ファイルから AI エンジン イベント トレースを生成するには、vcdanalyze ユーティリティを使用できます。このプロセスは、Vitis ツール フローに自動的に統合されています。シミュレーションの実行で AI エンジン イベントの収集が終了した後、Vitis IDE の Explorer ビューでプロジェクトを右クリックし、Analyze AIE Events をクリックします。トレース データは、trdata.aiesim/ の現在のプロジェクトの下に生成され、さまざまなビューが現在のプロジェクトに自動的に読み込まれます。

trdata.aiesimevents.txt ディレクトリにある生のイベント トレースは、次のようになります。

time=1741000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=65536,data1=0,tlast=0
time=1742000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=196610,data1=0,tlast=0
time=1743000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=327684,data1=0,tlast=0
time=1743000,event=CORE_RESET,col=1,row=0
time=1744000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=458758,data1=0,tlast=0
time=1745000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=589832,data1=0,tlast=0
time=1746000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=720906,data1=0,tlast=0
time=1747000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=851980,data1=0,tlast=0
time=1748000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=983054,data1=0,tlast=0
time=1749000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=1,data1=0,tlast=0
time=1750000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=131075,data1=0,tlast=0
time=1751000,event=FROM_PL,name=tl.me.shim.tile_0_0.pl_interface.pl_to_shim0.data0,col=0,streamid=0,data0=262149,data1=0,tlast=0
time=2186000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b6
time=2190000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b7
time=2194000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b6
time=2198000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b7
time=2202000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b2
time=2206000,event=DM_WRITE_REQ,col=0,row=0,port=tl.me.array.tile_0_1.mm.dm.port_AXI_write_b3

次のコマンドを使用すると、foo.vcdAI エンジン トレース データが ./trdata.aiesim/events.txt ファイルにテキスト形式で生成されます。

vcdanalyze -vcd foo.vcd
ヒント: コマンドのヘルプを表示するには、vcdanalyze -h を使用します。

次のコマンドを使用すると、foo.vcd ファイルの AI エンジン トレース データから CSV ファイルが生成されます。

vcdanalyze -vcd=foo.vcd -csv
次のコマンドを使用すると、foo.vcd ファイルの AI エンジン トレース データから波形データ ファイルが生成されます。
vcdanalyze -vcd foo.vcd -wdb
注記: シミュレータは、AI エンジンのハードウェア パフォーマンスを可能な限りモデル化します。AI エンジン シミュレータ (のパフォーマンス) は実際のハードウェアよりも楽観的な結果となることがあります。たとえば、実際のハードウェアでは同じ AI エンジン タイルにある 2 つの DMA FIFO が同じ (上、下、左、または右の) インターフェイスを介してアクセスされる場合です。このようなまれなケースでは、DMA FIFO 間で共有されるメモリ コントローラー間にアービトレーションがあります。この影響は、シミュレーションには完全に反映されません。