USB Type-C日益普及,廣泛應(yīng)用于筆記電腦,手機,臺式機和工業(yè)PC等領(lǐng)域,在這些應(yīng)用場合往往需要Type-C 接口既支持高速數(shù)據(jù)傳輸,同時也能夠支持多媒體功能。本文主要介紹如何通過TPS65994AD和TUSB1044在Type-C接口實現(xiàn)USB3.1 Gen2和DP1.4。
TPS65994AD是一款獨立的USB Type-C和 USB PD控制器,內(nèi)置電源路徑,支持USB PD 3.0,可以實現(xiàn)DP,Thunderbolt等ALT Mode。TUSB1044是一款USB Type-C Alt Mode redriving switch,支持速率可達10 Gbps,可搭配集成USB3.1/DP MUX的Host實現(xiàn)支持USB3.1 Gen2和DP1.4功能的Type-C接口。TPS65994AD通過CC識別接入的設(shè)備,再通過I2C或者GPIO與TUSB1044通信,進而根據(jù)CC 狀態(tài)控制TUSB1044內(nèi)部AUX切換和USB3.1/DP redriver配置,實現(xiàn)Host端的USB3.1和DP Mode。其中, GPIO模式通信,控制簡單,易于實現(xiàn);I2C模式通信,控制靈活,并可以減少外圍器件和IO口的使用,節(jié)省PCB空間。
TPS65994AD和TUSB1044通過I2C 模式實現(xiàn)USB Type-C USB3.1/DP Mode的系統(tǒng)框圖如圖1所示。將TPS65994AD的I2C master(I2C3m_SCL,I2C3m_SDA)連接到TUSB1044的I2C接口;將TPS65994AD 相應(yīng)port 的DP HPD(GPIO0/GPIO1)連接到對應(yīng)TUSB1044的HPDIN引腳;將TUSB1044 I2C_EN上拉,使能I2C模式;通過UEQ0/A0和UEQ1/A1引腳懸配置TUSB1044的I2C地址,有16個地址可供選擇;其他引腳的配置可以參考TPS65994AD和TUSB1044的datasheet。
圖1 TPS65994AD和TUSB1044 系統(tǒng)框圖
下面著重介紹TPS65994AD PD Firmware的配置以實現(xiàn)上述USB3.1 Gen2和DP1.4功能,采用的軟件工具為TPS65993_4 Application Customization Tool,主要配置如下:
如圖2所示,使能DP SID和DP mode,并做圖2所示配置。
圖2 DP配置
如圖3所示,配置“I2C Master Config”,將slave address 1配置為所設(shè)定的TUSB1044 I2C地址,這里為“12”。
圖3配置I2C 地址
如圖4所示,配置“App Config Binary Data Indices”,將port1 I2C event start index配置為index 1,即TPS65994 I2C master從index 1開始發(fā)送port 1的I2C event;設(shè)置I2C event的總個數(shù),這里設(shè)置為20個數(shù)。需要注意的是,index 0專門用于country code,不能將I2C event start index配置為index 0;I2C event的個數(shù)需與實際所用個數(shù)一致。
圖4配置Binary Data Indices
如圖5所示,通過“Settings”進入“I2C Master Event Table”配置待發(fā)送的Data。TPS65994支持50個Record index,其中Record index 0用于country code。如步驟3所配置,這里從Record index 1開始配置,Record index 1配置參數(shù)如下:
Trigger Event:用于選擇觸發(fā)I2C master發(fā)送data的觸發(fā)事件,這里選擇為I2C_MASTER_EVENT_POWER_ON_RESET,即以TPS65994AD重新上電復位為觸發(fā)事件。
Data Length:發(fā)送data的長度,以byte為單位,長度需與Data里面填入的數(shù)據(jù)相同,這里設(shè)置為2。
Slave Address Index:用于選擇給哪一個I2C slave 設(shè)備發(fā)送數(shù)據(jù),如步驟2所配置,這里配置為0,即選擇第一個slave address:0x12。
Priority:用于設(shè)置優(yōu)先級,這里采用默認設(shè)置0。
Data:用于設(shè)置I2C master發(fā)送的數(shù)據(jù),采用十六進制,最右邊的byte最先發(fā)送,這里配置為0x100a,即PD剛上電時對TUSB1044的0x0a寄存器寫入0x10,關(guān)斷USB和DP模式,EQ采用寄存器的設(shè)置值。寄存器定義詳見TUSB1044的datasheet。
圖5配置I2C Master
同理,對Record index 2~ Record index 20按表1內(nèi)容進行配置,以實現(xiàn)Host端的1和DP Mode。
Record index | Trigger Event | Data Length | Slave Address index | Priority | Data |
1 | I2C_MASTER_EVENT_POWER_ON_REST | 2 | 0 | 0 | 0x100a |
2 | I2C_MASTER_EVENT_DETACH | 2 | 0 | 0 | 0x100a |
3 | I2C_MASTER_EVENT_ATTACH_UU | 2 | 0 | 0 | 0x110a |
4 | I2C_MASTER_EVENT_ATTACH_UU | 2 | 0 | 0 | 0x680c |
5 | I2C_MASTER_EVENT_ATTACH_UU | 3 | 0 | 0 | 0x666610 |
6 | I2C_MASTER_EVENT_ATTACH_UU | 3 | 0 | 0 | 0x333320 |
7 | I2C_MASTER_EVENT_ATTACH_UD | 2 | 0 | 0 | 0x150a |
8 | I2C_MASTER_EVENT_ATTACH_UD | 2 | 0 | 0 | 0x680c |
9 | I2C_MASTER_EVENT_ATTACH_UD | 3 | 0 | 0 | 0x666610 |
10 | I2C_MASTER_EVENT_ATTACH_UD | 3 | 0 | 0 | 0x333320 |
11 | I2C_MASTER_EVENT_DP_CONFIG_ACE_UU | 2 | 0 | 0 | 0x1a0a |
12 | I2C_MASTER_EVENT_DP_CONFIG_ACE_UU | 3 | 0 | 0 | 0x555510 |
13 | I2C_MASTER_EVENT_DP_CONFIG_ACE_UD | 2 | 0 | 0 | 0x1e0a |
14 | I2C_MASTER_EVENT_DP_CONFIG_ACE_UD | 3 | 0 | 0 | 0x555510 |
15 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UU | 2 | 0 | 0 | 0x1b0a |
16 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UU | 3 | 0 | 0 | 0x665510 |
17 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UU | 3 | 0 | 0 | 0x333320 |
18 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UD | 2 | 0 | 0 | 0x1f0a |
19 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UD | 3 | 0 | 0 | 0x556610 |
20 | I2C_MASTER_EVENT_DP_CONFIG_BDF_UD | 3 | 0 | 0 | 0x333320 |
表1配置Record index 1~ Record index 20
本文介紹了一種基于TPS65994AD和TUSB1044通過I2C模式實現(xiàn)的USB Type-C USB3.1/DP Mode系統(tǒng),詳細分析了其系統(tǒng)架構(gòu)和Firmware配置,該方案具有外圍器件少,節(jié)省PCB空間,Redriver參數(shù)可根據(jù)不同線路通過Firmware軟件靈活調(diào)節(jié)等優(yōu)勢。用戶可根據(jù)此文快速搭建USB Type-C USB3.1 Gen2/DP1.4系統(tǒng)。
審核編輯:郭婷
-
控制器
+關(guān)注
關(guān)注
112文章
16423瀏覽量
178880 -
接口
+關(guān)注
關(guān)注
33文章
8677瀏覽量
151593 -
usb
+關(guān)注
關(guān)注
60文章
7970瀏覽量
265423 -
GPIO
+關(guān)注
關(guān)注
16文章
1216瀏覽量
52248
發(fā)布評論請先 登錄
相關(guān)推薦
評論