プロローグ
PCIバスを取り巻く現状

● PCIはスタンダード

 はじめてPCIという名前で仕様書が発行されたのは,1992年のことだそうです.すでに10年以上の歴史があるわけで,数え切れないほどの多くの企業が,チップセット/マザーボード/デバイスなど,PCIバスを採用したシステムを開発/製造/出荷しています.当初採用されたPC/AT互換機での普及はもちろんのこと,PowerMacやRISCプロセッサ搭載サーバ/ワークステーションなど,ほかのアーキテクチャのコンピュータでも採用されています.

 また,産業機器でVMEバスに代わって普及してきているCompactPCIバスも,電気的な規格はPCIそのものであり,産業機器向けに信頼性を上げて使用されています.とくにこの業界では10年や20年という製品保証期間が必要となるため,新しいバス規格が登場したからといって,すぐにバス規格を「鞍替え」するわけにはいきません.これは,VMEバスや,計測機器分野で使われるVXIバスが今日でもまだ利用されている状況からもあきらかです.

 さらに最近では,組み込み機器向けCPUにPCIコントローラが内蔵されはじめ,情報家電機器の内部バスとして,PCIバスが採用されているものも珍しくありません.

● PCI-Xが登場した!

 PCI-XはPCIをベースに,よりバースト転送を重視するプロトコルが採用されました.また各信号線の制御ルールを改定することで,より高速なクロックで動作させることもできるようになりました.これにより従来のPCIの2倍〜4倍といった転送レートを確保できます.

 さらにPCI-X 2.0では,従来のPCI-XをMode1とし,新たにDDRやQDR動作によるデータ転送レートを高めたMode2が定義されました.これにより後述のPCI-Expressに対抗し得るようなバス帯域を実現しています.

 表1に現在までのPCIおよびPCI-Xの各モードと転送レートを示します.このように,PCIはPCI-X/Mode1,Mode2と進化をしつつ,性能の向上が図られています.

〔表1〕PCIおよびPCI-Xの各モードと転送レート

 PCI-X 1.0の仕様書が策定されたのは,1999年の秋となっています.それから現在までに4年が経過しましたが,現在のところIntel,AMD,ServerWorksといったベンダから,PCI-X対応ホストチップセットが登場し,サーバ/ワークステーションなどに採用されています.また秋葉原などでもデュアルXeonやOpteronなどサーバ向けのCPUの単体販売と並んで,PCI-Xを搭載したサーバ向けのマザーボードが店頭販売されているなど,入手は容易です.

 PCI-X対応アドインカードとしては,ギガビットEthernetカードやRAIDカードなどが店頭に並んでいます.

● さらなる次世代高速バス

 昨今,やれPCI-Expressだ,やれHyperTransportだ,Rapid-IOだ……と,話題になっている次世代バス規格があります.これらの新しいバス規格に共通する特徴は,差動伝送,小振幅差動インターフェース,低消費電力,1チャネルあたり数Gビット級のデータ転送能力など,どれを見ても現在求められているバスインターフェースの特徴/機能/性質を有しています.

 これら三つのバスインターフェースは,LVDS(Low Voltage Differential Interface)という,350mVp-p(typ.)振幅の小振幅差動インターフェースが採用されており,従来のTTL/CMOSまたはLVTTL/LVCMOSとはまったく異なる信号です.伝送される情報のプロトコルの差異はあれ,基本的にはシリアルバスと呼ばれます.

● 差動シリアルバス規格の問題点

 性能を追求するのであれば,将来的には確実にPCI-ExpressやHyperTransport,Rapid-IOに向かっていくことでしょう.しかし,それらの普及には時間がかかるのも事実です.

 ここでPCI-Expressを例にとってみましょう.PCI-ExpressはPCIと比較すると,

・カードエッジ形状/コネクタ形状が違うために物理的互換性がない
・信号の電気的互換性がない
・PCI-Expressの標準データ転送レートである1.25Gビット/秒に対応したデータ転送チャネルをもつデバイスの選択肢が少ない/あっても非常に高価
・PCIをはるかにしのぐ転送能力を得るには,結局は多ビットバス化が必要
・PCI-Expressバス規格を満たすデバイスの開発環境が高価

