PCI Expressとは | 第1回 - PCI Expressについて 入門編
........
- 更新日
- 2023.05.09
- 公開日
- 2021.08.24

これまでPCI Expressに接点がない初心者の方向けに、PCI Express関連の基本的な技術ワードの意味を理解して頂くことを狙いとした連載です。
INDEX
1. PCI Expressとは
高性能GPUを搭載したパソコンや、Wi-Fiに対応したデバイスなどに用いられる高速インターフェースで、実は生活のあちこちにある電子機器で使われているPCI Express(読み方:ピー・シー・アイ・エクスプレス)、一般的にはPCIeやPCI-E(読み方:ピー・シー・アイ・イー)と短縮して呼ばれることもあります。

PCI Expressは、標準化規格団体PCI-SIG(Peripheral component interconnect)によって2002年に規格化されました。それまで10年以上に渡りパーソナルコンピュータ分野で採用されていたPCIバスを代替する、汎用インターコネクト技術として登場したPCI Expressは、これまでで最も普及したインターフェースの1つと言えます。

PCI Expressの普及はパーソナルコンピュータ分野にとどまらず、産業機器、民生機器、サーバ、ストレージを始めとする広い分野に拡がり、2022年に通信速度64Gbpsを実現する規格の策定が行われました。 PCI Expressは最初の規格化から20年以上経った今なお高速化を続けており、現在更なる通信速度アップとなる128Gbpsを実現する新規格が検討されております。この新規格は、2025年内に策定される予定です。(2023年現在)

また高速通信に加えて、PCI Expressインターフェースをもつデバイスの増加、さらには高い信頼性の面から、最近では車載、航空分野などのアプリケーションにおいても、PCI Expressの採用が検討されております。
2. PCI-SIG(Peripheral Component Interconnect Special Interest Group)とは

PCI(Peripheral Component Interconnect)バスとその関連規格の策定・管理を行っている組織で、1992年に設立されました。PCIバスは当初Intel社の独自規格でしたが、業界標準規格にすべくPCI-SIGに引き継がれました。現在はPCI Expressの策定・管理も行っております。
PCI-SIG : https://pcisig.com/
3. PCI Express規格

PCI Expressは通信スピードごとに規格化され、それぞれGeneration X(Gen X、Xは数字)と呼ばれています。また接続時には、高速通信に最適な条件を選択するためのトレーニングシーケンスが自動的に行われます。
2002年 Ver.1.0(Gen1)2.5Gbps
2007年 Ver.2.0(Gen2) 5Gbps
2010年 Ver.3.0(Gen3) 8Gbps
2017年 Ver.4.0(Gen4)16Gbps
2019年 Ver.5.0(Gen5)32Gbps
2022年 Ver.6.0(Gen6)64Gbps
2025年 Ver.7.0(Gen7)128Gbps(2025年規格策定完了予定)
4. PCI Expressが必要とされた理由

PCI ExpressはPCIバスの後継規格です。従来からあるPCIバスは、パーソナルコンピュータ市場で標準的に採用されているパラレルインターフェースで、マザーボード上のデバイス間接続や、マザーボードと拡張カード間のデバイス接続で使われておりました。当初は32bit/33MHz(転送速度 133MB/s)でしたが、のちに64bit/66MHz(転送速度 533MB/s)に引き上げられました。このように、PCIバスの転送速度向上を図るため、以下の2つの手法が取られています。
- クロックの高速化
- データバス幅を拡大
しかしながら、これらの手法による高速化には限界があります。クロックの高速化では、データ線上の各データとクロックの同期をとる必要があり、またデータバス幅の拡大では、デバイスのピン数の増加やデータ線の増加によりボード設計が難しくなりました。
その後、高速CPUや高性能グラフィックス、高速メモリなどを必要とするアプリケーションの普及により、PCIバスでは転送速度が足りなくなってしまいました。そこで新たに誕生した技術がPCI Expressです。 PCI ExpressはPCIバスの諸問題を解決し、更なる高速データ転送を実現しています。
5. インターフェースの進化
低速シリアルインターフェース(例:SPI)
低速なシリアルインターフェースでは、1本のクロック信号に同期する1本のデータ線を使用して、データの送受信を行います。この方式は、以下のような特徴をもっています。
- 信号線数1ペアとクロック1本なので、信号線の長さを合わせ易い
- 信号線が少ないため、配線をセットで引き回し易く、また各信号線のインダクタ・キャパシタ成分の差分が小さくなるので、各信号線の伝搬遅延時間に大きな差が生じにくい

