前回の記事「電子デバイスの高速道路 PCI Expressの基礎知識 第1章」では、PCI Express(PCIe)がポイント・ツー・ポイント接続を採用した高速シリアルインターフェイスであり、レーン数によって帯域が決まること、そして世代ごとに通信速度が向上してきたことを解説しました。
では、そのPCIeは実際のシステムの中で、どのような構造でデバイス同士を接続しているのでしょうか。また、NVMe SSDやGPUなどを次々と追加していく中で、PCIeレーンが足りなくなった場合、どのように拡張しているのでしょうか。
本章では、PCIeの接続構造であるトポロジー(階層構造)を整理したうえで、限られたレーン資源を効率よく使うための重要な要素であるPCIeスイッチの役割と使いどころを解説します。AIサーバーや車載システムなど、近年の高性能システム設計を理解するための基礎として、ぜひ読み進めてください。
PCIeのトポロジー(接続形態)
PCIeは複数のデバイスを“木(ツリー)構造”で接続する階層型のトポロジーを採用しています。CPU(またはSoC)を起点として、スイッチやブリッジを介しながら下位のデバイスへ枝分かれしていく構造になっており、どのデバイスがどこに接続されているかを把握しやすい点が特徴です。
PCIeのトポロジー構造
この階層構造を理解するうえで、まずは主要な構成要素を整理しておきましょう。
ルートコンプレックス
ルートコンプレックス(Root Complex: RC)は、CPUおよびメモリサブシステムとPCIeデバイスをつなぐ最上位 (Root)の役割を担います。多くの場合、CPUやSoC内部に統合されており、PCIeの階層構造の起点となります。
ルートコンプレックスは複数のルートポートを持ち、それぞれのポートからPCIeリンクが伸びてデバイスやスイッチへ接続されます。ここが、ツリー構造の枝分かれの起点です。
エンドポイント
エンドポイント(Endpoint: EP)は、PCIeを通じて実際の機能を提供するデバイスです。
代表例として、NVMe SSD(高速ストレージ)やGPU、NIC(ネットワークインターフェイスカード)、FPGAなどが挙げられます。
エンドポイントは、ルートコンプレックスに直接接続される場合もあれば、PCIeスイッチ配下にぶら下がる形で接続される場合もあります。
ブリッジ
ブリッジ(Bridge)は、PCIeと他のインターフェイス規格を接続するための部品です。
ブリッジは”通訳“のような役割を担い、USBやSATAなど、PCIeとは異なる通信方式のデバイスをPCIe側へ接続する際に使われます。
スイッチ
スイッチ(Switch)は、1本のPCIeリンクを複数の下流デバイスへ“分岐”させるための部品です。PCIeは基本的にポイント・ツー・ポイント接続のため、スイッチを使わない場合、1つのルートポートには原則1デバイスしか接続できません。
一方、スイッチを使えば、1本の上流リンクを複数の下流デバイスに分配することが可能になります。
PCIeスイッチが必要になる理由
CPU(または SoC)が搭載するPCIeレーン数には上限があります。
NVMe SSD、Wi‑Fiモジュール、Thunderboltコントローラーなどを順に増やしていくと、空きレーンが減り、拡張性と帯域の両立が難しくなります。
特に近年は、AI処理用途では複数GPUや多数のNVMe SSDを1台のシステムに集約する構成が増えています。その結果、PCIeレーンの不足はより現実的な課題になっています。
このような場合に有効なのが PCIeスイッチ です。
PICeスイッチによりPCIeレーンを拡張するイメージ
例として、AIトレーニング用サーバーに以下のデバイスを搭載したいケースを考えてみます。
- GPU (16レーン) ×2台
- NIC (16レーン) ×1枚
- NVMe SSD (4レーン) ×4枚
CPUから利用できるPCIeレーンが16本しかない場合、GPU (16レーン)を1台接続した時点で他デバイスを追加できなくなります。ここで、上流を16レーンで受け、下流に合計 64レーンを配分できるPCIeスイッチを使うと、次のような構成が可能になります。
このように、スイッチを使うことで、限られたレーン資源を効率よく活用できます。
PCIeスイッチはどう動くか ― なぜ通信が混雑しない?
PCIeスイッチのポートは、大きく次の2種類に分けられます。
- 上流ポート(Upstream Port):ルートコンプレックス側と接続するポート
- 下流ポート(Downstream Port):エンドポイントや下位スイッチと接続するポート
PCIeスイッチは「上流からの通信を適切な下流へ振り分けるハブ」のような役割を果たします。さらに、下流ポートに別のスイッチを接続すれば、PCIeバスを階層的に拡張することも可能です。
PCIeスイッチを使って複数のデバイスを接続すると、「通信が混雑しないのか」「接続先デバイスはどうやって判断しているのか」と疑問に感じるかもしれません。
PCIeスイッチには、こうした問題を防ぐための仕組みが組み込まれています。
アドレス空間の管理
スイッチは、起動時にEnumeration(バス探索)※ によってルートコンプレックスから配布されるコンフィグレーション情報を保持し、配下のエンドポイントが使用するアドレス空間や識別情報を管理します。
これにより、ホストから見ると、スイッチ配下のデバイスがあたかも直接接続されているように見えます。
パケットのルーティング
PCIeでは、データはTLP(Transaction Layer Packet)というパケット形式で転送されます。TLPのヘッダーには、通信の種類や宛先を示す情報が含まれており、PCIeスイッチはこれをもとに転送先を判断します。
スイッチは受け取ったTLPのヘッダーに含まれるBDF※情報を読み取り、Enumeration時に内部に保持している「下流ポートと接続デバイスの対応関係」と照合することで、適切な下流ポートへパケットを正確に転送します。
- Enumeration/BDF
PCIeでは、起動時にルートコンプレックスによって Enumeration(バス探索) が行われます。Enumerationでは、ルートコンプレックが下流へ Configuration Request パケットを送信し、スイッチやエンドポイントを検出します。その後、各デバイス・ポートに一意なBDF(バス番号/デバイス番号/ファンクション番号)を割り当て、この情報が各デバイスのコンフィグレーション空間に書き込まれます。
例として、先ほどのAIトレーニング用サーバーで、ルートコンプレックからのTPLをBDF情報を使ってデバイスGPU0までルーティングするイメージを図示しました。
TLPはBDF情報によりGPU0にルーティング
このように、アドレス空間の管理で設定された情報と、TLPヘッダーに含まれる宛先情報を組み合わせることで、PCIeスイッチは多数のデバイスが接続された構成でも、通信の衝突や誤配送を防ぎながら高速なデータ転送を実現しています。
PCIeスイッチの利用例
PCIeスイッチは、データセンターから車載システム、一般向けPCアクセサリまで幅広く利用されています。ここでは、代表的な3つの例を紹介します。
1.データセンター/サーバー:NVMe SSDの拡張
データセンターでは、NVMe SSDは大量データを低遅延かつ高並列でCPUやGPUへ供給する中核ストレージとして使われます。近年は1台のサーバーで数十TB規模、システム全体ではペタバイト級のデータを扱うケースも増えています。一方、NVMe SSDは1枚あたりの容量に上限があるため、必要な総容量と性能を確保するには複数SSDの併用が不可欠です。
PCIeスイッチ搭載の拡張カードを使えば、1つのx4スロットから複数のNVMe SSDを接続でき、CPUからは各SSDが直接接続されているように見えるため、高密度かつ高速なストレージ構成を実現できます。
利用例1 SSD拡張カード
2.車載システム:駐車支援カメラ・LiDARの高速データ伝送
車載システムでは、カメラやミリ波レーダーなどのセンサーから生成される高解像度・大容量データを、低遅延で中央のSoCへ伝送することが求められます。特にADASや自動運転では、複数センサーのデータをリアルタイムで統合・処理する必要があり、従来のCANや低速バスでは帯域が不足します。また、インフォテインメントSoCでも、高精細映像やナビゲーションデータを扱うため、帯域要求は年々高まっています。
PCIeスイッチを用いることで、複数のセンサーやSoCを高速に接続でき、各デバイスは独立したPCIeエンドポイントとして認識されます。これにより、車載システムでもサーバーに近い高速・低遅延なデータ伝送構成を実現できます。
利用例2 車載システム
3.コンシューマー: 外付けGPU(eGPU)など
薄型ノートPCは筐体や消費電力の制約から、高性能GPUを内蔵できない場合があります。そこで、USB4やThunderbolt経由で外付けGPU(eGPU)を接続する構成が使われます。
eGPUボックス内部ではPCIeスイッチが用いられ、PC本体からのPCIe接続をGPUへ分配・中継します。CPUから見ると、外付けGPUも内部接続と同様にPCIeデバイスとして認識されるため、動画編集や3Dレンダリング、生成AIなどGPU負荷の高い処理性能を、携帯性を損なわずに拡張できます。
利用例3 外付けGPUドッキングステーション
PCIeの制限 ― 無限に拡張できるわけではない
PCIeスイッチは非常に便利ですが、無制限に拡張できるわけではありません。
ポート数やレーン数、アドレス空間には上限があり、階層が深くなるほどスイッチ通過によるレイテンシ増加やBIOS設定の制約が生じる場合があります。
また、複数デバイスを同時に高負荷で動かすと、理論帯域どおりの性能が出ないケースもあります。
これは、I/Oコマンドの発行や完了処理、割り込み処理、OSのストレージスタックといったホスト側のソフトウェア処理がボトルネックになるためです。特にデバイス数が増えると、CPUやドライバーの負荷が集中し、待ち時間が発生しやすくなります。
PCIeの性能は、スイッチ・デバイス・ホストの三者がバランスよく設計されて初めて最大化される点に注意が必要です。
まとめ
PCIeスイッチは、限られたPCIeレーン資源を効率よく拡張し、複数デバイスを高速・低遅延で接続するための重要な技術です。データセンター、車載、コンシューマー機器など、用途は広がっています。
一方で、ポート数や階層深度、ホスト側の処理能力には制約もあり、システム全体のバランスを見据えた設計が求められます。PCIe世代、レーン配分、用途ごとの重視点を整理したうえで、最適なスイッチを選定することが求められます。
当社では、お客様の用途に応じた構成検討やデバイスのご提案が可能です。お気軽にご相談ください。
お問い合わせ
関連技術コラム
関連製品情報

