哪个USB插槽是2.0或3.0?我怎么知道?


18

我想知道我的台式计算机是否支持USB 3.0,但是从下面的输出中似乎不太可能。

我从得到以下输出lspci

root@liv-HP-Compaq-dc7900:/home/liv# lspci -v | grep -i usb
00:1a.0 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #4 (rev 02) (prog-if 00 [UHCI])
00:1a.1 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #5 (rev 02) (prog-if 00 [UHCI])
00:1a.2 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #6 (rev 02) (prog-if 00 [UHCI])
00:1a.7 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB2 EHCI Controller #2 (rev 02) (prog-if 20 [EHCI])
00:1d.0 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #1 (rev 02) (prog-if 00 [UHCI])
00:1d.1 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #2 (rev 02) (prog-if 00 [UHCI])
00:1d.2 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #3 (rev 02) (prog-if 00 [UHCI])
00:1d.7 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB2 EHCI Controller #1 (rev 02) (prog-if 20 [EHCI])

来自lsusb

root@liv-HP-Compaq-dc7900:/home/liv# lsusb 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0cf3:9271 Atheros Communications, Inc. AR9271 802.11n
Bus 004 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 002 Device 004: ID 090c:1000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) 64MB QDI U2 DISK

在将所有USB端口检测为USB 1.0而不是USB 2.0之后,我还将发布以下内容的输出lsusb -t

root@liv-HP-Compaq-dc7900:/home/liv# lsusb -t
/:  Bus 08.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
    |__ Port 2: Dev 2, If 0, Class=HID, Driver=usbhid, 12M
    |__ Port 2: Dev 2, If 1, Class=HID, Driver=usbhid, 12M
    |__ Port 2: Dev 2, If 2, Class=HID, Driver=usbhid, 12M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M
    |__ Port 5: Dev 6, If 0, Class=stor., Driver=usb-storage, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/6p, 480M
    |__ Port 3: Dev 2, If 0, Class=vend., Driver=ath9k_htc, 480M

我是否正确理解只有两个插槽支持USB 2.0?如果是这样,我如何精确确定哪个物理插槽支持USB 2.0?

Answers:


8

有很多问题。

首先要问的问题是,您计算机的芯片组不支持USB3。您可以添加一个提供USB3端口的插件卡-在这种情况下,只有卡上提供的端口是USB3,而现有端口仍是USB2。请参阅http://www.newegg.com/Product/Product.aspx?Item=N82E16815166026(适用于笔记本电脑)或http://www.newegg.com/Product/Product.aspx?Item=N82E16839314014(适用于台式机) )作为示例。

关于最后一个问题,哪些端口是USB1,哪些端口是USB2:所有端口都是。

USB1(UHCI)控制器在USB标准中称为“伴侣控制器”。默认情况下,所有端口都路由到那里(以与没有EHCI驱动程序的操作系统兼容),但是如果USB驱动程序检测到USB2设备,则USB2(EHCI)控制器可以接管。

这意味着当您将USB1设备(例如键盘)和USB2设备(例如拇指驱动器)连接到同一端口时,它们将出现在lsusb输出中的不同位置。USB2设备将以EHCI控制器结尾,而USB1设备将以UHCI控制器结尾。物理端口和控制器之间没有1:1的关系。

您可以在设备行本身的lsusb中确定设备运行的模式:Port 2: Dev 2, If 0, Class=HID, Driver=usbhid, 12M,12M表示12MBit / s = USB1,480M = 480MBit / s = USB2,5000M = 5000MBit / s = USB3。

USB3的不同之处在于它具有不同的端口设计-两行9行,而不是四合一,而且许多设备都带有专用USB3端口和一些其他USB2端口(因为它们更便宜)。

为了轻松识别它们,USB3标准要求USB3端口必须带有蓝色插入物。


很有意思!当您说“计算机的芯片组不支持[USB3]”时,您是说没有USB3插槽,还是主板无法理解USB3?原则上,是否可以将USB3控制器添加到台式计算机?
landroni 2014年

