AI エンジンと HDL ブロックの接続 - 2021.2 日本語

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

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

ザイリンクス ツールボックスの HDL ブロックセットには、加算器、乗算器、レジスタなどのよく使用される DSP 機能ブロックが含まれます。また、FFT、フィルター、メモリなどの複雑な DSP 機能ブロックも含まれます。Model Composer では、デザインが自動的に低級言語表現 (RTL) にコンパイルされ、これをプログラマブル ロジックにインプリメントできます。Versal ハードウェアでは、AI エンジン カーネルと PL カーネルを接続できます。ただし、HDL と AI エンジンとドメインには、少なくとも次の 2 つの面で互換性がありません。

  • HDL ドメインはサイクル精度ですが、AI エンジン ドメインはビット精度です。Model Composer HDL デザインは、バック プレッシャーを引き起こすか、有効な出力を持たない可能性があり、これらは AXI4-Stream ポートの Tvalid および Tready 信号を使用してデザインで管理されます。
  • Model Composer はスカラー入力のみを受信しますが、AI エンジン ブロックは可変サイズ ベクター信号を処理できます。

2 つのドメインのサンプリング時間を適切に管理し、PL (HDL ブロックでモデル化) と AI エンジンの両方を含むヘテロジニアス システムをシミュレーションするため、Model Composer では、AI エンジンから HDL ブロックに、HDL ブロックから AI エンジンに接続するインターフェイス ブロックが AI Engine ライブラリに含まれています。

  • AIE to HDL: AXI4-Stream のようなインターフェイスを使用して AI エンジンを HDL ブロックに接続します。
  • HDL to AIE: AXI4-Stream のようなインターフェイスを使用して HDL ブロックを AXI4-Stream ブロックに接続します。します。

これらのブロックは、Xilinx Toolbox/AI Engines/Interfaces ライブラリにあります。

図 1. インターフェイス ブロック

上の図に示すように、AIE to HDL および HDL to AIE ブロックには Tvalid および Tready ポートがあります。AI エンジンから HDL ドメインへのゲートウェイは、バッファーを使用せずに操作を実行します。つまり、HDL ドメインは AI エンジン ドメインとは異なるレートで動作します。たとえば、AI エンジン ドメインがクロックごとに 16 個のサンプルを生成する場合、HDL ドメインはデータを処理するために 16 倍以上の速度で実行する必要があります。HDL ドメインは、サイクル精度のドメインであり、クロックごとに 1 サンプルを消費しない場合があるので、HDL ドメインはさらに高速に動作する必要があります。たとえば、HDL ドメインが 2 クロックごとに 1 つのサンプルを消費する場合 (開始間隔 2)、HDL ドメインは AI エンジン ドメインの 32 倍の速度で動作する必要があります。

次のセクションでは、AIE to HDL および HDL to AIE ブロックのパラメーター設定について説明し、例を示します。