PCI Express (PCIe) の概要
PCI Express(
Peripheral Component Interconnect Express)は、
2002年にPCI-SIGによって策定された、高速シリアルインターフェース規格です。主にパソコンの拡張カードや内部デバイスを接続するために使用され、従来のパラレルインターフェースであるPCIバスやPCI-Xバスの欠点を克服するために開発されました。書籍や文書ではPCIeと表記されることが多く、PCI-SIG自身もウェブサイト上でこの表記を使用しています。
PCI Expressは、
インテルが開発を進めていた3rd Generation I/O(3GIO)を基にしています。従来のPCIバスがパラレル方式であったのに対し、PCI Expressはシリアル方式を採用しており、より高速なデータ転送が可能になっています。
PCI Expressは、その策定以来、技術の進歩に合わせて様々なリビジョン(バージョン)が発表されています。各リビジョンごとにデータ
転送速度が向上しており、以下に主なリビジョンと
転送速度について解説します。
PCI Express 1.1 (Gen1)
2005年に発表された最初のバージョンです。1レーンあたり2.5 Gbpsの物理帯域を持ち、8b/10bエンコード方式により、実効データ
転送速度は片方向250MB/s、双方向500MB/sを実現しました。複数のレーンを束ねることで、
転送速度を向上させることも可能です。例えば、x16では片方向4GB/s、双方向8GB/sの
転送速度を実現します。
PCI Express 2.0 (Gen2)
2007年に発表されたバージョンで、PCI Express 1.1の2倍の速度を実現しました。1レーンあたり5.0 Gbpsの物理帯域を持ち、実効データ
転送速度は片方向500MB/s、双方向1GB/sです。
PCI Express 3.0 (Gen3)
2010年に策定されたバージョンで、1レーンあたり8 Gbpsの物理帯域を持ちます。エンコード方式が128b/130bに変更され、転送効率が向上しました。実効データ
転送速度は片方向0.9846 GB/s、双方向1.969 GB/sです。このバージョンから物理帯域の表記がGbpsからGT/sに変更されることが多くなりました。最大32レーンまで束ねることができ、1ポートあたりの最大実効データ
転送速度は片方向31.51 GB/s、双方向63.02 GB/sに達します。
PCI Express 4.0 (Gen4)
2017年に策定されたバージョンで、1レーンあたり16 GT/sの物理帯域を持ちます。PCI Express 3.0の2倍の速度を実現し、パケットヘッダの拡張やクレジットスケーリング機能が追加されました。
PCI Express 5.0 (Gen5)
2019年に策定されたバージョンで、1レーンあたり32 GT/sの物理帯域を持ちます。PCI Express 3.0の4倍、PCI Express 4.0の2倍の速度を実現しています。バス速度の切り替えを高速化する機能や、電源
コネクタ規格として12vHPWRが設定されました。
PCI Express 6.0 (Gen6)
2022年に策定されたバージョンで、1レーンあたり64 GT/sの物理帯域を持ちます。PCI Express 4.0の4倍、PCI Express 5.0の2倍の速度を実現しています。エンコード方式がPAM-4 242B/256Bに変更され、
転送速度が向上しました。
PCI Express 7.0 (Gen7)
2025年に策定予定のバージョンで、1レーンあたり128 GT/sの物理帯域を目指しています。PCI Express 6.0の2倍の速度を実現する予定です。
開発から普及までの経緯
パラレルインターフェースの問題点
従来のPCIバスのようなパラレルインターフェースでは、データ
転送速度を向上させるためにバス幅を広げたり、クロック周波数を高くする必要がありました。しかし、バス幅の拡大はデータ線の増加を招き、製造コストの上昇につながります。また、クロック周波数の高速化はLSIとボードの設計を複雑化させ、コストが増加するという問題がありました。
シリアルインターフェースの台頭
これらの問題を解決するために、シリアルインターフェースが注目されるようになりました。シリアルインターフェースは、1本の信号線でデータを伝送するため、配線がシンプルで高速なデータ転送に適しています。
IBMが開発した8b/10b技術は、シリアル転送を実用的なものとし、
イーサネットなどで広く採用されました。
PCI Expressの登場
インテルは、I/Oインターフェースの
転送速度不足を解消するため、シリアルインターフェースであるNGIO (Next Generation I/O) の開発を開始しました。その後、
ヒューレット・パッカードや
IBMも同様のインターフェースを開発しましたが、最終的に統合され、PCI Expressとして仕様化されました。PCI Expressは、
ソフトウェアレベルでPCIバスとの
互換性を保ちながら、高速なデータ転送を実現しました。
PCI Expressは、従来のPCIと
互換性があるため、PCIバスをサポートするOSでは、特に変更なしにPCI ExpressデバイスをPCIデバイスとして使用できます。
普及
PCI Expressは、主にパソコンの
マザーボードに実装されており、特に
ビデオカードのインターフェースとして広く普及しています。
2005年頃にはAGPに代わり、
ビデオカードの主流インターフェースとなりました。また、ATAカードなどのインターフェースカード類もPCI Express (x1) に移行が進んでおり、現在では多くのマルチメディア関連商品がPCI Expressに対応しています。
仕様
PCI Expressのデータ転送は、ネットワークでのパケット送受信と同様に行われます。アーキテクチャは、トランザクションレイヤ、データリンクレイヤ、物理レイヤの3層構造になっています。
トランザクションレイヤ
トランザクションレイヤは、TLP(Transaction Layer Packet)の生成と復号を行います。TLPには、リードやライトといったコマンド、アドレス、データなどが含まれています。また、接続相手とのフロー制御も行います。
データリンクレイヤ
データリンクレイヤは、トランザクションレイヤと物理レイヤの間で、PCI Expressリンクの管理、エラー検出と訂正を行います。データリンクレイヤは、TLPにシーケンス番号とCRCを付加し、物理レイヤに渡します。
物理レイヤ
物理レイヤは、シリアル転送を担当します。各リビジョンごとにエンコード方式や
転送速度が異なります。
物理形状
PCI Expressカードの物理形状は、PCI Express Card Electromechanical Specificationで規定されています。カードエッジを含む
コネクタの仕様も規定されています。スロットの色は標準化されておらず、
マザーボードメーカーによって異なります。
ロープロファイルPCI Express
ロープロファイルPCI Expressは、カードの物理形状がPCI Expressより小さい規格です。
ピンアサイン
PCI Expressカードのエッジ
コネクタにおけるピンの役割は、規格で定められています。PRSNT1#とPRSNT2#ピンは、
ホットスワップ時の接触タイミングを調整するために若干短くなっています。
電力供給
PCI Expressスロットからの供給電力は最大75Wですが、消費電力が大きい
ビデオカードなどでは、補助電源プラグが併用されます。PCI Express 5.0では、16ピンで最大600Wを供給可能な12vHPWR
コネクタが追加されました。
欠点
相互接続性の問題
PCI Expressでは、x16仕様のカードをx8仕様のスロットに挿入できないなど、物理的な制限があります。また、一部の
マザーボードでは、エッジフリーと称してx16スロットに下位のカードを挿入可能にしているものもありますが、カード端子の保護などの問題が残ります。
供給電力の不足
ビデオカードの消費電力が増加するにつれ、PCI Expressスロットからの供給電力だけでは足りなくなり、補助電源プラグの使用が必須となっています。
重量物
ハイエンド
ビデオカードの大型化により、重量が重くなり、スロットが破損したり、カードが垂れ下がったりする問題も報告されています。
利点
PCI Expressの利点として、レーン数の柔軟性が挙げられます。カードエッジ
コネクタがx16形状でもx1モードで動作可能で、上位のスロットに下位のカードを挿入することも可能です。また、
チップセットのサポートレーン数の範囲内で、ユーザーが任意にレーン数を設定することも可能です。
まとめ
PCI Expressは、高速なデータ転送を可能にする重要なインターフェース規格であり、パソコンの性能向上に大きく貢献しています。技術の進歩とともに、今後もさらなる高速化が期待されます。