パラレルインターフェース(例:PCIバス)
シリアルインターフェースのデータ線を複数に拡張し、複数のデータ線を1つのクロック信号に同期してデータの送受信を行うものが、パラレルインターフェースです。送信側では各信号線のデータが同時に出力され、また受信側で同時に受信されることを前提にしています。この方式には、以下のような特徴があります。
- データ線を増やすことで、伝送帯域を大きくすることが出来る
- 信号線が複数になることで、配線の引き回しに制約が発生し、各信号の配線長に差ができやすい
- 信号線毎の各インダクタ成分、キャパシタ成分が異なることで、信号が受信側に届くまでの伝搬遅延時間に差異が生じてタイミングを合わせにくくなる
このようにパラレルインターフェースには、データの送受信を正しく行うために転送速度が上げにくい、という欠点があります。

高速シリアルインターフェース
パラレルインターフェースではデータ転送速度を上げにくくなったため、シリアルインターフェースで高速化が図られました。
PCI Express、USB 3.2などの最近の高速シリアルインターフェースでは、データ信号にクロック信号成分を載せ、1本の線でデータとクロックを送る方式を採用しております。複数信号線のタイミングを合わせる必要が無いためクロック周波数を上げやすく、伝送帯域を大きくし易い特徴があります。

6. PCI Expressの特徴
PCI Expressは差動信号によるシリアル通信方式を採用しており、デバイスをPeer-to-Peerで接続します。
PCI Expressのシステム構成は下図のとおりです。RC(Root Complex)を起点とするツリー構造で、EP(End Point)で終端します。
名称 | 内容 |
---|---|
RC(Root Complex) | PCI Expressシステムの最上位に位置し、CPU、メモリ、PCI Expressデバイスを接続するためのブリッジ機能を備える |
Switch | PCI Expressのポート数を増やすためのデバイス |
EP(End Point) | PCI Expressシステムの最下位に位置し、Root ComplexやSwitchに接続され、PCI Expressを終端する |
例
・Gigabit Ethernet Controller
・USB Host Controller
・NVRAM(Non-Volatile RAM) など

