本サイト「LevelUp Logy」は、“スマートフォンやパソコンでゲームを快適にプレイするには?”をテーマに、ゲーム向けのハードウェアやゲームの最新情報、お得な情報をお届けするニュースメディアです。

マウスを差すUSBポートの位置で性能が変わる!?ASRock「Lightning Gaming Ports」の役割と意義を徹底検証

目次

Lightning Gaming Portsは「ひと目でわかる」のが最大の利点

 まずLGPはASRock製マザーボードの中でもゲーマー向けの「Phantom Gaming(PG)」を冠したモデル、さらに「Taichi」や「LiveMixer」「Challenger」を冠した一部モデルに搭載されている。LGPを搭載するマザーボードでは、背面パネルのUSBポートのうち、特定の2ポートが色分けされて実装されている。やや古い製品の場合は背面パネルに文字で書かれていることもあるが、その場合はマニュアルを読んで識別しよう。

今回テストに使用したASRock製B850マザーボード「B850M Challenger WiFi White」。Lightning Gaming Portsは
ASRockが最適な配置と工夫が施されているため、製品ごとにUSBポートの構成に違いがある点は留意いただきたい

 今回テストに使用している「B850M Challenger WiFi White」の場合、LGPは黄色いポートになっている。この黄色いポートにマウスとキーボードを「直接、ハブを介さずに」装着しよう。B850M Challenger WiFi Whiteの場合マウスを上(下図における⑦)、キーボードを下(⑧)に装着するのがオススメだ(理由は後述)。

黄色いUSBポート(図中⑦と⑧)がB850M Challenger WiFi WhiteにおけるLGP。別に①や②にキーボードやマウス以外を装着しても良いし、⑦や⑧にキーボードやマウス以外を接続しても何の問題もない

 LGPは2ポート用意されているが、ポートの上下(上図における⑦と⑧)で物理的に異なるUSBコントローラーに接続されていることが保証されている。これがLGPポートを使う最大の意義だ。物理的に異なるコントローラーに接続することで、マウスとキーボードのデータが互いに干渉する心配はない、ということだ(本当に干渉するのかは後ほど検証しよう)。

B850M Challenger WiFi WhiteのマニュアルにはUSBポートの構成図も記載されているが、これは概念図でありUSBポートとUSBコントローラーとの接続関係を正確に記している訳ではない。図中の丸数字は先のUSBポートの配置図と連動している。②④⑧とフロント用USBが全部B850チップセットに集まっている点には注目しておきたい

 USBの上下関係を正確に把握するには「USB Device Tree Viewer」、通称USBTreeViewというツールが役に立つ。このツールでB850M Challenger  WiFi WhiteのUSBデバイスツリーの情報を引き出し確認すると、⑦の上流はCPU、⑧の上流はチップセット(B850)内部のUSBコントローラーであることがわかる。この「上流が違う」ことが、ひと目でわかるように工夫されているのがLGPの真髄なのである。

