インテル® Stratix® 10 LタイルおよびHタイル・トランシーバーPHYユーザーガイド

ID 683621
日付 3/03/2020
Public
ドキュメント目次

2.5.1.2.1. Gen1/Gen2の機能

PIPEコンフィグレーションでは、各チャネルは、PHY-MAC層とトランシーバー・チャネルPCSおよびPMAブロックとの間でデータ、コントロール、およびステータス信号を転送するPIPEインターフェイス・ブロックを有しています。PIPEコンフィグレーションは、PIPE 2.0仕様に基づいています。PIPEコンフィグレーションを使用する場合には、ソフトIPを使用するPHY-MAC層をFPGAファブリックに実装する必要があります。

Gen1 (2.5 Gbps) とGen2 (5 Gbps) との間の動的切り替え

PIPEコンフィグレーションで、ネイティブPHY IPコアはPCIe仕様で規定されているRATE信号と機能的に等しい入力信号 pipe_rate[1:0] を提供します。この入力信号 pipe_rate[1:0] の値を2'b00から2'b01へ遷移させると、Gen1からGen2へのデータレートの切り替えを開始します。この入力信号を2'b01から2'b00へ遷移させると、Gen2からGen1へのデータレートの切り替えを開始します。

トランスミッターの電気的アイドルの生成

PIPEインターフェイス・ブロックは、電気的アイドルの入力信号がアサートされるとトランスミッター・バッファーを電気的アイドルステートにします。電気的アイドル時のトランスミッター・バッファーの差動モードおよびコモンモード出力電圧レベルは、PCIe Gen1およびGen2両方のデータレートのPCIe Base Specification 2.0に準拠しています。

PCIe仕様では、特定のパワーステートでトランスミッター・ドライバーが電気的アイドルとなる必要があります。異なるパワーステートで必要となる入力信号レベルの詳細については、パワーステート・マネジメントを参照してください。

パワーステート・マネジメント

消費電力を最小限にするために、物理層デバイスは、以下のパワーステートをサポートしている必要があります。

表 99.  PCIe仕様で定義されているパワーステート
パワーステート 説明
P0 パケットデータがPCIeリンクで転送されている際の通常動作ステートです。
P0s、P1、P2 PHY-MAC層が、これらの低消費電力ステートに遷移するよう物理層に指示します。

PIPEインターフェイスは、PIPEコンフィグレーションでコンフィグレーションされた各トランシーバー・チャネル用に pipe_powerdown 入力ポートを提供します。

PCIe仕様は、P0パワーステートが低消費電力ステートに遷移した際に、物理層デバイスが省電力措置を行うことを要求しています。インテルStratix 10トランシーバーには、低消費電力ステートでトランスミッター・バッファーを電気的アイドルモードにする以外の省電力措置は実装されていません。

コンプライアンス・パターン送信をサポートするための8B/10Bエンコーダーの使用

PCIeトランスミッターは、LTSSM (Link Training and Status State Machine) がPolling.Complianceサブステートに入るとコンプライアンス・パターンを送信します。Polling.Complianceサブステートは、トランスミッターがPCIeの電圧およびタイミングの仕様に電気的に準拠しているかを評価します。

レシーバーステータス

PCIe仕様では、PHYが3ビットのステータス信号 pipe_rx_status[2:0] のレシーバーステータスをエンコードする必要があります。このステータス信号は、PHY-MAC層の動作のために使用されます。PIPEインターフェイス・ブロックは、トランシーバー・チャネルのPCSおよびPMAブロックからステータス信号を受信し、pipe_rx_status[2:0] 信号のステータスをFPGAファブリックにエンコードします。この pipe_rx_status[2:0] 信号上のステータス信号のエンコーディングは、PCIe仕様に適合しています。

レシーバー検出

PIPEインターフェイス・ブロックは、受信検出動作のための入力信号 pipe_tx_detectrx_loopback を提供します。PCIeプロトコルは、LTSSMのDetectステート中にこの信号がHighであることを要求します。P1パワーステートで pipe_tx_detectrx_loopback 信号がアサートされると、PIPEインターフェイス・ブロックはそのチャネルのトランスミッター・ドライバーにコマンド信号を送信し、受信検出シーケンスを開始します。P1パワーステートでは、トランスミッター・バッファーは常に電気的アイドルステートである必要があります。コマンド信号を受信すると、受信検出回路はトランスミッター・バッファーの出力にステップ電圧を生成します。配線上のステップ電圧の時定数は、遠端にPCIe入力インピーダンス要件に準拠するアクティブなレシーバーがあれば、大きくなります。受信検出回路は、レシーバーが存在するかどうかを判断するためにこの時定数を監視します。

