メディア

なぜUSB規格は難しい? 歴史から読み解く種類やコネクターの違い必須技術を基礎から解説(4/5 ページ)

» 2026年06月19日 11時00分 公開
[リョーサン菱洋]
リョーサン菱洋ホールディングス株式会社

USBデバイスクラス

  USB通信を実現するためには、ホストソフトウェア(ドライバー)とデバイスソフトウェア(ファームウェア)が必要です。周辺機器の機能によってグループ分けされたデバイスクラスと呼ばれる仕様群が定義され、クラスに準拠した機器類は、クラスドライバーと呼ばれる共通のドライバーによって動作させることができます。デバイス側のファームウェアがそれらのクラスに対応していると、ホストにインストールされている標準クラスドライバーが呼び出され、動作できる仕組みになっています。

 例えばUSB Audio Classデバイスクラスに対応するUSBスピーカーをホストに挿すと、ドライバーのインストール不要でUSBスピーカーが使用できます。USB規格による代表的なクラスを下記に示します。なお、Vendor Specificで定義されているベンダー定義独自機能を持つUSBデバイスを制御するためには、ホスト用のUSBドライバーも開発する必要があります。

USBデバイスクラスと用途例 USBデバイスクラスと用途例

USBエニュメレーション

 USBはホットプラグによるプラグアンドプレイに対応しています。USBデバイスをホストに接続した際、ホストがそのデバイスが「何者か」を認識し、通信できる状態にするまでの一連の自動的なやりとりや手続きがUSBエニュメレーションです。

 自動認識するために、全てのUSBデバイスにはデバイスディスクリプターのテーブルがあります。ディスクリプターには、デバイスの属性やドライバーをインストールする際に必要となる情報の全てが記述されています。USBプラグを接続すると、ホストは以下の手順でデバイスを認識し最適なドライバーをロードし、USBデバイスを使用できるようになります。

 1. ホストはゲットディスクリプターデバイスをアドレス0に送出します。全ての
   USBデバイスの接続直後のアドレスは“0”です。USBデバイスからの応答によって、
   デバイスが送信可能なパケットサイズとサポートしているエンドポイント番号を
   ホストが知ります。

 2. ホストはセットアドレスリクエストを送り、デバイスにアドレスを割り付けます。

 3. ホストはゲットディスクリプターリクエストを送って、デバイスの追加情報を
   要求します。これにより、ホストはデバイスとの通信に必要な全ての情報を入手
   します。

 4. ホストはディスクリプターの情報を解析し、デバイスに合ったドライバーを選んで
   ロードします。

 上記のすべての手続きが完了すると、デバイスは「Configured(設定済み)」状態になり、使えるようになります。

USBの状態遷移

 USBの状態は、接続直後のAttachedから始まり、エニュメレーションの間、Powered、Default、Address、Configuredの4つの状態を遷移します。各状態で状態変化が発生しなかった場合、Suspended状態に遷移します。各状態での動作は前述の説明の通りです。

 1. Attached
   USBデバイスがホストに接続された状態

 2. Powered
   USBデバイスがホストに接続され、デバイスにVbus電力を供給開始した状態

 3. Default
   バスリセットが行われ、通信ができるようになった状態

 4. Address
   USBデバイスにアドレスを割り当てた状態

 5. Configured
   USBデバイスのConfiguration(設定)が終了し、利用可能な状態

 6. Suspended
   バス上に3ms以上の状態変化がなかった場合に、電力を制限するモード

USB状態遷移図(Universal Serial Bus Specification Revision 2.0 を元に作成) USB状態遷移図(Universal Serial Bus Specification Revision 2.0 を元に作成)

Copyright © Ryoyo Ryosan, Inc. All rights reserved.

特別協賛PR
スポンサーからのお知らせPR
Pickup ContentsPR
Special SitePR
あなたにおすすめの記事PR

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.