USB2.0规范
+ -

USB 高速高带宽端点wMaxPacketSize

2021-10-25 4676 17

USB的端点可以设置为高速高带宽端点。
我们知道,USB的数据传输类型有4种,分别为控制传输中断传输批量传输同步传输。而端点类型与之要对应。除过控制传输外,其余三种传输使用于应用的数据传输。
USB使用端点描述符的wMaxPacketSize来配置端点为高速高带宽端点,主要表现在bit11-12,表示一个微帧内的事务数:

BIT12,BIT11 含义
00 一个微帧内最大可以有1次事务
01 一个微帧内最大可以有2次事务
10 一个微帧内最大可以有3次事务数
11 /

wMaxPacketSize的bit11-12,配合bit0-10的最大一个微帧内的字节数,组成了一个微帧内的最大传输数据量。

高速高带宽只适用于中断传输同步传输,对于批量传输批量端点本身就会占用一帧剩余的所有带宽。而中断端点和同步端点这类周期性的端点(Periodic Endpoint),在一帧中一般只会发起一次传输,通过高带宽相关的描述符,可以突破这个限制,增加一帧中的数据传输数量。

Bits 15..13 12..11 10..0
Field 保留,必须为0 一个微帧的的事务次数 最大传输数据字节数

所以,在一个微帧内,请求的最大字节数为(实际传输的事务次数+1)*bit10-0实际传输的字节数。

主机控制器必须在每个微帧中发出适当数量的高速事务。 主机或总线上的错误可能导致主机控制器发出比端点请求更少的事务。 如果有足够的数据可用,第一个事务必须具有 wMaxPacketSize 的低 11 位指定的数据有效负载,而最后一个事务的任何剩余数据小于或等于指定的最大大小。 主机控制器可以一个接一个地为同一个端点发出事务(根据提供的实际数据的需要),或者可以在高带宽端点的事务之间为其他端点发出事务。

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

0 篇笔记 写笔记

USB 中断端点的高速高带宽
对于中断事务,如果中断端点在微帧其间NAK了事务,则表示设备端数据没有准备好或设备无数据可传,主机需要放弃本次传输,在下一个微帧再发起事务。如果设备的中断端点超时了该事务,则主机需要重试该事务。端点描述符中指定了该中断端点在一个微帧其间支持的最大事务个数。如果未达到每个微帧的最大事务数,主机控制器可......
USB 高速高带宽端点wMaxPacketSize
USB的端点可以设置为高速高带宽端点。我们知道,USB的数据传输类型有4种,分别为控制传输,中断传输,批量传输和同步传输。而端点类型与之要对应。除过控制传输外,其余三种传输使用于应用的数据传输。USB使用端点描述符的wMaxPacketSize来配置端点为高速高带宽端点,主要表现在bit11-12,......
关注公众号
  • HID人机交互
  • Linux&USB
  • UAC音频
  • TYPE-C
  • USB规范
  • USB大容量存储
  • USB百科
  • USB周边
  • UVC摄像头
  • Windows系统USB
  • 音视频博客
  • 取消
    感谢您的支持,我会继续努力的!
    扫码支持
    扫码打赏,你说多少就多少

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

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