PCI Expressデバイス間の接続
- デバイス間接続を行う部分は「ポート」、デバイス間接続のことは「リンク」、送受信の差動信号線のペアを「レーン」と呼びます。
- レーン数を2, 4, 8, 16・・・と増やすことで、データ転送量を増やすことが可能です。(例:1レーンが5Gpbsの場合、2レーンにすると10Gbps)
ノイズに強い差動通信
差動通信とは、反転した2本の信号線を用いて1つの信号を伝送する方式です。2本の信号線の電圧差の極性が正(+)となるか負(-)となるかによって、HighレベルとLowレベルの判別を行います。信号線間の電圧差を使うことで、これらの信号線に外来ノイズが混入しても相殺してキャンセル出来るため、外来ノイズ耐性が強い通信方式といえます。
異なるGeneration間の接続
PCI Expressには、Generation間の相互互換性がありますので、異なるGenerationのデバイス間でも通信することが可能です。この場合の通信速度は、Generationが低いデバイスに合わせられます。
パケット・フォーマット
PCI Expressでは、ユーザデータはパケットの形で伝送されます。Header部分でパケットの届け先デバイスが指定されており、Switchデバイスではその情報を元にルーティング(出力ポートを決定)することで、指定されたデバイスにパケットを届けることが出来ます。
7. Generationとレーン数と転送速度の関係
PCI Expressのデータ転送では、
- Gen1/Gen2は8b/10bエンコーディング (8bitのデータを10bitに変換する符号化)
- Gen3/Gen4/Gen5/Gen6は128b/130bエンコーディング (128bitのデータを130bitに変換する符号化)
を行います。
この符号化により転送速度(=物理層での転送速度)に対する実効データ転送速度(=有効なデータの転送速度)は、Gen1/Gen2 では20%、Gen3/Gen4/Gen5/Gen6では1.538%低下することになります。
レーン数 | 1レーン | 2レーン | 4レーン | 8レーン | |
---|---|---|---|---|---|
Gen1 | 転送速度(片方向) | 2.5Gbps | 5.0Gbps | 10.0Gbps | 20.0Gbps |
実効データ転送速度 | 2.0Gbps | 4.0Gbps | 8.0Gbps | 16.0Gbps | |
Gen2 | 転送速度(片方向) | 5.0Gbps | 10.0Gbps | 20.0Gbps | 40.0Gbps |
実効データ転送速度 | 4.0Gbps | 8.0Gbps | 16.0Gbps | 32.0Gbps | |
Gen3 | 転送速度(片方向) | 8.0Gbps | 16.0Gbps | 32.0Gbps | 64.0Gbps |
実効データ転送速度 | 7.877Gbps | 15.754Gbps | 31.508Gbps | 63.015Gbps | |
Gen4 | 転送速度(片方向) | 16.0Gbps | 32.0Gbps | 64.0Gbps | 128.0Gbps |
実効データ転送速度 | 15.754Gbps | 31.508Gbps | 63.015Gbps | 126.031Gbps | |
Gen5 | 転送速度(片方向) | 32.0Gbps | 64.0Gbps | 128.0Gbps | 256.0Gbps |
実効データ転送速度 | 31.50Gbps | 63.01Gbps | 126.03Gbps | 252.06Gbps | |
Gen6 | 転送速度(片方向) | 64.0Gbps | 128.0Gbps | 256.0Gbps | 512.0Gbps |
実効データ転送速度 | 60.5Gbps | 121.0Gbps | 242.0Gbps | 484.0Gbps | |
Gen7 | 転送速度(片方向) | 128.0Gbps | 256.0Gbps | 512.0Gbps | 768.0Gbps |
実効データ転送速度 | 121.0Gbps | 242.0Gbps | 484.0Gbps | 726.0Gbps |
レーン数 | 12レーン | 16レーン | 32レーン | 64レーン | |
---|---|---|---|---|---|
Gen1 | 転送速度(片方向) | 30Gbps | 40.0Gbps | 80.0Gbps | 未規定 |
実効データ転送速度 | 24Gbps | 32.0Gbps | 64.0Gbps | 未規定 | |
Gen2 | 転送速度(片方向) | 60Gps | 80.0Gbps | 160.0Gbps | 未規定 |
実効データ転送速度 | 48Gbps | 64.0Gbps | 128.0Gbps | 未規定 | |
Gen3 | 転送速度(片方向) | 96Gbps | 128.0Gbps | 256.0Gbps | 未規定 |
実効データ転送速度 | 94.52Gbps | 126.031Gbps | 252.062Gbps | 未規定 | |
Gen4 | 転送速度(片方向) | 192Gbps | 256.0Gbps | 512.0Gbps | 1024Gbps |
実効データ転送速度 | 189.04Gbps | 252.062Gbps | 504.123Gbps | 1008.25Gbps | |
Gen5 | 転送速度(片方向) | 384.0Gps | 512.0Gbps | 1024.0Gbps | 2048.0Gbps |
実効データ転送速度 | 378.09Gbps | 504.12Gbps | 1008.24Gbps | 2016.49Gbps | |
Gen6 | 転送速度(片方向) | 768.0Gbps | 1024.0Gbps | 2048.0Gbps | 4096.0Gbps |
実効データ転送速度 | 726.0Gbps | 968.0Gbps | 1936.0Gbps | 3872.0Gbps | |
Gen7 | 転送速度(片方向) | 1024.0Gbps | 2048.0Gbps | 4096.0Gbps | 8192.0Gbps |
実効データ転送速度 | 968.0Gbps | 1936.0Gbps | 3872.0Gbps | 7744.0Gbps |
-
図1-8. x1レーンを使用するEthernetボード例 -
図1-9. x16レーンを使用するグラフィックボード例
8.まとめと次回の内容

今回は、PCI Expressの基本的な仕様について説明致しました。
第2回は、PCI Expressの拡張性とマルチホストについて説明します。