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

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

Document ID
UG1483
Release Date
2023-11-15
Version
2023.2 日本語

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

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

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

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

これらのブロックは、AMD Toolbox/Utilities/Connectors ライブラリにあります。

図 1. コネクタ ブロック

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

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