專利名稱:多媒體USB數(shù)據(jù)傳輸透過數(shù)字視頻和音頻(DiiVA)的交互界面的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于多媒體USB數(shù)據(jù)傳輸?shù)募夹g(shù)領(lǐng)域,尤其指一種多媒體USB數(shù)據(jù)傳輸透過數(shù)字視頻和音頻(DiiVA)的交互界面方法及系統(tǒng)。
背景技術(shù):
DiiVA (數(shù)字視頻和音頻的互動界面)是個雙向視頻和音頻的接口,允許雙向傳輸無壓縮的高清視頻,以及多聲道音頻,通過單一電纜以高帶寬的數(shù)據(jù)傳送。DiiVA除了有專門用于傳輸未壓縮的視頻像素數(shù)據(jù)通道和同步的單向視頻通道之外,還同時實現(xiàn)了鏈接雙向混合數(shù)據(jù)通道,可以運載不同類型的數(shù)據(jù),包括但不是限于音頻數(shù)據(jù)、控制數(shù)據(jù)、以太網(wǎng)數(shù)據(jù) 和批量數(shù)據(jù)。
USB(通用串行總線)規(guī)范廣泛被使用,用來建立各種設(shè)備和主機(jī)控制器,如個人電腦,之間的通信,現(xiàn)已有效地再一些先前實施的接口上,如串行和并行接口上。因此,實有需要提出在例如DiiVA的網(wǎng)絡(luò)中可靠傳輸U(kuò)SB數(shù)據(jù)的方法和系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明之目的在提供一種多媒體USB數(shù)據(jù)傳輸透過數(shù)字視頻和音頻(DiiVA)的交互界面方法及系統(tǒng),以在DiiVA的網(wǎng)絡(luò)中可靠傳輸U(kuò)SB數(shù)據(jù)。
依據(jù)本發(fā)明之一特色,本發(fā)明提出一種系統(tǒng),包括一個USB主機(jī)控制器和至少一個USB設(shè)備;一個第一設(shè)備,其通過一個上游USB端口連接到該USB主機(jī)控制器;一個第二設(shè)備,其通過一個下游USB端口連接到該USB設(shè)備;和一個網(wǎng)絡(luò),其配置為根據(jù)USB協(xié)議在第一和第二次設(shè)備間傳輸數(shù)據(jù),并包括一個混合鏈接;其中該混合鏈接被配置為通過在上下游USB端口之間傳送至少一個線路狀態(tài)信息包及至少一個USB數(shù)據(jù)包而遞送遵守USB協(xié)議的內(nèi)容,該線路狀態(tài)信息包包含與一個或多個事件有關(guān)的封包的線路狀態(tài)信息。
依據(jù)本發(fā)明之另一特色,本發(fā)明提出一通過連結(jié)第一個和第二個設(shè)備的網(wǎng)絡(luò)以進(jìn)行USB數(shù)據(jù)通信的方法,包括上游的USB端口和下游USB端口之間,通過在網(wǎng)絡(luò)中的雙向混合鏈接,傳送至少一個LineState信息包,上游USB端口連結(jié)第一個設(shè)備到USB主機(jī)控制器,下游USB端口連結(jié)第二個設(shè)備到一個USB設(shè)備;通過的上游USB端口和下游USB端口之間的雙向混合鏈接傳送至少一個USB數(shù)據(jù)包;執(zhí)行USB枚舉和USB暫停/恢復(fù)操作,使用LineState信息包;其中LineState信息包封包有關(guān)一個或多個事件的信息。
附圖披露了說明性的實施例。這些實施例并不表示所有可能的實例.其他的實施例也可能體現(xiàn)除此以外或其他的可能使用。當(dāng)同一數(shù)字被使用在不同的的圖中時,這數(shù)字是被用來指出相同或類似的組件或步驟。圖I是USB連結(jié)到DiiVA網(wǎng)絡(luò)的示意圖,根據(jù)一目前披露的實施例。
圖2是一個框圖顯示USB數(shù)據(jù)在DiiVA網(wǎng)絡(luò)中通信的系統(tǒng)設(shè)置,根據(jù)目前申請披露的實施例。圖3說明USB的周轉(zhuǎn)期限制,根據(jù)目前申請披露的一個體現(xiàn)實施例圖4A說明了一個在混合鏈接中USB數(shù)據(jù)包的范例,根據(jù)目前申請披露的一個體現(xiàn)實施例。圖4B的列表說明了再圖3中混合鏈接里USB數(shù)據(jù)包的SSINFO信息域區(qū)。圖5以示意圖描述了高速USB總線枚舉的一個范例,根據(jù)目前申請披露的一個體現(xiàn)實施例。圖6說明了在DiiVA USB的控制傳輸范例,根據(jù)目前申請披露的一個體現(xiàn)實施例。。
具體實施例方式 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并參照附圖,對本發(fā)明作進(jìn)一步的詳細(xì)說明。目前申請披露,方法和系統(tǒng)被披露在如DiiVA的網(wǎng)絡(luò)中做USB數(shù)據(jù)和多媒體數(shù)據(jù)的傳輸,也包括一個雙向混合鏈結(jié)以及單向鏈結(jié)。DiiVA是一雙向視頻和音頻的接口,允許雙向傳輸無壓縮的高清視頻,以及多聲道音頻,通過單一電纜以高帶寬的數(shù)據(jù)傳送。尤其是DiiVA應(yīng)用一個雙向混合連結(jié),可攜帶音頻、控制和批量(以太網(wǎng)和USB)數(shù)據(jù),和狀態(tài)信息。DiiVA也包含單向視頻連結(jié),專門攜帶無壓縮視頻畫素數(shù)據(jù)和同步化。在某些實施例中,DiiVA纜線包含四對絞線,其中一對是混合鏈接,其他三對構(gòu)成單向視頻連結(jié)。DiiVA允許用戶從他們的數(shù)字電視或其他DiiVA節(jié)點來連接、設(shè)定和控制多重消費電子裝置(范例包括但不限于DVD播放器、數(shù)字錄象機(jī)、機(jī)頂盒、個人計算機(jī)、攝錄像機(jī)、攝相機(jī)、和家庭視聽系統(tǒng)等等)。有關(guān)USB的完整細(xì)節(jié)可供參考,如"USB 2. O規(guī)范"和"USB 3. O規(guī)范,",可在互聯(lián)網(wǎng)上取得,且在此被完整參考引用。在目前申請披露的實施例中的技術(shù),可在其他系統(tǒng)中被用來傳輸多媒體數(shù)據(jù)和網(wǎng)絡(luò)管理(例如其他非DiiVA系統(tǒng)),包含可在單一纜在線同時做單向和雙向數(shù)據(jù)傳輸。討論說明性的實施例。其他的實施例也可能體現(xiàn)除此以外或其他的可能使用。圖I以示意圖說明一個USB連接到DiiVA網(wǎng)絡(luò)的范例。如圖I所示,目前披露的某些實施例中,一個或多個DiiVA混合鏈結(jié)在DiiVA網(wǎng)絡(luò)110中作為延伸USB連結(jié)。利用目前實施例所述的方法和系統(tǒng),DiiVA的USB可無縫地連接一個USB主機(jī)120到至少一個USB裝置130到DiiVA網(wǎng)絡(luò)110。DiiVA網(wǎng)絡(luò)可總體包含USB裝置130,而功能有如USB裝置130是唯一藉由USB電纜和一個USB上游接口,即一個面對上游的USB接口,連接到USB主機(jī)120,圖2是一示意性的塊狀圖說明了一種系統(tǒng)200設(shè)置在DiiVA網(wǎng)路210進(jìn)行USB數(shù)據(jù)通信,根據(jù)目前披露的一個實施例。該系統(tǒng)200包括USB主機(jī)控制器220 (例如個人電腦)連接到至少一個USB設(shè)備230 (其中的例子包括,但不限制于,網(wǎng)絡(luò)攝像機(jī)或記憶棒)通過USB連接。USB連接需要兩個DiiVA設(shè)備,DiiVA設(shè)備A(參考數(shù)字205所示)和DiiVA設(shè)備B (參考數(shù)字206所示),其中一個連接到USB主機(jī)220,另一個連接到USB設(shè)備230。
在圖2中所示的實施例,USB主機(jī)220連接到DiiVA設(shè)備A(205)中的USB上游端口22,和USB設(shè)備230連接至Ij DiiVA設(shè)備B (206)的USB下游端口 226。一般情況下,DiiVA設(shè)備可以有多個USB上游端口或多個USB下游端口,如圖2所示??偫ǘ?,系統(tǒng)200因此包括第一個DiiVA設(shè)備205通過上游USB端口 225連接到USB主機(jī)控制器220。第二個DiiVA206設(shè)備通過下游USB端口 226,連接到USB設(shè)備230 ;所以DiiVA網(wǎng)絡(luò)連接兩個DiiVA設(shè)備 205 和 206。DiiVA網(wǎng)絡(luò)210包含至少一個雙向DiiVA混合鏈接240,并根據(jù)USB協(xié)議之間在第一次的DiiVA設(shè)備205和第二個DiiVA設(shè)備206通過鏈接傳輸數(shù)據(jù)。DiiVA網(wǎng)絡(luò)210中的組件,包括但不限于混合鏈接240和第一和第二次的DiiVA設(shè)備205、206在內(nèi),都包括硬件(如處理器或控制器)設(shè)置為執(zhí)行本披露中所述的功能。網(wǎng)絡(luò)210是回應(yīng)于USB主機(jī)控制器220,在上游USB端口 225和下游USB端口 226之間,以符合USB協(xié)議內(nèi)容傳輸通過混合鏈接240至少一個鏈接線狀態(tài)信息包和至少一個 USB數(shù)據(jù)包,。第一的205和第二的206DiiVA設(shè)備,每個包含一個USBPHY (物理層)232通過接口 236連接到邏輯模塊234。邏輯模塊234可能是具有雙向連接收發(fā)器,且設(shè)置為執(zhí)行多協(xié)議數(shù)據(jù)的運行和分享。在一些實施例中,該接口 236是UTMI (USB 2. O標(biāo)準(zhǔn)。收發(fā)器宏單元接口)或ULPI (UTMI+Low Pin接口)。在其他的實施例,可能使用除了 UTMI或ULPI以外的接口。一般情況下,USB協(xié)議依賴于行的狀態(tài)信息或與D+D-狀態(tài)和周轉(zhuǎn)時間和電纜長度的限制。而DiiVA網(wǎng)絡(luò),沒有保證交付的時間,所以需要長時間。圖3說明了這種周轉(zhuǎn)時間在USB情形的約束,根據(jù)目前披露的一個實施例。USB協(xié)議定義了最長周轉(zhuǎn)時間限制,如果回應(yīng)仍未在給定的時間完成,它已被視為錯誤。然而,DiiVA協(xié)議本身并不保證混合鏈路傳輸?shù)难舆t時間。為了克服這一限制,USB在DiiVA中的使用USB流量控制協(xié)議里NAK來中斷/批量/控制等的傳輸。USB協(xié)議定義的周轉(zhuǎn)時間和包間延遲的最短和最長時間值。最短的期間內(nèi)可以藉由緩沖控制通過USB數(shù)據(jù)的數(shù)據(jù)包來控制。但因為DiiVA網(wǎng)絡(luò)有本身的網(wǎng)絡(luò)延遲,而且并不能保證包間延遲,不能很容易的滿足最長期限。此問題對周轉(zhuǎn)時間有兩種影響一種是當(dāng)USB主機(jī)等待時,另一種是當(dāng)USB設(shè)備等待時,如圖3所示。目前申請披露中,DiiVA針對USB的特定協(xié)議,可以克服這些限制。范例包括但不限于線狀態(tài)仿真、流量控制機(jī)制和投機(jī)性的ACK/NACK。通過使用這些協(xié)議,任何USB設(shè)備點對點連接到任何USB主機(jī),都可以通過DiiVA網(wǎng)絡(luò)實現(xiàn)。多個點對點連接也可能藉DCL管理下達(dá)成。USB連線狀態(tài)信息僅在USB主機(jī)和USB設(shè)備連接時可以提供。然而,如圖2所示,DiiVA網(wǎng)絡(luò)210和USB主機(jī)220以及230的USB設(shè)備并不直接連接,因此連線狀態(tài)信息不是隨時可用。在DiiVA中,所有的連線狀態(tài)信息和一般USB數(shù)據(jù)包都是以混合鏈接數(shù)據(jù)包的形式傳遞。在目前披露的一些實施例,連線狀態(tài)信息在UTMI (或ULPI)界面260于USB主機(jī)220和USB設(shè)備230,都是藉混合鏈接USB數(shù)據(jù)包由DiiVA網(wǎng)絡(luò)210到另一邊的USB主機(jī)220和USB設(shè)備230的。通過混合鏈接240傳播的封裝的連線狀態(tài)信息包可包含有關(guān)一個或多個事件的連線狀態(tài)信息。圖4A闡釋了這種混合鏈接USB包400,根據(jù)目前披露的一個實施例。數(shù)據(jù)源和目的地的信息,即確切的USB端口,可以由相結(jié)合的CH ID和服務(wù)ID的信息來指定。在混合鏈接USB數(shù)據(jù)包中,除了數(shù)據(jù)源和目的地的信息之外,還可包含多種其它USB相關(guān)信息?;旌湘溄覷SB數(shù)據(jù)包中的SSINFO字段域區(qū)帶有這些信息。圖4B的列表說明信息的連線狀態(tài)有關(guān)的事件,4A圖中所示那些信息存在混合鏈接USB數(shù)據(jù)包中的SSINFO字段域區(qū)。在圖4B列表中顯示,前綴的UU_表示從USB上游面向端口到USB下游面向端口中數(shù)據(jù)包的方向。UD_的前綴前綴表示相反的方向。圖4B中的J狀態(tài)和K狀態(tài)的定義,比照在在USB 2. O規(guī)范中full-speed USB的定義。在位16、27、之間地址和端點的字段域區(qū),指示出通用USB包USB地址和USB端點。
藉由使用連線狀態(tài)信息包,如圖4a和圖4B中所述,如USB枚舉,USB暫停/恢復(fù),等動作,可以通過DiiVA網(wǎng)絡(luò)執(zhí)行流控制。在圖2中所示的系統(tǒng)200中,傳輸?shù)腢SB端口將連線所有狀態(tài)信息打包,并傳輸?shù)浇邮盏腢SB端口交換信息。接收的USB端口設(shè)置UTMI或ULPI接口來模擬傳輸來的USB端口的連線狀態(tài)行為。一些實施例,在上游USB端口 225是傳輸?shù)腢SB端口,下游的USB端口 226是接收的USB端口。在其他的實施例中,上游USB端口 225是接收的USB端口,下游的USB端口226傳輸?shù)腢SB端口。在USB中枚舉是一個確定何種設(shè)備已連接到總線的過程,以及決定需要哪些參數(shù)(如電力消耗,終結(jié)點的數(shù)目等)。因此,在USB設(shè)備首先連接到USB主機(jī)時,將啟動USB設(shè)備枚舉過程。USB主機(jī)將設(shè)備分配一個唯一的地址,并設(shè)置配置,從而可以將數(shù)據(jù)傳輸?shù)娇偩€上的設(shè)備。圖5的示意圖闡釋了方法500在DiiVA網(wǎng)絡(luò)中執(zhí)行高速USB枚舉的例子,根據(jù)目前披露的一個實施例。在這實施例中,高速USB設(shè)備連接到US下游端口 515,如步驟510所示,此步驟即是USB設(shè)備連接。一個UD FS DEVICE READY的數(shù)據(jù)包518發(fā)送到USB上游端口 516。USB主機(jī)連接,如中所示的步驟520,此步驟即USB主機(jī)接入。USB上游端口 516檢測到VBus的聲明。USB上游端口 516發(fā)送UU VBUS DETECT 524到USB下游端口 515,然后USB下游端口 515解除VBus,如圖所示的解除步驟525。USB上游端口 516發(fā)送UU VBUS ENABLE 532到USB下游端口 515,然后USB下游端口 515確定匯流排,步驟522。USB下游端口 515檢測到J狀態(tài),步驟534,并向516的USB上游端口發(fā)送UD J狀態(tài)536。USB上游端口 516從USB主機(jī),步驟540,檢測到USB復(fù)位,并發(fā)送UU USB復(fù)位542。然后USB下游端口 515檢測出K芯片,步驟546,然后發(fā)送UD K狀態(tài)544。USB下游端口 515檢測SEO狀態(tài),并發(fā)送UD SEO狀態(tài)548。在步驟550中,檢測到切換K-J Chirps,并將UU K狀態(tài)552和UU J狀態(tài)554發(fā)送到USB下游端口 515。最后在步驟560,從USB主機(jī)檢測到S0F,這時高速枚舉就已完成。在目前披露的其他實施例,USB全速枚舉和/或USB低速枚舉可能被執(zhí)行。這些實施例形式,在執(zhí)行全速枚舉可能包括將全速USB設(shè)備連接到下游USB端口,并將一個FS Device Ready的事件數(shù)據(jù)包發(fā)送到上游USB端口 ;
附加USB主機(jī)控制器,當(dāng)匯流排確定時,上游USB端口發(fā)送匯流排檢測的事件數(shù)據(jù)包到下游的USB端口,和由下游USB端口解除匯流排的肯定。
上游的USB端口將Bus EnabIe事件數(shù)據(jù)包發(fā)送到下游USB端口,和由下游USB端口送肯定到匯流排;
下游的USB端口檢測到J狀態(tài),并發(fā)送J狀態(tài)事件的數(shù) 據(jù)包;
上游USB端口檢測到從USB主機(jī)控制器發(fā)出的USB重置復(fù)位,并發(fā)送USB重置事件數(shù)據(jù)包;和
在上游USB端口中檢測到J狀態(tài),并將J狀態(tài)事件的數(shù)據(jù)包發(fā)送到下游USB端口 ;和探測到從USB主機(jī)發(fā)出的SOF,于是便完成全速度枚舉??赡茉谄渌膶嵤├?,可能執(zhí)行低速枚舉。這些實施例形式,在執(zhí)行低速枚舉可能發(fā)生的包括
在下游USB端口連接了低速USB設(shè)備,并將LS Device Ready的事件數(shù)據(jù)包發(fā)送到上游USB端口 ;
附加了 USB主機(jī)控制器,并有VBus的肯定,上游USB端口發(fā)送VBus detect事件數(shù)據(jù)包到下游USB端口,而由下游USB端口解除VBus的肯定;
上游USB端口將VBus Enable事件數(shù)據(jù)包發(fā)送到下游USB端口,由下游USB端口送出Vbus的肯定;
下游USB端口檢測K的狀態(tài),并發(fā)送K狀態(tài)事件的數(shù)據(jù)包;
上游USB端口檢測到USB主機(jī)控制器發(fā)出的USB重置復(fù)位,并發(fā)送USB Reset的事件數(shù)據(jù)包;
上游USB端口檢測K的狀態(tài),并將K狀態(tài)事件數(shù)據(jù)包發(fā)送到下游USB端口;和 從USB主機(jī)檢測到SOF的數(shù)據(jù)包,于是低速枚舉完成??赡茉谝恍嵤├校赡軋?zhí)行一個USB暫停和恢復(fù)的操作。在這些實施例形式中,可以執(zhí)行下列行為
檢測3ms的閑置狀態(tài),并生成3ms閑置事件數(shù)據(jù)包和送到下游端口 ;如果之前的速度是高速USB,上游端口以USB的規(guī)格和UTMI的規(guī)格,來檢查3ms空閑是否是暫停狀態(tài)或是USB重置復(fù)位;和
如果上游USB端口檢測到K狀態(tài),上游USB端口生成的K狀態(tài)的事件包和去恢復(fù)狀態(tài)。在IN的網(wǎng)路交換時,USB主機(jī)預(yù)計如果IN在最長的周轉(zhuǎn)時間之內(nèi)發(fā)生,則可以收到數(shù)據(jù)包或握手(handshake)。在OUT的網(wǎng)路交換時,在OUT/SETUP和數(shù)據(jù)送出之后,需要有相同的握手限制。要解決這一問題,在USB主機(jī)端,DiiVA設(shè)備的USB上游面向的端口使用NAK和流量控制的機(jī)制,圖6中所示。這是目前披露的一個實施例。在安裝階段610,USB上游端口 625收到SETUP,并送出SETUP的USB數(shù)據(jù)包到USB端口下游626。下游USB端口 626緩沖此SETUP —直到在下游USB端口有下一個數(shù)據(jù)可用。與此同時,上游USB端口 625發(fā)送投機(jī)性的ACK,即使從USB設(shè)備并沒有可用的ACK。當(dāng)數(shù)據(jù)到達(dá)下游USB端口 626時,下游USB端口 626開始送出SETUP和數(shù)據(jù),并收到ACK。在數(shù)據(jù)/狀態(tài)階段610中,IN和OUT的發(fā)生如下所示上游USB端口 625接收到IN,并傳遞到下游USB端口 626。下游USB端口 626發(fā)出IN,并從USB設(shè)備獲得的回應(yīng)。與此同時,上游USB端口 625中首先發(fā)送對應(yīng)IN的NAK或者OUT/數(shù)據(jù),直到從USB設(shè)備得到數(shù)據(jù)或是握手。在USB設(shè)備方面,如果USB設(shè)備發(fā)送出IN的NAK或是OUT/數(shù)據(jù)及NAK到達(dá)USB上游端口 625,USB上游端口 625則取消阻止下一步的未來IN或OUT/數(shù)據(jù),并提供了對下游USB端口 626再次發(fā)送IN或OUT/數(shù)據(jù)到USB設(shè)備,與NAK握手到USB主機(jī)。如果USB設(shè)備對應(yīng)IN發(fā)送的數(shù)據(jù)或?qū)?yīng)0UT/DATA送出ACK,并數(shù)據(jù)或ACK到達(dá)USB上游端口 625,USB下游端口 626對應(yīng)于IN的網(wǎng)路交換的ACK回應(yīng),并送出此IN的數(shù)據(jù)或是OUT的ACK到USB的上游端口 625。USB上游端口 625發(fā)送的數(shù)據(jù)的下一個可用的IN或ACK下一個可用的OUT/數(shù)據(jù)。USB上游端口 625始終回應(yīng)ACK對應(yīng)于SETUP網(wǎng)路交換,因為依據(jù)USB規(guī)范,當(dāng)它接收到SETUP或數(shù)據(jù)時,必須以ACK回應(yīng)。USB下游端口 626直到下一個未來數(shù)據(jù)在USB的下游端口 626可用之前會緩沖OUT 或SETUP,以保證OUT/SETUP及數(shù)據(jù)的包間的延遲。USB支持許多不同類型的數(shù)據(jù)傳輸同步、中斷、批量和控制轉(zhuǎn)移。同步傳輸發(fā)生一些保證的數(shù)據(jù)速率,但可能會丟失數(shù)據(jù)的情形,例如,即時的音頻或視頻。中斷傳輸用于設(shè)備需要保證快速反應(yīng)(有限定的最長等待時間),例如鼠標(biāo)、鍵盤等。批量傳輸是用于大型的零星傳輸,使用所有剩余的可用帶寬,但沒有保障的帶寬或延遲,例如文件傳輸?shù)取?刂妻D(zhuǎn)移通常用于送短、簡單的命令到設(shè)備上和狀態(tài)的回應(yīng),使用例子如,通過第O個總線控制管道。除了通過發(fā)送NAK的使用流量控制機(jī)制在IN或OUT/數(shù)據(jù),同步傳輸使用零數(shù)據(jù)和管道在IN網(wǎng)路交換形勢下。對于第一次多個同步傳輸?shù)腎N下,上游USB端口以零數(shù)據(jù)回應(yīng),是符合USB的規(guī)范。這第一次IN被傳遞到下游USB端口,并從同步的USB設(shè)備中獲取數(shù)據(jù)。這第一個數(shù)據(jù)當(dāng)它到達(dá)USB上游模塊時,也用于回復(fù)下一個同步IN,。在這種方式下,USB主機(jī)從USB設(shè)備接收到的延遲和流水線的同步數(shù)據(jù)。如果USB主機(jī)停止發(fā)送同步IN,最后一個剩余的數(shù)據(jù)數(shù)據(jù)包將被拋棄。一個同步OUT的網(wǎng)路交換,將被在沒有NAK的傳遞到下游USB端口。為了保持之間的包間延遲OUT和數(shù)據(jù),在下游USB端口數(shù)據(jù)可用之前,應(yīng)保持緩沖OUT。為了作出適當(dāng)回應(yīng)對于無NAK反應(yīng)的同步IN,同步上游USB端口應(yīng)知道哪些USB地址和USB端點用于同步傳輸。若要獲取此信息,DiiVA USB應(yīng)該要有能力從USB設(shè)備描述符中進(jìn)行解碼。解碼描述符可以通過分析混合鏈接USB數(shù)據(jù)包,或者下游USB端口可能有USB主機(jī)能力執(zhí)行枚舉和在上游USB端口連接到下游USB端口之前,就讀出從USB設(shè)備的描述符。解碼方法的描述符是與實現(xiàn)方法相關(guān),也有其他可能的實現(xiàn)方法。依據(jù)USB規(guī)格、高帶寬同步IN的終結(jié)點必須根據(jù)數(shù)據(jù)大小支持PID的數(shù)據(jù)序列。因為從同步USB設(shè)備的數(shù)據(jù)大小各異,每個微幀中的Ins數(shù)目每一幀中是不同在。因此,只需從上游USB端口到下游USB端口提供同步IN的機(jī)制,并不能滿足USB規(guī)格。DiiVA USB支持高帶寬同步IN在終結(jié)點是按下面的方法每個微幀中只傳送第一次的同步IN。當(dāng)下游USB端口接收的同步數(shù)據(jù)本身根據(jù)數(shù)據(jù)的PID來決定多少IN需要發(fā)送。如果第一個數(shù)據(jù)PID是DATAO,則下游USB端口應(yīng)該像上面流水線同步傳輸?shù)姆桨?。如果第一個數(shù)據(jù)PID是DATA2,則下游USB端口在微型幀中生成兩個相同的IN。如果第一個數(shù)據(jù)PID是DATA1,相對的下游USB端口將生成一個相同IN.上游USB端口應(yīng)該有足夠的緩沖,來儲存每個框架高帶寬同步終結(jié)點中的最大數(shù)據(jù)的大小。一些實施例中,提供USB數(shù)據(jù)通過帶有同步IN符記于混合鏈接的方法可包括下列數(shù)據(jù)的數(shù)據(jù)包使用零數(shù)據(jù)和流水線IN的數(shù)據(jù),其中的可能狀態(tài)的數(shù)目取決于連接的延遲;第一,或第一次多種,同步的IN數(shù)據(jù)包,一個上游端口反應(yīng)一個或多個零數(shù)據(jù)包;當(dāng)送出比如說第一,或第一次多個,同步IN數(shù)據(jù)包,發(fā)送給下游的端口,并從同步的USB設(shè)備里接受DATAO或DATAl或DATA2的數(shù)據(jù)包;
流水線這些數(shù)據(jù)包來回復(fù)同步IN的數(shù)據(jù)包;
如果USB主機(jī)停止發(fā)送同步IN數(shù)據(jù)包,則刪除最后剩余的數(shù)據(jù);和 上游USB端口,由從數(shù)據(jù)包的數(shù)據(jù)流的監(jiān)控和解碼USB描述符,找出哪些終結(jié)點和地址是用于同步的終結(jié)點,。一些實施例中,提供USB數(shù)據(jù)通過帶有同步OUT符記的混合鏈接的方法可包括 向下游端口發(fā)送同步OUT網(wǎng)路交換,其中的上游端口的發(fā)送不根據(jù)USB協(xié)議;
下游USB端口緩沖OUT數(shù)據(jù),直到有可用的DATAO,DATAl,DATA2或MDATA數(shù)據(jù)包;當(dāng)有可用的DATAO,DATAl,DATA2或MDATA數(shù)據(jù)包時,發(fā)送OUT數(shù)據(jù)包和DATA0,DATA1,DATA2或MDATA數(shù)據(jù)包到USB設(shè)備;和
上游USB端口,從數(shù)據(jù)包的數(shù)據(jù)流的監(jiān)控和解碼USB描述符中,找出哪些終結(jié)點和地址是用于同步終結(jié)點。目前披露,異步傳輸?shù)腢SB數(shù)據(jù)也可以在執(zhí)行使用DiiVA具體協(xié)議。在一些實施例中,USB數(shù)據(jù)可能由異步IN符記傳遞,通過執(zhí)行下列行為
上游USB端口接收IN數(shù)據(jù)包,并輸送到下游USB端口 ;
下游USB端口發(fā)送IN數(shù)據(jù)包和從USB設(shè)備接收到數(shù)據(jù)包或握手的數(shù)據(jù)包;
上游USB端口發(fā)送NAK數(shù)據(jù)包,并阻止傳輸下一個IN數(shù)據(jù)包和NAK數(shù)據(jù)包,直到收到從USB設(shè)備傳來的有效反應(yīng);
如果USB設(shè)備為IN數(shù)據(jù)包來發(fā)送NAK數(shù)據(jù)包,且從下游的上游USB端口 USB端口,上游USB端口解除封鎖下一個IN數(shù)據(jù)包,并將再次輸送到下游的端口到USB設(shè)備;
如果USB設(shè)備發(fā)送DATAO或DATAl數(shù)據(jù)包,或者是DATAl的數(shù)據(jù)包送達(dá)上游USB端口,下游端口將送一個ACK數(shù)據(jù)包來應(yīng)對,并向上游端口送出DATAO或DATAl數(shù)據(jù)包。和上游端口為了下一個IN數(shù)據(jù)包而發(fā)送DATAO或DATAl數(shù)據(jù)包,。在一些實施例中,USB數(shù)據(jù)可能交付與異步OUT符記傳遞,通過執(zhí)行下列行為 上游USB端口接收OUT數(shù)據(jù)包和一個DATAO或一個DATAl數(shù)據(jù)包,并將其輸送到下游
USB 端口 ;
下游USB端口緩沖OUT數(shù)據(jù)包,直到有可用的DATAO或DATAl數(shù)據(jù)包,并在有可用DATAO或DATAl數(shù)據(jù)包時,發(fā)送OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到USB設(shè)備;
上游USB端口為OUT網(wǎng)路交換發(fā)送出NAK數(shù)據(jù)包,并不送出下一個OUT和DATAO或DATAl數(shù)據(jù)包,直到下游USB端口是可用的;
如果USB設(shè)備以O(shè)UT網(wǎng)路交換發(fā)送一個NAK數(shù)據(jù)包,以及下游USB端口將NAK數(shù)據(jù)包發(fā)送到上游USB端口 ;則上游USB端口向下游港口送出下一個傳入OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包。
如果USB設(shè)備發(fā)送ACK數(shù)據(jù)包,上游端口會發(fā)送ACK,為了下一個OUT網(wǎng)路交換。目前披露中,USB數(shù)據(jù)傳輸可能會使用執(zhí)行PING數(shù)據(jù)包。在一些實施例中,PING協(xié)議實現(xiàn)時USB主機(jī)獲取OUT網(wǎng)路交換的NAK。在這些實施例形式,上游USB端口以NAK回應(yīng),但并不提供PING數(shù)據(jù)包到下游USB端口。上游USB端口阻斷PING,并不斷發(fā)送NAK直到從USB設(shè)備得到OUT網(wǎng)路交換的可用反應(yīng)。如果USB設(shè)備為OUT網(wǎng)路交換而發(fā)送出NAK數(shù)據(jù)包,USB上游端口的下一步對ping反應(yīng)的ACK,也為下一步OUT網(wǎng)路交換反應(yīng)送出ACK。這最后的OUT網(wǎng)路交換不會傳遞到下游USB端口,因為USB設(shè)備已經(jīng)接受了第一個OUT網(wǎng)路交換。如果USB設(shè)備反應(yīng)NAK于OUT網(wǎng)路交換,上游USB端口提供下一個PING到USB下 游的端口。如果USB設(shè)備為PING反應(yīng)ACK,且PING到達(dá)了 USB上游模塊。USB上游模塊進(jìn)行下一步的PING響應(yīng)的ACK,并反應(yīng)的ACK為下一步的OUT網(wǎng)路交換。這最后的OUT網(wǎng)路交換會被傳遞到該USB設(shè)備,且預(yù)計將得到ACK的反應(yīng)如果USB設(shè)備為了 PING而反應(yīng)送出NAK,且PING到達(dá)上游USB端口,則上游USB端口為下一步PING反應(yīng)NA,并且PING再次傳遞到該USB設(shè)備。上述步驟將重復(fù)直到USB設(shè)備進(jìn)行PING反應(yīng)的ACK。該方案遵循上述步驟當(dāng)USB設(shè)備反應(yīng)ACK??偫ǘ?,提供通過使用USB PING數(shù)據(jù)包的混合鏈接傳遞數(shù)據(jù)的一種方法可包括
上游USB端口反應(yīng)NAK數(shù)據(jù)包給OUT網(wǎng)路交換;
上游USB端口,應(yīng)對NAK的數(shù)據(jù)包,并送出PING數(shù)據(jù)包到下游USB端口 ;
上游USB端口,不提供PING數(shù)據(jù)包,并繼續(xù)發(fā)送NAK數(shù)據(jù)包,直到從USB設(shè)備有可用的反應(yīng);
如果USB設(shè)備為OUT網(wǎng)路交換而反應(yīng)NAK數(shù)據(jù)包,上游USB端口,為下一步傳入PING數(shù)據(jù)包的ACK數(shù)據(jù)包來應(yīng)對,并出下一個ACK來應(yīng)對下一個OUT網(wǎng)路交換;
其中最后的OUT網(wǎng)路交換不傳遞到下游USB端口 ;
如果USB設(shè)備為OUT網(wǎng)路交換而反應(yīng)NAK數(shù)據(jù)包,和NAK數(shù)據(jù)包傳遞到上游USB端口,則上游USB端口提供下一個PING數(shù)據(jù)包到下游USB端口 ;
如果USB設(shè)備反應(yīng)PING數(shù)據(jù)包以NAK數(shù)據(jù)包和NAK數(shù)據(jù)包被傳遞給上游USB端口,則上游USB端口提供下一個PING數(shù)據(jù)包到下游USB端口 ;
如果USB設(shè)備反應(yīng)PING數(shù)據(jù)包的ACK數(shù)據(jù)包,和ACK數(shù)據(jù)包被傳遞給上游USB端口,則上游USB端口提供下一個PING數(shù)據(jù)包到下游USB端口 ;
下一個OUT網(wǎng)路交換將以ACK數(shù)據(jù)包反應(yīng);和
傳遞這些OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到下游USB端口,以發(fā)送到USB設(shè)備。在其他的實施例中,PING用于沒有前面的OUT網(wǎng)路交換。在這些實施例形式,上游USB端口對NAK反應(yīng),并提供PING到USB下游的端口。上游USB端口并不傳遞PING,只保持發(fā)送NAK,直到得到USB設(shè)備可用的反應(yīng)。如果USB設(shè)備進(jìn)行PING反應(yīng)的ACK,上游USB端口進(jìn)行下一步的PING反應(yīng)的ACK,也為下一步的OUT網(wǎng)路交換反應(yīng)的ACK。在這種情況下,這最后OUT網(wǎng)路交換被傳遞到USB下游端口與第一種方案不同的,是因為尚未有OUT網(wǎng)路交換被傳遞到該USB設(shè)備。如果USB設(shè)備反應(yīng)NAK的PING,且PING到達(dá)上游USB端口,則上游USB端口進(jìn)行下一步的PING反應(yīng)以NAK,并傳遞PING到USB下游的端口。重復(fù)此步驟,直到下游USB端口從USB設(shè)備中獲取ACK。然后遵循上文所述的USB設(shè)備ACK反應(yīng)的行為。時USB設(shè)備為OUT網(wǎng)路交換反應(yīng)NYET,DiiVA USB模塊把NYET當(dāng)作為ACK,而上游USB端口始終發(fā)送ACK而不是NYET。總括而言,提供通過使用USB PING數(shù)據(jù)包的混合鏈接傳遞數(shù)據(jù)的一種方法可包括
上游USB端口來應(yīng)對NAK數(shù)據(jù)包,并將PING數(shù)據(jù)包輸送到下游USB端口 ;
上游USB端口,不提供PING數(shù)據(jù)包傳遞,并繼續(xù)發(fā)送NAK數(shù)據(jù)包,直到從USB設(shè)備有可 用的反應(yīng);
如果USB設(shè)備反應(yīng)PING數(shù)據(jù)包的ACK數(shù)據(jù)包,且ACK數(shù)據(jù)包被傳遞給上游USB端口、上游USB端口未來應(yīng)對下一步的PING數(shù)據(jù)包的ACK數(shù)據(jù)包以ACK,也應(yīng)對下一步的OUT網(wǎng)路交換以ACK ;和
傳遞OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到下游端口 ;
凡有上游USB端口在收到PING數(shù)據(jù)包之前不會有OUT網(wǎng)路交換。在一些實施例中,DiiVA網(wǎng)絡(luò)中的USB地址管理可如下所示來執(zhí)行。上游USB端口可以連接到任何樞紐下游端口,并帶有各種USB地址的數(shù)據(jù)包可播送出到上游USB端口。上游USB端口應(yīng)能夠識別哪些USB地址是指派給上游USB端口,它應(yīng)該不回應(yīng)給任何其他USB設(shè)備的通用USB數(shù)據(jù)包。上游USB端口檢測到USB重置后時,上游USB端口只接受有USB地址為O的通用USB數(shù)據(jù)包。通過監(jiān)視和解碼SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求,上游USB端口識別哪些USB地址是指派給下游USB端口中的USB設(shè)備。檢測SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求后,上游USB端口只回應(yīng)的新分配USB地址的通用USB數(shù)據(jù)包。如果在上游USB端口中檢測到USB重置,它將分配的USB地址重置為0,并等待SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備再次請求。解碼SET ADDRESS設(shè)備請求是特定的實現(xiàn)。總言,DiiVA網(wǎng)絡(luò)中的USB地址管理方法可包括
上游的USB端口檢測到USB重置后,上游USB端口只接受有USB地址為O的數(shù)據(jù)包。上游端口識別到哪些USB地址分配給下游的端口的USB設(shè)備的,藉由監(jiān)測和解碼SETADDRESS標(biāo)準(zhǔn)USB設(shè)備請求;檢測SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求后,上游端口僅應(yīng)對有新USB地址的數(shù)據(jù)包,配有SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求;
USB重置重分配的USB地址置為0,并再次等待SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求。在一些實施例中,DiiVA網(wǎng)絡(luò)中,保持活躍轉(zhuǎn)發(fā)可如下所示執(zhí)行。當(dāng)枚舉狀態(tài)是LS ENUM DONE時,上游USB端口啟動監(jiān)視線路狀態(tài)。當(dāng)?shù)谝淮吻袚Q線路狀態(tài)被檢測時,它被視為作為第一個保持活躍信號。上游USB端口設(shè)置內(nèi)部計時器為T保持活躍狀態(tài),當(dāng)逾期時,它開始再次監(jiān)視線路狀態(tài)切換來檢測保持活躍狀態(tài)。在一些實施例,T保持活躍設(shè)置為O. 98ms。保持活躍信號通過UU保持活躍傳送到USB下游模塊??偫ǘ裕珼iiVA網(wǎng)絡(luò)中執(zhí)行USB低速保持活躍信號的方法可包括低速USB枚舉完成后,上游USB端口開始監(jiān)控線路狀態(tài);
當(dāng)?shù)谝淮胃木€路狀態(tài)被檢測到時,則認(rèn)為這是第一次保持活躍狀態(tài)信號;
上游USB端口設(shè)置內(nèi)部計時器為T保持活躍,逾期時,上游USB端口監(jiān)測線路狀態(tài)是否再次切換,以檢測保持活躍和傳送保持活躍事件數(shù)具包到下游USB端口。目前披露,方法和系統(tǒng)被描述有關(guān)DiiVA、USB和多媒體數(shù)據(jù)的傳送和DiiVA的網(wǎng)絡(luò)化管理。組件、步驟、特征、對象、好處和已經(jīng)討論過的優(yōu)點是只是說明性的。沒有人,也對他們來說,有關(guān)的討論旨在限制以任何方式保護(hù)的范圍。雖然某些實施例已被描述的系統(tǒng)和方法DiiVA USB數(shù)據(jù)傳輸有關(guān),是應(yīng)該理解以及其他實施例可用于在這些實施例中隱式的概念。此外考慮了其他無數(shù)的實施例,包括實施例有更少的、額外的和/或不同的組件,步驟、特征、對象、優(yōu)點和優(yōu)勢。組件和步驟還可能安排并以不同的方式訂購。已聲明或說明的什么也不被為了對公眾造成的任何組件、步驟、特征、對象、效益、優(yōu)勢或相當(dāng)于一種奉獻(xiàn)。
目前申請披露中,有關(guān)通過DiiVA傳輸U(kuò)SB和多媒體數(shù)據(jù),和DiiVA網(wǎng)絡(luò)管理相關(guān)所敘述的方法和系統(tǒng)。所敘述之組件、步驟、特征、對象、優(yōu)點和優(yōu)勢主要是說明性質(zhì)的。他們或相關(guān)的的描述,都不是意圖要用任何方法來限制所保護(hù)的范圍。然而某些實施例敘述有關(guān)通過DiiVA做USB數(shù)據(jù)傳輸之系統(tǒng)和方法,應(yīng)該理解為這些實施例中隱含的概念,同樣可使用于及其他的實施例。此外考慮了其他許多的可能實施例,包括實施例中有更少、額外的和/或不同的組件、步驟、特征、對象、優(yōu)點和優(yōu)勢。組件和步驟還可能安排并以不同的方式排列。所有已聲明或說明的,意圖不在于被造成在公眾領(lǐng)域減低了任何組件、步驟、特征、對象、效益、優(yōu)勢等等。目前申請披露中,當(dāng)引用單數(shù)的元素時,它并不意味著"有一個,并且只有唯一",除非特別注明,而應(yīng)理會成"一個或更多“。對此申請披露,所有的結(jié)構(gòu)和功能上等同于整個此披露的已知,或描述了各種實施例的元素,或后來被稱為普通技能在藝術(shù),都明確納入本參考中
以上所述的具體實施例,對本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,應(yīng)理解的是,以上所述僅為本發(fā)明的具體實施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種系統(tǒng),包括 一個USB主機(jī)控制器和至少一個USB設(shè)備; 一個第一設(shè)備,其通過一個上游USB端口連接到該USB主機(jī)控制器; 一個第二設(shè)備,其通過一個下游USB端口連接到該USB設(shè)備;和 一個網(wǎng)絡(luò),其配置為根據(jù)USB協(xié)議在第一和第二次設(shè)備間傳輸數(shù)據(jù),并包括一個混合鏈接; 其中該混合鏈接被配置為通過在上下游USB端口之間傳送至少一個線路狀態(tài)信息包及至少一個USB數(shù)據(jù)包而遞送遵守USB協(xié)議的內(nèi)容,該線路狀態(tài)信息包包含與一個或多個事件有關(guān)的封包的線路狀態(tài)信息。
2.如權(quán)利要求I所述的系統(tǒng), 其中混合鏈接被配置為執(zhí)行一個USB枚舉協(xié)議和USB暫停/恢復(fù)協(xié)議,通過網(wǎng)絡(luò)根據(jù)線狀態(tài)信息包,USB枚舉協(xié)議組成的包含以下其一一高速枚舉協(xié)議;一全速枚舉議議;和一低速枚舉議議;
3.如權(quán)利要求I所述的系統(tǒng),其中至少第一個設(shè)備與第二個設(shè)備其一是DiiVA設(shè)備;和 其網(wǎng)絡(luò)是一個DiiVA網(wǎng)絡(luò),和混合鏈接是DiiVA雙向鏈接,被配置為雙向多協(xié)議通過傳輸數(shù)據(jù),但并無保證數(shù)據(jù)傳輸?shù)臅r間。
4.如權(quán)利要求I所述的系統(tǒng),其中事件包括至少其一一個LineChange事件,一個USB重置事件,一個3ms空閑事件,一個VBus檢測事件、一個VBus啟用事件、一個USB主機(jī)未準(zhǔn)備就緒事件、一個保持活躍事件、一個FS設(shè)備準(zhǔn)備就緒事件、一個LS設(shè)備準(zhǔn)備就緒事件和設(shè)備斷接事件;和 其中的LineChange事件包括至少其一 SEO (單端零)事件、J狀態(tài)事件和K狀態(tài)事件。
5.如權(quán)利要求I所述的系統(tǒng),其中第一個和第二個設(shè)備,每個包括USB物理層通過接口連接到邏輯模塊;和 其中第一和第二次設(shè)備進(jìn)一步包括一個收發(fā)器具有雙向連接和配置為執(zhí)行并共享多協(xié)議數(shù)據(jù)。
6.如權(quán)利要求5所述的系統(tǒng),其中接口包括一個UTMI(USB 2. O標(biāo)準(zhǔn)收發(fā)器宏單元接口 )和ULPI (UTMI+低針數(shù)接口 )。
7.如權(quán)利要求I所述的系統(tǒng),其中上游USB端口和下游USB端口分別是其一 傳輸?shù)腢SB端口,配置為封包和傳輸所有線路狀態(tài)信息;和 接收的USB端口,配置來設(shè)置界面,以模擬傳輸U(kuò)SB端口的LineState行為。
8.如權(quán)利要求I所述的系統(tǒng),其中第一個和第二個設(shè)備中至少一個包括多重USB端口。
9.如權(quán)利要求I所述的系統(tǒng),其中USB主機(jī)控制器進(jìn)一步配置為通過網(wǎng)絡(luò)執(zhí)行至少其一 =USB頻流控制協(xié)議;USB PING協(xié)議;USB地址管理;和USB低轉(zhuǎn)速Ke印-Alive信號。
10.如權(quán)利要求I所述的系統(tǒng),其中網(wǎng)絡(luò)包括一條纜線同時具有單向和雙向鏈接。
11.一通過連結(jié)第一個和第二個設(shè)備的網(wǎng)絡(luò)以進(jìn)行USB數(shù)據(jù)通信的方法,包括 上游的USB端口和下游USB端口之間,通過在網(wǎng)絡(luò)中的雙向混合鏈接,傳送至少一個LineState信息包,上游USB端口連結(jié)第一個設(shè)備到USB主機(jī)控制器,下游USB端口連結(jié)第二個設(shè)備到一個USB設(shè)備;通過的上游USB端口和下游USB端口之間的雙向混合鏈接傳送至少一個USB數(shù)據(jù)包;執(zhí)行USB枚舉和USB暫停/恢復(fù)操作,使用LineState信息包; 其中LineState信息包封包有關(guān)一個或多個事件的信息。
12.如權(quán)利要求11所述的的方法,其中一個或多個事件包括至少其一 LineChange事件,USB重置事件,3ms空閑事件,VBus檢測事件、VBus啟用事件、USB主機(jī)未就緒事件、保持活躍事件、FS設(shè)備準(zhǔn)備就緒事件、LS設(shè)備準(zhǔn)備就緒事件和設(shè)備斷接事件;和 其中LineChange事件包括至少其一一個SEO (單端零)事件、J狀態(tài)事件和K狀態(tài)事件。
13.如權(quán)利要求11所述的的方法,其中網(wǎng)絡(luò)是DiiVA網(wǎng)絡(luò),和雙向混合鏈接被配置以傳輸雙向多協(xié)議數(shù)據(jù),但并無保證數(shù)據(jù)傳輸?shù)臅r間。
14.如權(quán)利要求11所述的的方法,其中USB枚舉包括高速枚舉;而執(zhí)行高速枚舉的行為包括 在一個高速USB設(shè)備附加到下游USB端口之后,將FS設(shè)備準(zhǔn)備就續(xù)事件包發(fā)送到上游USB 端口 ; 附加USB主機(jī)控制器,和當(dāng)VBus確立,上游USB端口發(fā)送VBus檢測事件數(shù)據(jù)包到下游USB端口且在下游USB端口解除確立VBus ; 上游USB端口傳送VBus啟用事件包到下游USB端口;下游USB端口確立VBus ; 下游USB端口檢測J狀態(tài),并發(fā)送J狀態(tài)事件包; 上游USB端口從USB主機(jī)控制器檢測USB重置事件和發(fā)送USB重置事件包; 在上游USB端口中檢測J狀態(tài),并將J狀態(tài)事件包發(fā)送到下游USB端口 ; 在上游USB端口中檢測K Chirp,并將K狀態(tài)事件據(jù)包發(fā)送到下游USB端口 ; 在上游的USB端口中檢測SEO狀態(tài),并將SEO狀態(tài)事件包發(fā)送到下游的USB端口 ; 在下游的USB端口中檢測切換K-J Chirp并將K狀態(tài)事件包和J狀態(tài)事件包發(fā)送到上游USB端口 ;和 從USB主機(jī)檢測SOF數(shù)據(jù)包,完成高速枚舉。
15.如權(quán)利要求11所述的的方法,其中USB枚舉包括全速枚舉;執(zhí)行全速枚舉的行為包括 將全速USB設(shè)備連接到下游USB端口,并將一個FS設(shè)備準(zhǔn)備就續(xù)事件包發(fā)送到上游USB 端口 ; 附加USB主機(jī)控制器,當(dāng)VBus確立,上游USB端口發(fā)送VBus檢測事件包到下游USB端口和在下游的USB端口解除確立VBus ; 上游USB端口將VBus啟用事件包發(fā)送到下游USB端口,下游USB端口確立Vbus ; 下游USB端口檢測J狀態(tài),并發(fā)送J狀態(tài)事件包; 上游USB端口,從USB主機(jī)控制器檢測USB重置和發(fā)送USB重置事件包; 在上游USB端口中檢測J狀態(tài),并將J狀態(tài)事件包發(fā)送到下游USB端口;和 從USB主機(jī)檢測SOF數(shù)據(jù)包,完成全速度枚舉。
16.如權(quán)利要求11所述的的方法,其中USB枚舉包括低轉(zhuǎn)速枚舉,其中執(zhí)行低轉(zhuǎn)速枚舉的行為包括下游USB端口連接了低速USB設(shè)備,并將LS設(shè)備準(zhǔn)備就續(xù)事件包發(fā)送到上游USB端Π ; 附加USB主機(jī)控制器,當(dāng)VBus確立,上游USB端口發(fā)送VBus檢測事件包到下游USB端口和在下游USB端口解除確立VBus ; 上游USB端口將VBus啟用事件數(shù)據(jù)包發(fā)送到下游USB端口,并確立Vbus ; 下游USB端口檢測K狀態(tài),并發(fā)送K狀態(tài)事件包; 上游USB端口,從USB主機(jī)控制器檢測USB重置和發(fā)送USB重置事件包; 上游USB端口檢測K狀態(tài),并將K狀態(tài)事件數(shù)據(jù)包發(fā)送到下游USB端口 ;和 從USB主機(jī)檢測SOF數(shù)據(jù)包,完成低轉(zhuǎn)速枚舉。
17.如權(quán)利要求11所述的的方法,其進(jìn)一步包含執(zhí)行暫停和恢復(fù);其中執(zhí)行暫停和恢復(fù)的行為包括 檢測3ms空閑狀態(tài),并生成3ms空閑事件包和將其傳送到下游端口 ; 如果先前的速度是高速USB,上游端口根據(jù)USB規(guī)格和UTMI規(guī)格檢查3ms空閑是否暫停狀態(tài)或USB重置;和 如果上游USB端口檢測K狀態(tài),上游USB端口生成K狀態(tài)事件包和做恢復(fù)狀態(tài)。
18.如權(quán)利要求11所述的的方法,其進(jìn)一步組成傳送USB數(shù)據(jù)的行為通過混合數(shù)據(jù)鏈路的非等時性的IN令牌,行為包括 上游USB端口接收IN數(shù)據(jù)包,并將其輸送到下游USB端口 ; 下游USB端口發(fā)送IN數(shù)據(jù)包,和從USB設(shè)備接收一數(shù)據(jù)包或握手?jǐn)?shù)據(jù)包; 上游USB端口發(fā)送NAK數(shù)據(jù)包和用NAK數(shù)據(jù)包阻止下一個進(jìn)入的IN據(jù)包,直到USB設(shè)備回應(yīng)有空; 如果USB設(shè)備發(fā)送NAK數(shù)據(jù)包給IN數(shù)據(jù)包,NAK數(shù)據(jù)包從下游USB端口到達(dá)上游USB端口,上游USB端口疏通下一個傳入的IN數(shù)據(jù)包,并將輸送到下游端口將數(shù)據(jù)包再發(fā)送到USB設(shè)備 如果USB設(shè)備發(fā)送DATAO或DATAl數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到達(dá)在上游USB端口,下游USB端口回應(yīng)ACK數(shù)據(jù)包和傳送DATAO或DATAl數(shù)據(jù)包到上游端口 ;和上游端口發(fā)送DATAO或DATAl數(shù)據(jù)包給下一個可用IN數(shù)據(jù)包。
19.如權(quán)利要求11所述的的方法,其進(jìn)一步組成行為傳送USB數(shù)據(jù)與非等時性的OUT令牌,行為包括 上游USB端口接收一個OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包其一,并將輸送到下游USB端口 ; 下游USB端口緩沖OUT數(shù)據(jù)包,直到DATAO或DATAl數(shù)據(jù)包是可用的,當(dāng)DATAO或DATAl的數(shù)據(jù)包可用時,發(fā)送OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到USB設(shè)備; 上游USB端口發(fā)送一個NA數(shù)據(jù)包做OUT交換,且不傳送下一個傳入的OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包執(zhí)倒,直到下游USB端口回應(yīng)是可用的; 如果USB設(shè)備發(fā)送一個NAK數(shù)據(jù)包做OUT交換,和下游USB端口將NAK數(shù)據(jù)包發(fā)送到上游USB端口 ;上游USB端口向下游端口再傳送下一個傳入的OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包 如果USB設(shè)備發(fā)送一個ACK數(shù)據(jù)包,上游端口發(fā)送ACK做下一個交換。
20.如權(quán)利要求11所述的的方法,其中USB設(shè)備包含一個等時性USB設(shè)備,并進(jìn)一步包含用等時性令牌傳送USB數(shù)據(jù)的行為,行為包括 DATA數(shù)據(jù)包使用零數(shù)據(jù)和流水線操作IN DATA,其中的IN DATA狀態(tài)數(shù)目取決于連接的潛伏期; 第一個,或第一個多重等時性數(shù)據(jù)包,上游USB端口回應(yīng)一個或多個零數(shù)據(jù)包; 傳送第一個,或第一個多重,IN數(shù)據(jù)包給下游USB端口和從等時性的USB設(shè)備接收DATAO 或 DATAl 或 DATA2 數(shù)據(jù)包; 流水線操作這些數(shù)據(jù)包來回復(fù)等時性的IN數(shù)據(jù)包; 如果USB主機(jī)停止發(fā)送等時性數(shù)據(jù)包中,丟棄最后和剩余的數(shù)據(jù);和上游USB端口,找出哪個終端和等時性終端使用的地址,由從數(shù)據(jù)包頻流來監(jiān)控和解碼USB描述符。
21.如權(quán)利要求11所述的的方法,其進(jìn)一步組成通過混合數(shù)據(jù)鏈接等時性O(shè)UT令牌傳送US數(shù)據(jù)的行為,行為包括 向下游端口發(fā)送等時性O(shè)UT交換,根據(jù)USB協(xié)議上游端口不發(fā)送; 下游USB端口緩沖OUT數(shù)據(jù)包直到DATAO或DATAl或DATA2或MDATA數(shù)據(jù)包是可用的; 當(dāng)DATAO或DATAl或DATA2或MDATA數(shù)據(jù)包是可用時,發(fā)送OUT數(shù)據(jù)包和和DATAO或DATAl或DATA2或MDATA數(shù)據(jù)包到USB設(shè)備;和 上游USB端口,找出哪些終結(jié)端和地址是用于等時終端,從數(shù)據(jù)包頻流來監(jiān)控和解碼USB描述符。
22.如權(quán)利要求11所述的的方法,其中上游USB端口被配置為用NAK數(shù)據(jù)包回應(yīng)OUT交換;并進(jìn)一步組成利用一個USB PING數(shù)據(jù)包來傳送USB數(shù)據(jù)的行為,行為包括 上游USB端口用NAK數(shù)據(jù)包回應(yīng)OUT交換; 上游USB端口用NAK數(shù)據(jù)包回應(yīng),并將輸送PING數(shù)據(jù)包到下游USB端口 ; 上游USB端口不傳送PING數(shù)據(jù)包,并繼續(xù)發(fā)送NAK數(shù)據(jù)包,直到從USB設(shè)備的反應(yīng)是可用的; 如果USB設(shè)備用ACK數(shù)據(jù)包反應(yīng)OUT交換,上游USB端口用ACK數(shù)據(jù)包響應(yīng)下一個傳入的PING數(shù)據(jù)包,并用ACK數(shù)據(jù)包回應(yīng)下一個OUT交換;最后一個OUT交換不傳送到下游USB 端口 ; 如果USB設(shè)備用NAK數(shù)據(jù)包響應(yīng)OUT交易和NAK數(shù)據(jù)包傳遞到上游USB端口,上游USB端口傳宋下一個PING數(shù)據(jù)包到下游USB端口 ; 如果USB設(shè)備用NAK數(shù)據(jù)包帶PING數(shù)據(jù)包回應(yīng),而NAK數(shù)據(jù)包被傳遞到上游USB端口,上游USB端口傳送下一個PING數(shù)據(jù)包到下游USB端口 如果USB設(shè)備用ACK數(shù)據(jù)包帶PING數(shù)據(jù)包回應(yīng),而ACK數(shù)據(jù)包被傳遞到上游USB端口,上游USB端口響應(yīng)ACK數(shù)據(jù)包給下一個PING數(shù)據(jù)包; 下一個OUT交換回應(yīng)ACK數(shù)據(jù)包;和 傳送這些OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到下游USB端口,發(fā)送到USB設(shè)備。
23.如權(quán)利要求11所述的的方法,其中上游USB端口沒有先前的OUT交換,進(jìn)一步組成的使用USB PING數(shù)據(jù)包傳送USB數(shù)據(jù)行為,行為包括上游USB端口回應(yīng)NAK數(shù)據(jù)包,并將PING數(shù)據(jù)包輸送到下游USB端口 ; 上游USB端口,不傳送PING數(shù)據(jù)包,并繼續(xù)發(fā)送NAK數(shù)據(jù)包,直到從USB設(shè)備的反應(yīng)是可用的; 如果USB設(shè)備用ACK數(shù)據(jù)包回應(yīng)PING數(shù)據(jù)包,而ACK數(shù)據(jù)包被傳遞給上游USB端口,上游USB端口用ACK數(shù)據(jù)包來應(yīng)對下一個PING數(shù)據(jù)包,用ACK數(shù)據(jù)包響應(yīng)廈一個OUT交換;和 傳送OUT數(shù)據(jù)包和DATAO或DATAl數(shù)據(jù)包到下游USB端口。
24.如權(quán)利要求11所述的的方法,其中進(jìn)一步組成網(wǎng)絡(luò)中USB地址管理的,行為包括 在上游USB端口中檢測到USB重置后,上游USB端口接受唯一有USB地址的數(shù)據(jù)包; 上游端口辨識哪些USB地址分配給下游端口的USB設(shè)備,用監(jiān)測和解碼SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求; 在檢測到SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求之后,上游端口僅應(yīng)對分配到SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備要求的新USB地址有所回應(yīng); USB重置重分配的USB地址設(shè)置為O并再等待SET ADDRESS標(biāo)準(zhǔn)USB設(shè)備請求。
25.如權(quán)利要求11所述的的方法,其進(jìn)一步組成在網(wǎng)絡(luò)中USB保持活躍信號得行為,包括 低速USB枚舉完成后,上游USB端口開始監(jiān)控Iinestate ; 當(dāng)檢測到第一次更改Iinestate時,視為第一個保持活躍信號;和上游USB端口設(shè)置內(nèi)部計時器給T保持活躍,和逾期時,上游USB端口監(jiān)測Iinestate是否再次切換,以檢測保持活躍,并傳遞保持活躍事件數(shù)據(jù)包到下游USB端口。
26.如權(quán)利要求25所述的的方法,其中T保持活躍設(shè)置為約O.95ms和約O. 99ms之間。
全文摘要
本發(fā)明公開了一種系統(tǒng),其透過DiiVA網(wǎng)絡(luò)以傳遞USB資料,該系統(tǒng)包含一個USB主機(jī)控制器,至少一個USB設(shè)備,第一DiiVA設(shè)備通過上游USB端口連接到USB主機(jī)控制器;第二DiiVA設(shè)備通過下游USB端口連接到USB設(shè)備;和根據(jù)USB協(xié)議,經(jīng)由一DiiVA雙向混合鏈接,一個網(wǎng)絡(luò)配置為在第一DiiVA和第二DiiVA設(shè)備間傳輸數(shù)據(jù);透過遞送于上游USB端口和下游USB端口之間的混合鏈接之至少一LineState信息包及至少一USB數(shù)據(jù)包,網(wǎng)絡(luò)響應(yīng)USB主機(jī)控制器以遞送遵守USB協(xié)議之內(nèi)容。
文檔編號H04L29/06GK102835091SQ201180005935
公開日2012年12月19日 申請日期2011年1月12日 優(yōu)先權(quán)日2010年1月12日
發(fā)明者李東允, 愛德華·派克, 約翰·哈恩, 馬恩克·古普塔, 保羅·海寧吳爾福, 金秉原, 金尚萬, 趙書載 申請人:凌旭(美國)公司