banner
ニュース センター
幅広い経験と先進の設備

ハッカーのための PCIe: リンクの構造

Aug 20, 2023

前回は、diffpair とその基本、ルーティング ルール、および diffpair に関する悪名高い PCIe の許容誤差について見てきました。 ここで、PCIe を動作させる正確な信号を見て、どのソケットで PCIe を利用できるかの概要を説明しましょう。

私は PCIe ソケットを 2 つのカテゴリに分類します。デスクトップ ソケット (デスクトップのマザーボードにある通常の 1x、16x、またはおそらく x4 PCIe ソケット) と、モバイル ソケット (mPCIe と M.2) です。 ExpressCard のようなソケットも一部の古いラップトップにはまだ搭載されていますが、それらは明らかに関連性がなくなっています。 モバイルでは、PCIe に関しては M.2 が前進です。興味があれば、以前に M.2 のすべてについて説明した短いシリーズを書きました。

これらのソケットでは、ほとんどの信号はオプションであり、一部の信号はソケット固有ですが、どの PCIe デバイスでも必要な信号がいくつかあります。 もちろん、必要な信号の最初のグループは PCIe ディフペア自体です。

どの PCIe インターフェイスにも、TX と RX という 2 種類の差分ペアがあります。 x1 リンクの場合、TX 差動ペアと RX 差動ペアが 1 つずつあり、x16 リンクにはそれぞれ 16 個必要です。 ご想像のとおり、一方の端の RX がもう一方の端の TX に接続され、その逆も同様です。これは UART に似ていますが、スパイシーです。 もちろん、何らかの種類の PCIe エクステンダーまたはソケット間アダプターを使用している場合は、交換を行う必要はありません。 PCIe を搭載した拡張規格のいずれかに合わせてボードを設計している場合、通常の名前はホスト側で付けられます。 たとえば、デスクトップ PCIe ソケットに差し込む PCB 上に PCIe イーサネット コントローラー IC を配置するとします。PCIe ソケット ボードの TX と RX をそれぞれイーサネット チップの RX と TX に接続します。

この規則に違反しているという強い兆候がある場合でも、心配する必要はありません。必ず既存のホストまたはデバイスと比較し、名前が予想どおりであるか、それとも実際に予想外に反転しているかを判断できるかどうかを確認してください。 繰り返しますが、これは UART とまったく同じです。 そうは言っても、TX ラインと RX ラインの両方に直列に配置された AC カップリング コンデンサもあります。 特に PCIe 拡張カードの場合、それが M.2 であろうとデスクトップ PCIe であろうと、慣例としてデバイス ボード上のデバイス TX (ホスト RX) ラインに配置され、ホスト TX 側 (デバイス RX) に配置されます。ホストボード。 これだけでも、設計とリバース エンジニアリングに関しては UART からの嬉しい相違点です。

3 番目の種類の差分ペアは常に存在し、REFCLK (100 MHz クロック差分ペア) です。 これは高速なクロックであり、その完全な目的についてはよくわかりませんが、どうやら TX と RX のデータのデコード、特にクロックの回復に役割を果たしているようです。GBit 範囲よりも桁違いに遅いにもかかわらず、依然として重要な役割を果たしています。 PCIe TX と RX ペアの帯域幅。 RX や TX とは異なり、REFCLK 極性を自由に交換することはできません。 一方、反転する必要がある場合に備えて、REFCLK を 1 つまたは 2 つのビアのセットに通しておけば、それほど問題はありません。それはわずか 100 MHz です。 お互いの違いを尊重することを忘れないでください。そうすればうまくいきます。

REFCLK は必須ですが、理論的には省略できる場合があり、PCIe リンクの両端で RX と TX のペアを通過したデータからこのクロックを回復することをサポートするか、独自の REFCLK を生成する必要があります。 非常に現実的に聞こえますが、REFCLK を使用しない PCIe 実装は実際には存在しません。 SD カードに PCIe をもたらし、超高速アクセス速度を実現する最近の標準である SD-Express でさえ、この道には進みませんでした。世に出ている消費者が入手可能な唯一の REFCLK レス実装は、廃止された標準である SATA-Express です。 SATA-Express ポートを備えたマザーボードが店頭に並ぶとほぼ同時に、M.2 によって実現されます。 現状では、PCIe リンクを機能させたい場合は、絶対に REFCLK が必要です。

ここで、コンデンサについてもう少し詳しく説明します。 リンクが機能するには TX と RX の両方でこれらが必要で、PCIe リンクの世代に応じて 75 nF ~ 265 nF の範囲になります。200 nF が万能な値で、緊急の場合は 100 nF で機能します。 それ以外は、0402 または 0201 パッケージを選択すれば、基本的にはそれだけです。 通常、REFCLK にはコンデンサは必要ありませんが、コンデンサを使用しても問題はなく、特定のデバイスではコンデンサが必要になる場合があります。 また、ここで不可解なことがあります。安価な大量生産された WD SSD の TX 側コンデンサが省略されているように見え、メインボード側に追加のコンデンサが追加されるまでカスタム PCIe ホスト ボードでの初期化に失敗するという文書化された事例が少なくとも 1 件あります。 これはデフォルトで行うべきものではなく、あるメーカーが勇気を持って作成した特殊な機能にすぎません。