Granite River Labs, GRL
鄭煒 Wayne Cheng
在USB Type-C介面中,除了支援USB訊號傳輸,也能應用在其他傳輸介面上,比如:Thunderbolt™、DisplayPort和USB4等,不同的傳輸介面在端口上腳位的配置也有些不同,可以參考下圖:
圖1: USB-C Receptacle Front View
圖2: Thunderbolt™ / USB4的腳位配置
圖3: DisplayPort的腳位配置
了解腳位配置的不同後,下方為大家介紹各種模式的進出方式與流程.
Enter Alternate Modes介紹
在PD溝通的定義中,這些相容的傳輸介面稱為Alternate Modes,DFP會發出Enter Mode和Exit Mode訊息給UFP做為Alternate Modes的開始以及結束。整個Enter Mode的流程可以分成幾個階段:
- DFP會先發出Discover Identity Request訊息來確認UFP的身份和能力,在UFP回覆的Discover Identity ACK訊息中有個Modal Operation Supported的欄位,用來表示UFP是否支援Alternate Modes。
- Discover階段可以分成兩部分,第一階段DFP會先發出Discover SVID Request訊息來確認UFP支援多少Alternate Modes。SVID包含由協會制定的SID和協會所提供各家廠商的VID,常見的SVID有0x8087 (Thunderbolt mode)、0xFF01 (Displayport mode)。確認UFP回覆的SVID後,第二階段DFP會發出Discover Modes訊息,其中包含DFP支援的SVID,目的是為了確認雙方都有支援這些Mode,UFP會以Discover Modes Ack訊息來表示有支援。
- DFP發出Enter Mode來告知UFP要切換的Mode,確認到UFP的Enter Modes Ack訊息後,雙方切換成溝通好的Mode。直到要結束工作模式,DFP會以Exit Mode訊息來告知UFP。
整體流程如下圖所示:
圖4: Enter Alternate Modes的流程
VDM訊息
VDM (Vendor Defined Message)是由產品的設計者來定義,而值得注意的是,在VDM的溝通過程中,以下的情況會讓雙方切換回USB Mode:
- 任何一方發出Hard_Reset訊息,PD重新溝通。
- 雙方的連接被中斷或是傳輸線被拔掉。
- DFP發出Cable Reset訊息導致傳輸線切換回原本的狀態。
整個Enter Mode的流程是可以被中斷的,過程中雙方可能隨時會發出PD訊息 (ex : PD溝通、Power Role Swap、Data Role Swap etc.),這時候被中斷的VDM 訊息會被視為傳輸錯誤,雙方會先完成PD的訊息溝通,再重新發出被中斷的VDM訊息,如下圖, Enter Mode的流程被DFP的Source_capabilities中斷,這時雙方會先進行一次PD溝通,接著DFP會重新發送Enter_Mode訊息來完成流程。但需要注意的是,VDM訊息不能中斷PD的訊息。
圖5: Enter_Mode訊息被中斷的流程
USB4與Enter_USB訊息
隨著USB4介面的推出,USB協會在PD溝通協議中新增了Enter_USB訊息讓支援USB4的產品能夠進入這個特殊的工作模式。會由Host端或是有PD能力的Hub的DFP發出Enter_USB Request給UFP,而UFP會以Accept / Reject訊息來決定整個過程是否繼續。在DFP發出Enter_USB Request之前,必須要先確認雙方都有支援USB4,確認的程序與流程圖如以下:
- 雙方先確立初期的Power / Data role。
- Power Source端提供 VBus和VCONN。
- Power Source 和 Sink建立PD溝通。
- DFP藉由Discover Identity (SOP)來確認UFP是否支援USB4。
- DFP藉由Discover Identity (SOP’)來確認傳輸線是否支援USB4。
- 假如雙方都是DRD (Dual-Role-Data) ,DFP和UFP都可以發出Data Role Swap來交換Data Role。
流程如下圖所示:
圖6: Enter_USB的流程
確認DFP、UFP和傳輸線都支援USB4之後,DFP會分別對UFP和傳輸線發出Enter_USB Request,順序分別是:SOP’→ SOP” (若傳輸線有二個E-marker) →SOP,若使用的線材是被動式,SOP’和SOP”的Enter_USB Request是不需要的。要結束整個工作階段時,DFP或UFP端會發出Data Reset訊息來重置USB的溝通和結束Alternate Modes。另外,在USB4的工作模式中以下的行為是可以允許的:
- PD溝通可以重新建立
- 以Data Reset訊息切換工作模式 (ex : 從USB4切換到USB 3.2或是Alternate Modes)
- 不需要重新配置腳位即可相容Alternate Modes的模式
結論
最後,我們來總結一下整個Enter mode的過程:
- DFP在Enter Mode前須經過一連串的訊息來確認彼此是否支援Alternate Modes,若UFP回覆Enter mode NAK,雙方會繼續維持在USB Mode。
- Enter Mode的流程可以被PD訊息中斷,但VDM訊息不能中斷PD的訊息溝通。
- DFP可以藉由Enter_USB訊息與UFP進入USB4的工作模式
作者希望藉由這篇文章讓讀者們更加了解USB Type-C介面Enter Mode的流程,並進一步認識USB4;也可以透過本文章內容規避韌體設計上可能遇到的溝通協定錯誤。
參考文獻
- USB Power Delivery Specification Revision 3.1, Version 1.4, April 2022
- Universal Serial Bus Type-C Cable and Connector Specification, Release 2.1 May 2021
作者
GRL 台灣測試工程師 鄭煒 Wayne Cheng
畢業於國立清華大學生醫工程與環境科學研究所。
具Power Delivery 相關測試經驗,熟悉 Thunderbolt PD、USB-IF PD Compliance、QC (Qualcomm Quick Charge) 等測試規範。希望能夠協助客戶PD相關問題,以順利取得認證。
本文件中規格特性及其說明若有修改恕不另行通知。
發佈日期 2022/06/15 AN-220615-TW