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

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

2.7.8. PIPE 向けネイティブPHY IP のポート

図 106. PIPE でのネイティブPHY IP の信号とポート


表 187.  PIPE モードでのArria 10 トランシーバー・ネイティブPHY のポートこの項にはこのプロトコル向けの推奨設定を掲載しています。パラメーター値の範囲全体については、Arria 10 のトランシーバー・ネイティブPHY IP コアの使用を参照してください。
ポート 入力/出力 クロックドメイン 概要
クロック
rx_cdr_refclk0 入力 N/A PHY のTX PLL およびRX CDP 向け100/125 MHzの入力リファレンス・クロック・ソースです。
tx_serial_clk0/tx_serial_clk1 入力 N/A PLL で生成された高速シリアルクロックです。

注:Gen3 x1 ではtx_serial_clk1 のみを使用します。

pipe_hclk_in[0] 入力 N/A ASN ブロックに使用する500 MHz のクロックです。このクロックはPLL で生成され、Gen1 またはGen2 向けに設定されます。

注:Gen3 デザインでは、Gen1/Gen2 に使用されるfPLL からのクロックを使用します。

pipe_hclk_out[0] 出力 N/A PHY-MAC インターフェイスに供給する500 MHz のクロック出力です。
PHY-MAC 層からのPIPE 入力
tx_parallel_data[31:0][15:0] または[7:0] 入力

tx_coreclkin

MAC から駆動されるTX パラレルデータです。Gen1 では8 ビットまたは16 ビットにできます。Gen2 では16 ビットです。Gen3 では32 ビットです。

注:unused_tx_parallel_data は「0」に固定する必要があります。

アクティブHigh です。詳しくは、Simplified Interface を無効にした際のビットマッピングの表を参照してください。

tx_datak[3:0] [1:0] または[0] 入力

tx_coreclkin

送信データのデータとコントロールのインジケーターです。

Gen1 またはGen2 では、0 であればtx_parallel_data がデータであることを示し、1 であればtx_parallel_data がコントロールであることを示します。

Gen3 では、bit[0]tx_parallel_data[7:0] に対応し、bit[1]tx_parallel_data[15:8] に対応し、それ以降も同様に続きます。

アクティブHigh です。詳しくは、Simplified Interface を無効にした際のビットマッピングの表を参照してください。

pipe_tx_sync_hdr[(2N-1):0] 41 入力

tx_coreclkin

Gen 3 では、送信された130 ビットのブロックはデータブロックかまたはコントロール・オーダーセット・ブロックかを示します。

以下のエンコードが定義されています。

2'b10:データブロック

2'b01:コントロール・オーダーセット・ブロック

この値はpipe_tx_blk_start = 1b'1 の際に読み出されます。

128b/130b エンコードとデコードを使用したデータ送受信の詳細については、 PCI Express* Base Specification、Rev. 3.0レーンレベル・エンコーディングを参照してください。

Gen1 とGen2 のデータレートでは使用しません。

アクティブHigh

pipe_tx_blk_start[(N-1):0] 入力

tx_coreclkin

Gen3 では、TX データで128 ビットのブロックデータの開始ブロックバイト位置を指定します。PCS およびPHY-MAC (FPGA コア) 間のインターフェイスが32 ビットである際に使用します。

Gen1 とGen2 のデータレートでは使用しません。

アクティブHigh

pipe_tx_elecidle[(4N-1):0] 入力

非同期

送信出力を強制的に電気的アイドルにします。タイミング図については、Intel PHY Interface for PCI Express (PIPE) を参照してください。

Gen1:信号幅は1 ビット/レーンです。

