USB 3.0の物理層で、もう一つ特徴的なのがLFPSである。これは、同じ物理層を使うPCI Expressには存在しないものである。で、LFPSとは何か? というのはこちら(Photo01)が判りやすい説明である。

Photo01: どうせだったら、この速度でLinkできるモードを作ればより柔軟性が増すのに、と個人的には思わなくも無い。

実際にLinkが確立した後は、5Gbpsのフルスピードで動作するが、Linkが確立していない状態では、リンク速度を下げたモードで通信を行う仕組みである。ハンドシェイクの様子はPhoto02に示すような構図で、要するにお互いがLFPS Burstでデータを送りあい、この状態で通信に成功したら、一定タイミング後にフルスピードに移行するという仕組みである。

Photo02: そもそもLinkが確立していない理由はというと、省電力モードに入っているからというのが一番多い。省電力モードだから、当然その場合Deviceの処理能力は低いわけで、いきなり5Gbpsの信号のハンドリングは大変だから、遅くしようという発想なのだと思われる。

ちなみにPhoto02の最後に出てくる「具体的な数字はTable 6-22参照」であるが、こんな具合(Photo03)である。状況によって時間に差はあるが、例えばt11-t10(Link Partner 1がLink Partner 2に最初のメッセージを送る)は最低でも0.3μsとされている。これは5Gbpsなら1500bit分に相当するから、結構長い。

Photo03: Universal Serial Bus 3.0 SpecificationのTable 6-22からの抜粋。

そもそもLFPSのタイミングそのものがかなり長い。Photo01におけるtPeriodは、最低20ns、最大100nsだから、転送速度は10Mbps~50Mbpsという事になる。またtBurst/tRepeatはケースによって異なるが、例えばPolling.LFPSだとtBurstは平均1μs(最小0.6μs~最大1.4μs)、tRepeatは平均10μs(最小6μs~最大14μs)とかなり長い。要するに、通常の通信に関しては5Gbpsのみとする一方で、省電力モードに入っている時にはUSB 2.0よりもまだ速度を落とすことで対応を容易にしたということになる。

ただこれ、USB経由でリアルタイム転送とかを考えている向きには非常にまずい事でもある。一度省電力モードに入ってLink Downにしてしまうと、再びLinkが確立するまで最低でも数十μs、デバイスのWarm Resetなどが入ると数ms~数百msを要することになるからで、これが許容できるデバイスはともかく、例えばTVチューナーなどうっかり省電力モードに入ってしまうと間違いなく映像が途切れることになる。なので対策としては、「省電力モードに入らないようにする」(あるいは、そもそも省電力モードを持たない)といった事になり、折角の省電力モードが活用されない事になる。このあたりは、もう少しなにか策がなかったのか、という気はしなくもない。

さて話を戻すと、Spcificationではこの他に、これらのElectrical Specに関するCompliance Testの方法論の説明が行われている。これはまぁ当然の話で、これだけ転送速度が速いと測定が信号に影響を与えかねないし、測定方法の差が測定されるタイミングに影響を与えまくるからだ。ただ、このあたりはあんまり規格そのものには関係ないのでこちらの説明では割愛し、物理層に関する最後は、SuperSpeed USB DevConにおける物理層のセッションでのまとめで締めたいと思う。

そのまとめだが、Key Messageの1枚目はこちら(Photo04)。"Use Moore's Law"というのは、要するにPHYの回路をケチらずに、イコライザ類を十分に入れるのが正しいアプローチという話である。従来のUSB 2.0から信号速度が10倍になっているので、従来と同じ配線の引き回しをしてしまうと、まともに通信すらできなくなる恐れがある。ただこうした場合でも、イコライザを十分に入れたり、Link Trainingの機能をしっかり入れることでマージンを確保し、安定通信ができるようになる。勿論こうした回路は余分なダイエリアを必要とするが、それはプロセスの微細化でカバーせよというメッセージである。

Photo04: Intelらしい物の言い方だなぁ、とは思う(このセッションの説明はIntelのPrincipal EngineerであるHoward Heck氏)。

ただ、SuperSpeed DevConで展示されたFresco Logic(というか、Faraday Technology)のコントローラはこれに思いっきり逆行している気がしなくもないが、技術力に自身のあるベンダーは勝手にやればよいという話で、開発者全体に対するメッセージはどうしてもこうした方向になるのだろう。また3番目の話も今更という話(特に古いマザーボードベンダーは、かつてRAMBUSのDirect RDRAMでこれをいやと言うほど経験した筈だ)ではあるが、USB 3.0で初めてHigh-Speed Signalingを経験するというベンダーもあるだろうから、こうした念押しが必要なのだと思う。

2枚目(Photo05)も同様であるが、特に5Gbpsともなると単に転送性能(というか、転送の成功率)の確保のみならずEMC(Electro-Magnetic Compatibility)対策も重要になる。例えばPCIeだと早くからノイズ対策が言われてきており、またコスト制限も相対的にゆるやかだったので、質の良い基板設計(例えばグラフィックスカードなど、GDDRの配線で10層を超えるものがばんばん出てきているから、相対的にPCIeの速度はそれほど問題にならなかった)や各種のコモンモードフィルタが利用できたが、USBではコスト削減のためにこうした費用がぎりぎりまで削られかねない。2枚目の最初の項目はこうした事柄に対する注意で、設計段階で十分に注意しないとコストが下がらない(USB 2.0の調子で安直に作ると高くつく)というのがUSB-IFからのメッセージであった。

Photo05: 5Gb/secというスピードは、マザーボードとかグラフィックなど、PCI Expressの経験がある設計者には既知のものだが、USB 2.0デバイスの設計者でこうした経験を持つ人は少ない訳で、このあたりはデザイン上でかなり大きな制約になるだろう。

(続く)