インテル® Arria® 10 トランシーバーPHY ユーザーガイド

ID 683617
日付 4/20/2017
Public
ドキュメント目次

2.4.10. 標準PCS ポート

図 25. 標準PCS ポートを使用するトランシーバー・チャネル標準PCS を使用するトランシーバー・コンフィグレーション・モードのいずれかが選択されている場合、あるいは、トランシーバー・コンフィグレーションが標準PCS を使用するものでなかったとしても、Data Path Reconfiguration が選択されている場合に、標準PCS ポートが生じます。

以下の表では、変数は次に示すパラメーターを表します。

  • <n>:レーン数
  • <w>:インターフェイス幅
  • <d>:シリアライゼーション・ファクター
  • <s>:シンボルサイズ
  • <p>:PLL 数
表 67.  TX 標準PCS のデータ、コントロール、クロック
ポート名 入力/出力 クロックドメイン 説明
tx_parallel_data[<n>128-1:0]

入力

tx_clkout

FPGA ファブリックからTX PCS へのTX パラレルデータ入力です。

unused_tx_parallel_data

入力

tx_clkout Enable simplified data interface をオンにした場合に、この信号は未使用データを指定します。Enable simplified data interface がセットされない場合には、未使用ビットはtx_parallel_data の一部になります。これらのビットをすべて0 に接続します。未使用データビットを0 に接続しなければ、ネイティブPHY IP コアがTX パラレルデータを正しくシリアル化することができません。
tx_coreclkin 入力 クロック

FPGA ファブリックのクロックです。このクロックは、TX FIFO の書き込みポートを駆動します。

tx_clkout

出力

クロック

ノン・ボンディング・コンフィグレーションではローカルCGB により生成され、ボンディング・コンフィグレーションではマスターCGB により生成されるパラレルクロックです。このクロックは、tx_parallel_data をFPGA ファブリックからTX PCS へ駆動します。

表 68.  RX 標準PCS のデータ、コントロール、ステータス、クロック
ポート名 入力/出力 クロックドメイン 説明
rx_parallel_data[<n> 128-1:0]

出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

RX PCS からFPGA ファブリックへのRX パラレルデータです。rx_parallel_data の各128 ビット・ワードでデータビットは、8B/10B デコーダーがイネーブルされていればrx_parallel_data[7:0] に、8B/10B デコーダーがディスエーブルされていればrx_parallel_data[9:0] に相当します。

unused_rx_parallel_data

出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

Enable simplified data interface をオンにした場合に、この信号は未使用データを指定します。Enable simplified data interface がセットされない場合には、未使用ビットはrx_parallel_data の一部になります。これらの出力はフローティングのままにしておくことができます。
rx_clkout

出力

クロック

RX 標準PCS 内のブロックを駆動するトランシーバーRX PMA によって回復された低速パラレルクロックです。

rx_coreclkin 入力 クロック

RX FIFO の読み出し側のクロックを駆動するRX パラレルクロックです。

表 69.  標準PCS FIFO
ポート名 入力/出力 クロックドメイン 説明
tx_std_pcfifo_full[<n>-1:0]

出力

FIFO の書き込み側を駆動するクロック (tx_coreclkin またはtx_clkout) に同期

標準TX FIFO がフルであることを示します。

tx_std_pcfifo_empty[<n>-1:0]

出力

FIFO の書き込み側を駆動するクロック (tx_coreclkin またはtx_clkout) に同期

標準TX FIFO が空であることを示します。

rx_std_pcfifo_full[<n>-1:0]

出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

標準RX FIFO がフルであることを示します。

rx_std_pcfifo_empty[<n>-1:0]

出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

標準RX FIFO が空であることを示します。

表 70.  レートマッチFIFO
ポート名 入力/出力 クロックドメイン 説明
rx_std_rmfifo_full[<n>-1:0]

出力

非同期

レートマッチFIFO フルのフラグです。アサートされるとレートマッチFIFO はフルです。この信号は同期させる必要があります。このポートはGigE モードにのみ使用されます。

rx_std_rmfifo_empty[<n>-1:0]

出力

非同期

レートマッチFIFO 空のフラグです。アサートされるとマッチFIFO は空です。この信号は同期させる必要があります。このポートはGigE モードにのみ使用されます。