USBポートの正確な親子関係を調べるにはUSBTreeViewでどのコントローラー下に表示されるのかを見る。最終的には右に表示されるLocation IDやDevice IDなどを1つ1つ突き合わせて構造を解き明かしていく
USBTreeViewから導き出されたB850M Challenger WiFi WhiteのUSBポート構成図。xHCIが付く部分がUSBコントローラーであり、1〜8の番号は①〜⑧のUSBポートに対応している。LGPの上(⑦)は⑥とコントローラーが共通、LGPの下(⑧)は②と④、さらにPCケースのフロントに引き出すためのUSBピンヘッダー、RGB LEDコントローラーやBluetoothと共通のコントローラーを使用しているという意味になる

 B850M Challenger WiFi Whiteに搭載されたLGPのポテンシャルを最大限活かすなら、マウスはLGPの上(⑦)に装着すべきという理由は上の図が示す通りだ。⑧はフロントUSBやBluetoothなどのデバイスとも接続されているコントローラーで動いているので、理論上競合が多い。

 マウスのように絶妙な動きのトレースが重要なデバイスは、競合の少ない⑦が有利だ。さらに、キーボードはマウスよりもレポートを吐き出す絶対量が少ない。どんなに超人的なキーボード使いでも、ボタンを押すというワンアクションがある以上レポートの絶対量はマウスより格段に小さくなる(ラピッドトリガーであっても、である)。よって⑦はキーボードよりもマウスに使ってもらうのがベストだ。

 ちなみに⑦は⑥と同一のコントローラーで動いているが、⑥は使ってはいけないという意味ではない。⑥を使いたいなら利用頻度の低いマクロパッド的デバイス、あるいはUSB 3.0接続のデバイスだけにするのがオススメだ。詳細は省くが、USB 3.0と2.0の通信経路は別であるため、レポートのジッター問題は出にくいからだ。

 同様に⑧と競合する可能性のある④についても、USB 3.0であれば気にせず使える。②はそもそもUSB 2.0だが、Webカメラやキャプチャーデバイスなど、アイソクロナス転送をするものは避けよう。これも⑥同様にマクロパッド的デバイス用がオススメだ。

 長々と書いてきたが、LGPの中身を知ろうとすると結構複雑で大変だ。だからマザーボードのUSBポートの内部設計を解析せずとも、LGPと書かれたUSBポートにマウスを接続すれば常に最良の結果が得られる、というのがASRockの狙いだ。ポートの色だけ見ていればよいので、これほど楽なものはない。

マウスの敵はアイソクロナス転送デバイス

 ここからはなぜ特定のUSBポートにマウスを接続することが重要なのか?を、さらに深く探ってみよう。USB 2.0(480Mbps)で接続されるデバイスに関して解説する。USB 3.0は通信方法からして異なるため、ここでは取り扱わない。

 USB 2.0では、PC本体(USBコントローラー)に接続されたUSB 2.0デバイスに対し、「送るべきデータはあるか?」と一定間隔で順番に問いかける(ポーリングと呼ぶ)。この問い合わせを受信したデバイスは、「レポート(データ)」を送り返す。USBコントローラーがレポートを受信して、これをOSが解釈する……これがUSB 2.0デバイスの基本動作だ。

 USB 2.0でデータを送信するタイミングは「マイクロフレーム」と呼ばれる細かい時間で厳密にスケジュールされている。1マイクロフレームは125マイクロ秒(0.000125秒)ごとにやってくるが、その際マウスが「毎回応答すれば」毎秒8000回ものレポートが送信される(1÷0.000125=8000)。この時ポーリングレートは8000Hzになるというわけだ。もうピンと来たと思うが、ポーリングレート8001Hz以上、例えば10000Hzや20000Hzのマウスが存在しない理由もここで、1マイクロフレームの枠はUSB 2.0の規格で決められているからだ。

 ここで、USBコントローラーにマウスのみが接続されている場合を考えてみる。その場合マウスの応答を妨げるものは何もない。125マイクロ秒ごとにキッチリとレポートを送出することができるので、タイミングの完璧なデータとしてUSBコントローラーに届く。つまり「ジッターのないデータ」になるわけだ。

 ちなみに、マウスレポートはデータ量としてはとても小さい。マウスの場合XYの相対移動量、ボタンやホイールの操作といったデータが含まれるが、今回検証に使用したCorsair製マウスの場合レポート本体は11バイトの固定長(実際にはヘッダーとかでもう少し増える)、通信時間は1マイクロ秒で済む。

 ここで問題になるのは同じUSB 2.0コントローラーにマウス以外のデバイスが存在する場合だ。3つのデバイスがUSB 2.0コントローラーに接続されていれば、125マイクロ秒の枠内で1台ずつ、順番にデータを送信することになる。ここでマウスにとって最悪なのはアイソクロナス(等時性)転送を行うUSBキャプチャーやWebカメラだ。

 なぜアイソクロナス転送デバイスが最悪なのかというと、アイソクロナス転送デバイスは動いているだけで優先的に125マイクロ秒枠の先頭部分を割り当てられるためだ。つまり常にマウスやキーボードのレポートはアイソクロナス転送デバイスの後に回されることになる。

 さらに悪いことに、アイソクロナス転送デバイスが流すデータ量は毎回微妙に違う(Webカメラだと毎フレーム圧縮度合いが違う)ため、マウスのレポートが送られるタイミングは微妙に前後することになる。つまり「ジッターのあるデータ」に変わってしまうのだ。

