第一部分包含:一、二、三、四
第二部分包含:五、六、七
目錄
二、Type-C Port的Data Role、Power Role
三、Type-C的Data/Power Role識別協商/Alt Mode
五、相關參數/名詞/狀態解釋
六、PD協議簡介
七、行業相關信息
一、Type-C簡介以及歷史
自1998年以來,USB發佈至今,USB已經走過20個年頭有餘了。在這20年間,USB-IF組織發佈N種接口狀態,包括A口、B口、MINI-A、MINI-B、Micro-A、Micro-B等等接口形態,由於各家產品的喜好不同,不同產品使用不同類型的插座,因此悲劇來了,我們也要常備N中不明用途的接口轉接線材。
圖1 USB協議發佈時間節點
而對於Type-C來說,看起來USB標準化組織也是意識到統一和標準化問題,在定義標準時,除了硬件接口定義上,還增加了一部分“個性化”特點。分別是什麼呢?
1.1 定義了全新的接口形態
接口大小跟Micro USB相近,約爲8.3mm x 2.5mm,支持正反插,同時也規範了對應的線材,接口定義如下(線材端只有一對USB2.0 DATA):
在插座定義上,定義瞭如下兩種插座:
a)全功能的Type-C插座,可以用於支持USB2.0、USB3.1、等特性的平臺和設備。
b)USB 2.0 Type-C插座,只可以用在支持USB2.0的平臺和設備上。
在插頭定義上,定義瞭如下三種插頭:
a)全功能的Type-C插頭,可以用於支持USB2.0、USB3.1、等特性的平臺和設備。
b)USB 2.0 Type-C插頭,只可以用在支持USB2.0的平臺和設備上。
c)USB Type-C Power-Only插頭,用在那些只需要供電設備上(如充電器)。
在線纜定義上,定義瞭如下三種線纜:
a)兩端都是全功能Type-C插頭的全功能Type-C線纜。
b)兩端都是USB 2.0 Type-C插頭的USB 2.0 Type-C線纜。
c)只有一端是Type-C插頭(全功能Type-C插頭或者USB 2.0 Type-C插頭)的線纜。
還定義了N種爲了兼容舊設備的線纜:
a)一種線纜,一端是全功能的Type-C插頭,另一端是USB 3.1 Type-A插頭。
b)一種線纜,一端是USB 2.0 Type-C插頭,另一端是USB 2.0 Type-A插頭。
c)一種線纜,一端是全功能的Type-C插頭,另一端是USB 3.1 Type-B插頭。
d)一種線纜,一端是USB 2.0 Type-C插頭,另一端是USB 2.0 Type-B插頭。
e)一種線纜,一端是USB 2.0 Type-C插頭,另一端是USB 2.0 Mini-B插頭。
f)一種線纜,一端是全功能的Type-C插頭,另一端是USB 3.1 Micro-B插頭。
g)一種線纜,一端是USB 2.0 Type-C插頭,另一端是USB 2.0 Micro-B插頭。
h)一種適配器,一端是全功能的Type-C插頭,另一端是USB 3.1 Type-A插座。
i)一種適配器,一端是USB 2.0 Type-C插頭,另一端是USB 2.0 Micro-B插座。
以上這些線材,我們知道,Type-A接的是HOST,所以轉接線中,CC引腳需要接上拉電阻。Type-B接的是Device,因此CC引腳需要接下拉電阻。
其中,具備全功能的Type-C應該具備E-Marker功能,由於具備E-Marker,線纜能夠被讀到其帶電流的能力、特性、線材ID等等。E-Marker的供電電源來自於VCONN,如何知道線纜需要VCONN呢?線纜會通過下拉的電阻Ra,Source檢測到之後會提供VCONN。
1.2傳輸速率,供電效能
最大傳輸速度10Gb/s,即是USB 3.1 Gen2標準,也支持4 Lane DP模式,傳輸高清圖像,在供電部分,最大可以支持100W(20V/5A)
1.3 “個性化”協商機制
由於端口一致,線材兩端接口也一直,爲了能夠區分兩端USB設備的角色(Host/Device),必須有一套協商機制,便於進行角色確認,這部分通過CC(Configuration Channel)管腳進行設置。後面隨着PD規範的面世,CC腳開始被用來做簡單的半雙工通信,用來完成POWER供給的協商
1.4 強悍的一統天下的態勢
由於Type-C的擴展功能(SBU1/SBU2),大部分配件諸如耳機、視頻接口、Debug接口等等都可以實現兼容設計,成功逆襲以往所有的USB標準,成功上位!
二、Type-C Port的Data Role、Power Role
2.1 Type-C的 Data Role
在USB2.0端口,USB根據數據傳輸的方向定義了HOST/Device/OTG三種角色,其中OTG即可作爲HOST,也可作爲Device,在Type-C中,也有類似的定義,只是名字有了些許修改。如下所示:
(1)DFP(Downstream Facing Port):
下行端口,可以理解爲Host或者是HUB,DFP提供VBUS、VCONN,可以接收數據。在協議規範中DFP特指數據的下行傳輸,籠統意義上指的是數據下行和對外提供電源的設備。
(2)UFP(Upstream Facing Port):
上行端口,可以理解爲Device,UFP從VBUS中取電,並可提供數據。典型設備是U盤,移動硬盤。
(3)DRP(Dual Role Port):
雙角色端口,類似於以前的OTG,DRP既可以做DFP(Host),也可以做UFP(Device),也可以在DFP與UFP間動態切換。典型的DRP設備是筆記本電腦。設備剛連接時作爲哪一種角色,由端口的Power Role(參考後面的介紹)決定;後續也可以通過switch過程更改(如果支持USB PD協議的話)。
2.2 Type-C的Power Role
根據USB PORT的供電(或者受電)情況,USB Type-C將port劃分爲Source、Sink等power角色
如下圖顯示常用設備的Data Role和Power Role
Power Role 詳細可以分爲:
a)Source Only
b)默認Source,但是偶爾能夠通過PD SWAP切換爲SINK模式
c)Sink Only
d)默認SINK,但是偶爾能夠通過PD SWAP切換爲Source模式
e)Source/SINK 輪換
f)Sourcing Device (能供電的Device,顯示器)
g)Sinking Host(吃電的Host,筆記本電腦)
三、Type-C的Data/Power Role識別協商/Alt Mode
USB Type-C的插座中有兩個CC腳,以下的角色檢測,都是通過CC腳進行的,但是對於插頭、或者線纜正常只有一個CC引腳,兩個端口連接在一起之後,只存在一個CC引腳連接,通過檢測哪一個CC有連接,就可以判斷連接的方向。如果USB線纜中有需供電的器件,其中一個CC引腳將作爲VCONN供電。
3.1 CC引腳有如下作用:
a)檢測USB Type-C端口的插入,如Source接入到Sink
b)用於判斷插入方向,翻轉數據鏈路
c)在兩個連接的Port之間,建立對應的Data Role
d)配置VBUS,通過下拉電阻判斷規格,在PD協商中使用,爲半雙工模式
e)配置VCONN
f)檢測還有配置其他可選的配置模式,如耳機或者其他模式
3.2 連接方向、Data Role、Power Role角色檢測
3.2.1 SourceSink Connection
如圖所示,Source端CC引腳爲上拉,Sink端CC引腳爲下拉。握手過程爲接入後檢測到有效連接(即一端爲Host一端爲Device),隨後檢測線材供電能力,再進行USB枚舉。
如下圖指示了Source端,在連接SINK之前,CC1和CC2的框圖模型:
a)Source端使用一個MOSFET去控制電源,初始狀態下,FET爲關閉狀態
b)Source端CC1/CC2均上拉至高電平,同時檢測是否有Sink插入,當檢測到有Rd下拉電阻時,說明Sink被檢測到。Rp的阻值表明Host能夠提供的功率水平。
c)Source端根據Cable中哪一個CC引腳爲Rd下拉,去翻轉USB的數據鏈路,同時決定另外一個CC引腳爲VCONN
d)在此之後,Source打開VBUS,同時VCONN供電
e)Source可以動態調整Rp的值,去表示給Sink的電流發送變化,告知SINK最大可以使用的電流
f)Source會持續檢測Rd的存在,一旦連接斷開,電源將會被關閉
g)如果Source支持高級功能(PD或者Alternate Mode),將通過CC引腳進行通信
如下圖指示了SINK端CC1和CC2框架:
a)SINK的兩個CC引腳均通道Rd下拉到GND
b)SINK通過檢測VBUS,來判斷Source的連接與否
c)SINK通過CC引腳上拉的特性,來檢測目前的USB通信鏈路(翻轉)
d)SINK可選地去檢測Rp的值,去判斷Source可提供的電流。同時管理自身的功耗,保證不超過Source提供的最大範圍
e)同樣的,如果支持高級功能,通過CC引腳進行通信。
如下圖指示DRP的CC引腳在鏈接之前的架構:
a)當作爲Source存在的時候,DRP使用MOSFET控制VBUS供電與否
b)DRP使用Switch去切換自身身份作爲Source,或者是SINK
c)DRP存在一套機制,分三種情況,去決定自身是SINK或者是Source,去建立兩者間彼此的角色。
情況1:不使用PD SWAP,隨機變成Source/SINK中的任意一個,CC腳波形爲方波
情況2:自身傾向於作爲Source,執行Try.SRC,問對面能不能做SINK呀,我做Source
情況3:與情況2相反,自身傾向作爲SINK,執行Try.SNK,你做Source,我做小弟
當然還存在Source&Source,SINK&SINK這種搞基模式,唯一的結果就是一直停留在Unattached.SNK/Unattached.SRC,無法終成眷屬。
3.3 Type-C的其他模式
3.3.1 Display Port Alternate Mode
系統會通過USB PD協議中VDMs的信息通信(CC引腳通信),去告知支持Display Port模式。在這個模式當中,USB SuperSpeed 信號允許部分傳輸USB,部分傳輸DP信號。
3.3.2 Audio Adapter Accessory Mode
如下圖,爲3.5mm音頻輸入口轉Type-C端口,USB2.0鏈路被用來傳輸模擬音頻信號,若帶MIC,MIC信號則連接在SBU引腳上,在這個模式當中,電源可以提供到500mA電流。
Host端如何識別到音頻模式呢?把CC引腳和VCON連接,並且下拉電阻小於Ra/2(則小於400ohm),或者分別對地,下拉電阻小於Ra(小於800ohm),則Host會識別爲音頻模式。
3.3.3 Debug Accessory Mode (DAM)
在DAM下,連接軟體和硬體提供可視化調試和控制的系統,使用較少。
四、如何進行數據鏈路的切換
4.1 純USB3.0
以TUSB546(DFP),TUSB564(UFP)爲例子
前者的使用例子如筆記本電腦、後者的使用例子如Monitor
如下圖,兩端設備會根據插入方向,切換數據鏈路。圖X插入連接爲CC1,因此TUSB564切換到TX1/RX1
圖中插入連接爲CC2,因此TUSB564切換到TX2/RX2,也就是根據CC引腳插入,識別插入方向
4.2 USB3.1和2 LANE of DisplayPort
切換原理如上,需要注意的是,DP信號是使用SBUx進行傳輸
4.3 純DP模式 4 lane
問題思考:如何確定是DP 4 lane模式或者是DP 2 lane+USB3.0 模式?
通過CC引腳,利用PD協議溝通,協商,PD Controler 發起請求,並得到迴應