motherboard - When I connect 4 USB drives to my PC at the same time, does each slot have 480 Mbit/s?

08
2014-07
  • Ian
    1. When I connect 4 USB drives to the 4 available slots on a PC at the same time, does each slot have theoretical 480 Mbit/s or will it be quartered and every port will only have 120 Mbit/s?

    2. Does this change when you put 4 USB drives in a Marvell SoC, or is there the same internal infrastructure?

  • Answers
  • Darth Android

    No. Each USB host controller will max out at 480Mbps. Everything else is just connected via external or internal hub, and will split the 480Mbps provided by that host controller. Quoting the wikipedia article:

    The theoretical maximum data rate in USB 2.0 is 480 Mbit/s (60 MB/s) per controller and is shared amongst all attached devices.

    This is the exact same for a SoC. There's usually very little variance in the USB architecture between devices. If the SoC just has 1 host controller, then all 4 ports share the 480Mbps. Depending on what that SoC is designed to do, it very well might have a dedicated controller for each port, but that depends on the specific SoC we're talking about.

    When you buy a PCI or PCI-e expansion card with USB ports, that card contains its own controller, and the bandwidth on that card will not be shared with existing ports in your system. All ports on the expansion card will share the 480Mbps, however.

    usb host controllers

    Here we can see the two internal host controllers on my system, and the 3rd one provided by the docking station. These power 8 USB ports (4 on the laptop, 4 on the docking station). All four ports on the docking station must share 480Mbps, but on the laptop, only pairs of ports have to share (note, I'm assuming here that they have 2 ports on one controller and 2 on the other; there's no way to tell except to see how stuff is actually wired up inside).

    Root hubs attach directly to the host controllers, and then secondary hubs attach to them. Secondary/generic hubs may be internal to your computer/motherboard, may be an external hub you plug in, or may be internal to a device you attach (the high-end gaming keyboards and mice usually contain an internal USB hub, and then all the extra/special macro keys actually show up as a second, separate USB device from the keyboard or mouse itself)

  • Hennes

    It depends on your PC.

    If you connect them to a motherboard with four independent USB controllers then yes, each port will have full bandwidth.

    If the motherboard uses some internal hubs (and many, if not all do) then you are sharing the controllers bandwidth.


    You could work around this by using four USB expansion cards. (Each with its own controllers, and assuming that you have room for four cards).


  • Related Question

    windows xp - Any way to ensure that a USB key always has the same drive letter?
  • Xavier Nodet

    Depending on what's currently connected onto a PC, a USB key does not always get the same drive letter. This is an issue for me because I want to use this key as a backup destination, and I thus have to change the path that's used from time to time.

    Is it possible to make sure that a specific key ends up with always the same letter?

    Thanks.


  • Related Answers
  • pelms

    If you insert the USB key and then go to the Disk Management Console (right-click '(My) Computer' and select 'Manage' then 'Storage' in the left hand panel). You can then right-click a drive in the right hand panel and select 'Change Drive Letter and Paths...' where you can assign it a specific drive.
    Then repeat the process for each USB key.

    I'd keep the letters towards the end of the alphabet to avoid conflicts with other removable media.

    I go from 'U' upwards...

  • desolat

    There is a tool called USB Drive Letter Manager (USBDLM) with a whole bunch of features for USB drives such as stable drive letters depending on the device ID, hiding non-used card reader drive letters, starting scripts on connect (of certain devices), ... Really cool and stable solution for all the Windows USB deficiencies!

  • David Spillett

    I'm pretty sure this is not possible out-of-the box (though I have seen some third party utilities that claim to massage Windows' behaviour to this effect).

    What you can do though is use the disk manager (found in the tree of configuration options accessed via "manage" from the right-click menu on "my computer" in XP) set the volume to appear in a particular directory instead of, or as well as, under a drive letter. This does seem to stick. For instance, one of my USB drives always appears as c:\mnt\littlered, and the three partitions on an old hard-drive that I sometimes connect via a PATA->USB adaptor turn up as c:\mnt\oldsys_c, c:\mnt\oldsys_e and c:\mnt\oldsys_f.

    If the drive letter is important (rather than the volume just being in the same place more generally) then you could try sharing the directory that you chose and map that share locally as a particular drive letter. I'm not tried this myself, but in theory it should work without issue.

    Exactly how Windows identifies the drives I've not seen documented, so this may fall down if you have two completely identical mass storage devices, but it has worked for me so far.