USB3.2超高速协议规范
+ -

USB超高速批量传输

2021-04-30 2852 3

批量传输类型是用来支持想要跟相当大的海量数据通信设备,传输能使用任何可用的超速带宽。超速批量传输功能端点提供以下:

  • 对基于有限带宽的超速总线访问
  • 保证数据的发送,但是不保证带宽和发送时间
    超速维持下面的批量传输管道特征:
  • 对批量传输管道通信流没有强制固定的数据结构
  • 批量传输管道是一个流式管道,因此总是有通信流进出主机。如果应用需要一个双向批量传输通信流,必须使用两个批量传输管道(一个OUT,一个IN)。
    标准USB批量传输管道提供移动数据流的能力。超速增加了协议级支持多倍流模式的流式概念。

批量传输数据包大小

批量传输端点应该在端点描述符中设置最大数据包大小为1024字节。也要指定端点在超速总线上能够接受或发送的突发大小。可允许的批量传输端点突发大小在1到16的范围。所有的超速批量传输端点要支持[0-31]的顺序值。
主机需要支持任何超速bulk传输端点和所有的bulk传输突发大小。主机要确保发送给端点的数据包的数量不能超过描述符中定义的最大包大小。此外,发送的突发数据包不能超过记录的最大突发大小。
批量传输功能端点发送的数据包,其数据域必须总是小于等于1024字节。如果批量传输数据量超过1024,则突发事务中所有数据包除了最后一次,都必须是1024字节大小,最后一次是剩下的不足1024字节的数据。批量传输可以持续多个总线事务处理。批量传输在端点有以下情况时完成:

  • 已经准确传输完了所期待的数据
  • 传输了一个比1024字节少的数据包(短包)
  • 应答STALL握手包

批量传输带宽需求

正如USB2.0,批量传输功能端点没有方法为块管道指定想要的带宽。块事务处理只发生在超速总线上有可用带宽的基础上。超速提供一个最好的条件在客户软件和功能设备间传输块数据。控制传输对总线操作比批量传输更有优先权(对总线操作的优先级,控制传输比较高)。当有多个端点的bulk传输挂起时,主机会根据一个公平访问原则提供事务处理的机会给每个端点,这就是主机依赖性操作。

所有在系统中挂起的批量传输竞争相同的有效总线时间。端点和客户软件不能为批量传输假定配置一个指定的服务率(总线带宽不能为批量传输主动分配)。总线时间被提供给客户软件,由于其他设备被插入到系统或者从系统中移除或者因为批量传输被其他功能端点需要,端点能被改变。客户软件不能假定在批量传输和控制传输之间的顺序,即在一些情形中,批量传输能在控制传输的前面进行。

主机在带有批量传输端点的事务处理中能使用任何在1和记录的最大的突发大小,更高效的利用有效总线带宽。例如,可能有比有效总线带宽更多的批量传输,所以主机可以每次使用事务中更小的数据突发,以提供公平服务给所有挂起的块数据流(因为批量传输多,有效带宽少,所以为了能公平给所有等待的批量传输机会,主机会使用事务处理中比较小的数据突发大小,从而将有效带宽充分平均分配给所有批量传输)。

