質問: usb2.0ポートが4つあっても、合計最大転送速度は480bpsですか usb2.0ポートが4つあっても、合計最大転送速度は480bpsですか? 私のpcにはusb2.0が4つ標準で付いています。制御するプロセッサというかコントローラーは1つです。 仮に、転送速度480bpsの機器があったとします。それを各ポートに1つ、合計4つ接続したとします。 その場合、合計最大転送速度は480bpsですか? それとも1,920bpsですか? その転送速度になる理由も教えて下さい。 半二重通信だからとか480bpsは理論値だとか、細かい事は無しで、単純な理屈でお願いします。
回答: 何故か間違った回答が多いですね。 q/usb2.0ポートが4つあっても、合計最大転送速度は480mbpsですか? a/デバイスマネージャ上にehciが1つしかなくhost controllerに対してroot hubはぶら下がっていますか? その場合は、その通りです。 q/それを各ポートに1つ、合計4つ接続したとします。その場合、合計最大転送速度は480mbpsですか? それとも1,920mbpsですか? a/この判断は簡単ではありません。ホストコントローラがどのように実装されていて、root hubがいくつ使われているかに依存します。誤認する人が多いですが、技術的にはhost contorollerは480mbpsを上限とするベストエフォートで動作していると思って下さい。これは、usb2,0の仕様によるものです。 元々、usb2,0は決まったデバイスに決めたルートでデータを送る仕組みを備えていません。 とにかく、ホストに対してデバイスクラスが「これ」ですよという信号を送り、それに対してデバイスクラス「これ」は、この情報を受け取りなさいという命令をホスト側が送信するのです。これは、ホストにぶら下がった全てのデバイスが受信します。 例えば「あれ」という機器は、クラスidが異なるため、データを受け取らず破棄します。 対して、「これ」という機器は情報が届けば、データを受理し受け取った旨をホストに返すのです。 そのため、同じホストコントローラからroot hubで分離しただけのusbポートの場合はいくら内蔵ポートが4つであっても、1つのホストにぶら下がる機器になり最大速度は全ポートの合計で480mbpsになります。 それに対して、コントローラの制御が別々で4portをroothubを介さず登載している(4つehciがある)場合は、1920mbpsを上限とします。尚、ホストコントローラ1つに対して1つのドライバがインストールされます。そのため、この質問での回答は480mbpsが上限です。 と言う回答になります。 尚、usb3,0ではデバイスとの通信をより厳密化しており、より効率的に機器を認識する通信方式が採用されています。それでも、ホスト1つあたりの速度は最大5gbpsとなります。