カーネルが前のトランザクションからのデータを処理中にさらにデータを受信できる場合、XRT は次のデータ バッチを送信できます。これで、カーネルがアルゴリズムのさまざまな段階で並列で複数のデータ セットを処理するようになるので、パフォーマンスが改善します。ホストからカーネルへのデータフローをサポートするには、カーネルがその関数の戻り値に
pragma HLS interface
を使用して ap_ctrl_chain
プロトコルをインプリメントする必要があります。
void kernel_name( int *inputs,
... )// Other input or Output ports
{
#pragma HLS INTERFACE ..... // Other interface pragmas
#pragma HLS INTERFACE ap_ctrl_chain port=return bundle=control
重要: ホストからカーネルへのデータフローの利点を活かすには、ループのパイプライン処理 で説明するようにループ レベルでパイプラインしたり、データフロー最適化 で説明するようにタスク レベルでパイプラインしたり、段階的にデータを処理するようにカーネルを記述する必要もあります。