PCI Express デザイン・ガイド ――LSI開発者のための設計Tips
従来,バンド幅を上げるためにビット幅を増やしたり(16ビットから32ビットへ,32ビットから64ビットへ),周波数を上げたりという方法を取ってきました.しかし,周波数が高くなってくると,信号線と信号線の間に生じるわずかなズレ(スキュー)や信号線の伝播遅延時間をコントロールすることが難しくなってきます.パラレル・バスでは,複数の信号線が同時に目的地に着く必要がありますが,周波数が上がると,短くなった制限時間内に各信号線のズレを調整することが非常に難しくなってきます(図2).
また,高速化するとノイズとの戦いもし烈になります.ノイズ・マージンを稼ぐためには負荷を減らすことが効果的ですが,負荷を減らすためにポイント・ツー・ポイント(point-to-point;1対1接続)にすると,パラレルのようにビット幅が広い場合,必要ピン数が非常に多くなりコストがかかってしまいます.
その点シリアル・バスは,信号線が少ないためスキュー・コントロールは楽ですし,ポイント・ツー・ポイントであってもビット幅が小さいため,ピン数を最低限に抑えることができます.その結果,シリアル・バスではパラレル・バス以上の高速化が可能です.
PCI Expressでは,シリアルを選択して信号線を減らし,その代わりにピン当たりの転送量を増やしています.
PCI Expressの策定は,PCI-SIG(PCI Special Interest Group)の中のArapahoe(アラパホ)ワーキング・グループが行いました(ドラフト仕様の段階では,3GIOというコード名で呼ばれていた).ワーキング・グループは,米国Dell Computer社,米国Hewlett-Packard(Compaq)社,米国IBM社,米国Intel社,米国Microsoft社が中心となり,米国Adaptec社,米国Advanced Micro Devices(AMD)社,米国Texas Instruments社,米国3COM社なども加わっています.日本からは,NECなどの22社が参加しています.
〔図2〕 パラレル・バスにおける信号制御
パラレル・バスでは,信号間のずれ(スキュー)が問題になり,高い周波数を低価格で実現することが難しい.