ハードウェア エミュレーション

Vitis でのビルドおよび実行には、ソフトウェア エミュレーション、ハードウェア エミュレーション、およびシステム ハードウェアの 3 つがあります。RTL カーネルは当然ソフトウェア エミュレーションをサポートしないので、このチュートリアルではハードウェア エミュレーション フローのみを説明します。

ハードウェア エミュレーションは、機能の正確性に加えて、サイクル精度の高いパフォーマンスと詳細なリソース見積もりを提供しますが、コンパイル時間と実行時間はソフトウェア エミュレーションよりも長くなります。ハードウェア エミュレーション中の検証には小さなデータ セットを使用して、実行時間を管理しやすくすることをお勧めします。

混合カーネル デザインの場合、ハードウェア エミュレーションはシステムレベルの統合をテストし、複数のカーネル間の相互作用を表示するためによく使用されます。

波形レポート

Vitis は、ハードウェア エミュレーションの実行時に波形ビューを生成でき、カーネルとグローバル メモリ間のデータ転送やカーネル間パイプを介したデータフローなどの詳細を表示します。

波形データ収集を有効にするには、コンパイル時に -g オプションが使用され、関連するオプションが xrt.ini ファイルでオンになっていることを確認します。このファイルは、ホスト実行ファイルと同じディレクトリに配置する必要があります。このチュートリアルでは、提供されている既に処理済みの xrt.ini を使用します。./sw/duild/ ディレクトリを確認してください。詳細は、Vitis オンライン資料の xrt.ini ファイルを参照してください。

[Emulation]
debug_mode=batch

ここでは、U200 カードでの rtc_gen_test のハードウェア エミュレーション結果を例として使用します。エミュレーションが正常に実行されると、実行サマリ ファイルが自動的に生成されます。これは、Vitis アナライザーで直接開くことができます。波形は実行サマリ レポートに含まれます。

vitis_analyzer rtc_gen_test_hw_emu.xclbin.run_summary
ハードウェア エミュレーション波形

波形データベースは、Vivado ロジック シミュレータ xsim で開くこともできます。

xsim -gui xilinx_u200_xdma_201830_2-0-rtc_gen_test_hw_emu.wdb 

ハードウェア エミュレーションの実行中にシミュレーション波形を開く場合は、xrt.ini で debug_mode を gui に変更します。

[Emulation]
debug_mode=gui

波形以外にも、実行サマリに含まれるその他の情報は、アプリケーションのプロファイル作成、最適化、デバッグに役立ちます。詳細は、このチュートリアルのアプリケーションのプロファイリングを参照してください。ハードウェア エミュレーション フローの詳細は、Vitis オンライン資料のハードウェア エミュレーションを参照してください。

Copyright© 2020 Xilinx