專(zhuān)利名稱(chēng):通用串行總線usb通信的裝置和方法
通用串行總線USB通信的裝置和方法技術(shù)領(lǐng)域
本發(fā)明的實(shí)施方式提供了一種通用串行總線USB通信的裝置和方法。
背景技術(shù):
一般地,在通用串行總線USB連接的第一端(在主機(jī)處),通信源于或針對(duì)在通用計(jì)算機(jī)上作為軟件運(yùn)行的諸如所謂的軟電話、音頻播放器和/或錄音機(jī)的客戶(hù)端應(yīng)用程序, 或者諸如運(yùn)行在諸如照相機(jī)的專(zhuān)用裝置以控制打印機(jī)的客戶(hù)端程序。在USB連接的另一端 (在裝置處),通信源于或針對(duì)諸如提供輸入來(lái)自麥克風(fēng)的音頻數(shù)據(jù)和/或輸出音頻數(shù)據(jù)到揚(yáng)聲器的音頻功能的特定功能。通常地,通用計(jì)算機(jī)具有用于與USB裝置進(jìn)行通信的USB 功能,并且計(jì)算機(jī)用作USB主機(jī),裝置連接至其作為USB裝置。
在被連接到USB主機(jī)之前,USB裝置必須由USB主機(jī)來(lái)配置。該裝置被配置為屬于特定類(lèi)的裝置。它遵循USB規(guī)范,S卩,客戶(hù)端應(yīng)用程序通常在同一時(shí)間僅列舉一個(gè)同一類(lèi)的裝置。因此,客戶(hù)端應(yīng)用程序不能夠同時(shí)與同一類(lèi)的兩個(gè)裝置進(jìn)行通信。
USB裝置的一個(gè)類(lèi)是音頻類(lèi),包括諸如麥克風(fēng)、揚(yáng)聲器、聲卡、耳機(jī)和樂(lè)器的物理裝置。該類(lèi)裝置被配置為傳輸音頻數(shù)據(jù)并可選地傳輸來(lái)自裝置的用戶(hù)接口的狀態(tài)值。因此, 音頻類(lèi)裝置可以包括用于靜音、調(diào)節(jié)音量的簡(jiǎn)單的用戶(hù)接口。USB裝置的另一類(lèi)是包括諸如鍵盤(pán)、諸如計(jì)算機(jī)鼠標(biāo)的指向裝置的物理裝置的人機(jī)接口裝置。
通常,通用串行總線USB規(guī)范可從www. usb. org獲得。 發(fā)明內(nèi)容
提供了用于根據(jù)通用串行總線USB規(guī)范進(jìn)行通信的設(shè)備,包括USB裝置,其包括 USB總線接口和USB邏輯裝置,所述USB總線接口連接至上游USB端口,所述USB邏輯裝置為第一通道上的上游通信提供第一 USB端點(diǎn);USB主機(jī),包括USB主機(jī)控制器和USB驅(qū)動(dòng)器, 所述USB主機(jī)控制器連接至下游USB端口,所述USB驅(qū)動(dòng)器為第二通道上的下游通信提供第二USB端點(diǎn);其中,所述USB主機(jī)與所述USB裝置同時(shí)操作;以及處理器,被配置為分別經(jīng)由所述第一 USB端點(diǎn)和所述第二 USB端點(diǎn)在所述第一通道和所述第二通道之間傳輸數(shù)據(jù)。
因此,設(shè)備經(jīng)由處理器互連兩個(gè)獨(dú)立的USB系統(tǒng)。設(shè)備操作為一個(gè)USB系統(tǒng)中的裝置和另一個(gè)USB系統(tǒng)中的主機(jī)。兩個(gè)獨(dú)立的USB系統(tǒng)利用被編程的處理器互相連接以在兩個(gè)USB系統(tǒng)之間傳輸數(shù)據(jù)。該處理器在兩個(gè)系統(tǒng)之間進(jìn)行任何類(lèi)型的數(shù)據(jù)傳輸或信號(hào)處理。
由于USB裝置和USB主機(jī)分別完全根據(jù)USB規(guī)范,所以這樣的設(shè)備能夠符合USB 規(guī)范,同時(shí)使新的選擇有效,因?yàn)樘幚砥髂軌虮痪幊桃栽趦蓚€(gè)系統(tǒng)之間的傳輸路徑上執(zhí)行信號(hào)處理。
在一些實(shí)施方式中,該設(shè)備包括殼體,容納一個(gè)或多個(gè)具有存儲(chǔ)器的微控制器,其中,在存儲(chǔ)器中的預(yù)定的地址處設(shè)置第一端點(diǎn)和第二端點(diǎn)。微處理器可以被編程以執(zhí)行處理器和/或USB裝置和/或USB主機(jī)的操作。
端點(diǎn)可以包括被表示為“IN”和/或“OUT”和/或“控制”和/或“中斷”的類(lèi)型的端點(diǎn)。此外,端點(diǎn)還可包括其他類(lèi)型的端點(diǎn)。端點(diǎn)用作USB通信的接口。發(fā)生在裝置和主機(jī)的各自端點(diǎn)之間的通信通常被稱(chēng)為經(jīng)由“管道”發(fā)生,其中,端點(diǎn)在每個(gè)端處終止管道。
在一些實(shí)施方式中,USB裝置被配置為音頻類(lèi)產(chǎn)品以例如脈沖編碼調(diào)制PCM格式輸入或輸出音頻數(shù)據(jù),PCM被用于以數(shù)字方式表示音頻信號(hào)的采樣。該處理器被配置為處理這樣的音頻數(shù)據(jù)。在一些實(shí)施方式中,處理器被配置為根據(jù)已知應(yīng)用于電話系統(tǒng)或諸如例如耳機(jī)的電話裝置的規(guī)范或通用規(guī)則來(lái)處理數(shù)據(jù),其中,數(shù)據(jù)被傳輸以作為具有短延遲的實(shí)時(shí)數(shù)據(jù),以避免語(yǔ)音通信的劣化。
處理器可以包括用于在從一個(gè)USB系統(tǒng)接收的數(shù)據(jù)包的流被傳輸?shù)搅硪?USB系統(tǒng)之前對(duì)其進(jìn)行緩沖的緩沖器。然而,該緩沖器的大小被限制以避免干擾時(shí)延或延遲,并同時(shí)在緩沖器存儲(chǔ)器中僅存儲(chǔ)一些包,例如小于2、4、8、16或256個(gè)包,或小于500或1000毫秒的數(shù)據(jù)傳輸。在一些實(shí)施方式中,處理器傳輸數(shù)據(jù)并以穿過(guò)(cut-through)的方式對(duì)在兩個(gè)USB系統(tǒng)之間傳輸?shù)臄?shù)據(jù)進(jìn)行信號(hào)處理,其中,在包被全部接收到之前,開(kāi)始包的傳輸。
由于USB裝置和USB主機(jī)同時(shí)操作,所以這樣的處理和數(shù)據(jù)包的傳輸是可行的。然而,在一些實(shí)施方式中,USB 主機(jī)和USB裝置互相同步或異步操作。
這遵循USB規(guī)范,S卩,客戶(hù)端應(yīng)用程序通常能夠在同一時(shí)間只列舉同一類(lèi)的一個(gè)裝置。因此,客戶(hù)端應(yīng)用程序不能夠與同一類(lèi)的兩個(gè)裝置同時(shí)通信。
在一些實(shí)施方式中,處理器被配置為在第一通道和/或第三通道和/或第二通道之間傳輸數(shù)據(jù)。
因此,根據(jù)USB規(guī)范,客戶(hù)端應(yīng)用程序能夠在同一時(shí)間列舉同一類(lèi)的一個(gè)裝置。然而,在一些實(shí)施方式中,處理器可以被編程為經(jīng)由USB主機(jī)在各自的第二和第三通道上同時(shí)與USB規(guī)范下的同一類(lèi)的兩個(gè)或更多個(gè)裝置在下游進(jìn)行通信,而設(shè)備在上游被配置為單個(gè)USB裝置。
可選地,第三和/或任何其他的通道不符合USB規(guī)范。該通道可以根據(jù)不同的規(guī)范,并提供模擬和/或數(shù)字輸入和/或輸出。在一些實(shí)施方式中,數(shù)字通道根據(jù)索尼/飛利浦?jǐn)?shù)字接口、S/PDIF規(guī)范。在一些實(shí)施方式,提供模擬通道。
在一些實(shí)施方式中,處理器包括數(shù)據(jù)轉(zhuǎn)換器或所謂的編解碼器,以經(jīng)由USB主機(jī)或USB裝置與USB系統(tǒng)連接,例如從而在PCM數(shù)據(jù)和SA3DIF數(shù)據(jù)或PCM數(shù)據(jù)和模擬信號(hào)之間進(jìn)行轉(zhuǎn)換。
經(jīng)由第三通道的通信與在第一和/或第二通道上的通信同時(shí)發(fā)生。
不管第三通道上的通信是否根據(jù)USB規(guī)范發(fā)生,該設(shè)備在上游出現(xiàn)為各自裝置類(lèi)的單個(gè)裝置。
在一些實(shí)施方式中,處理器被配置為在第一通道與諸如第三、第四、第五和第六的另外的通道之間傳輸數(shù)據(jù)??蛇x地,處理器被配置為在第一通道與其他通道之間傳輸數(shù)據(jù)。
在一些實(shí)施方式中,處理器被配置有分離器,將來(lái)自第一通道的信號(hào)分離至第二通道和第三通道;和/或混合器,混合在第二通道和第三通道處輸入的音頻信號(hào)并在第一通道上輸出所混合的信號(hào)。
分離器使得可以以連接到多個(gè)通道的各自的接收器接收源自第一通道的數(shù)據(jù)的方式經(jīng)由USB主機(jī)將例如音頻數(shù)據(jù)流的數(shù)據(jù)流、音頻流分離至第二通道和第三通道。在音頻數(shù)據(jù)的情況下,從運(yùn)行在通用計(jì)算機(jī)上的軟電話應(yīng)用程序傳輸?shù)経SB裝置的音頻流可以被分離至兩個(gè)或更多個(gè)物理分離的裝置,例如,兩個(gè)耳機(jī)。
在一些實(shí)施方式中,分離器輸出的數(shù)據(jù)是相同的格式。在一些實(shí)施方式中,第二和第三通道是并行USB通道,從而連接到設(shè)備的兩個(gè)USB裝置能夠同時(shí)接收數(shù)據(jù)。在其它實(shí)施方式中,第三通道根據(jù)與USB規(guī)范不同的規(guī)范,處理器包括將從第一通道接收的數(shù)據(jù)轉(zhuǎn)換為該格式的轉(zhuǎn)換器。
混合器使得能夠?qū)⒔?jīng)由第二通道接收的第一數(shù)據(jù)流和經(jīng)由第三通道接收的第二數(shù)據(jù)流混合為在第一通道上向上游傳輸?shù)膯蝹€(gè)數(shù)據(jù)流。在一些實(shí)施方式中,混合器混合以相同的權(quán)重輸入到混合器的信號(hào),但是信號(hào)可以可選地以不同的權(quán)重混合,以在從混合器輸出的信號(hào)中相對(duì)于一個(gè)信號(hào)更強(qiáng)調(diào)另一個(gè)信號(hào)。
在一些實(shí)施方式中,混合器和分離器并行操作,以在到多個(gè)裝置的下游方向上分離由USB裝置接收的數(shù)據(jù),并在所混合的數(shù)據(jù)被在上游方向上傳輸之前混合從多個(gè)裝置接收的數(shù)據(jù)。這對(duì)于音頻數(shù)據(jù)尤其方便,其中,麥克風(fēng)信號(hào)、來(lái)自樂(lè)器或播放器的信號(hào)能夠作為單個(gè)混合的信號(hào)傳輸?shù)接?jì)算機(jī)中的客戶(hù)端應(yīng)用程序,而來(lái)自客戶(hù)端應(yīng)用程序的音頻信號(hào)可以在多個(gè)揚(yáng)聲器、錄音器或其他消耗音頻數(shù)據(jù)的裝置中共享或被分離至這些裝置。
在一些實(shí)施方式中,音頻信號(hào)是單聲道信號(hào)、立體聲信號(hào)、5. 1、6. I或7. I環(huán)繞聲信號(hào)或任何其他類(lèi)型的音頻信號(hào)。在一些實(shí)施方式中,音頻信號(hào)是脈沖編碼調(diào)制PCM信號(hào)。
在一些實(shí)施方式中,處理器包括采樣率轉(zhuǎn)換器,能夠上采樣和/或下采樣音頻信號(hào),以使得在上游傳輸?shù)臄?shù)據(jù)符合統(tǒng)一的采樣率,盡管例如第三通道上到達(dá)的數(shù)據(jù)具有與第二通道上到達(dá)的數(shù)據(jù)不同的采樣率。因此,混合器能夠以統(tǒng)一的采樣率進(jìn)行混合??蛇x地/附加地,可在下游方向通過(guò)處理器進(jìn)行重新采樣;在一些實(shí)施方式中,在分離之后進(jìn)行重新采樣。
在一些實(shí)施方式中,該設(shè)備包括用于傳輸模擬和/或數(shù)字音頻數(shù)據(jù)的音頻接口。 在一些實(shí)施方式中,音頻接口包括編解碼器。
因此,音頻接口被設(shè)置用于到處理器的第三通道。在一些實(shí)施方式中,編解碼器包括將一種數(shù)字格式轉(zhuǎn)換為另一種的轉(zhuǎn)換器,在其他實(shí)施方式中,編解碼器包括模擬數(shù)字轉(zhuǎn)換器和/或數(shù)字模擬轉(zhuǎn)換器。編解碼器還可包括功率放大器或用于驅(qū)動(dòng)揚(yáng)聲器的驅(qū)動(dòng)器和 /或用于放大來(lái)自麥克風(fēng)的信號(hào)的預(yù)放大器。在一些實(shí)施方式中,音頻接口具有端口或諸如用于模擬和/或數(shù)字信號(hào)的Jack連接器和/或用于光學(xué)數(shù)字信號(hào)的Toslink連接器的連接器。
在一些實(shí)施方式中,USB裝置配置為USB音頻類(lèi)裝置。
在USB裝置的配置(發(fā)生與上游USB主機(jī)的物理互聯(lián)或由USB裝置發(fā)布的重新設(shè)置)的期間,USB裝置向USB主機(jī)提供屬性值。在一些實(shí)施方式中,USB裝置配置為音頻類(lèi)裝置并提供音頻屬性值。音頻屬性值被存儲(chǔ)僅用于讀取,并代表可包括處理器的屬性的音頻接口的屬性。音頻屬性可包括采樣率、位分辨率、單聲道或立體聲通道的可用性等。音頻屬性也可代表值的范圍,例如采樣率的范圍和/或可用的位分辨率的范圍(例如,8、16和24 位)。在一些實(shí)施方式中,從上游的USB主機(jī)接收到的配置值被用于控制處理器的音頻屬性。
在一些實(shí)施方式中,該設(shè)備包括USB集線器,其提供分別用于傳送第二通道和第三通道的至少兩個(gè)USB端口。
因此,第二和第三通道能夠被USB集線器設(shè)置為并行USB通道。USB集線器將主機(jī)控制器的單個(gè)USB端口擴(kuò)展為多個(gè)端口,使得存在可將裝置連接到USB主機(jī)的更多個(gè)端口。 在一些實(shí)施方式中,USB主機(jī)和/或USB集線器只實(shí)現(xiàn)了由USB規(guī)范指定的裝置類(lèi)中的所選擇的裝置類(lèi)的子集。類(lèi)的子集可以是音頻類(lèi),并且在一些實(shí)施方式中,也可以是人機(jī)接口裝置HID類(lèi)。
在一些實(shí)施方式中,在配置處理期間USB主機(jī)配置下游USB裝置;并且USB裝置首先配置作為第一類(lèi)的裝置,其次在配置處理的至少一部分已進(jìn)行了時(shí),重新配置作為第二類(lèi)的裝置。
在一些實(shí)施方式中,第一類(lèi)是人機(jī)接口裝置HID類(lèi),第二類(lèi)是音頻裝置類(lèi)。因此, 例如,如果在裝置連接到上游主機(jī)時(shí)已知沒(méi)有音頻功能且沒(méi)有屬性值,則它可配置作為例如HID裝置類(lèi),并且確實(shí)沒(méi)有看起來(lái)像具有任何音頻功能的客戶(hù)端軟件。同時(shí),裝置被配置作為HID裝置,并且在裝置和上游通用計(jì)算機(jī)之間的通信例如可用于安裝所謂的固件更新。
由于連接下游裝置,所以用于配置下游裝置的配置處理由設(shè)備的USB主機(jī)運(yùn)行。 在該處理期間,檢索用于下游裝置的音頻屬性值。該設(shè)備的USB裝置然后向上游主機(jī)請(qǐng)求重新配置,并且當(dāng)處理進(jìn)行時(shí),設(shè)備的USB裝置能夠?qū)南掠窝b置檢索到的音頻屬性提供到上游USB主機(jī)。在配置處理結(jié)束時(shí),來(lái)自上游主機(jī)的配置值被經(jīng)由處理器傳遞到下游USB 裝置,并且配置能夠被完成。
因此,設(shè)備的USB裝置可以配置有反映下游USB裝置的音頻能力的音頻屬性值而不違反USB規(guī)范。
在一些實(shí)施方式中,處理器被配置為經(jīng)由USB主機(jī)控制器將配置值和/或狀態(tài)值發(fā)送到USB裝置,并且其中,由處理器確定配置值和/或狀態(tài)值。
因此,所期望的邏輯可以實(shí)現(xiàn)為用于控制音頻類(lèi)裝置的配置值和狀態(tài)值(例如, HID狀態(tài))。在一些實(shí)施方式中,該HID狀態(tài)代表已知的音頻控制(諸如“麥克風(fēng)靜音”、“斷開(kāi)揚(yáng)聲器”、“音量調(diào)大”和“音量調(diào)小”等)。利用處理器,可確定如何響應(yīng)該狀態(tài)或改變。在一些實(shí)施方式中,即使只在一個(gè)裝置中激活“靜音”的情況下,“靜音”也可應(yīng)用于所有下游 USB裝置。在其他實(shí)施方式中,僅針對(duì)各自的裝置激活“靜音”。
在一些實(shí)施方式中,該設(shè)備包括影響在第一通道和/或第二和第三通道上傳輸?shù)男盘?hào)的主控制(主控制器)。
主控制器在物理上可以是本技術(shù)領(lǐng)域已知的控制旋鈕和/或按鈕的形式。主控制器利用處理器來(lái)產(chǎn)生作用。
在一些實(shí)施方式中,提供了一種耳機(jī)系統(tǒng),包括具有揚(yáng)聲器和麥克風(fēng)的耳機(jī)以及根據(jù)以上實(shí)施方式的任何一個(gè)的設(shè)備。
在一些實(shí)施方式中,耳機(jī)和設(shè)備通過(guò)有線的但可拆卸的連接(例如,傳輸模擬信號(hào))連接。在其他實(shí)施方式中,耳機(jī)包括USB裝置,并利用USB電纜連接到設(shè)備。
在一些情形中,這樣的耳機(jī)系統(tǒng)是方便的,例如,在配有進(jìn)行呼入電話接聽(tīng)的操作員以及教育和監(jiān)督操作員的監(jiān)督者的呼叫中心中。監(jiān)督通常發(fā)生在有效通話期間。然而, 利用用于USB連接的傳統(tǒng)耳機(jī),立刻插入主管的USB耳機(jī)將導(dǎo)致所有的音頻被轉(zhuǎn)移到主管的耳機(jī),而不是最初進(jìn)行通話的操作員的耳機(jī)。利用上述USB耳機(jī)系統(tǒng),主管能夠?qū)⑺?她CN 102981989 A書(shū)明說(shuō)5/9頁(yè)的USB耳機(jī)插在設(shè)備中,而不從操作員轉(zhuǎn)移音頻。此外,他們可能有對(duì)耳機(jī)揚(yáng)聲器音量和麥克風(fēng)靈敏度的個(gè)人偏好。
圖I示出具有與下游USB裝置進(jìn)行通信的USB主機(jī)的計(jì)算機(jī);
圖2示出具有 音頻接口和用于使用另一音頻接口與USB子裝置進(jìn)行通信的USB主機(jī)的USB裝置;
圖3示出使用音頻功能進(jìn)行USB裝置的配置和使用另一音頻功能進(jìn)行子裝置的配置的流程圖4示出音頻接口和處理器;
圖5示出具有USB裝置和用于使用各自的音頻接口并行地與多個(gè)USB子裝置進(jìn)行通信的USB主機(jī)的裝置;
圖6示出進(jìn)行USB接口的配置的流程圖7示出具有音頻接口和下游USB端口的裝置;以及
圖8示出具有多個(gè)下游USB端口的裝置。
具體實(shí)施方式
圖I示出具有與下游USB裝置進(jìn)行通信的USB主機(jī)的計(jì)算機(jī)。該系統(tǒng)是傳統(tǒng)的USB 系統(tǒng)。通常作為通用計(jì)算機(jī)的計(jì)算機(jī)101包括用作USB主機(jī)的硬件和軟件。計(jì)算機(jī)101經(jīng)由USB電纜109在各自的USB端口(未示出)與USB裝置102互相連接。裝置102可被配置為音頻類(lèi)裝置,并可包括用于提供電子音頻信號(hào)的輸入和/或輸出的端口 110,或者裝置 102可以例如包括諸如麥克風(fēng)和揚(yáng)聲器(未不出)的例如電聲換能器。在一些實(shí)施方式中, 裝置102是與計(jì)算機(jī)具有USB連接性的耳機(jī)。
計(jì)算機(jī)101包括具有主機(jī)控制器105、USB系統(tǒng)軟件104和客戶(hù)端軟件103的USB 主機(jī)。裝置102包括匹配USB主機(jī)的結(jié)構(gòu),并包括USB總線接口 106、USB邏輯裝置107和音頻功能108。描繪USB規(guī)范中所使用的USB系統(tǒng)的方式也可從www. usb. org獲得。
通常地,應(yīng)該指出,USB是分層系統(tǒng),其中,USB主機(jī)位于層次結(jié)構(gòu)的頂層,并控制 USB系統(tǒng)內(nèi)的通信,并負(fù)責(zé)配置系統(tǒng)內(nèi)的USB裝置。USB裝置具有例如音頻功能108的一些所定義的功能,并經(jīng)由USB系統(tǒng)與運(yùn)行在計(jì)算機(jī)101上和使用裝置的功能的一些客戶(hù)端軟件進(jìn)行通信。此外,USB裝置可以配置有多種功能,并且有時(shí)被稱(chēng)為復(fù)合裝置。由于USB裝置經(jīng)由各自的和物理的USB端口附接到USB系統(tǒng),所以USB規(guī)范允許USB集線器,其能夠?qū)?USB端口擴(kuò)展為多個(gè)USB端口并從而使用更多裝置擴(kuò)展分層結(jié)構(gòu),其中USB主機(jī)保持為系統(tǒng)的單個(gè)USB主機(jī)。USB主機(jī)主要用于將來(lái)自上游端口的數(shù)據(jù)轉(zhuǎn)發(fā)到多個(gè)下游端口或反之亦然。附接到USB集線器的每個(gè)裝置被配置并獨(dú)立地進(jìn)行USB主機(jī)尋址。
通常,術(shù)語(yǔ)“上游”用于表示在分層結(jié)構(gòu)中朝向主機(jī)的向上方向,而術(shù)語(yǔ)“下游”用于表不在分層結(jié)構(gòu)中朝向裝置的向下方向。
通常,術(shù)語(yǔ)“通道”用于表示在a)在USB主機(jī)和USB裝置之間的USB系統(tǒng)中或b) 在另一系統(tǒng)中的任何路徑或部分。當(dāng)通道在USB系統(tǒng)內(nèi)運(yùn)行時(shí),它還被稱(chēng)為“管道”。管道的各自的端終止在“端點(diǎn)”。在USB規(guī)徂中進(jìn)一步說(shuō)明。8
圖2示出具有USB裝置和USB主機(jī)的設(shè)備,該USB裝置具有音頻接口,該USB主機(jī)用于使用另一音頻接口與USB子裝置進(jìn)行通信。該設(shè)備201包括連接到如結(jié)合圖1描述的上游USB主機(jī)的USB裝置213。從而建立了第一 USB系統(tǒng)。此外,設(shè)備201包括控制第二 USB系統(tǒng)的其自己的USB主機(jī)211。在下面,附接至第二 USB系統(tǒng)的USB裝置有時(shí)被稱(chēng)為子裝置或USB子裝置。一些實(shí)施方式中,處理器204是音頻處理器,其互連第一和第二 USB系統(tǒng)以在兩個(gè)系統(tǒng)之間傳輸數(shù)據(jù)。
設(shè)備的USB裝置213包括連接至上游USB端口 207的USB總線接口 206以及為作為管道的第一通道上的上游通信提供第一USB端點(diǎn)的USB邏輯裝置205。此外,在一些實(shí)施方式中,USB裝置包括音頻功能203和音頻接口 202。音頻接口 202是用于與音頻傳感器連接的硬件接口。音頻功能203是用于從/向具有運(yùn)行在計(jì)算機(jī)上的客戶(hù)端應(yīng)用程序的音頻接口發(fā)送音頻數(shù)據(jù)的軟件和/或硬件。
USB主機(jī)214包括連接到下游USB端口 208的USB主機(jī)控制器209以及為作為管道的第二通道上的下游通信提供第二 USB端點(diǎn)的USB驅(qū)動(dòng)器210。在一些實(shí)施方式中,USB 主機(jī)包括在與音頻處理器204的共操作中確定哪些數(shù)據(jù)與子裝置中的功能進(jìn)行通信的USB 子客戶(hù)端。
USB主機(jī)與USB裝置同時(shí)操作,使得來(lái)自上游USB主機(jī)到USB裝置213正在進(jìn)行的數(shù)據(jù)流可以經(jīng)由處理器和USB主機(jī)214轉(zhuǎn)發(fā)或重新發(fā)送到連接至其的子裝置(未示出),而沒(méi)有顯著地延遲或中斷數(shù)據(jù)流。
傳統(tǒng)地,USB裝置的USB邏輯裝置205與USB主機(jī)的USB系統(tǒng)軟件210經(jīng)由端點(diǎn)傳輸數(shù)據(jù)。端點(diǎn)在管道的各端終止所謂的管道。存在定義的各種類(lèi)型的端點(diǎn),其中,在一些實(shí)施方式中,端點(diǎn)包括由“IN”和/或“OUT”和/或“控制”的縮寫(xiě)“Ctrl”和/或“中斷”的縮寫(xiě)“Int”表示的類(lèi)型的端點(diǎn)。被表示為“IN”和“OUT”的端點(diǎn)被配置為用于通過(guò)USB管道分別輸入和輸出要傳輸?shù)臄?shù)據(jù)。在該實(shí)施方式中,音頻數(shù)據(jù)以脈沖編碼調(diào)制PCM格式發(fā)送。端點(diǎn)“控制”和“中斷”分別用于在配置處理期間發(fā)送配置值和用于中斷USB主機(jī)通過(guò)用戶(hù)接口(未示出)獲取更多的最新數(shù) 據(jù),例如,讀取在人機(jī)交互期間改變的狀態(tài)值。端點(diǎn)在物理上被設(shè)置為處理器的存儲(chǔ)器中的地址空間。處理器204訪問(wèn)端點(diǎn)并讀取和修改其值來(lái)控制第一 USB系統(tǒng)如何與第二 USB系統(tǒng)連接。因此,期望的邏輯可以實(shí)現(xiàn)為用于控制音頻類(lèi)裝置的配置值和狀態(tài)值(例如,HID狀態(tài))。在一些實(shí)施方式中,該狀態(tài)表示諸如“麥克風(fēng)靜音”、“斷開(kāi)揚(yáng)聲器”、“音量調(diào)大”和“音量調(diào)小”等的已知音頻控制。利用處理器,可以確定如何響應(yīng)于該狀態(tài)或變化。在一些實(shí)施方式中,即使只在一個(gè)裝置中啟動(dòng)“靜音”的情況下,“靜音”也可應(yīng)用于所有下游USB裝置。在其他實(shí)施方式中,只針對(duì)各自的裝置啟動(dòng)“靜立”曰
在所描述的實(shí)施方式中,第一通道(管道)設(shè)置在USB裝置213和上游USB主機(jī)(未示出)之間,第二通道(管道)設(shè)置在USB主機(jī)214和下游USB子裝置(未示出)之間,第三通道經(jīng)由音頻接口 202來(lái)提供。第三通道不符合USB規(guī)范。這樣的通道可根據(jù)不同規(guī)范,并提供模擬和/或數(shù)字?jǐn)?shù)據(jù)輸入和/或輸出。在一些實(shí)施方式中,數(shù)字通道根據(jù)與索尼/飛利浦?jǐn)?shù)字接口,S/PDIF規(guī)范。在一些實(shí)施方式中,提供了模擬通道。處理器同時(shí)經(jīng)由第一、 第二和第三通道進(jìn)行通信,使得雙向?qū)崟r(shí)通信不被顯著延遲或被中斷。
圖3示出使用音頻功能進(jìn)行USB裝置的配置和使用另一音頻功能進(jìn)行子裝置的配置的流程圖。因此,兩個(gè)配置處理(第一和第二)相互獨(dú)立進(jìn)行。
當(dāng)設(shè)備201的USB裝置213物理附接至上游USB主機(jī)時(shí),如事件301所示,第一配置處理被啟動(dòng)。在步驟302中,設(shè)備的USB裝置在USB配置處理期間向上游USB主機(jī)提供服務(wù),如本領(lǐng)域技術(shù)人員公知的那樣。緊接步驟302,USB裝置213被配置并被設(shè)置有來(lái)自上游USB主機(jī)的配置值。
當(dāng)USB子裝置物理附接至設(shè)備201的USB主機(jī)214時(shí),如事件304所示,第二配置處理被啟動(dòng)。然后在步驟305中,進(jìn)行第二配置處理的第一部分,并且在接下來(lái)的步驟306 和307中,分別從附接的USB子裝置讀取音頻功能屬性的狀態(tài)值和音頻功能的HID狀態(tài)的狀態(tài)值。USB主機(jī)214保持這些值,并通過(guò)處理器204確定將哪些配置值發(fā)送回USB裝置。 處理器然后基于由處理器存儲(chǔ)的讀取值和任何其他值(例如,在前述第一配置處理期間檢索的其他值或在處理器中以只讀方式存儲(chǔ)的其他值)確定如何配置USB子裝置。第二個(gè)配置處理之后,在步驟310中配置USB子裝置,用于作為USB裝置的操作。
在一些實(shí)施方式中,在啟動(dòng)或完成第一配置之前啟動(dòng)第二配置處理。在一些實(shí)施方式中,如果完成第一配置處理,則在第二配置處理期間,第一配置值被發(fā)送到USB裝置, 而如果第一配置處理尚未被啟動(dòng)或完成,則第二配置值被發(fā)送到USB裝置。第一和第二配置值可以不同。
在一些實(shí)施方式中,針對(duì)如圖2所示的設(shè)備進(jìn)行以上配置處理,其中,音頻接口嵌入在設(shè)備中。
圖4示出了音頻接口和處理器。音頻接口包括以非USB兼容的方式將音頻信號(hào)與設(shè)備連接的硬件,從而將第三或更多的通道提供給處理器。音頻接口包括具有麥克風(fēng)402 的第一信號(hào)路徑、例如包括前置放大器的輸入級(jí)403和模擬數(shù)字轉(zhuǎn)換器404。在一些實(shí)施方式中,第一信號(hào)路徑包括在兩個(gè)或更多個(gè)數(shù)據(jù)格式之間轉(zhuǎn)換的轉(zhuǎn)換器和/或用于進(jìn)行上采樣和/或下采樣的重新采樣器(re-sampler)。音頻接口還包括具有數(shù)字模擬轉(zhuǎn)換器405 的第二信號(hào)路徑、例如包括驅(qū)動(dòng)器或功率放大器的輸出級(jí)406和揚(yáng)聲器407ο在一些實(shí)施方式中,音頻接口構(gòu)成耳機(jī)的一部分。
處理器401包括混合器408和分離器409?;旌掀餮貎蓚€(gè)通道接收音頻信號(hào),即經(jīng)由USB端點(diǎn)的第二通道和經(jīng)由第一信號(hào)路徑的第三通道,并經(jīng)由USB端點(diǎn)在第一通道上輸出混合信號(hào)。該分離器從第一通道經(jīng)由USB端點(diǎn)接收信號(hào),并將該信號(hào)分離至經(jīng)由USB端點(diǎn)的第二通道和經(jīng)由第二信號(hào)路徑的第三通道。利用分離器和混合器,提供了雙向信號(hào)傳輸。然而,在一些實(shí)施方式中,設(shè)置了分離器但未設(shè)置混合器,或反之。
處理器被示出為連接音頻接口。然而,在以下圖5所示的實(shí)施方式的情況下,其中,所有通道被設(shè)置為USB管道,不需要音頻接口,并且處理器能夠經(jīng)由各自的端點(diǎn)和端點(diǎn)組在通道上進(jìn)行通信。
圖5示出具有USB裝置和用于使用各自的音頻接口并行地與多個(gè)USB子裝置進(jìn)行通信的USB主機(jī)的設(shè)備。
該設(shè)備501包括連接到如結(jié)合圖I所描述的上游USB主機(jī)的一個(gè)USB裝置515。 從而建立了第一 USB系統(tǒng)。此外,設(shè)備501包括它自己的USB主機(jī)514,其控制第二 USB系統(tǒng)。處理器503 (在一些實(shí)施方式中為音頻處理器)互連第一 USB系統(tǒng)和第二 USB系統(tǒng),以在兩個(gè)系統(tǒng)之間傳輸數(shù)據(jù)。
設(shè)備的USB裝置515包括連接到上游的USB端口 506的USB總線接口 505以及提供第一 USB端點(diǎn)用于作為管道的第一通道上的上游通信的USB邏輯裝置504。此外,在一些實(shí)施方式中,USB裝置包括音頻功能502。音頻功能502是與處理器503合作的軟件和/ 或硬件,用于利用計(jì)算機(jī)上運(yùn)行的客戶(hù)端應(yīng)用程序與USB主機(jī)514進(jìn)行音頻數(shù)據(jù)交換。
USB主機(jī)514包括USB主機(jī)控制器511,其通過(guò)USB集線器510連接至下游USB端口 508、509。USB主機(jī)控制器511還包括USB子系統(tǒng)驅(qū)動(dòng)器512,其提供USB端點(diǎn)用于作為管道的第二通道上的下游通信。此外,由于USB集線器510,USB子系統(tǒng)驅(qū)動(dòng)器512提供第三USB端點(diǎn),用于也作為管道的第三通道上的另外的下游通信。如示出的,USB集線器510 具有4個(gè)端口,用于連接各裝置并且用于經(jīng)由一個(gè)或多個(gè)管道并行通信。
在一些實(shí)施方式中,USB主機(jī)包括USB子客戶(hù)端513,其與音頻處理器503合作以確定哪些數(shù)據(jù)經(jīng)由集線器510與附接至USB主機(jī)的子裝置507中的功能進(jìn)行通信。
在所描述的實(shí)施方式中,第一、第二和第三通道都被設(shè)置為USB管道。
在一些實(shí)施方式中,除了經(jīng)由USB集線器510提供的多個(gè)通道以外,經(jīng)由如結(jié)合圖 2所描述的音頻接口提供非USB兼容通道。根據(jù)以并發(fā)方式從/到各信道的處理信號(hào)修改處理器503。
在一些實(shí)施方式中,處理器503不同地控制USB子裝置的配置,其中,第一 USB子裝置被給予主要的或主裝置的狀態(tài),第二和其他USB子裝置被給予隸屬或從屬的狀態(tài)。因此,當(dāng)?shù)谝?USB子裝置是電話期間經(jīng)由計(jì)算機(jī)上的軟電話進(jìn)行通信的耳機(jī),即使第二或其他子裝置在通話期間連接或未連接,電話通話都能夠繼續(xù)。確定如何配置USB子裝置以及與USB子裝置進(jìn)行通信的邏輯由處理器503確定。在一些實(shí)施方式中,第一 USB子裝置被確定為首先連接到設(shè)備的USB子裝置。
圖6示出了進(jìn)行USB裝置配置的流程圖。在第一情形中,通過(guò)檢測(cè)到設(shè)備501的 USB裝置515連接到上游USB主機(jī)的事件601來(lái)啟動(dòng)配置。在第二情形中,通過(guò)檢測(cè)到USB 子裝置連接到設(shè)備501的USB主機(jī)514的事件605來(lái)啟動(dòng)配置。因此可以進(jìn)行兩種不同的配置處理。
在第一情形中,由事件601啟動(dòng),設(shè)備的USB裝置被暫時(shí)配置為第一類(lèi)的裝置,例如,HID裝置類(lèi)。在第二情形下,由事件605啟動(dòng),設(shè)備的USB裝置被配置或重新配置為第二類(lèi)的裝置,例如,音頻裝置類(lèi)。因此,可以符合USB規(guī)范(例如,對(duì)于配置來(lái)說(shuō)所允許的時(shí)間間隔),并在重新配置期間將來(lái)自USB子裝置的值經(jīng)由設(shè)備的USB裝置515提供到上游主機(jī),盡管在USB裝置515的配置期間USB子裝置尚未連接到主機(jī)514。
緊接事件601,處理器503確定USB子裝置是否已經(jīng)連接到USB主機(jī)514。在子裝置尚未連接的情況下,配置進(jìn)行到步驟603,其中USB裝置被配置為HID類(lèi)裝置。隨后,配置該設(shè)備的USB裝置。在這種狀態(tài)下,USB裝置被配置為HID裝置,處理器和運(yùn)行在上游計(jì)算機(jī)上的客戶(hù)端應(yīng)用程序能夠?qū)⑺^的固件更新發(fā)送到設(shè)備。
在子裝置已經(jīng)連接或USB子裝置連接到USB主機(jī)514的情況下,觸發(fā)事件605。然后在步驟606中,進(jìn)行配置USB子裝置的第一部分(1/2)。緊接配置的第一部分,由USB主機(jī)514檢索來(lái)自USB子裝置的音頻屬性值和狀態(tài)值,該值然后被轉(zhuǎn)發(fā)或提供給音頻功能502 和/或處理器503。在步驟608中,USB裝置515然后根據(jù)情況強(qiáng)制上游USB主機(jī)的配置或重新配置,從而使用從USB子裝置檢測(cè)到的值將其本身配置或重新配置為音頻類(lèi)裝置。然后,在步驟609中,使用在配置期間發(fā)送到USB裝置515的配置值能夠完成USB子裝置的配置。緊接這些步驟,USB裝置最終被重新配置,并且USB子裝置的配置完成。
以這種方式,設(shè)備從子裝置獲取用于其自身配置的信息,只要這些子裝置被連接并且至少部分地被配置。因此,子裝置的屬性暴露于上游計(jì)算機(jī)系統(tǒng)。
圖7示出了具有音頻接口和下游USB端口的設(shè)備。如結(jié)合圖2所描述的,配置該設(shè)備,其中,端口 212對(duì)應(yīng)于物理端口 703以建立用于經(jīng)由傳輸模擬或數(shù)字音頻信號(hào)的電纜 702與耳機(jī)701進(jìn)行通信的第三通道的物理連接。下游USB端口 208對(duì)應(yīng)于用于第二通道的物理端口的705。對(duì)應(yīng)于端口 207,物理端口 706和物理USB連接器707建立到計(jì)算機(jī)的 USB主機(jī)的第一通道。
這樣的設(shè)備也表示USB耳機(jī)內(nèi)嵌控制器。該設(shè)備包括被配置為控制處理器204和 /或音頻功能203的諸如按鈕或控制旋鈕704的主控制器裝置,處理器204和/或音頻功能203反過(guò)來(lái)被配置為響應(yīng)于控制裝置并對(duì)經(jīng)由處理器在第一、第二和第三通道之間傳輸?shù)臄?shù)據(jù)進(jìn)行信號(hào)處理。
圖8示出具有多個(gè)下游USB端口的設(shè)備。如結(jié)合圖5所描述的來(lái)配置該設(shè)備,其中,上游USB端口 506對(duì)應(yīng)于將設(shè)備連接至具有USB主機(jī)的計(jì)算機(jī)的物理連接器801,并且其中,集線器端口 508、509對(duì)應(yīng)于物理端口 804。在該實(shí)施方式中,示出4個(gè)USB端口,但通過(guò)USB集線器能夠提供更少的端口(例如,2或3個(gè)端口 )或更多的端口(例如,6或8個(gè)端口)。
在一些實(shí)施方式中,設(shè)備包括如上所述的主控制器802。
通常,在一些實(shí)施方式中,USB集線器510和/或USB主機(jī)514在某種意義上不是完整的USB主機(jī)(支持所有類(lèi)的裝置和/或所有主機(jī)服務(wù))。在一些實(shí)施方式中,USB主機(jī)控制器514和/或214被限制為實(shí)現(xiàn)所有USB類(lèi)中的限制的子集,例如限制為音頻類(lèi)和HID類(lèi)。
通常,術(shù)語(yǔ)USB端口是指接入/出系統(tǒng)或電路的點(diǎn)、在通用計(jì)算中通過(guò)USB連接器或通過(guò)諸如例如PCI總線的總線接口連接USB裝置的點(diǎn)。
權(quán)利要求
1.一種用于根據(jù)通用串行總線USB規(guī)范進(jìn)行通信的設(shè)備(201 ;501),包括 USB裝置(213 ;515),包括USB總線接口(206 ;505)和USB邏輯裝置(205 ;504),所述USB總線接口連接至上游USB端口(207 ;506),并且所述USB邏輯裝置為第一通道上的上游通信提供第一 USB端點(diǎn); 其特征在于,所述設(shè)備包括 USB主機(jī)(214 ;514),包括USB主機(jī)控制器(209 ;511)和USB驅(qū)動(dòng)器(210 ;512),所述USB主機(jī)控制器連接至下游USB端口(208 ;508 ;509),所述USB驅(qū)動(dòng)器為第二通道上的下游通信提供第二 USB端點(diǎn);其中,所述USB主機(jī)與所述USB裝置同時(shí)操作;以及 處理器(204 ;512),被配置為分別經(jīng)由所述第一 USB端點(diǎn)和所述第二 USB端點(diǎn)在所述第一通道和所述第二通道之間傳輸數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的設(shè)備,其中,所述處理器被配置為在所述第一通道和/或第三通道和/或所述第二通道之間傳輸數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的設(shè)備,其中,所述處理器被配置具有 分離器(409),將來(lái)自所述第一通道的信號(hào)分離至所述第二通道和所述第三通道;和/或 混合器(408 ),混合在所述第二通道和所述第三通道處輸入的音頻信號(hào),并在所述第一通道上輸出所混合的信號(hào)。
4.根據(jù)權(quán)利要求2或3所述的設(shè)備,包括用于發(fā)送模擬和/或數(shù)字音頻數(shù)據(jù)的具有編解碼器的音頻接口(202)。
5.根據(jù)權(quán)利要求4所述的設(shè)備,其中,所述USB裝置(213;515)配置作為USB音頻類(lèi)裝置。
6.根據(jù)權(quán)利要求2至5中任一項(xiàng)所述的設(shè)備,包括USB集線器(510),其提供分別用于傳送所述第二通道和所述第三通道的至少兩個(gè)USB端口(508 ;509)。
7.根據(jù)權(quán)利要求I至6中任一項(xiàng)所述的設(shè)備,其中,所述USB主機(jī)(214;514)在配置處理期間配置下游USB裝置;并且其中,所述USB裝置(213 ;515)首先配置作為第一類(lèi)的裝置,其次,在所述配置處理的至少一部分已處理時(shí),重新配置作為第二類(lèi)的裝置。
8.根據(jù)權(quán)利要求I至7中任一項(xiàng)所述的設(shè)備,其中,所述處理器(204;503)被配置為經(jīng)由USB主機(jī)控制器(209 ;511)將配置值和/或狀態(tài)值傳輸?shù)経SB裝置(507);并且其中,由所述處理器(204 ;503)確定所述配置值和/或狀態(tài)值。
9.根據(jù)權(quán)利要求I至8中任一項(xiàng)所述的設(shè)備,包括影響在所述第一通道和/或第二和第三通道上傳輸?shù)男盘?hào)的主控制器(704 ;802)。
10.一種耳機(jī)系統(tǒng),包括具有揚(yáng)聲器(407)和麥克風(fēng)(402)的耳機(jī)(701)以及根據(jù)權(quán)利要求I至9中任一項(xiàng)所述的設(shè)備(201 ;501)。
11.一種根據(jù)通用串行總線USB規(guī)范進(jìn)行通信的方法,包括 操作USB裝置,所述USB裝置包括USB總線接口和USB邏輯裝置,所述USB總線接口連接至上游USB端口,所述USB邏輯裝置為上游通信提供第一 USB端點(diǎn); 與操作所述USB裝置同時(shí)地操作USB主機(jī),所述USB主機(jī)包括USB主機(jī)控制器和USB驅(qū)動(dòng)器,所述USB主機(jī)控制器連接至下游USB端口,并且所述USB驅(qū)動(dòng)器為下游通信提供第二 USB端點(diǎn);以及利用處理器,分別經(jīng)由所述第一 USB端點(diǎn)和所述第二 USB端點(diǎn)在所述第一通道和所述第二通道之間傳輸數(shù)據(jù)。
12.根據(jù)權(quán)利要求11所述的方法,包括利用所述處理器在所述第一通道和/或第三通道和/或所述第二通道之間傳輸數(shù)據(jù)。
13.根據(jù)權(quán)利要求12所述的方法,包括 將來(lái)自所述第一通道的信號(hào)分離至所述第二通道和所述第三通道;和/或混合在所述第二通道和所述第三通道處輸入的音頻信號(hào),并在所述第一通道上輸出所混合的信號(hào)。
14.根據(jù)權(quán)利要求12或13所述的方法,包括經(jīng)由具有編解碼器的音頻接口傳輸模擬和/或數(shù)字音頻數(shù)據(jù)。
15.根據(jù)權(quán)利要求14所述的方法,包括配置所述USB裝置作為USB音頻類(lèi)裝置。
全文摘要
一種通用串行總線USB通信的裝置和方法,該裝置包括USB裝置、USB主機(jī)和處理器。USB裝置(例如,音頻類(lèi)裝置)包括USB總線接口和USB邏輯裝置,USB總線接口連接至上游USB端口,并且USB邏輯裝置為第一通道上的上游通信提供第一USB端點(diǎn)。USB主機(jī)包括USB主機(jī)控制器和USB驅(qū)動(dòng)器,USB主機(jī)控制器連接至下游USB端口,USB驅(qū)動(dòng)器為第二通道上的下游通信提供第二USB端點(diǎn);其中,USB主機(jī)與USB裝置同時(shí)操作。處理器被配置為分別經(jīng)由第一USB端點(diǎn)和第二USB端點(diǎn)在第一通道和第二通道之間傳輸數(shù)據(jù)。處理器還被配置為在第一和第三通道之間傳輸數(shù)據(jù),并且混合和/或分割可以是PCM音頻數(shù)據(jù)的數(shù)據(jù)。
文檔編號(hào)G06F13/38GK102981989SQ20121023204
公開(kāi)日2013年3月20日 申請(qǐng)日期2012年7月5日 優(yōu)先權(quán)日2011年7月6日
發(fā)明者勒內(nèi)·埃爾貝克·詹森 申請(qǐng)人:Gn奈康有限公司