携帯機器間のデータ転送を簡単かつ高速に ――既存USBの課題を克服するための追加規格
●電力節約のための「セッション開始要求手順」
従来のUSBのバス構成では,ホストは5V,100mA以上の電源をつねに供給します.コンセントに接続して,常時大きな電力の供給を受けているパソコンにとっては簡単なことです.しかし,携帯電話のように電池から小さな電力しか供給されていない機器にとっては,このような電力を供給することは完全に不可能でしょう.
そこでOTG 1.0追加規格は,電力を節約し,電池の稼働時間をなるべく長く持たせるための手段を提供しています.それは,バス上でなにもやり取りがない場合,OTGホスト(いわゆる「Aデバイス」)がVBUSで供給する電源を切るという手段です.そして「セッション開始要求手順(SRP:Session Request Protocol)」によって,周辺機器の役目を務めるBデバイスが,Aデバイスに再度VBUSで電源を供給するように要求します(図6).セッションとは,AデバイスがVBUSで電源を供給する期間のことを言います.
前のセッションが終わってから2ms以上経っていれば,BデバイスはいつでもSRPを開始できます.SRPを開始するとき,Bデバイスはデータ・ライン・パルシングとVBUSパルシングを行います.データ・ライン・パルシングとは,データ信号線(D+とD-)に接続しているプルアップ抵抗器(フルスピードならD+,ロースピードならD-)をBデバイスが5ms~10msの間イネーブルにすることです.VBUSパルシングは,接続される負荷に応じて(注) BデバイスがVBUSを駆動することによって実行されます.
Aデバイスは,データ・ライン・パルシングまたはVBUSパルシングを認識して,VBUSの電源供給を再開し,セッションを開始します.このセッションは,これ以上のデータ転送はないだろうと判断し,VBUSを切るときまで続きます.
〔図6〕 セッション開始要求手順(SRP)
OTG対応のホストは,電力節約のためにバスに供給する電源線を切断できる.ホストに接続されている周辺機器は,SRPを利用してホスト側に電源の供給を再開するように要求できる.図は電源線のVBUSとプルアップ抵抗の付いた信号線(ハイスピードまたはフルスピードの場合はD+,ロースピードの場合はD-)の動きの1例を示す.
- Aデバイスは通信を停止し,バスをサスペンド状態にする.
- 電源節約のため,AデバイスはVBUSを切る.
- データ・ライン・パルシング:セッションが有効になる電圧よりVBUSが低くなり,データ信号線が2ms以上"L"になっていれば,Bデバイスはいつでもプルアップ抵抗をONにできる.
- プルアップ抵抗を5ms~10msの間ONにしてから,またOFFにする.
- VBUSパルシング:BデバイスはVBUSに電流を供給する.このとき,負荷の軽いOTGバスについては,VBUSを2.1V以上にするのに十分な電流を供給する必要がある.また,より負荷の大きい従来のUSBバスについては,VBUSが2.0Vに達しない程度の電流を供給する.
- VBUS パルシングが終わったら,BデバイスはVBUSに流す電流を切る.
- AデバイスはSRPを認識し,それに応答して VBUSの電源供給を再開する.
- Bデバイスは,VBUSの立ち上がりを検知してプルアップ抵抗をまたONにする
- Aデバイスは,USBリセットで新しいセッションを開始する.
- バスの通信が再開する.
注;Bデバイスに比較的負荷の軽いOTG機器が接続されている場合,最低2.1VでVBUSを駆動.Bデバイスに標準USB機器が接続されている場合,最大2.0Vで駆動.