用于在網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的通信系統(tǒng)和方法
【專利摘要】本文提供一種用于在網(wǎng)絡中網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的通信系統(tǒng)和方法。根據(jù)一個實施例,該方法可以通過補償歸因于多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,在多個網(wǎng)絡節(jié)點中的每個節(jié)點處同時生成本地觸發(fā)信號。如本文所述,本地觸發(fā)信號可用于同步諸如多媒體設備之類的可被耦合到網(wǎng)絡節(jié)點的設備。更具體地說,本地觸發(fā)信號可用于同步發(fā)生在被耦合到網(wǎng)絡的不同節(jié)點處的設備內(nèi)的事件。
【專利說明】用于在網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的通信系統(tǒng)和方法
[0001]發(fā)明背景
[0002]1.發(fā)明領域
[0003]本發(fā)明涉及通信系統(tǒng),更具體地,本發(fā)明涉及用于在網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的通信系統(tǒng)和方法。
[0004]2.相關領域描述
[0005]下列描述和示例僅作為背景給出。
[0006]通信系統(tǒng)通常為人們熟知是包含通過傳輸線互連的至少兩個節(jié)點的。每根傳輸線不僅能夠容納數(shù)字數(shù)據(jù),而且能夠容納以源自計算機域的語音數(shù)據(jù)、音頻數(shù)據(jù)、視頻數(shù)據(jù),或數(shù)據(jù)突發(fā)(bursts of data)的形式到達的數(shù)據(jù)。因此,最佳的傳輸線是能夠接收來自多媒體設備的信息的傳輸線,本文將多媒體設備定義為能夠在網(wǎng)絡上以任何形式傳輸信息的任何硬件和/或軟件模塊。傳輸線可以是銅線、光纖或無線傳輸介質。
[0007]有許多類型的多媒體設備。例如,多媒體設備可以包括電話機、緊致盤(CD)播放器、數(shù)字視頻盤(DVD)播放器、計算機、放大器、揚聲器,或能夠跨越網(wǎng)絡的傳輸線發(fā)送和接收不同類型數(shù)據(jù)的任何設備。
[0008]由多媒體設備所發(fā)送或接收的流行的數(shù)據(jù)類型包括流數(shù)據(jù)和分組數(shù)據(jù)。流數(shù)據(jù)是具有產(chǎn)生于源端口去往網(wǎng)絡上的樣本之間的時域關系的數(shù)據(jù)。必須保持該關系以防止可察覺的誤差,如:在目的地端口處的間隔或被改變的頻率。分組數(shù)據(jù)不需要保持數(shù)據(jù)的采樣率或時域關系,替代地可以跨越傳輸線作為脫節(jié)的突發(fā)(disjointed bursts)被發(fā)送。
[0009]取決于源端口(或目的地端口)的本地時鐘和網(wǎng)絡幀傳輸率(或跨越傳輸線傳輸數(shù)據(jù)幀的速率)之間的頻率差異,可以跨越網(wǎng)絡同步或等時地發(fā)送流數(shù)據(jù)。如果節(jié)點的本地采樣率(有時被標記成“fs”)與傳輸線的網(wǎng)絡幀傳輸率(或幀同步速率“FSR”)頻率相同,則可以跨越網(wǎng)絡同步地發(fā)送流數(shù)據(jù)。在許多實例中,F(xiàn)SR可以與位于節(jié)點內(nèi)的多媒體設備的本地采樣率fs不同。因此,必須改變(或轉換)本地采樣率,或者必須跨越網(wǎng)絡等時地發(fā)送流數(shù)據(jù),其中使用等時傳輸協(xié)議適應頻率差異以防止可察覺的間隔、誤差、抖動或回波。
[0010]無論怎樣跨越傳輸線發(fā)送數(shù)據(jù),該數(shù)據(jù)必須參考時鐘。位于一個節(jié)點內(nèi)(有時被認為是主節(jié)點)的時鐘(有時被稱為主時鐘)跨越傳輸線同步來自該節(jié)點的傳輸。網(wǎng)絡的余下節(jié)點(有時被稱為從節(jié)點)通常通過利用某種形式的時鐘恢復電路(如:鎖相環(huán)“PLL”、數(shù)字信號處理器“DSP”或相位比較器)以鎖定到主時鐘總信號的頻率,嘗試使剩余節(jié)點的本地時鐘與主時鐘信號同步。一旦網(wǎng)絡的所有節(jié)點被鎖定到主時鐘信號,網(wǎng)絡鎖定條件便發(fā)生。在網(wǎng)絡上上電、重置或失去鎖定(如:解鎖條件)之后,通常執(zhí)行將本地時鐘信號鎖定或同步到主時鐘信號的進程。
[0011]一旦網(wǎng)絡鎖定條件發(fā)生,從節(jié)點所接收的數(shù)據(jù)將具有正確的頻率,但會相對于主節(jié)點所發(fā)送的數(shù)據(jù)產(chǎn)生相移。該相移是由于:歸因于每個活躍節(jié)點的延遲(delay)和由于活躍節(jié)點之內(nèi)的相位鎖定中的容差而產(chǎn)生的附加的累積延遲。每當上電、重置、或解鎖到鎖定事件發(fā)生時,來自每個活躍節(jié)點的延遲可能在某個范圍內(nèi)變化。這些延遲也可以在網(wǎng)絡上的不同節(jié)點之間變化。因此,每當網(wǎng)絡鎖定條件發(fā)生時,網(wǎng)絡上的每個節(jié)點會具有不同固定的但不可預測的延遲量的屬性。在許多網(wǎng)絡應用中,此類不可預測的延遲是不利的。
[0012]對用于在網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的通信系統(tǒng)和方法存在需求。尤其是,需要通信系統(tǒng)和方法以補償每次網(wǎng)絡鎖定條件發(fā)生時,在網(wǎng)絡節(jié)點處產(chǎn)生的不可預測的相位延遲。在本文中,通過在網(wǎng)絡的一個或多個節(jié)點處同時生成同步觸發(fā)信號來滿足此類需求。
[0013]發(fā)明概述
[0014]下述對通信系統(tǒng)和方法的各種實施例的描述不應當以任何方式被解釋為限制所附權利要求的主題。
[0015]根據(jù)一個實施例,本文提供一種用于在網(wǎng)絡內(nèi)網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的方法。該方法可以通過補償歸因于多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,同時在多個網(wǎng)絡節(jié)點處生成本地觸發(fā)信號。一旦生成了本地觸發(fā)信號,可將其用于同步被耦合到多個網(wǎng)絡節(jié)點中的每個節(jié)點的一個或多個設備,或更具體地說,可將其用于同步發(fā)生在被耦合到節(jié)點的設備處的事件。如下文更詳細描述的那樣,本文描述的方法通常可以包括延遲估計階段、觸發(fā)同步階段和事件同步階段。
[0016]在延遲估計階段,該方法可以計算在多個網(wǎng)絡節(jié)點中的每個節(jié)點處的唯一的相位延遲。在大多數(shù)情況下,一旦網(wǎng)絡鎖定條件發(fā)生(如:在網(wǎng)絡中的上電、重置或失去鎖定之后),可以計算該唯一的相位延遲。如本文中所使用的那樣,“唯一的相位延遲”可以由數(shù)據(jù)幀在網(wǎng)絡節(jié)點的接收引腳和相同的網(wǎng)絡節(jié)點的發(fā)送引腳之間經(jīng)過所需的相位延遲量組成。一旦為一個或多個網(wǎng)絡節(jié)點確定了唯一的相位延遲,該方法可以將累積的相位延遲存儲于多個網(wǎng)絡節(jié)點中的每個節(jié)點內(nèi)。一般而言,通過合并歸因于配置在網(wǎng)絡的源節(jié)點和特定網(wǎng)絡節(jié)點之間的所有網(wǎng)絡節(jié)點的唯一的相位延遲,可以計算存儲在特定網(wǎng)絡節(jié)點內(nèi)的累積的相位延遲。然而,計算累積的相位延遲的方法可以變化。
[0017]在一個實施例中,通過將在多個網(wǎng)絡節(jié)點中的每個節(jié)點處計算出的唯一的相位延遲發(fā)送到所有其他的網(wǎng)絡節(jié)點,可以計算累積的相位延遲。這使單個網(wǎng)絡節(jié)點能夠通過合并歸因于配置在其自身和源節(jié)點之間的所有網(wǎng)絡節(jié)點的唯一的相位延遲來計算該單個網(wǎng)絡節(jié)點的累積的相位延遲。在另一個實施例中,單個網(wǎng)絡節(jié)點可以將其自身唯一的相位延遲與從上游網(wǎng)絡節(jié)點處所接收的累積的相位延遲合并,以生成該單個網(wǎng)絡節(jié)點的累積的相位延遲。一旦生成了累積的相位延遲,可以將其發(fā)送到下一個下游節(jié)點,用于生成那個節(jié)點的累積的延遲。無論使用什么方法,一旦累積的相位延遲被存儲于每個網(wǎng)絡節(jié)點內(nèi),延遲估計階段可以結束。
[0018]在觸發(fā)同步階段,該方法可以測量在源節(jié)點所接收(或在源節(jié)點內(nèi)生成)的源觸發(fā)信號和網(wǎng)絡的主節(jié)點所生成的數(shù)據(jù)幀的預定字節(jié)之間的偏移值。在確定該偏移值后,該方法可以跨越網(wǎng)絡將該偏移值發(fā)送到多個網(wǎng)絡節(jié)點中的每個節(jié)點。在一些實施例中,該方法可以將在源節(jié)點處計算出的抖動值與偏移值相加,并且跨越網(wǎng)絡將所合并的抖動值和偏移值傳輸?shù)蕉鄠€網(wǎng)絡節(jié)點中的每個節(jié)點。在一些實施例中,可以將在數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值(或所合并的偏移值和抖動值)發(fā)送到多個網(wǎng)絡節(jié)點中的每個節(jié)點。在本發(fā)明的一些實施例中,預定的字節(jié)可以是MOST數(shù)據(jù)幀的觸發(fā)字節(jié),盡管當然不限于此類情況。
[0019]在事件同步階段期間,該方法可以接收多個網(wǎng)絡節(jié)點中的每個節(jié)點處的主節(jié)點所發(fā)送的數(shù)據(jù)幀。如果特定的網(wǎng)絡節(jié)點檢測到在所接收的數(shù)據(jù)幀的預定字節(jié)內(nèi)的偏移值,則該特定網(wǎng)絡節(jié)點所執(zhí)行的該方法可以包括若干附加步驟。例如,該方法可以從預定值開始啟動倒數(shù)計時器,并且一旦倒數(shù)計時器的計數(shù)值等于預定值減去該偏移值(或所合并的偏移值和抖動值)和存儲于特定網(wǎng)絡節(jié)點內(nèi)的累積的相位延遲的所合并的延遲時,生成本地觸發(fā)信號。一旦生成了本地觸發(fā)信號,該方法可以使特定網(wǎng)絡節(jié)點處的事件與該本地觸發(fā)信號同步。
[0020]在一個實施例中,可以使用本文描述的方法,將發(fā)生在多個網(wǎng)絡節(jié)點中的每個節(jié)點處的事件同步到公共時間標記。這些事件可以包括,但當然不限于:時鐘信號生成、輸入/輸出信號生成和數(shù)據(jù)采樣。在一些情況下,事件可以發(fā)生在耦合到多個網(wǎng)絡節(jié)點的一個或多個多媒體設備內(nèi)。例如,可以通過本文描述的方法來同步提供給多顯示屏系統(tǒng)的音頻/視頻信號,以協(xié)調(diào)耦合到不同網(wǎng)絡節(jié)點的顯示屏上的信號再現(xiàn)。同樣地,當多揚聲器系統(tǒng)的左、右揚聲器被耦合到不同的網(wǎng)絡節(jié)點時,通過本文描述的方法,可以同步提供給左、右揚聲器的音頻信號,以保持高保真。此外,可以通過本文描述的方法來同步耦合到不同網(wǎng)絡節(jié)點的多個相機,使得多個相機可以同時捕捉圖像,并且這些圖像被并入單一圖像。在另一些實施例中,可以使用事件同步,以跨越多個網(wǎng)絡節(jié)點協(xié)調(diào)數(shù)據(jù)采樣,或在一個或多個節(jié)點處執(zhí)行時鐘同步。
[0021]根據(jù)另一個實施例,本文提供包括在網(wǎng)絡內(nèi)互連的多個網(wǎng)絡節(jié)點的通信系統(tǒng)。一般而言,通信系統(tǒng)可以包括源節(jié)點和通過傳輸線網(wǎng)絡被耦合到該源節(jié)點的多個網(wǎng)絡節(jié)點。在一個實施例中,該通信系統(tǒng)可以包括MOST網(wǎng)絡。然而,本文描述的通信系統(tǒng)不限于MOST網(wǎng)絡,并且大體上可以包括大體具有任何網(wǎng)絡拓撲的任何同步網(wǎng)絡。
[0022]在一個實施例中,源節(jié)點可以配置成用于計算在源節(jié)點所接收的(或在源節(jié)點內(nèi)生成的)源觸發(fā)信號和源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)之間的偏移值,以及用于跨越網(wǎng)絡將該偏移值發(fā)送到多個網(wǎng)絡節(jié)點。例如,源節(jié)點可以包括偏移計算電路,該偏移計算電路包括用于計算偏移值的計數(shù)器和用于在跨越網(wǎng)絡發(fā)送偏移值之前存儲該偏移值的緩沖器。在一個實施例中,可以跨越網(wǎng)絡,發(fā)送在數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值。
[0023]在一個實施例中,多個網(wǎng)絡節(jié)點中的每個節(jié)點可以配置成:接收源節(jié)點所傳輸?shù)臄?shù)據(jù)幀;檢測在所接收的一個數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值;和生成用于同步耦合到多個網(wǎng)絡節(jié)點的設備的本地觸發(fā)信號。如上文所述,可以通過補償歸因于多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,在多個網(wǎng)絡節(jié)點中的每個節(jié)點處生成本地觸發(fā)信號。
[0024]在一些實施例中,多個網(wǎng)絡節(jié)點和源節(jié)點可以每個節(jié)點包括用于確定和存儲歸因于那個節(jié)點的唯一的相位延遲的延遲計算電路。在一個實施例中,該延遲計算電路可以包括計數(shù)器、第一存儲設備和第二存儲設備。特定節(jié)點內(nèi)的計數(shù)器可以被耦合,用于緊跟著網(wǎng)絡鎖定條件立即確定歸因于該節(jié)點的唯一的相位延遲。特定節(jié)點內(nèi)的第一存儲設備可以被耦合,用于存儲歸因于該節(jié)點的唯一的相位延遲。特定節(jié)點內(nèi)的第二存儲設備可以被耦合,用于接收來自第一存儲設備的唯一的相位延遲,和用于存儲歸因于該節(jié)點的累積的相位延遲。如上文所述,可以以若干方式計算在第二存儲設備內(nèi)的累積的相位延遲。這樣,第二存儲設備可以被附加地耦合,用于跨越網(wǎng)絡接收:(a)來自其他所有網(wǎng)絡節(jié)點的唯一的相位延遲,或(b)來自之前上游節(jié)點的累積的相位延遲。
[0025]在一些實施例中,源節(jié)點可以包括用于測量和補償網(wǎng)絡抖動的抖動補償電路。為了補償網(wǎng)絡抖動,抖動補償電路可以配置成接收來自被包括在源節(jié)點內(nèi)的第一存儲設備的多個唯一的相位延遲。尤其是,抖動補償電路可以配置成接收先前在網(wǎng)絡鎖定條件之后所計算的唯一的相位延遲和在接收/生成源觸發(fā)信號時源節(jié)點所測量的另一個唯一的相位延遲。為了計算抖動值,抖動補償電路可以確定先前和當前所測量的唯一的相位延遲之間的差異。在計算出抖動值后,源節(jié)點可以在跨越網(wǎng)絡在數(shù)據(jù)幀的預定字節(jié)內(nèi)發(fā)送所合并的偏移值和抖動值之前,將抖動值與偏移值相加。
[0026]在一些實施例中,多個網(wǎng)絡節(jié)點可以各自包括附加組件,例如:觸發(fā)檢測電路、倒數(shù)計時器、觸發(fā)信號生成器電路和同步電路。觸發(fā)檢測電路通常可以配置成用于檢測跨越網(wǎng)絡所傳輸?shù)脑跀?shù)據(jù)幀的預定字節(jié)內(nèi)的偏移值。在一個實施例中,觸發(fā)檢測電路可以包括配置成用于檢測預定字節(jié)內(nèi)的有效數(shù)據(jù)位的邏輯門。在一些情況下,該有效數(shù)據(jù)位可以對應偏移值。在另一些情況下,該有效數(shù)據(jù)位可以對應所合并的偏移值和抖動值。
[0027]倒數(shù)計時器通常可以配置成用于一旦觸發(fā)檢測電路檢測到偏移值(或所合并的偏移值和抖動值)就從預定值開始倒數(shù)。在一些實施例中,該預定值可以大體上等于源節(jié)點所傳輸?shù)臄?shù)據(jù)幀的幀尺寸的兩倍。然而,該預定值不限于此類值,可以替代地包括任何被視為合適的其它值。
[0028]觸發(fā)信號生成器電路通常可以配置成用于一旦倒數(shù)計時器的計數(shù)值等于諸如加法器/減法器所提供的計算結果,就生成本地觸發(fā)信號。例如,可以使用加法器/減法器從預定值中減去該偏移值(或所合并的偏移值和抖動值)和存儲于第二存儲設備內(nèi)的累積的相位延遲的所合并的延遲,以生成計算結果。然后,一旦來自倒數(shù)計時器的計數(shù)值等于由加法器/減法器提供的計算結果時,觸發(fā)信號生成器電路可以生成本地觸發(fā)信號。在一個實施例中,觸發(fā)信號生成器電路可以包括:數(shù)字比較器,用于將計數(shù)值與計算結果進行比較并響應于該比較生成邏輯值;和選擇設備(如:觸發(fā)器或復用器),用于響應于邏輯值生成本地觸發(fā)信號。
[0029]同步電路通??梢耘渲贸捎糜趯⒖梢员获詈系矫總€網(wǎng)絡節(jié)點的一個或多個設備同步到本地生成的觸發(fā)信號。在一個實施例中,一個或多個設備可以包括一個或多個多媒體設備,例如但不限于:揚聲器、話筒、相機、顯示屏等。在一些實施例中,同步電路可以配置成同步發(fā)生在被耦合到網(wǎng)絡節(jié)點的一個或多個設備之內(nèi)的事件。此類事件可以包括,但當然不限于:時鐘信號生成、輸入/輸出信號生成和數(shù)據(jù)米樣。在一個實施例中,同步電路可以包括邏輯,用于在接收到本地生成的觸發(fā)信號時同步此類事件。
[0030]在一些實施例中,延遲計算電路、觸發(fā)檢測電路、倒數(shù)計時器和觸發(fā)信號生成器電路可以每個都被具體化在包括網(wǎng)絡接口控制器(NIC)的單一單片基板上。在一些實施例中,同步電路也可以被具體化在包括NIC的單一單片基板上。在另一些實施例中,同步電路可以被具體化在被包括在每個多媒體設備內(nèi)的分離的單片基板上。
【專利附圖】
【附圖說明】
[0031]一旦閱讀了以下詳細說明并參考附圖,本發(fā)明的其它目的和優(yōu)點就將變得顯而易見,在附圖中:
[0032]圖1是框圖,示出包括在網(wǎng)絡內(nèi)互連的多個節(jié)點的通信系統(tǒng)的一個實施例;
[0033]圖2是框圖,示出源觸發(fā)信號在源網(wǎng)絡的源節(jié)點處的到達和在多個網(wǎng)絡節(jié)點處本地觸發(fā)信號的生成,其中,通過補償歸因于每個節(jié)點的唯一的相位延遲(如=RX-TX延遲)在每個網(wǎng)絡節(jié)點處同時生成本地觸發(fā)信號;
[0034]圖3A是流程圖,示出可用于估計歸因于每個網(wǎng)絡節(jié)點的唯一的相位延遲的方法的一個實施例;
[0035]圖3B是流程圖,示出可用于測量源觸發(fā)信號和源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)之間的(如:在數(shù)據(jù)幀的預定字節(jié)內(nèi)的)偏移值,并且跨越網(wǎng)絡發(fā)送該偏移值的方法的一個實施例;
[0036]圖4是流程圖,示出可用于檢測在所接收的數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值,并在一個或多個網(wǎng)絡節(jié)點處生成觸發(fā)信號,以同步在網(wǎng)絡節(jié)點和/或耦合到網(wǎng)絡節(jié)點的設備處發(fā)生的事件的方法的一個實施例;
[0037]圖5是時序圖,示出一系列數(shù)據(jù)流,該數(shù)據(jù)流包括:(a)當沒有接受到源觸發(fā)信號時,在每個數(shù)據(jù)幀的預定字節(jié)內(nèi)僅有的非有效數(shù)據(jù),(b)當在相同的數(shù)據(jù)幀的預定字節(jié)前接收到源觸發(fā)信號時,在數(shù)據(jù)幀的預定字節(jié)內(nèi)的有效值(如:Dts偏移值)和(C)當在在前的數(shù)據(jù)幀的預定字節(jié)之后接受到源觸發(fā)信號時,在數(shù)據(jù)幀的預定字節(jié)內(nèi)的有效數(shù)據(jù)(如=Dts偏移值);
[0038]圖6和圖7是時序圖,提供了如何利用圖3A、圖3B和圖4所示的方法在多個網(wǎng)絡節(jié)點處同時生成本地觸發(fā)信號的兩個不同示例;
[0039]圖8是框圖,示出可以被包括在所有網(wǎng)絡節(jié)點內(nèi)以用于確定歸因于特定網(wǎng)絡節(jié)點的唯一的相位延遲的示范性硬件組件;
[0040]圖9是示出示范性硬件組件的框圖,該示范性硬件組件可被包括在源節(jié)點內(nèi)以用于測量在源觸發(fā)信號和源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)之間的偏移值,并且可選地用于補償網(wǎng)絡抖動;以及
[0041]圖10是示出示范性硬件組件的框圖,該示范性硬件組件可以被包括在所有網(wǎng)絡節(jié)點內(nèi)(除了源節(jié)點),以用于檢測在所接收的數(shù)據(jù)幀的預定字節(jié)內(nèi)的偏移值,生成本地觸發(fā)信號,以及將事件或耦合到網(wǎng)絡節(jié)點的設備同步到所生成的觸發(fā)信號。
[0042]雖然本發(fā)明容易得出多種修改和替代形式,但通過附圖中示例的方式示出本發(fā)明的特定實施例,并在本文中進行詳細描述。然而,應當理解的是,附圖和對其的詳細描述不旨在將本發(fā)明限制為所公開的特定形式,相反,本發(fā)明旨在涵蓋落在所附權利要求所限定的本發(fā)明的精神和范圍內(nèi)的所有修改、等效物以及替代物。
【具體實施方式】
[0043]現(xiàn)在轉到附圖,圖1示出網(wǎng)絡或網(wǎng)絡10的通信系統(tǒng)的一個示例。通信系統(tǒng)10包括多個互連的網(wǎng)絡節(jié)點12。為簡潔起見,只示出四個節(jié)點。然而,應當理解,系統(tǒng)10可以包括多于四個節(jié)點,也可以包括多個互連的網(wǎng)絡。圖1所示的網(wǎng)絡被實現(xiàn)成環(huán)狀(ring)或環(huán)路(loop)拓撲。然而,也應當理解,網(wǎng)絡主干(backbone)也可以實現(xiàn)成總線、星型或其他任何網(wǎng)絡可用的拓撲。對應的傳輸線14被耦合在在節(jié)點12之間。傳輸線14可以是光學、聲學或電學的(有線或無線的)。
[0044]每個節(jié)點12優(yōu)選地被本地化到特定區(qū)域。每個節(jié)點內(nèi)至少有一個多媒體設備。如節(jié)點12d中所示,節(jié)點可以具有多于一個的多媒體設備16。如果存在多于一個的本地化設備16,則可以如替代的虛線17所示以環(huán)路或總線拓撲在多媒體設備16之間使用本地傳輸線或本地總線。
[0045]網(wǎng)絡接口控制器(NIC) 20被連接在設備16和節(jié)點12的網(wǎng)絡之間。如果多個設備16被本地化到節(jié)點12,則網(wǎng)絡接口控制器20被設置在本地總線17和網(wǎng)絡傳輸線14之間。接口 20通常包括通信端口(如:雙向發(fā)送和接收端口),用于在配置在節(jié)點12內(nèi)的設備16之間發(fā)送通信。也可以在多媒體設備16中的每個設備中發(fā)現(xiàn)該通信端口,取決于所述每個設備的配置,端口可以包括時鐘引腳、一個或兩個信號引腳和至少一個數(shù)據(jù)引腳或數(shù)據(jù)引腳對。
[0046]如在本文中所能理解的,可以將網(wǎng)絡接口功能置于一個或多個多媒體設備16中,或者可以將網(wǎng)絡接口功能與多媒體設備分離??梢栽趩我粏纹迳习l(fā)現(xiàn)多媒體設備16,也可以在單一單片基板上發(fā)現(xiàn)網(wǎng)絡接口。這樣,可以在諸如網(wǎng)絡接口控制器20的單片基板上,或在可能包含或不包含網(wǎng)絡接口控制器的多媒體設備16的單片基板上發(fā)現(xiàn)通信端口。
[0047]在一些實施例中,取決于用作跨越網(wǎng)絡發(fā)送數(shù)據(jù)的方法,網(wǎng)絡接口控制器20可以包括鎖相環(huán)(“PLL”)、數(shù)字信號處理器(“DSP”)或僅僅是相位比較器。替代地,相位比較器可以被包括在網(wǎng)絡接口控制器20之內(nèi)或之外,并且僅僅形成通信節(jié)點的部分。此外,例如,網(wǎng)絡接口控制器20可以在多媒體設備16自身之內(nèi)。
[0048]在節(jié)點內(nèi)發(fā)現(xiàn)的一個或多個多媒體設備16是能夠發(fā)送和/或接收多媒體信號的任何設備。此類信號包括語音、音頻、視頻、數(shù)據(jù)文件或可執(zhí)行數(shù)據(jù)程序。此類設備的示例包括:電話、傳感器、CD播放器、DVD播放器、視頻相機、揚聲器、監(jiān)視器、計算機、個人數(shù)字助理(PDA)、經(jīng)調(diào)頻的立體聲、導航系統(tǒng)等。在一些情況下,一個或多個多媒體設備16可以以傳輸線14的幀傳輸率(FSR)采樣數(shù)據(jù)。例如,多媒體設備可以是在大約48KHz頻率處采樣數(shù)據(jù)的DVD播放器。但是,應當承認,一個或多個多媒體設備16能夠以比傳輸線14的幀傳輸率(FSR)更高或更低的采樣率(fs)采樣數(shù)據(jù)。例如,多媒體設備16可以是在大約44.1KHz頻率處采樣數(shù)據(jù)的CD播放器。
[0049]根據(jù)一個實施例,多媒體設備16可以位于汽車內(nèi),可以在該汽車內(nèi)采用通信系統(tǒng)10,用于將多媒體設備彼此連接,或將多媒體設備連接到相同汽車的其他節(jié)點內(nèi)的多媒體設備,或將多媒體設備連接到其他汽車、衛(wèi)星或固定基站。取決于數(shù)據(jù)是否在多媒體設備16處被加密或編碼,通信系統(tǒng)10可以允許將此類信息作為流數(shù)據(jù)(同步的或等時的)、異步數(shù)據(jù)(分組的)或控制數(shù)據(jù)傳輸?shù)侥康牡亍4送?,通信系統(tǒng)10可以允許所有四種類型的數(shù)據(jù)跨越建立在傳輸線14內(nèi)的一個或多個通道或跨越本地總線17傳輸。因此,通信系統(tǒng)10容納不同類型的數(shù)據(jù),以向各種類型可使用的多媒體設備16增加通用性(versatility)。無論如何跨越傳輸線14發(fā)送數(shù)據(jù),該數(shù)據(jù)必須參考時鐘。
[0050]在優(yōu)選實施例中,圖1所示的通信系統(tǒng)10實現(xiàn)成互連節(jié)點的同步網(wǎng)絡。在同步網(wǎng)絡中,通信系統(tǒng)10的一個節(jié)點(如:節(jié)點12a)被指定為主節(jié)點,具有本地主時鐘,該本地主時鐘來源于內(nèi)部或外部晶體振蕩器18。在來自節(jié)點12a的數(shù)據(jù)以幀傳輸率(“FSR”)被傳輸?shù)絺鬏斁€14上之前,使數(shù)據(jù)與主時鐘信號同步。各種方法可用作使從節(jié)點12b-12d所接收的數(shù)據(jù)與所傳輸?shù)臄?shù)據(jù)流同步。
[0051]在一些實施例中,時鐘恢復電路可以被包括在各從節(jié)點12b_12d中的每個從節(jié)點內(nèi),以恢復主時鐘信號并且使所接收的數(shù)據(jù)與所傳輸?shù)臄?shù)據(jù)流同步。在一個示例中,從節(jié)點內(nèi)的時鐘恢復電路可以包括PLL(未示出),用于生成經(jīng)恢復的時鐘(如:被鎖定到主時鐘的本地采樣時鐘),該經(jīng)恢復的時鐘可用于同步諸如多媒體設備16之類的數(shù)字子系統(tǒng)。時鐘恢復電路,更具體地說,每個從節(jié)點中的PLL可以通過簡單地重構主時鐘或替代地將主時鐘率轉換為所需要的采樣率,來生成本地采樣時鐘。時鐘恢復電路可以包括在網(wǎng)絡接口控制器20內(nèi)或從節(jié)點12b-12d的多媒體設備16內(nèi)。然而,應當注意,諸如上文所描述的時鐘恢復電路不會在所有實施例中都被包括在從節(jié)點中。
[0052]在另一些實施例中,可以在從節(jié)點12b_12d內(nèi)使用幀同步方法,以使本地時鐘與跨越網(wǎng)絡傳輸?shù)闹鲿r鐘頻率同步。例如,從節(jié)點可以以大體上等于主時鐘頻率的幀傳輸率(“FSR”)接收跨越網(wǎng)絡被同步傳輸?shù)臄?shù)據(jù)幀。每個數(shù)據(jù)幀可以包括多個管理字節(jié)(包括例如:前置碼、一個或多個標志、描述符和/或控制數(shù)據(jù)字節(jié)),之后跟隨的是若干數(shù)據(jù)字節(jié)??梢杂芍鞴?jié)點生成數(shù)據(jù)幀,并且使所發(fā)送的位流與主節(jié)點內(nèi)部或外部的計時源(如:晶體振蕩器18)同步。在一些情況下,從節(jié)點可以利用所接收的數(shù)據(jù)幀的前置碼用于時鐘再現(xiàn)成和同步數(shù)據(jù)。
[0053]面向媒體的系統(tǒng)傳輸(MOST)網(wǎng)絡是同步網(wǎng)絡的一個示例,該同步網(wǎng)絡使用所接收的數(shù)據(jù)幀的前置碼用于時鐘再現(xiàn)成和數(shù)據(jù)同步。MOST網(wǎng)絡是高速多媒體網(wǎng)絡技術,該技術使用同步數(shù)據(jù)通信,以通過塑料光纖或電導體物理層輸送音頻、視頻、語音和數(shù)據(jù)信號。盡管也可以使用其他網(wǎng)絡拓撲,但MOST網(wǎng)絡可以由以環(huán)狀配置安排的多達64個節(jié)點組成。節(jié)點之一被指定為計時主,并且運行以向環(huán)提供MOST幀??梢砸?4.1kHz或48kHz的幀傳輸率跨越網(wǎng)絡發(fā)送MOST幀。每個幀由三部分組成:用于流數(shù)據(jù)的同步通道、用于分組數(shù)據(jù)的異步通道和用于控制及低速數(shù)據(jù)的控制通道。
[0054]當前有三種類型的MOST網(wǎng)絡。被稱為M0ST25的第一類型使用512位的幀長度,并且為流數(shù)據(jù)(同步的)和分組數(shù)據(jù)(異步的)在光物理層上的傳輸提供約25兆位/秒(Mbit/s)的帶寬。除幀控制位和校驗位之外,M0ST25幀通常包括前置碼、邊界描述符、同步數(shù)據(jù)區(qū)、異步數(shù)據(jù)區(qū)和控制通道區(qū)。邊界描述符指明數(shù)據(jù)幀中同步和異步數(shù)據(jù)區(qū)之間的邊界。
[0055]M0ST50系統(tǒng)的帶寬是M0ST25系統(tǒng)帶寬的兩倍(達到約50Mb/s)并且將幀長度增加到1024位。M0ST150進一步將幀長度增加到多達3072位,約是M0ST25系統(tǒng)帶寬的六倍。除了所提供的三種所建立的通道之外,也將具有可調(diào)節(jié)帶寬的以太網(wǎng)通道結合進其他MOST系統(tǒng)。雖然三種所建立的通道(同步通道、異步通道和控制通道)保持相同,但是在M0ST50和M0ST150幀中,控制通道的長度和同步及異步通道之間的邊界是靈活的。
[0056]MOST幀結構被設計成通過利用用于指定網(wǎng)絡鎖定條件的數(shù)據(jù)幀的前置碼,允許容易實現(xiàn)再同步和時鐘及數(shù)據(jù)恢復。例如,在重置、上電或失去鎖定發(fā)生后的正確時間接收有效前置碼集合的第一次接收可以向從節(jié)點指示網(wǎng)絡鎖定已發(fā)生。一旦網(wǎng)絡被鎖定,從節(jié)點可以提取和使用來自經(jīng)編碼的數(shù)據(jù)流的數(shù)據(jù)。
[0057]一旦實現(xiàn)網(wǎng)絡鎖定,從節(jié)點內(nèi)的本地時鐘會被鎖定到主時鐘信號的頻率。但是,從節(jié)點所接收的數(shù)據(jù)相對于主節(jié)點所發(fā)送的數(shù)據(jù)會產(chǎn)生相移。該相移是由于:歸因于每個活躍的節(jié)點的延遲和歸因于節(jié)點內(nèi)相位鎖定的容差的附加的累積延遲。雖然同步網(wǎng)絡的節(jié)點間的固定時序關系產(chǎn)生每個活躍節(jié)點的固定相位延遲量,但是該延遲量是不可預測的,并且在網(wǎng)絡的不同節(jié)點間可能變化。此外,每當上電、重置或解鎖到鎖定事件發(fā)生時,延遲量可能在某個范圍內(nèi)變化。這樣,每當網(wǎng)絡鎖定條件發(fā)生時,網(wǎng)絡上的每個節(jié)點可以貢獻不同固定但不可預測的相位延遲量。在許多網(wǎng)絡應用中,此類相位延遲是不利的。
[0058]讓我們考慮這樣一種情況,其中,多媒體設備16如圖1的示范性網(wǎng)絡中所示,被耦合到網(wǎng)絡節(jié)點。如上文所討論的那樣,這些多媒體設備可以包括揚聲器、話筒、DVD播放器、CD播放器、相機或大量本領域內(nèi)已知的多媒體設備中的其他任何設備。在許多多媒體應用中,同步發(fā)生在附連到不同網(wǎng)絡節(jié)點的多媒體設備內(nèi)發(fā)生的某些事件通常是重要的(即使不是必要的)。這些事件可以包括,但當然不限于:時鐘信號生成、輸入/輸出信號生成和數(shù)據(jù)采樣。
[0059]例如,可能想要同步被稱合到網(wǎng)絡節(jié)點12a_16b中的一個或多個節(jié)點的一個或多個多媒體設備16的本地時鐘。例如,可能需要時鐘同步以同步多媒體設備16所使用的低頻本地時鐘的邊緣。然而,事件同步不限于時鐘同步,一般還可以被應用于向多媒體設備提供的輸入信號的同步和/或多媒體設備所生成的輸出信號的同步。雖然下文提供了若干示例應用,但是本領域技術人員會認識到還存在其他應用,在其中,事件同步可以是有用的或所需要的。
[0060]首先,考慮一種情況,在其中,多揚聲器系統(tǒng)的左、右揚聲器被耦合到網(wǎng)絡的不同節(jié)點。在這種情況下,同步向多揚聲器系統(tǒng)的左、右揚聲器提供的音頻信號以保持高保真是很重要的。類似的情景也在音頻和視頻(A/V)信號被提供到多顯示系統(tǒng)時發(fā)生,在該顯示系統(tǒng)中,該多顯示系統(tǒng)的顯示屏被耦合到不同網(wǎng)絡節(jié)點。在這種情況下,同步提供給不同的網(wǎng)絡節(jié)點的A/V信號以跨越多個顯示屏協(xié)調(diào)此類信號的再現(xiàn)是很重要的。在另一個示例中,可能需要同步耦合到不同網(wǎng)絡節(jié)點的多個相機,使得圖像能夠被多個相機同時捕捉,并且能夠被整合到單一圖像中。這在諸如可能將同時捕捉到的圖像合并成3D視圖的駕駛員輔助應用中尤其有用。最后,可以使用事件同步以跨越多個網(wǎng)絡節(jié)點,像例如可能發(fā)生在分布式話筒陣列中那樣協(xié)調(diào)數(shù)據(jù)采樣。如果單個話筒陣列被耦合到不同的網(wǎng)絡節(jié)點,則可以同步在分布式陣列的各陣列處所采集的數(shù)據(jù)以消除噪聲或回聲。
[0061]對于在網(wǎng)絡鎖定條件發(fā)生之后用于同步同步網(wǎng)絡的節(jié)點的通信系統(tǒng)和方法存在需求。尤其是,需要通信系統(tǒng)和方法以補償每當網(wǎng)絡鎖定條件發(fā)生時,在網(wǎng)絡節(jié)點處產(chǎn)生的不同固定但不可預測的相位延遲量。如下文所述,通過在同步網(wǎng)絡的一個或多個節(jié)點處同時生成本地觸發(fā)信號來滿足此類需求。雖然下文在MOST網(wǎng)絡的環(huán)境下進行描述,但是本文闡述的發(fā)明概念基本可應用于大體上具有任何網(wǎng)絡拓撲的大體上任何的同步網(wǎng)絡。
[0062]返回附圖,圖1中所示的通信系統(tǒng)10優(yōu)選地實現(xiàn)成同步網(wǎng)絡,在一個特定實施例中,可以實現(xiàn)成MOST網(wǎng)絡。如上文所述,同步網(wǎng)絡的所有節(jié)點具有與網(wǎng)絡計時主節(jié)點的固定的時序關系,使得每個節(jié)點具有與網(wǎng)絡上的其他所有節(jié)點的固定的時序關系。此外,如圖2中所示,網(wǎng)絡的每個節(jié)點可以貢獻在節(jié)點的接收(“RX”)側所接收的數(shù)據(jù)幀的固定點和在節(jié)點的發(fā)送(“TX”)側所發(fā)送的數(shù)據(jù)幀的相同固定點之間的相位延遲(本文中稱為RX-TX延遲)的固定量。雖然由于同步網(wǎng)絡上的節(jié)點間的固定的時序關系,RX-TX延遲是固定的,但是該延遲在上電、重置和解鎖/鎖定條件下是不可預測的,并且對于網(wǎng)絡上的不同節(jié)點可能是不同的。例如,從節(jié)點中的RX-TX延遲可能遠小于計時主節(jié)點中的RX-TX延遲。此外,RX-TX延遲在網(wǎng)絡的從節(jié)點之間可能不同。
[0063]為了補償該延遲,同步觸發(fā)信號可以由網(wǎng)絡的源節(jié)點(如:圖2所示的節(jié)點O)生成或接收,并且由網(wǎng)絡的一個或多個目的地節(jié)點(如:圖2所示的節(jié)點1-6中的任何節(jié)點)跨越MOST網(wǎng)絡發(fā)送并使用,以同步發(fā)生在目的地節(jié)點處的事件。如本文中所使用的那樣,“源節(jié)點”是生成或接收源觸發(fā)信號的網(wǎng)絡節(jié)點。在一些實施例中,該“源節(jié)點”可以是“主節(jié)點”,或在另一些實施例中,該“源節(jié)點”可以是“從節(jié)點”?!澳康牡毓?jié)點”是網(wǎng)絡節(jié)點,該網(wǎng)絡節(jié)點被耦合到源節(jié)點,用于接收來自源節(jié)點的數(shù)據(jù)幀,以及用于使用包含在該數(shù)據(jù)幀內(nèi)的信息,將源觸發(fā)信號重新創(chuàng)建成本地觸發(fā)信號。
[0064]在一個實施例中,該本地觸發(fā)信號可用于使目的地節(jié)點的本地時鐘在頻率和相位上與跨越網(wǎng)絡所發(fā)送的主時鐘信號或幀傳輸率同步。在另一些實施例中,該本地觸發(fā)信號可用于同步提供給目的地節(jié)點(或被耦合到該節(jié)點的多媒體設備)的輸入信號或目的地節(jié)點(或被耦合到該節(jié)點的多媒體設備)所生成的輸出信號。在一些情況下,該本地觸發(fā)信號可用于同步發(fā)生在基本上所有網(wǎng)絡節(jié)點內(nèi)的事件。在另一些情況下,該本地觸發(fā)信號可以如圖2的示范性實施例中所示的那樣,僅用于同步在目的地節(jié)點(如節(jié)點2、節(jié)點3和節(jié)點5)的子集內(nèi)發(fā)生的事件。
[0065]有許多可以跨越MOST網(wǎng)絡生成和發(fā)送觸發(fā)信號的方法。在一些情況下,可以在網(wǎng)絡接口控制器(NIC) 20內(nèi)實現(xiàn)此類方法。然而,應當注意,本文描述的方法不限于NIC 20,并且在本發(fā)明的另一些實施例中,本文描述的方法可以在被耦合到NIC 20的一個或多個芯片或電路內(nèi)實現(xiàn)。在這些實施例中,NIC 20可以將事件同步所需要的所有信息傳到附加的芯片/電路上。
[0066]截止撰寫本文為止,當前還沒有在MOST NIC 20內(nèi)用于在同步網(wǎng)絡10的各節(jié)點處生成同步觸發(fā)信號的專用邏輯(硬件或軟件)。然而,可以使用和/或修改在許多當前可用的MOST NIC集成電路上(IC)上的現(xiàn)有邏輯,以在網(wǎng)絡節(jié)點的本地生成同步觸發(fā)信號。雖然不用對MOST NIC IC作硬件改動就可以實現(xiàn)此類方法,但是此類方法所生成的同步觸發(fā)信號通常精度有限,這樣,同步觸發(fā)信號可能不是在所有情況下都令人滿意。
[0067]在一種示范性方法中,可以使用MOST同步通道,以跨越MOST網(wǎng)絡將同步觸發(fā)信號發(fā)送到一個或多個目的地節(jié)點。在該方法中,可以將外部觸發(fā)信號作為流端口數(shù)據(jù)輸入饋送進源節(jié)點,該流端口數(shù)據(jù)輸入隨后跨越MOST網(wǎng)絡在同步通道上被發(fā)送到目的地節(jié)點。一旦目的地節(jié)點(如:在目的地節(jié)點的流端口 SX引腳處)接收到該數(shù)據(jù),目的地節(jié)點可以使用該流數(shù)據(jù)再現(xiàn)觸發(fā)信號,用于事件同步。雖然可以通過簡單的固件修改在現(xiàn)有的MOSTNIC 20上實現(xiàn)該方法,但是同步通道方法有若干缺點。例如,該方法消耗MOST網(wǎng)絡上的一個同步通道帶寬,并在源節(jié)點和每個目的地節(jié)點處消耗一個流端口。此外,同步通道方法遭受增加的延時(latency),并且產(chǎn)生不可預測的延時數(shù)目。該方法導致精度非常有限的觸發(fā)信號。
[0068]在另一種示范性方法中,MOST NIC 20之內(nèi)的鎖相環(huán)(“PLL”)可用于生成同步觸發(fā)信號。在源節(jié)點處,可以由PLL監(jiān)測內(nèi)部或外部生成的觸發(fā)信號(如:源觸發(fā)信號),并且可以在MOST網(wǎng)絡上發(fā)送該觸發(fā)信息。一旦接受到該觸發(fā)信息,被包括在目的地節(jié)點內(nèi)的PLL可以使用該觸發(fā)信息,以重新創(chuàng)建源觸發(fā)信號的版本(在與源觸發(fā)相同的頻率、倍頻或亞倍頻處),該版本可用于同步目的地節(jié)點處的事件。
[0069]與先前的方法類似,上文所描述的頻率合成PLL方法可以被實現(xiàn)在許多現(xiàn)有的MOST NIC IC (具有PLL硬件的那些MOST NIC IC)內(nèi)。然而,上文所描述的頻率合成PLL方法僅對周期性觸發(fā)信號有用,并且消耗MOST網(wǎng)絡上的一個等時相位通道帶寬。此外,該方法在每個目的地節(jié)點處需要一個可用于音頻或視頻時鐘重新創(chuàng)建的頻率合成PLL。此外,該方法生成在源觸發(fā)信號和在目的地節(jié)點處所再現(xiàn)的觸發(fā)信號之間的不可預測的延遲量,并且遭受在不同的目的地節(jié)點處所生成的本地觸發(fā)信號之間的計時差異。這樣,與上文所描述的同步通道方法類似,該頻率合成PLL方法不能生成具有可接受精度的觸發(fā)信號。
[0070]雖然上文所描述的方法對于一些應用是可接受的,但是其產(chǎn)生在目的地節(jié)點所生成的觸發(fā)信號之間的不可預測的延遲量。該不可預測的延遲量減小了所生成的觸發(fā)信號的計時精度,并且在多數(shù)情況下,妨礙在每個目的地節(jié)點處同時生成觸發(fā)信號。此外,需要在源節(jié)點和每個目的地節(jié)點內(nèi)的流端口或PLL模塊以實現(xiàn)上述方法。為了克服這些缺點,本文提供用于同步多個網(wǎng)絡節(jié)點的改進的通信系統(tǒng)和方法,在下文中詳細描述。
[0071]圖3-圖4中示出用于同步多個網(wǎng)絡節(jié)點的改進的方法的一個實施例。圖3A示出該改進的方法的延遲估計階段,憑借該階段計算出歸因于每個網(wǎng)絡節(jié)點的唯一的相位延遲,并且在該階段存儲累積的相位延遲。緊接著圖3A的圖3B示出該改進方法的觸發(fā)同步階段,憑借該階段,通過測量在源觸發(fā)信號與網(wǎng)絡的主節(jié)點所生成并且源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)之間的偏移,將源節(jié)點所生成或所接收的源觸發(fā)信號與主時鐘信號同步。然后,在觸發(fā)同步階段,將源節(jié)點所測量的偏移值跨越網(wǎng)絡發(fā)送到每個目的地節(jié)點。最后,圖4示出該改進的方法的事件同步階段,憑借此方法,在檢測到所接收的數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值時,在一個或多個網(wǎng)絡節(jié)點處生成本地觸發(fā)信號,用于將網(wǎng)絡節(jié)點處的事件與本地觸發(fā)信號同步。如下文更詳細描述的那樣,該改進的方法通過補償歸因于單個節(jié)點的唯一的相位延遲(如=RX-TX延遲)使得本地觸發(fā)信號能夠在每個網(wǎng)絡節(jié)點處被同時生成。下文將討論關于延遲估計階段、觸發(fā)同步階段和事件同步階段的進一步細節(jié)。
[0072]如圖3A所示,該改進的方法的延遲估計階段通??梢栽跈z測到網(wǎng)絡鎖定條件(在步驟30中)時開始。如本文中所使用的那樣,網(wǎng)絡鎖定條件可以在網(wǎng)絡整體上電或重置之后,或者在被耦合到該網(wǎng)絡的網(wǎng)絡接口控制器(NIC)上電或重置之后發(fā)生。在一些情況下,網(wǎng)絡鎖定條件可以在出于若干原因可能發(fā)生的網(wǎng)絡解鎖條件之后附加或替代地發(fā)生。例如,當一個網(wǎng)絡節(jié)點掉電或重置時,它會向下游傳播解鎖條件。發(fā)生這種情況時,必須在網(wǎng)絡節(jié)點中重建網(wǎng)絡鎖定。
[0073]—旦重建了網(wǎng)絡鎖定,從節(jié)點內(nèi)的本地時鐘會再次被鎖定到主節(jié)點所生成的主時鐘信號的頻率。然而,目的地節(jié)點所接收的數(shù)據(jù)相對于源節(jié)點所傳輸?shù)臄?shù)據(jù)會產(chǎn)生相移。為了補償此類相移,每當實現(xiàn)網(wǎng)絡鎖定時,每個節(jié)點可以計算歸因于該節(jié)點的RX-TX延遲(在步驟32中)。一旦網(wǎng)絡被鎖定,經(jīng)過每個節(jié)點的RX-TX延遲除了網(wǎng)絡抖動所產(chǎn)生的相對小的變化,會保持恒定。
[0074]每個節(jié)點所計算的RX-TX延遲是歸因于該節(jié)點的唯一的相位延遲,其由數(shù)據(jù)幀在節(jié)點的接收(RX)引腳到相同節(jié)點的傳輸(TX)引腳之間經(jīng)過所需要的相位延遲量組成。通常,可以計算在節(jié)點的RX引腳處所接收的數(shù)據(jù)幀的任何固定點到在相同節(jié)點的TX引腳所發(fā)送的數(shù)據(jù)幀的相同固定點之間的RX-TX延遲。該固定點可以大體上是數(shù)據(jù)幀內(nèi)的任何固定點,例如:幀開始(“S0F”)處或數(shù)據(jù)幀內(nèi)任何特定字節(jié)的開始或結束處。在一些實施例中,可以向RX-TX延遲增加預定量以代表在一個節(jié)點的TX引腳到下一個下游節(jié)點的RX引腳之間的傳輸介質中的延遲。對于連接兩個相鄰節(jié)點的每根傳輸線而言,該預定延遲量通常是固定的。向所測量的RX-TX延遲增加該預定延遲量,以產(chǎn)生從前一個節(jié)點的TX引腳處到當前節(jié)點的TX引腳處的總延遲。
[0075]—旦計算出每個節(jié)點的RX-TX延遲,就可以以兩種方式之一分發(fā)信息。在一個實施例中,可以將在每個節(jié)點處計算出的RX-TX延遲分發(fā)到網(wǎng)絡上其他所有的節(jié)點處(在步驟34中)。例如,可以使用數(shù)據(jù)通道向所有下游和上游節(jié)點發(fā)送每個單獨計算出的RX-TX延遲。這使得每個節(jié)點能夠通過合并歸因于配置在源節(jié)點和當前節(jié)點之間的所有節(jié)點的單個RX-TX延遲來計算節(jié)點的累計的RX-TX延遲(Dacc)(在步驟36中)。
[0076]如下文所述,源節(jié)點是接收或生成源觸發(fā)信號的節(jié)點(如圖2中所示的節(jié)點O)。該源節(jié)點可以是主節(jié)點或從節(jié)點之一,通常由某個更高等級的軟件指定。源觸發(fā)節(jié)點下游的第N個節(jié)點的累積的RX-TX延遲被指定為RX-TX延遲_N。從源節(jié)點(如:圖2中所示的節(jié)點O)下游的第一個節(jié)點(如:圖2中所示的節(jié)點I)開始,網(wǎng)絡上每個下游節(jié)點的累積的RX-TX延遲會增加。一旦計算出特定節(jié)點的累積的RX-TX延遲,會將歸因于該節(jié)點的累積的RX-TX延遲存儲于該節(jié)點內(nèi)(如圖3A中的步驟38中所示),供將來使用。
[0077]每個節(jié)點(從第一個節(jié)點開始)可以將其累積的RX-TX延遲傳達到網(wǎng)絡上的下一個下游節(jié)點(如圖3A中的替代步驟37中所示),而不將每個節(jié)點的單個RX-TX延遲分配到其他所有網(wǎng)絡節(jié)點。每個節(jié)點可以通過合并從上游節(jié)點處接受到的累積的RX-TX延遲和其自身唯一的RX-TX延遲來計算該節(jié)點自身累積的RX-TX延遲。例如,節(jié)點I (見圖2)可以計算其RX-TX延遲,并將其傳達到節(jié)點2。在接收到該延遲時,節(jié)點2可以通過合并從節(jié)點I接受到的RX-TX延遲(如:節(jié)點I的累積的RX-TX延遲)和其自身唯一的RX-TX延遲來計算累積的RX-TX延遲。然后,來自節(jié)點2的累積的RX-TX延遲可以傳達到節(jié)點3,以此類推。在每個節(jié)點處,可以將歸因于該節(jié)點的累積的RX-TX延遲存儲于該節(jié)點內(nèi)(在步驟38中),供將來使用。
[0078]一旦在每個節(jié)點中存儲了累積的RX-TX延遲,該方法可以進入如圖3B所示的觸發(fā)同步階段。在示例性實施例中,當源節(jié)點生成或接收到源觸發(fā)信號(在步驟40中)時,觸發(fā)同步階段開始。然后,源節(jié)點測量源觸發(fā)信號和源節(jié)點所發(fā)送的數(shù)據(jù)幀的預定字節(jié)的下一次出現(xiàn)之間的時間差(在步驟42中)。本文中將該時間差異稱為“偏移值”,并標記為Dts。
[0079]在一個優(yōu)選實施例中,預定字節(jié)可以是MOST數(shù)據(jù)幀的指定“觸發(fā)字節(jié)”。例如,如果在MOST網(wǎng)絡中實現(xiàn)圖1所示的通信系統(tǒng)10,MOST數(shù)據(jù)幀的一個字節(jié)可以被指定為“觸發(fā)字節(jié)”。在一些情況下,觸發(fā)字節(jié)可以是MOST幀上被指定的字節(jié),其只在本文所述的方法的觸發(fā)同步階段被啟用。在其他時候,該觸發(fā)字節(jié)可用于其常規(guī)功能。在一個示例中,可以將M0ST150幀的幀字節(jié)10指定為觸發(fā)字節(jié),因為其當前被指定為MOST NIC 20固件中的空閑字節(jié)。然而,觸發(fā)字節(jié)不限于M0ST150幀的第10個字節(jié),無論是否在MOST網(wǎng)絡或其他經(jīng)同步的網(wǎng)絡中發(fā)送數(shù)據(jù)幀,該觸發(fā)字節(jié)大體上可以占據(jù)數(shù)據(jù)幀的任何預定字節(jié)。
[0080]在一個實施例中,可以測量在源觸發(fā)信號和源節(jié)點所傳輸?shù)南乱粋€MOST觸發(fā)字節(jié)的開始處之間的Dts偏移值。如果在MOST觸發(fā)字節(jié)之前接收到源觸發(fā)信號,則源節(jié)點可以在相同的MOST觸發(fā)字節(jié)之內(nèi)將該Dts偏移值發(fā)送到下一個下游節(jié)點(在步驟46中)。然而,如果在MOST觸發(fā)字節(jié)之后接收到源觸發(fā)信號,則可以將在下一個數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之內(nèi)的Dts值發(fā)送到下一個下游節(jié)點(在步驟46中),這樣會通過少量延遲Dts值的發(fā)送而增加延時。在替代實施例中,可以測量在源觸發(fā)信號和MOST觸發(fā)字節(jié)的結束處之間的Dts偏移值,或測量在源觸發(fā)信號和數(shù)據(jù)幀的某個其他預定字節(jié)之間的Dts偏移值。然而,通過總是要求發(fā)送緊跟著的觸發(fā)字節(jié)內(nèi)的Dts值,會進一步增加延時。
[0081]為了本公開之用,本文描述的Dts偏移值可以認為是“有效數(shù)據(jù)值”。一般而言,包含數(shù)據(jù)的有效數(shù)據(jù)值與非數(shù)據(jù)值是可區(qū)別的,非數(shù)據(jù)值可作為標識符、譯碼違例等在數(shù)據(jù)幀內(nèi)被發(fā)送。在一個實施例中,只有在先前已經(jīng)將“有效觸發(fā)信號”發(fā)送到節(jié)點之后,才可以將Dts偏移值發(fā)送到下游節(jié)點??梢园l(fā)送在數(shù)據(jù)幀的MOST觸發(fā)字節(jié)內(nèi)的有效觸發(fā)信號,該有效觸發(fā)信號可以包含指示下游節(jié)點在數(shù)據(jù)幀內(nèi)存在有效觸發(fā)信號的任何信息。該有效觸發(fā)信號可以包括任何有效數(shù)據(jù)字節(jié),例如:非零值。在發(fā)送該有效觸發(fā)信號之后,可以在下一個MOST觸發(fā)字節(jié)之內(nèi)將Dts偏移值發(fā)送到下游節(jié)點。
[0082]在優(yōu)選實施例中,通過使用在MOST觸發(fā)字節(jié)之內(nèi)的被發(fā)送的Dts偏移值(如:有效數(shù)據(jù)值)不僅向下游節(jié)點傳送該Dts偏移值,而且向下游節(jié)點指示在數(shù)據(jù)幀內(nèi)存在有效觸發(fā),從而高效地利用網(wǎng)絡帶寬。例如,在數(shù)據(jù)幀內(nèi)沒有待被發(fā)送的有效觸發(fā)信號期間,可以發(fā)送在MOST觸發(fā)字節(jié)內(nèi)的非有效數(shù)據(jù)值(如:譯碼違例或全O串)。在圖5所示的數(shù)據(jù)流60中示出這種情況。一旦源節(jié)點生成或接收到有效觸發(fā)信號,可以發(fā)送在諸如圖5中的數(shù)據(jù)流62和數(shù)據(jù)流64中所示的在下一個MOST觸發(fā)字節(jié)內(nèi)對應Dts偏移值的有效數(shù)據(jù)值。MOST觸發(fā)字節(jié)包含有效數(shù)據(jù)值而不是非有效數(shù)據(jù)值的該事實指示下游節(jié)點在數(shù)據(jù)幀內(nèi)存在觸發(fā)信號。由于不需要分別傳輸Dts偏移值和有效觸發(fā)的指示,有效減小了網(wǎng)絡帶寬。在圍繞MOST網(wǎng)絡傳輸之后,觸發(fā)字節(jié)被停止穿過源節(jié)點,并且再次重復。如果在源節(jié)點處生成或接收到新的觸發(fā)信號,會立即發(fā)送出在下一個數(shù)據(jù)幀上的該新觸發(fā)信號。
[0083]如上文所述,優(yōu)選地測量在源觸發(fā)信號和源節(jié)點所接收的下一個MOST觸發(fā)字節(jié)的開始處之間的Dts偏移值,以便可以在下一個MOST觸發(fā)字節(jié)之內(nèi)將該Dts偏移值向下游節(jié)點發(fā)送。然而,如圖5所示,對Dts偏移值的測量通常取決于源觸發(fā)信號的到來。如圖5的數(shù)據(jù)流62中所示,如果源觸發(fā)信號在數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之前到達源節(jié)點,則測量在該源觸發(fā)信號和相同數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之間的Dts偏移值。另一方面,如圖5的數(shù)據(jù)流64中所示,如果源觸發(fā)信號在數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之后到達源節(jié)點,則測量在該源觸發(fā)信號和下一個數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之間的Dts偏移值。在源觸發(fā)信號在MOST觸發(fā)字節(jié)期間到達的情況下(未示出),測量在該源觸發(fā)信號和下一個數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之間的Dts偏移值。
[0084]回到圖4,將源節(jié)點所生成的數(shù)據(jù)幀發(fā)送到網(wǎng)絡上,并且由目的地節(jié)點接收該數(shù)據(jù)幀(在步驟48中)。當目的地節(jié)點檢測到在所接收的數(shù)據(jù)幀的MOST觸發(fā)字節(jié)之內(nèi)的Dts偏移值(如:有效數(shù)據(jù)值)時,該改進的方法的事件同步階段開始(在步驟50中)。發(fā)生上述情況時,目的地節(jié)點可以啟動倒數(shù)計時器,該倒數(shù)計時器從預定值開始倒數(shù)(在步驟52中)。在一個實施例中,該預定值可以是MOST數(shù)據(jù)幀的幀尺寸的兩倍(如:位數(shù)目的兩倍)。例如,在M0ST50系統(tǒng)中,該預定值可以是2*(1024) = 2048,或者在M0ST150系統(tǒng)中,該預定值可以是2*(3072) = 6144。然而,應當注意,該預定值大體上可以是任何被視為合適的值。一旦計數(shù)值等于預定值減去Dts偏移值和存儲于目的地節(jié)點之內(nèi)的累積的RX-TX延遲的所合并的延遲時,目的地節(jié)點監(jiān)測到該計數(shù)值(在步驟54中),并且在該目的地節(jié)點處生成本地觸發(fā)信號(在步驟56中)。一旦生成了該本地觸發(fā)信號,可以使用在目的地節(jié)點本地所生成的該觸發(fā)信號將被耦合到該目的地節(jié)點的多媒體設備(或更具體地說,將在該多媒體設備之內(nèi)發(fā)生的事件)與本地所生成的觸發(fā)信號同步(在步驟58中)。
[0085]圖3-圖4所示的改進的方法通過將源觸發(fā)信號與主時鐘信號(通過Dts偏移值)同步和在一個或多個目的地節(jié)點處同時重新創(chuàng)建本地觸發(fā)信號,提供在多個網(wǎng)絡節(jié)點處的事件同步??梢酝ㄟ^補償歸因于在源節(jié)點和目的地節(jié)點之間的每個節(jié)點的唯一的RX-TX延遲,在每個目的地節(jié)點處同時生成觸發(fā)信號。更準確地說,本文所述的方法使目的地節(jié)點能夠在小的不確定度時間窗口之內(nèi)大體相同的時間生成本地觸發(fā)信號。該時間窗口確定了所生成的觸發(fā)信號的精度,并且是兩個因素的直接結果——第一是在源節(jié)點和目的地節(jié)點間每個節(jié)點處,由于在這些節(jié)點的RX點和TX點處的不同的時鐘域而產(chǎn)生的RX-TX延遲測量的小的不確定度,第二是歸因于網(wǎng)絡上的抖動。
[0086]網(wǎng)絡抖動是導致觸發(fā)信號時序中大部分不確定度的原因。這種類型的抖動是低頻抖動,可以被包括在每個網(wǎng)絡節(jié)點之內(nèi)的PLL跟蹤。這意味著,在任意給定時刻,在網(wǎng)絡上的不同節(jié)點處的瞬時抖動大體上是相同的值。這樣,可以通過補償網(wǎng)絡抖動來去除觸發(fā)信號時序中的大部分不確定度。一旦去除了網(wǎng)絡抖動,剩余的不確定度僅歸因于RX-TX延遲測量的精度。由于RX-TX延遲測量的不確定度很小(例如:在M0ST150系統(tǒng)中約6.5ns每節(jié)點),該不確定度在多數(shù)情況下可以忽略。
[0087]回到圖3B,本文描述的方法的替代實施例通過在每次源節(jié)點生成或接收到觸發(fā)信號時測量在源節(jié)點處的RX-TX延遲來補償網(wǎng)絡抖動。這可以意味著,為源節(jié)點所接收的每個數(shù)據(jù)幀測量RX-TX延遲,但是僅當源觸發(fā)信號到達時使用該RX-TX延遲,或者僅當源觸發(fā)信號到達時測量和使用該RX-TX延遲。通過確定在延遲估計階段(如圖3A中所示緊跟網(wǎng)絡鎖定條件的階段)所計算的RX-TX延遲和當前所測量的RX-TX延遲的差異來計算在源節(jié)點處的抖動量的估計值。在計算出抖動值之后,源節(jié)點在跨越網(wǎng)絡在MOST觸發(fā)字節(jié)中發(fā)送所合并的Dts偏移值和抖動值(在步驟46中)之前,可以將抖動值加到Dts偏移值上(在圖3B所示的可選的步驟44中)。在一些情況下(未示出),可以在下游節(jié)點中以相同方式計算抖動值,并且在將MOST觸發(fā)字節(jié)之內(nèi)的經(jīng)更新的Dts+抖動值轉發(fā)到下一個下游節(jié)點之前可以調(diào)節(jié)抖動值。
[0088]圖6和圖7是針對如何能利用本文所描述的方法在多個目的地節(jié)點處同時生成本地觸發(fā)信號提供的兩個不同示例。尤其是,圖6和圖7是時序圖,示出在源節(jié)點O處源觸發(fā)信號的到達,以及在每個目的地節(jié)點1-N處本地觸發(fā)信號的同步生成。雖然在本發(fā)明的一些實施例中,節(jié)點1-N可以包括所有的目的地節(jié)點,但是,應當注意,在本發(fā)明的另一些實施例中,可以僅在目的地節(jié)點的選擇子集處生成本地觸發(fā)信號。
[0089]在圖6所示的示范性時序圖中,源觸發(fā)信號在MOST觸發(fā)字節(jié)到達Fl數(shù)據(jù)幀之前一小段時間到達源節(jié)點O處。該源節(jié)點O測量在源觸發(fā)信號和Fl幀內(nèi)的MOST觸發(fā)字節(jié)的開始處之間的時間延遲(如:Dts偏移),并且跨越網(wǎng)絡在相同的Fl幀的MOST觸發(fā)字節(jié)之內(nèi)發(fā)送該Dts偏移值。在目的地節(jié)點1-N中的每個節(jié)點處一檢測到Dts偏移值時,目的地節(jié)點就啟動倒數(shù)計時器,并且在一旦該計時器的計數(shù)值等于2*幀尺寸(或其他某個預定值)減去該Dts偏移值和存儲于那個目的地節(jié)點之內(nèi)的累積的RX-TX延遲的所合并的延遲時,生成本地觸發(fā)信號。
[0090]在圖6和圖7中,將從源觸發(fā)節(jié)點開始的每個下游節(jié)點的累積的RX_TX延遲指定為RX_TX延遲_1、RX_TX延遲_2、……RX_TX延遲_N。如上文所述,計算在節(jié)點的RX引腳處所接收的數(shù)據(jù)幀的固定點到在相同節(jié)點的TX引腳處所發(fā)送的數(shù)據(jù)幀的相同固定點之間的RX-TX延遲。一旦在特定節(jié)點處(如:節(jié)點2)計算出RX-TX延遲,可以通過合并歸因于配置在源節(jié)點O和那個節(jié)點之間的所有網(wǎng)絡節(jié)點的唯一的RX-TX延遲來計算那個節(jié)點的累積的RX-TX延遲(如=RX-TX延遲_2)。在一些實施例中,在計算累積的延遲時,可以將預定的延遲量加到RX-TX延遲中。該預定量代表在從前一個節(jié)點的TX引腳到當前節(jié)點的RX引腳之間的物理傳輸介質中的延遲量。
[0091]圖6示出存儲于每個目的地節(jié)點之內(nèi)的累積的RX-TX延遲。尤其是,圖6示出了在一個實施例中,如何能夠計算特定節(jié)點(如:節(jié)點2的RX-TX延遲_2)在源節(jié)點O處的Fl數(shù)據(jù)幀的幀開始(“S0F”)處和在特定目的地節(jié)點處的Fl數(shù)據(jù)幀的SOF處之間的累積的RX-TX延遲。然而,應當注意,在本發(fā)明的另一些實施例中,可以以稍微不同的方式計算RX-TX延遲和累積的RX-TX延遲。
[0092]圖7是另一個示范性時序圖,示出如何能利用本文描述的方法在多個目的地節(jié)點處同時生成本地觸發(fā)信號。然而,圖7所示的時序圖與圖6所示的時序圖在許多方面不同:
(I)在源節(jié)點處源觸發(fā)信號的到達,(2)在源節(jié)點處Dts偏移值的測量和隨后的Dts偏移值跨越網(wǎng)絡的發(fā)送,和(3)在每個目的地節(jié)點處RX-TX延遲值的計算方式。下文將詳細描述每一個方面的區(qū)別。
[0093]與圖6所示的時序圖不同,圖7所示的時序圖中的源觸發(fā)信號在MOST觸發(fā)字節(jié)到達Fl數(shù)據(jù)幀中的源節(jié)點O處之后的某個時間到達源節(jié)點O處。這使源節(jié)點O測量在源觸發(fā)信號和在下一個數(shù)據(jù)幀內(nèi)(如:在F2數(shù)據(jù)幀內(nèi))的MOST觸發(fā)字節(jié)的開始處之間的時間延遲(如:Dts偏移),并且跨越網(wǎng)絡在數(shù)據(jù)幀F(xiàn)2的MOST觸發(fā)字節(jié)內(nèi)傳輸該Dts偏移值。
[0094]除了上文所描述的區(qū)別之外,圖7所示的時序圖利用不同的標記或固定點來計算與每個目的地節(jié)點相關聯(lián)的累積的RX-TX延遲。在圖6中,計算在源節(jié)點O處的Fl數(shù)據(jù)幀的幀開始(“S0F”)處與在目的地節(jié)點1-N中的每個節(jié)點處的Fl數(shù)據(jù)幀的SOF處之間的累積的RX-TX延遲。在圖7中,計算在源節(jié)點O所接收的特定數(shù)據(jù)幀(如:數(shù)據(jù)幀F(xiàn)2)中的MOST觸發(fā)字節(jié)的開始處和目的地節(jié)點1-N所接收的相同的數(shù)據(jù)幀中的MOST觸發(fā)字節(jié)的開始處之間的累積的RX-TX延遲。雖然圖7可能暗示只使用包含有效數(shù)據(jù)值的MOST觸發(fā)字節(jié)(如:包含數(shù)據(jù)幀F(xiàn)2中的Dts值的MOST觸發(fā)字節(jié))計算累積的RX-TX延遲,但是本領域技術人員會理解,如何能夠替代地使用包含非有效數(shù)據(jù)值的MOST觸發(fā)字節(jié)(如:F1數(shù)據(jù)幀中的MOST觸發(fā)字節(jié))來計算累積的RX-TX延遲。
[0095]現(xiàn)在已經(jīng)參考圖2-圖7描述了用于在同步網(wǎng)絡中在網(wǎng)絡鎖定條件發(fā)生后同步多個網(wǎng)絡節(jié)點的方法的優(yōu)選實施例。一般而言,該方法通過消除在每個網(wǎng)絡節(jié)點處不可預測的相位延遲所導致的時序差異,在大體上相同的時間在一個或多個網(wǎng)絡節(jié)點處生成本地觸發(fā)信號??梢允褂帽镜赜|發(fā)信號同步被耦合到網(wǎng)絡的不同節(jié)點處的設備,更具體地說,同步發(fā)生在被耦合到不同網(wǎng)絡節(jié)點的設備之內(nèi)的事件。當所需要被生成的觸發(fā)信號的頻率不高于幀傳輸率時,本文描述的方法通常是適用的。此外,觸發(fā)信號可以是異步于幀傳輸率的,并且不需要是周期性的。
[0096]在一些實施例中,可以在硬件、軟件或硬件和軟件的任何組合(如:固件)中實現(xiàn)本文描述的方法。然而,在優(yōu)選實施例中,可以主要在硬件中實現(xiàn)該方法,以提供最小延遲。圖8-圖10示出可用于實現(xiàn)本文所描述方法的示范性硬件組件。然而,應當注意,也可以使用具有大體上相同功能的其他硬件和/或軟件來替代圖8-圖10所示的示范性組件,而不背離本發(fā)明的范圍。
[0097]圖8示出示范性硬件組件,該示范性硬件組件可以被包括在所有的網(wǎng)絡節(jié)點之內(nèi),以計算歸因于單個網(wǎng)絡節(jié)點的唯一的相位延遲。尤其是,圖8示出延遲計算電路70的一個實施例,該延遲計算電路70可以被包括在每個網(wǎng)絡節(jié)點內(nèi),用于在網(wǎng)絡鎖定條件發(fā)生后,確定歸因于特定網(wǎng)絡節(jié)點的唯一的相位延遲。如上文所述,唯一的相位延遲(本文中被稱為RX-TX延遲)由數(shù)據(jù)幀的固定點在特定網(wǎng)絡節(jié)點的接收(RX)引腳到相同網(wǎng)絡節(jié)點的傳輸(TX)引腳之間經(jīng)過所需的相位延遲量組成。
[0098]在圖8所示的實施例中,延遲計算電路70包括計數(shù)器72,該計數(shù)器72在節(jié)點的RX引腳處接收到數(shù)據(jù)幀的固定點時被啟動,當在節(jié)點的TX引腳處接收到相同的數(shù)據(jù)幀的固定點時被停止。一旦計數(shù)器72被停止,被包含在計數(shù)器72內(nèi)的計數(shù)值(該計數(shù)值表示通過該節(jié)點的RX-TX延遲的估計)在被轉發(fā)到第二存儲設備76之前,被傳輸?shù)降谝淮鎯υO備74(如:緩沖器或寄存器)。
[0099]第二存儲設備76存儲與節(jié)點相關聯(lián)的累積的相位延遲。如上文所述,可以用兩種方式之一計算累積的相位延遲。在一個實施例中,可以跨越網(wǎng)絡,將來自緩沖器74的RX-TX延遲發(fā)送到網(wǎng)絡的其他所有節(jié)點。然后,每個節(jié)點可以通過給存儲于其自身的緩沖器74內(nèi)的RX-TX延遲加上跨越網(wǎng)絡傳輸?shù)膩碜耘渲迷谠垂?jié)點和其自身之間的所有節(jié)點的RX-TX延遲,來計算其自身的累積的延遲。在另一個實施例中,每個節(jié)點(從源節(jié)點后的第一個節(jié)點開始)可以通過將從上游節(jié)點接收到的累積的相位延遲和存儲于緩沖器74之內(nèi)的其自身的RX-TX延遲合并來計算該節(jié)點的累積的相位延遲。在將累積的相位延遲存儲于第二存儲設備76之后,該節(jié)點可以跨越網(wǎng)絡,將其累積的RX-TX延遲傳輸?shù)较乱粋€下游節(jié)點。
[0100]圖9示出可以被包含在源節(jié)點之內(nèi)以測量Dts偏移值的示范性硬件組件。尤其是,圖9示出偏移計算電路80的一個實施例,該偏移計算電路80可以被包括在源節(jié)點之內(nèi),用于測量在源節(jié)點所接收的源觸發(fā)信號和網(wǎng)絡的主節(jié)點所生成和源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)(如=MOST觸發(fā)字節(jié))之間的偏移值。
[0101]在圖9所示的實施例中,偏移計算電路80包括計數(shù)器82,該計數(shù)器82在接收到源觸發(fā)信號時被啟動,并且在接收到數(shù)據(jù)幀的下一個MOST觸發(fā)字節(jié)(或其他某個預定字節(jié))的開始處時被停止。一旦計數(shù)器82被停止,被包含在計數(shù)器82內(nèi)的MOST觸發(fā)字節(jié)內(nèi)的計數(shù)值(該值代表了在源觸發(fā)信號和以網(wǎng)絡的幀傳輸率所發(fā)送的數(shù)據(jù)字節(jié)之間的時間延遲或偏移)在在被轉發(fā)到網(wǎng)絡上之前,被傳輸?shù)骄彌_器(或寄存器)84。
[0102]在一些實施例中,偏移計算電路80可以包括抖動補償電路86,用于測量并補償網(wǎng)絡抖動。為了補償網(wǎng)絡抖動,抖動補償電路86可以配置成用于接收來自被包括在源節(jié)點內(nèi)的第一存儲設備74的多個唯一的相位延遲。尤其是,抖動補償電路86可以配置成接收RX-TX延遲,該RX-TX延遲先前是源節(jié)點在網(wǎng)絡鎖定條件之后計算出的,該源節(jié)點在接收到/生成源觸發(fā)信號時計算另一個RX-TX延遲。為了計算抖動值,抖動補償電路86可以包括加法器或減法器,用于確定先前和當前所測量的RX-TX延遲之間的差異。一旦計算出抖動值,在跨越網(wǎng)絡在MOST觸發(fā)字節(jié)之內(nèi)發(fā)送所合并的偏移值和抖動值之前,將該抖動值加到偏移值。
[0103]圖10示出示范性硬件組件,該示范性硬件組件可以被包括在網(wǎng)絡節(jié)點內(nèi)以檢測在所接收的數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值,生成本地觸發(fā)信號和將設備和/或事件與本地觸發(fā)信號同步。如圖10所示,觸發(fā)檢測電路90可以被包括在每個網(wǎng)絡節(jié)點內(nèi),用于接收來自網(wǎng)絡的數(shù)據(jù)幀和檢測在所接收的一個數(shù)據(jù)幀的預定字節(jié)之內(nèi)的偏移值(如:Dts偏移值)。在一個實施例中,觸發(fā)檢測電路90可以包括邏輯門,該邏輯門設計成確定預定字節(jié)(如:M0ST觸發(fā)字節(jié))是否包含非有效數(shù)據(jù)(如:全O、標識符或譯碼違例)或有效數(shù)據(jù)(如=Dts偏移值或所合并的Dts偏移和抖動值)。如果觸發(fā)檢測電路90確定數(shù)據(jù)幀的預定字節(jié)僅包含非有效數(shù)據(jù),則該電路可以僅僅繼續(xù)接收數(shù)據(jù)幀,并且監(jiān)測被包含在那些幀之內(nèi)的預定字節(jié)。
[0104]如果觸發(fā)檢測電路90確定數(shù)據(jù)幀的預定字節(jié)包含有效數(shù)據(jù),則該觸發(fā)檢測電路90可以向倒數(shù)計時器92提供開始信號,用于從預定值開始倒數(shù)。同時,觸發(fā)檢測電路90可以啟用Dts提取電路94,以將來自預定字節(jié)的Dts偏移值(如:有效數(shù)據(jù))復制到寄存器中。然后,可以向加法器和/或減法器96提供該Dts偏移值,用于計算用于在每個網(wǎng)絡節(jié)點處生成本地觸發(fā)信號的公共時間標記。如上文所述和如圖10所示,可以通過將Dts偏移值加給存儲于每個節(jié)點之內(nèi)的累積的相位延遲以產(chǎn)生所合并的延遲,再從預定值中減去所合并的延遲,來計算該公共時間標記。連同來自倒數(shù)計數(shù)器92的計數(shù)值一起,將來自加法器/減法器96的結果提供給觸發(fā)信號生成器電路98。
[0105]一旦倒數(shù)計時器92的計數(shù)值等于加法器/減法器96所提供的計算結果,觸發(fā)信號生成器電路98生成本地觸發(fā)信號。在一個實施例中,觸發(fā)信號生成器電路98可以包括:用于將計數(shù)值與計算結果進行比較并響應于該比較結果生成邏輯值的數(shù)字比較器,和用于響應于該邏輯值生成本地觸發(fā)信號的選擇設備(如:觸發(fā)器或復用器)。例如,比較器可以生成邏輯高值以指示計數(shù)值等于計算結果。在接收到來自比較器的該邏輯高值時,選擇設備可以在網(wǎng)絡節(jié)點處生成本地觸發(fā)信號。由于本文所述的方法補償歸因于每個網(wǎng)絡節(jié)點的唯一的相位延遲,在每個網(wǎng)絡節(jié)點處同時生成本地觸發(fā)信號。
[0106]一旦在特定節(jié)點處生成了本地觸發(fā)信號,可以向事件同步電路100提供該觸發(fā)信號,用于將被耦合到該特定網(wǎng)絡節(jié)點的設備或將發(fā)生在該設備之內(nèi)的事件與所生成的觸發(fā)信號同步。在一個實施例中,該設備可以包括一個或多個多媒體設備,例如但不限于:揚聲器、話筒、相機、顯示屏等。在一個實施例中,該事件可以包括,但當然不限于:時鐘信號生成、輸入/輸出信號生成和數(shù)據(jù)采樣。在一個實施例中,該同步電路可以包括邏輯,用于在接收到所生成的觸發(fā)信號時,同步被耦合到特定網(wǎng)絡節(jié)點的設備或發(fā)生在該設備之內(nèi)的事件。
[0107]在一些實施例中,圖8-圖10所示的一個或多個硬件組件可以被具體化在單一單片基板上。例如,延遲計算電路、觸發(fā)檢測電路、倒數(shù)計時器和觸發(fā)信號生成器電路可以被包括在被具體化在單一單片基板上的網(wǎng)絡接口控制器(如圖1所示的NIC 20)之內(nèi)。然而,應當注意,圖8-10所示的硬件組件不限于本發(fā)明所有實施例中的單一單片基板或網(wǎng)絡接口控制器。在一些實施例中,同步電路也可以被具體化在包括NIC的單一單片基板上。在另一些實施例中,同步電路可以被具體化在被包括在每個多媒體設備內(nèi)的分離的單片基板上。
[0108]對具有本公開益處的本領域內(nèi)的技術人員而言,應當領會,相信本發(fā)明提供了改進的通信系統(tǒng)和方法,用于在網(wǎng)絡內(nèi)發(fā)生網(wǎng)絡鎖定條件之后同步多個網(wǎng)絡節(jié)點。更具體地說,本發(fā)明提供了用于在多個網(wǎng)絡節(jié)點中的每個節(jié)點處生成本地觸發(fā)信號以將被耦合到網(wǎng)絡節(jié)點的設備(或發(fā)生在該設備之內(nèi)的事件)與該觸發(fā)信號同步的裝置。使用本文提供的裝置,可以通過補償源于多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,在多個網(wǎng)絡節(jié)點中的每個節(jié)點處同時生成本地觸發(fā)信號。這對先前的同步方法的提供了重大改進,先前的方法在每個網(wǎng)絡節(jié)點處生成固定但不可預測的相位延遲量。鑒于本說明書,本發(fā)明各個方面的進一步修改和替代實施例對本領域技術人員而言是顯而易見的。因此,所附權利要求旨在被解釋為包括所有這些修改和變化,相應地,應當認為說明書和附圖是說明性的而非限制意義的。
【權利要求】
1.一種用于在網(wǎng)絡中網(wǎng)絡鎖定條件發(fā)生之后同步多個網(wǎng)絡節(jié)點的方法,所述方法包括:通過補償歸因于所述多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處同時生成本地觸發(fā)信號,其中,所述本地觸發(fā)信號用于同步在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處發(fā)生的事件。
2.如權利要求1所述的方法,其特征在于,進一步包括: 在網(wǎng)絡鎖定條件發(fā)生之后,在所述多個網(wǎng)絡節(jié)點中的每個網(wǎng)絡節(jié)點處計算所述唯一的相位延遲,其中,每個唯一的相位延遲由數(shù)據(jù)幀在網(wǎng)絡節(jié)點的接收引腳到相同網(wǎng)絡節(jié)點的發(fā)送引腳之間經(jīng)過所需要的相位延遲量組成;以及 將累積的相位延遲存儲于所述多個網(wǎng)絡節(jié)點中的每個節(jié)點內(nèi),其中,通過合并歸因于配置在網(wǎng)絡的源節(jié)點和每個各自網(wǎng)絡節(jié)點之間的網(wǎng)絡節(jié)點的所述唯一的相位延遲,計算存儲于所述多個網(wǎng)絡節(jié)點中的每個節(jié)點內(nèi)的所述累積的相位延遲。
3.如權利要求2所述的方法,其特征在于,在計算所述唯一的相位延遲的步驟之后,并且在存儲累積的相位延遲的步驟之前,所述方法進一步包括: 將在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處所計算的所述唯一的相位延遲發(fā)送到所有的網(wǎng)絡節(jié)點;和 通過合并歸因于配置在所述源節(jié)點和每個各自網(wǎng)絡節(jié)點之間的網(wǎng)絡節(jié)點的所述唯一的相位延遲,計算在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處的所述累積的相位延遲。
4.如權利要求2所述的方法,其特征在于,在計算所述唯一的相位延遲的步驟之后,并且在存儲累積的相位延遲的步驟之前,所述方法進一步包括將在每個網(wǎng)絡節(jié)點處所計算的所述累積的相位延遲發(fā)送到下一個下游網(wǎng)絡節(jié)點。
5.如權利要求2所述的方法,其特征在于,進一步包括: 測量在所述源節(jié)點所接收或在所述源節(jié)點內(nèi)生成的源觸發(fā)信號和網(wǎng)絡的主節(jié)點所生成的數(shù)據(jù)幀的預定字節(jié)之間的偏移值;和 跨越網(wǎng)絡將所述偏移值發(fā)送到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點。
6.如權利要求5所述的方法,其特征在于,在所述測量步驟之后,并且在所述發(fā)送步驟之前,所述方法進一步包括:將在所述源節(jié)點處所計算的抖動值加到所述偏移值;以及跨越網(wǎng)絡將經(jīng)合并的抖動值和偏移值發(fā)送到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點。
7.如權利要求5所述的方法,其特征在于,將在所述數(shù)據(jù)幀的預定字節(jié)內(nèi)的所述偏移值發(fā)送到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點。
8.如權利要求7所述的方法,其特征在于,進一步包括: 在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處接收所述主節(jié)點所發(fā)送的數(shù)據(jù)幀; 其中,如果特定網(wǎng)絡節(jié)點檢測到所接收的一個數(shù)據(jù)幀的所述預定字節(jié)之內(nèi)的所述偏移值,則所述特定網(wǎng)絡節(jié)點所執(zhí)行的所述方法進一步包括: 從預定值開始啟動倒數(shù)計時器; 一旦所述倒數(shù)計時器的計數(shù)值等于所述預定值減去所述偏移值和存儲于所述特定網(wǎng)絡節(jié)點內(nèi)的所述累積的相位延遲的經(jīng)合并的延遲,就生成本地觸發(fā)信號;以及 將在所述特定的網(wǎng)絡節(jié)點處的事件與所述本地觸發(fā)信號同步。
9.如權利要求8所述的方法,其特征在于,在發(fā)送所述偏移值的步驟之前,所述方法包括跨越網(wǎng)絡將有效觸發(fā)的指示發(fā)送到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點,并且在檢測所述偏移值的步驟之前,所述方法包括檢測所述有效觸發(fā)的指示。
10.如權利要求1所述的方法,其特征在于,所述方法使在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處發(fā)生的事件能夠與公共時間標記同步。
11.如權利要求10所述的方法,其特征在于,所述事件包括在所述多個網(wǎng)絡節(jié)點中的每個網(wǎng)絡節(jié)點處時鐘信號的生成。
12.如權利要求10所述的方法,其特征在于,所述事件包括在所述多個網(wǎng)絡節(jié)點中的每個網(wǎng)絡節(jié)點處的數(shù)據(jù)采樣。
13.如權利要求10所述的方法,其特征在于,所述事件包括在所述多個網(wǎng)絡節(jié)點中的每個網(wǎng)絡節(jié)點處輸入/輸出(I/o)信號的生成。
14.如權利要求13所述的方法,其特征在于,所述I/O信號用于同步被耦合到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處的顯示屏。
15.如權利要求13所述的方法,其特征在于,所述I/O信號用于同步被耦合到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處的相機的圖像捕捉。
16.如權利要求13所述的方法,其特征在于,所述I/O信號用于同步提供給被耦合到所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處的揚聲器的音頻信號。
17.一種包括在網(wǎng)絡中互連的多個網(wǎng)絡節(jié)點的通信系統(tǒng),所述通信系統(tǒng)包括: 源節(jié)點,所述源節(jié)點配置成用于: 計算在源觸發(fā)信號和所述源節(jié)點所接收的數(shù)據(jù)幀的預定字節(jié)之間的偏移值;以及 跨越網(wǎng)絡發(fā)送在所述數(shù)據(jù)幀的所述預定字節(jié)內(nèi)的所述偏移值;以及 通過傳輸線網(wǎng)絡被耦合到所述源節(jié)點的多個網(wǎng)絡節(jié)點,其中,所述多個網(wǎng)絡節(jié)點配置成用于: 接收所述源節(jié)點所發(fā)送的數(shù)據(jù)幀; 檢測在所接收的一個數(shù)據(jù)幀的所述預定字節(jié)之內(nèi)的所述偏移值;以及 生成用于同步被耦合到所述多個網(wǎng)絡節(jié)點的設備的本地觸發(fā)信號,其中,通過補償歸因于所述多個網(wǎng)絡節(jié)點中的每個節(jié)點的唯一的相位延遲,在所述多個網(wǎng)絡節(jié)點中的每個節(jié)點處同時生成所述本地觸發(fā)信號。
18.如權利要求17所述的通信系統(tǒng),其特征在于,所述多個網(wǎng)絡節(jié)點和所述源節(jié)點中的每個節(jié)點包括延遲計算電路,所述延遲計算電路包括: 計數(shù)器,所述計數(shù)器用于在網(wǎng)絡鎖定條件發(fā)生之后,確定歸因于特定網(wǎng)絡節(jié)點的唯一的相位延遲,其中,所述唯一的相位延遲由數(shù)據(jù)幀在所述特定網(wǎng)絡節(jié)點的接收引腳到所述特定網(wǎng)絡節(jié)點的發(fā)送引腳之間經(jīng)過所需的相位延遲量組成; 第一存儲設備,所述第一存儲設備用于存儲歸因于所述特定網(wǎng)絡節(jié)點的所述唯一的相位延遲;以及 第二存儲設備,所述第二存儲設備用于將累積的相位延遲存儲于所述特定的網(wǎng)絡節(jié)點內(nèi),其中,通過合并歸因于配置在所述源節(jié)點和所述特定網(wǎng)絡節(jié)點之間的所有網(wǎng)絡節(jié)點的所述唯一的相位延遲,計算所述累積的相位延遲。
19.如權利要求18所述的通信系統(tǒng),其特征在于,所述源節(jié)點進一步包括配置成用于補償網(wǎng)絡抖動的抖動補償電路,所述補償網(wǎng)絡抖動是通過: 計算抖動值; 將所述抖動值加到所述源節(jié)點所計算的所述偏移值,以生成經(jīng)合并的偏移值和抖動值;和 代替發(fā)送所述偏移值,跨越網(wǎng)絡發(fā)送在所述數(shù)據(jù)幀的所述預定字節(jié)內(nèi)的所述所合并的偏移值和抖動值。
20.如權利要求18所述的通信系統(tǒng),其特征在于,所述多個網(wǎng)絡節(jié)點中的每個節(jié)點進一步包括: 觸發(fā)檢測電路,所述觸發(fā)檢測電路用于檢測在所接收的一個數(shù)據(jù)幀的所述預定字節(jié)之內(nèi)的所述偏移值; 倒數(shù)計時器,所述倒數(shù)計時器用于一旦所述觸發(fā)檢測電路檢測到所述偏移值,就從預定值開始倒數(shù); 觸發(fā)信號發(fā)生器電路,所述觸發(fā)信號發(fā)生器電路用于一旦所述倒數(shù)計時器的計數(shù)值等于所述預定值減去所述偏移值和存儲于所述特定網(wǎng)絡節(jié)點的所述第二存儲設備內(nèi)的所述累積的相位延遲的經(jīng)合并的延遲,就生成本地觸發(fā)信號;和 同步電路,所述同步電路用于將被耦合到所述特定網(wǎng)絡節(jié)點的設備與所述本地觸發(fā)信號同步。
21.如權利要求20所述的通信系統(tǒng),其特征在于,所述觸發(fā)檢測電路包括配置成用于檢測在所述預定字節(jié)內(nèi)的有效數(shù)據(jù)位的邏輯門。
22.如權利要求21所述的通信系統(tǒng),其特征在于,所述有效數(shù)據(jù)位對應所述偏移值。
23.如權利要求21所述的通信系統(tǒng),其特征在于,所述有效數(shù)據(jù)位對應所述偏移值加抖動值,所述抖動值由所述源節(jié)點生成,并且所述抖動值連同在所述預定字節(jié)內(nèi)的所述偏移值一起被發(fā)送。
24.如權利要求20所述的通信系統(tǒng),其特征在于,進一步包括:加法器,所述加法器用于生成所述偏移值和所述累積的相位延遲的經(jīng)合并的延遲;和減法器,所述減法器用于從所述預定值中減去所述經(jīng)合并的延遲。
25.如權利要求20所述的通信系統(tǒng),其特征在于,所述預定值大體上等于所述源節(jié)點所發(fā)送的所述數(shù)據(jù)幀的幀尺寸的兩倍。
26.如權利要求20所述的通信系統(tǒng),其特征在于,所述延遲計算電路、觸發(fā)檢測電路、倒數(shù)計時器和觸發(fā)信號生成器電路中的每個被具體化在包括網(wǎng)絡接口控制器的單一單片基板上。
27.如權利要求20所述的通信系統(tǒng),其特征在于,所述同步電路被具體化在被包括在所述設備內(nèi)的分離的單片基板上。
28.如權利要求20所述的通信系統(tǒng),其特征在于,所述同步電路被具體化在包括所述網(wǎng)絡接口控制器的單一單片基板上。
29.如權利要求20所述的通信系統(tǒng),其特征在于,所述設備包括多媒體設備。
30.如權利要求20所述的通信系統(tǒng),其特征在于,從包括揚聲器、話筒、相機和顯示屏的組中選擇所述設備。
【文檔編號】H04J3/06GK104396164SQ201380029954
【公開日】2015年3月4日 申請日期:2013年6月12日 優(yōu)先權日:2012年6月15日
【發(fā)明者】S·I·阿克哈爾, R·穆勒 申請人:微芯片技術股份有限公司