あるUSB 2.0バス上にマウスしか存在しない場合(上)、マウスレポートが送信されるタイミングは常に一定だ。しかし、アイソクロナス転送デバイスが存在すると、そのデバイスが枠を優先的に押さえるため、マウスは後回しになる。125マイクロ秒の枠からあふれる心配はないが、マウスレポートが届くタイミングがブレまくるため、ジャストインタイムな処理からは遠ざかる

 ちなみに、マウスやキーボードのようなデバイスは「インタラプト転送」を使用している。キーボードなら打鍵時、マウスなら移動したと判断できる最低距離を移動した時や、ボタン類の操作時だけレポートを送る。レポートサイズは機種によって異なる可能性があるが、今回検証に使用した機材では以下の通りとなった(計測方法は後述する)。

デバイス転送種別1レポート長スループット占有時間
Corsair
「SABRE RGB PRO CHAMPION」
インタラプト11B0.088 MB/s約1µs
Corsair
「K70 RGB TKL CHAMPION」
インタラプト16B+64B (+1024B)約0.005 MB/s
(64打鍵/sの場合)
64Bで約1.6µs
(時間平均0.006%)
クリエイティブ
「Sound Blaster G8」
アイソクロナス平均36B0.288 MB/s約0.6µs
ロジクール
「HD Webcam C525」
アイソクロナス平均1,538B18.47 MB/s平均25.6µs(20.5%)
最大40.1µs
マウスはCorsair「SABRE RGB PRO CHAMPION」を使用。ポーリングレート8000Hzを誇るゲーマー向けマウスだ。RGB LEDも搭載しているが、今回発光パターンは固定色で検証している
キーボードはマウスと同じCorsair製「K70 RGB TKL CHAMPION」とした。USB Type-C接続だが内部的にはUSB 2.0で接続される。こちらもRGB LEDは固定色で動かしている
USB DACはクリエイティブ製のゲーマー向けDAC「Sound Blaster G8」を使用した。USB Type-C接続だが内部的にはUSB 2.0接続である
Webカメラはロジクール「HD Webcam C525」をチョイス。今の主力製品からするとスペックはかなり下だが、この15年落ちの製品が意外すぎる結果を引き出した

 マウス(SABRE RGB PRO)とキーボード(K70 RGB TKL)を比較すると、マウスは圧倒的にレポートサイズが小さい(11B:Bはバイトの略)が、センサーが反応する以上の速度で動かしている間はレポートを出し続けるので秒あたりのデータ量は大きくなる。

 キーボードは16B+64Bという構成になっているが、16Bは互換性確保のため、64Bは全キー同時押し(NKRO)対応のデータだ。1レポートは大きいが秒間64打鍵という超高速連打をしても、レポート全体のサイズは桁違いに小さい。K70からはまれに1024Bのレポートが出てくるが、これはRGB LED等独自機能の制御用と思われる。

 一方、アイソクロナス転送のDAC(Sound Blaster G8)とWebカメラ(C525)を比較すると、DACのデータの方が圧倒的に小さい(CD相当の音源再生時)。C525も1280×720ドットの30fpsというかなり古い仕様のものだが、15年落ちのWebカメラですら平均してマウスの140倍大きいデータを送り、125マイクロ秒の枠のうち20%程度を占有する点に注目だ。

 最後に言及しておきたいのはUSB 2.0接続のUSBマスストレージデバイス(低速なUSBメモリーや光学ドライブなど)だ。これらはバルク転送と呼ばれる方式を使うが、アイソクロナス転送が枠の先頭部分を優先的に使うのに対し、バルク転送はマウスなどの後に回される。つまりアイソクロナス転送よりバルク転送の方が原理的にジッターを引き起こしにくい(ただ転送負荷による原因のジッターはあるかもしれない)。

1 2 3 4

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA

目次