PCIeソリューションに向けた Arria V Avalon-MMインターフェイス: ユーザーガイド

ID 683773
日付 5/21/2017
Public
ドキュメント目次

The Physical Layer is the lowest level of the PCI Express protocol stack. It is the layer closest to the serial link. It encodes and transmits packets across a link and accepts and decodes received packets. The Physical Layer connects to the link through a high‑speed SERDES interface running at 2.5 Gbps for Gen1 implementations and at 2.5 or 5.0 Gbps for Gen2 implementations.

物理層は、次の動作に関与します。

  • リンクのトレーニング
  • レーンあたり2.5 Gbps (Gen1) および5.0 Gbps (Gen2) のスクランブリング/デスクランブルおよび8B/10Bエンコーディング/デコーディング
  • データのシリアライズおよびデシリアライズ
  • PIPE 3.0 Interfaceの動作
  • Implementing auto speed negotiation (Gen2)
  • トレーニング・シーケンスの送信およびデコード
  • ハードウェア自律速度制御の提供
  • 自動レーン反転の実装
Physical Layer Architecture

PHY Layer—The PHY layer includes the 8B/10B encode and decode functions for Gen1 and Gen2. The PHY also includes elastic buffering and serialization/deserialization functions.

物理層は、PIPE Interface Specificationによって2つの層に分割されています (上の図では垂直方向の線で分割されています)。

  • Media Access Controller (MAC) Layer—The MAC layer includes the LTSSM and the scrambling and descrambling and multilane deskew functions.
  • PHY Layer—The PHY layer includes the 8B/10B encode and decode functions for Gen1 and Gen2. The PHY also includes elastic buffering and serialization/deserialization functions.
物理層は、デジタル要素およびアナログ要素の両方を統合します。インテルは、PHYからPHYMACを分離するためにPIPEインターフェイスをデザインしました。PCI Express用のインテルStratix 10ハードIPは、PIPEインターフェイス仕様に準拠しています。
注: 内部PIPEインターフェイスは、シミュレーションで表示されます。Signal Tapなどのロジック・アナライザーを使用したハードウェアのデバッグには使用できません。Signal Tapをこのインターフェイスに接続しようとしても、デザインのコンパイルは成功しません。

PHYMACブロックは、4つの主要なサブブロックから構成されています。

  • MAC Lane - RXパスおよびTXパスの両方がこのブロックを使用します。
    • RX側では、ブロックは物理層パケットをデコードし、受信したTS1/TS2オーダーセットのタイプおよび数をLTSSMにレポートします。
    • TX側では、ブロックはDLLおよびOrdered Set and SKPサブクロック (LTSTX) からのデータをマルチプレクス化します。また、初期化中にLTSSMがレーンをディスエーブルする際に、レーン番号や強制PAD値など、レーン固有の情報も追加します。
  • LTSSM - このブロックは、各レーンのTXおよびRXトレーニング・シーケンスを追跡するLTSSMおよびロジックを実装しています。
  • 送信パスでは、グローバルおよびレーンごとの制御ビットの両方をアサートすることで、各MACレーンのサブブロックおよびLTSTXサブブロックと交信し、特定の物理層パケットを生成します。
    • 受信パスでは、各MACレーンのサブブロックによってレポートされる物理層パケットを受信します。また、マルチレーン・デスキュー・ブロックもイネーブルします。このブロックは、上位層に物理層のステータスをレポートします。
    • LTSTX (Ordered Set and SKP Generation) - このサブブロックは、物理層パケットを生成します。LTSSMブロックからの制御信号を受信し、各レーンの物理層パケットを生成します。すべてのレーンに対して同じ物理層パケットを生成し、TS1/TS2フィールドに対応するリンクまたはレーン番号に対してPADシンボルを生成します。このブロックはまた、定義済みのPIPE信号をアサートし、その結果を待機することで、PCSサブレイヤーへのレシーバー検出動作も処理します。加えて、定義済みの各タイムスロットでSKP Ordered Setを生成し、パケットの途中でSKP Ordred Setが挿入されることが無いように、TXアライメント・ブロックと交信します。
    • Deskew - このサブブロックは、マルチレーン・デスキュー機能と、初期化されたレーンとデータパス間のRXアライメントを実行します。マルチレーン・デスキューは、各レーンにシンボルを格納するための8ワードのFIFOバッファーを1つ実装しています。各シンボルには、8つのデータビット、1つのディスパリティー・ビット、および1つの制御ビットが含まれます。このFIFOはFTS、COM、およびSKPシンボルを破棄し、PADおよびIDLをD0.0データに置き換えます。8つすべてのFIFOにデータが含まれると、読み出しが発生する可能性があります。マルチレーン・デスキュー・ブロックが最初にイネーブルされる場合、各FIFOは最初のCOMが検出された後に書き込みを開始します。7クロックサイクル後もすべてのレーンがCOMシンボルを1つも検出しない場合は、リセットされ再同期プロセスが再度開始されます。これ以外の場合は、RXアライメント機能がDLLへと送信される64ビット・データ・ワードを再度作成します。