專利名稱:主控制器設備和數(shù)據傳送控制方法
技術領域:
本發(fā)明涉及利用USB (通用串行總線)設備實現(xiàn)數(shù)據傳送的主控 制器。
背景技術:
盡管USB協(xié)議的技術規(guī)范是在假定在有線環(huán)境中使用USB(通用 串行總線)的基礎上被建立起來,近年來已發(fā)展出能夠使USB不用連 接線的無線USB技術。例如,通過為主設備裝配用于控制與有線USB 設備的數(shù)據傳送的驅動器,以及用于無線通信的主控制器設備,已經 實現(xiàn)通過無線通信使用無線USB設備的數(shù)據傳送。在USB中,數(shù)據傳 送是基于端點信息(endpoint information)來執(zhí)行的。在這樣的情形下, 端點信息位于主設備的系統(tǒng)存儲器中。因此,主控制器設備必須成功 地讀取并分析位于系統(tǒng)存儲器內的端點信息。
此外,端點信息保持將引用的下一個端點在系統(tǒng)存儲器中的地址, 以便它能夠指定將要引用的下一個端點。配置最后一個端點信息以使 得引用第一個端點信息,從而多個端點信息形成循環(huán)結構。因此,通 過依次引用每個端點信息,主控制器設備以循環(huán)方式引用所有端點信 息。可替代地,最后一個端點信息可以有終止信息,從而多個端點信 息形成線性結構。即使在這樣的情形下,仍依次引用多個端點信息, 直至具有終止信息的端點信息被引用。然后,繼具有終止信息的端點 信息之后,再從第一端點信息開始引用這些端點信息,從而它們仍以 循環(huán)方式被引用。端點信息包括請求數(shù)據傳送的端點信息和不促成數(shù) 據傳送的端點信息,并且在它們間不加區(qū)別地將它們構成一個循環(huán)。 因此,當實現(xiàn)數(shù)據傳送時,主控制器必須通過從系統(tǒng)存儲器中逐一讀 取端點信息來選擇請求數(shù)據傳送的端點信息。公開號為No.2001-127767的日本尚未審査的專利申請公開了通過 在無線LAN (局域網)的信息分組傳送過程中的隊列控制期間降低對 共享存儲器的訪問時間來提高傳送效率的技術。然而,該技術很難應
用于無線USB的數(shù)據傳送。
如上所述,由于端點信息包括不促成數(shù)據傳送的端點信息,在讀 出促成數(shù)據傳送的端點信息之前,主控制器設備不能執(zhí)行數(shù)據傳送。 而且,在將由多于一個端點信息請求數(shù)據傳送的情形下,為了獲得繼 用于每個傳送請求的端點信息之后所引用的端點信息,主控制器設備 不僅需要讀出促成數(shù)據傳送的端點信息,還需要讀出不促成數(shù)據傳送 的端點信息。
其結果是,在用于USB的主控制器設備中存在一個問題,由于必 須相繼讀出端點信息的一個循環(huán),而該端點信息包括了不促成數(shù)據傳 送的端點信息,故而會不令人滿意地降低數(shù)據傳送效率。
發(fā)明內容
依照本發(fā)明的一個實施例,安裝在具有系統(tǒng)存儲器的與USB設備 通信的主設備中的主控制器設備包括信息選擇部,通過分析保存在 系統(tǒng)存儲器中的多個端點信息,選擇請求數(shù)據傳送的端點信息;存儲 區(qū),存儲系統(tǒng)存儲器中的至少一個地址,該至少一個地址識別由信息 選擇部所選擇的端點信息;以及數(shù)據傳送部,基于由存儲在存儲區(qū)中 的系統(tǒng)存儲器中的至少一個地址所識別的端點信息,執(zhí)行所請求的數(shù) 據傳送。
以這種方式,能夠無需依次訪問保存在系統(tǒng)存儲器中的端點信息 而執(zhí)行數(shù)據傳送。從而,這可以降低對系統(tǒng)存儲器的訪問次數(shù),從而 提高數(shù)據傳送效率。此外,依照本發(fā)明的另一個實施例, 一種主控制器設備的數(shù)據傳 送控制方法包括,其中所述主控制設備安裝在具有系統(tǒng)存儲器的與 USB設備通信的主設備中逐一讀出在系統(tǒng)存儲器中保存的多個端點 信息;通過分析讀出的端點信息,選擇請求數(shù)據傳送的端點信息;在 存儲區(qū)中存儲識別所選擇的端點信息的系統(tǒng)存儲器中的地址;對于保 存在系統(tǒng)存儲器中的多個端點信息的每一個,重復存儲步驟;并且基 于存儲在存儲區(qū)中的系統(tǒng)存儲器中的至少一個地址執(zhí)行數(shù)據傳送。
本發(fā)明能夠消除在用于USB的主控制器設備中依次讀取包括不促 成數(shù)據傳送的端點信息的循環(huán)。其結果是,這將提高數(shù)據傳送效率。
結合附圖,從下面對特定優(yōu)選實施例的描述中,本發(fā)明的上述及 其它目的、優(yōu)勢和特征將更加明顯。在附圖中
圖1示出了依照本發(fā)明一個方面的實現(xiàn)無線USB通信的系統(tǒng)結構 的示例;
圖2是示出依照本發(fā)明一個實施例的主控制器設備的結構示例的
框圖3A是用于示出讀取過程圖,其中以循環(huán)方式連續(xù)讀出在系統(tǒng)存
儲器中保存的端點信息;
圖3B示出了讀出端點信息的順序;
圖3C示出了其中只讀出有效端點信息的狀態(tài);
圖4是示出發(fā)送/接收控制部的操作示例的流程圖5示出其中在存儲區(qū)中存儲作為傳送請求信息的系統(tǒng)存儲器中
地址的示例-,
圖6是示出依照本發(fā)明第一實施例的數(shù)據傳送部的操作示例的流
程圖7示出在其中存儲區(qū)中存儲作為傳送請求信息的系統(tǒng)存儲器中 地址和有效端點信息的示例;以及
圖8是示出依照本發(fā)明第二實施例的數(shù)據傳送部的操作示例的流程圖。
具體實施例方式
這里將參照示例性實施例描述本發(fā)明。精通本領域技術的人員將 認識到,利用本發(fā)明的啟示,能夠實現(xiàn)許多替代性的實施例,并且本 發(fā)明并不局限于用于說明性目的示出的實施例。
下文將參照
本發(fā)明的實施例。在下面的描述和附圖中, 為了清楚地說明,適當時會略去或簡化一些非必須的部分。在附圖中, 為同樣或等同的部件和具有同樣或等同功能的部件指定了相同的符 號,并且適當時略去了對它們的說明。而且,本說明書中有幾個同樣 的部件。因此,當需要相互區(qū)分這些部件時,在最初的符號上添加符
號"-n(n是大于0的整數(shù))"以使一個部件與其它部件相區(qū)別。例如, 圖1示出多個無線USB設備8-1、 8-2、 ...、 8-j。例如,當參照圖l進 行說明時,術語"無線USB設備8"意指無線USB設備8-1、 8-2、... 中的任意一個或多個,而術語"無線USB設備8-1 (或者無線USB設 備8-2或諸如此類)"被用于將無線USB設備8-1 (或者無線USB設 備8-2或諸如此類)與其它無線USB設備相區(qū)別。
此外,在下面的描述中說明實現(xiàn)無線USB通信的系統(tǒng)的一個示例。 然而,本發(fā)明也適用于有線USB系統(tǒng)。
圖1示出了依照本發(fā)明一個方面的實現(xiàn)無線USB通信的系統(tǒng)結構 的示例。在主機側,作為示例示出了主設備7,它包括主控制器設備1、 系統(tǒng)存儲器2、 CPU (中央處理單元)3和存儲器4,所有這些被連接 到PCI (外圍組件互連)總線5,并由PCT總線控制器6控制。在圖1 中,對于主設備7,只示出了對本發(fā)明而言必須的部件,而略去了其它 非必須的部件。此外,在設備側,作為從屬設備9的示例,示出了無 線USB設備8。附帶地,對從屬設備9僅有的要求是,該從屬設備9 中應有至少一個無線USB設備8。此外,從屬設備9并不局限于無線USB設備8。作為替代,它可以是中繼設備,傳送在執(zhí)行無線通信的主 控制器設備1和有線USB設備之間傳送的數(shù)據。
在下面的描述中,對主控制器設備1進行說明時假定主控制器設 備1是安裝于主設備7中的微處理器。將主控制器設備1連接到PCI 總線5,并由安裝于主設備7中的驅動器功能進行控制。該驅動器功能 例如可以由軟件程序實現(xiàn),并且CPU 3可以執(zhí)行對應的指令以實現(xiàn)裝 載于存儲器4中的驅動器功能。存儲器4例如可以是RAM (隨機存取 存儲器)。
在與從屬設備9相連接時,主設備7經主控制器設備1從那些從 屬設備9的每個都得到識別該每個從屬設備9(例如,無線USB設備8) 的端點信息,并將它們存儲在系統(tǒng)存儲器2中。
當將在主設備7和從屬設備9之間請求數(shù)據傳送時,在系統(tǒng)存儲 器2中創(chuàng)建端點信息,并且主控制器設備1基于該端點信息傳送數(shù)據。 端點信息包括請求數(shù)據傳送的端點信息(適當時被稱為"有效端點信 息")和不促成數(shù)據傳送的端點信息(適當時被稱為"無效端點信息")。
在以下每個實施例中,說明使得主控制器設備1有效地引用有效 端點信息的技術。
第一實施例
作為第一個實施例,下文將描述一種情形,其中將保存有效端點 信息的系統(tǒng)存儲器2中的地址存儲在主控制器內的存儲區(qū)中。
圖2是示出依照本發(fā)明一個實施例的主控制器設備的結構示例的 框圖。而且,圖2也示出了系統(tǒng)存儲器2的示例。主控制器設備1包 括主機側接口 (下文中被稱為"主機側I/F" ) 11、設備側接口 (下文 中被稱為"設備側I/F")、發(fā)送/接收控制部16和緩沖器17。主機側I/F 11通過PCI總線5將數(shù)據發(fā)送到系統(tǒng)存儲器2和主設 備7中的其它部件,并從系統(tǒng)存儲器2和主設備7中的其它部件接收 數(shù)據。設備側I/F12通過無線通信將數(shù)據發(fā)送到從屬設備9,并從從屬 設備9接收數(shù)據。
發(fā)送/接收控制部16控制在主設備7和從屬設備9之間的數(shù)據傳 送。更具體地,圖2是示出了通過將其分為三個功能,即信息選擇部 13、存儲區(qū)14和數(shù)據傳送部15,來實現(xiàn)發(fā)送/接收控制部16的示例。 通過分析保存在系統(tǒng)存儲器2中的多個端點信息,信息選擇部13選擇 多個請求數(shù)據傳送的端點信息。
存儲區(qū)14存儲由信息選擇部13選擇的系統(tǒng)存儲器中的地址。該 存儲區(qū)14為地址指定順序號(例如,以記錄號的順序),并存儲它們。 存儲地址的順序與重復執(zhí)行若干次數(shù)據傳送的順序相同。作為示例, 以如下方式使用存儲區(qū)14。由于存儲區(qū)14由存儲器構成,可以在存儲 區(qū)14中例如以地址值的升序方式存儲地址。此外,在重復執(zhí)行若干 次數(shù)據傳送的情形下,用于指示當前引用的存儲區(qū)14的地址的計數(shù)器 被重置為零,并且系統(tǒng)存儲器2中當前由計數(shù)器所指示的地址首先被 處理。然后,在結束該過程之后,遞增計數(shù)器并獲得系統(tǒng)存儲器中的 下一個地址。使用標記以確定由端點信息所請求的數(shù)據傳送是否完成, 其中該端點信息是位于保存在存儲區(qū)14中的系統(tǒng)存儲器2的地址處的 端點信息。該標記與在系統(tǒng)存儲器2中的地址結合被存儲在存儲區(qū)14 中。例如,在最初被存儲時將該標記設置為"1"。此外,用單個端點 信息傳送的數(shù)據量不必局限為固定的量。例如,當將被拷貝的文件大 小彼此不同時,被傳送的數(shù)據量也不相同。當過程依序進行時,需要 從將要處理的目標地址的集合中排除掉系統(tǒng)存儲器2中指示整個數(shù)據 傳送已完成的端點信息的地址,并因而與該地址結合存儲的標記被設 置為"0"。連續(xù)遞增計數(shù)器,并隨后當計數(shù)器達到終值時將其重置為 零。相應標記已被設置為"0"的系統(tǒng)存儲器2中的地址將不被作為數(shù)據傳送的目標地址而進行處理,并因而僅僅遞增計數(shù)器且過程行進到 下一地址。
數(shù)據傳送部15基于存儲在存儲區(qū)14中的系統(tǒng)存儲器2的至少一 個地址執(zhí)行數(shù)據傳送。數(shù)據傳送部15通過使用系統(tǒng)存儲器2中的多個 地址引用端點信息,并基于該多個端點信息以重復方式執(zhí)行被請求的 數(shù)據傳送。數(shù)據傳送部15基于通過使用系統(tǒng)存儲器2中的一個地址而 引用的端點信息執(zhí)行至少一個數(shù)據傳送,并重復數(shù)據傳送,直至所傳 送數(shù)據量達到由對應于系統(tǒng)存儲器2中的每個地址的端點信息所請求 的數(shù)據傳送的數(shù)據量。數(shù)據傳送部15在為其自身的主控制器設備1的 數(shù)據傳送分配的特定時間期間內(在其自身的傳送時間期間內)執(zhí)行 單個數(shù)據傳送傳送。特別地,數(shù)據傳送部15將要傳送的數(shù)據分配給信 息分組,并在所分配的時間期間內重復傳送信息分組。此外,數(shù)據傳 送部15使用緩沖器17臨時存儲將要傳送的數(shù)據。
緩沖器17是臨時存儲在主設備7和從屬設備9之間傳送的數(shù)據的 存儲區(qū)。
圖2示出了在系統(tǒng)存儲器2中保存五個端點信息的狀態(tài)。左邊的 數(shù)字值是地址,在地址的右邊示出端點信息。作為端點信息,從從屬 設備9通知的端點信息(M-l、 M-2、 ...、 H-l-H-3)與繼當前的端點 信息之后被讀取的端點信息所在區(qū)域的地址(下文中被稱為"下一地 址")結合在一起,被保存在系統(tǒng)存儲器2中。此外,促成數(shù)據傳送 的端點信息也包括在其中保存將被傳送的數(shù)據的系統(tǒng)存儲器2中的地 址。在圖2中假定從無線USB設備8-1通知了端點信息M-l和M-2, 且從無線USB設備8-2通知了端點信息H-1- H-3。盡管在圖2中作為 示例示出了循環(huán)結構的端點信息,本發(fā)明也適用于線性結構的端點信 息。在這樣的情形下,最后一個端點信息具有終止信息,從而它能夠 確定該端點信息是最后的端點信息。接下來,下面說明主控制器設備1訪問保存在系統(tǒng)存儲器2中的
端點信息的順序。圖3A-3C是示出了以循環(huán)方式相繼讀出端點信息的 讀取過程。特別地,圖3A示出保存在系統(tǒng)存儲器中的端點信息的一個 示例,圖3B示出讀出端點信息的順序,且圖3C示出僅讀出有效端點 信息的狀態(tài)。在USB中,在列表地址中保存將首先被讀出的端點信息 的地址。為了開始數(shù)據傳送,主控制器設備1首先讀出位于保存在列 表地址中的地址上的端點信息,并隨后讀出位于與該已讀出端點信息 一起被保存的地址上的端點信息。在下面的說明中假定在列表地址中 保存地址"100"。
特別地,主控制器設備1以在圖3A中示出的順序(1) - (5)讀 出端點信息。從而,主控制器設備l以M-1、 M-2、 H-l、 H-3、 H-2的 順序分析端點信息,如在圖3B中所示。在下面的說明中,也假定只有 M-2和H-2是有效端點信息,并且其它端點信息是無效端點信息。在 這樣的情形下, 一旦主控制器設備l對所有的有效端點信息作了分析, 主控制器設備1以在圖3C中所示的循環(huán)方式讀出端點信息將是所期望 的。
因此,在分析存儲在系統(tǒng)存儲器2中的端點信息之后,依照本實 施例的發(fā)送/接收控制部16存儲在系統(tǒng)存儲器2中的地址,該地址指示 了請求在主控制器設備1內的存儲區(qū)14中的數(shù)據傳送的有效端點信 息。隨后,該發(fā)送/控制部16基于該所存儲的系統(tǒng)存儲器2中的地址訪 問系統(tǒng)存儲器2。因此,不再需要針對每次數(shù)據傳送讀出無效端點信息。 以這種方式,能夠降低主控制器設備1對系統(tǒng)存儲器2的訪問次數(shù), 特別是對無效端點信息的讀取次數(shù)。不管是否存在存儲于存儲區(qū)14中 的系統(tǒng)存儲器2中的地址,都將產生這種效果。在存儲區(qū)14中缺少系 統(tǒng)存儲器2中的地址指示主控制器設備1不必執(zhí)行任何數(shù)據傳送。此 外,當在存儲器14中存儲了系統(tǒng)存儲器2中的至少一個地址時,主控 制器設備1能夠執(zhí)行數(shù)據傳送而無需訪問不促成數(shù)據傳送的端點信息。接下來,下面說明發(fā)送/接收控制部16的操作。主控制器設備1 的發(fā)送Z接收控制部16通常以如下方式操作。(1)存儲識別存儲區(qū)14 中的有效端點信息的系統(tǒng)存儲器2中的地址,(2)數(shù)據傳送,(3) 握手接收,和(4)更新存儲在系統(tǒng)存儲器2中的端點信息。發(fā)送/接收 控制部16重復步驟(2) - (4),直到所有有效端點信息都不存在了為 止?;诰唧w流程圖來說明操作的示例。在該示例中,說明由信息選 擇部13執(zhí)行項目(1),并由數(shù)據傳送部15執(zhí)行項目(2) - (4)的情 形。圖4是示出信息選擇部的操作示例的流程圖。在主控制器設備1 上電(S11)時,信息選擇部13從系統(tǒng)存儲器2中讀出端點信息(S12)。 當信息選擇部13第一次讀出端點信息時,它讀出位于保存在列表地址 中的地址上的端點信息。然后,信息選擇部13分析該讀出的端點信息, 以確定該端點信息是否請求數(shù)據傳送(S13)。如果端點信息是有效端 點信息(S14為是),信息選擇部13在存儲區(qū)14中存儲系統(tǒng)存儲器2 中的地址(S15)。如果它不是有效端點信息(S14為否),信息選擇 部13不執(zhí)行步驟S15的過程。然后,如果與該讀出的端點信息一起被保存的下一地址與在列表 地址中保存的地址不匹配,則信息選擇部13確定還具有下一端點信息 (S16為是)并重復執(zhí)行從步驟S12起的過程。在這一點上,信息選擇 部13從系統(tǒng)存儲器2讀出位于下一地址上的端點信息(S12)。以與 上述過程相似的方式執(zhí)行后面的過程。在另一方面,如果下一地址與 在列表地址中保存的地址相匹配,則信息選擇部13確定它已分析過所 有端點信息(S16為否)并迸入等待狀態(tài)(S17)。當更新保存在系統(tǒng) 存儲器2中的端點信息時,信息選擇部13接收更新通知(S17中的通 知)并重復執(zhí)行從步驟S12起的過程。特別地,信息選擇部13從運行 于主設備7上的驅動器軟件接收更新通知(PCI寄存器寫)。而且,信 息選擇部13在主控制器設備1斷電、通知發(fā)生了異常操作、或者發(fā)生 了類似情形(S17中的斷電'異常)時終止操作。hn于壬tfa卡:^、J女玄幼方/;扭祖,cb 6h+4ti1/1 rhMil 士n ^^ ^'l I /J >A4 , 'I、J xj、^U'l丁 IW"RtT "」 U.J "HD""iL'l丁 I^H T_LTT |頃l£i 11 丁o >H ,圖5示出根據在圖3中所示的端點信息由信息選擇部13分析和存儲端 點信息的結果的示例。信息選擇部13存儲與請求數(shù)據傳送的端點信息 數(shù)相同的地址數(shù),例如,以在存儲區(qū)14a中所示的方式。數(shù)據傳送部 15基于存儲在存儲區(qū)14中的系統(tǒng)存儲器2中的地址來執(zhí)行數(shù)據傳送。接下來,下面說明數(shù)據傳送部15的操作。圖6是示出數(shù)據傳送部 的操作示例的流程圖。在接收到信息選擇部13請求數(shù)據傳送的通知時, 數(shù)據傳送部15啟動初始化過程(S21)。例如,該初始化過程可以包 括計數(shù)器的初始化。隨后,數(shù)據傳送部15依次讀出存儲在存儲區(qū)14 中的地址(S22)。數(shù)據傳送部15根據讀出的地址從系統(tǒng)存儲器2中 讀出位于系統(tǒng)存儲器2中的端點信息(S23)。讀出端點信息的順序例 如通過由計數(shù)器或類似物指定系統(tǒng)存儲器2中地址的序號來確定。然 后,數(shù)據傳送部15執(zhí)行由端點信息請求的數(shù)據傳送(S24)。在這一 點上,數(shù)據傳送部15例如在預先確定的時間期間(其自身的傳送時間 期間)內執(zhí)行與系統(tǒng)存儲器2中的一個地址相對應的數(shù)據傳送。隨后, 如果由端點信息請求的數(shù)據傳送在該時間期間內未完成,則數(shù)據傳送 部15在下一次數(shù)據傳送中傳送剩下的數(shù)據。數(shù)據傳送部15接收用于數(shù)據傳送的握手(S25),并根據接收到 的握手的結果確定由該端點信息請求的數(shù)據傳送是否已完成(S26)。 如果數(shù)據傳送己完成(S26為是),則數(shù)據傳送部15從存儲區(qū)14中移 除該端點信息的地址(S27)。另一方面,如果數(shù)據傳送未完成(S26 為否),則數(shù)據傳送部15不執(zhí)行步驟S27中的過程。然后,數(shù)據傳送 部15將當前的數(shù)據傳送反映到在系統(tǒng)存儲器2中所存儲的端點信息 (S28)。數(shù)據傳送部15確定地址是否被存儲在存儲區(qū)14中。然后, 如果地址存儲在存儲區(qū)14中(S29為是),則數(shù)據傳送部15重復從步 驟S31開始的過程。如果在存儲區(qū)14中沒有存儲地址(S29為否), 則數(shù)據傳送部15終止該過程。如果數(shù)據傳送未完成,作為一個中間的步驟,系統(tǒng)存儲器2被更新。當計數(shù)器增加且再次指定了相同的地址口卄吉fr荒4P:ff/;^流inr的新抵/^;單 h j ,/jyii i& /jyi 乂 i ,n々'j i n j j/口 ■ ~c o例如,假定在圖6所示的操作示例中具有與在圖3C中示出的端點 信息相類似的有效端點信息,存儲區(qū)14存儲與M-2和H-2端點信息相 對應的系統(tǒng)存儲器2中的地址。在步驟S23中,數(shù)據傳送部15從系統(tǒng) 存儲器2中依次重復讀出M-2和H-2端點信息。此外,無論完成了與 M-2或H-2端點信息相對應的數(shù)據傳送中的哪一個,就重復讀出另一 個端點信息。在下面的說明中研究對系統(tǒng)存儲器2的訪問次數(shù)。首先,是以這 樣的方式執(zhí)行對系統(tǒng)存儲器2的訪問,即執(zhí)行從系統(tǒng)存儲器2讀出端 點信息的讀出操作的次數(shù)與所有端點信息的數(shù)目相同,以便信息選擇 部13能夠選擇有效端點信息。然而,在這些操作之后,只需訪問那些 有效端點信息。因此, 一旦主控制器設備1選擇了有效端點信息,它 不再需要依次讀出保存在系統(tǒng)存儲器2中的所有端點信息,并從而降 低了對系統(tǒng)存儲器2的訪問次數(shù)。正如到現(xiàn)在為止已說明的,通過選擇有效端點信息并在存儲區(qū)14 中存儲系統(tǒng)存儲器2中的地址,根據本發(fā)明的實施例能夠降低讀出無 效端點信息的次數(shù),其中系統(tǒng)存儲器2存儲了有效端點信息。結果, 提高了數(shù)據傳送效率。此外,由于與存儲端點信息自身的情形相比, 本實施例需要更少量的存儲空間來存儲系統(tǒng)存儲器2中的地址,它甚 至可應用于分配給主控制器設備的存儲量受限的場合。因此,期望將 本發(fā)明應用于更廣泛的應用范圍內。此外,本發(fā)明甚至能夠很容易地 應用到從從屬設備9的數(shù)據傳送量或數(shù)據傳送次數(shù)很大的場合,或者 應用到從屬設備9數(shù)目很大的場合。附帶地,在上述實施例中,盡管在存儲區(qū)14中存儲系統(tǒng)存儲器2 中的地址,也可以在存儲區(qū)14中臨時存儲端點信息自身。以這種方式,能夠在主控制器設備1中完成由有效端點信息請求的數(shù)據傳送,并從 而降低從系統(tǒng)存儲器2讀出有效端點信息的操作的次數(shù)。此外,通過只存儲與存儲區(qū)14中的數(shù)據傳送相關的有效端點信息部分,也能夠降 低對系統(tǒng)存儲器2的訪問次數(shù)。通過只存儲有效端點信息部分,與存 儲整個有效端點信息的情形相比,還能夠進一步減少所需要的存儲量。第二實施例作為第二個實施例,下文將描述一種情形,其中從位于系統(tǒng)存儲 器中的多個端點信息中選擇促成數(shù)據傳送的端點信息,并在主控制器 設備1內的存儲區(qū)14中存儲所選擇的端點信息作為有效端點信息。主 控制器設備1具有與在圖2中所示設備相似的結構。在下面的描述中, 主要說明發(fā)送/接收控制部16與第一實施例中的操作差異。信息選擇部13—般地按照圖4所示的流程圖進行操作,除了在歩 驟S15中它在系統(tǒng)存儲器2中除了存儲與有效端點信息對應的地址之 外還存儲有效端點信息本身。其它操作與第一實施例的操作相同。例 如,圖7示出了由信息選擇部13分析和存儲在圖3中所示的端點信息 的結果的示例。與圖5相對照,存儲區(qū)的示例被示為存儲區(qū)14b,該存 儲區(qū)存儲系統(tǒng)存儲器2中的地址,其中相應的端點信息與該端點信息 本身一起位于該地址上。接下來,下面說明數(shù)據傳送部15的操作。圖 8是示出依照本發(fā)明第二實施例的數(shù)據傳送的操作示例的流程圖。在圖 8中,與在圖6中的步驟具有相同步驟號的操作與在圖6中的步驟的操 作相同。首先,數(shù)據傳送部15執(zhí)行初始化過程(S21)。然后,數(shù)據 傳送部15依次讀出存儲在存儲區(qū)14中的端點信息(S31)。讀出端點 信息的順序例如通過由計數(shù)器或類似物指定端點信息的序號來確定。 然后,數(shù)據傳送部15執(zhí)行由端點信息請求的數(shù)據傳送(S24)。在單 個傳送中的傳送量與第一實施例的傳送量相同。在握手(S25)之后,數(shù)據傳送部15更新存儲在存儲區(qū)14中的端 點信息(S32)。例如,可以執(zhí)行這樣的或類似的過程從端點信息中移除與已傳送并握手的數(shù)據相關的信息,而不移除與需要被重復傳送 的數(shù)據相關的信息。此外,如果已完成由端點信息請求的數(shù)據傳送, 則從存儲區(qū)14移除該端點信息。此外,如果已完成由端點信息請求的數(shù)據傳送(S26為是),則數(shù)據傳送部15更新位于系統(tǒng)存儲器2中的 端點信息(S33)。數(shù)據傳送部15通過使用存儲在存儲區(qū)14中的系統(tǒng) 存儲器中的地址更新端點信息。如果未完成數(shù)據傳送(S26為否),則 數(shù)據傳送部15不執(zhí)行步驟S33的過程。接下來,如果在存儲區(qū)14中 存儲了端點信息(S34為是),則數(shù)據傳送部15重復從步驟S31起的 過程。如果在存儲區(qū)14中沒有存儲端點信息(S34為否),則數(shù)據傳 送部15終止過程。正如到現(xiàn)在為止已說明的,通過選擇有效端點信息并在存儲區(qū)14 中存儲它們,根據本發(fā)明的實施例能夠降低讀出無效端點信息的次數(shù)。 而且,由于在存儲區(qū)14中存儲了有效端點信息,因此能夠在主控制器 設備1中完成由該有效端點信息請求的數(shù)據傳送,并從而降低了從系 統(tǒng)存儲器2讀出有效端點信息的操作的次數(shù)。通過這種方式,提高了 數(shù)據傳送效率。正如到現(xiàn)在為止已說明的,通過在主控制器設備1內的存儲區(qū)14 中存儲系統(tǒng)存儲器2中的地址,其中該地址從存儲在系統(tǒng)存儲器2中 的端點信息中識別請求數(shù)據傳送的有效端點信息,根據本發(fā)明的至少 一個優(yōu)選實施例能夠減少對不促成數(shù)據傳送的無效端點信息的訪問次 數(shù)。通過在主控制器設備1內的存儲區(qū)中存儲有效端點信息,能夠進 一步減少對位于系統(tǒng)存儲器2中的有效端點信息的訪問次數(shù)。借助這 些特征,提高數(shù)據傳送效率是可以期待的。附帶地,應將上述在存儲區(qū)中存儲傳送請求信息的每個實施例中 的示例僅僅看作一個示例,而本發(fā)明并不局限于這些示例。此外,作 為傳送請求信息的存儲在存儲區(qū)14中的識別有效端點信息的信息的具 體示例,也應僅被作為示例看待??商娲?,代替上述信息或者除上述信息之外,減少對位于系統(tǒng)存儲器2中的端點信息的訪問次數(shù)的任 何信息都能使用。而且,可以將這樣的信息彼此結合起來使用。顯然,本發(fā)明并不局限于上述實施例,而可以在不脫離發(fā)明的范 圍和精神的前提下進行修改和改變。
權利要求
1.一種安裝在具有系統(tǒng)存儲器的與USB設備通信的主設備中的主控制器設備,包括信息選擇部,通過分析保存在所述系統(tǒng)存儲器中的多個端點信息,選擇請求數(shù)據傳送的端點信息;存儲區(qū),存儲系統(tǒng)存儲器中的至少一個地址,該至少一個地址識別由所述信息選擇部選擇的端點信息;以及數(shù)據傳送部,根據由存儲在所述存儲區(qū)中的系統(tǒng)存儲器中的至少一個地址所識別的所述端點信息,執(zhí)行所請求的數(shù)據傳送。
2. 依據權利要求1的主控制器設備,其中,所述數(shù)據傳送部持續(xù) 進行數(shù)據傳送,直至所傳送數(shù)據的量達到所請求數(shù)據傳送的數(shù)據量, 或者傳送時間達到其自身分配的傳送時間期間,并重復數(shù)據傳送,直 至完成由端點信息請求的數(shù)據傳送,所述端點信息由存儲在所述存儲 區(qū)中的系統(tǒng)存儲器中的地址所識別。
3. 依據權利要求2的主控制器設備,其中,所述存儲區(qū)在系統(tǒng)存 儲器中存儲多個地址;以及所述數(shù)據傳送部引用由系統(tǒng)存儲器中的所述多個地址識別的多個 端點信息,并重復數(shù)據傳送,直到所傳送數(shù)據的量基于所述多個端點 信息達到所述多個端點信息所請求的數(shù)據傳送的數(shù)據量。
4. 依據權利要求1的主控制器設備,其中,所述信息選擇部得到 保存在所述系統(tǒng)存儲器中的端點信息發(fā)生改變的通知,根據所述通知 按序分析保存在所述系統(tǒng)存儲器中的端點信息,并更新在所述存儲區(qū) 中存儲的系統(tǒng)存儲器中的地址。
5. 依據權利要求2的主控制器設備,其中,所述信息選擇部得到 保存在所述系統(tǒng)存儲器中的端點信息發(fā)生改變的通知,根據所述通知按序分析保存在所述系統(tǒng)存儲器中的端點信息,并更新在所述存儲區(qū) 中存儲的系統(tǒng)存儲器中的地址。
6. 依據權利要求3的主控制器設備,其中,所述信息選擇部得到 保存在所述系統(tǒng)存儲器中的端點信息發(fā)生改變的通知,根據所述通知 按序分析保存在所述系統(tǒng)存儲器中的端點信息,并更新在所述存儲區(qū) 中存儲的系統(tǒng)存儲器中的地址。
7. 依據權利要求1的主控制器設備,其中,在其自身分配的傳送 時間期間內數(shù)據傳送終止時,數(shù)據傳送部更新保存在所述系統(tǒng)存儲器 中的端點信息。
8. 依據權利要求2的主控制器設備,其中,在其自身分配的傳送 時間期間內數(shù)據傳送終止時,數(shù)據傳送部更新保存在所述系統(tǒng)存儲器 中的端點信息。
9. 依據權利要求3的主控制器設備,其中,在其自身分配的傳送 時間期間內數(shù)據傳送終止時,數(shù)據傳送部更新保存在所述系統(tǒng)存儲器 中的端點信息。
10. 依據權利要求4的主控制器設備,其中,在其自身分配的傳 送時間期間內數(shù)據傳送終止時,數(shù)據傳送部更新保存在所述系統(tǒng)存儲 器中的端點信息。
11. 依據權利要求1的主控制器設備,其中,所述存儲區(qū)除了存 儲所述系統(tǒng)存儲器中的地址之外,還存儲所選擇的端點信息。
12. 依據權利要求2的主控制器設備,其中,所述存儲區(qū)除了存 儲所述系統(tǒng)存儲器中的地址之外,還存儲所選擇的端點信息。
13. 依據權利要求3的主控制器設備,其中,所述存儲區(qū)除了存 儲所述系統(tǒng)存儲器中的地址之外,還存儲所選擇的端點信息。
14. 依據權利要求4的主控制器設備,其中,所述存儲區(qū)除了存 儲所述系統(tǒng)存儲器中的地址之外,還存儲所選擇的端點信息。
15. 依據權利要求1的主控制器設備,其中,數(shù)據傳送部從所述 存儲區(qū)移除系統(tǒng)存儲器中的地址,所述地址對應于已為其完成數(shù)據傳 送的端點信息。
16. 依據權利要求2的主控制器設備,其中,數(shù)據傳送部從所述 存儲區(qū)移除系統(tǒng)存儲器中的地址,所述地址對應于已為其完成數(shù)據傳 送的端點信息。
17. 依據權利要求3的主控制器設備,其中,數(shù)據傳送部從所述 存儲區(qū)移除系統(tǒng)存儲器中的地址,所述地址對應于己為其完成數(shù)據傳 送的端點信息。
18. 依據權利要求1的主控制器設備,其中,所述USB設備是無 線USB設備。
19. 一種主控制器設備的數(shù)據傳送控制方法,其中所述主控制設 備安裝在具有系統(tǒng)存儲器的與USB設備通信的主設備中傳送,所述方 法包括逐一讀出保存在所述系統(tǒng)存儲器中的多個端點信息; 通過分析所讀出的端點信息,選擇請求數(shù)據傳送的端點信息; 在存儲區(qū)中存儲識別所選擇端點信息的系統(tǒng)存儲器中的地址; 對于保存在所述系統(tǒng)存儲器中的所述多個端點信息的每一個,重復所述存儲步驟;并且根據存儲在所述存儲區(qū)中的系統(tǒng)存儲器中的至少一個地址執(zhí)行數(shù)據傳送。
全文摘要
在用于USB的主控制器設備中,由于必須相繼讀出端點信息的一個循環(huán),而該端點信息包括不促成數(shù)據傳送的端點信息,因而會不令人滿意地降低數(shù)據傳送效率。依照本發(fā)明的一個實施例,一種安裝在具有系統(tǒng)存儲器2的與USB設備通信的主設備中的主控制器設備包括信息選擇部13,通過分析保存在系統(tǒng)存儲器2中的多個端點信息,選擇請求數(shù)據傳送的端點信息;存儲區(qū)14,存儲在系統(tǒng)存儲器2中的至少一個地址,該至少一個地址識別所選擇的端點信息;以及數(shù)據傳送部15,基于由存儲在存儲區(qū)14中的系統(tǒng)存儲器2中的至少一個地址所識別的端點信息,執(zhí)行所請求的數(shù)據傳送。
文檔編號H04L12/40GK101409711SQ200810169918
公開日2009年4月15日 申請日期2008年10月9日 優(yōu)先權日2007年10月9日
發(fā)明者狩谷廣士 申請人:恩益禧電子股份有限公司