專利名稱:數(shù)據(jù)通信系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法。
背景技術(shù):
近來,已經(jīng)開發(fā)出了依照USB OTG(活動通用串行總線Universal SerialBus On-The-Go)規(guī)范可操作的USB數(shù)據(jù)通信裝置。在USB OTG規(guī)范中,在兩組直接相互連接的USB數(shù)據(jù)通信裝置之間,可以任意交換諸如“主”和“從”的USB母/子關(guān)系而不用改變電纜的連接。
圖8是用于示出傳統(tǒng)USB系統(tǒng)的示意性結(jié)構(gòu)的框圖,在該USB系統(tǒng)中,相連接的USB數(shù)據(jù)通信裝置(即,USB數(shù)據(jù)通信裝置600和620)能夠依照USBOTG規(guī)范進(jìn)行操作。在能夠依照USB OTG規(guī)范操作的USB系統(tǒng)中,當(dāng)裝置工作時(shí),首先插入了USB電纜的MINI-A插頭的裝置成為“主裝置(A-設(shè)備)”,而另一個(gè)首先插入了USB電纜的另一個(gè)MINI-B插頭的裝置成為“從裝置(B-設(shè)備)”。
接著,對采用上述結(jié)構(gòu)的USB系統(tǒng)的數(shù)據(jù)傳輸操作進(jìn)行描述。圖9是用于指示在可依據(jù)USB OTG規(guī)范操作的傳統(tǒng)USB系統(tǒng)中執(zhí)行的數(shù)據(jù)傳輸操作的順序操作的順序圖。在USB電纜的MIIN-A插頭被插入到USB數(shù)據(jù)通信裝置600的MINI-AB插座630,并且USB電纜的MIIN-B插頭被插入到USB數(shù)據(jù)通信裝置620的MINI-AB插座640的情況下,從而確定了“主”裝置和“從”裝置(步驟S600)。成為了主裝置的USB數(shù)據(jù)通信裝置600通過利用FP0來獲取作為從裝置的USB數(shù)據(jù)通信裝置620的裝置信息(諸如結(jié)構(gòu)、端點(diǎn)(下文中將稱為“EP”)、OTG、描述符等各種信息)(步驟S601)。結(jié)果,當(dāng)使用除了EP0之外的EP時(shí),在USB數(shù)據(jù)通信裝置之間開始數(shù)據(jù)傳輸操作(步驟S602)。
在USB數(shù)據(jù)通信期間,在“主”裝置和“從”裝置在USB通信裝置之間進(jìn)行轉(zhuǎn)換的情形中(步驟S610),在剛剛成為“主”裝置的USB數(shù)據(jù)通信裝置620獲取剛剛成為“從”裝置的USB數(shù)據(jù)通信裝置600的裝置信息之后(步驟S611),USB數(shù)據(jù)通信裝置620通過使用除了EP0之外的EP來開始數(shù)據(jù)傳輸操作(步驟S612)。結(jié)果,即使在“主”裝置和“從”裝置之間再次發(fā)生轉(zhuǎn)換操作(步驟S620),并且因此當(dāng)前的主/從關(guān)系返回到原始的主/從關(guān)系的情形中,USB數(shù)據(jù)通信裝置600再次從USB數(shù)據(jù)通信裝置620獲取裝置信息(步驟S621),從而,開始數(shù)據(jù)傳輸操作(步驟S622)。
應(yīng)當(dāng)理解,在USB OTG規(guī)范中,由于在USB總線已經(jīng)轉(zhuǎn)變成掛起狀態(tài)之后執(zhí)行主/從關(guān)系的轉(zhuǎn)換操作,每當(dāng)轉(zhuǎn)換主裝置和從裝置時(shí)產(chǎn)生掛起狀態(tài)。
另一方面,還提出了其它USB系統(tǒng)(例如,參見日本公開專利申請2001-256172(第5頁,圖1))。也就是,當(dāng)通過多個(gè)標(biāo)準(zhǔn)USB主機(jī)(即,僅配備有USB主機(jī)功能的裝置)和多個(gè)USB設(shè)備(即,僅配備有USB設(shè)備功能的裝置)配置USB系統(tǒng)時(shí),如果需要,正在被相應(yīng)的標(biāo)準(zhǔn)USB主機(jī)使用的USB設(shè)備可以被其它USB主機(jī)使用而不用轉(zhuǎn)換連接。即使在這樣的USB系統(tǒng)中,當(dāng)轉(zhuǎn)換了“主”裝置和“從”裝置時(shí),“主”裝置一邊的USB數(shù)據(jù)通信裝置從“從”裝置一邊的USB數(shù)據(jù)通信裝置獲取裝置信息,從而存在某些執(zhí)行上述的獲取裝置信息的重復(fù)操作的情況。
如前面所說明的,在傳統(tǒng)的USB系統(tǒng)中,每當(dāng)執(zhí)行主裝置和從裝置之間的轉(zhuǎn)換操作時(shí),由于主裝置一側(cè)的USB數(shù)據(jù)通信裝置獲取從裝置一側(cè)的USB數(shù)據(jù)通信裝置的裝置信息,因此在“主”裝置和“從”裝置頻繁地轉(zhuǎn)換的USB系統(tǒng)中執(zhí)行大量冗余操作(即,以重復(fù)方式執(zhí)行用于獲取裝置信息的操作)。
而且,在USB OTG規(guī)范中,存在這樣一個(gè)問題不能經(jīng)由標(biāo)準(zhǔn)集線器在數(shù)據(jù)傳輸操作中執(zhí)行主/從轉(zhuǎn)換操作。而且,當(dāng)轉(zhuǎn)換主裝置和從裝置時(shí),由于USB總線進(jìn)入掛起狀態(tài),存在不能執(zhí)行柔性設(shè)定操作的另一個(gè)問題。也就是,在柔性設(shè)定操作中,在任意時(shí)刻和/或與應(yīng)用程序同步地執(zhí)行主/從裝置轉(zhuǎn)換操作。
發(fā)明內(nèi)容
本發(fā)明的一個(gè)目的是提供一種數(shù)據(jù)通信方法,該方法能夠在選擇性地轉(zhuǎn)換主功能和從功能時(shí)解決上述問題。
根據(jù)本發(fā)明的數(shù)據(jù)通信方法的特征在于在能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法中,該USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法包括步驟以批處理方式或分開的方式來獲取關(guān)于所有連接到USB數(shù)據(jù)通信裝置的通信裝置的裝置信息。根據(jù)這一布置,以批處理方式或分開的方式來獲取關(guān)于所有連接到USB數(shù)據(jù)通信裝置的通信裝置的裝置信息。然后,保存所獲取的裝置信息,以便關(guān)于所述保存的裝置信息,主裝置側(cè)的USB數(shù)據(jù)通信裝置不需要在每一次轉(zhuǎn)換主裝置和從裝置時(shí),從從裝置側(cè)的USB數(shù)據(jù)通信裝置獲取裝置信息。
此外,數(shù)據(jù)通信方法還包括步驟向最近連接的USB數(shù)據(jù)通信裝置通知由USB數(shù)據(jù)通信裝置獲取的裝置信息。根據(jù)這一布置,所有以USB的樹結(jié)構(gòu)連接的USB數(shù)據(jù)通信裝置可以共用裝置信息。
根據(jù)本發(fā)明,上述的裝置信息包括在USB通信中使用的描述符。根據(jù)這一布置,即使主裝置側(cè)的USB數(shù)據(jù)通信裝置沒有獲取從裝置側(cè)的USB數(shù)據(jù)通信裝置的裝置信息,已經(jīng)轉(zhuǎn)換為主裝置的USB數(shù)據(jù)通信裝置可以通過使用由裝置信息保存的描述符(設(shè)備描述符、配置描述符、接口描述符、端點(diǎn)描述符等)與從裝置側(cè)的USB數(shù)據(jù)通信裝置通信。
根據(jù)本發(fā)明,上述裝置信息包括在USB通信中使用的設(shè)備地址。根據(jù)這一布置,即使主裝置側(cè)的USB數(shù)據(jù)通信裝置沒有使用USB標(biāo)準(zhǔn)請求,已經(jīng)轉(zhuǎn)換為主裝置的USB數(shù)據(jù)通信裝置可以通過使用在USB數(shù)據(jù)通信裝置之間共用的設(shè)備地址來使用設(shè)備地址的值,作為除了0之外的任何值。
此外,數(shù)據(jù)通信方法還包括步驟在USB數(shù)據(jù)通信完成之后,或者在USB電纜切斷之后,刪除裝置信息。根據(jù)這一結(jié)構(gòu),可以轉(zhuǎn)換主裝置或從裝置而不需要獲取裝置信息,直到USB數(shù)據(jù)通信完成,或者USB電纜被切斷。而且,在USB數(shù)據(jù)通信完成之后,或USB電纜切斷之后,刪除裝置信息,從而可以有效地利用存儲區(qū)域。
根據(jù)本發(fā)明的數(shù)據(jù)通信方法的特征在于在能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法中,該數(shù)據(jù)通信方法包括步驟將特定模式發(fā)送到連接到USB數(shù)據(jù)通信裝置的USB電纜的數(shù)據(jù)線上,以便獲取所述數(shù)據(jù)通信裝置的主功能的狀態(tài)或從功能的狀態(tài),以及請求主功能或從功能的轉(zhuǎn)換操作。而且,根據(jù)本發(fā)明的數(shù)據(jù)通信方法的特征在于在能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法中,該數(shù)據(jù)通信方法包括步驟獲取USB數(shù)據(jù)通信裝置的主功能的狀態(tài)或從功能的狀態(tài);以及通過除了USB數(shù)據(jù)通信以外的數(shù)據(jù)通信來請求主功能或從功能的轉(zhuǎn)換操作。根據(jù)這一布置,通過除了USB數(shù)據(jù)通信之外的數(shù)據(jù)通信或者通過USB電纜的數(shù)據(jù)線上的特定模式來執(zhí)行步驟獲取USB數(shù)據(jù)通信裝置的主功能的狀態(tài)或從功能的狀態(tài);以及請求主功能或從功能的轉(zhuǎn)換操作。結(jié)果,可以不經(jīng)過標(biāo)準(zhǔn)USB集線器而轉(zhuǎn)換主裝置或從裝置。
在本發(fā)明中,從從裝置側(cè)的USB數(shù)據(jù)通信裝置向主裝置側(cè)的USB數(shù)據(jù)通信裝置執(zhí)行獲取主功能或從功能的狀態(tài)以及請求主/從功能轉(zhuǎn)換的步驟。根據(jù)這一布置,可以在Vbus等的控制之下發(fā)出主裝置轉(zhuǎn)換請求或從裝置轉(zhuǎn)換請求,并且可以從所有的USB數(shù)據(jù)通信裝置進(jìn)行主裝置轉(zhuǎn)換請求或從裝置轉(zhuǎn)換請求。
而且,根據(jù)本發(fā)明的數(shù)據(jù)通信方法的特征在于在能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法中,該數(shù)據(jù)通信方法包括步驟以關(guān)于每個(gè)USB數(shù)據(jù)通信裝置所設(shè)定的順序轉(zhuǎn)換主功能或從功能,以便執(zhí)行數(shù)據(jù)通信。而且,數(shù)據(jù)通信方法還包括步驟動態(tài)地設(shè)定主功能或從功能的轉(zhuǎn)換操作。根據(jù)這一布置,由于能夠以任意設(shè)定的每個(gè)USB數(shù)據(jù)通信裝置的順序執(zhí)行主裝置轉(zhuǎn)換操作或從裝置轉(zhuǎn)換操作,可以在任意定時(shí)或與應(yīng)用程序同步地轉(zhuǎn)換主裝置或從裝置。
根據(jù)本發(fā)明,由于以批處理方式來獲取連接到USB數(shù)據(jù)通信裝置的所有通信裝置的裝置信息,因此只交換一次與USB數(shù)據(jù)通信操作有關(guān)的裝置信息,之后,主裝置側(cè)的USB數(shù)據(jù)通信裝置不需要在每一次轉(zhuǎn)換主裝置和從裝置時(shí)從從裝置側(cè)的USB數(shù)據(jù)通信裝置獲取裝置信息。結(jié)果,可以迅速地執(zhí)行主裝置或從裝置的轉(zhuǎn)換操作。
圖1是用于指示USB系統(tǒng)的示意性結(jié)構(gòu)的框圖。
圖2是用于示出USB數(shù)據(jù)通信裝置的內(nèi)部結(jié)構(gòu)的框圖。
圖3是用于示出數(shù)據(jù)傳輸操作的順序操作的順序圖。
圖4是用于示出USB數(shù)據(jù)通信裝置的內(nèi)部結(jié)構(gòu)的框圖。
圖5是用于示出USB數(shù)據(jù)通信裝置的內(nèi)部結(jié)構(gòu)的框圖。
圖6是用于示出USB數(shù)據(jù)通信裝置的內(nèi)部結(jié)構(gòu)的框圖。
圖7是用于指示在USB數(shù)據(jù)通信裝置的三個(gè)位置提供的每個(gè)USB單元的內(nèi)部結(jié)構(gòu)的框圖。
圖8是用于指示連接了可依照USB OTG規(guī)范操作的USB數(shù)據(jù)通信的傳統(tǒng)USB系統(tǒng)的示意性結(jié)構(gòu)的框圖。
圖9是用于指示在可依照USB OTG規(guī)范操作的傳統(tǒng)USB系統(tǒng)中執(zhí)行的數(shù)據(jù)傳輸操作順序的順序圖。
具體實(shí)施例方式
(實(shí)施方式1)圖1是用于示出根據(jù)本發(fā)明的實(shí)施方式1的、用于執(zhí)行數(shù)據(jù)通信操作的USB系統(tǒng)的示意性結(jié)構(gòu)的框圖。通過USB數(shù)據(jù)通信裝置100和120以及USB電纜110來配置USB系統(tǒng)。USB電纜110連接到USB數(shù)據(jù)通信裝置100和120。USB系統(tǒng)通過采用USB協(xié)議來執(zhí)行USB數(shù)據(jù)通信操作。在各個(gè)USB數(shù)據(jù)通信裝置100和120中,提供用于連接USB電纜110的MINI-AB插座130和140。插入了MINI-A插頭的USB數(shù)據(jù)通信裝置構(gòu)成主裝置(A-設(shè)備),而插入了MINI-B插頭的另一個(gè)USB數(shù)據(jù)通信裝置構(gòu)成從裝置(B-設(shè)備)。
圖2是用于指示USB數(shù)據(jù)通信裝置200的內(nèi)部結(jié)構(gòu)的框圖。USB數(shù)據(jù)通信裝置200配備有CPU(中央處理單元)單元210、存儲介質(zhì)220、用于連接USB數(shù)據(jù)通信裝置200的各個(gè)單元的系統(tǒng)總線230、USB單元240、和包含上述MINI-AB插座的USB端口250。
CPU單元210對應(yīng)于用于控制USB數(shù)據(jù)通信裝置200整個(gè)單元的方框。存儲介質(zhì)220對應(yīng)于一個(gè)存儲器,該存儲器具有用于在其中存儲程序的區(qū)域,和由該程序使用的可重寫區(qū)域,并包含用于在其中存儲通信相對方的裝置信息的存儲區(qū)域225。
USB單元240進(jìn)一步由主機(jī)241、設(shè)備242和USB控制單元243組成。在USB通信中,主機(jī)241起主裝置的作用,設(shè)備242起從裝置的作用。USB總線控制單元243管理和控制USB總線信號(數(shù)據(jù)線D+/D-、Vbus、和USB電纜的標(biāo)識線)的狀態(tài)。由主機(jī)241或設(shè)備242來執(zhí)行USB數(shù)據(jù)分組的發(fā)送/接收操作。需要經(jīng)由USB總線控制單元243來執(zhí)行USB數(shù)據(jù)分組向數(shù)據(jù)線的輸出操作。而且,USB總線控制單元243對于使用主機(jī)241和設(shè)備242中的任何一個(gè)進(jìn)行管理。關(guān)于發(fā)送/接收操作,在主機(jī)241或設(shè)備242的控制下USB總線控制單元243管理方向。
在USB數(shù)據(jù)通信裝置200首先作為“主”裝置工作的情形中,用作“從”裝置的USB數(shù)據(jù)通信裝置的裝置信息存儲在通信相對方的裝置信息存儲區(qū)域225中。關(guān)于USB裝置的連接,由于這些USB裝置在樹形狀態(tài)下相互連接,同時(shí)“主”裝置位于裝置連接的中心,所以關(guān)于將要連接的裝置的所有裝置信息存儲在“主”裝置的USB數(shù)據(jù)通信裝置200中。已經(jīng)被存儲的裝置信息可以作為“主”裝置的USB數(shù)據(jù)通信裝置的裝置信息通知給連接到將通過USB電纜連接的“從”裝置方的USB數(shù)據(jù)通信裝置的另一個(gè)“從”裝置方USB數(shù)據(jù)通信裝置。
在USB數(shù)據(jù)通信裝置200首先作為“從”裝置工作的情形中,將作為“主”裝置的USB數(shù)據(jù)通信裝置的裝置信息存儲在通信相對方的裝置信息存儲區(qū)域225中。應(yīng)當(dāng)理解,盡管通過USB數(shù)據(jù)傳輸操作將裝置信息傳輸?shù)綇难b置的USB數(shù)據(jù)通信裝置,所述裝置信息可以通過另一種通信手段(將在下面討論)來傳輸。由于將裝置信息通知給“從”裝置的USB數(shù)據(jù)通信裝置,因此交換已經(jīng)經(jīng)由USB電纜相互連接的裝置的裝置信息,從而可以在USB數(shù)據(jù)通信裝置之間共享裝置信息。而且,當(dāng)“從”裝置的USB數(shù)據(jù)通信裝置轉(zhuǎn)換為“主”裝置時(shí),可以通過利用所存儲的裝置信息執(zhí)行數(shù)據(jù)通信操作。
圖3是用于指示數(shù)據(jù)傳輸操作的順序操作的順序圖。當(dāng)USB電纜110的MINI-A插頭被插入到USB數(shù)據(jù)通信裝置100,USB電纜110的MINI-B插頭被插入到USB數(shù)據(jù)通信裝置120時(shí),“主”裝置和“從”裝置兩者都被確定(步驟S100)。換句話說,設(shè)定下面的狀態(tài),即在USB數(shù)據(jù)通信裝置100的USB單元240中,主機(jī)241可以起作用;而在USB數(shù)據(jù)通信裝置120的USB單元240中,設(shè)備242可以起作用。成為“主”裝置的USB數(shù)據(jù)通信裝置100通過采用EP0來獲取作為“從”裝置的USB數(shù)據(jù)通信裝置120的裝置信息(設(shè)備、結(jié)構(gòu)、接口、端點(diǎn)、OTG、描述符等)(步驟S101)。此外,“主”裝置的USB數(shù)據(jù)通信裝置100將自身裝置的裝置信息通報(bào)給“從”裝置的USB數(shù)據(jù)通信裝置120(步驟S102)。在交換了上述的裝置信息之后,USB數(shù)據(jù)通信裝置100和120兩者都進(jìn)入下述狀態(tài)可以通過使用除了EP0之外的EP來執(zhí)行這些USB數(shù)據(jù)通信裝置100和120之間的數(shù)據(jù)傳輸操作(步驟S103)。
由于已經(jīng)保存了構(gòu)成通信相對方的USB數(shù)據(jù)通信裝置的裝置信息,因此即使當(dāng)在USB數(shù)據(jù)通信裝置期間執(zhí)行主/從裝置之間的轉(zhuǎn)換操作(步驟S110和步驟S120),成為主裝置的USB數(shù)據(jù)通信裝置可以開始數(shù)據(jù)傳輸操作,同時(shí)這一“主”USB數(shù)據(jù)通信裝置省略用于獲取“從”USB數(shù)據(jù)通信裝置的裝置信息的操作(步驟S111和S121)。
還應(yīng)當(dāng)理解,在將“主”USB數(shù)據(jù)通信裝置的裝置信息通知給“從”USB數(shù)據(jù)通信裝置的步驟(即,步驟S102)中,由于通知了關(guān)于在數(shù)據(jù)傳輸操作中使用的設(shè)備地址的信息,“主”USB數(shù)據(jù)通信裝置在隨后的步驟(即,步驟S111和步驟S121)中通過使用所通知的設(shè)備地址來執(zhí)行數(shù)據(jù)傳輸操作。結(jié)果,當(dāng)采用標(biāo)準(zhǔn)請求SetAddress時(shí),可以省略用于將設(shè)備地址改變?yōu)槌恕?”以外的任何地址的順序操作(USB標(biāo)準(zhǔn))。此外,由于隨后使用除了EP0之外的EP,當(dāng)采用標(biāo)準(zhǔn)請求SetConfiguration時(shí),可以省略用于將配置值改變?yōu)槌恕?”以外的任何值的順序操作。這一理由如下所述。也就是,由于“主”USB通信裝置已經(jīng)獲取“主”USB通信裝置的裝置信息,當(dāng)執(zhí)行主裝置和從裝置之間的轉(zhuǎn)換操作時(shí),可以在USB數(shù)據(jù)通信裝置之間執(zhí)行將配置值用作除了“0”以外的任意值的協(xié)商。結(jié)果,可以轉(zhuǎn)換主裝置和從裝置。
現(xiàn)在,將描述經(jīng)由數(shù)據(jù)線傳輸?shù)奶囟J?。在USB數(shù)據(jù)通信裝置200中,CPU單元210控制USB單元240,以便發(fā)送/接收符合USB標(biāo)準(zhǔn)的USB數(shù)據(jù)分組。當(dāng)接收到USB數(shù)據(jù)分組時(shí),USB單元240向CPU單元210通知數(shù)據(jù)接收,之后,CPU 210分析接收到的數(shù)據(jù)分組。當(dāng)USB數(shù)據(jù)通信裝置200對應(yīng)于主裝置時(shí),USB單元240使主機(jī)241活動;而當(dāng)USB數(shù)據(jù)通信裝置200對應(yīng)于從裝置時(shí),USB單元240使設(shè)備242活動,隨后開始USB數(shù)據(jù)分組的發(fā)送/接收操作。
USB總線控制單元243檢測到USB數(shù)據(jù)線(D+/D-)變成雙“H”(注意雙“H“是未通過USB標(biāo)準(zhǔn)定義的模式),隨后,可以向CPU單元210通知這一檢測。響應(yīng)于由CPU單元210發(fā)出的請求,USB總線控制單元243輸出USB數(shù)據(jù)線(D+/D-)的雙“H”模式。如前所述,當(dāng)采用經(jīng)由USB電纜的數(shù)據(jù)線(D+/D-)傳輸?shù)奶囟J綍r(shí),可以定義指示USB數(shù)據(jù)通信結(jié)束的協(xié)議,可以定義用于將Vbus從“H”改變?yōu)椤癓”的協(xié)議,還可以在USB數(shù)據(jù)通信裝置之間定義用于請求/通知主裝置和從裝置之間的轉(zhuǎn)換操作的協(xié)議。
另一方面,由于USB信號的Vbus從“H”改變?yōu)椤癓”,標(biāo)識線從“L”改變?yōu)椤癏”,USB總線控制單元243檢測USB電纜的切斷。當(dāng)USB總線控制單元243檢測到USB電纜的切斷時(shí),USB總線控制單元243向CPU單元210通知USB電纜的切斷,隨后,CPU單元210執(zhí)行切斷處理操作。作為切斷處理操作之一,打開裝置信息存儲區(qū)域225,在該存儲區(qū)域225中已經(jīng)存儲了作為通信相對方的USB數(shù)據(jù)通信裝置的裝置信息。由于USB電纜被切斷而變得不必要的裝置信息被刪除,開放了存儲區(qū)域22,僅在這一存儲區(qū)域225中存儲需要的裝置信息,從而可以節(jié)省存儲介質(zhì)220的存儲容量。
(實(shí)施方式2)根據(jù)本發(fā)明實(shí)施方式2的USB系統(tǒng)的結(jié)構(gòu)與實(shí)施方式1的圖1中所示的結(jié)構(gòu)相同,即,是由經(jīng)由USB電纜相互連接的USB數(shù)據(jù)通信裝置形成的。圖4是用于示出在根據(jù)本發(fā)明的實(shí)施方式2的USB系統(tǒng)中采用的USB數(shù)據(jù)通信裝置300的內(nèi)部結(jié)構(gòu)的框圖。與實(shí)施方式1中的USB系統(tǒng)的USB數(shù)據(jù)通信裝置200(參見圖2)相比,通過額外地提供通信裝置360來配置這一USB數(shù)據(jù)通信裝置300。
通信裝置360對應(yīng)于起到除了將要相互連接的USB數(shù)據(jù)通信裝置之間的USB通信之外的通信部件的方框,即對應(yīng)于能夠執(zhí)行串行通信、藍(lán)牙(商標(biāo))、并行通信等的這種裝置。除了USB數(shù)據(jù)傳輸操作之外,USB數(shù)據(jù)通信裝置300經(jīng)由通過CPU單元310控制的通信裝置360對將要與其相連接的USB數(shù)據(jù)通信裝置執(zhí)行數(shù)據(jù)傳輸操作。應(yīng)當(dāng)理解,由于可以在除了USB數(shù)據(jù)傳輸操作之外的這一數(shù)據(jù)傳輸操作中交換裝置信息,即使通信相對方的裝置信息不存儲在存儲介質(zhì)320中,作為選擇,USB數(shù)據(jù)通信裝置300可以下述方式來配置如果需要,經(jīng)由通信裝置360從通信相對方獲取裝置信息。
而且,當(dāng)通信裝置360在發(fā)送/接收操作中檢測到某種特定模式時(shí),通信裝置360不經(jīng)由CPU 310而控制USB總線控制單元343,以便轉(zhuǎn)換USB數(shù)據(jù)通信裝置300的主/從功能。
此外,由于通信裝置360確定一個(gè)協(xié)議,因此除了用于轉(zhuǎn)換USB數(shù)據(jù)通信裝置300的主/從功能的控制操作之外,通信裝置360可以執(zhí)行Vbus的控制操作、用于通知主裝置的狀態(tài)或從裝置的狀態(tài)的控制操作。例如,如果在USB數(shù)據(jù)通信裝置之間定義一種當(dāng)在串行傳輸操作中檢測到“0xFF”時(shí),轉(zhuǎn)換主/從功能的協(xié)議,則可以執(zhí)行各種控制操作。也就是說,如果定義了指示USB數(shù)據(jù)通信結(jié)束的協(xié)議;定義了用于將Vbus從“H”改變?yōu)椤癓”的協(xié)議;并定義了能夠定義主/從功能的轉(zhuǎn)換請求通知的協(xié)議,則可以執(zhí)行各種控制操作。
(實(shí)施方式3)根據(jù)本發(fā)明實(shí)施方式3的USB系統(tǒng)的結(jié)構(gòu)與實(shí)施方式1的圖1中所示的結(jié)構(gòu)相同,即,是由經(jīng)由USB電纜相互連接USB數(shù)據(jù)通信裝置形成的。圖5是用于示出在根據(jù)本發(fā)明的實(shí)施方式3的USB系統(tǒng)中采用的USB數(shù)據(jù)通信裝置400的內(nèi)部結(jié)構(gòu)的框圖。與實(shí)施方式1中的USB系統(tǒng)的USB數(shù)據(jù)通信裝置200(參見圖2)相比,通過額外地提供USB總線控制計(jì)時(shí)器460來配置這一USB數(shù)據(jù)通信裝置400。
USB總線控制計(jì)時(shí)器460管理USB數(shù)據(jù)通信裝置400作為主裝置或從裝置進(jìn)行工作的時(shí)間。CPU單元410可以進(jìn)行調(diào)度,以便關(guān)于USB總線控制計(jì)時(shí)器460任意地設(shè)定主裝置的時(shí)間和從裝置的時(shí)間。USB總線控制計(jì)時(shí)器460基于SOF(1兆秒)對USB單元440的發(fā)送/接收進(jìn)行計(jì)時(shí)。當(dāng)USB數(shù)據(jù)通信裝置400使得主機(jī)441活動時(shí),USB總線控制計(jì)時(shí)器460計(jì)數(shù)主裝置的時(shí)間;而當(dāng)USB數(shù)據(jù)通信裝置400使得設(shè)備442活動時(shí),USB總線控制計(jì)時(shí)器460計(jì)數(shù)主裝置的時(shí)間。在計(jì)數(shù)操作期間,CPU單元410可以交替地改變設(shè)定條件。
當(dāng)USB總線控制計(jì)時(shí)器460對SOF計(jì)數(shù)了設(shè)定的時(shí)間時(shí),USB總線控制計(jì)時(shí)器460控制USB單元440,以便轉(zhuǎn)換USB數(shù)據(jù)通信裝置400的主裝置狀態(tài)或從裝置狀態(tài)。在USB總線控制計(jì)時(shí)器460在比由USB標(biāo)準(zhǔn)定義的時(shí)間要長的時(shí)間內(nèi)無法檢測到SOF的情形中,由USB總線控制計(jì)時(shí)器460擁有的內(nèi)部計(jì)時(shí)器檢測到SOF超時(shí),并且USB總線控制計(jì)時(shí)器460計(jì)數(shù)。結(jié)果,可以在將被相互連接的USB數(shù)據(jù)通信裝置之間共用與USB數(shù)據(jù)通信裝置的主裝置狀態(tài)或從裝置狀態(tài)有關(guān)的信息,并且各個(gè)USB數(shù)據(jù)通信裝置可以相互同步地轉(zhuǎn)換主/從功能。換句話說,“主”USB數(shù)據(jù)通信裝置轉(zhuǎn)換成“從”USB數(shù)據(jù)通信裝置的轉(zhuǎn)換操作以及“從”USB數(shù)據(jù)通信裝置轉(zhuǎn)換成“主”USB數(shù)據(jù)通信裝置的轉(zhuǎn)換操作可以同時(shí)執(zhí)行。
而且,在根據(jù)USB OTG規(guī)范操作的USB數(shù)據(jù)通信裝置中,由于執(zhí)行了在USB OTG規(guī)范中規(guī)定的協(xié)商協(xié)議,因此可以容易地執(zhí)行主/從轉(zhuǎn)換操作。
(實(shí)施方式4)根據(jù)本發(fā)明實(shí)施方式4的USB系統(tǒng)的示意性結(jié)構(gòu)與實(shí)施方式1的圖1中所示的結(jié)構(gòu)相同,即,基本上是由經(jīng)由USB電纜相互連接USB數(shù)據(jù)通信裝置形成的。圖6是用于示出在根據(jù)本發(fā)明的實(shí)施方式4的USB系統(tǒng)中采用的USB數(shù)據(jù)通信裝置500的內(nèi)部結(jié)構(gòu)的框圖。該USB數(shù)據(jù)通信裝置500主要配置了三組USB單元510、511、512;USB數(shù)據(jù)裝置連接管理單元520;CPU單元525;USB數(shù)據(jù)線530;系統(tǒng)總線535等等。
USB數(shù)據(jù)裝置連接管理單元520管理通信相對方裝置的種類(標(biāo)準(zhǔn)主機(jī)、標(biāo)準(zhǔn)設(shè)備、可以在USB OTG規(guī)范下操作的裝置、本發(fā)明的USB數(shù)據(jù)通信裝置等);當(dāng)前的通信相對方裝置;自身裝置(USB數(shù)據(jù)通信裝置500)的狀態(tài)(主裝置或從裝置功能);USB信號線與USB單元510、511、512中的每一個(gè)之間的連接等等。
圖7是用于指示根據(jù)本發(fā)明的實(shí)施方式4、在USB系統(tǒng)的USB數(shù)據(jù)通信裝置500的三個(gè)位置提供的USB單元510、511、512之一的內(nèi)部結(jié)構(gòu)的框圖。USB總線單元由主機(jī)551、設(shè)備552、USB狀態(tài)控制單元553和USB總線控制單元554構(gòu)成。
USB總線控制單元554管理主機(jī)551或設(shè)備552經(jīng)由USB數(shù)據(jù)線530發(fā)送和接收USB數(shù)據(jù)分組。當(dāng)在USB數(shù)據(jù)通信裝置500中采用的USB單元510、511、512中的每一個(gè)連接到USB數(shù)據(jù)線530,以便與外部USB數(shù)據(jù)通信裝置通信時(shí),在USB數(shù)據(jù)通信裝置500中采用的USB單元510、511、512中的任一個(gè)的主機(jī)551或設(shè)備552控制USB總線控制單元544。然后,連接到主機(jī)551和設(shè)備552中的任一個(gè)的USB總線控制單元544控制剩余USB單元的USB總線控制單元554,并且在剩余USB單元中提供的主機(jī)551和設(shè)備552不運(yùn)行。結(jié)果,可以實(shí)現(xiàn)標(biāo)準(zhǔn)USB集線器的功能。USB狀態(tài)管理單元553管理USB單元550的狀態(tài)(主裝置或從裝置狀態(tài))。
接著,描述在標(biāo)準(zhǔn)主機(jī)、標(biāo)準(zhǔn)設(shè)備、可以在USB OTG規(guī)范下操作的裝置、以及USB數(shù)據(jù)通信裝置都連接到上述的USB數(shù)據(jù)通信裝置500的情況中的操作。
在標(biāo)準(zhǔn)主機(jī)連接到USB數(shù)據(jù)通信裝置500的情況中,USB單元550向USB數(shù)據(jù)裝置連接管理單元520登記信息,并向CPU單元525通知登記的消息。CPU單元525通過采用USB單元550的設(shè)備552執(zhí)行與標(biāo)準(zhǔn)主機(jī)的數(shù)據(jù)通信,并確定標(biāo)準(zhǔn)主機(jī)的連接調(diào)度。之后,CPU單元525向USB數(shù)據(jù)裝置連接管理單元520登記信息,并控制USB單元550的設(shè)備552,以便執(zhí)行數(shù)據(jù)通信。在標(biāo)準(zhǔn)主機(jī)可以作為“主”裝置操作的情形中,USB數(shù)據(jù)裝置連接管理單元520將USB單元550連接到USB數(shù)據(jù)線530。結(jié)果,CPU單元525可以和另外與其相連接的USB裝置執(zhí)行數(shù)據(jù)通信操作。在用作主裝置的標(biāo)準(zhǔn)主機(jī)返回成為從裝置時(shí),USB數(shù)據(jù)裝置連接管理單元520切斷USB數(shù)據(jù)線530。結(jié)果,從裝置被布置為通過控制USB單元550的設(shè)備552來執(zhí)行數(shù)據(jù)通信,并且因此由CPU單元525來管理。
在標(biāo)準(zhǔn)設(shè)備連接到USB數(shù)據(jù)通信裝置500的情況中,USB單元550向USB數(shù)據(jù)裝置連接管理單元520登記信息,并向CPU單元525通知登記的消息。當(dāng)存在主裝置時(shí),USB數(shù)據(jù)裝置連接管理單元520將相關(guān)USB單元550連接到USB數(shù)據(jù)線530,而當(dāng)不存在主裝置時(shí),USB數(shù)據(jù)裝置連接管理單元520切斷相關(guān)USB單元550和USB數(shù)據(jù)線530之間的連接。
在可以在USB OTG規(guī)范下操作的裝置連接到USB數(shù)據(jù)通信裝置500的情形中,USB單元550向USB數(shù)據(jù)裝置連接管理單元520登記信息,并將登記的信息通知給CPU單元525。CPU單元525將主裝置的狀態(tài)或者從裝置的狀態(tài)通知給USB數(shù)據(jù)裝置連接管理單元520。當(dāng)上述的USB OTG規(guī)范裝置可連接到USB數(shù)據(jù)通信裝置500時(shí),USB數(shù)據(jù)裝置連接管理單元520將USB單元550連接到USB數(shù)據(jù)線530。而且,在USB OTG規(guī)范裝置不能通過外部USB裝置連接到USB數(shù)據(jù)線530的情形中,USB狀態(tài)管理單元553執(zhí)行由OTG規(guī)范定義的主機(jī)協(xié)商協(xié)議,并轉(zhuǎn)換連接到USB數(shù)據(jù)通信裝置500的USB數(shù)據(jù)通信裝置的主裝置狀態(tài)或者從裝置狀態(tài)。在轉(zhuǎn)換了主/從狀態(tài)之后,USB狀態(tài)管理單元553向CPU單元525通知這一狀態(tài)轉(zhuǎn)換操作。CPU單元525向USB數(shù)據(jù)裝置連接管理單元520登記所通知的狀態(tài)轉(zhuǎn)換操作,隨后,USB單元550在USB數(shù)據(jù)裝置連接管理單元520的管理下連接到USB數(shù)據(jù)線530。
當(dāng)在USB數(shù)據(jù)通信裝置之間轉(zhuǎn)換了主/從功能時(shí),USB數(shù)據(jù)裝置連接管理單元520從USB數(shù)據(jù)線530切斷USB OTG規(guī)范裝置與之相連的USB單元。CPU單元525從USB單元初始化(即,連接條件)OTG規(guī)范裝置,并向USB數(shù)據(jù)裝置連接管理單元520通知這一初始化。
在本發(fā)明的USB數(shù)據(jù)通信裝置連接到USB數(shù)據(jù)通信裝置500的情形中,USB單元550向USB數(shù)據(jù)裝置連接管理單元520登記信息,并向CPU單元525通知登記的信息。CPU單元525確定調(diào)度,然后向USB數(shù)據(jù)裝置連接管理單元520登記所確定的調(diào)度。之后,當(dāng)在USB數(shù)據(jù)裝置連接管理單元520的管理下轉(zhuǎn)換主/從裝置時(shí),USB數(shù)據(jù)通信裝置520執(zhí)行數(shù)據(jù)傳輸操作,直到切斷了USB電纜。
如前所述,即使在連接有3組或更多組USB數(shù)據(jù)通信裝置的USB系統(tǒng)中,也可以轉(zhuǎn)換主裝置和從裝置。由于可以在USB數(shù)據(jù)通信裝置中連接傳統(tǒng)的USB裝置(僅僅是主裝置,或僅僅是從裝置),因此可以利用本發(fā)明的USB數(shù)據(jù)通信裝置而不需限定應(yīng)用。
本發(fā)明的數(shù)據(jù)通信方法具有下面的效果。即,由于以批處理方式獲取所有連接到USB數(shù)據(jù)通信裝置的通信裝置的裝置信息,因此僅交換一次與USB數(shù)據(jù)通信操作有關(guān)的裝置信息,之后,每當(dāng)轉(zhuǎn)換主裝置和從裝置時(shí),主裝置側(cè)的USB數(shù)據(jù)通信裝置不需要從在從裝置側(cè)的USB數(shù)據(jù)通信裝置獲取裝置信息。結(jié)果,可以迅速地執(zhí)行主裝置或從裝置的轉(zhuǎn)換操作。可以有效地將本發(fā)明的數(shù)據(jù)通信方法用作可以選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信技術(shù)。
權(quán)利要求
1.一種能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法,包括步驟以批處理方式或分開的方式來獲取關(guān)于所有通信裝置的裝置信息,所述所有通信裝置連接到USB數(shù)據(jù)通信裝置。
2.如權(quán)利要求1所述的數(shù)據(jù)通信方法,還包括步驟向最近連接的USB數(shù)據(jù)通信裝置通知由USB數(shù)據(jù)通信裝置獲取的裝置信息。
3.如權(quán)利要求1所述的數(shù)據(jù)通信方法,其中裝置信息包括在USB通信中使用的描述符。
4.如權(quán)利要求1所述的數(shù)據(jù)通信方法,裝置信息包括在USB通信中使用的設(shè)備地址。
5.如權(quán)利要求1所述的數(shù)據(jù)通信方法,還包括步驟在USB數(shù)據(jù)通信完成之后,或者在USB電纜切斷之后,刪除裝置信息。
6.一種能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法,包括步驟將特定模式發(fā)送到連接到USB數(shù)據(jù)通信裝置的USB電纜的數(shù)據(jù)線上,以便獲取所述USB數(shù)據(jù)通信裝置的主功能的狀態(tài)或從功能的狀態(tài),以及請求主功能或從功能的轉(zhuǎn)換操作。
7.一種能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法,包括步驟獲取USB數(shù)據(jù)通信裝置的主功能的狀態(tài)或從功能的狀態(tài);通過除了USB數(shù)據(jù)通信以外的數(shù)據(jù)通信來請求主功能或從功能的轉(zhuǎn)換操作。
8.如權(quán)利要求6或權(quán)利要求7所述的數(shù)據(jù)通信方法,其中從從裝置側(cè)的USB數(shù)據(jù)通信裝置向主裝置側(cè)的USB數(shù)據(jù)通信裝置執(zhí)行獲取主功能或從功能的狀態(tài)以及請求主/從功能轉(zhuǎn)換的操作。
9.一種能夠選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置的數(shù)據(jù)通信方法,包括步驟以關(guān)于每個(gè)USB數(shù)據(jù)通信裝置所設(shè)定的順序轉(zhuǎn)換主功能或從功能,以便執(zhí)行數(shù)據(jù)通信。
10.如權(quán)利要求9所述的數(shù)據(jù)通信方法,還包括步驟動態(tài)地設(shè)定主功能或從功能的轉(zhuǎn)換操作。
11.一種USB數(shù)據(jù)通信裝置,包括控制部件,用于執(zhí)行如權(quán)利要求1到權(quán)利要求10中的任一項(xiàng)所述的數(shù)據(jù)通信方法中所述的步驟。
12.一種集成電路,包括如權(quán)利要求11所述的控制部件。
13.一種程序,用于使得計(jì)算機(jī)執(zhí)行如權(quán)利要求1到權(quán)利要求10中的任一項(xiàng)所述的數(shù)據(jù)通信方法中所述的步驟。
14.一種計(jì)算機(jī)可讀存儲介質(zhì),其中在該存儲介質(zhì)中存儲了如權(quán)利要求13所述的程序。
全文摘要
以批處理方式在存儲區(qū)域225中獲取關(guān)于所有通信裝置的裝置信息,所述所有通信裝置連接到選擇性地轉(zhuǎn)換主功能和從功能的USB數(shù)據(jù)通信裝置200。
文檔編號G06F13/42GK1648888SQ20051000633
公開日2005年8月3日 申請日期2005年1月26日 優(yōu)先權(quán)日2004年1月26日
發(fā)明者坂木清治, 今久留主尚孝 申請人:松下電器產(chǎn)業(yè)株式會社