我正在寻找一个有数据支持的权威答案。前几天,一位朋友问我,将鼠标插入 USB 3.0 端口而不是可用的 2.0 端口是否会有好处。我轻率地回答说,这完全没有区别。当然,我不是唯一一个这么想的人。请参阅以下答案:
直觉上,我认为数据吞吐量不应该成为问题。鼠标在串行端口,并且这些转移最大限度112.5 Kbps。USB 1.0 运行速度为 1.5Mbps(慢速)或 12Mbps(快速)。USB 2.0 可以处理 480Mbps,而 3.0 可以达到 5 Gbps。
但是响应速度如何?有没有关于 USB 2.0 和 3.0 端口响应时间的公开研究?
我的问题是,我说得对吗? 我有一个真的鼠标太花哨了?我的朋友能放心地把他在英雄联盟中输掉游戏归咎于他的 USB 端口太慢吗?
答案1
- 鼠标是一种速度较慢的设备(旧的 PS/2 标准基于 RS232C),因此 USB1 绰绰有余。
- USB3 端口有额外的连接器用于高速传输,但也有标准 USB2 连接器用于向后兼容。
- 除非您的鼠标有这些连接器(我无法想象任何鼠标都有),否则它将通过 USB2 连接到 USB3 连接器。
所以您说得完全正确:将鼠标插入 USB3 连接器没有任何好处。如果鼠标响应缓慢,那是因为其他东西占用了 CPU,从而损害了鼠标驱动程序。
答案2
虽然鼠标的数据速率非常低并且可以由 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 3.0 主控制器连接全速或高速 USB 2.0 设备与连接 USB 2.0 主控制器的同一设备不是同一电路,时序也不会相同。
但是,延迟改进最多只有几微秒。我猜想,这有一定概率会导致鼠标输入及时传递到服务器,以便提前一帧进行处理;这种概率极低(远低于 1%),任何声称这会影响游戏性能的人都是糊涂蛋。
尤其是网络拥塞的影响要大几个数量级。任何想在比赛中获得技术优势的人都应该把精力集中在那里。QoS 标记可能确实决定了最高水平比赛的结果。服务提供商的选择几乎肯定会起到一定作用。
答案3
我们需要看一下鼠标的轮询率,这样我们才能更好地了解传输的数据量。如果鼠标的轮询率为 100hz,则它每秒向计算机发送数据 100 次。
标准鼠标将发送一个 3 字节数据包,其中包含有关 X/Y 位置信息以及按钮信息的信息。考虑到轮询速率的每个周期传输 3 个字节,因此传输速率可能为 300bps。
默认情况下,USB 轮询率为 125hz,因此按照我们的逻辑,传输的数据为每秒 375 字节。
基于此,我认为 USB 3 不会比 USB 2 甚至 1 更有益处。
答案4
虽然我不相信在大多数传统鼠标模型上你会获得任何优势,但你可能会试图确定即使存在任何差异,用户也必须能够注意到?
在这种情况下,只需将其插入两个端口,即可在对鼠标性能要求高的游戏或应用程序中测试外壳,这很简单。我自己也试过,没有发现任何我能注意到的差异,这对我来说已经足够了(测试结果在个人使用场景中胜过理论,因为在某些情况下,即使是心理上的差异也能帮助你表现得更好——在这种情况下,它对你来说仍然更好)。