1994年,Intel,Compaq等七家軟硬件全球知名企業(yè)為了突破當時PC使用串口和并口傳輸速度的限制,成立了通用串行總線開發(fā)者論壇(USB Implementers Forum, USB IF),并在1994年11月提出了USB 0.7版,到了1998年開始出現(xiàn)了支持USB 1.1的設備,他的高速性(USB1.1支持1.5 Mb/s和12 Mb/s兩種速度)和易用性迅速使之成為P C外設的寵兒。為了對抗1394速度的優(yōu)勢(1394可以達到400 Mb/s),1999年提出了US B 2.0規(guī)范的思想,2000年4月USB IF推出USB 2.0。USB 2.0向下兼容1.1,提供3種速度 ,最高可以達到480 Mb/s。
USB 1.1和2.0都是必須依賴于PC的,為了在一定程度擺脫對PC的完全依賴,有一定程度的主機功能,2001年12月推出了OTG 1.0,經過6次修改,于2003年6月推出了USB OTG 1.0 a,正式成為一個達到市場實用的規(guī)范。
本文中分析討論了USB 2.0補充規(guī)范OTG的工作原理,并且針對目前數(shù)碼相機伴侶存在的問題,作者提出了自己的解決方案。
1、USB OTG的工作原理
OTG補充規(guī)范對USB 2.0的最重要的擴展是其更具節(jié)能性的電源管理和允許設備以主機和外設兩種形式工作。OTG有兩種設備類型:兩用OTG設備(Dualrole device)和外設式OTG設備(Peripheralonly OTG device) 。兩用OTG設備完全符合USB 2.0規(guī)范,同時,他還要提供有限的主機能力和一個MiniAB插座、支持主機流通協(xié)議(Host Negotiatio n Protocol, HNP),并和外設式OTG設備一樣支持事務請求協(xié)議(Session Request Protocol, SRP)。當作為主機工作時,兩用OTG設備可在總線上提供8 mA的電流,而以往標準主機則需要 提供100~500 mA的電流。
2個兩用OTG設備連接在一起時可交替以主機和從機的方式工作,這個特點兼容了現(xiàn)有USB 規(guī)范主機/外設的結構模型。OTG主機負責初始化數(shù)據通信的任務,比如:總線復位、獲取USB 各種描述符和配置設備。這些配置完成后,2個OTG設備便可以分別以主機和從機方式傳輸信息,2個設備主從角色交換的過程由主機傳輸協(xié)議(HNP)定義。
下面從5個方面說明OTG的工作原理。
1.1主機(Adevice)和從機(Bdevice)的初始功能
設備的初始功能是通過定義連接器來實現(xiàn)的。OTG定義了一個叫做MiniAB的袖珍插孔,他能直接接入MiniA或者MiniB插口,MiniAB有一個ID引腳 上拉至電源端,MiniA插頭有一個與地連接好的ID(R<10 Ω),Mini B插頭有一個與地連接的開路ID引腳(R>100 kΩ)。當2個OTG設備連接到一起的時候,MiniA插頭邊的ID引腳會注入一個“0”狀態(tài),MiniB插頭邊的ID引腳為 “1”,ID為0的OTG設備默認為主機(Adevice),ID為1的OTG設備默認為從機(B device)。圖1對上述內容進行了圖解。
1.2對話請求協(xié)議SRP(Session Request Protocol)
這個協(xié)議允許Adevice(可以是電池供電)在總線未使用時通過切斷Vbus來節(jié)省電源消耗,也為Bdevice啟動總線活動提供了一種方法。任何一個Adevice, 包括PC或便攜式電腦,都可以響應SRP;任何一個Bdevice,包括一個標準USB外設, 都可以啟動SRP;要求一個雙重功能設備既能啟動SRP,又能響應SRP。
1.3主機流通協(xié)議HNP(Host Negotiation Protocol)
HNP是一種用來實現(xiàn)Adevice和Bdevice主機/從機轉換的協(xié)議(實際上是電纜的反轉)。主/從機功能交換的結果表現(xiàn)在下列過程中:
(2)Adevice可在Bdevice上設置“HNP Enable”特性。
(3)Bdevice斷開上拉。
(4)ADevice與上拉電阻相連,表明Adevice從屬于從機。
(5)Adevice給Vbus供電。
(6)Bdevice檢測Adevice的上拉。
(7)復位/列舉/使用Adevice。
1.4驅動程序
與PC主機不同,便攜式設備沒有便捷的方式和足夠的空間裝載新的驅動程序。因此,OTG 規(guī)范要求每個兩用OTG設備有一個支持的外設式OTG目標設備的列表,列表中包括設備的類型和制造商等信息。
與PC機不同,OTG兩用設備的驅動程序棧由USB主機棧和USB設備棧構成以滿足兩種工作方式的需要。OTG驅動程序通過連接器的不同或者是否有NHP交換設備的工作方式來決定使用USB主機棧還是USB設備棧。
當OTG兩用設備以主機方式工作時,USB主機棧工作。其中的主機控制器驅動程序負責USB 主機棧與硬件端點的數(shù)據交換,USB驅動程序枚舉并保存設備的信息,目標外設主機類驅動程序支持目標設備列表里的設備。主機類驅動程序由芯片制造商提供,同時,OTG提供通用的主機類驅動程序(可以修改以用于非通用設備)。
當OTG兩用設備以從機方式工作時,USB設備棧工作。其中的設備控制器驅動程序負責USB 設備棧與硬件端點的數(shù)據交換,USB協(xié)議層負責處理USB協(xié)議規(guī)范,設備類驅動程序的功能取決于該兩用設備的功能(如數(shù)碼照相機、存儲設備、打印機等)。
OTG驅動程序負責處理兩用OTG設備的工作方式轉換,同時,他還可以返回其結果(如設備是否支持HNP)并處理總線錯誤。應用層程序通過OTG驅動程序開始或者結束一個傳輸事務, 通過USB主機?;蛟O備棧與硬件層交換數(shù)據。
1.5數(shù)據流模型
OTG主機和設備被劃分為功能層、USB設備層和USB接口層3個不同層次,如圖2所示。
USB接口層為OTG主機和OTG設備提供物理連接,USB系統(tǒng)軟件使用主機控制器來管理主機與 USB設備的數(shù)據傳輸。USB系統(tǒng)軟件相對于主機控制器而言,處理的是以客戶角度觀察的數(shù)據傳輸及客戶與設備的交互。USB設備層為USB主機系統(tǒng)軟件提供一個可用的邏輯設備。主機通過與之功能匹配的客戶軟件實現(xiàn)其各種功能。
OTG設備與以往的USB設備一樣有兩種通道:數(shù)據流通道和消息通道。數(shù)據流通道沒有定義好的結果,而消息通道則有固定的結構。但是,每個通道都有一定的帶寬、傳輸類型、傳輸方向和緩沖區(qū)大小。自供電設備配置一個默認的控制通道,由他提供該設備的配置和狀態(tài)等信息。
2目前數(shù)碼相機伴侶存在的問題及其解決方案
上面對USB OTG的工作原理的主要部分進行了說明,下面將探討USB OTG的應用。
當前隨著中高檔數(shù)碼設備如數(shù)碼相機的價格的下降,已經開始普及到千家萬戶,統(tǒng)計表明 ,2003年上半年數(shù)碼相機的銷量達到38.5萬臺,年底有望突破100萬臺,其進口量比去年同期增加了53倍,而現(xiàn)在一般使用的數(shù)碼相機象素在200萬~400 萬,尤其以320萬象素左右的為市場熱點,如果要拍攝高質量的照片,每張會超過1M,即使是256M的存儲空間也會很快消耗光了,而現(xiàn)在市場上CF卡等存儲介質的價格一直高居不下,所以就應運而生了一種叫做數(shù)碼相機伴侶(典型的產品如Phototainer,韓國Innoplus公司產品)的電子消費類產品。 這類產品能夠提供以下功能:
(1)通過讀卡機,能把各種存儲介質(比如SD卡,CF卡等)上的內容拷貝到移動硬盤中去 ,為外出旅行的人們提供了極大的方便。
(2)通過USB口,可以在計算機上和數(shù)碼相機伴侶之間進行數(shù)據拷貝、刪除等功能。
(3)提供大容量的存儲空間(從10 GB到40 GB都有),外出旅行的人再也不必為存儲卡的容量操心了,大可放心的拍攝。
作者認為這類產品美中不足的是:
(1)他讀取數(shù)碼相機存儲介質的方法是通過讀卡機來實現(xiàn)的,也就是必須把數(shù)碼相機的存儲介質取下來,插到數(shù)碼相機伴侶上的插口里,不但很不方便,而且注定了數(shù)碼相機伴侶的尺寸重量不會很小,由于存在不同存儲介質還必須有不同類型的插口(一般都是要兩種插口 )。
(2)為了兼容多種存儲介質,還必須要配置轉接設備。
(3)耗電量也很大的,一般來說,一次充電只能用1~2 h。
(4)當前許多此類產品還采用USB 1.1接口,傳輸速度顯然不可能達到用戶的期望。
針對上面存在的問題,作者考慮把USB OTG技術應用到數(shù)碼相機伴侶上來,從以下幾個方面進行改進:
(1)采用PHILIPS ISP1362芯片來實現(xiàn)USB OTG功能。優(yōu)點如下:
①利用USB OTG的雙重角色功能,使之可以在連接到其他便攜式數(shù)碼產品或者存儲介質時可以作為主機,來完成數(shù)據從其他外設拷貝到移動硬盤中;當他連接到PC中時,就可以作為普通的USB設備,由PC控制,進行數(shù)據的操作。
②采用USB OTG,整體結構將發(fā)生翻天覆地的變化,將讀取數(shù)據等工作將由芯片完成 ,也就省去了很多關系存儲卡的工作,所以可以將尺寸和重量做的很小,而且在使用的時候也是很方便的,只要使用USB電纜連接移動硬盤和數(shù)碼相機伴侶等設備就可以了。
③USB OTG的優(yōu)秀電源管理能力也能使電池的使用時間更加持久。
(2)可以考慮采用大容量微硬盤,一方面滿足大容量的存儲需求,另一方面可以把整個數(shù)碼相機伴侶體積大幅度的減小。
(3)USB 2.0在速度上的優(yōu)勢已經得到了市場的積極支持,所以采用的USB 2.0接口保證了數(shù)據傳輸?shù)母咝А?/p>
經過改進后的數(shù)碼相機伴侶與目前市面上的數(shù)碼相機伴侶相比,具有如下特點:
(1)PHILIPS ISP1362芯片來實現(xiàn)USB OTG功能,無需PC就可把圖像等數(shù)據拷貝到硬盤上。
(2)內置1英寸大容量微硬盤,滿足現(xiàn)在數(shù)據大量存儲的要求。
(3)無需取下數(shù)碼相機等數(shù)碼設備的存儲卡,使用方便。
(4)采用USB 2.0規(guī)范,最高速度可以達到480 Mb/s。
(5)可以充當便攜式移動硬盤,完成數(shù)據備份等工作。
(6)簡單控制,只有電源和復制按鈕,即可輕松實現(xiàn)對存儲數(shù)據的操作。
(7)采用微硬盤,典型的產品如Magicstore,體積可以更小,更時尚誘人。
(8)使用LCD顯示各種狀態(tài)。
(9)由于使用了OTG的特別供電模式,電源耐久性會有很好表現(xiàn)。
具有USB OTG功能的數(shù)碼相機伴侶由于其具有海量存儲、存取數(shù)據、存取速度快和出色的電源管理等特點,不僅可以充當便攜式移動硬盤,更為外出旅行的人提供了極大的方便。
3結語
分析討論了USB 2.0補充規(guī)范OTG的工作原理,作者針對目前數(shù)碼相機伴侶存在的問題提出了應用USB OTG技術進行改進的方案。USB OTG已受到Cypress等芯片供應商、軟件開發(fā)商和設備制造商的廣泛支持,該方案從理論上和實際應用上都是實際可行的,非常具有應用價值。USB OTG規(guī)范是USB 2.0規(guī)范的補充而不是替代品。PC主機和標準外設并沒有被取代,因為新的OTG僅適用于需要具有主機功能和更小體積的便攜式設備。OTG在這些外設間引入了點對點的(point to point)通信方式,這使得便攜式儀器的發(fā)展有了更加廣闊的空間,OTG不久將會成為新一代的“移動計算”解決方案。
評論