PCI Express* 用のインテル® Stratix® 10 HタイルおよびLタイル Avalon® メモリー・マップド・ハードIPユーザーガイド

ID 683667
日付 6/03/2020
Public
ドキュメント目次

A.3. 物理層

物理層は、PCI Expressプロトコルスタックの最下位レベルに位置しています。これは、シリアルリンクに最も近い層でもあります。リンクを介してパケットをエンコードおよび送信し、受信したパケットを受け取り、デコードします。物理層は、Gen1実装では2.5 Gbps、Gen2実装では2.5または5.0 Gbps、Gen3実装では2.5、5.0または8.0 Gbpsで動作する高速SERDESインターフェイスを介してリンクに接続します。

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

  • リンクのトレーニング
  • レーンあたり2.5 Gbps (Gen1)、5.0 Gbps (Gen2)、または8.0 Gbps (Gen3) の128b/130bエンコーディング/デコーディング用のスクランブル/デスクランブルおよび8B/10Bエンコーディング/デコーディング
  • データのシリアライズおよびデシリアライズ
  • イコライゼーション (Gen3)
  • PIPE 3.0 Interfaceの動作
  • 自動速度ネゴシエーションの実装 (Gen2およびGen3)
  • トレーニング・シーケンスの送信およびデコード
  • ハードウェア自律速度制御の提供
  • 自動レーン反転の実装

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

  • PHYMAC - MAC層には、LTSSM、スクランブリング/デスクランブル、バイトの並び替え、およびマルチレーン・デスキュー機能が含まれています。
  • PHY Layer - PHY層には、Gen1およびGen2用の8B/10Bエンコードおよびデコード機能が含まれています。Gen3用には、128b/130bエンコードおよびデコード機能も含まれています。PHYには、エラスティック・バッファリングおよびシリアライズ/デシリアライズ機能も含まれています。
物理層は、デジタル要素およびアナログ要素の両方を統合します。インテルは、PHYからPHYMACを分離するためにPIPEインターフェイスをデザインしました。PCI Express用のインテルStratix 10ハードIPは、PIPEインターフェイス仕様に準拠しています。
注: 内部PIPEインターフェイスは、シミュレーションで表示されます。Signal Tapなどのロジック・アナライザーを使用したハードウェアのデバッグには使用できません。Signal Tapをこのインターフェイスに接続しようとしても、デザインのコンパイルは成功しません。
図 82. 物理層のアーキテクチャー

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ビット・データ・ワードを再度作成します。