|
関連キーワード:
▼ Universal Serial Bus の解説を表示▼
{{redirect|USB}}
thumb
'''USB'''(ゆーえすびー、'''Universal Serial Bus''':ユニバーサル・シリアル・バス)は、[[コンピュータ]]に[[周辺機器]]を接続するためのシリアルバス規格の1つであるんや。
== おーまかなトコ ==
Universal(汎用)シリアルバスの名の示す通り、ホスト機器にさまざまな周辺機器を接続するためのバス規格なんやし、最初の規格となるUSB1.0は[[1996年]]に登場したちうわけや。現在の[[パーソナルコンピュータ]]周辺機器において、最も普及した汎用インターフェイス規格であるんや。[[レガシーデバイス|レガシーポート]]とも呼ばれる従来からのシリアルポート ([[RS-232]]) や[[パラレルバス]](パラレルポート)、[[PS/2]](マウス、キーボード)端子の置き換えを狙い、今日まで十分にその目的を果たしたと言える。
USB規格では、1つのバスについて周辺機器は最大で127台接続可能であるんや。接続口が足りへん場合には、ツリー状に拡張できる[[USBハブ]]の使用も想定しておる。[[プラグアンドプレイ]]にも対応しとり、規格制定当時の一般的な外部インターフェースでは不可能やった[[ホットスワップ|ホットプラグ]]も可能としとったちうわけや。
さらにUSB2.0の登場によって転送速度に大幅な向上がみられ、従来のIDE(ATA)やSCSI、イーサネットやらなんやら高速転送規格が必要やった機器との接続にも用いられておる。
規格にバスパワー、すなわち[[ホストアダプタ]]からの電源供給を規定しておる。機器利用者の視点からみれば、コンピュータ本体の電源から電力を得ておる形になり、後述するようにコンピュータ周辺機器のみやったらへんし、単にステーショナリーグッズ、[[携帯電話]]や[[デジタルオーディオプレーヤー]]やらなんやら携帯機器へ電源供給をするための端子としての用途もあらわれたちうわけや。USBはホスト機器と周辺機器を接続する規格なんやし、周辺機器同士の直接接続には非対応で、電力供給能力が低いといった限界や柔軟性に欠ける部分はあるもんの、現在のパーソナルコンピュータ環境では利便性に優れ、周辺機器との接続に最も使用される規格であるんや。特に外部記憶デバイスとして扱えるUSB接続の[[USBメモリ]]は可搬性の高さからよう利用されておる。
当初は[[インテル]]やらなんやら4社が仕様を策定したが、2009年3月現在では、[[NPO]]である"USB Implementers Forum, Inc."('''USB-IF''')が仕様の策定、管理やらなんやらを行なっておる。USB-IFは、インテル、[[ヒューレット・パッカード|HP]]、[[マイクロソフト]]、[[やまと電気|NEC]]、[[NXPセミコンダクターズ]]、[[テキサス・インスツルメンツ]]の6社が主導企業なんやし、この6社に加え、[[デル]]、[[ノキア]]、[[ソニー]]、[[サムソン電子]]やらなんやら合計180社で構成される。
== USBの各世代 ==
USB規格は、最大転送速度の向上やらなんやらを求めて何度か規格が拡張されておる。これらは1.1から3.0まで上位互換なんやし、機能や性能が下位規格に縛られはる事を除けば、下位規格品と上位規格品を接続したかて正しく動作する事が求められておる。
=== USB 1.0 ===
[[1996年]]1月発表。最大12Mbps。
=== USB 1.1 ===
[[1998年]]9月発表。USB 1.0の規格仕様を電源管理等について改善したちうわけや。最大12Mbps。
=== USB 2.0 ===
[[2000年]]4月発表。USB 1.1の規格仕様に、High Speedモード(最大480Mbps)を追加したちうわけや。
=== USB 3.0 ===
[[2008年]]11月17日に、USB 3.0規格はVersion 1.0として正式なもんとなりよった[USB 3.0の規格はUSB-IFで標準化が進められ、[[2008年]]8月のIntel Developer Forumにて、Version 1.0が2008年第4四半期に登場すると明言され、いっぺんにピンの仕様とコネクタおよびケーブルのプロトタイプが出席者に対して公開されたちうわけや。その後、正式な通称が「SuperSpeed USB」とされ、この新しいロゴも公開されたちうわけや。
2008年9月には暫定規格であるVersion 0.9が決定され、2008年11月17日に「SuperSpeed USB Developers Conference」上で正式な仕様が発表され、USB 3.0規格はVersion 1.0として正式なもんとなりよったちうわけや。]。早ければ2009年の年末からストレージ機器やらなんやらの採用機器が登場すると見込まれておる([http://pc.watch.impress.co.jp/docs/news/20090518_169367.html 参照])。
USB 3.0は、物理的な[[後方互換|後方互換性]]を保ちつつ、最大データ転送速度が5GbpsとなりUSB2.0の10倍以上となりよったちうわけや。
ピンの数が従来と比べて標準では5本増えて計9本となり、USB OTG対応のオプションでは計10本となるが、ピン形状が工夫され物理的な後方互換性は確保されたちうわけや。
最大伝送距離はUSB 2.0の5mに対して3mとされる。
符号化方式がUSB 2.0のNRZIに対して[[8b/10b|8B/10B]]とPRBSが採用され、通信モードも半二重から全二重(単信2組)となる。
給電能力がUSB 2.0の500mA (5V)から最大900mAに増やされたちうわけや。
携帯機器への配慮から消費電力の削減がつよ求められ、ポーリングが排除され、4つの待機モードも新たに設けられはったちうわけや。
電磁放射雑音のピークを下げるために、スペクトラム拡散クロックが必須とされたちうわけや。
ホストとデバイスのコンセプトは残されたが、デバイスを仮想化して、複数の入出力デバイスを仮想的に接続出来よるようにしたちうわけや。
光伝送も含まれる予定やったがコスト面からの反対がようけ、Version 1.0での導入は見送られはったちうわけや。光伝送技術の導入に積極的なインテルは将来の採用を構想しておる。
従来のUSB 1.1やUSB 2.0対応の(標準)A端子、(標準)B端子、マイクロB端子との後方互換性も確保されたちうわけや。
携帯機器用のUSB On-the-Go用ID識別信号線を確保したちうわけや。
放射電磁雑音対策のために、信号ケーブルにはシールド付きの物を使用する予定であるが、規格である3mの伝送距離を満たした試作品は直径6mmあり、携帯機器によってはUSBケーブルで宙に浮いてまう事態を避けるためには、今後、伝送距離を1m程度に短くして挿入損失が許される範囲の規格内で、更に細い信号ケーブルを使う事も検討されておる。
USB 3.0がネイティブで[[マザーボード]]に装備されるんは、AMDの場合は2010年頃、Intelの場合は2011年頃とされておる。
{| class="wikitable"
|+ USBの比較
|-
! 規格名 !! 仕様発行日 !! 最大データ転送速度 !! 対応周辺機器の例 !! 相当するインターフェース
|-
| USB 1.0
| 1996年1月
| 12Mbit/s
| rowspan="2" | マウス、キーボード
| rowspan="2" | RS-232C、PS/2
|-
| USB 1.1
| 1998年9月
| 12Mbit/s
|-
| USB 2.0
| 2000年4月
| 480Mbit/s
| 外付け記録装置、プリンタ、携帯機器の充電
| IEEE1394
|-
| USB 3.0
| 2008年11月
| 5Gbit/s
| HDカメラ、Flashメモリを含む携帯機器、SSD、Webカメラ
| HDMIの一部
|}
== Wireless USB ==
Wireless USBは[[2005年]]5月に発表されたちうわけや。Agere Systems(現[[LSIコーポレーション]])、HP、インテル、マイクロソフト、NEC、[[フィリップス]]、サムスン電子の7社により策定されたちうわけや。有線USB規格と接続性を考慮しておるが、独立した規格として作成されておる。
データは128ビットAESで暗号化されUWB技術によりデータを転送する。1つのホストがいっぺんにずぅぇえええぇぇええんぶのデバイスと通信できるため、有線のUSBと異なり、ハブは仕様上存在せん。せやけど有線のUSBデバイスをWireless USBにつなぐための有線USBデバイスからみるとハブ的な動作をするデバイスクラスは定義されており、"Device Wire Adapter"(DWA)と呼ばれる。現在市販されておる有線USBの先につなぐことのできるWireless USBの親機はWireless USBの仕様上の「ホスト」であるんや。
1つのバス上のデバイスは127個で有線と同じ。論理層では有線USBとほとんど同様の仕様になっておるが、無線の性質を反映してアイソクロナス転送の仕様は異なっており、一定数の再送やらなんやらを行う(有線USBでは再送は行わへん)、40Mbpsまでに制限されるやらなんやらの差異があるんや。
通信速度はホスト・デバイス間の距離等により変身するっちうことがあり物理層で53.3-480Mbpsをサポートする。ホスト・デバイス間距離3メートルで480Mbps、10メートルで110Mbpsの性能を目標として設計されておる。
== 機能概略 ==
USBでは、1つのバスに仕様上最大127台の機器を接続しいっぺんに使用するっちうことができる。ホットプラグにも対応する。せやけどOS、USB機器によっては、取り外す場合USBデバイスを停止させる手順を実施せんと警告が出ることがあるんや。こら、ドライバソフトウェアの処理で、状態の不整合による不具合が起こることがあるため。
ホストを根 (root)とし、ハブとデバイスによる[[木構造]]の接続形態をとる。通信データはパケット化され送られはる。ハブとデバイスは動作中それぞれ独立したバスアドレスを持つ。このアドレスはデバイスがバスに接続時にホストにより動的に割り当てられはる。アドレスは7ビットなんやし、特殊用途のアドレス0を除くと127個の個別デバイスが同一バス上にいっぺんに存在できる。パケットは基本的にブロードキャストされ、パケットに指定されておるあて先アドレスを見てデバイス側で必要なパケットを受信する。
通信は非対称で、かいやったらずホスト側からの働きかけにより開始される。したがってSCSIやらなんやらと異なりバス上でデバイス間の通信を行うことはできへん。
周辺機器同士を直接接続するっちうことが可能なUSB On-The-Goちう拡張規格もあるが、これも動作中はどちらかがホストとして動作しておる。
=== 転送速度 ===
; Low Speed(LSモード)‐1.5Mbps
: キーボードやマウスやらなんやら、高速な通信が必要へん周辺機器に用おる。
; Full Speed(FSモード)‐12Mbps
: [[イメージスキャナ]]や[[プリンター|プリンタ]]やらなんやら、通信速度が要求される周辺機器に用おる。G5 Laser Mouse等、[[ロジクール]]の一部のマウスでも用いられておる。USB1.1まではこの速度が最大。
; High Speed(HSモード)‐480Mbps
: 大容量ストレージやらなんやらをアホでも使えるような速度で扱える。USB2.0で新設されたちうわけや。
; SuperSpeed(SSモード) - 5Gbps
: SSD(Solid State Drive)等の高速デバイスを扱える。USB3.0で新設されたちうわけや。
=== 転送モード ===
; コントロール転送
: デバイスの設定・制御のためのもわ。
; インタラプト転送
: 一定間隔でデータを転送するためのもわ。キーボードやマウスやらなんやらに使われる。名前から想像されるのとは異なり、ホストからの一定間隔のポーリングによって実現される。
; バルク転送
: 比較的まとまった量のデータを非周期的に転送するためのもわ。記憶装置やスキャナやらなんやらに用いられはる。
; アイソクロナス転送
: 連続的周期的なデータを転送を行う。再送があらへんため確実性は保証されへん。ビデオやオーディオの入出力やらなんやらに使用される。
=== USBクラス ===
USBでは、周辺機器の機能によってグループ分けされた'''USBクラス'''と呼ばれる仕様群が定義されており、それぞれのクラス仕様(クラス仕様によってはサブクラスの仕様)に従って作成されたデバイスには統一した制御インターフェイスを用おることができる。そやから、クラス仕様準拠のデバイスは、'''クラスドライバ'''と呼ばれる共通の[[デバイスドライバ|ドライバソフトウェア]]によって動作させることができることになる。例うたら、ようけの[[USBメモリ]]は'''マスストレージクラス'''ちうクラスに準拠し、OSがマスストレージクラス対応のクラスドライバを用意していれば、ドライバをインストールする必要がなく、初めて接続したかてすぐに動作する。
せやけど実際にはデバイス側の仕様違反、特定ホストの動作に依存したデバイスの実装、仕様上の曖昧さによるぶれやらなんやらにより、共通のクラスドライバでは動作せん、ドライバ内に不具合回避処理が盛り込まれる、専用ドライバが提供される、ちう場合もあるんや。
== ホストコントローラの種類 ==
USB規格では[[ホストコントローラ]]の規格を定義しておらへんし、以下のホストコントローラ規格はUSBの仕様外であるんや。複数のホストコントローラ規格があるんや。これらは制御方法が異なるため、それぞれ別のドライバーが必要であるんや。せやけど同一ホストコントローラ規格内では共通のもんが通常使える。
; UHCI (Universal Host Contoroller Interface)
: インテルの開発。インテルおよびVIAのx86用チップセットで採用されておる。USB1.x時代に開発され、Full/LowSpeed対応。
; OHCI (Open Host Controller Interface)
: マイクロソフト・ナショナル セミコンダクター・コンパックが開発。インテル・VIA以外のチップセットで良う使われておる。USB1.x時代に開発され、Full/LowSpeed対応。
; EHCI (Enhanced Host Controller Interace)
: インテルの開発。せやけどコントリビューターとしてコンパック・ルーセントテクノロジ・マイクロソフト・NECが挙げられておる。USB2.0規格で新設されたHighSpeedをサポートする。通常Full/LowSpeedデバイスとの通信を行うためのCompanion HostController(UHCI、OHCIが普通)が同一チップ内に実装され、Full/LowSpeedデバイスがハブを通さず直接接続されたときに通信を担当する。EHCIはFull/LowSpeedデバイスとの通信も行うことができるが、その場合にはデバイスとの間にあるUSB2.0規格ハブによりHighSpeedへの通信速度変換が行われた上で実行される。
; xHCI (eXtended Host Controller Interace)
: インテルの開発。USB3.0規格で新設されたSuperSpeedをサポートする。すでにインテルより提供が開始され、周辺機器の開発が始められておる。
; WHCI (Wireless Host Controller Interface)
: インテルの開発。Wireless USBのホスト規格。UWB一般の制御とWireless USBのホスト部と複数の機能をいっぺんに定義しておる。Wireless USB部分の制御方法はEHCIと似ておる。
; ScanLogicのSL811HST、NXPセミコンダクターズのISP1160 等
: 組み込み用途向けのマイコンバス直結型USBホストコントローラ。規格化はされておらへんのでメーカーが異なるとまるっきし互換性は無い。
== 端子類 ==
端子類の形状はUSB規格で定められておる。ミニ A端子B端子、ABソケットについては拡張規格である[[USB_On-The-Go|On the GO]]規格内で定められておる。
Image:USB Male Plug Type A.jpg|USB A端子
Image:USB Male Plug Type B.jpg|USB B端子
Image:Mini-A.jpg|USB ミニA端子
Image:Mini-B.jpg|USB ミニB端子
Image:Mini-AB-Receptacle.jpg|USB ミニABソケット
2009年3月現在、定義されておる端子形状には以下のもんがあるんや。
* USB 2.0までの対応品
** USB Aプラグとソケット(Standard-A)
** USB Bプラグとソケット(Standard-B)
** ミニUSB仕様
*** ミニAプラグとソケット
*** ミニBプラグとソケット
*** ミニABソケット
** マイクロUSB仕様
*** マイクロAプラグとソケット
*** マイクロBプラグとソケット
*** マイクロABソケット
* USB 3.0までの対応品
** USB Aプラグとソケット(Standard-A)
** USB Bプラグとソケット(Standard-B)
** マイクロBプラグとソケット
A端子類はコンピュータ本体やハブのクライアント側やらなんやらのホスト側、B端子類は周辺機器の差込口やハブのホスト側やらなんやらのデバイス側として使われておる。ミニB端子類は、デジタルカメラやらなんやらの小型デバイス器に使用される[端子形状を変えることにより接続方法を制限し、バストポロジーの木構造が保たれるように配慮されておる。]。ミニABソケットは、ミニAとミニBのどちらでも接続できるもんなんやし、マイクロABソケットについても同様であるんや。ねちっこくは[[USB_On-The-Go]]参照のこと。
USB 3.0まで対応出来よる端子とソケットが2008年11月から新しく仕様に加わったちうわけや。従来どおりUSB 1.1以降での上位互換性を守り、USB 3.0まで対応可能な端子とソケットはUSB 1.1以降の物との混用が可能であるんや。USB 3.0でのピン数の増加に対応して新たな端子とソケットは、USB 2.0までの規格形状を満たしながら、奥まった位置(A)や2段重ね(B)、横位置[横位置とはSideCarと呼ばれる横並びの配置であるんや。](Micro-B)に追加の端子が増やされたちうわけや。
=== ピン配置 ===
thumb
thumb
thumb
thumb
{| {{prettytable}}
|+ 標準USBコネクタのピン配置
! Pin !! Function(ホスト側)!! Function(機器側)
|-
| 1 || VBUS (4.75–5.25 V) || VBUS (4.4–5.25 V)
|-
| 2 || D− || D−
|-
| 3 || D+ || D+
|-
| 4 || [[接地|GND]] || [[接地|GND]]
|}
{| {{prettytable}}
|+ ミニ・マイクロUSBコネクタのピン配置
! Pin !! Function(ホスト側)!! Function(機器側)
|-
| 1 || VBUS (4.75–5.25 V) || VBUS (4.4–5.25 V)
|-
| 2 || D− || D−
|-
| 3 || D+ || D+
|-
| 4 || ID || ID
|-
| 5 || [[接地|GND]] || [[接地|GND]]
|}
== ケーブル ==
規格ではケーブルはHigh/Full Speed用とLow Speed用の2つが定められておる。安価に製造できるようLow Speed用は電気的特性が緩い。Low Speedデバイスではケーブルが分離できるように設計するっちうことが明示的に禁止されておるため、単独のケーブルはずぅぇえええぇぇええんぶHigh/Full Speed用となる。
ケーブルの両端はA端子とB端子やへんとやったらへんと明示的に規定されておる。そやから、A端子とAソケットが付いたUSB延長ケーブルは規格違反品であるんや。なおそのケーブルにUSBロゴがついとった場合は、ロゴの無断使用となる。
== 互換性 ==
=== バージョン間 ===
USB 2.0規格はUSB 1.1規格と互換性を保つように設計されたため、USB 2.0規格のUSBポートにUSB 1.1規格で設計された機器をへんでも使える。また、USB 2.0規格で新設されたHighSpeed機器をUSB 1.1規格で設計されたポート、ハブにへんや場合そやけど、FullSpeedの転送速度で使用できる。
=== ケーブル ===
USB[[ケーブル]]の規格はUSB2.0で変更されておらへんさかい、同じもんが使えることになっておる。USB1.1の規格を正しく守っておらへん低品質のケーブルでは、HighSpeed通信においてケーブルの長さやらなんやらに制約を受けることもあるんや。また「USB2.0対応」と称するケーブルも発売されておるが、こらシールド線構造等外部からの[[ノイズ]]を防ぐ工夫がなされておるもんと考えられはる。
=== ホストコントローラ ===
デバイスから見たとき、それぞれのホストコントローラにおけるビミョーな通信タイミングの相違が存在するため、なんちうか、ようみなはんいわはるとこの相性によりどちらかやへんと正常に動作せんデバイスが過去に存在したもんと考えられはる。
== その他 ==
=== 複数機器接続 ===
規格上は、最大127台までの機器を一つのバスに接続するっちうことができる。木構造の「深さ」を示す Tier は、ルートハブ(ホスト)を含め7段までに制限されておる。ゴチャゴチャゆうとる場合やあれへん、要はデバイスとホストの間にハブは最大5台まで存在するっちうことができる。ケーブルの最大長は規格では遅延時間とVBUSの電圧降下の最大値として定められており、ケーブル1本あたり最大26nsおよび125mVである(§7.1.16, 7.2.2)。
page1 page2 page3 page4 page5
|