自从Apple发布了新MacBook,就一堆人在说USB Type-C。 # P4 c3 o# n6 Q( ] r% M* C
现在从硬件角度解析下这个USB Type-C,顺便解惑。: r x& F+ N5 v8 Q4 u
6 o x2 ^/ u% O( T* p! Z( O
尺寸小,支持正反插,速度快(10Gb)。这个小是针对以前电脑上的USB接口说的,实际相对android机上的microUSB还大了点:
: p; l% O$ n+ H4 J; j- h9 }0 m# [) j% C特色' ]/ f2 A4 E$ ~& W" `
USB Type-C:8.3mmx2.5mm
: ` K, i* c+ f% n( Q8 W; zmicroUSB:7.4mmx2.35mm M1 R8 M( l M) r; s3 i) s
而lightning:7.5mmx2.5mm
& e7 C0 l8 o9 t, w' _3 l$ k所以,从尺寸上我看不到USB Type-C在手持设备上的优势。而速度,只能看视频传输是否需要了。# I8 {$ {0 q1 i" z7 C
引脚定义* f# ~& U5 @, Z6 z6 t

5 d: L( t+ f' A* p% `/ [; j
8 r' f4 N0 Y% ?, K. K可以看到,数据传输主要有TX/RX两组差分信号,CC1和CC2是两个关键引脚,作用很多:/ i3 f% \# `- t/ Z# j
探测连接,区分正反面,区分DFP和UFP,也就是主从; c6 S$ T- K3 ]1 M4 |& |
配置Vbus,有USB Type-C和USB Power Delivery两种模式
* G- w- w' d% `% {/ ?% E配置Vconn,当线缆里有芯片的时候,一个cc传输信号,一个cc变成供电Vconn
/ |. A9 }4 H, t9 v `配置其他模式,如接音频配件时,dp,pcie时
) @8 J' c: X9 q电源和地都有4个,这就是为什么可以支持到100W的原因。
5 J, S% e4 V. O* Y7 _: \9 d& k- p 7 X5 \& f8 y- ]1 t- A6 J9 e
) Q) p: m" ? {2 B
不要看着USB Type-C好像能支持最高20V/5A,实际上这需要USB PD,而支持USB PD需要额外的pd芯片,所以不要以为是USB Type-C接口就可以支持到20V/5A。
, Q8 b1 h7 A3 w2 F0 `8 `* _: h( Z% \当然,以后应该会出现集成到一起的芯片。
5 J+ _7 b3 D: V4 T辅助信号sub1和sub2(Side band use),在特定的一些传输模式时才用。6 o! U7 m% p; G5 ], k$ f
d+和d-是来兼容USB之前的标准的。5 i0 p+ j+ M# ~. @# t1 U& |
这里说一下,USB3.0只有一组RX/TX,速度是5Gb,USB Type-C为了保证正反都可以插就用了两组,但实际上数据传输还是只用了一组RX/TX,速度就已经达到10Gb了。如果后面升级协议,两组都传的话就和DisplayPort一样20Gb了。
/ r& R3 M# J2 Y |' S0 l% w工作流程
7 j, D L+ m/ I, |$ z; t; v # e- S% h; ^8 X8 D( A
3 v+ D& m, j' e& `! q, h上图DFP (Downstream Facing Port)也就是主, UFP (Upstream Facing Port)为从。除了DFP、UFP,还有个DRP (Dual Role # Y* B8 G9 M) n% v
port),DRP可以做DFP也可以做UFP。当DPR接到UFP,DRP转化为DFP。当DRP接到DFP,DRP转化为UFP。两个DRP接在一起,这时就是任意一方为DFP,另一方为UFP。$ D& C+ ?( ]$ ]5 ^ s
在DFP的CC
" ~. @) r. b+ `, F: G6 q) i( kpin有上拉电阻Rp,在UFP有下拉电阻Rd。未连接时,DFP的VBUS是无输出的。连接后,CC pin相连,DFP的CC 5 D/ `" `+ _0 j) M" E$ C9 R+ n6 }
pin会检测到UFP的下拉电阻Rd,说明连接上了,DFP就打开Vbus电源开关,输出电源给UFP。 而哪个CC pin(CC1,CC2)检测到下拉电阻就确定接口插入的方向,顺便切换RX/TX。
0 ~) `# G1 R5 G; V) Q5 x' {, t/ I) P电阻Rd=5.1k,电阻Rp为不确定的值,根据前面的图看到USB Type-C有几种供电模式,靠什么来甄别?就靠Rp的值,Rp的值不一样,CC pin检测到的电压就不一样,然后来控制DFP端执行哪种供电模式。
! g' }% v0 c* a" g9 e需要注意的是,上图里画了两个CC,实际上在不含芯片的线缆里只有一根cc线。8 q, M( c" B) F4 ?/ G
含芯片的线缆也不是两根cc线,而是一根cc,一根Vconn,用来给线缆里的芯片供电(3.3V或5V),这时就cc端没有下拉电阻Rd,而是下拉电阻Ra,800-1200欧。
! x" F0 Y) l4 B7 n$ n! z
' _6 a# x4 h. `! y; p8 Q" r- S9 N) D0 w K, m+ R
当CC pin两个都接了下拉电阻<=Ra,DFP进入音频配件模式,左右声道,mic都俱全,如上图。/ Y3 p0 {) b* a! Q ^
USB Type-C和DisplayPort,PCIE
, V0 `; u9 ]7 R0 h9 C+ \5 G& c wUSB PD是BMC编码的信号,而之前的USB则是FSK,所以存在不兼容,不知道目前市面上有没有能转换的产品。$ |3 g5 `) w( S; p
USB PD是在CC pin上传输,PD有个VDM (Vendor defined message)功能,定义了装置端ID,读到支持DP或PCIe的装置,DFP就进入替代(alternate)模式。" F" p, B( U. K5 R
如果DFP认到device为DP,便切换MUX/Configuration Switch,让Type-C USB3.1信号脚改为传输DP信号。AUX辅助由Type-C的SBU1,SUB2来传。HPD是检测脚,和CC差不多,所以共用。
2 |) v6 p$ d0 v而DP有lane0-3四组差分信号,Type-C有RX/TX1-2也是四组差分信号,所以完全替代没问题。而且在DP协议里的替代模式,可以USB信号和DP信号同时传输,RX/TX1传输USB数据,RX/TX2替换为lane0,1两组数据传输,此时可支持到4k。" K9 r/ d9 J* h! b; R8 e3 O
如果DFP认到device为DP,便切换MUX/Configuration Switch,让Type-C USB3.1信号脚改为传输PCIe信号。同样的,PCIe使用RX/TX2和SBU1,SUB2来传输数据,RX/TX1传输USB数据。8 m/ n3 v8 u7 e. P: f
这样的好处就是一个接口同时使用两种设备,当然了,转换线就可以做到,不用任何芯片。( Q7 r( R0 k* A
总结:. w: V; s) m, E
USB Type-C终结了长期以来USB插来插去的缺陷,节省了人们大量的时间,换一次方向至少2s吧,按全球10亿人每天插拔一次USB,50%概率插错,共耗时277000多小时,约为31年,太恐怖了。
9 ^# ~/ y5 `' s, Z; i" }9 H" v' m一个接口搞定了音视频数据三种,体积还算小。可以预见,以后安卓机可以改为USB Type-C接口了,如果只需要USB2.0的话,只需要重做线缆,不用芯片,成本上完全可以忽略不计。 |
N5 \" {* \& f0 O: p4 ~6 O8 B" f& ?3 [
( a& n/ W2 R: e7 H8 R5 T! R4 g5 @. p" y+ e, f4 ^6 b
9 }( H) b# @" E, l |