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

USB超高速 同步传输

2021-03-23 1607 0

正如USB2.0一样,超速同步传输类型是用来支持想要能容忍错误,周期性的轮询服务的传输流。超速跟USB2.0一样不发送起始帧,但是时序信息要通过同步时间戳包(ITP)被发送给设备。这个规格的协议层章详细描述了用来完成同步传输的包,总线事务事务处理流程。也描述了怎么样传送时序信息给设备。超速同步传输类型提供下面的:

  • 保证在超速总线上一定范围延迟尝试事务处理的带宽
  • 只要数据被提供给管道,保证通过管道的数据率

同步事务处理在每个服务周期在同步端点上被尝试。超速总线上承认的同步端点被保证它们需要的总线带宽。主机在对设备的特殊端点进行轮询服务间隔的任何时候都能请求来自设备的数据或者发给设备数据。被要求的端点轮询服务周期在端点描述符中被定义。超速同步传输是用来支持一个以相同平均速率产生和消耗数据的发送器/接受器。

超速同步管道是一种流管道,总是单向的管道。端点描述符确定被给定的同步管道通信流是流向主机还是流出主机。如果设备需要双向的同步通信流,则要使用两个同步管道,一个输入,一个输出。

无论任何时候当同步传输需要穿过非活动链接, 超速电源管理都会妨碍到同步传输。结果延迟会导致数据在服务周期内没有到达。为防止这种情况,超速定义了PINGPING_RESPONSE机理(参考8.5.7),开始一次同步传输之前,主机可以发送一个PING包给设备,设备以PING_RESPONSE包应答通知主机所有连到设备的链路在活动状态。

同步传输包大小

同步传输端点指定了端点在总线上能够接收/发送的最大数据包大小。对于支持突发尺寸大于1的同步端点,允许的最大数据包大小只能为1024字节;对于支持突发尺寸等于1的同步端点,最大数据包大小可为0到1024之间的任何值。同步端点允许的最大突发尺寸为16.但是同步端点能在同一个服务周期中请求3次突发事务处理。

超速协议不要求同步数据包一定要为最大数据包大小,但是如果传输的数据量比最大数据包尺寸小的话,数据包不被填满。
主机应该支持超速同步端点所有的同步数据包大小和突发大小。主机应该确保发送到端点的数据包量小于端点描述符中定义的最大数据包大小,还要确保突发事务处理中的数据包量不能超过端点的最大突发大小。

同步端点应该总是发送数据域小于等于端点的最大数据包大小的数据包。如果同步传输对端点最大包大小有充足的信息,突发事务处理中的所有数据都要求为最大数据包大小,除非突发事务中最后一次数据包,即包含了剩下的数据。同步传输能进行几次突发事务处理。

同步传输带宽需求

周期性端点(中断和同步传输)能分配到80%的有效超速总线带宽。同步管道的端点通过端点描述符指定它想要的轮询间隔。同步端点能指定想要的周期2(bInterval-1) x 125 μs。bInterval的范围是1-16. 系统软件将在配置时候使用这个信息决定端点是否能被主机安排。注意总线错误能阻止同步事务在总线上的的成功进行。

超速同步端点在每个服务周期能进行3次最大突发大小为16的事务处理的数据包传输(3x16x1024bytes)。主机会在每个服务周期发送数据到端点或者从端点请求数据。注意,如果端点没有同步数据发送而被主机访问请求数据,则会发送一个0长度包作为数据请求的应答。

主机可以在合适的服务间隔的任何时刻访问端点。同步传输端点不应该尝试在事务处理之间假定一个固定空间(两次事务处理间相隔的时间不固定?),同步端点只能假定它在服务周期会收到一次事务处理的尝试。轮询服务周期发生的错误可以阻止数据的成功传输。但是由于同步事务处理中的包没有应答,主机没有方法知道包是否成功传输,因此不会重试包传输。

同步传输数据流程

同步端点总是在轮询服务周期中从包顺序号0开始发送数据包。每个在轮询服务间隔中被依次连续发送的的数据包都带有下一个递增的顺序号。顺序号应该从0到31循环。当发送了32个包后,又从0开始发送。同步端点不支持重试,不能应答流控制。

设备告知(非管道模式)

设备告知是一种为设备向主机进行设备级和总线级的事件通知的异步通信标准方式。这个特色没有映射到为标准传输类型定义的管道模式。设备告知总是由设备开始。数据流通知总是从设备到主机。

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、 高速......
UVC 等时传输中的URB_ISOCH_TRANSFER
通过UVC规范可知,视频图像数据的读取可使用两种端点传输方式,分别为:BULK 块/批量传输方式ISO 等时/同步传输方式在Windows内核中,USB数据的读取是通过URB来进行传输的,其结构体是一个大大的共用体,根据数据传输的方式对应其不同的结构体,其内容如下:typedef _Struct_s......
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等时传输中的dwMaxPayloadTransferSize
UVC的视频流接口控制请求的数据大小可为26字节,34字节和48字节,其分别对应的是UVC的1.0,1,1和UVC1.5版本。在其整个视频流控制接口参数偏移地址22处的字段为一4字节的dwMaxPayloadTransferSize,根据其字段解释为“指定设备在单个有效负载传输中可以传输或接收的最大......
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......
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 等时/同步传输、块传输与转换设置在UVC摄像头驱动中的探讨
最近在Windows10 x64环境下,开发了一个虚拟UVC摄像头驱动。确切的来说这不是摄像头驱动,而是一个虚拟USB总线驱动。使用该虚拟总线驱动使用应用软件通过IOCTL控制总线子设备的创建与卸载。框架设计驱动安装完成后,是一个单纯的USB虚拟总线。应用软件通过发送自定义IOCTL码IOCTL......
USB版本历史及USB2.0与USB3.0的区别
USB从最初的4线制发展到今天的8线制,其速度越来越快,支持的设备种类和功能也越来越多,USB协议也越来越复杂。USB1.01996年1月15日推出USB1.0接口规范规定低速传输速率为1.5Mbit/s对外提供供电电压为5V,最大电流500mA一般适用于鼠标、键盘等低速HID设备。支持热插拨......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

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

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