UHS-II 対応で USB 3.2 Gen1 接続し、最大 200MB/s ぐらいの読み込み速度が出るはずなのに、速度が出ないときの原因

40MB/s ぐらいで止まる

USB2.0 が 480Mbps(60MB/s)なので、実効速度40MB/s程度ぐらいで止まりうる。

原因

  • USB Type-A をゆっくりさしこむと USB2.0 で接続されてしまうことがある
    • 3.0 用の接点が奥にあるため
  • ケーブルが USB3.0 に対応していない (無結線)
    • 充電用ケーブルはダメです。柔らかいケーブルはだいたいダメです
  • ケーブルのコネクタとデバイスの相性が悪い (接触不良)
    • デバイス側コネクタが劣化してたりするとありうる
  • ケーブルの品質が低い
    • ケーブル品質が低すぎてUSB3.0のネゴシエーションに失敗すると USB2.0 にフォールバックします。

試してみること

  • Type-A なら一気に刺しこむ
  • Type-C で接続する
  • ケーブルをいろいろ変える
  • デバイスを変えてみる

90MB/s ぐらいで止まる

SD カードが UHS-I動作(104MB/s理論値)している可能性がある

原因

  • カードリーダーが非対応
  • カードリーダーの接触不良
  • カードの接点不良

試してみること

  • カードリーダーを変える
  • 接点復活剤をかけてみる
  1. トップ
  2. tech
  3. SDカードリーダーの速度が出ないときの挙動チェックリスト

5Gbps / 10Gbps 対応の通信用ケーブルは購入したら必ずベンチをとるべき。

というのも粗悪品であっても再送制御などで実行速度が下がるだけで通信できることが多いため、気付きにくいから。

1GB/s で読める SSD なのに、400MB/s でしか読めないということが起こりうる (10Gbps でリンクできず、5Gbpsにフォールバックしている)。一見動いてしまうので気付きにくいが実行速度が半分以下なのは相当信号状態が悪い。まずできるだけ短くて信頼できるメーカーの通信ケーブルを買うべき。

ケーブルやコネクタの見た目がよくても騙されてはいけない。うちでいろいろ検証した結果、エレコムの見た目しょぼいケーブルのほうが一番まともだった。

エレコム USBケーブル Type C (USB A to USB C) 1.0m USB3.1認証品 3A出力 最大10Gbps ブラック USB3-AC10NBK - エレコム(ELECOM)

エレコム(ELECOM)

5.0 / 5.0

スループットの目安

  • USB 2.0 480Mbps ~35-40MB/s
  • USB 3.2 Gen1 5Gbps ~400-450MB/s
  • USB 3.2 Gen2 10Gbps ~800-1000MB/s
  • USB 3.2 Gen2x2 20Gbps ~1600-1700MB/s

USB3はLTSSM(Link Training and Status State Machine)のトレーニングプロセスでリンクスピードを決めている。ここで10Gbpsでリンクできる品質にないと判断されると下の規格にフォールバックする。

10Gbps 以上は特に物理的に厳しい

1m以上で 10Gbps を謳っているものはまず嘘なので買うべきではない。10Gbps のパッシブな「延長ケーブル」もありえない。

  1. トップ
  2. tech
  3. 粗悪品のUSBケーブルが多いので買ったら必ずベンチをとるべき

https://www.uwe-sieber.de/usbtreeview_e.html USB Device Tree Viewer を使うのが早い。Windows 標準機能ではわからない。クソ (macOS のあなたは「システム情報」→「ハードウェア」→「USB」でわかります。良かったですね)

USB Device Tree Viewer の表示もそれほど分かりやすいとはいえない。以下が頭に入ってないといけない。

  • Low Speed = 1.5 Mbps (USB 1.0+)
  • Full Speed = 12 Mbps (USB 1.1+)
  • High Speed = 480 Mbps (USB 2.0)
  • SuperSpeed = 5 Gbps (USB 3.0 = USB 3.1 Gen1 = USB 3.2 Gen1)
  • SuperSpeed+ = 10 Gbps (USB 3.1 Gen2 = USB 3.2 Gen2)

アイコンにSがついてればSuperSpeed以上、HはHigh Speed、F は Full Speed

そして USB3系と USB2系は完全に別レイヤーで二重になっているという点を理解している必要がある。例えば USB3 のハブを繋いだら、必ず USB3 のハブと USB2 のハブが2つ表示され、ポートもそれぞれ別々に表示される。


3.2 Gen 2 (10Gbps) のハブ

       ========================== Summary =========================
 Vendor ID                : 0x05E3 (Genesys Logic, Inc.)
 Product ID               : 0x0625
 USB Version              : 3.2 Gen 2
 Port maximum Speed       : SuperSpeedPlus or higher
 Device maximum Speed     : SuperSpeedPlus or higher
 Device Connection Speed  : SuperSpeedPlus or higher
 Self powered             : yes
 Demanded Current         : 0 mA
 Used Endpoints           : 2

USB 2.0 のハブ (ただし USB3.0 のハブと物理的にポートを共有している)

       ========================== Summary =========================
 Vendor ID                : 0x1397 (Behringer Spezielle Studiotechnik GmbH)
 Product ID               : 0x0507
 USB Version              : 2.0
 Port maximum Speed       : High-Speed (Companion Port 1-20-4 is doing the SuperSpeed and SuperSpeedPlus or higher)
 Device maximum Speed     : High-Speed
 Device Connection Speed  : High-Speed
 Self powered             : no
 Demanded Current         : 500 mA
 Used Endpoints           : 1

USB 2.0 でポートスピードと接続スピードが違う場合

USB 3系と USB 2系は完全に分離しているので、Port maximum Speed が SuperSpeed で Device Connection Speed が Full-Speed ということは起こらない。

       ========================== Summary =========================
 Vendor ID                : 0x045E (Microsoft Corporation)
 Product ID               : 0x07A5
 USB Version              : 2.0 -> but Device is Full-Speed only
 Port maximum Speed       : High-Speed
 Device maximum Speed     : Full-Speed
 Device Connection Speed  : Full-Speed
 Self powered             : no
 Demanded Current         : 100 mA
 Used Endpoints           : 4
  1. トップ
  2. tech
  3. WindowsでのUSBリンクスピード