專利名稱:在終點中無線usb同步的緩沖器管理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般說來涉及無線通用串行總線(WUSB)協(xié)議,并且涉及實現(xiàn)該WUSB協(xié)議的設(shè)備(即,WUSB設(shè)備),并且更確切地說,涉及管理帶有同步(isoch ronous) IN終點(Endpoint)的WUSB設(shè)備中的緩沖器用以限制終點緩沖器所需要的存儲器量并且降低管理終點緩沖的復(fù)雜性同時遵循數(shù)據(jù)分組的WUSB規(guī)范的方法。
背景技術(shù):
通用串行總線(USB)通信已經(jīng)顯著地改善了個人電腦(PC)或其他的主機設(shè)備與外圍設(shè)備之間的通信,所述外圍設(shè)備諸如存儲設(shè)備、掃描器、個人數(shù)字助理(PDA)、外部硬盤、鍵盤、鼠標(biāo)、攝像機、打印機、電池及其他電話、顯示器、錄音機和麥克風(fēng)、及其他將數(shù)字信息與PC或主機設(shè)備上的應(yīng)用軟件和/或嵌入系統(tǒng)傳送的設(shè)備。在2005年,分析家估計存在超過500百萬USB產(chǎn)品在使用中。USB在主機和一個或許多外圍設(shè)備之間提供了異步串行互連。最初,USB曾是對有線連接很有用的協(xié)議,所述有線連接例如是插入到主機PC上的端口中所需要的外部設(shè)備,但是無線通用串行總線(WUSB)規(guī)范為主機定義了用于在高帶寬無線地與外圍設(shè)備通信的協(xié)議,諸如經(jīng)由超寬帶(UWB)無線電技術(shù),而無需電纜或物理端ロ。WUSB是支持主機設(shè)備與許多可同時訪問的外圍設(shè)備或設(shè)備之間數(shù)據(jù)交換的邏輯總線。2005年5月12日發(fā)行的WUSB規(guī)范,I. O版本總體上以USB協(xié)議為基礎(chǔ)并且擴展了該USB協(xié)議。在USB通信中,每個USB設(shè)備或外部設(shè)備連接到集線器或直接地連接到主機(例如,帶有USB主機控制器的PC)。在WUSB條件下,沒有集線器,并且外部設(shè)備或WUSB設(shè)備直接地主機與通信,并且有時,設(shè)備線纜適配器(Device Wire Adapter DWA)連接至或連線至ー個或多個USB設(shè)備,以允許連線的USB設(shè)備以無線方式與主機(例如,DWA可以被認(rèn)為充當(dāng)連線USB系統(tǒng)的主機)進行通信。但不論是哪種情況,主機都控制USB或者WUSB總線上的所有通信,并且一次僅僅有一個設(shè)備和主機通信。當(dāng)一個設(shè)備被首先連接到主機吋,該主機檢測它的存在并且向該設(shè)備請求基本信息,諸如該設(shè)備支持的通信速度、該設(shè)備要求的帶寬、以及該設(shè)備利用什么數(shù)據(jù)傳送類型。初始化過程被認(rèn)為是列舉(enumeration)并且包括主機分配唯一地址給該設(shè)備。有四種數(shù)據(jù)轉(zhuǎn)送類型用于發(fā)送USB以及WUSB數(shù)據(jù)控制、成批處理(bulk)、中斷、以及同歩。同步轉(zhuǎn)送允許設(shè)備通過保證將被傳送的設(shè)備數(shù)據(jù)的遞送時間或帶寬并且不用錯誤校正,來實時轉(zhuǎn)送大量數(shù)據(jù)。利用同步轉(zhuǎn)送的設(shè)備-諸如視頻或網(wǎng)絡(luò)攝影機、諸如USB揚聲器、麥克風(fēng)之類的音樂播放設(shè)備等,必須要能夠容忍偶然的損壞數(shù)據(jù)分組達(dá)到目的地。USB或WUSB系統(tǒng)中的每個設(shè)備或外部設(shè)備內(nèi)提供了終點(Endpoint)。終點是ー個設(shè)備的唯一可尋址部分,該設(shè)備被認(rèn)為是主機與設(shè)備之間的通信流的目標(biāo),并且終點被用于在總線上發(fā)送和接收數(shù)據(jù)。典型地,在每個設(shè)備中有十六個可尋址的終點可利用,并且每個終點包含地址號碼和方向或終點號碼。終點地址參考設(shè)備內(nèi)的16個終點緩沖器或寄存器之一,并且終點號碼定義該數(shù)據(jù)前往主機還是正從主機而來,該參考從主機的角度看來。因此,〃 IN終點〃是傳送數(shù)據(jù)從該設(shè)備至主機的終點,而〃 OUT終點〃描述從主機前往到設(shè)備的數(shù)據(jù)。主機和在被初始化或列舉期間建立的設(shè)備之間的通信交換被認(rèn)為是〃管道〃,其是位于主機種的設(shè)備終點和設(shè)備控制軟件或驅(qū)動器之間的虛擬連接。管道是用于主機和設(shè)備之間交換所有數(shù)據(jù)的通道。對于WUSB開發(fā)者而言重要的、面臨的挑戰(zhàn)是設(shè)計同步終點或帶有同步終點的WUSB設(shè)備,以有效地管理管道上(或WUSB總線上)的通信以及數(shù)據(jù)在終點的緩沖。優(yōu)選地,這種設(shè)計可以創(chuàng)作成用以控制支持每個終點的緩沖器或寄存器同時支持WUSB規(guī)范所有需求所要求的存儲器數(shù)量,因為為了經(jīng)由WUSB通道或管道與主機通信,WUSB設(shè)備就必須實現(xiàn)WUSB協(xié)議的全部必備特征。具體地,對無線USB或WUSB同步IN終點而言緩沖器管理的問題在于當(dāng)設(shè)計或配置WUSB設(shè)備或外圍設(shè)備時不得不致カ于要解決的問題。在WUSB事務(wù)的數(shù)據(jù)階段期間,一系列數(shù)據(jù)分組被發(fā)送并且此數(shù)據(jù)轉(zhuǎn)送被稱作〃數(shù)據(jù)成組傳送(bursting)"。圖I根據(jù)WUSB 協(xié)議舉例說明了 WUSB數(shù)據(jù)成組傳送。為了保證可靠的數(shù)據(jù)遞送,WUSB系統(tǒng)或群,諸如群100包括具有IN終點110的發(fā)送器或設(shè)備以及諸如主機設(shè)備120之類的接收器,使用單滑動窗協(xié)議執(zhí)行分組130的數(shù)據(jù)成組傳送,以給每個分組130附加上序列號。如圖所示,發(fā)送器110包括數(shù)據(jù)緩沖器112,用以在來自終點功能的數(shù)據(jù)在被數(shù)據(jù)發(fā)送器114轉(zhuǎn)送之前存儲該數(shù)據(jù),并且類似地,接收器或主機設(shè)備120包括數(shù)據(jù)接收器126,用以在WUSB總線或在這種總線中的管道上以接收窗接收分組130,并且將該數(shù)據(jù)傳遞到數(shù)據(jù)緩沖器128以供以后轉(zhuǎn)送到主機應(yīng)用程序、函數(shù)或嵌入式系統(tǒng)中以供使用。根據(jù)WUSB規(guī)范,對于同步IN終點的緩沖器大小選擇是應(yīng)用軟件具體的決定,并且唯一的指導(dǎo)是該大小應(yīng)該通過平衡幾個因素來選擇,所述因素包括要求短期容許誤差、成本、以及可接受的流延遲和/或等待時間。換句話說,緩沖器大小以及緩沖器管理主要地留給WUSB開發(fā)者,而在如何更好地完成希望的結(jié)果-諸如減少存儲器、降低成本、和/或限制延遲以及錯誤中則幾乎不提供什么指導(dǎo)。除提供序列號之外,每個WUSB同步的分組需要具有特殊的格式,該格式所具有的ー些特定需求在下面表I中列出。WUSB同步IN終點必須將同歩數(shù)據(jù)聚集到它能夠在空中或WUSB總線上發(fā)送且不用把単一數(shù)據(jù)分段劃分在多個WUSB分組上的最大分組中。在同步IN轉(zhuǎn)送中,wPrcsentationTimc字段是分組中第一分段的采樣時間。兩個連續(xù)數(shù)據(jù)分段之間的間隔被假設(shè)為在ー個分組中是固定的,并且用來確定分組中隨后分段的出現(xiàn)時間。如果ー個分段沒有數(shù)據(jù),則該終點應(yīng)當(dāng)明確地將它的長度設(shè)置為零。響應(yīng)于向主機或接收器120對數(shù)據(jù)的請求,接收器110中的同步IN終點通過發(fā)送其緩沖器112中最舊的數(shù)據(jù)來為每個WUSB同步IN請求做出響應(yīng)。當(dāng)緩沖器112充滿吋,同步IN終點110丟棄緩沖器112中最舊的數(shù)據(jù)。如果同步IN終點已經(jīng)試著去發(fā)送所丟棄的數(shù)據(jù),那么它試圖使用與所丟棄的分組相同的成組發(fā)送序列號來轉(zhuǎn)送最舊的可用未丟棄分組。另外,對于接收器110中的WUSB同步IN終點而言支持動態(tài)交換和/或不斷地升級可能是希望的情形,這樣可以允許最大分組大小或間隔是變化的而不中斷它的轉(zhuǎn)送。這些可選的特性使得同步轉(zhuǎn)送在不穩(wěn)定的無線通道上更加平穩(wěn)。表I : WUSB同步的分組格式
權(quán)利要求
1.一種緩沖器管理方法,包含 在無線通用串行總線(WUSB)設(shè)備中提供同步IN終點; 在WUSB設(shè)備的存儲器中,為IN終點提供緩沖器; 在WUSB設(shè)備的存儲器中,提供多個寄存器組; 在IN終點接收對數(shù)據(jù)分段的寫請求; 在緩沖器中存儲數(shù)據(jù)分段; 將寄存器組之ー鏈接至一些連續(xù)的數(shù)據(jù)分段;以及 為發(fā)送窗中所請求的每個分組,確定在每ー鏈接的寄存器組中的準(zhǔn)備具有WUSB同步格式的分組所需要的附加分組信息。
2.根據(jù)權(quán)利要求I的方法,還包含在數(shù)據(jù)分段存儲之后,當(dāng)緩沖器處于上溢狀態(tài)時丟棄最舊的數(shù)據(jù)分段。
3.根據(jù)權(quán)利要求2的方法,其中使用寄存器組以及ー組緩沖器索引來執(zhí)行丟棄。
4.根據(jù)權(quán)利要求I的方法,還包含在同步IN終點處接收指定發(fā)送窗的發(fā)送請求,并且根據(jù)發(fā)送窗定義的發(fā)送次序?qū)l(fā)送窗中請求的序列號分配給對應(yīng)的寄存器組。
5.根據(jù)權(quán)利要求4的方法,其中序列號的分配包含在發(fā)送窗中區(qū)別重發(fā)序列號并且重新使用丟棄分組的序列號。
6.根據(jù)權(quán)利要求5的方法,其中利用寄存器組來執(zhí)行區(qū)別和重新使用。
7.根據(jù)權(quán)利要求I的方法,其中鏈接包含在寄存器組中存儲相關(guān)聯(lián)的連續(xù)數(shù)據(jù)分段在緩沖器中的開始位置的索引。
8.根據(jù)權(quán)利要求I的方法,其中附加分組信息包含為存儲的數(shù)據(jù)分段導(dǎo)出的出現(xiàn)時間和存儲的數(shù)據(jù)分段的序列號、總長度和數(shù)目。
9.根據(jù)權(quán)利要求I的方法,其中寄存器組的數(shù)目等于為同步IN終點定義的最大成組傳送大小。
10.根據(jù)權(quán)利要求I的方法,其中附加分組信息的鏈接和確定是根據(jù)緩沖器索引、寄存器組和輔助變量執(zhí)行的,用以支持最大分組大小或時間間隔的動態(tài)變化。
全文摘要
一種緩沖器管理方法,包含∶在無線通用串行總線(WUSB)設(shè)備中提供同步IN終點;在WUSB設(shè)備的存儲器中,為IN終點提供緩沖器;在WUSB設(shè)備的存儲器中,提供多個寄存器組;在IN終點接收對數(shù)據(jù)分段的寫請求;在緩沖器中存儲數(shù)據(jù)分段;將寄存器組之一鏈接至一些連續(xù)的數(shù)據(jù)分段;以及為發(fā)送窗中所請求的每個分組,確定在每一鏈接的寄存器組中的準(zhǔn)備具有WUSB同步格式的分組所需要的附加分組信息。
文檔編號G06F13/42GK102693206SQ20121007549
公開日2012年9月26日 申請日期2007年1月30日 優(yōu)先權(quán)日2007年1月30日
發(fā)明者彭震寧, 江森 申請人:世意法(北京)半導(dǎo)體研發(fā)有限責(zé)任公司