專利名稱:音頻網(wǎng)絡(luò)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種連接多種音頻裝置的音頻網(wǎng)絡(luò)系統(tǒng)。
背景技術(shù):
用于PA(例如演奏和音樂會)、音樂制作和專用廣播中的音頻網(wǎng)絡(luò)系統(tǒng)中的音頻信號通信的現(xiàn)有技術(shù)包括非專利文獻1中描述的CobraNET(商標(biāo)),非專利文獻2中描述的SuperMAC(商標(biāo)),和非專利文獻3中描述的EtherSound(商標(biāo))。
CobraNet是由Peak Audio公司(美國)開發(fā)的專業(yè)音頻網(wǎng)絡(luò)系統(tǒng)。CobraNET提供一種利用IEEE802.3u的標(biāo)準(zhǔn)以太網(wǎng)(standard Ethernet)(商標(biāo))協(xié)議的技術(shù),其中通過以太網(wǎng)傳輸多信道的未壓縮音頻信號和控制信號。這種技術(shù)可以傳輸?shù)牟蓸勇蕿?8kHz且位數(shù)為16、20和24位的采樣數(shù)據(jù),并且可以雙向處理音頻信號和控制信號,其中在每個方向具有一直到64信道(即,在雙向具有一直到128信道)。SuperMAC和EtherSound為用于通過以太網(wǎng)傳輸音頻數(shù)據(jù)的相似技術(shù)。
具有各種功能(例如模擬輸入、模擬輸出、數(shù)字輸入、數(shù)字輸出、混合、效果、記錄/再現(xiàn)、遠(yuǎn)程控制和這些功能中的任何兩種的組合)的音頻裝置可以選擇性地連接至使用上述技術(shù)的音頻網(wǎng)絡(luò)。[非專利文獻1]http://www.balcom.co.jp/cobranet.htm[非專利文獻2]http://www.sonyoxford.co.uk/pub/supermac/[非專利文獻2]http://www/ethersound.com/news/getnews.php?enews_key=101在任一種傳統(tǒng)音頻網(wǎng)絡(luò)中,根據(jù)上述Ethernet標(biāo)準(zhǔn)執(zhí)行音頻傳輸。在Ethernet標(biāo)準(zhǔn)中,最大的包大小限于1526字節(jié)。
在傳統(tǒng)技術(shù)中,不只音頻數(shù)據(jù)包,如指令、對指令的回應(yīng)以及節(jié)拍(meter)顯示的等級數(shù)據(jù)之類的控制數(shù)據(jù)包也能夠在網(wǎng)絡(luò)上流動。然而,當(dāng)多個相同或不同種類的包被獲準(zhǔn)在網(wǎng)絡(luò)上流動時,用于傳輸音頻數(shù)據(jù)的帶寬相應(yīng)減少。由于除了音頻數(shù)據(jù)之外其它包也在網(wǎng)絡(luò)上流動,因此這些包可能干擾音頻數(shù)據(jù)的傳輸。這種情況在采用CSMA/CD方法的Ethernet中尤為嚴(yán)重。
此外,由于對應(yīng)于多個采樣周期的采樣是通過合并成一個包而傳輸?shù)?,因此將多個采樣打包成為一個包和將一個包重構(gòu)成為多個采樣是很花時間的,并且用于打包和重構(gòu)的電路復(fù)雜。
發(fā)明內(nèi)容
本發(fā)明的目的是提供能夠穩(wěn)定地傳輸音頻數(shù)據(jù)并能夠簡化每個節(jié)點處數(shù)據(jù)傳輸和接收電路的音頻網(wǎng)絡(luò)系統(tǒng)。
根據(jù)本發(fā)明,上述目的可通過提供一種音頻網(wǎng)絡(luò)系統(tǒng)來實現(xiàn),所述音頻網(wǎng)絡(luò)系統(tǒng)包括多個節(jié)點并允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收音頻數(shù)據(jù)。所述多個節(jié)點連接成環(huán)以允許經(jīng)由所述多個節(jié)點以環(huán)的形式發(fā)送所述音頻數(shù)據(jù),并且在該環(huán)中從上游節(jié)點至下游節(jié)點的一個方向上執(zhí)行所述音頻數(shù)據(jù)的發(fā)送。將所述多個節(jié)點中的一個節(jié)點設(shè)定為主節(jié)點,將其它節(jié)點設(shè)定為從節(jié)點。所述主節(jié)點在每個采樣周期中周期性發(fā)送包含所述音頻數(shù)據(jù)的幀數(shù)據(jù)包,使得所述主節(jié)點在每個采樣周期中發(fā)送的包在一個或多個采樣周期中經(jīng)由所述多個節(jié)點循環(huán)而返回到所述主節(jié)點。所述包具有預(yù)定的數(shù)據(jù)長度,并包括對應(yīng)于多個信道而劃分成多個區(qū)塊的音頻數(shù)據(jù)存儲區(qū),使得每個區(qū)塊存儲對應(yīng)信道的音頻數(shù)據(jù)。為所述多個節(jié)點中的每個節(jié)點設(shè)定發(fā)送信道或接收信道,所述發(fā)送信道和所述接收信道均表示所述包的多個區(qū)塊之一。每一所述從節(jié)點在每個采樣周期中從所述包的報頭開始逐個區(qū)塊地從上游節(jié)點接收所述包,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的發(fā)送信道,所述從節(jié)點運行為用所述從節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述已接收區(qū)塊;另一方面,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的接收信道,所述從節(jié)點運行為從所述已接收區(qū)塊獲取所述從節(jié)點待接收的音頻數(shù)據(jù),然后在從所述從節(jié)點開始接收所述包的報頭時起已經(jīng)過去預(yù)定時間之后,所述從節(jié)點開始將所述包發(fā)送至下游節(jié)點。所述主節(jié)點在每個采樣周期中從所述包的報頭開始逐個區(qū)塊地接收已從最下游節(jié)點返回的包,并基于已接收的包構(gòu)建待在下一個采樣周期中發(fā)送的下一個包或所述下一個包之后的包的每個區(qū)塊,如果所述包的區(qū)塊對應(yīng)于為所述主節(jié)點設(shè)定的發(fā)送信道,所述主節(jié)點運行為用所述主節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述區(qū)塊;另一方面,如果所述包的區(qū)塊對應(yīng)于為所述主節(jié)點設(shè)定的接收信道,所述主節(jié)點運行為從所述區(qū)塊獲取所述主節(jié)點待接收的音頻數(shù)據(jù),并且在所述下一個采樣周期開始時,所述主節(jié)點開始將已構(gòu)建的包發(fā)送至下游節(jié)點。所述已構(gòu)建的包與所述主節(jié)點構(gòu)建該包所基于的包包含相同的音頻數(shù)據(jù)。在所述音頻網(wǎng)絡(luò)系統(tǒng)中一個發(fā)送信道僅設(shè)定給一個節(jié)點,以使所述音頻數(shù)據(jù)在所述音頻網(wǎng)絡(luò)系統(tǒng)中的循環(huán)期間由所述一個節(jié)點寫入?yún)^(qū)塊的音頻數(shù)據(jù)不被另一節(jié)點重寫,并且所述音頻網(wǎng)絡(luò)系統(tǒng)中的任一節(jié)點能夠接收所述音頻數(shù)據(jù)。
盡管在一個至幾個采樣周期中以環(huán)形式發(fā)送一個包,但是在不脫離本發(fā)明范圍的情況下,也可以在一個至幾個采樣周期中以環(huán)形式發(fā)送預(yù)定數(shù)量的包。
一個或預(yù)定數(shù)量的包(優(yōu)選地,預(yù)定數(shù)量的包中的至少一個)除了包括所述音頻數(shù)據(jù)存儲區(qū)之外還包括控制數(shù)據(jù)存儲區(qū),其中所述包的控制數(shù)據(jù)存儲區(qū)用于允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收控制數(shù)據(jù)。
盡管包的大小和結(jié)構(gòu)是可變的,但是優(yōu)選地,所述包具有符合Ethernet標(biāo)準(zhǔn)的數(shù)據(jù)大小和數(shù)據(jù)結(jié)構(gòu),并且由Ethernet標(biāo)準(zhǔn)定義的發(fā)送器、接收器以及傳輸電纜可用于所述包的傳輸。
在一種形式下,所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點通過一條線路級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述多個節(jié)點還通過另一條線路級聯(lián)連接以便沿另一方向發(fā)送所述包。
在另一種形式下,所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點從第一節(jié)點至最末節(jié)點級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述最末節(jié)點連接至所述第一節(jié)點以使所述包返回至所述第一節(jié)點。
根據(jù)本發(fā)明,在每個采樣周期中的任何時刻,預(yù)定數(shù)量的包(例如,一個包)在網(wǎng)絡(luò)上循環(huán)。這實現(xiàn)了非常穩(wěn)定的通信。例如,在每個采樣周期循環(huán)一個包的情況下,能夠接收和發(fā)送包的每個節(jié)點在每個采樣周期中可發(fā)送音頻數(shù)據(jù)的一個采樣,從而以逐個采樣的方式進行輸出,或者在每個采樣周期中可接收音頻數(shù)據(jù)的一個采樣,從而以逐個采樣的方式進行接收。這使得可以容易地再現(xiàn)采樣時鐘和簡化打包(packetization)電路。此外,由主節(jié)點發(fā)送的包在保持其數(shù)據(jù)結(jié)構(gòu)的同時被以環(huán)的形式運送,并且每個從節(jié)點只需要用音頻數(shù)據(jù)重寫分配給該從節(jié)點的一個信道的區(qū)域,或者從為該從節(jié)點設(shè)定的另一信道的區(qū)域提取音頻數(shù)據(jù)。這顯著簡化了每個從節(jié)點中用于輸出或輸入一個包的音頻數(shù)據(jù)的電路。使用Ethernet標(biāo)準(zhǔn)的包使得能夠使用與Ethernet兼容的發(fā)送器、接收器以及傳輸電纜,從而能夠使用易于獲得的廉價硬件。
圖1a和圖1b示出在應(yīng)用根據(jù)本發(fā)明的音頻網(wǎng)絡(luò)系統(tǒng)時節(jié)點之間的連接實例和節(jié)點之間的傳輸實例。
圖2a至圖2f示出本實施例的音頻網(wǎng)絡(luò)系統(tǒng)中包中的位數(shù)據(jù)流。
圖3示出一個包的幀數(shù)據(jù)結(jié)構(gòu)。
圖4示出每個節(jié)點中包含的幀數(shù)據(jù)發(fā)送/接收單元的結(jié)構(gòu)。
圖5示出每條傳輸線上的包的時序圖。
圖6為示出本實施例中音頻采樣的傳輸流的示意圖。
圖7a和圖7b為示出從節(jié)點中的硬件處理的流程圖。
圖8a至圖8c為示出主節(jié)點中的硬件處理的流程和緩沖器結(jié)構(gòu)圖。
圖9a和圖9b為主節(jié)點中的采樣時鐘中斷處理和1字節(jié)發(fā)送事件處理的流程圖。
具體實施例方式
下面將參照附圖描述本發(fā)明的實施例。
圖1a和圖1b示出在應(yīng)用根據(jù)本發(fā)明的音頻網(wǎng)絡(luò)系統(tǒng)時節(jié)點之間的連接實例和節(jié)點之間的傳輸實例。圖1a示出主節(jié)點A101和從節(jié)點B102、C103、D104和E105的環(huán)形連接實例。標(biāo)號“111”至“115”表示節(jié)點之間連接的物理連接線。在這種網(wǎng)絡(luò)系統(tǒng)中,連接的節(jié)點中只有一個節(jié)點是主節(jié)點。這里,節(jié)點A101是主節(jié)點,而其它節(jié)點是從節(jié)點。箭頭“121”至“125”均表示包的每位數(shù)據(jù)的傳輸方向。
主節(jié)點A101定期發(fā)送多個包,每一個采樣周期發(fā)送一個包,所述采樣周期為網(wǎng)絡(luò)系統(tǒng)中的音頻信號采樣時鐘的周期。具體來說,在一個采樣周期中,每個節(jié)點101至105從上游節(jié)點接收一個包的位數(shù)據(jù),并將這一個包的位數(shù)據(jù)輸出至下游節(jié)點。主節(jié)點A101執(zhí)行采樣周期的同步。具體來說,在一個采樣周期的開始時刻,主節(jié)點A101開始將一個包的位數(shù)據(jù)發(fā)送至下游節(jié)點B102。在完成一個包的位數(shù)據(jù)的發(fā)送之后,主節(jié)點A101等候直到該采樣周期終止。在下一個采樣周期的開始時刻,主節(jié)點A101開始將下一個包的位數(shù)據(jù)發(fā)送至下游節(jié)點B102。
本實施例的網(wǎng)絡(luò)系統(tǒng)中的包與傳統(tǒng)Ethernet標(biāo)準(zhǔn)中使用的包相同。然而,在傳統(tǒng)Ethernet中,以包為基礎(chǔ)執(zhí)行傳輸,并且直到節(jié)點之間的傳輸終止時節(jié)點之間傳輸?shù)臄?shù)據(jù)包才會被重寫。另一方面,在本實施例中,在從主節(jié)點發(fā)送的包經(jīng)過回路中的各從節(jié)點直到返回主節(jié)點的同時,數(shù)據(jù)包被重寫,下面將對此進行更詳細(xì)地描述。在本實施例中,每個采樣周期傳輸音頻數(shù)據(jù)的容器稱為“包”。不限于Ethernet標(biāo)準(zhǔn)的包,本發(fā)明可使用任何其它格式的包。
盡管在OSI基準(zhǔn)模式下在層3中處理的數(shù)據(jù)單元稱為“包”,而在層2中處理的數(shù)據(jù)單元稱為“幀”,但在本實施例中如上所述,每個采樣周期傳輸?shù)囊纛l數(shù)據(jù)的容器稱為“包”,而實現(xiàn)包的實際數(shù)據(jù)序列稱為“幀”。因此,在本實施例中術(shù)語“包”和“幀”指代相同內(nèi)容。
一個包包括這樣的區(qū)域,所述區(qū)域包含音頻數(shù)據(jù)和多個信道的控制數(shù)據(jù)(如指令、對指令的回應(yīng)以及節(jié)拍顯示的等級數(shù)據(jù)之類)。對于每個節(jié)點,在節(jié)點中設(shè)定用于從該節(jié)點發(fā)送的多個信道之一(發(fā)送信道),和/或在節(jié)點中設(shè)定用于該節(jié)點接收的另一信道(接收信道)。因此,當(dāng)在一個采樣周期中一個包的位數(shù)據(jù)經(jīng)過每個節(jié)點而使得該節(jié)點從上游節(jié)點接收位數(shù)據(jù)并將其輸出至下游節(jié)點時,該節(jié)點用從該節(jié)點待發(fā)送的音頻數(shù)據(jù)的采樣重寫包中位于該節(jié)點的發(fā)送信道區(qū)域中的位數(shù)據(jù),并加載包中位于節(jié)點的接收信道區(qū)域中的位數(shù)據(jù),這是因為位于接收信道區(qū)域中的位數(shù)據(jù)是該節(jié)點待接收的音頻數(shù)據(jù)。在一個包的位數(shù)據(jù)經(jīng)過每個節(jié)點的時,該節(jié)點執(zhí)行至發(fā)送信道的上述數(shù)據(jù)寫操作和從接收信道的上述數(shù)據(jù)加載操作。之后,該節(jié)點將這一個包的位數(shù)據(jù)發(fā)送至緊接著的下游節(jié)點。在主節(jié)點A101中執(zhí)行相同的處理。具體來說,主節(jié)點A101接收從最下游節(jié)點E105發(fā)送的包,并用從主節(jié)點A101待發(fā)送的音頻數(shù)據(jù)的采樣重寫包中分配給主節(jié)點A101的發(fā)送信道,并將主節(jié)點A101通過分配給主節(jié)點A101的接收信道待接收的音頻數(shù)據(jù)加載至包中。通過上述處理產(chǎn)生的數(shù)據(jù)包是下一個采樣周期將發(fā)送的數(shù)據(jù)包。
作為將參照圖3描述的每個包(幀)的具體結(jié)構(gòu),在每個包中不僅設(shè)定上述用于設(shè)定每個信道音頻數(shù)據(jù)的區(qū)域,而且設(shè)定用于存儲控制數(shù)據(jù)的區(qū)域。利用用于存儲控制數(shù)據(jù)的區(qū)域,能夠在節(jié)點之間發(fā)送和接收(即通信)各種控制數(shù)據(jù)。
控制臺106連接至節(jié)點B102。例如,當(dāng)前往控制臺106的數(shù)據(jù)包含在節(jié)點B102接收的控制數(shù)據(jù)中時,如箭頭116所示,將控制數(shù)據(jù)從節(jié)點B102發(fā)送至控制臺106。當(dāng)控制臺106具有待發(fā)送至節(jié)點的控制數(shù)據(jù)時,如箭頭117所示,控制臺106將控制數(shù)據(jù)發(fā)送至節(jié)點B102,并且節(jié)點B102在對應(yīng)區(qū)域中設(shè)定在網(wǎng)絡(luò)上循環(huán)的控制數(shù)據(jù)包,并將其發(fā)送至目標(biāo)節(jié)點。將參照圖3描述發(fā)送和接收控制數(shù)據(jù)的具體方法。
圖1b示出通過雙連接線將節(jié)點級聯(lián)連接的實例。在本實例中,在使用前向線和后向線的回路中傳送包,其中包通過前向線在向前的方向上流動,包通過后向線在向后的方向上流動。標(biāo)號“141”表示主節(jié)點A,而標(biāo)號“142”至“144”表示從節(jié)點B、C和D。主節(jié)點A141和從節(jié)點B 142通過前向信號線151和后向信號線156連接。類似地,節(jié)點B142和節(jié)點C143通過連接線152和155連接,節(jié)點C143和節(jié)點D144通過連接線153和154連接。包流動的方向由箭頭161至166表示。圖1b所示的實例與圖1a所示的實例基本相同之處在于從主節(jié)點A141輸出的一個包的位數(shù)據(jù)經(jīng)由各節(jié)點循環(huán)并返回至節(jié)點A141,如箭頭161至166所示。然而,在圖1b所示的實例中,在到達(dá)末端從節(jié)點D144之后在返回主節(jié)點A的過程中,包經(jīng)過節(jié)點C和B。在前向路徑上執(zhí)行每個節(jié)點A至D的音頻數(shù)據(jù)和控制數(shù)據(jù)的寫和讀。在沿著節(jié)點A至D的返回路徑上,不執(zhí)行數(shù)據(jù)加載或?qū)?,使得?shù)據(jù)只經(jīng)過各節(jié)點。在圖1b所示的實例中,末端節(jié)點A是主節(jié)點。然而,同樣在將中間節(jié)點B或C設(shè)定為主節(jié)點時,箭頭161、162和163的路徑稱為“前向路徑”,而箭頭164、165和166的路徑稱為“后向路徑”,并且在前向路徑上執(zhí)行數(shù)據(jù)加載或?qū)?在圖1b中在前向路徑上包在向右的方向上行進)。在這種情況下,主節(jié)點(其位于圖的中部)左側(cè)的從節(jié)點首先在前向路徑上接收包,然后在后向路徑上接收包,但是在前向路徑上執(zhí)行數(shù)據(jù)加載或?qū)?。此外,在后向路徑上可以?zhí)行數(shù)據(jù)加載或?qū)?,而不是在后向路徑上僅使數(shù)據(jù)經(jīng)過每個節(jié)點。
在環(huán)形連接的情況下,在多個節(jié)點依次連接之后,多個節(jié)點中的末端節(jié)點必須相互連接。另一方面,在級聯(lián)連接的情況下,只需要使用雙連接線依次連接多個節(jié)點。因此,級聯(lián)連接的裝置可具有更簡單的結(jié)構(gòu)。
圖2a至圖2f示出本實施例的音頻網(wǎng)絡(luò)系統(tǒng)中包中的位數(shù)據(jù)流。在以下對本實例的描述中,假定主節(jié)點A和從節(jié)點B和C通過前向路徑和后向路徑連接,如圖1b所示。
在一個采樣周期的開始時刻,主節(jié)點A開始傳輸一個包的位數(shù)據(jù)。圖2a示出主節(jié)點A將包的頭位B0發(fā)送至下游節(jié)點B的狀態(tài),如箭頭201所示。之后,以與從主節(jié)點A輸出的網(wǎng)絡(luò)時鐘同步的方式,主節(jié)點A依次逐位發(fā)送包中的頭位B0后面的各位數(shù)據(jù)。圖2b示出在對應(yīng)于50位的時間已經(jīng)過去的時刻主節(jié)點A將包的第51位B1發(fā)送至節(jié)點B的狀態(tài),如箭頭203所示。此時,節(jié)點B將接收到的頭位B0發(fā)送至下一節(jié)點C,如箭頭202所示。當(dāng)然,中間的各位也被傳輸,盡管圖中只關(guān)注第五十位。類似地,主節(jié)點A相繼輸出由第101位B2、第151位B3和第201位B4表示的位數(shù)據(jù),如圖2c至圖2e所示,并且輸出的位數(shù)據(jù)在經(jīng)過各節(jié)點之后返回主節(jié)點A。圖2e示出已返回主節(jié)點A的包的頭位B0被存儲在緩沖器中的狀態(tài),如標(biāo)號“211”所示。圖2f示出已相繼返回主節(jié)點A的500位數(shù)據(jù)B0-B10被存儲在緩沖器中的狀態(tài),如標(biāo)號“216”所示。主節(jié)點A在以上述方式發(fā)送包的所有位之后等候直到該采樣周期終止,然后開始發(fā)送下一采樣周期的包,如圖2a所示。然而,在圖2f的時刻主節(jié)點A還沒有接收到該采樣周期的包的最末位。
當(dāng)如上所述一個包的位數(shù)據(jù)在一個采樣周期中循環(huán)一次時,每個節(jié)點加載在該節(jié)點處待加載的接收信道的位數(shù)據(jù),并寫入在該節(jié)點處待寫入的傳輸信道的位數(shù)據(jù)。例如,如果節(jié)點B接收到的位數(shù)據(jù)是已設(shè)定為在節(jié)點B處待加載的接收信道的采樣數(shù)據(jù),則節(jié)點B將該位數(shù)據(jù)加載至節(jié)點B的緩沖器中。此外,如果接收到的位數(shù)據(jù)是已設(shè)定為從節(jié)點B待發(fā)送的發(fā)送信道的采樣數(shù)據(jù),則用待寫入的數(shù)據(jù)重寫該位數(shù)據(jù)。在執(zhí)行這一處理之后,將該位數(shù)據(jù)發(fā)送至下一節(jié)點C。在下一節(jié)點處執(zhí)行相同處理??刂茢?shù)據(jù)的加載和寫以相同方式執(zhí)行。如上所述,在前向路徑(圖2中沿著節(jié)點A→B→C)上執(zhí)行本實施例中每個節(jié)點處的數(shù)據(jù)加載或?qū)?,而在后向路?沿著節(jié)點C→B→A)上數(shù)據(jù)僅經(jīng)過各節(jié)點。
圖3示出在本實施例的音頻網(wǎng)絡(luò)系統(tǒng)中在一個采樣周期中循環(huán)經(jīng)由所有連接節(jié)點的一個包的幀數(shù)據(jù)結(jié)構(gòu)。例如,一個包的幀數(shù)據(jù)的字節(jié)總數(shù)為1282。
標(biāo)號“301”表示存儲前同步碼(preamble)、目標(biāo)MAC地址、源MAC地址以及數(shù)據(jù)長度的區(qū)域。前同步碼是用于在傳輸幀數(shù)據(jù)時在每個節(jié)點處建立同步的數(shù)據(jù)。每個節(jié)點從自上游節(jié)點接收的數(shù)據(jù)中檢測前同步碼,并根據(jù)檢測到的前同步碼確定包的幀數(shù)據(jù)已經(jīng)開始。在目標(biāo)MAC地址中設(shè)定表示廣播的十六進制值“FF…FF”(其可以是根據(jù)包的流動接收該包的下一節(jié)點的MAC地址),并且在源MAC地址中設(shè)定主節(jié)點的MAC地址(其可以是發(fā)送包的節(jié)點的MAC地址)。本音頻網(wǎng)絡(luò)系統(tǒng)中的每個節(jié)點(包括圖1a或圖1b中的控制臺106和145)均具有MAC地址?!伴L度”表示本幀數(shù)據(jù)的總長度(例如1282字節(jié))。
標(biāo)號“302”表示存儲包序號TN、每個采樣周期中的包數(shù)PN、采樣延遲值SD、和音頻信道數(shù)ACN的8字節(jié)區(qū)域。包序號TN是分配給包的序號,其在每次主節(jié)點開始發(fā)送包時增加。當(dāng)在一個采樣周期中循環(huán)多個包時(在修改例中將對此進行描述),包的每個采樣周期中的包數(shù)PN為表示采樣周期中包序數(shù)的包序號。在本實施例中沒有使用每個采樣周期中的包數(shù)PN,這是因為在一個采樣周期中循環(huán)一個包。音頻信道數(shù)ACN表示下文描述的音頻數(shù)據(jù)存儲區(qū)303的信道數(shù)量。
標(biāo)號“303”表示存儲音頻數(shù)據(jù)的區(qū)域。這里,采樣頻率Fs為96kHz,并且一個采樣被分為可存儲256信道的32位數(shù)據(jù)的區(qū)塊。因此,ACN被設(shè)定為256。256信道的各個區(qū)塊是設(shè)定從頭起依次為第1信道、第2信道、…第256信道的采樣數(shù)據(jù)的區(qū)域。這里,為了確保穩(wěn)定的音頻傳輸,甚至于對未用于節(jié)點間傳輸?shù)男诺?,也總是確保其帶寬。例如,即使在網(wǎng)絡(luò)系統(tǒng)中的任一節(jié)點處對某一信道的區(qū)塊不執(zhí)行寫時,主節(jié)點也不去除該信道的區(qū)塊。因此,音頻信道數(shù)ACN具有恒定值,其等于可傳輸信道的最大數(shù)。主節(jié)點可將無聲音頻信號寫至未被使用信道的區(qū)塊。
標(biāo)號“304”表示存儲控制數(shù)據(jù)的224字節(jié)區(qū)域??刂茢?shù)據(jù)包括多種數(shù)據(jù),例如指令、回應(yīng)和等級數(shù)據(jù)。例如,當(dāng)某一節(jié)點成為需要將一些數(shù)據(jù)發(fā)送至接收節(jié)點的發(fā)送節(jié)點時,執(zhí)行以下過程。首先,由于在控制數(shù)據(jù)存儲區(qū)304的預(yù)定位置設(shè)定表示發(fā)送數(shù)據(jù)權(quán)的標(biāo)志,因此需要發(fā)送控制數(shù)據(jù)的節(jié)點獲得在每個采樣周期經(jīng)由各節(jié)點循環(huán)的包中所包含的令牌(token)。當(dāng)某一節(jié)點獲得該令牌時,則該節(jié)點取得發(fā)送權(quán),并且其它節(jié)點在該節(jié)點釋放該令牌之前不能獲得該令牌。已獲得令牌而具有發(fā)送權(quán)的節(jié)點創(chuàng)建傳統(tǒng)Ethernet標(biāo)準(zhǔn)(其中在目標(biāo)MAC地址中設(shè)定接收節(jié)點的MAC地址)的發(fā)送數(shù)據(jù)包(所述發(fā)送數(shù)據(jù)包包括該節(jié)點需要發(fā)送的數(shù)據(jù)),然后該節(jié)點劃分發(fā)送數(shù)據(jù)包并將其插入控制數(shù)據(jù)存儲區(qū)304,以將其以具有圖3所示格式的多個已劃分包的形式分別進行發(fā)送。已接收該包的每個節(jié)點加載控制數(shù)據(jù)存儲區(qū)304的數(shù)據(jù)。如果加載的數(shù)據(jù)是Ethernet標(biāo)準(zhǔn)的發(fā)送數(shù)據(jù)包的已劃分?jǐn)?shù)據(jù),則該節(jié)點組合分別接收到的多個已劃分?jǐn)?shù)據(jù),以重構(gòu)Ethernet標(biāo)準(zhǔn)的發(fā)送數(shù)據(jù)包并確定其目標(biāo)MAC地址是否為該節(jié)點的地址。如果目標(biāo)MAC地址是該節(jié)點的地址,則該節(jié)點加載發(fā)送數(shù)據(jù)包。當(dāng)目標(biāo)MAC地址不是該節(jié)點的地址時,該節(jié)點放棄該發(fā)送數(shù)據(jù)包。通過以上述方式在圖3所示的循環(huán)包中攜帶控制數(shù)據(jù),能夠在各節(jié)點之間發(fā)送和接收控制數(shù)據(jù)。
令牌可以不總循環(huán)。例如,每次包循環(huán)預(yù)定次數(shù)時,令牌可以經(jīng)由以環(huán)形連接的各節(jié)點循環(huán)一次。當(dāng)音頻網(wǎng)絡(luò)系統(tǒng)啟動時,在其初始化過程中為所有節(jié)點提供連接至網(wǎng)絡(luò)的節(jié)點(包括圖1a或圖1b的控制臺106或145)的相應(yīng)MAC地址或連接位置。因此,能夠以與一般LAN相同的方式在節(jié)點之間傳遞控制數(shù)據(jù)?;蛘?,執(zhí)行系統(tǒng)整體控制的控制臺可管理令牌。例如,在包的控制數(shù)據(jù)區(qū)設(shè)定用于存儲標(biāo)記(flag)(其用于請求對應(yīng)于每個節(jié)點的令牌)的區(qū)域,并且通過設(shè)定標(biāo)記從控制臺請求令牌,響應(yīng)于該請求控制臺為進行該請求的節(jié)點分配令牌。在這種情況下,在完成包發(fā)送時,該節(jié)點將令牌返回控制臺。
標(biāo)號“305”表示用于錯誤檢驗的FCS區(qū)域。在本實施例中,F(xiàn)CS區(qū)域305僅對一對發(fā)送和接收節(jié)點有效,這是因為圖3所示的包在經(jīng)由每個節(jié)點循環(huán)的同時被重寫,如以上參照圖1a或圖1b所述。例如,節(jié)點A在其FCS區(qū)域305中設(shè)定幀數(shù)據(jù)的FCS之后將幀數(shù)據(jù)發(fā)送至節(jié)點B,并且節(jié)點B通過校驗接收到的幀數(shù)據(jù)的FCS來確定幀數(shù)據(jù)是否被正常接收。當(dāng)幀數(shù)據(jù)被正常接收時,從幀數(shù)據(jù)讀出的音頻采樣被再現(xiàn),或者基于從幀數(shù)據(jù)讀出的控制數(shù)據(jù)執(zhí)行控制,并且基于已進行音頻采樣寫入的幀數(shù)據(jù)或者在對應(yīng)節(jié)點處待重寫的控制數(shù)據(jù)也產(chǎn)生FCS,然后在FCS區(qū)域305中設(shè)定產(chǎn)生的FCS之后將幀數(shù)據(jù)發(fā)送至節(jié)點B。當(dāng)幀數(shù)據(jù)被異常接收時,從幀數(shù)據(jù)讀出的音頻采樣或控制數(shù)據(jù)被放棄,而再現(xiàn)的音頻采樣被消減,并在對應(yīng)節(jié)點的FCS區(qū)域305中或者在緊接著的前一區(qū)域中設(shè)定表示對應(yīng)節(jié)點的接收出現(xiàn)錯誤的信息之后,將幀數(shù)據(jù)發(fā)送至節(jié)點B。
圖4示出每個節(jié)點中包含的幀數(shù)據(jù)發(fā)送/接收單元的結(jié)構(gòu)。幀數(shù)據(jù)發(fā)送/接收單元包括幀接收器401、幀重構(gòu)器402、幀發(fā)送器403、音頻采樣提取器404、信道寄存器(CH)405、音頻輸出緩沖器406、音頻輸入緩沖器407、信道寄存器408、幀接收器409以及幀發(fā)送器410。
從幀接收器401經(jīng)由幀重構(gòu)器402至幀發(fā)送器403的路徑為本節(jié)點的前向路徑,而從幀接收器409至幀發(fā)送器410的路徑為本節(jié)點的后向路徑。如果節(jié)點(例如,圖1b的節(jié)點A)未連接至既用作幀發(fā)送器410的輸出目標(biāo)節(jié)點又用作幀接收器401的輸入源節(jié)點的任一節(jié)點,則幀發(fā)送器410自動連接至幀接收器401,使得數(shù)據(jù)從幀發(fā)送器410直接被傳遞至幀接收器401。如果節(jié)點(例如,圖1b的節(jié)點D)未連接至既用作幀發(fā)送器403的輸出目標(biāo)節(jié)點又用作幀接收器409的輸入源節(jié)點的任一節(jié)點,則幀發(fā)送器403自動連接至幀接收器409,使得數(shù)據(jù)從幀發(fā)送器403直接被傳遞至幀接收器409。
在圖4中,從上游節(jié)點發(fā)送的位數(shù)據(jù)依次被幀接收器401接收。幀接收器401從接收到的位數(shù)據(jù)提取網(wǎng)絡(luò)時鐘,還檢測以上參照圖3描述的前同步碼部分,并基于前同步碼部分的末端檢測音頻數(shù)據(jù)303范圍內(nèi)的數(shù)據(jù)。音頻采樣提取器404提取音頻數(shù)據(jù)303的每個信道的時隙的采樣數(shù)據(jù)。如果在信道寄存器405中已設(shè)定該信道,則采樣數(shù)據(jù)被復(fù)制到音頻輸出緩沖器406。信道寄存器405是存儲在對應(yīng)節(jié)點處待加載的一個接收信道(或多個接收信道)的寄存器。
另一方面,幀接收器401依次接收的位數(shù)據(jù)被發(fā)送至幀重構(gòu)器402。幀重構(gòu)器402包括預(yù)定位數(shù)的緩沖器(例如,幾十位至幾百位的移位寄存器)。在接收到的位數(shù)據(jù)流過緩沖器時,幀重構(gòu)器402基于前同步碼的末端檢測每個信道的時隙(時鐘)的數(shù)據(jù)。如果在信道寄存器408中已經(jīng)設(shè)定該時隙的信道,則幀重構(gòu)器402用存儲在音頻輸入緩沖器407中的待寫入信道的采樣數(shù)據(jù)重寫該時隙。盡管該緩沖器407設(shè)置為用于執(zhí)行數(shù)據(jù)重寫,但是該緩沖器也用于補償節(jié)點接收到的位數(shù)據(jù)的網(wǎng)絡(luò)時鐘與節(jié)點發(fā)送的位數(shù)據(jù)的網(wǎng)絡(luò)時鐘之間的差異。然而,由于緩沖器的大小對應(yīng)于節(jié)點處的傳遞延遲,因此該緩沖器不能設(shè)計為過大。信道寄存器408是存儲本節(jié)點處待重寫的一個發(fā)送信道(或多個發(fā)送信道)的寄存器。由幀重構(gòu)器402重構(gòu)的幀數(shù)據(jù)經(jīng)由幀發(fā)送器403被發(fā)送至下游節(jié)點。
在后向路徑上,從上游節(jié)點的幀發(fā)送器發(fā)送且被幀接收器409接收的數(shù)據(jù)未經(jīng)改變而被傳遞至幀發(fā)送器410,然后被發(fā)送至下游節(jié)點。
基于由上游節(jié)點的幀發(fā)送器產(chǎn)生的網(wǎng)絡(luò)時鐘執(zhí)行從上游節(jié)點的幀發(fā)送器至幀接收器401的數(shù)據(jù)傳輸,并且基于由幀發(fā)送器403產(chǎn)生的網(wǎng)絡(luò)時鐘執(zhí)行從幀發(fā)送器403至下游節(jié)點的數(shù)據(jù)傳輸。因此,幀接收器401的接收操作和幀發(fā)送器403的發(fā)送操作異步執(zhí)行。在后向路徑上亦如此。
以上述方式,為本節(jié)點設(shè)定的信道的采樣可被加載到本節(jié)點的音頻輸出緩沖器406中。此外,本節(jié)點處輸入的音頻數(shù)據(jù)的采樣可在音頻輸入緩沖器407中設(shè)定,并且可通過在幀數(shù)據(jù)中設(shè)定信道的時隙中攜帶該采樣而將其發(fā)送至另一節(jié)點。
下面將描述系統(tǒng)中使用的采樣時鐘CS(字時鐘)。系統(tǒng)的各節(jié)點為多種音頻裝置,每個音頻裝置以與其產(chǎn)生的采樣時鐘CS同步的方式處理音頻數(shù)據(jù)。如果在將音頻數(shù)據(jù)從發(fā)送音頻裝置發(fā)送至接收音頻裝置時發(fā)送音頻裝置的采樣時鐘CS的頻率不同于接收音頻裝置的采樣時鐘CS的頻率,接收音頻裝置必須轉(zhuǎn)換其采樣頻率,這是因為接收音頻裝置不能處理未轉(zhuǎn)換的音頻數(shù)據(jù)。然而,采樣頻率轉(zhuǎn)換可能降低音頻數(shù)據(jù)的質(zhì)量。因此,在本系統(tǒng)中,由音頻裝置產(chǎn)生的采樣時鐘CS與以采樣周期的間隔從主節(jié)點接收包的時序(即,主節(jié)點產(chǎn)生采樣時鐘的時序)在相位上同步,由此近似匹配音頻裝置的采樣時鐘。這使得能夠在不轉(zhuǎn)換采樣頻率的情況下在音頻裝置之間發(fā)送和接收音頻數(shù)據(jù)。更具體來說,主節(jié)點在其采樣時鐘CS的產(chǎn)生時刻開始發(fā)送包。在接收包時,每個從節(jié)點通過幀接收器401檢測包的前同步碼部分,并基于前同步碼部分的終止時刻通過鎖相環(huán)(PLL)振蕩器產(chǎn)生其采樣時鐘CS。由于圖3所示的包在每個采樣周期經(jīng)由系統(tǒng)的所有節(jié)點循環(huán),因此每個節(jié)點能夠產(chǎn)生同步的采樣時鐘。盡管每個節(jié)點處執(zhí)行的處理引起延遲并且各節(jié)點之間的電纜也引起延遲,但是這些延遲實際上可忽略。在考慮這些延遲的情況下,可校正每個節(jié)點的時序以產(chǎn)生更準(zhǔn)確的同步時鐘。
圖5示出每條傳輸線上包的時序圖。例如,這可以視為圖1b所示的傳輸線111上的包時序圖,在所述傳輸線111上將包從主節(jié)點A101傳送至下游節(jié)點B101。這里,假定采樣頻率FS為96kHz。一個采樣周期的時間長度為10.4微秒。標(biāo)號“501”、“502”和“503”表示采樣周期的開始時間。各節(jié)點之間的傳輸線的協(xié)議使用如上所述Ethernet標(biāo)準(zhǔn)的傳輸介質(zhì)或物理層。這里,假定以1000BASE-T Ethernet標(biāo)準(zhǔn)的1Gbps速度在各節(jié)點之間進行數(shù)據(jù)傳輸。以上述速度,傳輸1位花費1納秒,從而以上參照圖3所述的一個包的幀數(shù)據(jù)的時間長度為10.26微秒(=1納秒×8位×1282字節(jié))。這確保了一個包將包含在一個采樣周期的時段中。因此,如圖5所示,包“i”的位數(shù)據(jù)傳輸在采樣周期的開始時刻501開始,而包“i”的傳輸在到達(dá)下一個采樣周期的開始時刻502之前終止。對于包“i+1”和“i+2”亦如此。
圖6為示出本實施例中音頻采樣的傳輸流的示意圖。盡管圖6中示出一個包被依次從圖6中的每個節(jié)點傳送到相鄰節(jié)點,但是應(yīng)注意實際的包遍布在多個節(jié)點上,如圖2所示。這里假定節(jié)點A601是主節(jié)點,而B602和C603是從節(jié)點,并且各節(jié)點通過以上參照圖1b所述的前向和后向路徑連接。首先,假定采樣Ch1(s-2)、Ch2(s-2)和Ch3(s-2)存儲在幀614中,幀614是已準(zhǔn)備為在預(yù)定時間(t)將由主節(jié)點發(fā)送的包。時間(t)的時間分辨率對應(yīng)于采樣周期,并且在Ch*的當(dāng)前時間(t)的采樣數(shù)據(jù)表示為Ch*(s)。因此,“Ch*(s-3)”表示從Ch*的當(dāng)前時間起3個采樣之前的數(shù)據(jù)。已經(jīng)返回到節(jié)點A的信道Ch1、Ch2和Ch3的2個采樣之前的數(shù)據(jù)(s-2)被表示為包含在幀“611”中。
假定在時間(t)信道Ch1、Ch2和Ch3的采樣數(shù)據(jù)Ch1(s)、Ch2(s)和Ch3(s)被輸入到節(jié)點601、602和603。標(biāo)號“612”、“622”和“632”表示存儲將被輸入到節(jié)點A、B和C的相應(yīng)信道的采樣數(shù)據(jù)的緩沖器。標(biāo)號“613”、“623”和“633”表示分別設(shè)置在節(jié)點A、B和C中的緩沖器(對應(yīng)于圖4所示的音頻輸入緩沖器407)。這些緩沖器613、623和633均具有能夠存儲2個采樣的容量,并且當(dāng)前輸入的采樣數(shù)據(jù)Ch1(s)、Ch2(s)和Ch3(s)被寫至緩沖器613、623和633。
主節(jié)點A基于幀611創(chuàng)建當(dāng)前時間(t)的幀614,其中在對應(yīng)于時間(t-1)的緊接著的前一個采樣周期中幀611循環(huán)并返回到主節(jié)點A,在時間(t-1)采樣數(shù)據(jù)Ch1(s-1)、Ch2(s-1)和Ch3(s-1)被存儲在幀611中。主節(jié)點重寫信道Ch1的采樣數(shù)據(jù)Ch1(s-2),其中在存儲于所創(chuàng)建的幀614中的采樣數(shù)據(jù)Ch1(s-2)、Ch2(s-2)和Ch3(s-2)中采樣數(shù)據(jù)Ch1(s-2)被設(shè)定為在節(jié)點A處被寫,并且下一個采樣Ch1(s-1)被存儲在緩沖器613(618)中。已經(jīng)返回到節(jié)點A的幀611中存儲的其它信道的采樣按目前的樣子設(shè)定。在當(dāng)前時間(t)的采樣周期的開始時刻,節(jié)點A將以這種方式創(chuàng)建的包的幀數(shù)據(jù)發(fā)送到節(jié)點B。這里,假定已經(jīng)設(shè)定在節(jié)點A處信道Ch1、Ch2和Ch3的各個采樣數(shù)據(jù)將從循環(huán)的包加載。因此,在節(jié)點A處,返回的幀614的采樣數(shù)據(jù)Ch1(s-2)、Ch2(s-2)和Ch3(s-2)被加載到各個信道的緩沖器615、616和617中。這些緩沖器615、616和617對應(yīng)于圖4所示的音頻輸出緩沖器406。信道的各個緩沖器615、616和617均構(gòu)成為具有兩個區(qū)域,一個區(qū)域存儲從在時間(t)接收到的包加載的當(dāng)前采樣數(shù)據(jù),而另一個區(qū)域存儲一個周期之前的采樣數(shù)據(jù)。在圖6中,由節(jié)點寫至包的信道的采樣數(shù)據(jù)被表示為由同一節(jié)點加載。然而,這樣表示僅為了示出多個信道的采樣數(shù)據(jù)被加載的實例。實際上,由于由同一節(jié)點加載浪費資源,因此不由同一節(jié)點加載采樣數(shù)據(jù)。
節(jié)點B重寫信道Ch2的采樣數(shù)據(jù)Ch2(s-2),其中在存儲于幀624中的采樣數(shù)據(jù)Ch1(s-1)、Ch2(s-2)和Ch3(s-2)中采樣數(shù)據(jù)Ch2(s-2)被設(shè)定為在節(jié)點B處被寫,并且下一個采樣Ch2(s-1)被存儲在緩沖器623(628)中。其它信道的采樣按目前的樣子設(shè)定。節(jié)點B將以這種方式創(chuàng)建的包的幀數(shù)據(jù)發(fā)送到節(jié)點C。這里,假定已經(jīng)設(shè)定在節(jié)點B處信道Ch1、Ch2和Ch3的各個采樣數(shù)據(jù)將從循環(huán)的包加載。因此,在節(jié)點B處,幀624的采樣數(shù)據(jù)Ch1(s-1)、Ch2(s-2)和Ch3(s-2)被加載到各個信道的緩沖器625、626和627中。緩沖器625、626和627具有與節(jié)點A的緩沖器相同的結(jié)構(gòu)。
節(jié)點C重寫信道Ch3的采樣數(shù)據(jù)Ch3(s-2),其中在存儲于幀634中的采樣數(shù)據(jù)Ch1(s-1)、Ch2(s-1)和Ch3(s-2)中采樣數(shù)據(jù)Ch3(s-2)被設(shè)定為在節(jié)點C處被寫,并且下一個采樣Ch3(s-1)被存儲在緩沖器633(638)中。其它信道的采樣按目前的樣子設(shè)定。節(jié)點C將以這種方式創(chuàng)建的包的幀數(shù)據(jù)返回到后向路徑。這里,假定已經(jīng)設(shè)定在節(jié)點C處信道Ch1、Ch2和Ch3的各個采樣數(shù)據(jù)將從循環(huán)的包加載。因此,在節(jié)點C處,幀634的采樣數(shù)據(jù)Ch1(s-1)、Ch2(s-1)和Ch3(s-2)被加載到各個信道的緩沖器635、636和637中。緩沖器635、636和637具有與節(jié)點A的緩沖器相同的結(jié)構(gòu)。已經(jīng)返回到后向路徑的包僅經(jīng)過由“631”、“621”和“631”表示的節(jié)點,從而返回到主節(jié)點A。以相同的方式,主節(jié)點創(chuàng)建將在下一個采樣周期發(fā)送的包,并在下一個采樣周期的開始時刻將該包發(fā)送。
在本實施例中,只有主節(jié)點A能夠在無任何采樣滯后的情況下從每個節(jié)點獲得音頻采樣數(shù)據(jù),如從每個節(jié)點的采樣加載緩沖器的狀態(tài)看出的。另一方面,由于節(jié)點B或C具有將被上游節(jié)點處的下一采樣重寫的信道,因此在節(jié)點B或C處在從包加載采樣數(shù)據(jù)時產(chǎn)生采樣滯后。為了校正這種采樣滯后,每個節(jié)點可以包含關(guān)于網(wǎng)絡(luò)的所有布線狀態(tài)的信息和關(guān)于哪個節(jié)點存儲每個信道的信息,并且可以通過將在前一階段存儲的采樣數(shù)據(jù)延遲一個采樣而輸出在前一階段存儲的采樣數(shù)據(jù),如從該節(jié)點看出的。
圖7a示出當(dāng)在從節(jié)點的幀接收器401(參見圖4)處檢測到前同步碼時,為了引起“包接收發(fā)生事件”而進行的硬件處理。盡管圖7a至圖9b所示的處理因表示為流程圖而看似軟件處理,但是圖7a至圖9b所示的處理實際上是通過邏輯電路或數(shù)字信號處理器(DSP)執(zhí)行的硬件處理。在步驟701,從節(jié)點既能夠進行接收從上游節(jié)點發(fā)送的包的位數(shù)據(jù)并收集對應(yīng)于一個字節(jié)的上述位數(shù)據(jù)以激活圖7b所示的接收事件處理這樣的處理(接收處理),又能夠進行在一定量的數(shù)據(jù)已經(jīng)存儲在其幀重構(gòu)器402的緩沖器中的時刻開始將幀重構(gòu)器402的緩沖器中的數(shù)據(jù)發(fā)送至下游節(jié)點這樣的處理(發(fā)送處理)。這里,從節(jié)點在其前同步碼部分終止的時刻還提供時序信號至產(chǎn)生采樣時鐘Cs的PLL振蕩器(Fs發(fā)生器),由此控制采樣時鐘的頻率。
圖7b示出在開始接收處理之后接收對應(yīng)于一個字節(jié)的位數(shù)據(jù)時,從節(jié)點的幀數(shù)據(jù)發(fā)送/接收單元進行的硬件處理。盡管在本實例中基于字節(jié)處理接收到的數(shù)據(jù),但是可以基于位或字處理接收到的數(shù)據(jù)。在步驟702,加載接收到的1字節(jié)數(shù)據(jù)。在步驟703,確定哪個時隙對應(yīng)于接收到的1字節(jié)數(shù)據(jù)。如果接收到的1字節(jié)數(shù)據(jù)是報頭(header)數(shù)據(jù)(圖3中的“301”和“302”),則在步驟704該1字節(jié)數(shù)據(jù)被寫至幀重構(gòu)器402的緩沖器,并執(zhí)行對應(yīng)于接收到的報頭數(shù)據(jù)的處理。這里,通過發(fā)送處理,在達(dá)到一定量(幾十至幾百位)的數(shù)據(jù)保存在緩沖器中的時刻,通過接收事件處理被存儲在幀重構(gòu)器402的緩沖器中的數(shù)據(jù)通過幀發(fā)送器403被自動發(fā)送到下一個節(jié)點。因此,在上述接收事件處理中的“發(fā)送”處理是將待發(fā)送的數(shù)據(jù)寫至緩沖器的處理。幀發(fā)送器403的發(fā)送是根據(jù)基于幀數(shù)據(jù)發(fā)送/接收單元的運行時鐘產(chǎn)生的網(wǎng)絡(luò)時鐘而執(zhí)行的。上述用于發(fā)送的網(wǎng)絡(luò)時鐘與幀接收器401提取的用于接收的網(wǎng)絡(luò)時鐘不同步。
當(dāng)接收到的1字節(jié)數(shù)據(jù)是對應(yīng)于節(jié)點的發(fā)送信道(圖4中的信道408)的音頻數(shù)據(jù)時,在步驟705,存儲在音頻發(fā)送緩沖器(圖4中的音頻輸入緩沖器407)中的一個字節(jié)被提取并被重寫到幀重構(gòu)器402的緩沖器中對應(yīng)于接收到的1字節(jié)數(shù)據(jù)的位置,然后被從幀發(fā)送器403發(fā)送到下一個節(jié)點。當(dāng)接收到的1字節(jié)數(shù)據(jù)是節(jié)點的接收信道(圖4中的信道405)的音頻數(shù)據(jù)時,在步驟706,該1字節(jié)數(shù)據(jù)被寫至幀重構(gòu)器402的緩沖器中的對應(yīng)位置,然后在被加載到音頻接收緩沖器(圖4中的音頻輸出緩沖器406)的同時,通過幀發(fā)送器403被發(fā)送到下一個節(jié)點。如果接收到的1字節(jié)數(shù)據(jù)是其它數(shù)據(jù),例如,既非發(fā)送也非接收的信道的音頻數(shù)據(jù)之類的數(shù)據(jù),則在步驟707該1字節(jié)數(shù)據(jù)未經(jīng)改變而被寫至幀重構(gòu)器402的緩沖器,然后被發(fā)送到下一個節(jié)點。
如果接收到的1字節(jié)數(shù)據(jù)是控制數(shù)據(jù)存儲區(qū)(圖3中的“304”)中的數(shù)據(jù),則在步驟708確定節(jié)點是否具有發(fā)送數(shù)據(jù)權(quán)。如果節(jié)點沒有發(fā)送權(quán),則在步驟709該1字節(jié)數(shù)據(jù)未經(jīng)改變而被寫至幀重構(gòu)器402的緩沖器,然后被發(fā)送到下一個節(jié)點。在步驟709,該1字節(jié)數(shù)據(jù)還作為部分?jǐn)?shù)據(jù)被加載,并且執(zhí)行對應(yīng)于該部分?jǐn)?shù)據(jù)的處理。例如,如果部分?jǐn)?shù)據(jù)是令牌的已劃分?jǐn)?shù)據(jù)并且節(jié)點需要獲得發(fā)送權(quán),則節(jié)點將分別接收到的多個已劃分?jǐn)?shù)據(jù)合并以重構(gòu)令牌,由此獲得發(fā)送權(quán)并刪除寫至緩沖器的令牌以防止其被發(fā)送到下一個節(jié)點。如果已劃分?jǐn)?shù)據(jù)是通過劃分用于發(fā)送控制數(shù)據(jù)的發(fā)送數(shù)據(jù)包而產(chǎn)生的數(shù)據(jù)(以上參照圖3所描述的),則節(jié)點將分別接收到的多個已劃分?jǐn)?shù)據(jù)合并以重構(gòu)發(fā)送數(shù)據(jù)包。如果其目標(biāo)地址為節(jié)點地址,則節(jié)點加載該發(fā)送數(shù)據(jù)包并提取包含在發(fā)送數(shù)據(jù)包中的控制數(shù)據(jù),然后執(zhí)行對應(yīng)于控制數(shù)據(jù)的操作。當(dāng)節(jié)點在步驟708已經(jīng)獲得發(fā)送權(quán)時,則節(jié)點在步驟710將D發(fā)送緩沖器(其中存儲待發(fā)送數(shù)據(jù))中的1字節(jié)部分?jǐn)?shù)據(jù)重寫到幀重構(gòu)器402的緩沖器中對應(yīng)于接收到的1字節(jié)數(shù)據(jù)的位置,然后將其發(fā)送到下一個節(jié)點。在完成存儲在D發(fā)送緩沖器中的所有數(shù)據(jù)的發(fā)送時,節(jié)點創(chuàng)建令牌并將其寫至緩沖器中對應(yīng)于控制數(shù)據(jù)存儲區(qū)的位置,然后將其發(fā)送到下一個節(jié)點,從而釋放發(fā)送權(quán)。如果存儲在D發(fā)送緩沖器中的數(shù)據(jù)大于對應(yīng)于控制數(shù)據(jù)存儲區(qū)大小的224字節(jié),則數(shù)據(jù)不能包含于一個包的控制數(shù)據(jù)存儲區(qū)中,因此數(shù)據(jù)被劃分為多個部分?jǐn)?shù)據(jù)(每個部分?jǐn)?shù)據(jù)小于224字節(jié)),然后通過被包含在多個連續(xù)采樣周期的各個包的控制數(shù)據(jù)存儲區(qū)中而被發(fā)送。
在步驟704-707、709和710之后,節(jié)點確定在步驟711接收到的1字節(jié)數(shù)據(jù)是否為最末字節(jié)。如果接收到的1字節(jié)數(shù)據(jù)是最末字節(jié),則節(jié)點在步驟712執(zhí)行終止發(fā)送/接收的處理。發(fā)送/接收終止處理包括與上述FCS糾錯相關(guān)的一系列處理和在完成最末字節(jié)數(shù)據(jù)的發(fā)送時終止發(fā)送的處理。
圖8a示出在主節(jié)點的幀接收器401(參見圖4)處檢測到前同步碼時,為了引起“包接收發(fā)生事件”而進行的硬件處理。在步驟801,主節(jié)點執(zhí)行接收開始處理,并激活用以接收從系統(tǒng)的多個從節(jié)點發(fā)送的包的位數(shù)據(jù)和收集對應(yīng)于一個字節(jié)的上述位數(shù)據(jù)的處理,以激活圖8b所示的接收事件處理。從而,開始用以接收包的幀數(shù)據(jù)的處理。由于其它節(jié)點的采樣時鐘是基于在主節(jié)點處產(chǎn)生的采樣時鐘而產(chǎn)生的,因此在步驟801不必控制采樣時鐘CS的頻率。
圖8b示出在開始接收處理之后接收對應(yīng)于一個字節(jié)的位數(shù)據(jù)時,主節(jié)點的幀數(shù)據(jù)發(fā)送/接收單元進行的硬件處理。在步驟802,加載接收到的1字節(jié)數(shù)據(jù)。在步驟803,確定哪個時隙對應(yīng)于接收到的1字節(jié)數(shù)據(jù)。步驟804-810類似于圖7b所示的步驟704-710。然而,在步驟704-707、709和710,在達(dá)到一定量(幾十至幾百位)的數(shù)據(jù)保存在緩沖器中的時刻,從節(jié)點自動開始至下一個節(jié)點的發(fā)送,主節(jié)點不根據(jù)緩沖器中的數(shù)據(jù)量自動開始發(fā)送,而在等到一個采樣周期終止之后(即在下一個采樣周期的開始時刻)開始發(fā)送。因此,步驟804-807、809和810表示為“將1字節(jié)數(shù)據(jù)保存在緩沖器中”,而不是圖7b所示的“將1字節(jié)數(shù)據(jù)寫至幀重構(gòu)器402的緩沖器”。此外,盡管接收到的幀數(shù)據(jù)是當(dāng)前采樣周期的幀數(shù)據(jù),但是將由主節(jié)點發(fā)送的下一個數(shù)據(jù)是下一個采樣周期的幀數(shù)據(jù)。因此,主節(jié)點在將接收到的幀數(shù)據(jù)轉(zhuǎn)換為下一個采樣周期的幀數(shù)據(jù)的同時執(zhí)行寫入緩沖器的操作。步驟811和812類似于圖7b所示的步驟711和712。然而,在步驟812,由于還沒有開始發(fā)送,因此主節(jié)點僅執(zhí)行接收終止處理。
圖8c示出如何使用包含在主節(jié)點的幀重構(gòu)器402中的緩沖器(幀數(shù)據(jù)隊列緩沖器)。由于緩沖器“822”和“823”用于下文將描述的修改例,因此這里我們僅關(guān)注隊列緩沖器A821。隊列緩沖器A821具有能夠存儲圖3所示的一個幀數(shù)據(jù)的長度。在一個采樣周期中經(jīng)由各節(jié)點循環(huán)之后返回到主節(jié)點的幀數(shù)據(jù)被轉(zhuǎn)換為下一個采樣周期的幀數(shù)據(jù),并且轉(zhuǎn)換的幀數(shù)據(jù)被存儲在隊列緩沖器A821中。通過圖8b所示的處理,上述幀數(shù)據(jù)預(yù)先被待重寫入幀數(shù)據(jù)的采樣或控制數(shù)據(jù)重寫。因此,當(dāng)?shù)竭_(dá)下一個采樣周期的開始時間時,使用提取指針825,自隊列緩沖器A821的頭部開始,從隊列緩沖器A821提取幀數(shù)據(jù)的位序列,并且提取的幀的位序列被依次發(fā)送到下一個節(jié)點。隨著數(shù)據(jù)的提取,提取指針825前進,如箭頭“824”所示,并且如果所有的幀數(shù)據(jù)已被提取,則提取指針825被初始化而指向隊列緩沖器A821的頭部。
另一方面,在預(yù)定采樣周期中已經(jīng)經(jīng)由各節(jié)點循環(huán)并返回到主節(jié)點的幀數(shù)據(jù)的位序列,被轉(zhuǎn)換為下一個采樣周期的幀數(shù)據(jù),并被依次保存在隊列緩沖器A821中。上述保存是通過圖8b所示的處理而執(zhí)行的。具體來說,上述保存是通過重復(fù)執(zhí)行如下處理而執(zhí)行的將數(shù)據(jù)寫至保存指針826所表示的位置,然后使保存指針826前進,如箭頭824所示。在返回的幀數(shù)據(jù)的所有位序列被保存在隊列緩沖器A821中時,保存指針826被初始化,以指向隊列緩沖器A821的頭部。
當(dāng)主節(jié)點在每個采樣周期發(fā)送一個包以使其經(jīng)由多個節(jié)點循環(huán)時,在主節(jié)點從隊列緩沖器A821提取幀數(shù)據(jù)并開始將該幀數(shù)據(jù)發(fā)送至下一個節(jié)點之后,幀數(shù)據(jù)的報頭在主節(jié)點完成幀數(shù)據(jù)的發(fā)送之前返回到主節(jié)點。這是當(dāng)節(jié)點不是很多并且每個節(jié)點迅速完成其處理時幀數(shù)據(jù)在經(jīng)由各節(jié)點循環(huán)之后返回到主節(jié)點的情況。當(dāng)節(jié)點的數(shù)量很大時,幀數(shù)據(jù)的報頭可在主節(jié)點完成幀數(shù)據(jù)的發(fā)送之后返回到主節(jié)點。在這種情況下,提取指針825看上去在保存指針826之前。此外,在返回到主節(jié)點的幀數(shù)據(jù)被完全保存在隊列緩沖器A821中之前,下一個采樣周期的開始時間可能到達(dá)而開始從隊列緩沖器A821提取和發(fā)送數(shù)據(jù)。在這種情況下,保存指針826看上去在提取指針825之前。
圖9a示出主節(jié)點中的采樣時鐘中斷處理。主節(jié)點根據(jù)每個采樣周期產(chǎn)生的中斷來執(zhí)行上述處理。在步驟901,主節(jié)點使包序號TN的值增加。在步驟902,主節(jié)點從圖8c所示的隊列緩沖器A821提取包序號為TN-1的包的幀數(shù)據(jù),并用TN重寫包序號,然后開始將幀數(shù)據(jù)發(fā)送到下一個節(jié)點。
圖9b示出主節(jié)點中的1字節(jié)發(fā)送事件處理。在步驟902開始發(fā)送之后,主節(jié)點重復(fù)執(zhí)行上述操作,直到隊列緩沖器A821的幀數(shù)據(jù)的發(fā)送終止。首先,在步驟911處,主節(jié)點從隊列緩沖器A821的由提取指針826指示的位置提取1字節(jié)數(shù)據(jù),并使提取指針826前進。在步驟912,主節(jié)點將該1字節(jié)數(shù)據(jù)發(fā)送到下一個節(jié)點。在步驟913,主節(jié)點確定該1字節(jié)數(shù)據(jù)是否為最末字節(jié),如果其為最末字節(jié),則在步驟914執(zhí)行終止發(fā)送的處理。
盡管在上述實施例中如圖7b或圖8b所示在發(fā)生1字節(jié)接收事件時采樣數(shù)據(jù)或控制數(shù)據(jù)被重寫,但是在發(fā)生1字節(jié)發(fā)送事件時采樣數(shù)據(jù)或控制數(shù)據(jù)也可被重寫。
盡管參照在一個采樣周期中循環(huán)一個包(如圖5所示)的實例描述了上述實施例,但是本發(fā)明也可以應(yīng)用于在一個采樣周期循環(huán)多個包的修改例。例如,如果根據(jù)10Gbit Ethernet標(biāo)準(zhǔn)而不是1000BASE-T Ethernet標(biāo)準(zhǔn)在節(jié)點之間進行通信,則在一個采樣周期中可以循環(huán)大約8個包。在這種情況下,要求如下。
(1)作為以上參照圖8c描述的隊列緩沖器,設(shè)置8個隊列緩沖器A821至H828,其依次用于存儲8個包的循環(huán)幀數(shù)據(jù)。在一個采樣周期的開始時間,主節(jié)點連續(xù)發(fā)送并循環(huán)8個包,在完成8個包的發(fā)送之后,主節(jié)點等待直到下一個采樣周期的開始時間到達(dá)。當(dāng)?shù)竭_(dá)下一個采樣周期的開始時間時,主節(jié)點開始發(fā)送接下來的8個包。一個采樣周期中的多個包被分配每個采樣周期中的各個包數(shù)PN,其表示包的各個序號,如以上參照圖3中的“302”描述的。也就是說,在本實例中,包數(shù)PN具有1-8范圍內(nèi)的值。
(2)以與PN=1的包(即,一個采樣周期的第一個包)的開始時間同步,每個從節(jié)點產(chǎn)生采樣時鐘。
(3)在圖9a的步驟902的中斷處理中,從具有包序號“TN-8”的包(其為從包“TN”起8個包之前的包)的幀數(shù)據(jù)創(chuàng)建具有包序號“TN”的包。
在上述實施例的級聯(lián)連接中,主節(jié)點可以是中間節(jié)點,而不是級聯(lián)連接的末端節(jié)點。例如,如果圖1b所示的節(jié)點B是主節(jié)點,則在每個采樣周期節(jié)點B首先將圖3所示的包發(fā)送至節(jié)點C。然后,節(jié)點B將上述包(其按照節(jié)點B→節(jié)點C→節(jié)點D→節(jié)點C→節(jié)點B的順序依次經(jīng)過各節(jié)點之后返回到節(jié)點B)未經(jīng)改變而發(fā)送至節(jié)點A,并基于按照節(jié)點B→節(jié)點A→節(jié)點B的順序經(jīng)過各節(jié)點之后返回到節(jié)點B的包創(chuàng)建下一個采樣周期的包。
盡管在上述實施例中使用根據(jù)Ethernet標(biāo)準(zhǔn)的包格式,但是也可以使用根據(jù)除了Ethernet標(biāo)準(zhǔn)之外的其它標(biāo)準(zhǔn)的包格式。為了控制信號發(fā)送,可為每個節(jié)點配置IP地址。
在級聯(lián)連接的情況下,每個從節(jié)點可對從下游節(jié)點返回的包(而不是從上游節(jié)點接收的包)執(zhí)行一系列處理,例如報頭處理、音頻發(fā)送/接收以及控制數(shù)據(jù)發(fā)送/接收。
在上述實施例中,主節(jié)點在每個采樣周期運行以基于前一幀數(shù)據(jù)生成當(dāng)前采樣周期的新幀數(shù)據(jù),其中所述前一幀數(shù)據(jù)在當(dāng)前采樣周期之前的一采樣周期中生成并饋送至網(wǎng)絡(luò),并且所述前一幀數(shù)據(jù)在經(jīng)由多個從節(jié)點循環(huán)之后在生成新幀數(shù)據(jù)時返回至主節(jié)點?;蛘?,主節(jié)點可以基于前一幀數(shù)據(jù)之前的一幀數(shù)據(jù)生成新幀數(shù)據(jù),其中前一幀數(shù)據(jù)之前的一幀數(shù)據(jù)在當(dāng)前采樣周期之前的兩個或更多采樣周期中生成,并且前一幀數(shù)據(jù)之前的一幀數(shù)據(jù)在生成新幀數(shù)據(jù)時返回至主節(jié)點。在這種情況下,在要生成新幀數(shù)據(jù)時,先前的兩個或更多采樣周期中生成的采樣數(shù)據(jù)可由主節(jié)點從頭至尾完全接收。因此,主節(jié)點可以在生成新幀數(shù)據(jù)之前基于所接收幀數(shù)據(jù)的FCS對所接收幀數(shù)據(jù)進行錯誤檢驗。主節(jié)點僅當(dāng)未從所接收幀數(shù)據(jù)中檢測到錯誤時才基于所接收幀數(shù)據(jù)生成新幀數(shù)據(jù)。由此,能夠減少或防止幀傳送錯誤將導(dǎo)致的問題。
權(quán)利要求
1.一種音頻網(wǎng)絡(luò)系統(tǒng),包括多個節(jié)點并允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收音頻數(shù)據(jù),其中,所述多個節(jié)點連接成環(huán)以允許經(jīng)由所述多個節(jié)點以環(huán)的形式發(fā)送所述音頻數(shù)據(jù),并且在該環(huán)中從上游節(jié)點至下游節(jié)點的一個方向上執(zhí)行所述音頻數(shù)據(jù)的發(fā)送;其中,將所述多個節(jié)點中的一個節(jié)點設(shè)定為主節(jié)點,將其它節(jié)點設(shè)定為從節(jié)點;其中,所述主節(jié)點在每個采樣周期中周期性發(fā)送包含所述音頻數(shù)據(jù)的幀數(shù)據(jù)包,使得所述主節(jié)點在每個采樣周期中發(fā)送的包在一個或多個采樣周期中經(jīng)由所述多個節(jié)點循環(huán)而返回到所述主節(jié)點;其中,所述包具有預(yù)定的數(shù)據(jù)長度,并包括對應(yīng)于多個信道而劃分成多個區(qū)塊的音頻數(shù)據(jù)存儲區(qū),使得每個區(qū)塊存儲對應(yīng)信道的音頻數(shù)據(jù);其中,為所述多個節(jié)點中的每個節(jié)點設(shè)定發(fā)送信道或接收信道,所述發(fā)送信道和所述接收信道均表示所述包的多個區(qū)塊之一;其中,每一所述從節(jié)點在每個采樣周期中從所述包的報頭開始逐個區(qū)塊地從上游節(jié)點接收所述包,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的發(fā)送信道,所述從節(jié)點運行為用所述從節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述已接收區(qū)塊;另一方面,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的接收信道,所述從節(jié)點運行為從所述已接收區(qū)塊獲取所述從節(jié)點待接收的音頻數(shù)據(jù),然后在從所述從節(jié)點開始接收所述包的報頭時起已經(jīng)過去預(yù)定時間之后,所述從節(jié)點開始將所述包發(fā)送至下游節(jié)點;其中,所述主節(jié)點在每個采樣周期中從所述包的報頭開始逐個區(qū)塊地接收已從最下游節(jié)點返回的包,并基于已接收的包構(gòu)建待在下一個采樣周期中發(fā)送的下一個包或所述下一個包之后的包的每個區(qū)塊,如果所述包的區(qū)塊對應(yīng)于為所述主節(jié)點設(shè)定的發(fā)送信道,所述主節(jié)點運行為用所述主節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述區(qū)塊;另一方面,如果所述包的區(qū)塊對應(yīng)于為所述主節(jié)點設(shè)定的接收信道,所述主節(jié)點運行為從所述區(qū)塊獲取所述主節(jié)點待接收的音頻數(shù)據(jù),并且在所述下一個采樣周期開始時,所述主節(jié)點開始將已構(gòu)建的包發(fā)送至下游節(jié)點;其中所述已構(gòu)建的包與所述主節(jié)點構(gòu)建該包所基于的包包含相同的音頻數(shù)據(jù);以及其中在所述音頻網(wǎng)絡(luò)系統(tǒng)中一個發(fā)送信道僅設(shè)定給一個節(jié)點,以使音頻數(shù)據(jù)在所述音頻網(wǎng)絡(luò)系統(tǒng)中的循環(huán)期間由所述一個節(jié)點寫入?yún)^(qū)塊的音頻數(shù)據(jù)不被另一節(jié)點重寫,并且所述音頻網(wǎng)絡(luò)系統(tǒng)中的任一節(jié)點能夠接收所述音頻數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述包除了包括所述音頻數(shù)據(jù)存儲區(qū)之外還包括控制數(shù)據(jù)存儲區(qū),所述包的控制數(shù)據(jù)存儲區(qū)用于允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收控制數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述包具有符合以太網(wǎng)標(biāo)準(zhǔn)的數(shù)據(jù)大小和數(shù)據(jù)結(jié)構(gòu),并且由以太網(wǎng)標(biāo)準(zhǔn)定義的發(fā)送器、接收器以及傳輸電纜可用于所述包的傳輸。
4.根據(jù)權(quán)利要求1所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點通過一條線路級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述多個節(jié)點還通過另一條線路級聯(lián)連接以便沿另一方向發(fā)送所述包。
5.根據(jù)權(quán)利要求1所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點從第一節(jié)點至最末節(jié)點級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述最末節(jié)點連接至所述第一節(jié)點以使所述包返回至所述第一節(jié)點。
6.一種音頻網(wǎng)絡(luò)系統(tǒng),包括多個節(jié)點并允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收音頻數(shù)據(jù),其中,所述多個節(jié)點連接成環(huán)以允許經(jīng)由所述多個節(jié)點的環(huán)發(fā)送所述音頻數(shù)據(jù),并且在該環(huán)中從上游節(jié)點至下游節(jié)點的一個方向上執(zhí)行所述音頻數(shù)據(jù)的發(fā)送;其中,將所述多個節(jié)點中的一個節(jié)點設(shè)定為主節(jié)點,將其它節(jié)點設(shè)定為從節(jié)點;其中,所述主節(jié)點在一個采樣周期中依次發(fā)送包含所述音頻數(shù)據(jù)的預(yù)定數(shù)量的幀數(shù)據(jù)包,使得在每個采樣周期中所依次發(fā)送的包在一個或多個采樣周期中經(jīng)由所述多個節(jié)點循環(huán)而返回到所述主節(jié)點;其中,所述預(yù)定數(shù)量的包中的每一個具有預(yù)定的數(shù)據(jù)長度,并包括對應(yīng)于多個信道而劃分成多個區(qū)塊的音頻數(shù)據(jù)存儲區(qū),使得每個區(qū)塊存儲一個信道的音頻數(shù)據(jù);其中,為所述多個節(jié)點中的每個節(jié)點設(shè)定發(fā)送信道或接收信道,所述發(fā)送信道和所述接收信道均表示所述包的多個區(qū)塊之一;其中,每一所述從節(jié)點在每個采樣周期中從所述包的報頭開始逐個區(qū)塊地從上游節(jié)點接收所述依次發(fā)送的包中的每一個,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的發(fā)送信道,所述從節(jié)點運行為用所述從節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述已接收區(qū)塊;另一方面,如果所述包的已接收區(qū)塊對應(yīng)于為所述從節(jié)點設(shè)定的接收信道,所述從節(jié)點運行為從所述已接收區(qū)塊獲取所述從節(jié)點待接收的音頻數(shù)據(jù),并且在從所述從節(jié)點開始接收所述包的報頭時起已經(jīng)過去預(yù)定時間之后,所述從節(jié)點將所述包發(fā)送至下游節(jié)點;其中,所述主節(jié)點在每個采樣周期中從每個包的報頭開始逐個區(qū)塊地接收已從最下游節(jié)點依次返回的預(yù)定數(shù)量的包中的每一個,并基于已接收的包創(chuàng)建待在下一個采樣周期中發(fā)送的預(yù)定數(shù)量的后續(xù)包的每個區(qū)塊,如果所述包的所述區(qū)塊對應(yīng)于為所述主節(jié)點設(shè)定的發(fā)送信道,所述主節(jié)點運行為用所述主節(jié)點待發(fā)送的音頻數(shù)據(jù)重寫所述區(qū)塊;另一方面,如果所述包的所述區(qū)塊對應(yīng)于所述主節(jié)點的接收信道,所述主節(jié)點運行為從所述區(qū)塊獲取所述主節(jié)點待接收的音頻數(shù)據(jù),然后在所述下一個采樣周期開始時,所述主節(jié)點開始將所創(chuàng)建的預(yù)定數(shù)量的后續(xù)包發(fā)送至下游節(jié)點,其中所創(chuàng)建的包與所述主節(jié)點創(chuàng)建該包所基于的包包含相同的音頻數(shù)據(jù);以及其中在所述音頻網(wǎng)絡(luò)系統(tǒng)中一個發(fā)送信道僅設(shè)定給一個節(jié)點,以使音頻數(shù)據(jù)在所述音頻網(wǎng)絡(luò)系統(tǒng)中的循環(huán)期間由所述一個節(jié)點寫入?yún)^(qū)塊的音頻數(shù)據(jù)不被另一節(jié)點重寫,并且所述音頻網(wǎng)絡(luò)系統(tǒng)中的任一節(jié)點能夠接收所述音頻數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述預(yù)定數(shù)量的包中的至少一個包除了包括所述音頻數(shù)據(jù)存儲區(qū)之外還包括控制數(shù)據(jù)存儲區(qū),所述包的控制數(shù)據(jù)存儲區(qū)用于允許所述多個節(jié)點中的任兩個節(jié)點相互發(fā)送和接收控制數(shù)據(jù)。
8.根據(jù)權(quán)利要求6所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述包具有符合以太網(wǎng)標(biāo)準(zhǔn)的數(shù)據(jù)大小和數(shù)據(jù)結(jié)構(gòu),并且由以太網(wǎng)標(biāo)準(zhǔn)定義的發(fā)送器、接收器以及傳輸電纜可用于所述包的傳輸。
9.根據(jù)權(quán)利要求6所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點通過一條線路級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述多個節(jié)點還通過另一條線路級聯(lián)連接以便沿另一方向發(fā)送所述包。
10.根據(jù)權(quán)利要求6所述的音頻網(wǎng)絡(luò)系統(tǒng),其中所述多個節(jié)點連接成允許所述包以環(huán)發(fā)送的形式,使得所述多個節(jié)點從第一節(jié)點至最末節(jié)點級聯(lián)連接以便沿一個方向發(fā)送所述包,并且所述最末節(jié)點連接至所述第一節(jié)點以使所述包返回至所述第一節(jié)點。
全文摘要
一種音頻網(wǎng)絡(luò)系統(tǒng),允許多個節(jié)點中的任兩個節(jié)點之間相互發(fā)送和接收音頻數(shù)據(jù)。所述多個節(jié)點連接成環(huán)以允許經(jīng)由多個節(jié)點以環(huán)的形式發(fā)送音頻數(shù)據(jù),并且在環(huán)中從上游節(jié)點至下游節(jié)點的一個方向上執(zhí)行音頻數(shù)據(jù)的發(fā)送。所述多個節(jié)點中的一個節(jié)點設(shè)定為主節(jié)點,而將其它節(jié)點設(shè)定為從節(jié)點。主節(jié)點在每個采樣周期中周期性發(fā)送包含音頻數(shù)據(jù)的一個幀數(shù)據(jù)包,使得主節(jié)點在每個采樣周期中發(fā)送的包在一個或多個采樣周期中經(jīng)由多個節(jié)點循環(huán)而返回到主節(jié)點。所述包具有預(yù)定的數(shù)據(jù)長度,并包括對應(yīng)于多個信道而劃分成多個區(qū)塊的音頻數(shù)據(jù)存儲區(qū),使得每個區(qū)塊存儲對應(yīng)信道的音頻數(shù)據(jù)。
文檔編號H04L12/42GK101046952SQ20071008908
公開日2007年10月3日 申請日期2007年3月29日 優(yōu)先權(quán)日2006年3月29日
發(fā)明者中山圭 申請人:雅馬哈株式會社