細談Type-C、PD原理(一)
第一部分包含:一、二、三、四
第二部分包含:五、六、七
目錄
二、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 發起請求,並得到迴應