車載アラウンドビューシステムに搭載される各カメラ故障検知時の課題解決
複数カメラシステムにおける、カメラ単体故障が他の正常なカメラにも影響を及ぼす課題を解決するソリューションとしてMAX20086/7/8/9を紹介します。
- Analog Devices, Inc.
- NEXT Mobility
- ICT・インダストリアル
- スマートファクトリー・ロボティクス

カメラを用いた非接触のバイタルセンシング (アナログ・デバイセズ製品ユースケース)
カメラを用いた非接触のバイタルセンシングを低コストで導入できます。独自のアルゴリズムを用いて解析することで、ストレス、感情も推定できます。
- Analog Devices, Inc.
- NEXT Mobility

Qualcomm Automotive Connectivity Solution
Qualcommは、4G/5G、C-V2X、Wi-Fi、Bluetoothを活用した車載インフォテイメント向けの接続ソリューションを提供します。
- Qualcomm Technologies, Inc.
- NEXT Mobility
- ICT・インダストリアル
- スマートファクトリー・ロボティクス

USB ソリューション(EZ-USB™ / EZ-PD™)USB 2.0からUSB 3.2、USB-C Power Deliveryまで、InfineonのUSB製品は高速データ転送と高効率充電をワンストップで実現。
インフィニオンのUSBソリューションは、EZ-USB™とEZ-PD™で高速データ転送と高効率USB-C充電を車載や産業用途で実現しています。
- Infineon Technologies AG
- NEXT Mobility
- ICT・インダストリアル

OSP (Open System Protocol) 概要
ams OSRAMのOSPは、車載LEDやセンサーを接続するための無料のオープンネットワーク技術です。車載のほかにもさまざまな用途で最適なシステムを実現します。
- ams-OSRAM AG
- NEXT Mobility
- ICT・インダストリアル

NXPの車載統合マイコンS12 MagniVの魅力を徹底解説
NXPの統合マイコンS12 MagniVは、ECUの小型化と短期開発を実現し、車載システムの電動化に貢献します。S12 MagniVの特長や利点を解説しています。
- NXP Semiconductors N.V.
- NEXT Mobility
- ICT・インダストリアル


