RTL カーネルの生成 - 2019.2 Japanese

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

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

カーネルが設計されて、Vivado IDE のサンプルの IP プロジェクトでテストされたら、最後に RTL カーネル オブジェクト ファイル (.xo) を生成して、Vitis コンパイラで使用されるようにします。

Vivado Flow Navigator > Project Manager から Generate RTL Kernel コマンドをクリックします。[Generate RTL Kernel] ダイアログ ボックスに 3 つのパッケージ オプションが表示されます。

  • ソースのみのカーネル パッケージを選択すると、RTL デザイン ソースを直接使用してカーネルがパッケージされます。
  • 合成済みのカーネル パッケージを選択すると、RTL デザイン ソースと合成済みのキャッシュされた出力を含めてカーネルがパッケージされます。合成済みのキャッシュされた出力を使用すると、フローの後の方で再合成する必要はありません。ターゲット プラットフォームを変更すると、パッケージされたカーネルで合成済みのキャッシュされた出力が使用されなくなり、RTL デザイン ソースだけが使用されるようになります。
  • ネットリスト (デザイン チェックポイント (DCP)) ベースのカーネル パッケージを選択すると、カーネルの合成済み出力により生成されたネットリストを使用して、カーネルがブラック ボックスとしてパッケージされます。必要であれば、この出力は暗号化可能です。ターゲットのプラットフォームを変更した場合、カーネルが新しいデバイスにターゲットを変更できなくなる可能性があるので、ソースから生成し直す必要があります。デザインにブロック デザインが含まれている場合は、ネットリスト (DCP) ベースのカーネル パッケージ オプションのみが選択可能です。

また、すべてのカーネル パッケージング タイプで、ソフトウェア エミュレーションで使用可能なソフトウェア モデルを使用してパッケージするオプションもあります。ソフトウェア モデルに複数のファイルが含まれている場合は、ソース ファイル リストのファイル名をスペースで区切るか、GUI を使用して、CTRL キーを押しながら複数のファイルを選択します。

OK をクリックすると、カーネル出力ファイルが生成されます。あらかじめ合成済みのカーネルまたはネットリストのカーネル オプションを選択している場合は、合成を実行できます。合成が前に実行されている場合は、古くてもそのときの出力が使用されます。カーネル ザイリンクス オブジェクト (.xo) ファイルは、Vivado カーネル プロジェクトの exports ディレクトリに生成されます。

この時点で、Vivado カーネル プロジェクトを閉じることができます。Vivado カーネル プロジェクトを Vitis IDE から起動した場合、host_example.cpp という名前のサンプル ホスト コードおよびカーネル ザイリンクス オブジェクト (.xo) ファイルが自動的に Vitis IDE のアプリケーション プロジェクトの ./src フォルダーにインポートされます。