USBハブ

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
USBハブ製品の例
サンワサプライ製)

USBハブ(ユーエスビー ハブ)とは、USB機器を複数接続するためのハブである。

概説[編集]

一般に、パソコン本体にあるUSBポートは2 - 4個程度だが、今日ではキーボードマウスプリンターに始まり、外付けHDDUSBメモリからWebカメラ卓上扇風機まで、USB対応機器は大幅に増えた。USBハブはこれらの周辺機器を同時に接続するために用いられる。

USBハブとして一般的に知られているものは4ポートの単体製品(写真を参照)であるが、他の周辺機器に内蔵されているものもある。例えば液晶ディスプレイの側面に3個口程のポートが付いていたり、USB接続のキーボードにUSBハブの機能が搭載されている等である。

筐体の形状は薄型の長方形や正方形が多いが、ポートの配置は製品とその用途によりさまざまである。4個が横に長く並んだものや2×2に四角くまとめられたものの他に、隣接ポートのコネクタ同士の物理的干渉を避ける目的で両サイドに2個ずつや各辺に1個ずつ配置されたものがよく見られる。ハブ本体の側面ではなく上面にポートが並ぶものや、本体から伸びたケーブルの先にそれぞれポートを持つことで自由な向きから接続できるものもある。ポートが16個と多く備えられたものなどもあるが、4ポートのものに比べると高価である(理由は技術解説を参照)。

大きさは手の平に乗る程度のものがほとんどで、持ち運びに便利である。各社から形状やデザインにこだわった様々なものが出されている。

技術解説[編集]

USBハブの仕様は、USB本体の規格の一部 (USB 2.0 Specification , Chapter 11) として規定されている。

USBハブはUSBの規格上ホストコントローラとデバイスの間に入って動作する重要な役割を持つ。 主な役割として以下のものがある

  • デバイスの接続検出
  • デバイスの通信速度検出
  • デバイスへの電源供給とその管理
  • 信号の分配
  • 通信速度変換 (USB 2.0)

USBハブは自身が持つ下流のポートに対して電源 (VBUS) の供給をON/OFFできるものがある。このON/OFFはホスト側から指令することができる。USBハブがこの機能を持つかどうかをホストに通知するプロトコルも仕様で定められている。現実には、この機能を持つと報告するものの外部の電気回路が省かれているためONになったままという仕様違反のハブが数多く見られる。

仕様上はUSBハブが持てる下流のポート数は255個である。しかし、現実のUSBハブの実装では7個が上限となっており、4個以下のものが極めて多い。実際の実装で下流ポートが4個である理由はバスパワード動作時のVBUSの仕様に由来しているものと思われる[誰?]。バスパワード動作時は上流から最大500mA取り出せるが、下流ポート1個につき少なくとも100mA供給する能力が必要とされるためこれを4個つけると計400mAとなり、ハブ自身が使う電力をあわせると4個が最大となる。したがって5個以上の下流ポートをもつハブは必ずセルフパワードでなければならない。実装で下流ポートが7個が上限になっている理由は、USBハブとホストの間でやり取りされるデータの長さに由来しているものと思われる[誰?]。このデータの中には下流ポート1個につき1ビットの可変長データがあり、7個までは1バイトで収まるものの8個以上では2バイト以上になってしまう。正しく実装されていない、すなわちこのデータが1バイトしかないと決め打ちされているハブドライバの存在の可能性を恐れて現実の必要性も考慮し実装されなかったものと思われる[誰?]

USB2.0規格に対応したはUSBハブは、USB2.0において導入されたHigh Speed転送のための速度変換機能を持っている。上流とHigh Speedで接続され、下流ポートにFull SpeedあるいはLow Speedで通信しているデバイスを持つ場合において、Full/Low Speed通信をUSBハブ内でいったんバッファリングしてから、改めてHigh Speedで送信する機能である。この変換を実行する部分をTT (Transaction Translator) と呼んでいる。このTTをハブ全体で1つだけ持つ(ある時点で1つのポートだけをバッファリングできる)ハブと、複数あるハブの2種類がある。前者はSingle TT、後者はMultiple TTと呼ばれる。この2つはハブからホストに通知されるディスクリプタで判別することができる。

USBハブはそれ自体が一つのUSBデバイスであり、USBアドレスを持つ(これは、イーサネットのハブがネットワーク上のノードとみなされないことと対照的である)。したがってハブについてもドライバが必要であるが、USBに対応したシステムでは、ほとんどの場合、ハブのドライバを備えているため、利用者が意識する必要はない。

USBホストコントローラは、ルートハブ (root hub) と呼ばれるハブ相当の回路を内蔵し、通常複数(UHCIでは通常2個)のポートを取り出せるようになっている。

コンパウンドデバイス[編集]

USBデバイスの中には、ハブを内蔵したものがある。このようなデバイスをコンパウンドデバイス (compound device) と呼ぶ。コンパウンドデバイスでは、デバイス部分は内部的にハブの下に接続される形になっている。例として、2ポートのハブを内蔵したUSBキーボードの場合、内部的には、3ポートのハブと、そのうち1つのポートに接続されたキーボードの組み合わせとなっている。

一つのデバイスで複数の機能をもつもの(ポインティングデバイス内蔵のキーボードなど)をコンポジットデバイス (composite device) というが、それだけではハブとは無関係であるため、コンパウンドデバイスではない。なお、コンポジットデバイスは複合デバイスとも呼ばれる。