自動再起動 HLS デザインには、Vitis HLS で指定された ap_ctrl_chain
または ap_ctrl_hs
プロトコルが必要です。推奨されるプロトコルは ap_ctrl_chain
です。
- デザインでは、INTERFACE プラグマまたは指示子で
mode=ap_ctrl_chain
を指定する必要があります。 - 自動再起動デザインでは、ストリーミング インターフェイス (
axis
)、および読み書き可能なスカラー引数 (s_axilite
) とメモリ マップ (m_axi
) 引数の両方がサポートされます。
自動再起動デザインは、いくつかの異なるシナリオで使用できます。
- ストリーミング インターフェイス (
axis
) でホスト アプリケーションとやり取りする必要がないカーネルのみを自動再起動します。この例は、カーネルにコンパイルされたコンフィギュレーション データを持つ高速フーリエ変換 (FFT) や、カーネルにコンパイルされた係数を持つ FIR フィルターなどです。 -
axis
インターフェイスを使用するかどうかを指定し、スカラーおよびメモリ マップ (m_axi
) 引数を使用してカーネルを自動再起動します。スカラーおよびメモリ マップ引数には、必要に応じて、カーネル パラメーターを更新するメールボックスが必要です。この例としては、リセット時にホスト アプリケーションによって記述された規則を含む単純な規則ベースのファイアウォールがあります。このファイアウォールには、ホスト コードで読み出すことができるドロップされたパケットのカウンターがありますが、すべての値が 1 回のカーネル実行から取得される必要があります。または、ハッシュ マップを使用してサーバーにデータを送信するロード バランサーが、サーバー リスト、サーバー マップ、および対応する IP アドレスを同時に更新する必要があります。