などという点があげられます.そして最大最強の問題(?)は,

・(少なくとも原稿執筆時点では)PCI-Expressを搭載したシステムがまだ存在しない

ということでしょうか.

● 従来資産の継承

 もちろんデバイスの問題や開発環境の問題,そしてPCI-Expressを搭載したシステム(マザーボード)が存在しないという問題は,時間の経過とともに解決されるものです.しかし,物理的形状や電気的な部分の互換性は,時間が経てば解決するといった問題ではありません.

 今回の特集で解説するPCI-X/Mode1は,物理的なカード/コネクタ形状はもちろん,電気的な部分でも従来のPCIとの互換性が考慮されています.だからこそ,第3章で解説するような,PCIバスを想定して設計されている評価ボードを,最低限の改造でPCI-X上で動作させるということも可能になるのです.

 潤沢な資金と豊富な設計経験があり,長年使ってきたPCIバスシステムを捨て去る気迫で,新規開発案件としてPCI-Expressを採用するのであれば,筆者はむしろ応援します.しかし,既存システムの流用や製品寿命のことを考え,現在のPCIカードエッジバス,またCompactPCIバスシステムをそのまま活かして製品を開発しようとする場合には,筆者はPCIやPCI-Xのほうをお勧めします.

● PCI-XのMode1かMode2か

 ひと口にPCI-Xといっても,大きく分けてMode1とMode2があります.もちろんMode2でも物理的な仕様はMode1と同一なのですが,じつはMode2は電気的特性の上でMode1と互換性がありません.PCI-X/Mode2ではVCC電圧やI/O電圧が3.3Vおよび1.8Vとなってしまったため,PCIやPCI-X/Mode1とはI/Oインターフェースが別物になってしまったのです.

 したがって,従来との互換性を重視するのであれば,PCI-X/Mode1が最適解ではないかと筆者は考えます.そうでなければ,少しだけがんばってPCI-X/Mode2を採用するか,もっとがんばってPCI-Expressなどの次世代シリアルバスを採用するしかありません(図1).

〔図1〕PCI-X/Mode1とMode2の間には川が,PCI-Expressの間には断崖絶壁の谷が!?

● おまたせしました,PCI-Xです!

 筆者は1997年からずっとPCIバスシステムを採用した製品設計に携わっています.その間,本誌および本誌増刊などに多数のPCIバスがらみの記事を執筆してきましたが,昨今ではFPGAも十分に高速に動くようになってきているので,もはやPCI-Xは難しいものではなくなったと宣言したいところです.

 本特集が,PCIバスでデータ転送性能の上限に悩み,その解決策としてPCI-Xを模索/検討している読者の方の一つのバイブルになることができれば幸いです.

コラム

PCI-X解説参考書

 現在のところ,PCI-Xについて詳しく解説してある書籍としては,英語版では2冊ほどあるようです.

 一つは,PCIのころから筆者もお世話になった通称「赤本」と呼ばれる『PCI Hardware and Software』が,PCI-Xまでを含んだ新版『PCI and PCI-X Hardware and Software: Architecture and Design』(写真A)になりました.日本語訳版はまだ予定はないようですが,要望が多ければ早期に実現するのではないでしょうか.

〔写真A〕PCI and PCI-X Hardware and Software: Architecture and Design,Edward Solari,George Willse(著)

 またもう一冊は,『PCI-X System Architecture (PC System Architecture Series)』(写真B)で,人によってはこちらのほうがわかりやすいという話も聞きます.

〔写真B〕 PCI-X System Architecture(PC System Architecture Series), Tom Shanley(著)
インデックス
◆プロローグ PCIバスを取り巻く現状
バスとは何か ―― PCIの基礎知識

今月号特集トップページへ戻る


Copyright 2004 井倉 将実