作者:Dylan Zheng
USB Type-C日益普及,廣泛應用于筆記電腦,手機,臺式機和工業PC等領域,在這些應用場合往往需要Type-C 接口既支持USB3.1,同時也能夠支持Display(DP)。本文主要介紹如何通過TPS65994AD和TUSB1046A實現USB Type-C DP Mode。
TPS65994AD是一款獨立的USB Type-C和 USB PD控制器,內置電源路徑,支持USB PD 3.0,可以實現DP,Thunderbolt等ALT Mode。TUSB1046A是一款VESA USB Type-C AltMode redriving switch,支持USB3.1速率可達10 Gbps,也支持DP1.4速率可達8.1 Gbps,并集成了高達14 dB 的線性redriver。TPS65994AD通過CC識別接入的設備,再通過I2C或者GPIO與TUSB1046A通信,進而根據CC 狀態控制TUSB1046A內部高速Mux切換和redriver配置,實現Host端的USB3.1和DP Mode。其中, GPIO模式通信,控制簡單,易于實現;I2C模式通信,可以減少外圍器件和IO口的使用,節省PCB空間。
TPS65994AD和TUSB1046A通過I2C 模式實現USB Type-C DP Mode的系統框圖如圖1所示。將TPS65994AD的I2C master(I2C3m_SCL,I2C3m_SDA)連接到TUSB1046A的I2C接口;將TPS65994AD 相應port 的DP HPD(GPIO0/GPIO1)連接到對應TUSB1046A的CTL1/HPDIN引腳;將TUSB1046A I2C_EN上拉,使能I2C模式;將SSEQ0/A0和DPEQ0/A1引腳懸空,配置TUSB1046A的I2C地址為0010010(0x12),亦可根據需求,配置成其它地址;其他引腳的配置可以參考TPS65994AD和TUSB1046A的datasheet。
圖1 TPS65994AD和TUSB1046A I2C模式系統框圖
下面著重介紹TPS65994AD PD Firmware的配置以實現上述DP功能,采用的軟件工具為TPS65993_4 Application Customization 6.4.12,主要配置如下:
1.如圖2所示,使能DP SID和DP mode,并做圖2所示配置。
圖2 DP配置
2.如圖3所示,配置“I2C Master Config”,將slave address 1配置為TUSB1046A I2C的地址:0x12.
圖3配置I2C 地址
3.如圖4所示,配置“App Config Binary Data Indices”,將port1 I2C event start index配置為index 1,即TPS65994 I2C master從index 1開始發送port 1的I2C event;設置I2C event的總個數,這里設置為24個數。需要注意的是,index 0專門用于country code,不能將I2C event start index配置為index 0;I2C event的個數需于實際所用個數一致。
圖4配置Binary Data Indices
4.如圖5所示,通過“Settings”進入“I2C Master Event Table”配置待發送的Data。TPS65994支持50個Record index,其中Record index 0用于country code。如步驟3所配置,這里從Record index 1開始配置,Record index 1配置參數如下:
a. Trigger Event:用于選擇觸發I2C master發送data的觸發事件,這里選擇為I2C_MASTER_EVENT_ATTACH_UU,即USB 3.1的Type-C設備以正面接入Host端。
b. Data Length:發送data的長度,以byte為單位,長度需與Data里面填入的數據相同,這里設置為2。
c. Slave Address Index:用于選擇給哪一個I2C slave 設備發送數據,如步驟2所配置,這里配置為0,即選擇第一個slave address:0x12。
d. Priority:用于設置優先級,這里采用默認設置0。
e. Data:用于設置I2C master發送的數據,采用十六進制,最右邊的byte最先發送,這里配置為0x110a,即對TUSB1046A的0x0a寄存器寫入0x11,使能USB3.1 only,且方向為正,EQ采用寄存器的設置值。寄存器定義詳見TUSB1046A的datasheet。
圖5配置I2C Master
5.同理,對Record index 2~ Record index 24按表1內容進行配置,以實現Host端的USB3.1和DP Mode。
Record index |
Trigger Event |
Data Length |
Slave Address index |
Priority |
Data |
1 |
I2C_MASTER_EVENT_ATTACH_UU |
2 |
0 |
0 |
0x110a |
2 |
I2C_MASTER_EVENT_ATTACH_UD |
2 |
0 |
0 |
0x150a |
3 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UU |
2 |
0 |
0 |
0x120a |
4 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UD |
2 |
0 |
0 |
0x160a |
5 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UU |
2 |
0 |
0 |
0x130a |
6 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UD |
2 |
0 |
0 |
0x170a |
7 |
I2C_MASTER_EVENT_POWER_ON_REST |
2 |
0 |
0 |
0x110a |
8 |
I2C_MASTER_EVENT_POWER_ON_REST |
2 |
0 |
0 |
0x3310 |
9 |
I2C_MASTER_EVENT_POWER_ON_REST |
2 |
0 |
0 |
0x3311 |
10 |
I2C_MASTER_EVENT_POWER_ON_REST |
2 |
0 |
0 |
0x3320 |
11 |
I2C_MASTER_EVENT_POWER_ON_REST |
2 |
0 |
0 |
0xa21 |
12 |
I2C_MASTER_EVENT_ATTACH_UU |
2 |
0 |
0 |
0x3320 |
13 |
I2C_MASTER_EVENT_ATTACH_UU |
2 |
0 |
0 |
0xa21 |
14 |
I2C_MASTER_EVENT_ATTACH_UD |
2 |
0 |
0 |
0x3320 |
15 |
I2C_MASTER_EVENT_ATTACH_UD |
2 |
0 |
0 |
0xa21 |
16 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UU |
2 |
0 |
0 |
0x3310 |
17 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UU |
2 |
0 |
0 |
0x3311 |
18 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UD |
2 |
0 |
0 |
0x3310 |
19 |
I2C_MASTER_EVENT_DP_CONFIG_ACE_UD |
2 |
0 |
0 |
0x3311 |
20 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UU |
2 |
0 |
0 |
0x3310 |
21 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UU |
2 |
0 |
0 |
0x3311 |
22 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UD |
2 |
0 |
0 |
0x3310 |
23 |
I2C_MASTER_EVENT_DP_CONFIG_BDF_UD |
2 |
0 |
0 |
0x3311 |
24 |
I2C_MASTER_EVENT_DETACH |
2 |
0 |
0 |
0xa |
表1配置Record index 2~ Record index 24
本文介紹了一種基于TPS65994AD和TUSB1046A通過I2C模式實現的USB Type-C DP Mode系統,詳細分析了其系統架構和Firmware配置,該方案具有外圍器件少,節省PCB空間,Redriver參數可根據不同線路通過Firmware軟件調節等優勢。用戶可根據此文快速搭建USB Type-C DP Mode系統。
審核編輯:符乾江
-
電源管理
+關注
關注
115文章
6182瀏覽量
144492 -
usb
+關注
關注
60文章
7945瀏覽量
264593
發布評論請先 登錄
相關推薦
評論