インテルのみ表示可能 — GUID: nik1398706855390
Ixiasoft
インテルのみ表示可能 — GUID: nik1398706855390
Ixiasoft
2.6.1.4. GbE のレートマッチFIFO
IEEE 802.3-2008 仕様に記載された規則に従って、GbE プロトコルでは、トランスミッタがパケット間ギャップ (IPG) 中にアイドル・オーダ・セット/I1/ (/K28.5/D5.6/) および/I2/ (/K28.5/D16.2/) を送信することが要求されます。
レートマッチ動作は、ワードアライナー内の同期ステートマシンがrx_syncstatus 信号をHigh に駆動することによって同期を得られたことを示した後に開始します。レートマッチャは/I2/ オーダーセットのシンボル/K28.5/ と/D16.2/ の両方を動作のペアとして削除または挿入し、レートマッチFIFO のオーバーフローやアンダーフローを防ぎます。レートマッチ動作では、/I2/ オーダーセットを必要なだけ挿入または削除することができます。
次の図に、3 つのシンボルを削除する必要があるレートマッチの削除動作の例を示します。レートマッチFIFO が削除できるのは/I2/ オーダーセットのみであるため、これは2 つの/I2/ オーダーセットを削除します (4 つのシンボルが削除されます)。
次の図に、1 つのシンボルを挿入する必要がある場合のレートマッチFIFO の挿入の例を示します。レートマッチFIFO が挿入できるのは/I2/ オーダーセットのみであるため、これは1 つの/I2/ オーダーセットを挿入します (2 つのシンボルが挿入されます)。
rx_std_rmfifo_full とrx_std_rmfifo_empty がFPGA ファブリックに送られ、レートマッチFIFO のフルおよび空の状態を示します。
レートマッチFIFO は、FIFO フル状態を解消するためのコードグループの削除を行いません。リカバリークロックで少なくとも2 サイクルrx_std_rmfifo_full フラグをアサートし、レートマッチFIFO フルを示します。次の図に、書き込みポインターが読み出しポインターよりも早い場合の、レートマッチFIFO がフルの状態を示します。
レートマッチFIFO は、FIFO が空である状態を解消するためのコードグループの挿入を行いません。リカバリークロックで少なくとも2 サイクルrx_std_rmfifo_empty フラグをアサートし、レートマッチFIFO が空であることを示します。以下の図に、読み出しポインターが書き込みポインターよりも早い場合の、レートマッチFIFO が空の状態を示します。
レートマッチFIFO がフルおよび空の状態の場合には、rx_digitalreset 信号をアサートし、レシーバーPCS ブロックをリセットする必要があります。