使用FPGA實現(xiàn)靈活的USB Type-C接口控制
D+/D-:當(dāng)USB3接口不可用時,這些引腳為USB2信號提供信號通道。
Vbus/GND:這些引腳能夠為上行數(shù)據(jù)接口提供高達100W的供電能力,或者在一些情況下支持點對點供電。
剩余的連接是“非對稱”的,也就是說在連接器插入方向錯誤時這些連接無法正常工作,除非這些端口在電氣或邏輯方面做了修正。USB Type-C的非對稱連接包含:
Tx1/2 Rx1/2:提供最多2通道的超速數(shù)據(jù)鏈路,實現(xiàn)雙向高達20Gbps的帶寬。
CC1/CC2:配置通道信號用于連接的發(fā)現(xiàn)、配置和管理。請注意它們中僅有一個信號用作配置通道,另一個在上行數(shù)據(jù)流端口中用于為USB邏輯供電。
SBU1 & 2:邊帶使用(Side Band Use)信號適用于傳輸非USB信號,它們用于模擬音頻(Analog Audio)模式,也可用于可選(Alternate)模式。
4 實現(xiàn)USB Type-C應(yīng)用時所面臨的挑戰(zhàn)
目前,要將USB Type-C接口添加到新的設(shè)計中,需要設(shè)計工程師進行系統(tǒng)芯片開發(fā)來增加新的功能,因為無論是現(xiàn)有系統(tǒng)中的PHY、MCU還是應(yīng)用處理器(Application Processor, AP)都不支持USB Type-C接口的多項關(guān)鍵功能。這些必需的功能塊包含電纜偵測(Cable Detect, CD)、超速切換控制、供電(Power Delivery, PD)協(xié)商以及供應(yīng)商自定義消息(Vendor-Defined Messaging, VDM)。
挑戰(zhàn)1:提供USB Type-C接口電纜偵測和供電的PHY功能。USB Type-C接口添加了大量絕大多數(shù)USB Type-C設(shè)備都需要的PHY層功能。大多數(shù)USB Type-C設(shè)備需要電纜偵測功能,用于判斷它們連接到的是DFP還是UFP以及電纜的方向。該機制通過在CC1和CC2通道上加上拉和下拉電阻,要實現(xiàn)CD功能,設(shè)備必須要能夠測得這些上拉和下拉電阻上的各種電壓值。任何CD解決方案都需要能夠測量這些模擬電壓。
如果想要充分利用供電通訊來協(xié)商獲得更高功率、切換端口功能或使用VDM,就必須實現(xiàn)PD PHY層。PD通信使用一條CC通道,由USB 供電規(guī)范定義。它采用半雙工通信機制,使用雙相標(biāo)記編碼(Bi-phase Mark Coding, BMC)傳輸4b5b編碼的數(shù)據(jù),可簡化接收器設(shè)計。BMC可被認為是一種曼徹斯特(Manchester)編碼。此外,數(shù)據(jù)使用循環(huán)冗余校驗(Cyclic Redundancy Checking, CRC)算法來防止數(shù)據(jù)錯誤。
盡管使用通用微控制器能夠?qū)崿F(xiàn)PD PHY,但是對于要求低功耗的解決方案來說,使用基于邏輯單元的器件更加合適。
挑戰(zhàn)2:在沒有主系統(tǒng)處理器的情況下實現(xiàn)供電協(xié)商功能。如果想要讓UFP能夠利用USB Type-C提供的更高功率供電,這就要發(fā)起一個供電協(xié)議申請,DFP同意該供電申請或者給出它所能提供的供電功率。一旦協(xié)商成功,供電協(xié)議也就相應(yīng)地成立。在很多情況下,沒有系統(tǒng)處理器來實現(xiàn)上述功能。首先在某些情況下,如智能充電器并不包含系統(tǒng)處理器。其次,可能需要在電池沒電的情況下進行供電協(xié)議協(xié)商來實現(xiàn)快速充電。還有,在某些情況下(如為筆記本和智能手機同時供電時),最好讓主處理器處于休眠模式。
雖然有很多方式可實現(xiàn)這種協(xié)商功能,但使用尺寸極小、功耗極低的方案將功能集成到現(xiàn)有的芯片中是最理想的選擇。
挑戰(zhàn)3:支持結(jié)構(gòu)化和非結(jié)構(gòu)化的供應(yīng)商自定義消息。正如上文提到的,結(jié)構(gòu)化的供應(yīng)商自定義消息能夠用于協(xié)商使用諸多標(biāo)準(zhǔn)化的可選模式,以擴展USB Type-C的功能。設(shè)計人員需要同時實現(xiàn)USB PD規(guī)范中定義模式的協(xié)商以及控制高速切換的功能,用于給USB連接器內(nèi)的數(shù)據(jù)對傳輸合適的信號。非結(jié)構(gòu)化的供應(yīng)商自定義消息允許制造商實現(xiàn)非標(biāo)準(zhǔn)化的功能。這可能包含使用閑置的信號通道來實現(xiàn)一些客制化的功能,如底座和固定在底座上的設(shè)備間的GPIO聚合或者為挑戰(zhàn)與應(yīng)答驗證機制傳輸數(shù)據(jù)。設(shè)計人員必須實現(xiàn)通訊功能以及所需的處理、切換控制以及其他硬件。
同樣地,有很多方式可以實現(xiàn)與VDM相關(guān)的協(xié)商和控制機制。但是,真正的挑戰(zhàn)在于怎樣通過集成來實現(xiàn)成本最低、尺寸最小的目標(biāo)。
5 應(yīng)用實例
本文的最后一部分提供相關(guān)實例來說明如何使用FPGA技術(shù)快速實現(xiàn)USB Type-C接口,并且充分利用該標(biāo)準(zhǔn)所提供的諸多優(yōu)勢。通過集成的方式提供小尺寸,基于邏輯的設(shè)計,可獲得極低的功耗以及很大的靈活性,可按需進行更改。
實例1:基于FPGA的PD功能,適用于智能充電器由于USB Type-C接口最早出現(xiàn)在平板電腦、智能手機和其他移動設(shè)備上,它們要求充電器能夠充分利用PD協(xié)商功能為充電設(shè)備提供所需電壓和電流,并協(xié)商供電協(xié)議(Power Contract)來最大程度滿足設(shè)備的需求。一旦供電協(xié)議建立,PD必須將電壓和電流要求傳輸至充電器內(nèi)部的電源管理集成電路(Power Management Integrated Circuit, PMIC)以獲得協(xié)議規(guī)定的電流和電壓。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)fpga相關(guān)文章:fpga是什么
上拉電阻相關(guān)文章:上拉電阻原理
評論