ではUSB 3.0ではどうか? というと、Standardは相変わらずA-DeviceとB-Deviceではっきり分かれるが、Microに関しては当初からAB-Device、つまりDual-Role Deviceを考慮したものになった。もっともこのあたり、以前Jeffに聞いたときには「USB 3.0そのものはOTGはサポートしていない。これの検討は、USB 3.0のSpecificationがFixした後になるだろう」という返事だった。要するにプロトコルに関してはまだこれから検討という話であるが、とりあえずやらないという案は無いので、Mechanicalだけは対応しておこうという事であろう。このOTGに関しては、まもなく(2009年5月20日~21日)に都内でSuperSpeed USB Developers Conferenceが開催されるので、その折にもう少し聞いてきたいと思う。

話をUSB 3.0に戻そう。まずStandard-A/B Plug/Receptacleの話である。Standard-A/Bの場合、従来のUSB 1.1/2.0のPlug/Receptacleと互換性を保つ必要がある。このため、機械的には従来のものと大差ない。まずStandard-A Plugであるが、外見はこんな感じ(Photo01)。よく見るとロゴにSS(SuperSpeed)が入っているのが、USB 3.0対応かどうかを見極める唯一の手段となりそうだ。で、内部的には? ということで、接点部を抜き出したのがこちら(Photo02)。下側の4つのコンタクトが従来のUSB 1.1/2.0の信号、その上の5つのコンタクトがUSB 3.0のものとなる。ちょっとPhoto01に戻るが、右下のSECTION P-Pという図を見ると、左側のガイド部にほぼ一体化しているのがUSB 1.1/2.0のコンタクト、その右側に盛り上がっているのがUSB 3.0のコンタクトとなる。

Photo01: Universal Serial Bus 3.0 SpecificationのFigure 5-2からの抜粋。このSSのロゴは、これが正式なものになる模様だ。

Photo02: こちらも同Figure 5-2からの抜粋。

これを受け止めるReceptacleはこんな具合だ(Photo03)。右下のSECTION H-Hで、下から跳ね上がっているのはコンタクトではなく、単にPlugをReceptacleに押し付けるためのバネであり、コンタクトは上側となる。面白いのは、USB 1.1/2.0ではコンタクトの盛り上がりはReceptacle側に設けられているのに対し、USB 3.0ではPlug側に設けられることだ。

Photo03: こちらは同Figure 5-1からの抜粋。

この仕組み、USB 1.0の頃から考えていたのかどうかは判らないが、意外にうまく動作する。ちょっと差し込む場合を考えてみよう。まず最初は、図1の様な位置関係にある。言うまでもなく、この状態ではまだ何も接触していない。ここから、ぐっとPlugをReceptacleに押し込むと、図2の様になる。最初に接触するのはUSB 1.1/2.0の外側に設けられたVBUS/GNDのラインである(*1)。つまりUSB Deviceに対してここで電力供給が行われるため、USB Powered DeviceならばここからSystemのBootやらResetやらが始まるし、Self Powered Deviceならば電圧を監視することでPlug Insertionが発生することを検知できる。

(*1)厳密に言えば、最初に接触するのはPlugとReceptacleそれぞれに用意されるShell(シールド)である。これはどちらもGNDに接続される形になるので、これが最初に接続されることで、DeviceとHost(なりHub)のGND Levelを一致させることになる。

ここから更に押し込むと、今度はUSB 1.1/2.0の内側の2本にあたるD+/D-(信号線)の方も接触することになる(図3)。USB 1.1/2.0のDevice Initializationがこれでスタートすることになる。ここから更に一杯まで奥に押し込むと、初めてUSB 3.0の信号が接する形になる(図4)。もしUSB 3.0側のコンタクトの盛り上がりもReceptacle側に設けられていたら、図2の状態になる前に、USB 1.1/2.0のVBUS/VDDがUSB 3.0のコンタクトに接してしまうので、ここで誤動作とか下手をすると回路の電気的破壊が起こりかねない。またUSB 3.0においても、Self Powered Deviceは存在するので、まず最初にVBUS/GNDの供給を行いたい。Standard-A/BのPlug/Receptacleの構造はこうしたニーズを完璧に満たすことになる。これは逆に抜く場合も同じだ。まず最初にUSB 3.0が切断され、次にUSB 1.1/2.0のD+/D-、最後にVBUS/GNDの順になる。限られた実装体積と互換性の維持という条件の中で、USB 1.1/2.0とUSB 3.0の信号の接触という可能性を廃する良いメカニズムである。

(続く)