5
\$\begingroup\$

Folks,

Let's say I have a USB 3.0 card with four USB 3.0 ports on it. I just connected the card to my mother board.

When we say 640MB/s of bandwidth for USB 3.0, is that bandwidth per port (or 640*4 = 2560MB/s total), or is that the total bandwidth (or 640/4 = 160MB/s per port)?

\$\endgroup\$
2
  • \$\begingroup\$ USB3.1 is 10MBps \$\endgroup\$
    – D.A.S.
    Commented Mar 10, 2017 at 19:39
  • \$\begingroup\$ Aight...but I have USB 3.0 \$\endgroup\$
    – Pototo
    Commented Mar 10, 2017 at 20:52

1 Answer 1

6
\$\begingroup\$

The short answer from the USB spec, each port has a maximum throughput of 450 MB/s. But the USB 3.0 PCIe Host controller interface has a maximum throughput of 500 MB/S. USB 3.1 raise this to 1GB/s by changing the serial data from 5 Gbps to 10 Gbps and changing the data encoding.

The 450 MB/s is the maximum data transfer rate for the whole USB 3.0 interface (It is a single lane PCIe interface). Just like USB 2 each port supports transactions that while underway take the whole bus at the exclusion of all other devices on all other ports for this Host controller.
If you had a 4 port card and had disk drives connected to each port, then the aggregate throughput for all drives combined cannot exceed the maximum of 450 MB/S (ignoring other protocol overheads) for the Host controller (the one lane PCIe interface). For each individual drive the throughput rate would be 450 MB/S for each data transaction, but an aggregate of 450/4 if all the drives were transferring equal data loads.

\$\endgroup\$
4
  • \$\begingroup\$ :-(...I understand. That is not very good. Maybe I should try USB 3.1 some time. \$\endgroup\$
    – Pototo
    Commented Mar 10, 2017 at 20:54
  • \$\begingroup\$ Same deal, just a faster Lane. 10Gbps PCIe instead of 5 Gbps. usb.org/developers/ssusb \$\endgroup\$ Commented Mar 10, 2017 at 21:23
  • 1
    \$\begingroup\$ Actually, the max theoretical bandwidth of USB 3.0 is 500 MB/s. as well as PCIe Rev.2, not 640. Because of 8B/10B raw encoding, which takes 10 bit times to transmit 1 byte. So 5000 Mbits/s / 10 = 500 Mbytes/s. \$\endgroup\$ Commented Mar 10, 2017 at 23:25
  • \$\begingroup\$ You are absolutely correct....altered answer \$\endgroup\$ Commented Mar 11, 2017 at 1:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.