クラス ベース カーネル - 2021.2 日本語

Vitis Model Composer ユーザー ガイド (UG1483)

Document ID
UG1483
Release Date
2021-10-22
Version
2021.2 日本語

Model Composer では、パラメーター値を指定するためのコンストラクター パラメーターを含む C++ カーネル クラスをインポートできます。次に示すように、AI エンジン ライブラリから AI エンジン クラス カーネル ブロックを使用する必要があります。

図 1. AIE Class Kernel

ブロックをダブルクリックすると、次の図に示すように、AI エンジン クラス カーネル ブロックのパラメーターが表示されます。

図 2. AIE Class Kernel ブロックの [Block Parameters] ダイアログ ボックス

カーネル関数をブロックとしてインポートするには、ブロック マスク パラメーターをアップデートする必要があります。次の表に、各パラメーターの説明を示します。

パラメーター名 パラメーターのデータ型 必要性 説明
[Kernel header file] 文字列 必須 カーネル クラスおよび registerKernelClass メソッド宣言を含むヘッダー ファイルの名前。ファイル名、ファイルへの相対パス、またはファイルへの絶対パスを指定できます。参照ボタンをクリックしてファイルを選択します。

このフィールドには、環境変数は指定できません。

[Kernel class] 文字列 必須 メンバー変数およびカーネル メンバー関数を含むカーネル クラスの名前。
[Kernel function] 文字列 必須 ブロックを作成するカーネル メンバー関数の名前。この関数は、カーネル ヘッダー ファイルで registerKernelClass メソッドを使用して登録されている必要があります。
[Kernel init function] 文字列 オプション カーネル関数で使用される初期化関数の名前。
[Kernel source file] 文字列 文字列

カーネル メンバー関数定義およびデフォルト以外のコンストラクター パラメーター値の指定を含むソース ファイルの名前。

ファイル名、ファイルへの相対パス、またはファイルへの絶対パスを指定できます。

このフィールドには、環境変数は指定できません。

[Kernel search paths] 文字列のベクター オプション

[Kernel header file] または [Kernel source file] に指定された値を使用してカーネル ヘッダー ファイルまたはカーネル ソース ファイルが見つからない場合は、[Kernel search paths] に指定されているパスでファイルが検索されます。

このパラメーターを使用すると、カーネル ヘッダー ファイルおよびカーネル ソース ファイルへのパスを指定すると同時に、環境変数を使用できます。環境変数は、${ENV} または $ENV 形式で指定できます。

[Preprocessor options]   オプション ダウンストリームのコンパイルを特定のプリプロセッサ オプションを使用して実行する場合にプリプロセッサ引数を指定します。

使用可能な形式は -Dname および -Dname=definition で、コンマで区切って複数指定できます。引数は -D で開始する必要があり、<definition> が指定されていない場合は 1 と想定されます。

AI エンジン クラス カーネル ブロックでは、通常の AI エンジン カーネル ブロックでサポートされるすべてのカーネル機能がサポートされます。また、AI エンジン クラス カーネル ブロックをダブルクリックしたときに表示される [Block Parameters] ダイアログ ボックスは、カーネル メンバー関数がウィンドウ ベースかストリーム ベースかにかかわらず同じです。ヘッダー ファイルまたはソース ファイルを編集するには、参照ボタンの横にある Edit ボタンをクリックします。