ソフトウェア エミュレーション - 2019.2 Japanese

Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発 (UG1393)

Document ID
UG1393
Release Date
2020-02-28
Version
2019.2 Japanese

ソフトウェア エミュレーションの主な目的は、ホスト プログラムとカーネルが正しく動作することを確認することです。ソフトウェア エミュレーションでは、ホスト コードとカーネル コードの両方が x86 プロセッサで実行できるようにコンパイルされます。ホスト プログラムとカーネル コードを一緒に実行するため、v++ コンパイラでは、カーネル コードに最小限の変更を加えて FPGA バイナリを作成します。ソフトウェア エミュレーション フローはアルゴリズムの調整および機能的な問題のデバッグに使用し、コードを向上するために反復作業をすばやく実行できます。高速コンパイルおよび実行ループを使用した開発のプログラミング モデルが保持されます。

Vitis 統合ソフトウェア プラットフォームでは、CPU でのソフトウェア エミュレーションは、CPU/GPU プログラミングに典型的な反復開発プロセスと同じです。この開発スタイルでは、プログラマはアプリケーションを繰り返しコンパイルおよび実行しながら開発していきます。

ヒント: RTL カーネルでは、C モデルが関連付けられている場合にソフトウェア エミュレーションがサポートされます。ソフトウェア エミュレーション フローをサポートするため、RTL カーネル ウィザードのパッケージ段階に、RTL カーネルに C モデル ファイルを関連付けるオプションがあります。
Vitis コンパイラ コマンド で説明されているように、ソフトウェア エミュレーション ターゲットは v++ コマンドで -t オプションを使用して指定します。
v++ -t sw_emu ...