rx_rmfifostatus[<n>-1:0]

出力

非同期

FIFO ステータスを示します。以下のエンコーディングが定義されています。

  • 2'b00:通常動作
  • 2'b01:削除、rx_std_rmfifo_full = 1
  • 2'b10:挿入、rx_std_rmfifo_empty = 1
  • 2’b11:フル、rx_rmfifostatusrx_parallel_data の一部。rx_rmfifostatusrx_parallel_data[14:13] に相当する
表 71.  8B/10B エンコーダーおよびデコーダー
ポート名 入力/出力 クロックドメイン 説明
tx_datak

入力

tx_clkout

8B/10B がイネーブルされ、simplified data interface がセットされている場合にtx_datak を使用できます。1 であれば、8B/10B でエンコードされたワードであるtx_parallel_data がコントロールであることを示します。0 であれば、8B/10B でエンコードされたワードであるtx_parallel_data がデータであることを示します。simplified data interface がセットされていない場合には、tx_dataktx_parallel_data の一部です。
tx_forcedisp[<n> (<w>/<s>-1:0]

入力

非同期

この信号により8B/10B エンコーダーのディスパリティーを強制できます。1 であれば、tx_dispval で駆動される値に出力データのディスパリティーを強制します。0 であれば、現在のランニング・ディスパリティーを継続します。tx_forcedisptx_parallel_data の一部です。tx_forcedisptx_parallel_data[9] に相当します。

tx_dispval[<n> (<w>/<s>-1:0]

入力

非同期

データのディスパリティーを指定します。0 であれば正のディスパリティーであることを示し、1 であれは負のディスパリティーであることを示します。tx_dispvaltx_parallel_data の一部です。tx_dispvaltx_dispval[10] に相当します。

rx_datak[<n><w>/<s>-1:0]

出力

rx_clkout

8B/10B がイネーブルされ、simplified data interface がセットされている場合にrx_datak を使用できます。1 であれば、8B/10B でデコードされたワードであるrx_parallel_data がコントロールであることを示します。0 であれば、8B/10B でデコードされたワードであるrx_parallel_data がデータであることを示します。simplified data interface がセットされていない場合には、rx_datakrx_parallel_data の一部です。

rx_errdetect[<n><w>/<s>-1:0] 出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

アサートされると、受信したコードグループでコードグループ違反が検出されたことを示します。コードグループ違反とディスパリティー・エラーを区別するために、rx_disperr 信号と共に使用されます。rx_errdetect/rx_disperr に以下のエンコーディングが定義されています。

  • 2'b00:エラーなし
  • 2'b10:コードグループ違反
  • 2'b11:ディスパリティー・エラー。rx_errdetectrx_parallel_data の一部。各128 ビット・ワードで、rx_errdetectrx_parallel_data[9] に相当する
rx_disperr[<n><w>/<s>-1:0] 出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

アサートされると、受信したコードグループでのディスパリティー・エラーを示します。rx_disperrrx_parallel_data の一部です。各128 ビット・ワードで、rx_disperrrx_parallel_data[11] に相当します。
rx_runningdisp[<n><w>/<s>-1:0] 出力

FIFO の読み出し側を駆動するクロック (rx_coreclkin またはrx_clkout) に同期

High であれば、rx_parallel_data が負のディスパリティーで受信されたことを示します。Low であれば、rx_parallel_data が正のディスパリティーで受信されたことを示します。rx_runningdisprx_parallel_data の一部です。各128 ビット・ワードで、rx_runningdisprx_parallel_data[15] に相当します。
rx_patterndetect[<n><w>/<s>-1:0] 出力 非同期 アサートされると、プログラムされたワード・アライメント・パターンが現在のワード境界で検出されたことを示します。rx_patterndetectrx_parallel_data の一部です。各128 ビット・ワードで、rx_patterndetectrx_parallel_data[12] に相当します。
rx_syncstatus[<n><w>/<s>-1:0] 出力 非同期 アサートされると、同期に必要な条件が満たされたことを示します。rx_syncstatusrx_parallel_data の一部です。各128 ビット・ワードで、rx_syncstatusrx_parallel_data[10] に相当します。
表 72.  ワードアライナーとビットスリップ
ポート名 入力/出力 クロックドメイン 説明
tx_std_bitslipboundarysel[5 <n>-1:0] 入力

非同期

ビットスリップ境界選択信号です。TX ビットスリッパがスリップする必要があるビットの数を指定します。

rx_std_bitslipboundarysel[5 <n>-1:0] 出力

非同期

このポートは確定的レイテンシー・ワードアライナー・モードで使用されます。このポートはRX ブロックがスリップしたビット数をレポートします。Deterministic Latency Mode またはワードアライナーのManual Mode のどちらにおけるこのポートの値を考慮に入れる必要があります。

rx_std_wa_patternalign[<n>-1:0] 入力

rx_clkout に同期

ワードアライナーをマニュアルモードにするとアクティブになります。マニュアルモードでは、rx_std_wa_patternalign をアサートすることによってワードをアライメントします。PCS からPMA へのインターフェイス幅が10 ビットの場合、rx_std_wa_patternalign はレベル・センシティブです。他のすべてのPCS からPMA へのインターフェイス幅では、rx_std_wa_patternalign は正のエッジ・センシティブです。

このポートはワードアライナーがマニュアルまたは確定的レイテンシー・モードでコンフィグレーションされた場合にのみ使用できます。

ワードアライナーがマニュアルモードであり、PCS からPMA へのインターフェイス幅が10 ビットであれば、これはレベル・センシティブの信号です。この場合には、ワードアライナーは、ワード・アライメント・パターンのために入力データをモニターリングし、アライメント・パターンを見つけるとワード境界を更新します。

その他のすべてのPCA からPMA へのインターフェイス幅では、この信号はエッジ・センシティブです。この信号は、PCS パラレルクロックを使用してPCS 内で内部的に同期されており、また、同期を可能にするために少なくとも2 クロックサイクル・アサートされている必要があります。

rx_std_wa_a1a2size[<n>-1:0] 入力

非同期

SONET プロトコルに使用されます。A1 とA2 フレーミング・バイトが検出される必要がある際にアサートします。A1 とA2 はSONET のバックプレーン・バイトであり、PMA のデータ幅が8 ビットである場合にのみ使用されます。

rx_bitslip[<n>-1:0] 入力

非同期

ワードアライナーのモードがビットスリップ・モードである場合に使用されます。ワードアライナーが、マニュアル (PLD 制御) 、同期ステートマシン、または確定的レイテンシーのいずれかであるときは、rx_bitslip 信号は無効であり、0 に接続される必要があります。rx_std_bitslip 信号の立ち上がりエッジごとにワード境界は1 ビットでシフトされます。各ビットスリップは、受信したデータから最も早く受信したビットを削除します。

表 73.  ビット反転と極性反転
ポート名 入力/出力 クロックドメイン 説明
rx_std_byterev_ena[<n>-1:0]

入力

非同期

このコントロール・信号は、PMA 幅が16 ビットまたは20 ビットの場合に使用できます。アサートされると、RX インターフェイスでのバイト反転をイネーブルします。送信されたデータのMSB とLSB が誤った形に入れ替えられた場合に使用します。

rx_std_bitrev_ena[<n>-1:0]

入力

非同期

アサートされると、RX インターフェイスでのビット反転をイネーブルします。外部の送信回路が最上位ビットを先頭に送信していれば、ビットの順序は逆転しています。イネーブルすると、受信回路は全てのワードを反転させた順序で受信します。ビット反転回路はワードアライナーの出力で動作します。

tx_polinv[<n>-1:0]

入力

非同期

アサートされると、TX の極性ビットが反転されます。TX bit polarity inversion がイネーブルされている場合にのみアクティブになります。

rx_polinv[<n>-1:0]

入力

非同期

アサートされると、RX の極性ビットが反転されます。RX bit polarity inversion がイネーブルされている場合にのみアクティブになります。

rx_std_signaldetect[<n>-1:0]

出力

非同期

イネーブルすると、信号しきい値の検出回路は、RX 入力バッファーの信号レベルが信号検出しきい値電圧を超えていないかを検出します。信号検出しきい値はQuartus Prime Setting File (.qsf) のアサインメントを使用して指定できます。この信号はPCI Express*、SATA、およびSAS プロトコルに必要です。