解説

PCI-X 2.0とPCI Expressのインパクト(後編)
――新しい拡張インターフェイスの実体とその影響を探る――

3. 次世代のI/O規格「PCI Express」は何が変わるのか?


元麻布春男
2002/10/11

解説タイトル


 前編では、既存のPCIの後継となる「PCI 3.0」と次世代のサーバ向け拡張バス規格「PCI-X 2.0」の概要について解説した。ここからは、次世代のI/Oインターフェイス「PCI Express」について解説していくことにする。

PCI Expressの位置付け

 PCI Expressは、サーバやワークステーションだけでなく、デスクトップPCやノートPCを含めたすべてのPC、さらには通信機器など、現在PCIバスが利用されている用途を全面的に置き換えるものとして、開発が進められている。もともとは、Intelが3GIO(The 3rd Generation I/O)の名称で開発を行っていたものだ。その後、PCIバスを継承する技術としてPCI-SIGに提案され、PCI Expressとして規格化されることになった。2002年7月23日には、PCI-SIGの委員会によって規格が承認され、現在、PCI-SIGの会員にはPCI Express 1.0の規格書が公開されている(PCI-SIGの「PCI Express規格の委員会による承認について」)。

 PCI Expressの基本となるのは、片方向のポイント・ツー・ポイント接続を、双方向分となるように2本単位(この最小構成を「レーン」と呼ぶ)でまとめたものだ(図4)。それぞれの伝送路のデータ幅は1bitで、0.8Vで差動駆動されるシリアル接続となっている。伝送路をシリアル化することで信号線の数を減らすことができ、高性能と低価格の両立を可能とした。PCI Express 1.0では、1レーン分の伝送路のデータ・レートとして2.5Gbits/sのみを定めているが、将来的には2x(5Gbits/s)、4x(10Gbits/s)といったデータ・レートの実現を視野に入れている。すでに複数のデータ・レートが実現された場合に必要となるネゴシエーションを実装するための準備も、規格レベルで行われている。

クリックで拡大表示
図4 PCI Expressの接続構成
PCI Expressは、シンプルなポイント・ツー・ポイント接続を基本とする。

 この2.5Gbits/sでの実際のデータ転送速度だが、PCI Expressでは8B/10Bエンコーディング(8bitのデータを10bitに変換する符号化)により、クロック信号が埋め込まれているため、実際の帯域は20%分減ることになる。つまり、PCI Expressの実効データ転送レートは2Gbits/s(=2.5Gbits/s×80%)であり、片方向につき250Mbytes/s、双方向合わせて500Mbytes/sが有効帯域ということになる。2x、4xでは、それぞれ1Gbytes/s、2Gbytes/sの帯域が実現される。現在デスクトップPCで主流の32bit/33MHz PCIのデータ転送レートは、133Mbytes/sなので、片方向で比べても約2倍、双方向では4倍近い帯域を実現することになる。

 またPCIバスでは、プロトコルと信号が完全に分離されていなかったため、広帯域化を難しくしたといわれている。その反省からか、PCI Expressでは各機能がレイヤ化されており、将来データ・レートを引き上げた場合でも、ほかの部分への影響は最小限で、ほとんどが流用可能になる見込みだ(図5)。

クリックで拡大表示
図5 PCI Expressのレイヤ
各機能がレイヤ化(階層化)されたPCI Expressでは、将来に向けたスケーラビリティの確保が容易になる。

スケーラビリティの高いPCI Express

 このように将来データ・レートを引き上げることを想定し、未来に向けた帯域のスケーラビリティを確保する一方で、近い将来に対するスケーラビリティとして、複数レーンの同時使用による帯域の拡大も可能となっている。つまりアプリケーションに応じて、1レーン(x1)、2レーン(x2)、4レーン(x4)、8レーン(x8)、12レーン(x12)、16レーン(x16)、32レーン(x32)と拡張できる。ただし、現時点でこれらのすべてが実用化されるとは考えられておらず、デスクトップPCでは汎用I/O用に1レーン(双方向で500Mbytes/s)と、グラフィックス用に16レーン(同8Gbytes/s)が、それぞれ用いられると想定している。また、サーバには上記に加え4レーン(2Gbytes/s)と8レーン(4Gbytes/s)の利用が想定されており、データ・レートで比較するなら前者はPCI-X 266相当、後者はPCI-X 533相当ということになる。

 ここで、グラフィックス用途が想定されているx16スロットについて、若干補足しておこう。PCI Expressがまだ3GIOと呼ばれていたころ、現行のパラレル・インターフェイスを用いたAGPの後継として、シリアル・インターフェイスである3GIOをベースにしたものが使われる、といわれていた。これを一部の報道などで「シリアルAGP」などと呼んでいたが、この構想はなくなり、PCI Expressのx16スロットがそのままグラフィックス用に用いられることになった。つまり、将来グラフィックスに用いられる拡張スロットは、機能的にはPCI Expressの汎用のx16スロットと同じであり(後述のように電源供給能力などが異なる)、これをxxAGPといった名前で呼ぶことはない。

 現在のAGPは、PCIバスをベースに開発されたものだが、PCIバスより高いデータ転送速度を確保するための物理的、電気的な変更だけでなく、ソフトウェア的にも異なるものとなっている。こうしたソフトウェア的な変更が、ある意味でAGPをグラフィックス専用にしているわけだが、PCI Expressのx16スロットをそのまま利用する将来のグラフィックス・スロットは、ソフトウェア的にも汎用のPCI Expressスロットと変わらない。例えばAGPの特徴的な機能の1つとしてはGART*4のサポートが挙げられるが、PCI ExpressではGARTのサポートは行われない。これはPentium III以降のプロセッサ自体がGARTに相当する「Page Attribute Table」をサポートしているため、不要と判断されたことによる。

