为什么当连接到 USB 2.0 集线器时,USB 驱动器以 USB 1.1 的速度运行?

为什么当连接到 USB 2.0 集线器时,USB 驱动器以 USB 1.1 的速度运行?

我的 USB 驱动器 (WD Express) 出现了一个奇怪的问题。当我将它连接到 Windows PC 的唯一 USB 端口时,它以高速 (USB 2.0) 运行。但是,当我将它连接到 USB 2.0 集线器作为唯一设备时,它只能以全速 (USB 1.1) 运行。为什么会这样?

当 USB 驱动器直接连接到 PC 时,USBView 的输出:

USB Mass Storage Device:
bcdUSB:             0x0200
bDeviceClass:         0x00
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x40 (64)
idVendor:           0x1058
idProduct:          0x1021
bcdDevice:          0x2002
iManufacturer:        0x01
0x0409: "Western Digital"
iProduct:             0x02
0x0409: "Ext HDD 1021"
bNumConfigurations:   0x01
ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed:     High
Device Address:       0x02
Open Pipes:              2

当 USB 驱动器通过 USB 2.0 集线器连接时的输出:

Generic USB Hub:
Device Descriptor:
bcdUSB:             0x0200
bDeviceClass:         0x09
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x08 (8)
idVendor:           0x05E3 (Genesys Logic, Inc.)
idProduct:          0x0606
bcdDevice:          0x0702
iManufacturer:        0x01
0x0409: "ALCOR"
iProduct:             0x02
0x0409: "USB Hub 2.0

    USB Mass Storage Device:
    bcdUSB:             0x0200
    bDeviceClass:         0x00
    bDeviceSubClass:      0x00
    bDeviceProtocol:      0x00
    bMaxPacketSize0:      0x40 (64)
    idVendor:           0x1058
    idProduct:          0x1021
    bcdDevice:          0x2002
    iManufacturer:        0x01
    0x0409: "Western Digital"
    iProduct:             0x02
    0x0409: "Ext HDD 1021"
    bNumConfigurations:   0x01
    ConnectionStatus: DeviceConnected
    Current Config Value: 0x01
    Device Bus Speed:     Full
    Device Address:       0x03
    Open Pipes:              2

答案1

根据 David(见评论)的说法,情况并非如此,而且我确实错了(USB 集线器可以并且必须传递更大的数据包),我无法在答案被接受时删除它。


虽然不是 100% 确定,但我认为这是 USB 集线器的错误。

忽略所连接的驱动器本身并查看集线器的统计数据(即非缩进的行):

bMaxPacketSize0:      0x08 (8)

HDD 本身报告:

bMaxPacketSize0:      0x40 (64)

因此,在我看来,集线器一次只能处理 8 个字节;驱动器一次可以处理 64 个字节。(我不确定它是否还能传递更大的数据包;我不这么认为。)

这可能会(应该?)产生额外的开销,并会减慢速度(如果使用最大带宽,则减慢 8 倍)。

答案2

您能确认这是 WD Elements 吗?设备的型号是什么?正如这些人所说,驱动器可能没有通过集线器获得足够的电力,从而限制了其性能。您是否有其他驱动器或 USB 集线器来尝试不同的组合,看看问题是否仍然存在?

如果你怀疑驱动器的健康状况,你可以运行WD Data Lifeguard 诊断并查看驱动器是否通过快速测试和扩展测试。

Captain_WD。

相关内容