このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第826回

PCIeリリース直前に登場しわずか1年の短命に終わったCSA 消え去ったI/F史

2025年06月02日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/) 編集●北村/ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

帯域不足がCSA誕生のきっかけ

 そんなCSAであるが、フタを開けてみると単にGbE用のI/Fということが明らかになったわけだ。なぜ専用I/Fを設けたか、これは単純に「PCIのまま接続すると帯域が足りないから」である。GbE、つまり1000BASE-TはIEEE 802.3ab-1999として1999年7月に仕様が公開されたが、公開当初はまだ高嶺の花であった。

 2000年頃には、まだGbEの拡張カードは64bit PCIで提供されていた(例えばプラネックスの「GN-1000TE」など)し、GbEのハブ(まだSwitching HubではなくDumb Hubだった)も高価だった。

 ところが2002年頃からこうした製品の価格が次第に下がり始める。一般的にイーサネットの場合、ポート単価が100ドル(だいたい体感で1万円前後)を切り始めると急速に普及が進む感じだが、これが2002~2003年頃に発生し、以後はそれまでの100BASE-TXに代わり1000BASE-Tが実装されるようになってきた。

 例えば2002年9月末には、Broadcomの1000BASE-Tコントローラーを搭載したMSIのマザーボードが秋葉原に登場している。したがって2003年は本格的にGbEが普及する年となることが予想され、事実そうなった。

 問題はこれがPCIだと帯域が足りないことだ。というのは1000BASE-Tでは1000Mbpsの全二重、つまり上り下りとも125MB/秒の帯域を持つので、32bit/33MHzとなるPCIの133MB/秒では帯域が全然足りない計算になる。上で初期の1000BASE-Tのカードが64bit幅になっていたと書いたが、これは64bit/33MHzでは266MB/秒の帯域になり、これならGbEの帯域にマッチするから、という話である。

 しかし通常のマザーボードには64bitスロットが搭載されていないので、ユーザーからするとこれが問題となる。もちろん64bitのカードを32bitスロットに装着可能だが、その場合は32bitでの転送となるので帯域は133MB/秒となり、帯域が足りない計算になる。

 インテルからすると、事態はもう少し深刻だった。下の画像がこれを簡単に示したものだが、もしPCIバスの先にGbEコントローラーを直接接続してしまった場合、GbEが動くとPCIの帯域のみならずHubLink(MCHとICH)の帯域も飽和してしまうため、他のI/Oが動作しなくなる(逆に他のI/Oが動作中はGbEがフルに動かなくなる)という問題が予想されることになった。

GbEをMCHに直結するだけで、HubLinkの帯域の利用量が半分に減るため、賢明な策ではある

 例えばイーサネット経由でインターネットなどからコンテンツをダウンロードする場合には、以下の行程が同時に発生する。

(1) GbEからICH→MCH→メモリーという順にコンテンツを一旦メモリーに格納
(2) 格納した内容をメモリー→MCH→ICH→Serial ATA経由でHDDに保存

 この場合は、以下の問題が発生することになる。

  • PCIはGbEからの読み込みでほぼ使い切ってしまう。
  • HubLinkは、Intel 800シリーズチップセットではHubLink 1.5(266MB/秒)を利用しているのでPCIよりはゆとりがあるが、それでも上りと下りの両方が同時に発生する関係でやはり帯域を使い切ってしまう。

 解決法は簡単で、例えばICHにPCIのコントローラーを2つ搭載し、HubLinkもより広帯域なものに変更すれば済むわけだが、当時インテルは続くIntel 900シリーズチップセットでPCI Expressの全面導入を予定しており、この時期に無駄にICHにまで手を入れたくなかった、という事情があった。Intel 900シリーズで内部を全面改訂するのに、その前にMCHとICHを大変更、というのはインテル的にもあまりうれしくなかったのだろう。

 思うに、2000年頃にはもう当然2005年頃までの大まかなロードマップが決まっており、この時点でPCI Expressは2004年に導入される(それ以上前倒しはできない)一方、GbEが2003年頃に爆発的に普及するので、チップセット側で対策をしなければならないという状況が見えていたのだろう。

 そこでPCI Expressが登場するまでの1年間のピンポイントリリーフとして考え出されたのがCSAだった、と思われる。理屈は簡単で、MCHの側に追加のHub Linkを用意し、これをGbE専用とすることだ。この場合、先のコンテンツダウンロードでは次のようになる。

(1) GbEからMCH→メモリーという順にコンテンツを一旦メモリーに格納
(2) 格納した内容をメモリー→MCH→ICH→Serial ATA経由でHDDに保存

 Hub Linkを占有する帯域は半分に減るし、PCIは完全に開放されるので他の入出力を実行可能である。しかもこの方式ならICHは原理的に従来のものをそのまま利用できる。

 実際にはIntel 865/875シリーズと組み合わされるのはICH5で、これは2002年にIntel 800シリーズ(Intel 845E/G/GV/GL/GE/PEとIntel 850E)にあわせてリリースされているICH4から変更されてはいるが、主な違いはUSB 2.0ポート数(6→8)とSerial ATA I/Fの統合、ACPI 2.0への対応などがあり、パッケージも大型化してはいる。したがって「従来のものをそのまま」というのは厳密には語弊があるのだが、技術的にはICH4から大きく差はなく、比較的スムーズな移行が可能だった。

カテゴリートップへ

この連載の記事

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン