USB Type-Cで逆挿入や多様な電力供給が可能に、その仕組みは?:USB Type-Cの革新、同市場を20年間リードしてきたCypressが解説
USBの「欠点」を解消したType-C。USBケーブルを挿入する方向や、本体側、周辺機器側を区別する必要がない。電力供給でも改善が著しい。100Wまでの供給が可能になったばかりではなく、供給の方向を自在に設計できる。周辺機器からPCへ電力を送ることも可能だ。前編では、Type-Cの革新を裏付ける改良点について、電力供給を中心に仕組みを紹介する。
USBに今、イノベーションが起きている。その起点となっているのが新たに規格化された「Type-C」と呼ばれるコネクタだ(図1)。Type-Cはどれだけの変革をわれわれに見せてくれるのだろうか?
Type-Cとは?
現在、モバイル機器やPC、周辺機器のほとんどにUSB用のコネクタが備わっている。ご存じの通り、PCなどの「ホスト」と、周辺機器などの「デバイス」と呼ばれる機器間でUSBケーブルを通じてデータをやりとりする。ホストとデバイスのコネクタ形状は異なっていることが多い。
一般にはホスト機器には「Type-A」コネクタが備わっており、デバイス機器のコネクタは「Type-B」である。さらに、機器の実装面積を小さくしたり、利便性を高めるため、より小型の「ミニ」や「マイクロ」と呼ばれる形状のコネクタがある。ユーザーはそれぞれのコネクタ形状に合わせてケーブルを選択し、ホスト機器とデバイス機器を接続しなければならない。
Type-Cは文字通り、「A」でもなく「B」でもない「C」タイプのコネクタであり、従来のホスト側でもデバイス側でも利用できる(図2)。Type-Cを使えば、「A」や「B」のように区別しなくてもよい。さらに、ユーザーがケーブルを使って機器同士を接続する際、コネクタの方向や表裏を気にする必要がない。
Type-Cのもたらす変革
Type-Cはこれまでのコネクタ形状を共通化して全てのUSB機器に使用できる。他にもさまざまな恩恵がある。以下に挙げるように、Type-Cはさまざまな変革をもたらす。
- コネクタ形状の共通化によるコスト低減
- 電力を最大100Wまで供給・受給可能
- 電力の供給量/受給量をダイナミックに変更可能
- ホスト機能/デバイス機能をダイナミックに変更可能
- 映像・音声データを転送可能
Type-Cは単なるコネクタ形状の共通化ではない。最大100Wまでの電力を双方向でやりとりできる他、映像データや音声データをUSBデータと同時に送受信できるようになるのである。
Type-C通信の基本
Type-Cコネクタを使った通信にはさまざまな用語が登場する。主なものは以下の通りだ。最初に理解しておこう。
- コネクタ:PCや周辺機器用のレセプタクル(メス)と、ケーブル用のプラグ(オス)の総称
- DFP(Downstream Facing Port):デフォルトではホストとして機能し電力を供給する側のポート、従来のType-Aコネクタが担っていた役目を果たす
- UFP(Upstreaming Facing Port):デフォルトではデバイスとして機能し電力を受ける側のポート、Type-Bコネクタに相当する
- DRP:DFPにもUFPにもなることができるType-Cポート
- Source(SRC):ソース。電力を供給するType-Cポート
- Sink(SNK):シンク。電力を受け取るType-Cポート
- Dual-Role:ソース、シンクのどちらの役割も担うことのできるポート、デフォルトの設定を前に示して「ソース/シンク」や「シンク/ソース」と書く
- Provider:プロバイダー、SRC機能を持ったデバイス
- Consumer:コンシューマ、SNK機能を持ったデバイス
- Dual-Role Device:デュアルロール・デバイス、プロバイダーにもコンシューマにもなることができるデバイス
これらのデバイスを接続した構成例を、図A-1に示す。図中央にあるノートPCと右下のタブレットは「Dual-Role Device」であり、電力を受け取りつつ、他の装置に供給している。双方向でやりとりできるという実例だ。
逆挿入を考えた端子の配置を見る
以下では接続方向(裏表)に依存しないType-Cコネクタの構造や、電力供給の自由度の高さを支える仕組みについて紹介する。
Type-AのUSBプラグをPCに接続する際、表と裏を間違えて挿入した経験はないだろうか。筆者も急いでいるときなど、2〜3回やり直すことがしばしばある。
Type-Cでは、プラグの寸法が全て2.4mm高になっており、受け側のレセプタクルに接続する方向も決まっていない。逆挿入は起こらない。
プラグを逆に挿しても正常に動作するよう、Type-Cではコネクタ内部のピンを余分に設け、ピンの配置をほぼ「対称」になるよう工夫している。図3にType-Cのプラグ(ケーブル側)とレセプタクル(本体側)のピン配置を示す。
レセプタクルの上下のピン配置を見て分かるように、プラグの上下を入れ替えて接続したとしても、USB差動信号用ピンDp、Dn(USB 2.0の転送モードLS/FS/HSで使用)やTXp、TXnとRXp、RXn(USB 3.0の転送モードSSで使用)は、上下どちらかの該当信号用ピンと接続できるよう配列に工夫がある。
GNDとVBUS(バス電力)は配置が対称になるよう、それぞれ4本あり、最大100Wの電力をやりとりできるようになっている。ここまでのピン配置をまとめると、ケーブル(プラグ)とDFPまたはUFPデバイス(レセプタクル)がどのような方向で接続されても、信号のやりとりができる。
唯一信号が合致しないのは、中央付近のコンフィギュレーションチャンネル「CC1」(またはCC2)とType-Cケーブルプラグ電力「VCONN」(レセプタクル側はSBU)だ。そこでDFP、UFPのCC1、CC2のどちらか一方はVCONNとなって、EMCA(Electrical Marked Cable Assembly)*1)に電力を供給する。そのメカニズムを図4で説明する。図5には図4から必要な抵抗と配線だけを抜き出した。
*1) EMCAは電子的捺印付きケーブルアセンブリとも呼ばれる。通電容量や対応するプロトコル、ベンダーIDなどType-Cケーブルが対応する特性を機器に伝える機能を持つ。
図4では中央にある赤丸と青丸の3本の対が1本のType-Cケーブルを表している。左がPCなどのホスト(DFP)、右が周辺機器などのデバイス(UFP)だ。図の場合、ケーブル両端にあるプラグのCCは、DFP側でCC1と、UFP側でCC2とそれぞれ接続している。
- ケーブルがDFP、UFPに接続される前は、プルアップ抵抗RpによりCC1、CC2共に5Vだと見なされている。一方、UFPはプルダウン抵抗(Rd)によりCC1、CC2共に0Vとなっている
- ケーブルがDFP、UFPそれぞれに接続されると、DFPのCC1はケーブルのCCを通して自身のRpとUFPのRdでCC2に接続され、RpとRdの抵抗分圧により一定の電圧にセットされる。
一方、DFPのCC2はケーブルのVCONNに接続され、ケーブル内のRa抵抗と自身のRp抵抗との分圧で決まった電圧になる。このときの電圧をType-Cの仕様*2)では、対応する電流値に従って定義している。
つまり、Rp-Rdの接続となっているCCラインをCC信号として扱い、Rp-RaとなっているCCラインをVCONNとして扱う。このときEMCAに供給する電圧はType-Cの仕様で決められている*3)。 - DFPはRdの存在によりUFPが接続されたことを検知して、VBUSをオンに変え、まずは5Vを供給する。UFPは、Rpの存在と、VBUSが供給されていることにより、DFPとの接続を確立する。
*2) USB Type-C Cable and Connector Specification Revision 1.1(2015年4月公開、URL)にあるTable 4-21〜Table 4-25で定義している。
*3) 同Revision 1.1のTable 4-3には4.75V〜5.5Vとある。
パワーデリバリで最大100Wまで供給可能
Type-Cの最大の特徴は何と言っても従来のUSBよりも大きな電力のやりとりが可能な「パワーデリバリ機能」にある。昨今のUSBの使用目的は、通信よりもむしろ充電や電源なのかもしれない。スマートフォンやタブレット、無線モバイルルータ、バッテリー充電器などのモバイル機器はもちろん、今まで充電のソースとなっていたPCにさえ充電できるようになる。
そもそも、Type-Cとパワーデリバリは別々の規格で定義されている。
Type-Cは「USB Type-C Cable and Connector Specification」で定義されたコネクタの規格がベースになっている。パワーデリバリは、「USB Power Delivery Specification(USB PD)」で定義された規格である。Type-Cで使用されるパワーデリバリ規格は中でもRevision 2.0以降で定められている。
パワーデリバリ規格Revision 1.xは従来のUSBケーブル、コネクタを使用した場合の規格だ。動作が複雑であり、開発者、ユーザーどちらにとって決して使いやすいシロモノではない。図6にRevision 1.xでのハードウェア構成を示す。
図6 USB Power Delivery Specification Revision 1.xが対象とするハードウェア構成 出典:USB Power Delivery Specification Revision 2.0, Version 1.1
パワーデリバリに必要な通信は、信号を22.4MHz〜24MHzに周波数変調(BFSK)してからVBUS信号に重畳する。ソース、シンクのそれぞれの送信側、受信側でVBUS信号をフィルタリングして信号を取り出す必要がある(図7)。
図7 BFSKを採用するパワーデリバリ通信のブロック図 送信側(上)と受信側(下)。出典:USB Power Delivery Specification Revision 2.0, Version 1.1
これに対して、Type-Cが用いるRevision 2.0以降では、BMC(Biphase Mark Coding)方式による通信を新たに加えた。
図8を使いBMC方式について説明する。BMC方式ではその名の通り、データを2ビットで表現する。データが「1」の時にはBMCはトグル(HLまたはLH)し、データが「0」の時は、スタティック(HHまたはLL)となる。前のビットがLかHかでどちらになるかが決まる。
BMCのエンコードについて図9にまとめた。これを見ると、HとLの論理が反転してもデータを正しく「1」「0」に正しくデコードすることが可能だと分かる。さらに、BMCコードは3回連続して同じ値を採らない。もしも連続して同じ値になっていれば断線やショートなどの不具合だということになる。
BMCを用いた場合のDFP、UFPそれぞれの送信、受信側のブロック図を図10に示す。通信にはCC信号を使用するため、先のBFSK方式によるものに比べるとハードウェアも随分とシンプルになることが分かるだろう。
図10 BMCを採用したパワーデリバリにおけるDFP、UFPの送信(上)と受信(下)ブロック図 出典:USB Power Delivery Specification Revision 2.0, Version 1.1
電力を「契約書」に基づいて双方向でやりとり
Type-Cでは供給できる電力の幅も広がった。これまではホストとなるデバイスが接続先のデバイスに対して、規格に応じた電力を一方向に供給するというものであった。電流の大きさはUSB 2.0では500mA、USB 3.1では900mA、USB Battery Charging(BC)では1.5Aである。
Type-CではUSB PD仕様を取り入れることで、デフォルトの3A(または1.5A)、5V(15Wまたは7.5W)から、最大5A、20V(100W)までの電力を供給することが可能である。しかも、ホストからデバイスに一方通行で供給するのではなく、双方向でやりとりすることが可能になった。これもUSB PD仕様に定められている。
Type-Cでは、こうしたパワーデリバリのやりとりを始める前に、デバイス間で、供給・受給する電圧、方向や機能などを取り交わす。そのコントラクト(契約)に基づいてパワーデリバリを実行する。
電力を供給する側のポートを「ソース(Source:SRC)」と呼び、電力を受け取る側のポートを「シンク(Sink:SNK)」と呼ぶ。これらの能力を持ったデバイスをそれぞれ「プロバイダー(Provider)」「コンシューマ(Consumer)」と呼ぶ。以上はパワーデリバリという観点からの呼称であり、先に述べた機能としての呼称である、「DFP」「UFP」と分けて使う。
Type-Cでは動作中であっても、状況に応じて供給する電力を変更したり、方向を変えることが可能だ。
図11にパワーデリバリによってソースとシンクがコントラクトを取り交わして、パワープロファイルを決定する手順を示す。図11のソース(DFP)が例えばパワーアダプターであり、シンク(UFP)がPCだと考えることができる。
- ソース(パワーアダプター)がEMCA(Type-Cケーブル)のIDをチェックし、3Aを超える電流に対応しているかどうかを確認
- ソースはSource_Capabilitiesをシンク(PC)に送信して対応可能なパワープロファイルを通知する
- シンク(PC)はソース(パワーアダプター)の提示した対応可能なパワープロファイルから目的のプロファイルを番号で要求
- ソース(パワーアダプター)はAcceptを返信して、要求されたパワープロファイルに対応できることを通知する
- ソース(パワーアダプター)はその後PS_RDYを通知、VBUSをONにする
これにより、ソースは無事要求された電力をシンクに対して供給することが可能になる。
次に、ソース、シンクの互いのパワーデリバリの役割を交換するパワーロールスワップ(PR_Swap)のプロトコルについて説明する。図12はソースからPR_Swapする場合を示す。
- ソース(ここではDFP)がPR_Swapを送信して、電力の供給源をシンク(ここではUFP)に変更するよう要求する
- シンクはソースにAcceptを返信して、ソースからの要求を受領する
- ソースは、VBUSからの電源供給を止め、CCラインをプルダウン抵抗(Rd)に切り替えて、シンクにメッセージヘッダのPort Power Roleビットを”Sink”としたPR_RDYを送信して、自分がシンクになることを通知する
- PR_RDYを受信したシンクは、CCラインをプルアップ抵抗(Rp)に切り替えて、5V(vSafe5V)ソースに切替わる準備をする
- 新たにソースとなったポートはメッセージヘッダのPort Power Roleビットを”Source”としたPR_RDYをシンクに送信して、自分がソースをなったことを通知、VBUSをONにする
- パワーロールスワップ直後は5Vのパワー供給になるが、必要に応じて(先に述べた手順に従い)パワープロファイルを変更することが可能である
非USBの通信(DisplayPort、PCI Express、Thunderbolt、MHL)にも対応
Type-Cでは、新たにAlternate Modeと呼ばれるUSB以外の通信が加わった。例えばモニターとの間で、DisplayPort(DP)通信することが可能である。
実際のデータはUSB 3.0のSS(SuperSpeed)信号であるSSTxとSSRxを使用する。Type-CではSS信号を2チャネルでやりとりできるため、これを単向通信方式であるDPでフルコンフィギュレーションすると最大4レーンのDP通信が可能となる。
DPはグラフィックス関連機器の標準化団体 VESA(Video Electronics Standards Association)が規格化したもの。VESAが2014年に公開したDisplayPort 1.3に準拠すれば、最大32.4Gビット/秒(=8.1Gビット/秒 ×4レーン)の帯域幅まで対応可能であり、4K(3840×2160ピクセル)を超える映像データの通信が実現できる。
図13は、DFP、UFPの間で行われるAlternate Modeへ入るためのネゴシエーションについて説明したものである。図中のDFPが例えばPCで、UFPがDisplayPort対応のモニターとすると分かりやすいかもしれない。
- DFP(ここではソース:PC)とUFP(ここではシンク:モニター)がType-Cケーブルでお互い接続されると、DFP(PC)がDiscover Identityを送信して、UFP(モニター)がどんな機能を持っているのかを探る
- DFP(モニター)はUFP(PC)に自らの「素性」ともいうべき情報を付けてレスポンスする。これによりDFP(PC)は、UFPが(モニター)Alternate Modeをサポートしているかどうかが分かる
- DFP(PC)は、Discover SVIDs(Standard or Vendor ID)をUFP(モニター)に送信して、実際にどんなAlternate Modeをサポートしているかを確認する。
- UFP(モニター)はDiscover Identityの時を同じように、決められたフィールドに自らの詳細情報をVDO(Vendor Data Object)データを埋め込み、DFP(PC)にレスポンスする。これにより、DFP(PC)は、相手のモニターがDisplayPortをサポートしていることを認知する
- 次にDFP(PC)は、Discover ModesをUFP(モニター)に送信して、サポートしているDisplayPortのコンフィギュレーションなど、さらに詳細な情報を確認する
- UFP(モニター)は、これまでのやりとり同様、DFP(PC)に必要な情報をVDOとしてレスポンスする
- DFP(PC)は、UFP(モニター)が期待通りの通信可能なデバイスだと分かると、Enter Modeを送信して、いよいよAlternate Modeに入ることを宣言する
- UFP(モニター)がACKを返すことで、お互いがAlternate Mode(ここではDisplayPort)による通信に切替わる
Alternate Modeによる非USB通信を実現するために、新たなUSBデバイスクラスであるBillboard Device Classが策定された。
Billboard Deviceは、Alternate Modeで通信するデバイスとホストシステムとを結び付ける役割を担っている。具体的には、Type-CドングルやType-Cを通じてAlternate Modeのみで通信デバイスを、エラー処理を含めてUSBホストシステムと正しく通信する、このためにBillboard Deviceが必須となる。
次回はCypress Semiconductorが提供するType-Cのソリューションについて、パワーデリバリを中心に紹介する。
関連リンク
サイプレスUSB Type-CおよびPower Delivery
サイプレスUSBコントローラー
後編記事
USB Type-C、機器設計には多機能な制御ICが役立つ
提供:日本サイプレス株式会社
アイティメディア営業企画/制作:EDN Japan 編集部/掲載内容有効期限:2015年12月17日
Copyright © ITmedia, Inc. All Rights Reserved.