專利名稱:嵌入式時脈恢復的制作方法
技術領域:
本發明大體有關于來源裝置(source device)與接收裝置(sink device)的同
止
少ο
背景技術:
發射器與接收器的時脈同步為數據通訊的重要方面。時脈同步常指透過連接發射器與接收器之實體鏈路(physical link)用來傳輸數據的時脈頻率。不過,在有些數據通訊應用中,會要求接收器決定并非實體鏈路之時脈頻率的時脈頻率。例如,可能要求接收器 (例如,電視顯示器)決定數據源(例如,DVD譯碼器)在輸出數據串流時的時脈頻率。在接收器需要原始數據提供給發射器的時脈速率(clock rate)時,數據串流被稱作同步數據串流(isochronous data stream) 0現有數種習知方法用于傳輸同步數據串流。有一習知方法要求來源裝置傳輸用以聯系來源數據速率(source data rate)與鏈路數據速率(link data rate)的一或更多參數給接收裝置。不過,取決于鏈路數據速率,當在來源及接收處的鏈路數據速率不同時,可能導致不兼容。另一習知方法系利用在接收裝置的緩沖器,在此緩沖器的深度被接收裝置用來決定時脈速率。不過,依賴緩沖器會引進可變延遲以及昂貴的緩沖器要求。又一習知方法要求任何中間裝置可基于輸入、輸出鏈路速率的數據速率來重新產生來源裝置所傳輸的速率參數。不過,要求中間裝置重新產生速率參數會增加裝置的復雜度及成本。因此,亟須改良方法及系統使得接收裝置可恢復來源數據串流的時脈速率。更特別的是,亟須改良方法用以在同步數據串流的傳輸期間使來源裝置與接收裝置同步。
發明內容
揭示數種用于同步來源及接收裝置的設備及方法,在此一接收裝置可有效決定來源數據速率,甚至在接收裝置不直接耦合至來源裝置的情形下。一種用以由來源裝置傳輸來源數據串流至接收裝置的方法,其系包括形成由一來源裝置至一接收裝置的一邏輯通道。該邏輯通道系經組態成可攜載該來源數據串流,以及一或更多速率參數。該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率。一種供接收裝置恢復來源數據速率的方法,其系包括下列步驟檢測在一接收數據串流之中的一邏輯通道,在此該邏輯通道系包含該來源數據串流,從該接收數據串流恢復一或更多速率參數,決定該邏輯通道的一數據速率,以及基于該邏輯通道之該數據速率與該一或更多速率參數來決定該來源數據串流之該數據速率。—種使得接收裝置能決定來源數據速率的數據傳輸系統系包含一來源裝置以及直接或間接耦合至該來源裝置的一接收裝置。該來源裝置系經組態成可形成由該來源裝置至該接收裝置的一邏輯通道,該邏輯通道經組態成可攜載(i)該來源數據串流,以及(ii) 一或更多速率參數,以及透過一傳輸鏈路傳輸該邏輯通道。該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率。該接收裝置系經組態成可檢測一接收數據串流之中的邏輯通道,從該接收數據串流恢復該一或更多速率參數,決定該邏輯通道之該數據速率,以及基于該邏輯通道之該數據速率與該一或更多速率參數來決定該來源數據串流之該數據速率。以下參考附圖來詳述本發明的其它具體實施例、特征及優點以及本發明各種具體實施例的結構與操作。
并入本專利說明書且構成其中之一部份的附圖系圖解說明本發明的具體實施例, 其系與上文給出的一般說明和下文給出的具體實施例詳細說明一起用來解釋本發明的原理。圖1根據本發明之一具體實施例圖標包含來源裝置及接收裝置的系統。圖2根據本發明之一具體實施例圖標包含來源裝置、及多個接收裝置的系統。圖3根據本發明之一具體實施例圖標一來源裝置。圖4根據本發明之一具體實施例圖標一接收裝置。圖5的流程圖根據本發明之一具體實施例圖標實作于來源裝置之一方法的步驟。圖6的流程圖根據本發明之一具體實施例圖標實作于接收裝置之一方法的步驟。
具體實施例方式本發明的具體實施例可致能在接收裝置有效地恢復來源時脈速率。盡管本文以用于特殊應用的示范具體實施例來描述本發明,然而應了解,本發明不受限于此。取得本文所提供之教導的熟諳此藝者會認清其它的修改、應用及在其范疇內的具體實施例,以及本發明在其中有顯著效用的其它領域。
本發明的具體實施例可用于任何計算機系統、計算裝置、娛樂系統、媒體系統、游戲系統、或任何系統,在此有一或更多傳輸鏈路耦合來源裝置與接收裝置。本發明特別有用于包含同步數據串流的系統。同步數據串流要求接收器(亦即,接收裝置)能夠決定據以產生傳輸數據的時脈頻率。經解壓縮的音頻及視頻數據串流為同步數據串流的例子。例如,由DVD播放器接收經解壓縮之音頻及視頻串流的平板電視顯示器會要求DVD播放器傳輸數據的速率,以便在顯示器適當地渲染收到的數據串流。工業標準,例如DisplayPort、高清晰度多媒體接口(HDMI)、數字視覺接口(DVI) 及其類似者,系規定用以連接來源裝置及一或更多接收裝置的接口。例如,DisplayPort規定一種方法用于使得接收裝置能恢復應用于來源數據的時脈頻率。在DisplayPort 1.1 中,來源裝置計算聯系來源數據速率與鏈路速率的M參數及N參數,以及將算出的M、N參數傳輸至接收裝置。接收裝置接收由來源裝置送出的M、N參數,以及藉由決定輸入鏈路速率, 該接收裝置能夠決定用在來源裝置的來源數據速率。盡管DisplayPort 1. 1所規定的方法適于來源裝置直接耦合至接收裝置的地方,然而數據串流在到達接收裝置之前穿越多條鏈路時會失敗。例如,在來源數據串流穿越多條鏈路時,在來源裝置的鏈路速率可能與在接收裝置的鏈路速率不同。本發明使得接收裝置能決定來源數據速率,不論它是否直接或間接
6耦合至來源裝置。本發明藉由提供一對嵌入式參數來加速及簡化來源速率的恢復。根據一具體實施例,提供可穩健檢測的數據通道與有管理良好的速率以由來源裝置傳輸參考速率 (reference rate)至接收裝置。此外,也穩定準確地傳輸嵌入數據通道之數據相對于數據通道的速率測量值。本發明,一般而言,排除剖析收到數據串流中之嵌入數據的需要。剖析嵌入數據可能產生各種減損。例如,視頻數據有不傳輸數據的空白間隔(blank interval),使得接收裝置必須決定如何只藉由查看有效間隔(active interval)來重建速率。例如,可能無法追蹤垂直空白區中的視頻數據速率變化。此外,嵌入視頻串流的音頻數據通常為突發型(例如, 由于它的傳輸會周期性地被活動視頻數據阻斷)以及以相對低的速率到達接收裝置,這使得追蹤有困難以及造成相對長的鎖定時間(lock time)。在接收裝置企圖鎖定音頻數據速率時,這可能導致接通延遲(turn-on delay)變長及/或播放失真。如果接收裝置的速率恢復邏輯追蹤音頻數據的突發,也有可能導致訊號失真。習知方法也包括命令中間裝置根據輸入、輸出接口鏈路速率來更新M、N參數以及命令該中間裝置計算出輸入鏈路速率與輸出鏈路速率的某個縮放因子(scaling factor) 0 不過,命令中間裝置執行該等功能會增加裝置的復雜度及成本。另一方法包括命令串流接收裝置把音頻及/或視頻數據放入緩沖器,例如先進先出(FIFO)緩沖器。然后,該串流接收裝置監視緩沖程度以及使用該緩沖程度來增及/或減被恢復的時脈速率。當緩沖程度增加時,提高時脈速率使得緩沖接收速率(buffer drain rate)增加。當緩沖程度減少時,降低時脈速率使得該緩沖程度增加。此一方法會有問題,例如,監視器之間的音頻相位失調, 由音頻時脈增減引起的音頻訊號失真,音頻/視頻時脈的訊號鎖定時間緩慢(例如,以秒為單元),以及緩沖要求相對昂貴。圖1根據本發明之一具體實施例圖標一系統。系統100包含來源裝置101、接收裝置102、主要鏈路110、及輔助鏈路(auxiliary link)112。來源裝置101,例如,可為音頻及 /或視頻串流裝置,例如DVD譯碼器、CD播放器、數字相機、或MP3播放器。來源裝置101也可為產生同步數據的計算機或其它計算裝置。來源裝置101包含下列功能產生及/或接收來源數據的串流,以及直接或經由一或更多中間裝置(分支裝置)傳輸來源數據至接收裝置。來源裝置101也可包含必要時在傳輸前處理來源數據的功能。圖3根據本發明之一具體實施例更詳細地圖標來源裝置。接收裝置102,例如,可為電視顯示器、計算機顯示器、或音頻揚聲器系統。接收裝置102也可為中間裝置,例如音頻或視頻接收器,在音頻及/或視頻串流送到渲染裝置(例如,顯示器)或揚聲器系統之前,它可對于該等串流進行各種處理功能。在此,基于例如渲染來源數據串流及/或進一步處理來源數據串流的理由,接收裝置102為需要來源數據串流及相關來源數據速率的裝置。接收裝置102包含以下功能由來源裝置101接收來源數據串流,以及恢復來源數據的時脈速率(亦即,來源數據速率)。圖4根據本發明之一具體實施例更詳細地圖標接收裝置。主要鏈路110耦合來源裝置101與接收裝置102。主要鏈路110為傳輸鏈路,透過它,數據及控制信息可在來源裝置101、接收裝置102之間流動。主要鏈路110可包含一或更多實體傳輸媒體,例如來源裝置101與接收裝置102之間的有線或無線連接。來源裝置101的發射器與接收裝置102的接收器可透過主要鏈路110來協調傳輸使得包含主要鏈CN 102439926 A
說明書
4/12 頁
路110的多條實體鏈路對于數據傳輸是透明的。例如,正被傳輸的數據可以符號等級分散于數條實體鏈路,例如,位數相等的每個符號可在可用實體鏈路中之一條上傳輸。數據最好以基于封包的格式在主要鏈路110上傳輸。封包系封裝有若干數量的數據以及有來源裝置101、接收裝置102兩者皆知的格式。例如,封包可包含標頭部份(header portion)與數據部份(data portion)。標頭部份包含控制信息,例如數據部份中之數據的種類,來源裝置的識別碼,接收裝置的識別碼,及其類似者。本發明的一些具體實施例可包含在來源裝置101、接收裝置102之間的輔助鏈路 112。輔助鏈路112可用來,例如,在來源裝置101、接收裝置102之間雙向傳送控制信息。 在一具體實施例中,接收裝置102可用輔助鏈路112來傳達它的數據接收容量,例如最大接收速率,給來源裝置101使得來源裝置101可組態它的發射器以免超過特定速率。在一些具體實施例中,次要數據及控制信息也可通過主要鏈路110來傳輸,而不是通過個別的輔助鏈路112。虛擬通道120為攜載主要鏈路110上之數據串流的邏輯通道。虛擬通道120邏輯迭在主要鏈路110上,以及可使用主要鏈路110中之一或更多個別實體鏈路。在主要鏈路 110上,可初始化一或更多虛擬通道(有時也稱作“邏輯通道”),例如120。識別屬于虛擬通道的數據可基于內含于該虛擬通道中之每個封包攜載數據(packet carrying data)之標頭部份的一或更多識別碼。例如,該標頭部份可包含獨一識別虛擬通道的通道-識別碼。在本發明的具體實施例中,虛擬通道120可用來攜載來自來源裝置101的同步數據串流至接收裝置102。例如,一虛擬通道可用來攜載來自DVD播放器的視頻數據串流,以及另一虛擬通道可攜載相關的音頻串流。替換地,同一虛擬通道可攜載音頻及視頻兩者。虛擬通道,例如120,允許主要鏈路110的總頻寬(total bandwidth)用于多條同時出現的數據串流,包括同步數據串流。在本發明的一具體實施例中,來源裝置101、接收裝置102、主要鏈路110、輔助鏈路112及虛擬通道120系根據已知標準來操作,例如DisplayPort或它的變體之一。例如, DisplayPort規定主要鏈路110由來源裝置101單向至接收裝置102,以及主要鏈路110可包含1、2或4條實體鏈路。根據DisplayPort的規格,輔助鏈路112用于雙向交換次要信息,其系包括諸如可由接收裝置102處理的最大鏈路速率、最大通道速率(maximum channel rate)之類的信息。在其它具體實施例中,系統100可具有根據另一已知標準來操作的主要鏈路110,例如高清晰度多媒體接口(HDMI)、數字視覺接口(DVI)、視頻圖形數組(VGA)或是它的變體,以及低電壓差分信號(LVDQ、或類似的客制數據傳輸標準。圖2根據本發明之一具體實施例圖標另一系統200。系統200包含來源裝置201、 多個接收裝置202及203,以及分支裝置204。來源裝置201與接收裝置202及203可為在說明圖1時所述的。分支裝置204為中間裝置,其輸入為輸入數據串流,以及輸出該數據串流至一或更多接收裝置。對應至系統200的系統實施例為多通道音頻揚聲器系統,在此音頻接收器分支裝置系取得輸入自來源裝置(例如,DVD播放器)的音頻串流以及分散該音頻及視頻至數個個別的接收裝置(例如,每個音頻通道的個別揚聲器,以及視頻的電視顯示器)。另一實施例可為視頻分割器系統(video splitter system),其系允許輸出自單一來源裝置(例如,計算機)的視頻分散至多個接收裝置(例如,顯示裝置)。系統200也可遵循DisplayPort標準、或是其變體中之一或更多。因此,主要鏈路210、211及212可為用于傳送同步數據串流的單向鏈路。每條同步數據串流,例如,可在虛擬通道內傳輸。例如,產生于來源裝置201的同步數據串流(例如,視頻串流)可由來源裝置201傳輸至虛擬通道220中的分支裝置204。然后,分支裝置204分散視頻串流至可為顯示監視器的接收裝置202及203。由分支裝置204至每一接收裝置的視頻串流在虛擬通道中傳輸。主要鏈路210、211及212的鏈路速率彼此可不同。對應至系統100、200及其類似者,本發明的說明需要區別數種時脈頻率。用于本文的“符號”可指“數據符號”或“控制符號”。數據符號為待傳輸數據,其系根據為來源裝置及接收裝置所知的協議來編碼。數據符號可包含有效數據(active data),待顯示的視頻數據與空白間隔數據(blanking interval data)。控制符號為符號集合,其系用來框住數據符號以及根據為來源裝置及接收裝置所知的協議來編碼。鏈路速率系指符號在實體鏈路(例如,主要鏈路210、211及212)上傳輸的速率或頻率。每個主要鏈路210、211及212各自可有不同的鏈路速率。與鏈路速率有關的是建立跨越個別鏈路之時序的鏈路符號時脈(link symbol clock)或LS_CLK。來源數據速率為來源裝置輸出數據串流的速率或頻率。例如,來自DVD譯碼器的視頻來源數據速率為由譯碼器輸出之視頻數據的速率。來自DVD譯碼器的音源數據速率為由譯碼器輸出之音頻數據的速率。因此,來源數據速率包括諸如實際視頻數據及空白間隔之類的有效數據。數據串流之來源數據速率的恢復為本發明的關鍵方面。虛擬通道數據速率為輸入包含來源數據之數據至接口發射器裝置的速率或頻率。 它也可為接口接收裝置輸入收到之數據串流至待渲染接收裝置的速率。以不同方式表達, 虛擬通道數據速率為用于虛擬通道之數據輸入至發射器的速率。因此,虛擬通道數據速率高于對應的來源數據速率以及低于鏈路速率。圖3根據本發明之一具體實施例圖標來源裝置201。來源裝置201包含控制器 301、存儲器302、永久性存儲所(persistent storage) 303、通訊架構304、數據源310、鏈路模塊(link module) 320、傳輸接口 330、時脈源;340、通道分離器(channelizer) 322、以及參考速率模塊324。控制器301可為包含中央處理單元(CPU)或圖形處理單元(GPU)的任何一或更多處理器。控制器301控制來源裝置201中之裝置的操作。例如,控制器301可執行實作以下各物中之一或更多的邏輯指令鏈路模塊320、傳輸接口 330、時脈源340、通道分離器322、以及參考速率模塊324。鏈路模塊320、傳輸接口 330、時脈源340、通道分離器 322及參考速率模塊324的邏輯指令可實作成軟件、硬件、或彼等之組合。存儲器302包含一或更多存儲器裝置,例如,動態隨機存取存儲器(DRAM)裝置。存儲器302用來按執行需要存儲用于部份模塊的邏輯,包括鏈路模塊320、傳輸接口 330、時脈源340、通道分離器322及參考速率模塊324。存儲器302也可用來緩沖來自數據源310的輸入串流數據至傳輸接口 330。永久性存儲所303可包含一或更多永久性存儲裝置,例如磁盤、光盤、閃速存儲器、及其類似者。永久性存儲所303可按需要存儲鏈路模塊320、傳輸接口 330、時脈源340、 通道分離器322及參考速率模塊324的邏輯。例如,在一具體實施例中,永久性存儲所303 存儲鏈路模塊320、傳輸接口 330、時脈源340、通道分離器322及參考速率模塊324中以可執行形式實作成在來源裝置201激活時要加載存儲器302之軟件的所有部份。通訊總線304耦合來源裝置201的組件,例如301、302、303、310、320、322、324、320、330及340中之兩個或更多。通訊總線304可包含周邊組件接口(PCI)總線或它的變體之一、通用序列總線(USB)、Firewire、Khernet、或類似裝置。數據源310可為產生來源數據串流的任何裝置。例如,視頻或音樂播放裝置(例如,DVD、⑶、MP3、數字相機及其類似者的播放裝置或譯碼器)可內含于數據源310。在一具體實施例中,數據源310可為在存儲于DVD之視頻數據送到傳輸接口 330之前譯碼及解壓縮該數據的DVD播放裝置。例如,用動態圖像專家組第2版(MPEG》視頻壓縮標準,可存儲 DVD視頻數據。數據源310會根據MPEG2標準來解壓縮MPEG2視頻,以及將經解壓縮之視頻數據注入鏈路模塊320供傳輸至接收裝置202以渲染顯示器。盡管在此未描述,熟諳此藝者了解,數據源310可包含可用來產生待輸入鏈路模塊320之來源數據串流的數個組件,例如但不受限于幀緩沖器(frame buffer)、譯碼器、及時序控制器。鏈路模塊320包含可根據傳輸要求來提供服務的功能,例如包裝及/或填充封包及/或幀。鏈路模塊320也可提供可多路傳送(multiplex)次要數據(例如,控制信息,及 /或待與視頻串流一起顯示的其它信息)及進行加密的功能。通道分離器322可實作成為鏈路模塊320的部件或成為個別的模塊。通道分離器 322包含以下功能接收來自數據源310之來源數據串流以及初始化一或更多虛擬通道以使該來源數據以一或更多來源數據串流的方式傳輸至接收裝置。例如,接收來自數據源310 之DVD視頻及音頻串流的通道分離器322可初始化用于視頻及音頻串流的一或更多虛擬通道。通道的初始化可包括產生通道的識別碼(identifier),以及傳遞有對應串流數據的適當識別碼至鏈路層。在本發明的一些具體實施例中,虛擬通道的初始化涉及用對應接收裝置及分支裝置交換訊息。例如,在設立虛擬通道之前交換訊息使得虛擬通道的組態有動態決定的通道速率。例如,可將虛擬通道的通道速率設定成數據流(data flow)路徑中之每個裝置可支持的速率。在一具體實施例中,通道速率經決定成有大于對應來源數據串流之峰值速率 (peak rate)以及映像至下層傳輸媒體之實體傳輸特性的數值。通道速率經設定成可由數據流路徑上之實質所有中間裝置支持的等級也較佳。通道分離器322或鏈路模塊320可填充無效數據于虛擬通道數據串流中藉此使通道速率維持在設定的等級為較佳。參考速率模塊3M包含以下功能決定傳達可傳輸至接收裝置之時序關系的一或更多參考參數。在一具體實施例中,參考速率模塊3M決定待傳輸至接收裝置202的第一參數及第二參數。第一參數及第二參數經決定成可表達關系(來源數據速率)/(通道速率)。在一具體實施例中,第二參數可為對應虛擬通道時脈的預定周期數。然后,第一參數可為在由第二參數定義之虛擬通道時脈間隔內出現之來源數據串流時脈的周期數。一或更多鎖相環(phase lock loop)或其類似物可用來鎖定例如源于時脈源340的時脈。時脈源340可包含用來產生來源數據串流時脈、虛擬通道時脈及鏈路時脈的一或更多時脈源。對于來源數據串流時脈、虛擬通道時脈及鏈路時脈中之每一,本發明的具體實施例可使用來自時脈源340的個別時脈,或所有都用單一時脈,或彼等之組合用單一時脈。 例如,如果來源數據串流時脈及虛擬通道時脈使用相同的時脈,第一及第二參數在來源數據串流的傳輸期間不會改變數值。如果使用不同的時脈源,例如,第二參數可保持不變而第一參數可波動,因為它是相對于第二參數而定義的。用于時脈源340的時脈源可包含任何習知時脈產生裝置,例如一或更多晶體或硅振蕩器。
傳輸接口 330包含以下功能接收例如來自鏈路模塊320的輸出數據串流以及透過傳輸鏈路,例如鏈路210,送到接收裝置,例如202或送到分支裝置,例如204。傳輸接口 330也包含包含以下功能必要時,在有主要鏈路及輔助鏈路兩者的系統中,透過這兩種鏈路來傳輸數據。在一具體實施例中,傳輸接口 330包含以下規定于實體層的功能例如,傳輸數據的實體傳輸及錯誤糾正。數據傳輸的出現系根據鏈路時脈。在一具體實施例中,傳輸接口 330可包含差分發射器。例如,在一具體實施例中,傳輸接口 330包含使用低電壓差分信號接口標準(LVDS)透過主要鏈路210來傳輸視頻數據幀及控制信息所需的功能。熟諳此藝者了解,除了圖標或彼等之不同組合以外,來源裝置201可包含數個組件或模塊。也應注意,數據源310、鏈路模塊320、傳輸接口 330、通道分離器322、參考速率模塊3M及時脈源340的功能可實作成軟件、韌體、硬件、或彼等之組合。在一具體實施例中,例如,用硬件描述語言(例如,Verilog、RTL、網表(netlists))詳細說明數據源310、鏈路模塊320、傳輸接口 330、通道分離器322、參考速率模塊3M及時脈源340的功能,使得最終可組態通過產生屏蔽/光罩的制程來產生本發明的硬件裝置具體化方面。圖4根據本發明之一具體實施例圖標接收裝置202。接收裝置202包含控制器 401、存儲器402、永久性存儲所403、通訊架構404、數據接收裝置(data sink) 430、鏈路模塊420、接收接口 410、時脈源440、通道處理器422、以及速率推導器(rate deriver)4240 控制器401可為包含中央處理單元(CPU)或圖形處理單元(GPU)的任何一或更多處理器。 控制器401控制接收裝置202中之裝置的操作。例如,控制器401可執行可執行實作以下各物中之一或更多的邏輯指令鏈路模塊420、接收接口 410、時脈源440、通道處理器422、 以及速率推導器424。鏈路模塊420、接收接口 410、時脈源440、通道處理器422及速率推導器424的邏輯指令可實作成軟件、硬件、或彼等之組合。存儲器402包含一或更多存儲器裝置,例如,動態隨機存取存儲器(DRAM)裝置。存儲器402用來按執行需要存儲用于部份模塊的邏輯,包括鏈路模塊420、接收接口 430、時脈源440、通道處理器422、以及速率推導器424。存儲器402也可用來緩沖來自接收接口 410 的輸入串流數據至數據接收裝置430。永久性存儲所403可包含一或更多永久性存儲裝置,例如磁盤、光盤、閃速存儲器、及其類似者。永久性存儲所403可按需要存儲鏈路模塊420、接收接口 430、時脈源440、 通道處理器422及速率推導器似4的邏輯。例如,在一具體實施例中,永久性存儲所403存儲鏈路模塊420、接收接口 430、時脈源440、通道處理器422及速率推導器424中以可執行形式實作成在接收裝置202激活時要加載存儲器402之軟件的所有部份。通訊總線404耦合接收裝置202的組件,例如401、402、403、410、420、422、424、 420、430及440中之兩個或更多。通訊總線404可包含周邊組件接口(PCI)總線或它的變體之一、USB、Firewire, Ethernet、或類似裝置。接收接口 410包含以下功能由鏈路(例如,主要鏈路211)、來源裝置或分支裝置,接收輸入數據串流。然后,收到的數據可送到鏈路模塊420。接收接口 410也包含以下功能必要時,在有主要鏈路及輔助鏈路兩者的系統中,透過這兩種鏈路來接收數據。在一具體實施例中,接收接口 410包含以下規定于實體層的功能例如,傳輸數據的實體傳輸及錯誤糾正。在一具體實施例中,接收接口 410可包含差分接收器。例如,在一具體實施例中, 接收接口 410用低電壓差分信號接口標準(LVDQ透過主要鏈路211來接收視頻數據幀及控制信息的功能。鏈路模塊420包含以下功能根據來源裝置或分支裝置如何傳輸封包來提供諸如解包裝及/或去填充封包及/或幀之類的服務。鏈路模塊420也可提供以下功能視實際需要,多路解編(demultiplex)次要數據(例如,控制信息,及/或待與視頻串流一起顯示的其它信息)以及進行輸入串流的解密。數據接收裝置430可為可接收輸入數據串流及加以處理及/或渲染的任何裝置。 例如,數據接收裝置430可為視頻及/或音頻渲染裝置(例如,電視顯示器)、或音頻渲染裝置,例如揚聲器系統。在一些具體實施例中,數據接收裝置430可為連接至外部渲染裝置的接口。在一具體實施例中,數據接收裝置430可為接收經解壓縮之視頻數據及相關時序信息的顯示裝置。盡管在此未描述,熟諳此藝者了解,數據接收裝置430可包含數個組件,例如但不受限于幀緩沖器、譯碼器、及顯示時序恢復模塊(display timing recovery module)0通道處理器422可實作成為鏈路模塊420的部件或成為個別的模塊。通道處理器 422包含以下功能接收來自鏈路模塊420的來源數據串流以及檢測包含為一或更多來源數據串流之來源數據的一或更多虛擬通道。例如,接收來自鏈路模塊420之DVD視頻及音頻串流的通道處理器422可決定用于該等視頻及音頻串流的一或更多虛擬通道。此決定可基于定義虛擬通道之獨一識別碼的檢測。通道處理器422也可包含以下功能接收及響應在設立虛擬通道時來自來源裝置的訊息。通道處理器422及/或鏈路模塊420也包含以下功能識別及拋棄此類填充數據(fill data,例如,包含于分支裝置可使虛擬通道之傳輸速率與預指定通道速率相對的數據)。速率推導器4 包含以下功能檢測傳輸自來源裝置201的一或更多參考速率參數,以及基于該等參數、該鏈路速率及該通道速率來決定來源數據速率。該等速率參數系定義來源數據速率與通道速率的時序關系。例如,由輸入封包串流中之封包的標頭信息可恢復傳輸自來源裝置201的一或更多速率參數。可就地決定鏈路速率及通道速率。一或更多鎖相環、振蕩器及/或類似者可用來鎖定收到后及檢測過的時脈,例如鏈路時脈、虛擬通道時脈、及/或來源數據串流時脈。時脈源440可包含用于鎖定數據串流時脈、虛擬通道時脈及鏈路時脈中之一或更多的一或更多時脈源及/或時脈電路。對于來源數據串流時脈、虛擬通道時脈及鏈路時脈中之每一,本發明的具體實施例可使用來自時脈源440的個別時脈,或所有都用單一時脈, 或彼等之組合用單一時脈。用于時脈源440的時脈源可包含任何習知時脈產生裝置,例如一或更多晶體或硅振蕩器、或時脈鎖定電路,例如鎖相環電路。熟諳此藝者了解,除了圖標或彼等之不同組合以外,接收裝置202可包含數個組件或模塊。也應注意,數據接收裝置430、鏈路模塊420、接收接口 410、時脈源440、通道處理器422及速率推導器424的功能可實作成軟件、韌體、硬件、或彼等之組合。在一具體實施例中,例如,用硬件描述語言(例如,Veril0g、RTL、網表)詳細說明數據接收裝置430、鏈路模塊420、接收接口 410、時脈源440、通道處理器422及速率推導器似4的功能,使得最終可組態通過產生屏蔽/光罩的制程來產生本發明的硬件裝置具體化方面。圖5圖標方法500,藉此來源裝置(例如,來源裝置201)可傳輸接收裝置(例如, 接收裝置20 所需的信息以重新產生來源數據速率。在步驟510,來源裝置接收及/或產生來源數據串流。例如,來源裝置可為數據源,例如產生視頻及/或音頻串流的DVD播放裝置。由數據源產生的視頻及/或音頻串流被稱作來源數據串流。數據源系以由數種因素 (包括視頻及音頻數據(例如,MPEG2)的編碼)決定的速率產生來源數據串流。例如,來自時脈源340的時脈源或時脈鎖定電路可用來產生時脈或鎖定由來源數據串流產生的時脈。 決定來源數據串流之數據速率的時脈頻率被稱作來源數據串流時脈或來源數據串流速率。在步驟520,將來源數據串流映像至一或更多虛擬通道。如上述,虛擬通道為施加于實體傳輸鏈路的邏輯串流。虛擬通道與來源數據串流通常有一對一的映像。不過,在有些情形下,可將一來源數據串流映像至多個虛擬通道。在不失一般性下,為了便于說明,方法 500的以下描述大體假設來源數據串流與虛擬通道有一對一的映像。例如,可將帶有視頻及多通道音頻的來源數據串流映像至多個虛擬通道。在接收來源數據串流的第一數據時,通道分離器及/或鏈路模塊判斷需要新的虛擬通道。通道分離器可產生智在源于來源數據串流之每一封包攜載數據之標頭部份中的通道識別碼。在一些具體實施例中,例如,利用通道分離器及/或鏈路模塊,來源裝置可通知接收裝置及/或對應分支裝置初始化新的虛擬通道。在步驟530,決定用于虛擬通道的通道速率。通道速率或虛擬通道時脈速率為使虛擬通道充滿來源數據及其它次要數據的速率。例如,通道速率可考慮到把來源數據及次要數據包裝成封包、構成標頭、把數據編碼成符號以及添加任何控制符號至封包的速率。不過,應注意,本發明的具體實施例可具有涵蓋通道速率的其它方面及/或有提及方面中把排除通道速率在外的一些方面。每個具體實施例可具有決定來源裝置與對應一或更多接收裝置間之通道速率的一致方法。在步驟M0,通道化(channelize)該來源數據串流。例如,通道分離器322及/ 或鏈路模塊320把來源數據串流的數據封包化。在本發明的一些具體實施例中,可把次要數據多任務化成虛擬通道。通道化包括把數據串流之數據及任何次要數據包裝成有固定或可收大小的的封包,形成每個封包的標頭部份,根據編碼方案來編碼數據串流之數據及次要數據,以及添加渲染裝置渲染來源數據串流所需的控制符號。例如,可能需要包裝有無效數據(inactive data)的視頻來源數據串流使得可以預定通道數據速率來傳輸虛擬通道數據。在步驟550,決定鏈路速率。例如,鏈路速率為鏈路模塊320傳輸封包通過傳輸接口 330的速率。通常來源裝置、分支裝置及接收裝置各有它可操作的一或更多鏈路速率。用于描述方法500的術語“鏈路速率”系指輸出鏈路(例如,主要鏈路210)操作時的時脈速率。應注意,鏈路頻寬系指包含主要鏈路210的所有實體鏈路之總容量。鏈路速率通常由例如源于時脈源340的預組態時脈決定。在步驟560,決定將會與接收裝置通訊的速率參數。在本發明的具體實施例中,決定第一速率參數(M)與第二速率參數(N)。根據本發明,參數M及N旨在傳達來源數據串流時脈與虛擬通道時脈的關系。在一具體實施例中,N系經組態成可具有對應至虛擬通道時脈之預定周期數的數值,以及M的測量值為在由N定義之間隔期間出現的來源數據串流時脈之周期數。其它具體實施例可包含分開計算M與N同時仍傳達來源數據速率與通道速率之關系的方法。用于每個虛擬通道的M、N參數系分開決定。用于不同類型之數據的M、N 參數也可分開決定,例如音頻及視頻。例如,甚至在單一虛擬串流內,視頻及音頻可能需要以不同的速率渲染。根據一具體實施例,在例如通過組態來決定N參數后,(1)可用來決定M
權利要求
1.一種用以由來源裝置傳輸來源數據串流至接收裝置的方法,該方法包括下列步驟 形成由該來源裝置至該接收裝置的一邏輯通道,該邏輯通道經組態成可攜載(i)該來源數據串流,以及(ii) 一或更多速率參數,其中該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率。
2.權利要求根據權利要求1所述的方法,其中該形成步驟包括下列步驟 基于不包括填充數據的一數據速率來決定該邏輯通道之該數據速率。
3.權利要求根據權利要求1所述的方法,其中該形成步驟包括下列步驟決定對應至一邏輯通道時脈之一預定周期數的第一速率參數,其中該邏輯通道時脈聯系至該邏輯通道之該數據速率;以及決定對應至在第一間隔內之一來源串流時脈之一周期數的第二速率參數,其中系基于該第一速率參數與該邏輯通道時脈來決定該第一間隔,以及其中該來源串流時脈系與該來源數據串流之該數據速率聯系,其中該一或更多速率參數包含該第一速率參數與該第二速率參數。
4.權利要求根據權利要求3所述的方法,其更包含下列步驟 嵌入該第一參數及該第二參數于該邏輯通道。
5.權利要求根據權利要求1所述的方法,其更包含下列步驟 在該來源裝置處接收該來源數據串流;以及基于收到的來源數據串流來決定該來源數據串流的數據速率。
6.權利要求根據權利要求1所述的方法,其更包含下列步驟 在該來源裝置處產生該來源數據串流;以及基于產生的來源數據串流來決定該來源數據串流的數據速率。
7.權利要求根據權利要求1所述的方法,其更包含下列步驟 經由一或更多分支裝置,傳輸該邏輯通道至該接收裝置。
8.一種供接收裝置恢復來源數據串流之數據速率的方法,其系包含下列步驟 檢測在一接收數據串流之中的一邏輯通道,其中該邏輯通道攜載該來源數據串流; 從該接收數據串流恢復一或更多速率參數;決定該邏輯通道的一數據速率;以及基于該邏輯通道之該數據速率與該一或更多速率參數來決定該來源數據串流之該數據速率。
9.權利要求根據權利要求8所述的方法,其更包含下列步驟更基于該數據串流之該鏈路速率來決定該來源數據串流之該數據速率。
10.權利要求根據權利要求8所述的方法,其中恢復一或更多速率參數的步驟包含下列步驟接收第一速率參數;以及接收第二速率參數,其中該第一速率參數與該第二速率參數系聯系該來源數據串流之該數據速率與該邏輯通道之該數據速率。
11.權利要求根據權利要求8所述的方法,其中決定該邏輯通道的一數據速率的步驟包含下列步驟基于不包括填充數據的一數據速率來決定該邏輯通道之該數據速率。
12.權利要求根據權利要求8所述的方法,其中決定該來源數據串流之該數據速率的步驟包含下列步驟該邏輯通道之該數據速率乘以該第二速率參數與該第一速率參數的比例。
13.一種數據傳輸系統,其系包含 一來源裝置,其中該來源裝置經組態成可形成由該來源裝置至該接收裝置的一邏輯通道,該邏輯通道經組態成可攜載(i)該來源數據串流,以及(ii) 一或更多速率參數,其中該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率;以及透過一傳輸鏈路傳輸該邏輯通道;以及直接或間接至該來源裝置的一接收裝置,其中該接收裝置經組態成可 檢測在一接收數據串流之中的邏輯通道; 從該接收數據串流恢復該一或更多速率參數; 決定該邏輯通道之該數據速率;以及基于該邏輯通道之該數據速率及該一或更多速率參數來決定該來源數據串流之該數據速率。
14.權利要求根據權利要求13所述的數據傳輸系統,其更包含直接或間接耦合至該來源裝置及該接收裝置的一分支裝置,其中該分支裝置經組態成可接收該邏輯通道;以及以該邏輯通道之該數據速率傳輸該接收邏輯通道。
15.權利要求根據權利要求13所述的數據傳輸系統,其中該來源裝置更被組態成可 決定對應至一邏輯通道時脈之一預定周期數的第一速率參數,其中該邏輯通道時脈聯系至該邏輯通道之該數據速率;對應至在第一間隔內之一來源串流時脈之一周期數的第二速率參數,其中系基于該第一速率參數與該邏輯通道時脈來決定該第一間隔,以及其中該來源串流時脈系與該來源數據串流之該數據速率聯系;以及傳輸該第一速率參數及該第二速率參數至該接收裝置。
16.權利要求根據權利要求13所述的數據傳輸系統,其中在該接收裝置處之該輸出傳輸鏈路與一輸入傳輸鏈路系遵循DisplayPort標準。
17.一種包含計算機可讀取媒體的有形計算機程序產品,該計算機可讀取媒體具有記錄于其上的計算機程序邏輯用以造成至少一處理器可形成由一來源裝置至一接收裝置的一邏輯通道,該邏輯通道經組態成可攜載(i)該來源數據串流,以及(ii) 一或更多速率參數,其中該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率。
18.權利要求根據權利要求17所述的有形計算機程序產品,記錄于其上的計算機程序邏輯系用于進一步造成該至少一處理器可決定對應至一邏輯通道時脈之一預定周期數的第一速率參數,其中該邏輯通道時脈聯系至該邏輯通道之該數據速率;對應至在第一間隔內之一來源串流時脈之一周期數的第二速率參數,其中系基于該第一速率參數與該邏輯通道時脈來決定該第一間隔,以及其中該來源串流時脈系與該來源數據串流之該數據速率聯系;以及傳輸該第一速率參數及該第二速率參數至該接收裝置。
19.一種包含計算機可讀取媒體的有形計算機程序產品,該計算機可讀取媒體具有記錄于其上的計算機程序邏輯用以造成至少一處理器可檢測在一接收數據串流之中的一邏輯通道,其中該邏輯通道包含一來源數據串流; 從該接收數據串流恢復一或更多速率參數; 決定該邏輯通道之一數據速率;以及基于該邏輯通道之該數據速率及該一或更多速率參數來決定該來源數據串流之該數據速率。
20.權利要求根據權利要求19所述的有形計算機程序產品,記錄于其上的計算機程序邏輯系用于進一步造成該至少一處理器可更基于該數據串流之該鏈路速率來決定該來源數據串流之該數據速率。
全文摘要
揭示數種用以使來源及接收裝置同步的系統及方法。接收裝置可有效決定來源數據速率,甚至在接收裝置不直接耦合至來源裝置的情形下。一種用以由來源裝置傳輸來源數據串流至接收裝置的方法,其系包括形成由一來源裝置至一接收裝置的一邏輯通道,在此該邏輯通道系經組態成可攜載來源數據串流,以及一或更多速率參數。該等速率參數系聯系該來源數據串流之一數據速率與該邏輯通道之一數據速率。一種供接收裝置恢復來源數據速率的方法,其系包括下列步驟檢測在一接收數據串流之中的一邏輯通道,在此該邏輯通道系包含該來源數據串流,從該接收數據串流恢復一或更多速率參數,決定該邏輯通道的一數據速率,以及基于該邏輯通道之該數據速率與該一或更多速率參數來決定該來源數據串流之該數據速率。也描述數種對應系統及計算機程序產品。
文檔編號H04L25/02GK102439926SQ201080022613
公開日2012年5月2日 申請日期2010年4月12日 優先權日2009年4月14日
發明者C·Q·卡特, N·J·科尼 申請人:Ati技術無限責任公司