パラレルからシリアルへ――なぜインタフェースは転機を迎えたのか(1/2 ページ)
回路上を伝わる信号の遅れがパソコンやPCサーバの高速化にとって大きな壁となっている。ギガを超えるクロック周波数の時代、CPUの高速化に見合った大量のデータを扱えることがシステム全体の高速・高性能化に直結する。
だが、32ビットや64ビットなどのPCIやAGP、そしてメモリなどで使われているパラレルデータ伝送の高速化はほぼ限界に近く、原理的にこれ以上の高速化はかなり困難な状況になっている。
これを乗り切り、さらなる高速化を行うには、シリアル伝送しかない。ハードディスクドライブは従来のATAがSerial ATAへ、PCIもPCI Expressへとシリアル化が進みつつある。さらに、2005年にはCPUとメモリの間のデータ伝送すらシリアル伝送によるFB-DIMM(Fully Buffered-DIMM)へと移行が始まろうとしているのは、まさにこういう理由だ。
パラレル伝送は一度に多くのデータを送れる
本来なら、1度に複数のビットを同時にやりとりできるパラレル伝送のほうが、シリアル伝送より伝送効率や速度面でも高速なのは言うまでもない。
例えば、従来よりコンピュータの高速化、高性能化は、より大量のデータをより短時間に処理するため、一度に送るデータのビット数を増やす方向で進化してきた。
CPUの内部処理単位が8ビットから16ビット、32ビット、そして64ビットへと拡大していったのは、内部処理の単位を多くし、演算効率を高めると同時に、一度に入出力できるデータ量を増やすためだ。
同じ動作クロック周波数なら、同時に転送できるビット数が多いほど単位時間当たりのデータ伝送量も増え、高速化したことと同じ効果が得られる。さらに、動作クロック周波数を高くすれば、それだけ単位時間当たりの処理量が増える。
この典型がインテルのPentium以降のCPUで、内部32ビットのCPUでありながら外部とのやり取りを行うデータバスの幅は64ビットであった。そして、その動作クロック周波数は年々高くなり、また、外部バス(FSB)の動作クロック周波数もオリジナルPentiumの66MHzから最近のPentium 4では800MHz相当にまで上がっている。
今までの高速化は、巧妙な仕組みによってパラレルデータ伝送の限界を回避してきた。例えば、ATAは最大100~133MHz(133MHzは一部で使われている独自インタフェース)、PCIは最大66MHz、PCI-Xが1スロット構成時のみ133MHzで動作している。
また、グラフィック用のAGPも基本クロックは66MHzで、x4やx8といったデータ伝送モードも、巧妙に複数の信号を交互にインタリーブして伝送することで最大133MHzを超えない範囲で動作している。
メモリも同様だ。FSB533のCPUでは、最大133MHzのクロックに同期してデータ転送を行うDDR2-SDRAMが使われている。つまり133MHz×4=533MHzだ。
最近のFSB800MHzの場合、FSB400MHz相当のデータチャネルを2系列持ち、交互に読み書きするインタリーブを行っている。それぞれの内訳は、100MHzのクロックに同期して読み書きするDDR2-SDRAMを組み合わせ、見かけ上は800MHzで動作しているかのように見える。つまり、基準となるクロック周波数は100MHzで、巧妙な仕組みによって高速アクセスできるように工夫されているわけだ。
パラレル伝送はデータの遅延が問題になる
しかし、これらの例を見れば分かるように、現状ではパラレルデータ伝送で使われる同期クロックの上限は100~133MHzあたりにあることが推測できるだろう。実際、これは正しい。その理由をもう少し掘り下げてみよう。
パラレルデータ伝送では、32ビットあるいは64ビットなどのデータがすべて同時に送出され、受信側もすべてのビットのデータが同時に届くことを前提にしている。
だが、動作クロック周波数を高くしていくと、やがてビットをあらわす信号が常に同じ速度で回路中を伝わるわけではない……ということが無視できなくなってくる。実際、送信側から送られた信号が受信側に伝わるまでの時間は、配線の長さや形状その他の条件で変化する。
例えば32ビットなら32本の信号が受信側に伝わるまでに要する時間はすべて同じではないのだ。このように、信号が伝わる速度がビットごとに異なり、同時には届かなくなる現象をスキューと呼ぶ。
スキューの幅、すなわち最初に届いたビットと最後に届いたビットとの時間差は、現在のパソコンで使われる一般的な論理回路とプリント基板の組み合わせでは、常識的な配線長であっても数ナノ秒程度になるという。もちろん、動作クロック周波数が低ければこの程度の差は無視できる。
だが、100MHzクロックでの伝送になると無視できない。なぜなら、100MHzでの1回の伝送は10ナノ秒以下で行われるため、この数ナノ秒の遅れはマージン(余裕度)がほとんどない状態に等しいのだ。
配線の最大長を制限したり、すべてのデータ信号線の長さをできるだけ同じにする等長配線したりといったテクニックを駆使して影響を最小限に抑える必要がある。だが100MHzを超える高速なクロックになると、スキューによって正しくデータの送受信ができなくなる可能性が高い。クロック周期に対するスキューの影響が大きすぎるからだ。
つまり、クロックの高速化が100~133MHzあたりが限度、という根拠はスキューの幅にある。スキューの影響を無視できなくなるクロック周波数は、インタフェースや配線の電気的条件によっても異なるが、パソコン内で起きている現象としては、以上の認識でほぼ正しい。
どうしてスキューが生じるのか?
では、なぜスキューが起きるのか。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
こんなメディアも見られています
ITmedia NEWSに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
本日の新着記事
アクセスランキング
-
1
ドコモSMTBネット銀で障害 「着金しない」「給料日にやめて」と悲鳴【復旧】
-
2
ahamo初の値上げ 「大盛りオプション」撤廃、40GB・60GB・120GBの3段階制に
-
3
パナソニックが市販カーナビ生産終了へ 30年以上の歴史に幕、スマホナビの普及など受け
-
4
J:COMネット障害、原因は「外部からの大量アクセス」 DNSサーバに高負荷 最大約408万件に影響
-
5
「楽天銀行から数百万が勝手に移動」「残高が0に」……楽天証券のシステム不具合、連休中に発生
-
6
「モンスト」キャラの声をAI生成、MIXIのニュース紹介企画に批判続出 実施見合わせへ
-
7
「クリスタ」素材、大量非公開でユーザー混乱 人物だけでなくペンや公式素材まで セルシス「誤判定もあった」が……
-
8
Gyazoへの不正アクセス、新たに約1.74億件の画像メタデータ流出
-
9
破産した全東信、未精算の売上金を加盟店に支払いへ JCBなど6社が協力 10月中にも
-
10
アジア大会、11歳がeスポーツ「ぷよぷよ」で決勝へ 日本選手団最年少
ITmedia NEWS SNS
インフォメーション
注目情報をチェック
ITmediaNEWSをフォロー
あなたにおすすめの記事PR