隨著PDA、移動電話、數(shù)碼相機、打印機等消費類產(chǎn)品的普及,用于這些設(shè)備與電腦,或設(shè)備與設(shè)備之間的高速數(shù)據(jù)傳輸技術(shù)越來越受到人們的關(guān)注,IEEE1394和USB是用于此類傳輸?shù)膬蓚€主要標準。這兩個標準都提供即插即用和熱插拔功能,都可以向外提供電源,也都支持多個設(shè)備的連接。其中IEE1394支持較高的數(shù)據(jù)傳輸速度,但相對比較復(fù)雜、價格較高,主要用于需要高速通信的AV產(chǎn)品;而最初的USB標準主要面向低速數(shù)據(jù)傳輸?shù)膽?yīng)用,其中USB1.1支持1.5Mbps和12Mbps的傳輸速率,被廣泛用于傳輸速率要求不高的PC機外設(shè),如:鍵盤、鼠標等。USB2.0標準的推出使USB的傳輸速度達到480Mbps。而USB OTG技術(shù)的推出則可實現(xiàn)沒有主機時設(shè)備與設(shè)備之間的數(shù)據(jù)傳輸。例如:數(shù)碼相機可以直接與打印機連接并打印照片,從而拓展了USB技術(shù)的應(yīng)用范圍。圖1是USB技術(shù)的典型應(yīng)用示意圖。
1 主機通信協(xié)議與對話請求協(xié)議
USB OTG標準在完全兼容USB2.0標準的基礎(chǔ)上,增添了電源管理(節(jié)省功耗)功能,它允許設(shè)備既可作為主機,也可作為外設(shè)操作(兩用OTG)。OTG兩用設(shè)備完全符合USB2.0標準,并可提供一定的主機檢測能力,支持主機通令協(xié)議(HNP)和對話請求協(xié)議(SRP)。在OTG中,初始主機設(shè)備稱為A設(shè)備,外設(shè)稱為B設(shè)備??捎秒娎|的連接方式來決定初始角色。圖2所示是用第5個ID腳確定默認主機的示意圖,兩用設(shè)備使用新型mini-AB插座,從而使mini-A插頭、mini-B插頭和mini-AB插座增添了第五個引腳(ID),以用于識別不同的電纜端點。mini-A插頭中的ID引腳接地,mini-B插頭中的ID引腳浮空。當(dāng)OTG設(shè)備檢測到接地的ID引腳時,表示默認的是A設(shè)備(主機),而檢測到ID引腳浮這的設(shè)備則認為是B設(shè)備(外設(shè))。系統(tǒng)一旦連接后,OTG的角色還可以更換。主機與外設(shè)采用新的HNP,A設(shè)備作為默認主機半提供VBUS電源,并在檢測到有設(shè)備連接時復(fù)位總線、枚舉并配置B設(shè)備。OTG標準為USB增添的第二個新協(xié)議稱為對話請求協(xié)議(SRP)。SRP允許B設(shè)備請求A設(shè)備打開VBUS電源并啟動一次對話。一次OTG對話可通過A設(shè)備提供VBUS電源的時間來確定(注:A設(shè)備總是為VBUS供電,即使作為外設(shè))。也可通過A設(shè)備關(guān)閉VBUS電源來結(jié)束一閃會話以節(jié)省功耗,這在電池供電產(chǎn)品中是非常重要的。例如,在兩臺蜂窩電話通過連接互相交換信息時,一臺連接在電費的mini-A端,是A設(shè)備,默認為主機。另一臺是B設(shè)備,默認為外設(shè)。當(dāng)在不需要USB通信時,A設(shè)備可以關(guān)閉VBUS線,此時B設(shè)備就會檢測到該狀態(tài)并進入功低耗模式。
2 OTG功能的構(gòu)建
圖3所示電路給出了構(gòu)建OTG功能時需要在基礎(chǔ)USB外設(shè)上添加的電路,電路中的通用串行總線控制器可以是一個微處理器和USB SIE(串口引擎),也可以是集成的μP/USB芯片或與USB收發(fā)器相連的ASIC。為總線提供電源的外部設(shè)備需要一路3.3V穩(wěn)壓輸出供電電壓,以便為邏輯電路和連接在D+、D-引腳的1500Ω電阻提供電源。通過D+、D-引腳上的上拉電阻可向主機發(fā)出設(shè)備已連接的信號,并指示設(shè)備的工作速度。電阻上拉至D+表示全速運行,電阻上拉至D-表示低速運行。其它端點(包括D+和D-的15kΩ下拉電阻)用于檢測上拉電阻的狀態(tài)。由于USB設(shè)計需要提供熱插拔功能。因此,其ESD保護電路主要用于為D+、D-和VBUS引腳提供保護。
為了增加OTG的兩用功能,必須擴充收發(fā)器功能來使OTG設(shè)備既可作為主機使用,也可以作為外設(shè)使用。而要實現(xiàn)上述功能,就需要在圖3所示電路中添加D+和D-端的15kΩ下拉電阻并為VBUS提供供電電源。此外,收發(fā)器還需要具備以下三個條件:
(1)可切換D+/D-線上的上拉和下拉電阻,以提供外設(shè)和主機功能。
(2)作為A設(shè)備時,需要具有VBUS監(jiān)視和供電電路;作為B設(shè)備初始化SRP時,需要監(jiān)視和觸發(fā)VBUS。
(3)具有ID輸入引腳。
作為兩用OTG設(shè)備,ASIC、DSP或其它與收發(fā)器連接的電路必須具備充當(dāng)外設(shè)和主機的功能,并應(yīng)按照HNP協(xié)議轉(zhuǎn)換其角色。
收發(fā)器所需添加的大多數(shù)電路用于VBUS引腳的管理。作為主機,它必須能夠提供5V、輸出電流可達8mA的電源。圖3中的模擬開關(guān)用于配置收發(fā)器的各種功能。
ASIC和控制器還必須包含USB主機邏輯控制功能,包括發(fā)送SOF(幀啟動)包、發(fā)送配置u36755輸入u36755輸出數(shù)據(jù)包,在USB 1 msec幀內(nèi)確定傳輸進程、發(fā)送USB復(fù)位信號、提供USB電源管理等。
3 Maxim要提供的USB OTG方案
MAX3301E是Maxim公司研制的一款USB OTG收發(fā)器,該器件集成有電荷泵,可將PDA、蜂窩電話和數(shù)碼相機等移動設(shè)備與USB外設(shè)直接連接而無需PC機的參與。采用MAX3301E和一個嵌入式USB主機,就可直接將諸如打印機或外部硬盤驅(qū)動器這樣的外設(shè)連接。MAX3301E內(nèi)部包括USB OTG收發(fā)器、UBUS電荷泵、線性穩(wěn)壓器和I2C 2線串行接口。內(nèi)部電平轉(zhuǎn)換器使MAX3301E能夠與采用+1.65至+3.6V邏輯電源電壓的器件連接。MAX3301E中的電荷泵工作在+3V至+4.5V輸入電源下,可產(chǎn)生符合OTG要求的VBUS輸出,且輸出電流大于8mA。該器件可利用內(nèi)部比較器控制并測量VBUS,同時支持USB OTG SRP和HNP,其典型應(yīng)用電路如圖4所示。