1
主板不支持USB3。您可以添加USB3卡以添加支持(也不会有USB3端口-为什么即使在设计母板时就已经添加了USB3端口,也要添加这些端口?)在这种情况下,您需要放置一个或两个USB3端口卡和旧的USB2端口“照常”(仅限USB2)。有关示例,请参阅newegg.com/Product/Product.aspx?Item=N82E16815166026(笔记本电脑)或newegg.com/Product/Product.aspx?Item=N82E16839314014(台式计算机)
Patrick Georgi

另一个问题:“ USB2设备将终止于EHCI控制器,而USB1设备将终止于UHCI控制器。” 这是否意味着一旦我插入设备,就可以通过检查lsusb -t并检查设备是否使用EHCI和发布广告480MB(将usb-storage设备放入OP中)来验证其是否在USB1或USB2下运行?
landroni 2014年

1
您可以在设备行本身的lsusb中确定设备运行的模式:“端口2:开发2,如果0,Class = HID,Driver = usbhid,12M”,则12M表示12MBit / s = USB1,480M = 480MBit / s = USB2,5000M = 5000MBit / s = USB3
Patrick Georgi 2014年

谢谢,这回答了我的问题。就我而言,您在此处所做的两个评论值得在答案本身中包含。
landroni 2014年

18

根据USB上Wikipedia页面

色彩

端口和连接器通常使用颜色编码以区分不同的功能。这些颜色不是USB规范的一部分,制造商之间可能会有所不同。

- USB 1.x               White
- USB 2.0               Black, sometimes white
- USB 3.0               Blue
- Sleep-and-charge      Yellow or red

如果要查看USB 3.0 Wikipedia页面,请附加以下标识符:

USB 3.0于2008年首次推出,增加了一种新的传输模式,称为“ SuperSpeed”(通过端口的蓝色或缩写SS区别于USB 2.0)

以及这个:

由于USB 2.0和USB 3.0端口可能共存于同一台计算机上,并且它们看起来相似,因此Standard-A USB 3.0连接器具有蓝色插入物(Pantone 300C颜色)。相同的颜色编码适用于USB 3.0 Standard-A插头。

至于电缆(有时是端口本身,请注意电缆上的“ SS”,它代表Super Speed,它是3.0 USB的名称)。

                                       SS的

从命令行?

lsusb

您还可以lsusb用来标识哪些端口被评为USB 2 vs. 3,如下所示:

$ sudo lsusb -v | grep -iE "Bus|^Device Desc|bcdusb"
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bcdUSB               2.00
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Device Descriptor:
  bcdUSB               2.00
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device Descriptor:
  bcdUSB               1.10
...
...
Bus 010 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Device Descriptor:
  bcdUSB               3.00

注意:每个具有的设备1.10都是通常打开的通常为黄色的USB端口之一。

lspci

您也可以使用做类似的事情lspci

$ sudo lspci | grep USB
00:1a.0 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.2 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1a.7 USB controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1d.0 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.7 USB controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
02:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host Controller (rev 03)

再次在输出中,标记为的端口USB是始终通电的类型(也称为“ 睡眠和充电端口”),而USB2USB 3.0则进行了相应标记。


“始终通电”类型是什么意思?
landroni 2014年

1
@landroni-便携式计算机或系统挂起或关闭时,这些端口仍处于通电状态。它们主要用于充电设备。
slm

@landroni-回答有关系统是否具有USB 3的问题,您提供的输出将拒绝。但是请记住这一点。我有2个相同的系统,一个正在运行的CentOS 5和6的其他系统有USB 3个端口,但CentOS 5上不能使用它们,而CentOS 6的就可以了,根据我在A.显示的命令
SLM

这是否意味着USB控制器要慢于USB2?(对不起,我仍然想从所有这些输出中
弄清楚

@landroni-是的。我相信它们是常规的1.1 USB端口,基于lsusb来自perf的上述输出。立场。
slm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.