USB2.0规范
+ -

USB带度分配原则

2026-04-30 本文链接为:http://www.usbzh.com/article/detail-1643.html ,欢迎转载,转载请附上本文链接。

1. 带宽分配:管道建立时就确定

“USB bandwidth is allocated among pipes. The USB allocates bandwidth for some pipes when a pipe is established.”

  • 含义:当一个USB管道(Pipe,即设备端点与主机之间的逻辑连接)被建立时,主机就会为其分配固定的带宽。
  • 实际应用
    • 对于中断传输(如鼠标),主机在配置设备时,会根据其报告的轮询间隔(如每8ms一次),在帧/微帧中预留出固定的时间槽。
    • 对于等时传输(如麦克风),主机会根据其所需的带宽(采样率 × 位深 × 通道数)预留连续的带宽。
    • 对于批量传输(如U盘),一般不预留固定带宽,只在总线空闲时“尽力而为”地传输。
    • 对于控制传输,系统会预留总带宽的10%用来进行控制传输,不进会动态分配。

确切来说是选择配置或者选择接口时,会建立主机与设备之间的管道,这个管道的建立标志着带宽的分配。只是不同的传输类型不同而已。

2. 缓冲要求:带宽越大,缓冲越大

“USB devices are required to provide some buffering of data. It is assumed that USB devices requiring more bandwidth are capable of providing larger buffers.”

  • 含义:USB设备需要自带数据缓冲区。需要更高带宽的设备,应当提供更大的缓冲区。
  • 原因:这解决了“主机以固定速率轮询,但设备不一定随时有数据”的矛盾。
    • 高带宽设备(如高速摄像头):能快速产生大量数据。更大的缓冲区可以让设备在主机两次服务之间积累数据,避免数据丢失。
    • 低带宽设备(如键盘):缓冲区很小甚至没有,因为数据产生很慢。

3. 设计目标:将缓冲延迟控制在毫秒级

“The goal for the USB architecture is to ensure that buffering-induced hardware delay is bounded to within a few milliseconds.”

  • 含义:USB架构的核心目标之一,是确保由缓冲导致的硬件延迟被限制在几毫秒以内
  • 重要性:这对人机交互实时音频至关重要。
    • 如果你的USB鼠标有100ms的缓冲延迟,你会感觉光标“发飘”。
    • 如果你的USB耳机有100ms的缓冲延迟,音画就会不同步(延迟超过~15ms人耳就能察觉)。
  • 与重传机制的关系等时传输为什么不重试? 因为重传和缓冲会导致不可预测的延迟,可能超过几毫秒的硬性要求。为了保住延迟底线,等时传输宁愿丢掉个别数据包,也不进行重传。

4. 并发能力:多种速率同时支持

“The USB’s bandwidth capacity can be allocated among many different data streams. This allows a wide range of devices to be attached… Further, different device bit rates, with a wide dynamic range, can be concurrently supported.”

  • 含义:USB的总带宽可以动态分配给多个不同的数据流,从而允许各种不同速率(从几kbps的键盘到几百Mbps的摄像头)的设备同时工作。
  • 实际例子:你的电脑上可能同时连接着:
    • 键盘(低速,1.5 Mbps,中断传输
    • USB耳机全速/高速,等时传输)
    • U盘高速/SuperSpeed,批量传输
    • 这一切可以同时稳定工作,正是得益于USB的微帧调度(Microframe Scheduling)机制。

5. 规范定义规则

“The USB Specification defines the rules for how each transfer type is allowed access to the bus.”

  • 含义:USB官方规范详细定义了四种传输类型(控制、中断、批量、等时)各自如何竞争和使用总线带宽。
  • 总结规则
    • 等时 & 中断:有固定保留带宽,保证准时,但不保证100%可靠(等时不重传)。
    • 控制:保证有少量保留带宽,保证所有设备能被枚举和管理。
    • 批量:没有保留带宽,只在有空闲时传输,但保证100%可靠(重传机制)。
本文链接为:http://www.usbzh.com/article/detail-1643.html ,欢迎转载,转载请附上本文链接。

HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936     USB技术交流3:1031974172

0 篇笔记 写笔记

USB带宽分配管理规则
USB主机负责管理总线的带宽。这是在配置同步和中断端点时的枚举时以及在总线的整个操作过程中完成的。该规范对总线进行了限制,允许为全速总线上的周期传输(中断和同步)分配不超过 90% 的任何帧。在高速总线上,这个限制减少到不超过 80% 的微帧可以分配给周期传输。因此,如果有一个具有周期性传输的高度......
USB带度分配原则
1. 带宽分配:管道建立时就确定“USB bandwidth is allocated among pipes. The USB allocates bandwidth for some pipes when a pipe is established.”含义:当一个USB管道(Pipe,即......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • CDC
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    您的支持,是我们前进的动力!