我应该将鼠标插入 USB 3.0 端口吗?

phi*_*eat 112 usb mouse

我正在寻找有数据支持的权威答案。有一天,一位朋友问我,将鼠标插入 USB 3.0 端口而不是可用的 2.0 端口是否会对他有所帮助。我轻率地回答说,这根本没有区别。当然,我不是唯一一个这么认为的人。请参阅以下答案:

直觉上,我不认为数据吞吐量应该是一个问题。鼠标在串行端口上运行良好,最大传输速率为 112.5 Kbps。USB 1.0 以 1.5Mbps(慢)或 12Mbps(快)的速度运行。USB 2.0 可以处理 480Mbps,3.0 可以达到 5Gbps。

但是响应速度呢?是否有已发表的关于 USB 2.0 和 3.0 端口之间响应时间的研究?

我的问题是,我说得对吗? 如果我有一只非常漂亮的鼠标会重要吗?我的朋友可以放心地将他在英雄联盟中的失败归咎于他缓慢的 USB 端口吗?

AFH*_*AFH 130

  1. 鼠标是一种慢速设备(旧的 PS/2 标准是基于 RS232C 的),因此 USB1 绰绰有余。
  2. USB3 端口有用于高速传输的额外连接器,但也有标准 USB2 连接器以实现向后兼容。
  3. 除非您的鼠标有这些连接器(我无法想象任何鼠标都有),否则它将通过 USB3 连接器中的 USB2 连接。

所以你完全正确:将鼠标插入 USB3 连接器不会带来任何好处。如果鼠标响应缓慢,那是因为其他东西正在占用 CPU,从而损害鼠标驱动程序。

  • 即使连接到这样的端口,鼠标也不会使用 USB 3,这是一个好点。我想补充一点,它甚至可能不使用 USB 2;鼠标中的 USB 控制器不太可能支持 USB 1.1 以外的任何东西。 (3认同)
  • 更不用说使用无线鼠标这一事实,USB 3 的数据速率会干扰无线鼠标中常见的 2.4GHz 天线(这是我的罗技第一手发现的)。 (2认同)

Ben*_*igt 38

仅仅因为鼠标的数据速率非常低并且可以由 USB 1.x 处理并不意味着它不能从插入更快的控制器中受益。

这里有许多因素在起作用:

  • USB 3.0 控制器通过以与 USB 1.x 和 2.0 设备兼容的方式执行枚举并公开逻辑EHCI 控制器作为寄存器映射的一部分来支持向后兼容性。

  • 无论鼠标连接到哪个端口和控制器,鼠标都会将自己标识为 USB 全速设备。这将导致鼠标在逻辑上连接到 EHCI 控制器(有时甚至是 OHCI/UHCI)。

  • 拥有逻辑EHCI 控制器并不意味着该设备已连接到 USB 2.0 电路。系统和 USB 3.0 主机控制器之间的连接速度会更快,可能是多通道 PCIe。它也不太可能通过 PCIe-PCI 桥接器,这会导致缓冲和轻微的额外延迟。

  • 除了主机端连接外,驱动USB引脚的晶体管也将具有更高的开关速率,并且总线将使用滤波器网络中的数字开关代替无源元件进行噪声过滤,以使其被移除且不慢USB 超高速设备。(对于 USB 1.x 和 2.0 之间的跳跃,这可能是一个更大的交易)
    鼠标中存在的无源滤波器组件应该占主导地位。尽管如此,上升和下降时间可能快几纳秒。

  • EHCI 控制器的寄存器也与 USB 3.0 UHCI 逻辑在同一芯片上实现,因此时钟速率和数字性能会更高。

  • 在这些影响中,PCIe 差异对性能的影响最大,尤其是与通过 PCIe-PCI 桥接器连接的 USB 2.0 主机控制器相比。

综上所述,带有全速或高速 USB 2.0 设备的 USB 3.0 主机控制器与连接到 USB 2.0 主机控制器的同一设备是不同的电路,时序也不会完全相同

但是,任何延迟改进最多只有几微秒。我想这可能会导致鼠标输入及时中继到服务器以提前一帧处理;概率极低(远低于 1%),任何声称它会影响他们游戏性能的人都感到困惑。

特别是,网络拥塞的影响要大几个数量级。任何试图在比赛中为自己提供所有技术优势的人都应该将精力集中在那里。QoS 标记可能确实决定了最高级别游戏的结果。服务提供商的选择几乎可以肯定。

  • @JamesRyan:这里没有一厢情愿的想法。速率和延迟是不同的。下一个传输时隙之前的延迟是 USB 缓冲延迟,它与传输延迟本身以及到 CPU、NIC 和最终到服务器的其余路径的缓冲延迟一起被添加到传输延迟中。我的回答已经明确指出,使用 USB 3.0 控制器的延迟改进非常小 (6认同)
  • @otus:虽然片上通信链接的运行速度确实比 PCIe 和 PCI 等板级链接快很多,但实际上芯片组内的 USB 2 控制器仍然通过普通的旧 PCI(不是 PCIe)连接,在普通 PCI 速度下,带有 PCI-PCIe 桥接器。尽管 USB 3 控制器的物理距离更远,但它通过 PCIe 连接,通常没有桥接,并且延迟更低。 (3认同)
  • 这是一厢情愿的想法,鼠标使用固定的轮询率。单个位从 a 到 b 所需的速度不会改变该速率。 (2认同)

小智 20

我们需要查看鼠标的轮询率,从中我们可以更好地了解正在传输的数据量。如果鼠标的轮询速率为 100hz,则它每秒向计算机发送 100 次数据。

标准鼠标将发送一个 3 字节的数据包,其中包含 X/Y 位置信息以及按钮信息。考虑到轮询速率的每个周期传输 3 个字节,您可以传输 300bps。

默认情况下,USB 轮询速率为 125hz,因此根据我们的逻辑,传输的数据为每秒 375 个字节。

基于此,我认为 USB 3 不会比 USB 2 甚至 1 更有益。

  • @philipthegreat 1kHz 的轮询率仍然比我所知道的最好屏幕的刷新周期快四倍,比一台好的 PC 上大多数游戏的 FPS 快 16 倍,是人眼能够看到的帧速率的 100 倍检测运动的不连续性。而且您仍然只以 USB 1.0 低速带宽的 0.5% 进行传输。 (18认同)
  • 而 USB 3 可能更适合用于需要速度的设备。 (4认同)
  • 请注意,您可以更改 USB 轮询率。高端鼠标在 500-1000hz 范围内运行(2 或 1 毫秒响应率,在 125hz 时为 8 毫秒)。 (3认同)