このブロックは、AXI4-Stream インターフェイスを使用して AI エンジン ドメインを HDL ドメインに接続するために使用します。
ライブラリ
Utilities/Connectors
説明
このブロックは、AI エンジンと HDL ブロック間にインターフェイスを提供します。
- AIE to HDL ブロックへの入力は、AIE ブロックからの可変サイズ信号 (データ) と、コンシューマー (HDL) が転送を受信できることを示す
tready
信号です。 - AIE to HDL ブロックからの出力は、
tdata
と、プロデューサーに有効なデータがあることを示すtvalid
です。tvalid
とtready
の両方が TRUE (1) になると、転送が実行されます。
tready
信号が FALSE (0) の場合、ブロックは tready
信号が TRUE (1) になるまで入力データをバッファリングします。シミュレーション中に tready
信号が長時間 FALSE (0) のままになると、最終的にはブロックの内部バッファーがオーバーフローし、シミュレーションが停止します。
tdata
出力はスカラーですが、data
入力は可変サイズ信号なので、このブロックはマルチレート ブロックです。
HDL ドメインが 1 つの入力サンプルを処理するのに N クロック サイクルかかる場合、tready
は N クロック サイクルごとに TRUE (1) になります。この場合、AIE to HDL ブロックへの入力サンプル時間は、HDL ドメインのサンプル期間 (HDL 入力ゲートウェイ ブロックで指定) の N 倍以上にし、ブロックの内部バッファーがオーバーフローするのを回避する必要があります。
トポロジ
次の図に、AI エンジンから HDL ドメインへの接続のトポロジを示します。
注記: PLIO の幅は、AIE to HDL ブロックの出力のデータ型と、ブロックの
tdata
ゲートウェイの出力データ型に一致している必要があります。パラメーター
- [Output Data Type]
- 次の表に、AI エンジン to HDL ブロックでサポートされる出力のデータ型と、それに対応するブロックへの入力のデータ型を示します。
出力のデータ型 AIE to HDL ブロックへの入力 int32 int32 uint32 int8、uint8、int16、uint16、uint32、single、cint16 int64 int64 uint64 int8、uint8、int16、uint16、cint16、int32、uint32、cint32、uint64、single、single(c) ufix128 int8、uint8、int16、uint16、cint16、int32、uint32、cint32、int64、uint64、single、single(c) - [Output Sample Time]
- デフォルトでは、このパラメーター値は
tready
入力からのサンプル時間を継承します。
注記: このブロックおよびサンプルの設定に関する詳細は、GitHub を参照してください。