当一个批量传输端点传输一次流控制事件(时,主机会从安排的活动端点中移除它,主机会基于接收到来自于设备的准备好通知恢复端点的传输。

批量传输数据流程

批量事务处理为数据可靠传输使用标准的突发序列,在8.10.2章定义。批量端点通过一次合适的控制传输(SetConfiguration, SetInterface, ClearEndpointFeature)被初始化成最初的发送/接受顺序号和突发大小值(8.12.1.2 和8.12.1.3)。同样,主机在已经成功完成了上面提到的合适的控制传输后,配置批量传输管道初始的发送/接收序列号和突发大小值。
超速批量管道的停止条件跟USB2.0定义的块端点一样同样有副作用。从停止条件中恢复也跟USB2.0相同。块管道停止条件包括STALL握手包作为一次事务处理的应答或者由于发送错误主机事务处理的重试次数消耗完的应答。

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超高速3.0协议与USB2.0协议的差异
超高速在框架层级是向后兼容 USB 2.0 的。然而, USB 2.0 和超高速协议还是有一些根本性的差异:USB 2.0 使用三部分事务交易(令牌,数据和握手),而超高速对这相同的三部分的使用是不相同的。对于输(OUTs),令牌被列入数据包;而对于输入(INs),令牌则被握手所取代。USB 2.0......
USB3.0硬件编码格式-8B/10B编码
1.编码技术基础理论 在高速的串行数据传输中,传送的数据被编码成自同步的数据流,就是将数据和时钟组合成单一的信号进行传送,使得接收方能容易准确地将数据和时钟分离,而且要达到令人满意的误码率,其关键技术在于串行传输中数据的编码方法。 目前, 高速接口正在被广泛应用于包括 SATA、 SAS、 高速......
USB超高速 GEN1设备状态
USB设备可能有很多状态,如断开状态,刚接入状态,分配地址状态,配置状态,工作状态等。当然由于USB3.0超高速协议规范的定义,USB超高速总线架构采用的是双总线结构。超高速设备的状态如下:AttachedPoweredDefaultAddressConfiguredSuspendedStateNo......
怎么看我的电脑是否支持USB3.0?
USB 3.0 端口标记有 SuperSpeed USB 徽标,或端口通常为蓝色,图片如下:我们的PC中引出的USB接口一般为TYPE-A型,即A型接口,现在一些笔记本也支持TYPE-C接口。USB规范定义了多种的USB接口类型,详情可见 USB机械和电子标准及USB硬件接口分类较新的 PC同时具......
UVC摄像头批量传输的StreamOn和StreamOff
在UVC规范中,UVC摄像头视频数据的传输方式支持两种,分别为批量传输和同步传输。UVC摄像头数据传输的格式按负载数据头的方式按帧进行打包传输。根据USB规范可知,同步传输方式是只要带中带有同步端点的接口,系统会定时从设备中读取数据,无论设备中是否有数据。而如要要停止数据的传输,只需要选中不带有同步......
USB超高速 中断传输
中断传输类型用来支持带有轮询服务间隔需要高可靠性传输小数量数据的设备。这个规格的协议层章详细描述了与中断传输相关的包,总线事务和事务处理流程。超速中断传输类型一般提供以下方面:能保证最大的服务间隔能保证在下一次服务间隔中尝试重新传输在每个服务周期中为中断端点尝试中断传输,保留一定带宽保证在每个服务间......
USB超高速设备描述符的bMaxPacketSize0为0x09
USB3的设备中,其USB设备描述符和2.0的结构一致,不过在含义上有的字段稍有区别。比如说在USB3.2的版本中,其设备描述符中的bMaxPacketSize0和USB2.0有就所不同。在USB2.0中bMaxPacketSize0代表的是USB设备默认端点0的最大包的大小,一般为0x40即64字......
USB超高速(SuperSpeed)体系结构
USB超高速(SuperSpeed)体系结构在协议层分为物理层,数据链路层,协议层。USB3.0定义了超过高USB,USB3.1/USB3.2实现了超高速Plus架构。数据链路层(Link Layer)超高速链路(SuperSpeed link)是两个端口的逻辑和物理连接。被连接的端口(connec......
USB超高速对USB2.0的兼容性
当主机枚举时,所有设备都会被分配一个USB地址。每个设备支持一个或多个管道,主机可以通过这些管道与设备通信。所有设备都必须在端点0处支持指定的管道,设备的默认控制管道将连接到该管道。所有设备都支持通过此控制管道访问信息的公共访问机制。USB外接设备的兼容USB 3.0 外接设备 ( peripher......
UVC批量传输中的dwMaxVideoFrameSize和dwMaxPayloadTransferSize关系
上一节看了UVC等时/同步传输的关系,这里我们介绍一相批量传输批量传输在这里相对于同步传输要简单的多。uvc_video_start_transfer中的代码如下: else { /* Bulk endpoint, proceed to URB initialization. */ ......
USB超高速 控制传输
控制传输的目的与特点与USB2.0协议完全相同。这个规格的协议层章节详细描述了用于完成控制传输的包,总线事务处理和事务处理流程。设备架构那章定义了完整系列的设备使用的标准命令编码。每个设备需要启动默认控制管道作为一个消息管道。这个管道用来进行设备初始化和管理,用来访问设备描述符和向设备请求对其进行操......
USB3.0官方协议规格书(英文版)下载
USB3.0 协议规范 英文完整版,USB底层结构说明,开发基础(USB3.0 protocol specification full version)USB3.0官方协议规格书(英文版)下载:USB中文网技术交流QQ群下载QQ群文件/USB规范/USB3.0官方协议规格书(英文版).pdfQQ群号......
USB3.0和USB2.0有什么区别
USB3.0是USB2.0的升级,USB3.0按USB规范又分为USB3.0,USB3.1和USB3.2usb3.0和2.0的区别-历史版本对比USB2.0是2000年4月27日由USB-IF组织提出了USB2.0总线协议规范。USB3.0是超高速USB3.0规范于2008年11月17日出USB-I......
USB版本历史及USB2.0与USB3.0的区别
USB从最初的4线制发展到今天的8线制,其速度越来越快,支持的设备种类和功能也越来越多,USB协议也越来越复杂。USB1.01996年1月15日推出USB1.0接口规范规定低速传输速率为1.5Mbit/s对外提供供电电压为5V,最大电流500mA一般适用于鼠标、键盘等低速HID设备。支持热插拨......
USB3.0协议规范(中文版)下载
本文章是对USB3.0规格书的内容翻译。在框架上,USB3.0超速是向后兼容USB2.0的,但是二者在协议上还是有一些重大的不同:•USB2.0的transaction(事务处理)有三部分(令牌(token)、数据(data)和握手(handshake)),超速也是这三部分但是用法不同(令牌包集成在......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

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