RTL IP が カーネルのインターフェイス要件 で説明されている Vitis コンパイラの AXI インターフェイス要件を満たしていない場合、IP を変更して必要なインターフェイスをインプリメントする必要があります。ただし、RTL IP が ap_ctrl_hs
または ap_ctrl_chain
の XRT 制御プロトコルを満たしていない場合は、IP を書き換えるのではなく、ユーザー管理のカーネルとして定義できます。
ユーザー管理のカーネルは、XRT の制御要件を満たす必要はなく、さまざまな実行メカニズムをインプリメントできます。ユーザー管理のカーネルは、Vitis コンパイラのシステム構築機能を利用しながら、カーネルに独自の制御スキームをインプリメントさせます。カーネルの起動や停止、その他の制御方法に規定はありません。これは、主にユーザーのアプリケーションまたはシステムの特定の要件に基づきます。使用可能な制御スキームには、次のようなものがあります。
-
s_axilite
制御インターフェイスを使用したレジスタへのアクセスは、XRT で使用される方法と類似していますが、独自のインプリメンテーションにできます。 - ホスト アプリケーションにインプリメントされている UIO ドライバーなどのソフトウェア ドライバーを使用して、ハードウェアにアクセスします。
- 別のコンポーネントまたは別のカーネルから提供される信号からカーネルの開始または停止応答をトリガーします。
- カーネルの自動再起動の使用 で説明されるように、データ駆動型のアプローチを提供します。
重要: ユーザー管理のカーネルの
s_axilite
インターフェイスに制御レジスタをインプリメントする場合、制御レジスタに CTRL という名前を付けることができないという制限があります。この名前は XRT 管理のカーネル専用に予約されており、ユーザー管理のカーネルまたは ap_ctrl_none
カーネルで見つかった場合は、クリティカル警告が表示されます。