Gen2:信号幅は2 ビット/レーンです。たとえば、PIPE Gen2x4 に接続されたMAC が1 ビット/レーンを有している場合は、PIPE への接続に次のマッピングが使用できます。{pipe_tx_elecidle[7:0] = {{2{tx_elecidle_ch3}}、{2{tx_elecidle_ch2}}、{2{tx_elecidle_ch1}}、{2{tx_elecidle_ch0}}}。ここでのtx_elecidle_* はMAC からの出力信号です。

Gen3:信号幅は4 ビット/レーンです。たとえば、PIPE Gen3x4 に接続されたMAC が1 ビット/レーンを有している場合は、PIPE への接続に次のマッピングが使用できます。{pipe_tx_elecidle[15:0] = {{4{tx_elecidle_ch3}}、{4{tx_elecidle_ch2}}、{4{tx_elecidle_ch1}}、{4{tx_elecidle_ch0}}}。ここでのtx_elecidle_* はMAC からの出力信号です。

アクティブHigh

pipe_tx_detectrx_loopback[(N-1):0] 入力

tx_coreclkin

PHY に受信検出動作の開始を指示します。パワーアップ後にこの信号をアサートすると、ループバック動作を開始します。タイミング図については、Intel PHY Interface for PCI Express (PIPE) の6.4 項を参照してください。

アクティブHigh

pipe_tx_compliance[(4N-1):0] 入力

tx_coreclkin

1 サイクルの間アサートすると、ランニング・ディスパリティーを負にセットします。コンプライアンス・パターンを送信するときに使用します。詳しくは、Intel PHY Interface for PCI Express (PIPE) Architecture の6.11 項を参照してください。

Gen1:信号幅は1 ビット/レーンです。

Gen2:信号幅は2 ビット/レーンです。

たとえば、PIPE Gen2x4 に接続されたMAC が1 ビット/レーンを有している場合は、PIPE への接続に次のマッピングが使用できます。{pipe_tx_compliance[7:0] = {{2{tx_compliance_ch3}}、{2{tx_compliance_ch2}}、{2{tx_compliance_ch1}}、{2{tx_compliance _ch0}}}。ここでのtx_compliance_* はMAC からの出力信号です。

Gen3:信号幅は4 ビット/レーンです。

たとえば、PIPE Gen3x4 に接続されたMAC が1 ビット/レーンを有している場合は、PIPE への接続に次のマッピングが使用できます。{pipe_tx_compliance[15:0] = {{4{tx_ compliance_ch3}}、{4{tx_ compliance _ch2}}、{4{tx_ compliance _ch1}}、{4{tx_ compliance _ch0}}}。ここでのtx_ compliance _* はMAC からの出力信号です。

アクティブHigh

pipe_rx_polarity[(N-1):0] 入力

非同期

1'b1 であれば、PHY 層に受信データの極性を反転させるよう命令します。

アクティブHigh

pipe_powerdown[(2N-1):0] 入力

tx_coreclkin

指定された状態にパワーステートを変更するうようPHY に要求します。パワーステートは以下のようにエンコードされます。

2'b00:P0 - 通常動作

2'b01:P0s - 低リカバリー時間、省電力ステート

2'b10:P1 - 長リカバリー時間、低消費電力ステート

2'b11:P2 - 最も低い電力ステート

pipe_tx_margin[(3N-1):0] 入力

tx_coreclkin

VOD マージンの選択を送信します。PHY-MAC が、リンク・コントロール2 レジスターの値に基づいて、この信号の値をセットします。以下のエンコーディングが定義されています。

3'b000:通常動作範囲

3'b001:フルスイング:800 - 1200 mV、 ハーフスイング:400 - 700 mV

3'b010-3'b011:予約

3'b100-3'b111:フルスイング:200 - 400mV、ハーフスイング:100 - 200 mV、その他は予約

pipe_tx_swing[(N-1):0] 入力

tx_coreclkin

トランシーバーが、pipe_tx_margin で定義されたフルスイング電圧とハーフスイング電圧のどちらを使用しているかを示します。

1'b0:フルスイング

1'b1:ハーフスイング

pipe_tx_deemph[(N-1):0] 入力

非同期

ディエンファシスの選択を送信します。PCI Express のGen2 (5 Gbps) モードでトランスミッタのディエンファシスを選択します。

1'b0:–6 dB

1'b1:–3.5 dB

pipe_g3_tx_deemph[(18N-1):0] 入力

非同期

pipe_g3_tx_deemph ポートは、イコライゼーション中のリンクパートナー・トランスミッタのディエンファシスを選択するために使用されます。18 ビットは以下の係数を指定します。

[5:0]:C-1

[11:6]:C0

[17:12]:C+1

プリセットからTX ディエンファシスへのマッピングについては、TX ディエンファシスのプリセットマッピングを参照してください。Gen3 対応のデザインでは、Gen2 データレート向けTX ディエンファシスは常に-6 dB です。Gen1 データレート向けTX ディエンファシスは常に-3.5 dB です。

詳しくは、Intel PHY Interface for PCI Express (PIPE) Architecture の6.6 項を参照してください。

注: インテル® は、 Arria® 10 レシーバーのプリセットP8 係数を送信してデータを正常に回復することを推奨しています。
pipe_g3_rxpresethint[(3N-1):0] 入力

非同期

これは、フェーズ2 (EP)/フェーズ3 (RP) でCTLE adaptation をトリガーして、10-12 未満のレシーバー・ビット・エラーレート (BER) を達成するために使用されます。

Gen1/Gen2 スピードでのGen3 対応デザインでは、これは3'b000 に設定する必要があります。

Gen3 スピードでのGen3 対応デザインでは、このポートの設定/リセットの詳細について、「Gen3 データレートでのPCIe (PIPE) 向けPHY IP コアのリンク・イコライゼーション」の項を参照してください。

pipe_rx_eidleinfersel[(3N-1):0] 入力

非同期

High にアサートされると、電気的アイドル状態は、リンクのもう一端でデバイスを検出するアナログ回路を使用して特定されるのではなく、推測されます。以下のエンコードが定義されています。

3'b0xx:現在のLTSSM ステートで電気的アイドルの推測が必要とされていない

3'b100:128 ms 内にCOM/SKP OS が存在しない

3'b101:Gen1 またはGen2 で1280 UI インターバル内にTS1/TS2 OS が存在しない

3'b110:Gen1 で2000 UI インターバル内に、Gen2 で16000 UI インターバル内に、電気的アイドル終了が存在しない

3'b111:Gen1 で128 ms ウィンドウ内に電気的アイドル終了が存在しない

注: FPGA ファブリックにレシーバーの電気的アイドル推測 (EII) を実装することを推奨します。
pipe_rate[1:0] 入力

非同期

2 ビット・エンコーディングは、次のリストで定義されています。

2'b00:Gen1 レート (2.5 Gbps)

2'b01:Gen2 レート (5.0 Gbps)

2'b10:Gen3 レート (8.0 Gbps)

pipe_sw_done[1:0] 入力

N/A

レート切り替えが完了したことを示す、マスタークロック生成バッファーからの信号です。ボンディング・モードでのみこの信号を使用します。

ノン・ボンディングのアプリケーションでは、この信号は内部でローカルCGB に接続されます。

pipe_tx_data_valid[(N-1):0] 入力

tx_coreclkin

Gen3 では、この信号はPHY に現在のクロックサイクルでtx_parallel_data を無視するよう指示するために、MAC によってデアサートされます。1'b1 の値はPHY がデータを使用する必要があることを示します。0 の値はPHY がデータを使用する必要がないことを示します。

アクティブHigh

PHY-MAC 層へのPIPE 出力
rx_parallel_data[31:0][15:0]、または[7:0] 出力

rx_coreclkin

MAC へ駆動されるRX パラレルデータです。

Gen1 では8 ビットまたは16 ビットにできます。Gen2 では16 ビットのみです。Gen3 では32 ビットです。詳しくは、Simplified Interface を無効にした際のビットマッピングを参照してください。

rx_datak[3:0][1:0]、または[0] 出力

rx_coreclkin

データとコントロールのインジケーターです。

Gen1 またはGen2 では、0 であればrx_parallel_data がデータであることを示し、1 であればrx_parallel_data がコントロールであることを示します。

Gen3 では、Bit[0]rx_parallel_data[7:0] に対応し、Bit[1]rx_parallel_data[15:8] に対応し、それ以降も同様に続きます。詳しくは、Simplified Interface を無効にした際のビットマッピングの表を参照してください。

pipe_rx_sync_hdr[(2N-1):0] 出力

rx_coreclkin

Gen3 では、送信された130 ビットのブロックがデータブロックかまたはコントロール・オーダーセット・ブロックかを示します。以下のエンコードが定義されています。

2’b10:データブロック

2'b01:コントロール・オーダーセット・ブロック

この値はpipe_rx_blk_start = 4'b0001 の際に読み出されます。128b/130b のエンコードとデコードを用いるデータ送受信について、詳しくはPCI Express Base Specification、Rev. 3.04.2.2.1 項レーンレベル・エンコーディングを参照してください。

pipe_rx_blk_start[(N-1):0] 出力

rx_coreclkin

Gen3 では、RX データで128 ビットのブロックデータの開始ブロックバイト位置を指定します。PCS およびPHY-MAC (FPGA コア) 間のインターフェイスが32 ビットである際に使用します。Gen1 とGen2 のデータレートでは使用しません。

アクティブHigh

pipe_rx_data_valid[(N-1):0] 出力

rx_coreclkin

Gen3 では、この信号はMAC に現在のクロックサイクルでrx_parallel_data を無視するよう指示するために、PHY によってデアサートされます。1'b1 の値はMAC がデータを使用する必要があることを示します。1'b0 の値はMAC がデータを使用する必要がないことを示します。

アクティブHigh

pipe_rx_valid[(N-1):0] 出力

rx_coreclkin

RX データおよびコントロールが有効である際にアサートされます。
pipe_phy_status[(N-1):0] 出力

rx_coreclkin

複数のPHY 要求の完了を通信するために使用される信号です。

アクティブHigh

pipe_rx_elecidle[(N-1):0] 出力

非同期

アサートされると、レシーバーの電気的アイドルが検出されています。

アクティブHigh

pipe_rx_status[(3N-1):0] 出力

rx_coreclkin

受信データストリームおよびレシーバー検出のために受信ステータスおよびエラーコードをエンコードする信号です。以下のエンコードが定義されています。

3'b000:受信データはOK

3'b001:SKP が1 つ追加された

3'b010:SKP が1 つ削除された

3'b011:レシーバーが検出された

3'b100:8B/10B または128b/130b のどちらかのデコードエラー、およびRX ディスパリティー・エラー (オプション)

3'b101:エラスティック・バッファーのオーバーフロー

3'b110:エラスティック・バッファーのアンダーフロー

3'b111:ディスパリティー・エラー受信、3'b100 でディスパリティー・エラーがレポートされた場合には使用されない

pipe_sw[1:0] 出力 N/A クロック生成バッファーへのレート切り替え要求を示す信号です。ボンディング・モードでのみこの信号を使用します。

ノン・ボンディングのアプリケーションでは、この信号は内部でローカルCGB に接続されます。

アクティブHigh です。詳しくは、表 188Simplified Interface を無効にした際のビットマッピングを参照してください。

表 188.  Simplified Interface を無効にした際のビットマッピングこの項にはこのプロトコル向けの推奨設定を掲載しています。パラメーター値の範囲全体については、Arria 10 のトランシーバー・ネイティブPHY IP コアの使用を参照してください。
信号名 Gen1 (TX バイト・シリアライザーおよびRX バイト・デシリアライザーが無効) Gen1 (x2 モードでのTX バイト・シリアライザーおよびRX バイト・デシリアライザー)、Gen2 (x2 モードでのTX バイト・シリアライザーおよびRX バイト・デシリアライザー) Gen3
tx_parallel_data tx_parallel_data[7:0] tx_parallel_data[29:22,7:0] tx_parallel_data[40:33,29:22,18:11,7:0]
tx_datak tx_parallel_data[8] tx_parallel_data[30,8] tx_parallel_data[41,30,19,8]
pipe_tx_compliance tx_parallel_data[9] tx_parallel_data[31,9] tx_parallel_data[42,31,20,9]
pipe_tx_elecidle tx_parallel_data[10] tx_parallel_data[32,10] tx_parallel_data[43,32,21,10]
pipe_tx_detectrx_loopbacK tx_parallel_data[46] tx_parallel_data[46] tx_parallel_data[46]
pipe_powerdown tx_parallel_data[48:47] tx_parallel_data[48:47] tx_parallel_data[48:47]
pipe_tx_margin tx_parallel_data[51:49] tx_parallel_data[51:49] tx_parallel_data[51:49]
pipe_tx_swing tx_parallel_data[53] tx_parallel_data[53] tx_parallel_data[53]
rx_parallel_data rx_parallel_data[7:0] rx_parallel_data[39:32,7:0] rx_parallel_data[55:48,39:32,23:16,7:0]
rx_datak rx_parallel_data[8] rx_parallel_data[40,8] rx_parallel_data[56,40,24,8]
rx_syncstatus rx_parallel_data[10] rx_parallel_data[42,10] rx_parallel_data[58,42,26,10]
pipe_phy_status rx_parallel_data[65] rx_parallel_data[65] rx_parallel_data[65]
pipe_rx_valid rx_parallel_data[66] rx_parallel_data[66] rx_parallel_data[66]
pipe_rx_status rx_parallel_data[69:67] rx_parallel_data[69:67] rx_parallel_data[69:67]
pipe_tx_deemph N/A tx_parallel_data[52] N/A
pipe_tx_sync_hdr N/A N/A tx_parallel_data[55:54]
pipe_tx_blk_start N/A N/A tx_parallel_data[56]
pipe_tx_data_valid N/A N/A tx_parallel_data[60]
pipe_rx_sync_hdr N/A N/A rx_parallel_data[71:70]
pipe_rx_blk_start N/A N/A rx_parallel_data[72]
pipe_rx_data_valid N/A N/A rx_parallel_data[76]
詳しくは、Intel PHY Interface for PCI Express (PIPE) Architecture の6.6 項を参照してください。
41 N はPCIe* チャネルの数です。