このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。
インテルのみ表示可能 — GUID: lep1600487426983
Ixiasoft
インテルのみ表示可能 — GUID: lep1600487426983
Ixiasoft
7.2. TX MAC Avalon STクライアント・インターフェイス
Fタイル・イーサネット・インテル® FPGAハードIP TXクライアント・インターフェイスのMAC+PCSバリエーションでは、 Avalon® STプロトコルを採用しています。 Avalon® STプロトコルは、同期ポイントツーポイントの単方向インターフェイスであり、データストリームのプロデューサー (ソース) とデータのコンシューマー (シンク) を接続します。このインターフェイスの主なプロパティーは次のとおりです。
- スタート・オブ・パケット (SOP) 信号およびエンド・オブ・パケット (EOP) 信号でフレーム転送を区切ります。
- SOPは常にMSB内になければなりません。これにより、着信データの解釈と処理が簡素化されます。
- Valid信号によってソースからシンクまでの信号を分類します。
- シンクでは、ソースにバックプレッシャーをかけるためにReady信号を使用します。ソースは通常、シンクからのReady信号のデアサートに応答します。そのために、同じデータがシンクによって受け入れられるまで駆動します。 Ready latencyによって定義するのは、Ready信号のアサートとデアサートの関係や、データ転送がreadyであると見なされるサイクルです。
送信方向では、クライアントはソースとして動作し、TX MACはシンクとして動作します。
信号名 |
幅 | 説明 |
---|---|---|
i_tx_data[511:0] i_tx_data[127:0] i_tx_data[63:0] |
512ビット (100GE) 128ビット (50GE/40GE) 64ビット (25GE/10GE) |
レートが10GE/25GE/40GE/50GE/100GEの場合、MACにデータを入力します。ビット0はLSBです。 |
i_tx_valid | 1ビット | アサートされると、TXデータ信号が有効になります。この信号のアサートは、同じパケットに対するパケット開始信号とパケット終了信号のアサートの間に連続して行ってください。 |
i_tx_startofpacket | 1ビット | Start-of-Packet (SOP)。 アサートされると、TXデータによってパケット内データの最初のクロックサイクルが保持されていることを示します (パケットの開始)。アサートは、パケットごとに1クロックサイクルの間だけ行います。 SOP信号がアサートされると、TXデータのMSBによってパケットの開始が駆動されます。 |
i_tx_endofpacket | 1ビット | End of Packet (EOP)。 アサートされると、TXデータによってパケット内データの最初のクロックサイクルが保持されていることを示します (パケットの終了)。アサートは、各パケットで1クロックサイクルの間だけ行います。 一部の正当なパケットの場合、SOP信号とEOP信号は、同じクロックサイクルでアサートされます。 |
i_tx_empty[5:0] i_tx_empty[3:0] i_tx_empty[2:0] |
6ビット (100GE) 4ビット (50GE/40GE) 3ビット (10GE/25GE) |
EOP信号がアサートされたときのTXデータの空のバイト数を示します。 |
o_tx_ready |
1ビット | Ready信号は、MACが通常の動作モードでデータを受信する準備ができていることを示します。 |
i_tx_preamble[63:0] |
64ビット | TXフレームのプリアンブル値を書き込みます。この信号が有効になるのは、i_tx_valid および i_tx_startofpacket 信号がアサートされた場合です。 この信号は、Preamble Passthroughを40GE/50GEチャネルのパラメーター・エディターでオンにした場合にのみ使用できます。 |
i_tx_error |
1ビット | EOPサイクルでアサートされると (この間EOP信号はアサートされている)、IPコアに指示して、エラーをイーサネット・リンク上で送信する前に、パケットに挿入させます。 |
i_tx_skip_crc |
1ビット | TX MACによる現在のTX MACクライアント・インターフェイス・パケットの処理方法を指定します。この信号を使用して、特定のパケットに対するソースの挿入を一時的にオフにし、デフォルトのビヘイビアである最小パケットサイズへのパディングおよびCRCの挿入をオーバーライドします。 この信号がアサートされている場合は、TX MACに指示して、CRCの挿入、パディングバイトの追加、送信元アドレス挿入の実装はいずれも行わないようにします。この信号を使用して、TXデータ信号のデータにCRC、パディングバイト (該当する場合)、および正しい送信元アドレスが含まれていることを示します。 この信号がアサートされず、送信元アドレスの挿入がイネーブルになっている場合は、TX MACに指示して、送信元アドレスを上書きします。MACでは、新しい送信元アドレスを TXMAC_SADDR レジスターからコピーします。 この信号がアサートされていない場合は、送信元アドレスの挿入がイネーブルどうかにかかわらず、TX MACでは、パディングバイトを必要に応じて挿入し、CRCをパケットに挿入します。 クライアントでは、同じ値をこの信号で維持することが必要です。これを (SOP信号をアサートするサイクルからEOP信号をアサートするサイクルまでの) パケットの期間中続けます。 |
上の図で示しているのは、TX MAC Avalon STクライアント・インターフェイスを使用したデータ送信方法です。このインターフェイスは、 Avalon® ストリーミング・インターフェイス仕様に準拠しています。
- Data valid (i_tx_valid) は、パケットの開始から終了までHighに保ち、パケットの外部ではLowにしてください。
- パケットの開始は常に i_tx_data のバイトのMSBからです (SOPアライメント)。
- Ready latencyの設定には、パラメーター・エディターを使用します。
- o_tx_ready がデアサートされたら、i_tx_data を一時停止します。その期間は、o_tx_ready がデアサートされるのと同じサイクルの間です。Ready latency は後で開始されます。この例では、Ready latencyは1です。したがって、o_tx_ready が1サイクルの間デアサートされた後、i_tx_data は1サイクルの間一時停止します。
- フレームが終了すると、 i_tx_empty の設定は、i_tx_data の未使用のバイト数になります。開始はLSB (バイト0) からです。
- この例では、パケットの最後のサイクルの i_tx_data には空のバイトが3つあります。
- 最後のサイクルの最小バイト数は1です。