データ フォーマット - 1.2 日本語

FEC 付き Versal ACAP 統合 600G Interlaken サブシステム 製品ガイド (PG371)

Document ID
PG371
Release Date
2023-01-19
Version
1.2 日本語

ILKNF サブシステムの送信ロジックは、『Interlaken Protocol Definition, Revision 1.2』仕様の定義に従って、インバウンド パケットを複数のバーストに分割します。Interlaken インターフェイス上のバーストとは、2 つの 64 ビット制御ワードの間の 64 ビットデータ ワードのシーケンスです。2 つの制御ワードの 1 つ目は、バースト制御ワードでなければなりません。この制御ワードは、バーストに関連するチャネル番号と、バーストが SOP であるかどうかを指定します。ILKNF サブシステムが生成するバーストのサイズは、次の要因によって制御されます。

  • CFG_C0_TX_MAIN_REG レジスタの c0_ctl_tx_burstmax および c0_ctl_tx_burstshort レジスタ フィールド。
  • パケットがどのように TX AXI4-Stream バスに書き込まれるか。

tx_axis_tuser_sop<M> または tx_axis_tuser_bctl<M> のアサート、あるいは tx_axis_tuser_chan<M> でのチャネルの変更により、TX AXI4-Stream インターフェイス側で TX Interlaken インターフェイス上のバースト制御ワードを明示的に強制できます。さらに、ILKNF サブシステムの送信ロジックが最後にバースト制御ワードを送信した後に送信されたデータ バイト数が BurstMax の値に達すると、送信ロジックがバースト制御ワードを暗黙的に示します。ILKNF サブシステムは、特定のクロック サイクルで AXI4-Stream 上にあるデータに関連付けられるバースト制御ワード (暗黙または強制) の数に制限を課しています。具体的には、1 クロック サイクルあたりのバースト制御ワードの数は、最大で AXI4-Stream バス幅を 512 で割った数になります。したがって、2,048 ビットの AXI4-Stream バスの場合、同じサイクルで最大 4 つのバースト制御ワード (暗黙または強制) を送信できます。同様に、1,536 ビットの AXI4-Stream バスの場合、同じサイクルで最大 3 つのバースト制御ワード (暗黙または強制) を送信できます。この要件に違反した場合は、信号 stat_tx_burst_err がアサートされ、データが失われることがあります。

tx_axis_tuser_bctl<M> がアサートされた場合を除き (バースト制御ワードの挿入 参照)、Interlaken インターフェイス上の (最後のバーストを除く) すべてのバーストのサイズは、CFG_C0_TX_MAIN_REG レジスタの c0_ctl_tx_burstmax レジスタ フィールドで指定された値と一致します。特定のパケットでデータを含む最後のバーストのサイズは、CFG_C0_TX_MAIN_REG レジスタの c0_ctl_tx_burstshort および c0_ctl_tx_burstmax レジスタ フィールドで指定された値の範囲内になります。最後の EOP バーストで送信される残りのバイトが 64 バイト (c0_ctl_tx_burst_short の値) 未満である場合、ILKNF サブシステムは、エンハンスト スケジューリングの自動メカニズムを使用し、EOP-1 および EOP バーストのサイズを c0_ctl_tx_burstshortc0_ctl_tx_burstmax の範囲内に調整します。

ILKNF サブシステムは、データがどのように TX に書き込まれるかに応じて、次の 2 つのモードのいずれかで動作します。

  • パケット モード
  • バースト インターリーブ モード