
USB ハブを使用して、拡張ポートにデバイスを接続すると、ハブに接続された各デバイスの帯域幅が減少し、待ち時間が長くなることがわかります。
しかし、私のコンピュータにマザーボードから直接接続できる USB ポートが 6 つある場合、各 USB ポートに別々のデバイスを接続でき、各ポートが基本的に CPU への専用 USB 接続を持ち、遅延を最小限に抑えてフルスピードで実行できるということでしょうか。それとも、私のコンピュータには USB コントローラーが 1 つしかなく、マザーボードの USB ポートがすでにハブの一部になっているということでしょうか。
また、専用の USB ポートがさらに必要な場合、CPU が対応できると仮定すると、PCI/PCI-e USB コントローラーを追加すると、フルスピード ポートが増えますか?
これは、Windows 7 x64 で Core i7 860 を実行するミッドレンジの Dell ワークステーション マザーボードを想定しています。いくつかの USB 対応マイクロ コントローラーを実行して、GPIO ピンをいくつか取得したいと考えています。
ありがとう、
-フェイク
答え1
はい、お使いのコンピューターはかなり新しいので、おそらくすべての内蔵 USB ポートにバスがあり、複数のポートを同時に使用してもパフォーマンスの低下はまったくないか、ほとんどないはずです。
追加の PCI/PCIe カードも同様に動作しますが、そのカードのすべての USB ポートは PCI バスを共有します。PCI バスは USB バスよりもはるかに高速ですが、遅延が増加する場合があります。ただし、これはそれほど問題にはなりません。
答え2
これは古い質問だとはわかっていますが、受け入れられた回答にはいくつか間違いがあります。
- ほとんどの場合、マザーボードには USB ホスト コントローラーが 1 つしかありませんが、一部のマザーボードには 2 つあります。
- 同じホスト上のすべてのデバイスは、接続方法に関係なく同じ帯域幅を共有します (USB 2.0 では 480 Mbps)。
- ハブは理論上、ある程度の遅延を追加します。USB接続の最大往復時間は1,500ナノ秒ハブを削除すると、数ナノ秒の短縮になります。アプリケーションでサブマイクロ秒のレイテンシが必要でない限り、これはまったく関係ありません。
- PCIe USB カードには独自のホスト コントローラーが搭載されており、総帯域幅が広くなります。
- PCIe よりもレイテンシが増加すると予想する理由はありません。内部 USB コントローラの接続方法によっては、より高速になる可能性もあります。繰り返しますが、ここではマイクロ秒をはるかに下回る差について話しているだけで、実際には関係ありません。