*4 Graphics Address Remapping Table:メイン・メモリの一部をAGPメモリとして確保し、グラフィックス・コントローラが直接そのアドレスをアクセスすることを可能にする機能。

 下表は各スロットが供給可能な電源容量に関する仕様だが、サーバ用の拡張スロットは、同じx1でも電源が強化されていることが分かる。また、グラフィックス用のx16コネクタは、現在のAGP Pro-50に近い40Wが確保されているが、これはグラフィックス・チップ・ベンダとの話し合いによって決められたものだという(ワークステーション向けの仕様はまだ決まっていない)。現時点で実現可能性の最も高い以上の4種類については、すでにコネクタのサンプル出荷も始まっている(図6)。

  x1コネクタ(デスクトップPC向け)
x1コネクタ(サーバ向け)
x4/x8コネクタ
x16コネクタ(I/O向け)

x16コネクタ(グラフィックス向け)
最大出力 10W 25W 40W
+3.3V±9%
3A
3A
3A
+12V±8%
0.5A
2.1A
3.3A
+3.3Vaux±9%
375mA
375mA
375mA
表区切り
PCI Expressがスロットに供給可能な電源容量
PCIにあった5V電源はPCI Expressでは供給されない。
 
クリックで拡大表示
図6 PCI Expressに用いられるコネクタ
x1(1レーン)用からx16(16レーン)用まで示されている。右側の断面図で左側にツメがあるのは、カードが抜けないように固定するリテンション・フックをひっかけるためのもの。

 PCI Expressの特徴として、レーン数の大きいスロットは、自分よりレーン数の少ない拡張カードを受け入れることができる、という点が挙げられる。つまり、x16のスロットには、x1やx8のカードをインストールすることが可能なわけだ。逆にx1のスロットにx8のカードをインストールして、x1相当の帯域で利用するようなことは許されない。上述したグラフィックス用のx16スロットは、広帯域の汎用スロットとして、x1のみならずx4やx8のカードを利用することも可能になる(上表に示したように電源供給能力にも問題はない)。現行のAGPでは、チップセットがグラフィックス機能を内蔵している場合、スロットが空いていても使い道がないが、PCI Expressの場合は必要があれば広帯域の汎用I/Oスロットとして利用できることになる。同じデスクトップPCでも、x16スロットに高機能なグラフィックス・カードを搭載したものや、その代わりにギガビット・イーサネット・カードやファイバ・チャネル・カードを搭載したものなど、多様な構成にすることが可能になるわけだ。

 次ページでは、実際にPCI Expressがどのように実装されるのかについて解説していこう。

  関連リンク 
PCI Express規格の委員会による承認について
 

 INDEX
  PCI-X 2.0やPCI Expressのインパクト
    1.従来のPCIの後継「PCI 3.0」とは?
    2.PCI-Xは2.0でさらに高速化
  3. 次世代のI/O規格「PCI Express」は何が変わるのか?
    4. PCI Expressの実装方法
    5. PCI-X 2.0とPCI Expressの関係は?
 
目次ページへ  「System Insiderの解説」


System Insider フォーラム 新着記事
  • Intelと互換プロセッサとの戦いの歴史を振り返る (2017/6/28)
     Intelのx86が誕生して約40年たつという。x86プロセッサは、互換プロセッサとの戦いでもあった。その歴史を簡単に振り返ってみよう
  • 第204回 人工知能がFPGAに恋する理由 (2017/5/25)
     最近、人工知能(AI)のアクセラレータとしてFPGAを活用する動きがある。なぜCPUやGPUに加えて、FPGAが人工知能に活用されるのだろうか。その理由は?
  • IoT実用化への号砲は鳴った (2017/4/27)
     スタートの号砲が鳴ったようだ。多くのベンダーからIoTを使った実証実験の発表が相次いでいる。あと半年もすれば、実用化へのゴールも見えてくるのだろうか?
  • スパコンの新しい潮流は人工知能にあり? (2017/3/29)
     スパコン関連の発表が続いている。多くが「人工知能」をターゲットにしているようだ。人工知能向けのスパコンとはどのようなものなのか、最近の発表から見ていこう
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

System Insider 記事ランキング

本日 月間