注: 受信検出回路を確実に機能させるために、オンチップ終端を使用する必要があります。さらに、シリアルリンクのACカップリング・キャパシター、およびシステムで使用されるレシーバー終端の値がPCIe Base Specification 2.0に適合している必要があります。

PIPEコアは、PIPE 2.0仕様にある通り、1ビットのPHYステータス信号 pipe_phy_status および3ビットのレシーバーステータス信号 pipe_rx_status[2:0] を提供し、レシーバーが検出されたかどうかを示します。

Gen1およびGen2のクロック補償

PIPE 0 ppm

PIPE仕様に則って、インテルStratix 10レシーバーチャネルは、アップストリームのトランスミッター・クロックとローカル・レシーバー・クロックとの間で最大±300 ppmまでのわずかなクロック周波数差異を補償するために、レートマッチFIFOを備えています。

PIPEクロックの補償にあたり、以下のガイドラインについて考慮します。

  • SKPオーダーセットで1つのスキップ (SKP) シンボルを挿入または削除します。
    注: SKPシンボルはK28.0としても表され、2つの通信ポート間の異なるビットレートを補償するために使用されます。
  • 削除後にSKPオーダーセット内のSKPシンボルの数に最小限度が課せられます。送信されるSKPオーダーセットは、単一のCOM (K28.5) シンボルとそれに続く3つのSKPシンボルで構成されます。削除後にオーダーセットが空のCOMケースを有することがあります。
  • 挿入後にSKPオーダーセットのSKPシンボル数に最大限度が課せられます。挿入後にオーダーセットが5つ以上のシンボルを有することがあります。
  • INSERT/DELETEケースでは、挿入または削除が発生したSKPオーダーセットのCOMシンボルにフラグステータスが生じます。
  • FULL/EMPTYケースでは、文字が挿入または削除された箇所にフラグステータスが生じます。
    注: PIPEインターフェイスは、フラグの値を適切な pipe_rx_status 信号に変換します。
  • PIPEモードは同期システムで使用できる「0 ppm」コンフィグレーション・オプションも有します。このコンフィグレーションでは、Rate Match FIFO Blockによるクロック補償は想定されていませんが、レイテンシーは最小限に抑えられます。
図 93. レートマッチ削除以下の図に、2つの/K28.0/ SKPシンボルを削除する必要があるケースのレートマッチ削除の例を示します。受信したSKPオーダーセット1つにつき、1つのみの/K28.0/ SKPシンボルが削除されます。
図 94. レートマッチ挿入以下の図に、2つのSKPシンボルを挿入する必要があるケースのレートマッチ挿入の例を示します。受信したSKPオーダーセット1つにつき、1つのみの/K28.0/ SKPシンボルが挿入されます。
図 95. レートマッチFIFOのフルPIPEモードのレートマッチFIFOは、FIFOがフルになる原因となったデータバイトを自動的に削除し、後続のデータバイトと同期的に pipe_rx_status[2:0] = 3'b101を駆動します。以下の図に、PIPEモードでのレートマッチFIFOのフル状態を示します。レートマッチFIFOはデータバイトD4を受信した後でフルになります。
図 96. レートマッチFIFOの空レートマッチFIFOは、FIFOが空になる原因となったデータバイトの後にEDBシンボルの/K30.7/ (9'h1FE) を自動的に挿入し、挿入した/K30.7/ (9'h1FE) と同期的に pipe_rx_status[2:0] = 3'b110を駆動します。以下の図に、PIPEモードでのレートマッチFIFOの空の状態を示します。レートマッチFIFOはデータバイトD3を読み出した後で空になります。

PIPEモードは同期システムで使用できる「0 ppm」コンフィグレーション・オプションも有しています。このコンフィグレーションではレートマッチFIFOによるクロック補償は想定されていませんが、レイテンシーは最小限に抑えられます。

PCIeリバース・パラレル・ループバック

PCIeリバース・パラレル・ループバックは、Gen1、Gen2、およびGen3データレートでのみ使用可能です。受信したシリアルデータは、レシーバーCDR、デシリアライザー、ワードアライナー、およびレートマッチFIFOバッファーを通過します。データは次にトランスミッター・シリアライザーにループバックされ、トランスミッター・バッファーを介して送出されます。受信したデータは、rx_parallel_data ポートを介してFPGAファブリックでも使用可能です。このループバック・モードは、PCIe仕様2.0に基づいています。インテルStratix 10デバイスは、このループバック・モードをイネーブルするための入力信号 pipe_tx_detectrx_loopback を提供します。

注: PIPEコンフィグレーションでサポートされるのは、このループバック・オプションのみです。
図 97. PCIeリバース・パラレル・ループバック・モードのデータパス