20221213-USB协议简析

https://zhuanlan.zhihu.com/p/431163780

USB 4将我的这种想法给部分实现,通过一种隧道技术的方式,将DP/USB3/PCIe信号集成到通信隧道里面去,接收端再通过数据包头来区分数据(这就有点像交换机里的数据分发,通过MAC地址或者报文帧头确定数据包目的地)。

因为硬件的局限性和可能的分发芯片性能功能问题,每个分发数据的协议速率是由各自的上限的,不能够动态调整每个接口的最大速度,

USB与I2C/SPI/UART类似,都是一种传输数据的协议规范,但USB主要设计是用于计算机与外接设备的数据交互和文件传输,这一点也正是它现在演变为相对高速的对外接口的原因,最高速的当然是PCIe。

特点

服务器交换机目前还是使用USB 2.0 居多

USB 3 开始和typeC 结合,将曾经的文件传输接口增加为文件加视频传输接口,并且视频一上来就是最新的DP 接口

USB 4,这兄弟更猛,除了USB、DP,还额外增加了PCIe的功能,1 LANE支持到10Gbps,通过隧道技术来最大限度发挥物理带宽性能,这个还没有开始投向商用,应该还要一两年。

技术细节

USB 3.2

就只有 type-C

pin location pin name function

USB2.0 数据信号4个,其实是两个,为了满足正反插需求所以正反都有

USB3.2 数据信号8个,包含两个通道的差分收发信号,VBUS 信号4个,GND 信号4个,一个8个信号处理电源
CC 信号两个,SBU 信号两个

全称Configuration Channel,分为CC1和CC2,在type C接口被引用,主要是为了解决正反插的信号交错问题和侦测插入的接口类型。

目前主要是在source端设计上拉电阻,sink端设计下拉电阻,通过不同电阻的配比来表示当前的设备类型和插入方式。具体方式比较复杂,参考type C spec里的两个截图,两个CC信号用来侦测正反插情况和设备信息。以后有机会调试CC信号再深入了解。

SBU信号是为USB 4.0 预留的,3.2里没有用到这个信号,不过这两个信号又在Alternate Mode(主要是DP)和Audio Adapter Accessory Mode里有使用,后面讲到这两个模式再具体分析。

信号完整性

此时开始引入redriver 来解决信号完整性的问题

repeater 分为两种,redriver 和retimer

retimer 指的是这种器件包含有CDR 电路,可以重新编码信号,好处是不会引入一些高频抖动

Redriver 指的是器件使用模拟电路的方式来增强信号,不会对码流进行操作,中间会有均衡放大和发送的部分

一个链路中能够使用的repeater个数是没有限制的,只要总体的时延和抖动能够满足要求,但一般是sink和source端各自处理自己接口上的信号质量,能满足协议规范就可以了,如果是cable厂商,可能也需要在cable中集成一到两个repeater。

USB 4.0

对于USB 4 来说,规定了一种可以同时传输三种通信协议的方式,但这是在芯片内部或者协议端实现的,物理层和逻辑层与所谓的通道互相独立,传输层和配置层需要针对通道方式做出改变

隧道技术采用了TMUS 来处理每一个交换功能,网上并不能看到太多有关这个技术的细节,但从上面的分析,有理由得出一下的猜测

TMUs位于芯片内部或者就是纯软件,与USB 4 协议是配套使用,在物理层和传输层没有体现
由第一点,如果device端是USB 4,则也需要集成TMU,如果只是三种协议中的一种,就要看host端是否有向下兼容的能力(USB3和DP是必须的,PCIe目前是可选)。
再来看下图就会对USB 4的整个拓扑有更多的了解。

简单来说,USB 4 host可以直接支持USB 3x,DP,PCIe的device;也可以通过USB Hub的方式去fan out直接输出USB 4隧道信号,让Hub来分发;更可以直接插入支持USB 4 的device来一根cable传输这三个协议的信号。

第一张图里有看到,不同的协议影响的是红圈中的设计,也即Adapter的选择;在USB 4的整个通信过程中,这些具体的协议是已经在比较上层的地方,所以对于不同协议的支持,需要做的有两点:

在USB 4 的block内有对应支持的协议种类的Adapter
在USB 4 与CPU更上层的连接中有对应的通信路径,例如PCIe需要有PCIe Switch或者链接到Root Port的Root Complex
当满足以上两点,从芯片对外提供的USB 4 interface上来看,它就可以支持所有的四种协议:USB 4,USB 3,DP,PCIe(目前只到Gen 1),根据插入的设备类型做到向下兼容。

SBU 信号

SBU 在usb4开始被引入,速度为1Mbps 有三个功能

配置USB4通道,进行初始化

和retimer进行交互,完成USB 4 Link TxFFE的握手
确保USB 4 通道的发送和retimer的上电或者wake up sequence的正确完成
与TMT3的兼容
Thunderbolt™ 3是Intel发布的Light Peak技术。Thunderbolt连接技术融合了PCI Express(PCI-E)数据传输技术和Display Port(DP)显示技术,可以同时对数据和视频信号进行传输。

具体细节不展开了,有一个点需要注意,当以兼容TMT3模式运行时,adapter需要在TBT3兼容的速度下运行,也即Gen 2 是10.3125Gbps,Gen 3 是20.625Gbps。

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2015-2024 TeX_baitu
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~