Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Traveling questioneer from StackOverflow, asking about bandwidth usage on USB 3.0 controller. I'm hoping this is a decent place to ask as I didn't see a specific "computer hardware" stack in the list.

My question is about USB2.0 devices on a USB3.0 controller. I have four webcams coming into one USB3.0 controller. We've had issues in the past with power, so we got a USB2.0 externally powered hub, which seemed to do OK for three cameras. When the forth one comes in, we run into Data Bandwidth issues.

Now, since it's a USB 2.0 hub, if we went and got a USB 3.0 hub, I assume there would be a boost in bandwidth, but would it matter if the Webcams are still 2.0?

Also, does it matter on the type of USB extension cable that we're using? It's just a standard A-male to A-Female connection, but is there a difference between USB2.0 and 3.0 cables (aside from connection interface) or is it just the ports?

share|improve this question
    
A USB 2.0 device plugged into a USB 3.0 would only recieve USB 2.0 Power. Furthermore the bandwidth would only increase if the devices were USB 3.0. The type of USB 2.0 wouldn't effect anything in this situation. You need to split the devices betwen two controllers. or simply use one of the USB 2.0 controllers on the system. USB 2.0 device plugged into a USB 3.0 port behaves like a USB 2.0 you gain no performance increase AT ALL. Likewise the same is true for a USB 3.0 device plugged into a USB 2.0 controller. –  Ramhound May 2 '13 at 15:54
1  
There is a difference in USB 2 and 3 cables. The cable's characteristics are different and it has more pins, so you should use USB 3 cable to connect USB 3 hub to USB 3 port. –  AndrejaKo May 2 '13 at 16:25
add comment

4 Answers 4

up vote 1 down vote accepted

Depends on the HUB IC. If there is only a Single Transaction Translator, then the USB 2.0 (Or Worse 1.1) devices share bandwidth between the hub and the host, only one at a time. If the HUB IC has a Multiple Transaction Translator, the bandwidth should be multiplexed, so that all the information goes over a single xHCI channel.

share|improve this answer
1  
I have no idea what that means, but it sounds really cool. Do you have any links/articles for what you're referencing? –  tPlummer May 2 '13 at 19:13
    
@tPlummer Datasheets arn't always as clear as they could be, especially on new usb 3.0 hub ICs. The 2.0 hub IC GL850G datasheet (genesyslogic.com/manage/upfile/12052255151.pdf) has some info, and the USB 2.0 Specifications, Section 11.14 explains this as well sdpha2.ucsd.edu/Lab_Equip_Manuals/usb_20.pdf I am not completely familiar with the 3.0 specification page to tell you exactly where to look, but that's another resource. gaw.ru/pdf/interface/usb/USB%203%200_english.pdf –  cde May 2 '13 at 22:11
    
I appreciate it. Thanks! –  tPlummer May 3 '13 at 0:35
add comment

There wouldn't be a boost in bandwidth between the camera and the hub. However, assuming the hub was connected over a USB 3.0 connection to a computer there would be an overall boost to the computer.

To get the higher speeds you need to use new USB 3.0 cables. See the wikipedia article for more info.

share|improve this answer
    
"The additional USB 3.0 pins are two differential pairs and one ground (GND_DRAIN). " So because none of those pins are in use, I'm not gonna get the bandwidth boost. Bummer beans. –  tPlummer May 2 '13 at 15:59
    
This is actually incorrect. As the other answers have indicated, there will not be an increase in the bandwidth back to the computer, even over a USB3 cable to a USB3 port. This is because USB2 device traffic does not get merged into the USB3 data stream, but it actually runs on the original, separate, USB2 wires that are in the USB3 cable. If there is ever a USB3 hub with Multi-TT support for USB2 then what you are saying would be correct, however as the other answers have suggested this is not currently the case. –  Malvineous Apr 24 at 21:34
add comment

I believe that cde's response is incorrect. USB2 did indeed introduce Transaction Translators for attaching FullSpeed and LowSpeed devices to a HighSpeed hub. However not only did the USB3 spec fail to follow this precedent, but it requires that USB3 hubs use the old USB2 protocol over the two original signal wires of it's uplink for all downstream HS/FS/LS devices. All USB3 cables must carry both the old HS/FS/LS signal wires and the four new SS conductors. USB3 hubs are effectively two separate hubs for two separate buses. They may not actually be two separate chips, but since they're separate logic blocks, they may as well have been.

XHCI root hubs do not have this constraint: they may provide a full USB2 HS channel's worth of bandwidth to each port.

For bandwidth calculation, USB2 devices on an external USB3 hub might as well have been attached to a USB2 hub. Because, in essence, it is.

There are no insurmountable technical hurdles to a USB Transaction Translator; the designers just took a shortcut. VIA Labs owns some patents related to a USB3 Transaction Translator, which might explain why it didn't make it into the spec. They announced an actual implementation back in 2012 (see http://via-labs.com/en/resources/pressroom/2012/PR120104-usb2expressway.jsp) but I don't think it ever made it to a shipping product and I haven't heard anything on the topic since. At this point, implementing a USB2 controller driver on top of an XHCI stack would be non-trivial; maybe that's why we haven't seen one.

share|improve this answer
add comment

Unless you can reduce the frame rate of the Cams, you have likely exceeded the bandwidth.

Theoretically an USB HD webcam working at 15 FPS consume a bandwidth nearing 18MB/s - 1280 (width) x 960(height) x 3(RGB channels) x 15(FPS) - without compression. i.e. two cams per Usb2 port

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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