USB技术浅析( 二 )


2)突发传送中,每一个独立的包应该有数据包负载长度为maximum packet size 。只有突发的最后一个包可以小于报告的maximum packet size 。如果最后一个小一些,那么对于短包的规则适用于在突发末尾的短包 。
3)突发事务只要ACK TP的NumP字段没被设为0并且每个包都有最大包大小的数据负载,就可以继续 。
3. 流传输流传输是bulk中的一种特殊模式,当设备的配置描述符在配置了 MaxStreams后,就代表设备可支持流传输 。

USB技术浅析

文章插图
 
上图代表一个输入批量管道,这里建立起了大量的流(Streams) 。在主机内存中与每个流(Stream)相关的是一个或者多个端点缓冲区(Endpoint Buffers)来接收流数据(Stream data) 。在设备端,也有一个相应的特定于命令或者功能的数据,会被传输到主机 。
当设备有对特定的流可用的数据时(如图中的G),它就用发送ERDY加上CStream ID作为标签,并且主机会开始发送加有CStream ID标签的IN ACK TP到设备 。设备会通过返回与CStream ID相关的功能数据,并且也是加上CStream ID为标签 。当主机接收到数据,就用CStream ID来选择一组端点缓冲区(Endpoint Buffers)用来接收数据 。
当数据被耗尽,设备终结该流 。主机也被允许终结流,如果它用完了端点缓冲区的话 。流可以被用来,例如,支持大容量设备(mass storage device)所需要的乱序(out-of-order)数据传输 。
一个标准的批量端点有单组端点缓冲区(Endpoint Buffers)与之相关联 。流扩展了一个端点可以访问的主机缓冲区个数,从1直到65533 。在主机缓冲区和Stream ID之间有一个1:1的映射 。
由于流是基于一个标准的批量管道运行,一个错误就会让管道暂停(halt),停止所有的活动 。
4. 伴侣描述符USB3.0描述符与USB2.0基本相同,最主要的区别是每个EP描述符后新增了一个伴侣描述符,用以表明上面所说的设备的“突发事务”和“流传输”的能力:
USB技术浅析

文章插图
 
5.总结总结来说USB3.0的最主要的新特性有这几种:
  • 总线速度提高到5Gbps(gen2中提高到10Gbps)
  • 异步的传输模式
  • 突发事务,依赖于异步传输的模式,无需等待设备回应
  • 流传输,依赖于突然事务传输,可以多对一的大量传输
这几种新特性使得USB3.0的传输速率远远高于USB2.0
二、TYPECTypec是在usb3.0推出后,为了兼容正反插,高功率充电,以及更强的兼容性而推出的新的硬件接口,最主要的特性为
  • USB Power Delivery技术,最高可支持到20V5A的充电
  • 可集成DisplayPort,可外接屏幕与喇叭(例如可以接入hdmi设备)
  • 抗干扰性,可靠性更强
母头如下图所示:
USB技术浅析

文章插图
 
公头如下图所示:
USB技术浅析

文章插图
 
可以看到相比于普通的usb3.0 A座,typec多出了一组tx,rx,以及vconn和cc 。其中具体使用情况:
1)多出的tx,rx可以在gen1或gen2中做usb多路输出,可实现数据吞吐量翻倍,同时也可以复用为DisplayPort接口,使得typec可以做视频输出
2)vconn为typec有源线缆的e-mark供电,进一步可以识别线材的供电能力
3)cc pin为typec的核心功能,usb的主机和设备端可以通过cc pin通讯,以实现pd,dp以及主从模式的切换等各种功能
目前市面上有多种typec的实现方案,如高通是通过自带的typec phy实现,也有独立的typec芯片方案,如fusb302等,但是流程基本类似 。
编码格式:
pd3.0开始使用Biphase Mark Coding (BMC)编码格式,这种编码的特点就是,每一个bit周期开始时电平会切换一次,在这个周期内电平如果不切换则表示bit0,如果电平切换了一次,则代表bit1
USB技术浅析

文章插图
 
1.Power Delivery目前市场上pd主要分为两种,一种是pd2.0,这种只提供几个固定的电压电流档位,如常见的5V3A,9V3A,12V3A,15V3A,20V3A 。另一种是pd3.0,也就是pps,这种除了提供pd2.0的几个电压档位之外,还会提供一个或多个电压电流可调的档位,如:可调电压范围3V21V,可调电流0A6.3A
其流程大概如下:
USB技术浅析

文章插图


推荐阅读