各 AI エンジン タイルには 1 つの AXI4-Stream インターコネクトがあります。ストリーム スイッチとも呼ばれるこのインターコネクトは完全にプログラム可能な 32 ビット AXI4-Stream クロスバーで、メモリ マップド AXI4 インターコネクトを利用して静的に構成します。このインターコネクトはバック プレッシャーを実行し、AXI4-Stream の帯域幅を完全に利用できます。次に、AXI4-Stream スイッチの概略ブロック図を示します。このスイッチには、マスター ポート (スイッチからデータを出力) とスレーブ ポート (スイッチへデータを入力) があります。次の図に、AXI4-Stream インターコネクトを示します。AXI4-Stream インターコネクトの構築ブロックは、次のとおりです。
- ポート ハンドラー
- FIFO
- アービタ
- ストリーム スイッチ コンフィギュレーション レジスタ
各ポートには入出力ストリームの経路を選択するポート ハンドラーがあります。マスター ポートとスレーブ ポートにはそれぞれ、2 サイクルのレイテンシで深さ 4 段の FIFO が備わっています。各ストリーム スイッチには、チェーン接続可能な 2 つの FIFO バッファー (深さ 16 段、幅 32 ビット データ + 1 ビット TLAST) があり、これを使用してストリームにバッファー機能を追加できます。各スイッチには、パケット交換用のプログラマブル アービタが 6 つあります。
各ストリーム ポートは、コンフィギュレーション レジスタのパケット交換ビットを使用して回路交換またはパケット交換ストリームのいずれかに構成できます。回路交換ストリームは、1 対多のストリームです。つまり、1 つのソース ポートに対して、任意の数のディスティネーション ポートがあります。ソースのストリームに入力されるすべてのデータは、すべてのデスティネーションにストリーミングされます。パケット交換ストリームは、ほかの論理ストリームとポート (および物理ワイヤ) を共有できます。ほかのパケット交換ストリームとの間でリソース競合の可能性があるため、レイテンシは確定的ではありません。回路交換ストリームでは、ワード送信のレイテンシは確定的です。帯域幅が制限されている場合は、内蔵のバック プレッシャー機能のために性能が低下します。
各パケット交換ストリームは 5 ビットの ID で識別され、ポートを共有するすべてのストリームの中で固有でなければなりません。また、ストリーム ID は、パケットのデスティネーションを特定するものでもあります。デスティネーションには任意の数のマスター ポートを設定でき、パケット交換ストリームによって、単一または複数のマスター/スレーブ ポートをあらゆる組み合わせで使用できます。
パケット交換パケットに含まれるもの:
- パケット ヘッダー
- パケットの配線および制御情報
- データ
- パケット内に含まれる実際のデータ
- TLAST
- パケットの最後のワードで、パケットの終了を示す TLAST がアサートされる
パケット ヘッダーを示します。
奇数パリティ | 3'b000 | ソース列 | ソース行 | 1'b0 | パケット タイプ | 7'b0000000 | Stream ID | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
[31] | [30:28] | [27:21] | [20:16] | [15] | [14:12] | [11:5] | [4:0] |
次の表に、AXI4-Stream タイル インターコネクトの帯域幅 (-1L スピード グレード デバイスの場合) をまとめます。
接続の種類 | 接続の数 | データ幅 (ビット) | クロック ドメイン | 接続あたりの帯域幅 (GB/s) | 全帯域幅 (GB/s) |
---|---|---|---|---|---|
下側から上側へ | 6 | 32 | AI エンジン (1GHz) | 4 | 24 |
上側から下側へ | 4 | 32 | AI エンジン (1GHz) | 4 | 16 |
右側から左側へ | 4 | 32 | AI エンジン (1GHz) | 4 | 16 |
左側から右側へ | 4 | 32 | AI エンジン (1GHz) | 4 | 16 |