USB 4全名为Universal Serial Bus Generation 4。USB这个介面在1996年发布USB 1.0规格, 传输速度支援低速1.5 Mbps与全速12 Mbps,以及之后陆续发表支援速度480 Mbps、5Gbps、10Gbps、20Gbps等,并在2019年9月发布最新一代USB4规格,支援20 Gbps与40 Gbps。 USB介面演进及相对应的logo,请参考图1。 USB 4 新功能 1)USB 4只采用USB Type-C连接器,USB 4讯号采双通道传输;而过去的连接器如USB Type-A或Micro-B,仅支援单通道传输,无法支援USB 4。 2)USB传输速度最快支援40G(20Gbps×2),并可同时传送DisplayPort影音。旨在将多种协议组合到单个物理接口,可以动态共享USB 4架构的整体速度和性能。 ; s0 j1 R% @' K- U. ?+ N 3)向下相容USB 2.0与USB 3.2及支援Thunderbolt 3。 % J* A3 d& I( a$ s/ b+ j USB 4 连接器与线缆 / `3 M2 ]& Z. L USB 4只采用USB Type-C连接器。 USB 4 Cable被动线缆,可支援的被动线缆长度由USB 3.2 Gen2的1公尺,降为USB 4 Gen3的0.8公尺。 若需较长的线缆,如连接大尺寸萤幕,或是VR应用,可使用主动式线缆。 USB 4主动式线缆为含有Repeater元件(如Re-timer、Re-driver等主动元件)的线缆,以及光纤线缆等。至于可支援的主动式线缆长度最长为5公尺。 USB 4 架构 USB 4主要构成元件有路由器(Router)、适配器(Adapter)以及TMU(Time Management Unit,时间管理单元)。 路由器是USB 4的一个主要建构模块,路由器将隧道协议转换成USB4封包传送,并透过TMU来作时间同步。主要由USB Host内建的Connection Manager 来侦测及管理。 ! [" G" a0 B, P' s2 ^ 适配器是内建在路由器里,主要功能为路由器与外部元件沟通的媒介,进行协定转换。例如USB 4 Host在传输USB 3资料(如图2),由内部USB 3 Host透过USB 3 Adapter进行协定封装成USB 4 Tunneled Packet。一个路由器内部最多可以支援64个适配器。 # h2 R- y' P0 T9 i0 l( l% Z TMU是内建在路由器里,使用分布式时间管理单元(TMU),在路由器间做时间同步。 : C& Y/ E1 O0 I1 q- Q: E USB 4 的五个层级 ( J" M" I- _% m* ^ USB 4把功能区分为五个层级(如图3)。 Protocol Adapter Layer:负责USB 4与不同协议间进行对应,并把不同协议封装成Tunneled Packet,在USB 4介面内传递。 , w% j4 t% p% M5 |! c3 D Configuration Layer:负责处理由Connection manager传送来的控制封包(Control Packets),并附加路径中对应的地址(address),确保其可靠的传送机制。 Transport Layer:定义封包格式、路径、流量控制与时序控制,并产生link management Packets以提供时间同步封包、流量控制封包等。 , f8 S/ Y! @ N) S Logical Layer:负责建立2个装置之间的USB 4连接,提供资料传送与接收、编码与解码,电源管理,错误侦测及复原机制,并且透过Sideband Channel进行通道初始化的沟通,包括速度及双通道沟通。 ! f* D7 Q( l+ {6 Y Electrical Layer:定义USB 4电气讯号的特性,如电压、抖动、编码等。 7 X1 T- b- {. b* [' W. w7 L 如图4,以USB 3 Tunneling为例,USB 4 Host透过USB 3 Protocol Adaptor,将USB 3 Protocol经USB 4 Transport Layer、USB 4 Logic Layer、USB 4 Electrical Layer转USB 4 Link传送到USB 4 Hub Electrical Layer。再依图5顺序进行一连串USB 3/USB 4转换,将讯号传送到USB 4 Device。 1 [0 T& f, c8 A" T& M4 t; \+ V USB 3 隧道协议 USB 4讯号由PCIe、USB 3及DisplayPort隧道协议组成。此篇幅单就USB 3隧道协议讲解。USB 3隧道协议,指的是将原始USB 3封包经由Protocol Adapter Layer 封装成Tunneled封包,藉由图5可以清楚知道,红色部分是USB 3的封包,而蓝色部分是Tunneled封包,UFP与DFP之间会使用Physical Layer传输。 / z( G; M! K' g' I1 I$ V9 E , W9 P$ n- ~* h, K, O( ` USB 4 产品类型 USB 4 Host:产品有一个以上DFP,没有任何的UFP。 USB 4 Hub:产品有一个UFP,并且有一个或多个DFP。 USB 4-Based Dock:产品有一个UFP,并且有一个或多个DFP,且产品内还有其他元件的功能,如储存装置或网路功能。 USB 4 Device:产品有一个UFP,没有任何的DFP。 USB 4 支援的隧道协议 依据规格,对Host/Hub/Dock/Device必须支援的隧道协议有不同要求,如图6,打“V”为必须支援,其余则是可选择支援与否。 例如USB Host必须支援USB 3、DisplayPort 与Host-to-Host Tunneling,可以不支援PCI Express 与TBT3 Tunneling。 ) L: x5 B8 E$ v/ }0 I X8 H0 X USB 4 支援的传输速率 8 _( g% C- y$ }: w* O USB 4支援USB 4 Gen2的20Gbps及USB 4 Gen3的40Gbps速度,是不是宣告支援USB 4就一定要支援这两个速度? , ?2 P3 d- U8 @$ I 对USB 4 Hub与USB 4-Based Dock来说,必须同时支援20Gbps及40Gbps。 对USB 4 Host与USB 4 Device来说,可以只支援20Gbps。40Gbps可列为额外支援,非必要支援速度。 " ?5 H, [8 x4 x 3 G- q2 G, H+ ] USB 4传输速率提升到40 Gbps,并且可以动态分享频宽,当使用一条USB Type-C连接线就可以相容于市面上Thunderbolt 3和Display Port产品,对于消费者来说是一个更加便利的介面。 但对于产品开发者来说,USB 4是一个比较大的挑战,除了产品设计和以往USB 3的产品在架构上的差异,加上高频信号在PCB及连接器上的衰减,须更关注高频阻抗匹配,在开发阶段确保传输的信号品质。 ' b* R1 N0 Q8 |+ g% q: u/ k5 } |
圈圈发布USB图书第二版有感,以及分享一些我学习USB过程...
最全USB HID开发资料,悉心整理一个月,亲自测试
USB Audio设计与实现
【MCU实战经验】+STM32F107的USB使用
STM32F4-DISC 实现USB主机(U盘)和USB设备(虚拟串口)自动切换
STM32 USB-HID通信移植步骤STM32 USB HID键盘例程
【经验分享】在进行 USB CDC 类开发时,无法发送 64整数倍的数据
如何让CDC类USB设备批量接收64字节以上数据
用STM32F4实现的USB摄像头UVC,配合上位机可识别车牌
STM32 USB CDC 虚拟多串口