インテルのみ表示可能 — GUID: ahn1497658283453
Ixiasoft
インテルのみ表示可能 — GUID: ahn1497658283453
Ixiasoft
6.1. ユーザーロジックに対するTX MACインターフェイス
Low Latency 100G Ethernet Intel FPGA IPコアのTXクライアント・インターフェイスは、 Avalon® ストリーミング・インターフェイス・プロトコルを採用しています。 Avalon® ストリーミング・インターフェイス・プロトコルは、同期ポイントツーポイントの単方向インターフェイスで、データストリームのプロデューサー (ソース) とデータのコンシューマー (シンク) を接続します。このインターフェイスの主なプロパティーは次のとおりです。
- スタート・オブ・パケット (SOP) 信号とエンド・オブ・パケット (EOP) 信号でフレーム転送を区切ります。
- SOPは常にMSB内になければなりません。これにより、受信データの解釈と処理が簡単になります。
- valid信号によってソースからシンクまでの信号を分類します。
- シンクでは、ソースにバックプレッシャーをかけるためにReady信号を使用します。ソースは通常、シンクからのReady信号のデアサートに応答します。そのために、同じデータがシンクによって受け入れられるまで駆動します。readyLatency で定義するのは、Ready信号のアサートとデアサートの関係や、データ転送が ready であると見なされるサイクルです。TXクライアント・インターフェイスの readyLatency ではゼロサイクルです。
送信方向では、クライアントはソースとして動作し、TX MACはシンクとして動作します。
信号名 |
入力/出力 |
説明 |
---|---|---|
clk_txmac | 出力 | IPコアのTXクロックは clk_txmac です。このクロックの周波数は390.625MHzです。 |
l8_tx_data[511:0] | 入力 |
TXデータです。プリアンブル・パススルー機能がイネーブルされている場合、データはプリアンブルから開始します。 Low Latency 100G Ethernet Intel FPGA IPコアでは、9バイト未満の着信フレームは正しく処理されません。そのようなフレームが、TXクライアント・インターフェイスに到達しないようにしてください。 各TXデータパケットの送信は、中間のIDLEサイクルなしで行ってください。したがって、アプリケーションでは、かならず単一のパケットのデータの提供が、連続したクロックサイクルでできるようにしてください。データが使用できない場合は、データをデザインでバッファリングします。そして、l8_tx_data[511:0] で送信するパケットデータが使用可能であるか、または時間どおりに使用できるようになることが確認できたら l8_tx_startofpacket をアサートしてください。 |
l8_tx_empty[5:0] | 入力 |
l8_tx_endofpacket がアサートされたときの l8_tx_data[511:0] の空のバイト数を示します。 |
l8_tx_startofpacket | 入力 |
アサートされると、パケットの開始を示します。パケットはMSBで始まります。 |
l8_tx_endofpacket | 入力 |
アサートされると、パケットの終了を示します。 |
l8_tx_ready | 出力 |
アサートされると、MACはデータを受信する準備ができています。l8_tx_ready 信号は肯定応答として機能します。ソースは l8_tx_valid および l8_tx_data[511:0] を駆動し、シンクが l8_tx_ready をアサートするのを待ちます。readyLatency はゼロサイクルであるため、IPコアでは、l8_tx_ready をアサートするのと同じサイクルで有効なデータを受け入れます。 l8_tx_ready 信号は、MACによる通常の動作モードでのデータの受信準備ができていることを示します。ただし、l8_tx_ready 信号の表示は、リセット後は適切ではないことがあります。パケットの送信が、イーサネット・リンクによるパケットの送信が確実にできるようになる前に行われないようにするには、アプリケーションによるTXクライアント・インターフェイス上のパケット送信は、tx_lanes_stable 信号がアサートされるまで行わないでください。 |
l8_tx_valid | 入力 |
アサートされると、l8_tx_data は有効です。この信号は、同じパケットの l8_tx_startofpacket と l8_tx_endofpacket のアサート間で継続的にアサートされる必要があります。 |
l8_tx_error | 入力 | EOPサイクルで (l8_tx_endofpacket がアサートされている間に) アサートされると、IPコアに指示して、パケットへのエラー挿入をイーサネット・リンクへのエラー送信前に行います。 |
l8_txstatus_valid | 出力 | アサートされると、l8_txstatus_data および l8_txstatus_error[6:0] が有効なデータを駆動していることを示します。 |
l8_txstatus_data[39:0] | 出力 | 送信フレームに関する情報を指定します。次のフィールドが定義されています。
|
l8_txstatus_error[6:0] | 出力 | 送信フレームのエラータイプを指定します。次のフィールドが定義されています。
|