F-Tile Ethernet Intel® FPGA Hard IPユーザーガイド

ID 683023
日付 7/08/2024
Public
ドキュメント目次

7.8. PCSモードのRXインターフェイス

F-Tile Ethernet Intel® FPGA Hard IP RXクライアント・インターフェイスのPCS Onlyバリエーションでは、Media Independent Interface (MII) プロトコルを採用しています。

受信方向において、RX PCSはソースとして機能し、クライアントはシンクとして機能します。

表 51.  MII RXクライアント・インターフェイスの信号すべてのインターフェイス信号でRXクロックを使用します。信号名は標準の Avalon® ストリーミング・インターフェイス信号です。

信号名

内容

o_rx_mii_d[1023:0]

o_rx_mii_d[511:0]

o_rx_mii_d[255:0]

o_rx_mii_d[127:0]

o_rx_mii_d[63:0]

1024ビット (400GE)

512ビット (200GE)

256ビット (100GE)

128ビット (40GE/50GE)

64ビット (10GE/25GE)

RX MIIデータ。データはMIIエンコーディングです。o_rx_mii_d[7:0] では、IPコアがイーサネット・リンクで受信する最初のバイトを保持します。o_rx_mii_d[0] では、IPコアがイーサネット・リンクで受信する最初のビットを保持します。

RX MII Valid信号の値が0、またはRXアライメント・マーカー有効信号の値が1の場合、この信号の値は無効です。

o_rx_mii_c[127:0]  

o_rx_mii_c[63:0]

o_rx_mii_c[31:0]

o_rx_mii_c[15:0]

o_rx_mii_c[7:0]

128ビット (400GE)

64ビット (200GE)

32ビット (100GE)

16ビット (40GE/50GE)

8ビット (10GE/40GE)

RX MII制御ビット。各ビットは、RX MIIデータの1バイトに対応します。o_rx_mii_c[0]o_rx_mii_d[7:0] に対応し、o_rx_mii_c[1]o_rx_mii_d[15:8] に対応します (以降も同様)。

ビットの値が1の場合、対応するデータバイトは制御バイトです。ビットの値が0の場合、対応するデータバイトはデータです。

o_rx_mii_valid

1ビット RX MIIデータ、RX MII制御ビット、およびRXアライメント・マーカー有効信号が有効であることを示します。

o_rx_mii_am_valid

1ビット IPコアがイーサネット・リンクで有効なアライメント・マーカーを受信していることを示します。

RX MII valid信号の値が0の場合、この信号の値は無効です。RX MII valid信号の値は、IPコアでこの信号をアサートしている際に下がる場合があります。

図 46. PCSモードのRXインターフェイスでのデータ受信

上の図は、PCSモードのRXインターフェイスを使用してパケットをRX PCSから読み出す方法を示しています。

  • パケットはMIIでエンコードされています。
    • o_rx_mii_d の各バイトには対応するビットが o_rx_mii_c にあり、それによってそのバイトが制御バイトかデータバイトかを示します。例えば、o_rx_mii_c[2]o_rx_mii_d[23:16] の制御ビットです。
  • データは、o_rx_mii_valid がHighの場合にのみ有効です。o_rx_mii_valid がLowの場合の o_rx_mii_d および o_rx_mii_c バスの内容は未定義です。
  • PCSモードのRXインターフェイスのバイト順序は、MACセグメント化クライアント・インターフェイスのバイト順序と逆になります。バイトはLSBからMSBに流れます。コアで受信する最初のバイトは o_rx_mii_d[7:0] です。
  • PCSモードのRXインターフェイスのビット順序は、MACセグメント化クライアント・インターフェイスのビット順序と同じです。コアで受信する最初のビットは o_rx_mii_d[0] です。
注: PCSモードのRXインターフェイスはSOPアライメントではありません。新しいパケットは、8で割り切れる任意のバイト位置から開始することができます (PCSデータは8バイト・ブロックで転送されます)。
表 52.  PCSモードのRXインターフェイスからのプリアンブルを備えるパケット開始ブロックの読み出し
MIIデータ MIIコントロール イーサネット・パケット・バイト
o_rx_mii_d[7:0] 0xFB o_rx_mii_c[0] 1 パケットの開始
o_rx_mii_d[15:8] 0x55 o_rx_mii_c[1] 0 プリアンブル
o_rx_mii_d[23:16] 0x55 o_rx_mii_c[2] 0 プリアンブル
o_rx_mii_d[31:24] 0x55 o_rx_mii_c[3] 0 プリアンブル
o_rx_mii_d[39:32] 0x55 o_rx_mii_c[4] 0 プリアンブル
o_rx_mii_d[47:40] 0x55 o_rx_mii_c[5] 0 プリアンブル
o_rx_mii_d[55:48] 0x55 o_rx_mii_c[6] 0 プリアンブル
o_rx_mii_d[63:56] 0xD5 o_rx_mii_c[7] 0 SFD
図 47. アライメント・マーカーの受信

o_rx_mii_am_valid は、RX PCSからのアライメント・マーカーの到着を示します。アライメント・マーカーは、o_rx_mii_valid にも依存します。o_rx_mii_valid がLowの場合、o_rx_mii_am_valid は無効です。

o_rx_mii_valid がLowの場合の o_rx_mii_d および o_rx_mii_c バスの内容は未定義です。アライメント・マーカーは64b/66bエンコーディングの一部ではなく、MIIに相当するものがありません。