專利名稱:采樣速率轉換設備和方法
采才i^t率轉換設備和方法
本申請是申請日為2004年3月19日、申請號為200480010769.6、發明名稱 為"采樣速率轉換設備和方法"的原申請的分案申請。
絲領域
本發明^^殳涉及音頻放大系統,更加具體地說,本發明涉及用于轉換具有笫 一采樣速率的輸入數據流為具有第^i鏈率的輸出數據流的系統和方法。
背景技術:
樂P中M調制(PWM)或D類信號放大技術已經存在好多年了。隨著開關 模式電源(SMPS)的iStit^艮,脈沖寬度調制技術越來越漆ff。由于這項技術 的出現,在信號放球用領域中應用脈沖寬度調制技術的興^^越大,其結果 是得到重大有效的 M,這一改進是通過^^) D類功率輸出拓樸結構代^^統的 (幾1"生的AB類)功率輸出拓樸結構實現的。
開發信號放大應用的早期嘗試使用了與早期的開關模式電源中使用過的相 同的對于》文大的處理方法。更加M地說,這些嘗試使用了才對以調制方案,這個 調制方案導致低性能的應用。這些方案實^^很復雜而且很昂貴。因此,這些 解決方案沒有得到廣泛的彩內。在主滬"文大應用中,D類技術的現有模擬實施方 案還不能代替傳統的AB類方丈大器。
最近,數字樂P中te調制方案問世了。這些方案使用了S-A調制技術來產生 在較新式的數字D類實施方案中^J ]的脈沖寬度調制信號。然而,這些數字樂P中 寬度調制方案在緩解將脈沖寬度調制器集成在整個放大器中的解決方案中的主 要障礙方面的貢獻甚少。因此,D類技#主流應用中還是不能代##統的AB 類放大器。當前的數字月擬中寬度調制的調制方案還存在一系列問題。 一個問M,信號 處理系統的其余部分的性能和質量特性對于不同的應用而有所不同。整個系統解 決方案的嚴格實#終端用戶的應用都不是決定性的。結果,不可能事先預測實
施的細節。因為當前的技術需^l十對^^應用的解決方案,這些解決方案在""^:
情況下不很靈活,不可擴充、或者不可轉移到其它的應用上去。因此,這些技術
在"it殳情況下不可應用到主流系統上。
當前的數字脈沖寬度調制的調制方案不滿足主流系統要求的一個具體的地 方是對于具有各種不同的采樣速率的數字輸入數據流的處理。根據提供數據的設 備的類型以及設備的特定設計,這些數字輸入數據流可以具有不同的釆樣速率。 車lT7vl^居^^可以^f吏用不同的時4申源,不同的時4中源可能具有^^f鼓不同的速率或 者可負M皮jtb4目對地有些漂移。當前的技術要求單個輸A^樣速率,或者多個固定 的已知的輸Ai4率,而不能適^i殳備可以提^f俞入數據的不同的速率。
JM技術系統的另一個問M,因為它們沒有能夠產生本地時鐘信號的采樣 速率變換器,所以它們在J情況下要AMIr入數據重建脈沖寬度調制時鐘信號。 這種重建的時鐘信號不可能支持4交高的性能,而對于本地產生的時鐘信號這是可 能辦到的。
發明內容
通it^發明的^h實施例可以解決上述的一個或多個問題。廣義地說,本發
明包括用于^^硬件和軟件部件的組合將數字輸入數據^/人第一采樣速率轉換 成第二釆樣速率的系統和方法。在一個實施例中,在數字音頻系統的采樣速率轉 換器中實現從第一采樣速率到第二采樣速率的轉換。采樣速率轉換器具有多個部
件,其中的某些部件A^1硬件實施的,其中的某些部件^1軟件實施的。每^HP 件用硬件實艦賴軟件實施,取決于這個部件的性負淺求。用軟件可以得到較
好性能的部件就用軟件實施,用硬件可以得到較好性能的部件就用硬件實施。應 當說明的是,不^^音頻性能的度量方面,而錄計算的復雜性、部件向軟件引 擎的"擬合"、以及其它方面,性能都是可以改進的。
一個實施例包括一個采樣速率轉換器系統,采樣速率轉換器系統包括速率估算器,將其配置成可以估算輸入數據流的采樣速率;相^fi^擇單元,將其配置 成可以根據估算的采樣速率選擇用于內插一組多相濾波器系數的相位;系數內插 器,將其配置成可以根據所選的相位內插濾波器系數以便增力口相位^l碎率;4^只 單元,將其配置成可以4^只內插的濾波器系數與輸入數據流的樣本以便產生重新 采樣的輸出數據流的樣本。如以上所述,這些系統部件包括硬件和軟^t^件這兩 者。在一個實施例中,所說的系統包括兩個或多個通道,其中的每個通道都能夠 接收具有不同的、可變的采樣速率的輸入數據流,而不是由其它通道接收的數據 流。在一個實施例中,不同的通道與其它的通道共享一個或多個公共的部件。在 一個實施例中,將采樣速率轉換器系統4給到一個音頻^:大系統,并且將其配置 成可以轉換輸入數據流為公共的輸出釆樣速率,從而可以由放大器部件如音頻效 果單iL4脈沖寬度調制器進行處理。
另一個實施例包括一種方法,所說的方法包^^。下步驟接收具有輸A^樣 速率的輸入數據流,和^J ]硬件和軟件部件的組合處理所iX^r入數據流以產生具 有不同于輸A^樣速率的輸出采樣速率的輸出數據流。在一個實施例中,所說的 處理包括估算輸/J^樣速率、選擇用于插入一組多相濾波器系數的相位、內插 所說的iii且多相濾波器系數、4^只^M多相濾波器系數與輸入數據流的樣本、和 提^lt出數據流的最終樣本。在一個實施例中,所說方法包括接收和處理在獨 立的通iUi的具有獨立可變的釆樣速率的兩個或多個輸入數據流,以便產生具有 一個公共的輸出采樣速率的對應的輸出數據流。對于在不同通道內不同數據流的 至少4分處理^軟件部件~"^進行的。
許多不同的實施例也4_可能的。
與王賄技術的系M^目比,^f錢硬件部件和軟^^件這兩者具有一系列優點。 一個可能的優點是,可以在專用的硬件中實皿SilA^很重要的那些部件以充 分發揮它們的性能,同時在軟件中實施靈活性更加重要的其它的部件。另一個可 能的優點是,硬件和/或軟件可以由多個通道共享,以減小系統的成本和復雜性, 同時還可以保持系統的it^的靈活性。另一個可能的優點是,每個通道S阿能能
夠處理可變的、并且與其它通iUil丈才居流的iM^ii率無關的^rA^才羊速率。另一 個可能的優點是,本地的高性能的時鐘信號的產生使務p中寬度調制輸出可以滿足 比時鐘信號必須從輸入數據重建出來的情況更高的性能標準。根據本發明提供了一種釆樣速率轉換器,所述采樣速率轉換器包括多個采樣
速率轉換器部件,所迷采樣速率轉換器包括速率估算器;低通濾波器,其中所 iiit^f古算器的輸出通ii^斤述^it濾波器;相^it擇單元,其中所述^it濾波器 的輸出被提供給所&目^i4擇單元;多相系數內插器,其中所述多相系數內插器 根據所述相^ii擇單元的輸出產生一組內插的多相濾波器系數;4^只單元,其配 置成4^、所述內插的多相濾波器系數與輸入數據流的對應的樣本;輸入先進先出 隊列,其配置成接收所述輸入數據流的樣本并且向所述4^只單^U是供所述輸入數 據流的所述樣本;輸出先進先出隊列,其配置成4妾收來自所ii4^只單元的輸出數 據流的樣本;以及先ii^出管理單元,其井給到所述輸入先進先出隊列和所述輸 出先進先出隊列并且配置成向所述^it濾波器提供反饋;其中所述部件的第一部 分包括硬^NM牛;以及其中所述部件的第二部分包括軟件部件。
才財居本發明提供的釆樣速率轉換器,其中用硬件實施所艦^f古算器、所迷 i腿濾波器和所述多相系數內插器。
根據本發明提供的采樣速率轉換器,其中用軟件實施所勤目^it擇單元、所 ii44口、單元和所述先進先出管理單元。
才財居本發明提供的采樣速率轉換器,其中所iiii剩古算器包括一個計數器, 所述計數器配置成計數所述輸入數據流的釆樣周期,并且其中通過一個軟件部件 粉居所述計數器的值計對俞4極率。
根據本發明提供的釆樣速率轉換器,其中所述釆樣速率轉換器包括用于處理 輸入數據流的兩個或更多通道,其中所述兩個或更多通道共享所述多個采樣速率 轉換器部件中的一個或更多部件。
根據本發明提供的采樣速率轉換器,其中所述釆樣速率轉換器包括用于處理 輸入數據流的兩個或更多通道,其中所述兩個或更多通道中的f個通道都配置 成處理采樣速率與其它通ii^理的輸入數據流的采樣速率無關的輸入數據流。
才財居本發明提供的采樣速率轉換器,其中每個通道包括獨立的速率估算器。
根據本發明提供的采樣速率轉換器,其中每錯剩古算器包括單獨的釆樣周 期計數器。
根據本發明提供的采樣速率轉換器,其中每個采樣周期計數器產生用于估計對應的輸入數據流的采樣速率的單獨的計數。
根據本發明提供的采樣速率轉換器,其中所艦道中一個通道是主通道, 并且所^it道中剩^if道是次要通道;對于所^i通道估算采樣速率,對于每個 次要通道,確定對應的釆樣周期計數器與所^i通道的采樣周期計數器之比,以 及每個次要通道的采樣速率被確定為對所述主通道估算的所迷采樣速率乘以所 述比值。
根據本發明提供的采樣速率轉換器,其中每個通道實施一個多相濾波器; 以及用于每個多相濾波器實施方案的系數是從濾波器系數的一個共用的組內插的。
根據本發明提供的釆樣速率轉換器,其中所迷釆樣速率轉換器井^到敗中寬 ^!調制音頻;故大器。
根據本發明提供了 一種采樣速率轉換器,所述采樣速率轉換器將數字輸入數 據^4爭換成預定的輸出采樣速率(Fout),所述采樣速率轉換器包括采樣速^H古 算路徑,其配置成接收與所述輸入數據i^目關聯的幀同步信號并估算所述輸入數 據流的$俞7^^樣速率(Fin);音頻數據路徑,所述音頻凄史據路徑包括輸入先進 先出隊列,其配置成接收所述輸入數據流的樣本;巻積單元,其配置成4妾收所迷 輸A^進先出隊列的輸出并4^只所述輸入數據流的所述樣本與濾波器系數;以及
輸出先進先出隊列,其配置成接^)t^斤^4^只單元的輸出,其中樣本能夠以所述輸 出采樣速率(Fout)從所述輸出先進先出隊列讀取;以狄進先出管理單元,其 耦合到所述輸入先進先出隊列和所述輸出先進先出隊列并且配置成向所述速率 估算i^S的至少一^HM牛提供反饋。
根據本發明提供的采樣速率轉換器,其中所述^^責用于阻止所述輸A^進先
出隊列和所述輸出先進先出隊列的溢出或下溢。
才財居本發明提供的釆樣速率轉換器,其中所艦率估算4^包括逸慮計數 的<腿濾波器,用于估算所述輸入數據流的所述輸A^樣速率(Fin);以及所述 反銜皮提供給所述頓濾波器。
根據本發明提供的采樣速率轉換器,其中所述濾波器系數包括內插的多相濾 波器系數。根據本發明提供的采樣速率轉換器,其中所趙^#算^4圣包括用硬件實
施的速率估算器、^t濾波器和多相系數內插器;以及用軟件實施的相^(i^擇單 元。
根據本發明提供的釆樣速率轉換器,其中所述音頻數據^4圣的所tt^只單
元用軟件實施;以;s^斤述先進先出管理單元用軟件實施。
根據本發明提供了一種方法,所述方法用于將數字輸入數據^^換為預定的 輸出釆樣速率(Fout),所述方法包括以下步驟4財居與所述輸入數據;J^目關聯的 幀同步信號估算所述輸入數據流的輸^^樣速率(Fin);在輸AiL進先出隊列接 J]i^斤迷輸入數據流的樣本;4^只所述輸入數據流的所述樣本與濾波器系數,所述 輸入數據流的所述樣^M^斤述輸^4進先出隊列輸出;以絲輸出先進先出隊列 接收已經與所述濾波器系數進行4^只的樣本,其中樣本能夠以所述輸出釆樣速率 (Fout)從所述輸出先進先出隊列讀取;管理通it^斤述輸入先進先出隊列和所述 輸出先進先出隊列的樣本的流;以及根據通ii^斤述輸A^進先出隊列和所述輸出 先進先出隊列的樣本的所述流調節所估算的所述輸^^樣速率(Fin)。
根據本發明提供的用于將數字輸入數擬敘爭換為預定的輸出采樣速率(Fout) 的方法,其中所述估算的步驟包括根據與所述輸入數據^4目關聯的所述幀同步 信號產生計數;過濾所述計數;以及根悟所過濾的所述計數估算所迷輸入數據流 的所述輸/v^樣速率(Fin)。
根據本發明提供的用于將數字輸入數據^4爭換為預定的輸出采樣速率(Fout) 的方法,其中所述調節所述估算的步驟包括調節所述計數的所述過濾。
才財居本發明提供了一種數字音頻放大系統,包括采沖羊速率轉換器,其將數 字輸入數據^A輸^v^樣速率(Fin)轉換成預定的輸出采樣速率(Fout);音頻 綠子系統,其/"斤述釆樣速率轉換||#收具有所述預定的輸出釆樣速率(Fout) 的數字數據流,并對所述數字數據^i^亍處理,以產生經處理的數字數據流;脈 沖寬度調制器,其將所述經處理的數字數據i^封線象中寬度調制信號;以及輸 出級,其放大所ii^沖M調制信號以產生負^^)于驅動負載的^iU文大的信號; 其中所述采樣速率轉換器包括采樣速^f古算路徑,其配置成接收與所述輸入數 據^Nl關聯的幀同步信號并估算所述輸入數據流的輸入采樣速率(Fin);音頻數 據3|^,其包拾輸A^進先出隊列,其配置成接收所述輸入數據流的樣本;巻積單元,其配置成接4W斤述輸AiL進先出隊列的輸出并4^只所述輸入數據流的所
述樣^濾波器系it;以^^輸出先a出隊列,其配置成接收所i!4^只單元的輸
出,其中樣本能夠以所述輸出采樣速率(Fout) 乂A^斤述輸出先進先出隊列讀取; 以;5JL進先出管理單元,其并給到所述輸入先進先出隊列和所述輸出先進先出隊
列并且配置成向所iiii^H古算路徑的至少一^件提供反饋。
在閱讀了下面的詳細描述并且參照附圖以后,本發明的其它目的和優點^1夸 變得顯而易見。
圖1是說明^if]脈沖寬度調制技術的數字音頻放大系統的功能方塊圖2是說明通常實現采樣速率轉換的方式的示意圖3是說明釆樣的輸入信號的內插和抽取以產生不同采樣速率的相應的信號 的示意圖4是說明按照本發明的一個實施例的釆樣速率轉換器的部件的示意圖。
雖然本發明容易進行各種改進^#換形式,但是還要通過附圖中的實例及其 相伴的詳細描述^4示它的特定實施例。然而,應該理解,不期望附圖和詳細描 述將本發明限制到所述的具體實施例。相反,本公開旨^M落在由所附的權利 要求書限定的本發明的范圍內的所有的修改、等效物、g換方案。
下面描述4^發明的一個或多個實施例。要^說明的是,下面描述的這些實施例 以及伶f可其它的實施例都是示例性的,旨在說明本發明而不是限制本發明。
如這里所述的,本發明的各個實施例包括^j l石更件和軟^^件的組合將數字
輸入數據^A第一采才羊速率4封械第二^#速率的系統和方法。如這里所用的, "硬件"指的是專用的、有固定功能的邏輯電路,另一方面,"軟件"用于引用 可以編程的邏輯電路,所說可以編程的邏輯電路通過由程序員確定的算法進行控 制,或者在軟件控制下利用通用的可以編程的模塊,所說的才彭夾在數字信號處理器(DSP)的算極輯單元(ALU)或刷諸器內。
在一個實施例中,在數字音頻系統的采樣速率轉換器內進行從第一采樣速率 到第二采樣速率的轉換。采樣速率轉換器具有多^^件,其中的一些顏硬件實 施的,其中的一些^)軟件實施的。每^件^硬件實^i^J )軟件實施,取 決于部件的性能要求。用軟件可以得到較好性能的部件就用軟件實施,用硬件可 以得到較好性能的部件就用硬件實施。如以上所述,性能可以用音頻性能、計算 復雜性等來度量,其中使用這樣一些度量值運算所需的處理器周期的數目、設 備的容量、實施成本、靈活性、功耗等。
與按照常MA者全用硬件或者全用軟件實施的^W技術的系鄉W目比,^賴硬 件和軟件這兩者可能帶來一系列優點。例如,對于處理ii^很重要的部件可以在 專用的硬件中實施以充分發揮它們的性能。對于另外一些部件,處理逸變的重要 性小于靈活性。這些部件可實施成軟件以便提供期望的靈活性。使用硬件和軟件 部件這兩者的另一個優點是,某些部件可用于多個通道。通it^M通道之間共 享某些部件,可以減小系統的費用和復雜性,同時還可以##系統的:^和靈活 性。
本發明的仂ei4實施例是在一個"l^貞放大系統中實施的。如以上所述,脈沖寬
度調制(PWM)技極絲音頻放大系統中得到了應用,但是卻遭彫)J常規方法 的缺點。這些方法^^了才對以調制方案,^it種方案是復雜和昂貴的,并且提供 相對差的性能。相反,本發明的系統和方法是在數字調制方案中實施的,并且使 用的方法解決了 ^iE賄技術中存在的某些問題。
Jl^參照附圖i,其中表示說明^f頓^;中寬度調制技術的數字音頻放大系統
的功能方塊圖。在這個實施例中,系統100從一個數據源,如CD播放器、MP3 播放器、數字音頻磁帶、或類似物,接收數字輸入數據流。輸入數據^^由采樣
速率轉換器110接收的。輸入數據^Ulr有取決于數據源的特定的采樣速率。這個
采樣速率在4情況下是由對應類型設^f吏用的一組預先確定的釆樣速率中的 一種。例如,CD播放器可能輸出的數字數據的采樣速率為44.1千赫茲,而數字 "f^貞磁帶播放器可能輸出的數字數據的釆樣速率為32千赫茲。
按照本發明的系統和方法,采樣速率轉換器110轉換輸入數據流,使其從接 收時的釆樣速率轉^^要在系統100中使用的預先確定的內部速率。在一個實施例中,這個內部采樣速率是100千赫茲。這樣,如果以50千赫茲的釆樣速^^ 收數據,則釆樣速率轉換器110將要重新采樣所^l史據,以產生采樣速率為100 千赫茲的一個對應的內部數據流。這個內部數據流然后提^^給音頻效果子系統 120。音頻效果子系統120實Ji^于于內部數據流的^J可期望的處理,并將最會狄 理的數據it^供給PWM調制器130。
PWM調制器130接收的數據流^4一個脈沖編碼調制信號。PWM調制器 130將這個數據^^襯M^沖狄調制信號。然后將纟擬中寬度調制信號提供^^r 出級140。在輸出級140中,放;U^中寬度調制信號并且可以對放大的信號進行 某種濾波或進一步的處理。最終的信號隨后輸出到揚聲器系統150,揚聲器系統 150將這個電信號轉換成可由聽眾聽到的可聽信號。
^^>開的重點是在上述的音頻系統中的采樣速率轉換器。如以上所述,采樣 速率轉換器的目的是接收以第一速率采樣的輸入數據流并且產生以第二采樣速 率采樣的輸出數據流。雖然由數據流^表的音頻信號J4Ui^^爭不變(至少在某 些實施例中),但釆樣速率的改變要符合音頻系統的要求才能由這個系統進行處理。
Jtt參照附圖2,其中表示說明通常實現采樣速率轉換的方式的示意圖。如 由ii個附圖所示的,首先通過第一濾波器210向上^^羊或內^斜lT7v^:凈居流,然后 通it^二濾波器220向下采樣或抽i^lr入數據流。使用一個中間濾波器230來低 通濾波向上采樣的數據而后再抽取所說向上采樣的數據。輸7v^t據;a^有第一采 樣速率Fin。這個數據流的向上釆樣因子是M。于是,在向上采樣以后,數據流 的采樣速率為MxFin。向上釆樣通常是通錄輸入數據流的樣;^間進行內插 從而產生中間樣本而實現的。對于M進行選擇,以使中間采樣速率(M x Fin) 大于期望的輸出釆樣速率Fout。在H清況下,中間樣本速率比期望的輸出速率 大得多。
對于向上采樣的數據力紐傷慮波并且然后進行抽取,以便將采樣速率從中間 速率減小到期望的輸出速率。在向下采樣以后,采樣速率是FouHM/N) x Fin。 數據流的向下采樣或抽M—般情況下是通過丟棄來自中間數據流的樣本實現 的。例如,如果以200千赫茲來釆樣中間數據流并且希望的輸出采樣速率是100 千赫茲,則每隔一個樣本丟棄一個樣本。在理想情況下,M和N都是整數。如果M是整數,則輸入數據流的向上采 樣包括插入M-1個新的樣本,它們均勻地分隔在每^N^f臺樣;^間。然后,如果 N是整數,則中間數據流的向下采樣包括只抽取每個第N個樣本,其#卩分丟棄。 這種情況示于圖3中。
圖3是說明內插和抽取采樣的輸入信號以便以不同的采樣速率產生對應的信 號的一個示意圖。在此圖中,輸入樣本由點301、 306、 311、 316表示。這個f言號 的直線內#{直由虛線表示。這^H言號的向上采樣因子是5,所以在每對相鄰的樣 R間內插4個附力口的采樣點。所以,在樣本301和樣本306之間的間隔內插入 點302-305。類合"也,在樣本307和樣本311之間的間隔內插入泉306-311,在樣 本311和樣本316之間的間隔內插入泉312-315。在經過^if濾^^,最終的點 (301-316)的向下采樣因子是3,所以4頓每個第3點,其余的點被丟棄。最終 的數提流包括樣本301、 304、 307、 310、 313、和316 (力4頭所示的)。
輸入數據流的向上釆樣和向下采樣的直接實施方案的問題之一是,為了使M 和N為整數,并且為了保持期望的分辨率,M和N通常是極大的數。考慮圖3 的例子。如果Fin是60千赫茲,Fout是100千赫茲,則M是5和N是3。然而, 如果Fin是60.5千赫茲而不是60千赫茲,則必須選擇1V^200和N421。容易開 發出需要甚至于更大的M和N的值的情況。才財居在伊遞實施例中采樣速率轉換 器的分辨率,高達218的值可能是必要的。
內插和4由取方法的另一個問^:,處理所接收的數據流的采樣速率的變化可 能是很困難的。在典型的音頻系統中,每個設備或部件都可能產生它自已的時鐘 信號,劉-應的采一羊it率就是基于這個時鐘信號的。然而,即使期望兩^M牛的時 鐘信號是一樣的,這兩個時鐘信號也不能同步,可能略有變化。由于在時間信號 中存在這個差值,數據就可能丟失,或者緩存器可能溢出,導致誤差。對于本發 明的釆樣速率轉換器進行設計以便可以處理這些差值。
應當說明的是,音頻系統還可以包括各種不同的類型的音頻源。例如,可以 通過CD播放器、MP3播放器、數字音頻磁帶、或類似物產生音頻信號。可以配 置這些設備以產生有不同采樣速率的音頻信號。例如,CD播放器提供的輸出信 號的釆樣速率為44.1千赫茲,數字音頻磁帶播放器產生的輸出信號的采樣速率為 32千赫茲。本發明的系統和方法能夠^^樣速率轉換器適應輸入數據流中的多個不同的采樣速率。而且,采樣速率轉換器能夠獨立地調節每個通道以適應不同的 輸7V^樣速率。通過比較可知,現有技術的系統只能在兩個采樣速率已知的條件 下適應在不同通道上的不同采樣速率。
通過使用多相濾波器可以適應不同的采樣速率以及在這些正常時相同的速
牟之間的變化。多相濾波器可以實現內插器210和抽取器220這兩者的功能。通 過內插輸入數據流,多相濾波器可以通過內插輸入數據流實現這些功能,實!Lii 些功能的方式不需要通過整數因子向上釆樣數據流或者通過整數因子向下采樣 數據流。
在一般情況下,將上述內插器和抽取器實施為(FIR型)濾波器。多相濾波 器顯然也是一種濾波器,但不產生大量的樣本(如由內插濾波器所做的那樣), 然后扔掉不需要的樣本,并且(如由抽取濾波器所做的那樣),多相濾波器只產 生那些最終仍舊保留的樣本。于是,與圖3的例子相比,不是產生樣本301-316, 然后丟棄這些樣本中的2/3,而是只產生樣本301、 304、 307、 310、 313、和316, 沒有丟剩沐一個。
通過一組濾波器系數來確定多相濾波器。如果將這些系數外插到不同的系數 組中,則可實現不同的采樣速率。這可通iti4擇合適的濾波器系數來實現非整數 的采樣速率轉換。
使用多相濾波器的典型的采樣速率轉換器包含用于^#來自輸入數據流的 樣本的存—諸器、用于存儲濾波器系數的存儲器、用于為濾波器系數進行內插計算 的硬件、和用于計^l史據和系數的內積的乘累力口單元。在j情況下,這些部件 全是使用專用硬件實施的。這是極其昂貴的,尤其是在需要進行計算的附加邏輯 電路方面以及輸/v^樣數據需要的專用^^者器方面更貴。這些##器相對小、并 且因jtb^用硅區的效率相對低。雖然也可能完全用軟件實施采樣速率轉換器,但 這樣的實施方案在1情況下不可能提供支持音頻應用所必需的i4y變。
因此,本發明的系統和方法利用硬件和軟件部件的組合來實現在采樣速率轉 換器中的ii^和效率這兩者。這些系統和方法^if]具有足夠大的計算能力和## 容量的處理器來實現所要求的部件。
m^參照附圖4,其中表示說明本發明的一個實施例的采樣速率轉換器的部件的示意圖。圖4的下^大體上對應于將^"轉4奐的音頻凄M居的i^居^各徑,圖4
的上半部大體上對應于用于控制實際的采樣速率轉換的控制路徑。
如圖4所示,接收音頻數據流的樣本,并將其##在輸礎進先出隊列(input FIFO) 405中。輸入數據流的采樣速率為Fin。從先tt出隊列405讀出樣本并 Jitit4^、引擎410使所i^+羊本與一組內插系數4^只。4i。、引擎410有步&也向上 釆樣或向下釆樣所i^t據,以產生速率等于采樣速率轉換器的輸出速率(Fout) 的樣本。將這些樣;^f諸在輸出先進先出隊列(output FIFO) 406中。然后以速 率Fout從輸出先進先出隊列406中讀出樣本。
通iii4^f古算器的計數器421和422接收與^數據有關的幀同步信號。速 ^^古算器的計數器421和422簡單地計數在^HtiUi接收的樣本之間的時鐘周 期的數目。(要說明的是,雖然本實施例具有兩個通道和對應的速率估算器,但
換器430選#^率估算器計數器之一,并且通過^it濾波器440濾波對應的計數。 經過濾波的釆樣速率計數轉送到相位選擇單元450,并用于為多相濾波器內插濾 波器系數。然后,在4^只單元410中,使內插的多相濾波器系數與數據樣本4^只 以產生重新釆樣的數據。
數據樣輛過先進先出隊列405和先進先出隊列406的流動是由先進先出管 理單元407管理的。根據數據的流動,先進先出管理單元407向反饋單元470提 供反饋。這個反饋用于調節低通濾波器440。這有資&也調節估算的采樣速率,因 此調節了在采樣速率轉換器中進行的系數內插。由此也調節了采樣速率轉換,從 而可以更加緊密地JM宗實際的輸A^樣速率并且可以防止先進先出隊列405和 406的溢出或下溢。
可以看出,圖4的部件或者為硬件(HW)或者為軟件(SW)。在這個實施 例中,硬件部件包括輸入和輸出先進先出隊列405、 406、速率估算器421、 422、 多^4爭換器430、 ^it濾波器440、和系數內插器460。用硬件實施這些部件有各 種^g4羊的理由。例如,用硬件實施系數內插器460的理由是內插過程必須足夠快 ^ii行以便提供將要與4^只單元410中的數據樣本4^只的濾波器系數。用硬件可 以^ 易#高效率地實^4^#算器的計數器421、 422,這是因為它們是需要 快速更新的簡單計數器,而不是完整的速^#,元。計數器的偵是通過軟件讀出的,所說的軟件實際上^f亍速率估算(并iL^一個實施例中,所說的軟件對于 所有的通^_共用的)。^^貴單元470可用4欠件高步&也實施,而輸7v和專t出的先 進先出隊列405和406 ^軟件在作為先進先出隊列控制的務賭空間中有效地實 施的。換句^"i兌,先進先出隊列405、 406不是實施成小型獨立的,器,而是 使用了數字信號處理器的較大的存儲空間。
在一個實施例中,速率估算器的計數器421、 422是24比特的計數器。每個 計數器可以從4個輸入幀同步信號中選擇SAILRCK; SPDIFRX幀同步;^^且 數據幀同步;和ESSI幀同步。通過在幀同步信號的計數周期期間內計數數字信 號處理器時鐘周期的數目,可以實現周期測量。計數周期是可以編程的,通常所 說周期等于l。在這個實施例中,計數與增益相乘。這個增益是一個12比特的整 數,通常將這個整數設置成2的乘方,即等于移動一個小氣存、。這可能便于增加 低通濾波器440中的分辨率。
在一個實施例中,低通濾波器440是一個二階的HR濾波器。這個濾波器例 如可以包括一對l^關的一階HR濾波器。低通濾波器440衰減,Aii^f古算器的計 凄史^^妄收的計數的抖-動。這樣就可以係^正計數的變化是緩慢的,并且由此可以改
善采樣速率轉換的質量。由^t濾波器實施的均衡過程產生了i^rr溢和溢出的
可能性。這個問^^通過用軟件實施閉合回路反^^決的,所說的軟件調節一個 24比特的偏差,這個偏差附加到計數值上,然后^f吏這個值通過4氐通濾波器440。 在一個實施例中,低通濾波器440的濾波器系凄bl可以調節的,從而可以進4刊夬 速的頻率M目位鎖定。
系數內插器460與^f諸這些系數的ROM、以及為檢索內插H^i ]的系數提 供iW止的ROM iW止發生器-^^辦。濾波器系數實際上^^諸在兩個ROM內, 一個^#偶數系數,另一個^ft奇數系數。內插^t丸行三次^^4封直。這種內插 ^JD了一個5階段、兩個循環的il7jc線來:l;y亍內插,由此可使資源共享,同時可 以維持每兩個時鐘循環有一個內插的總處理能力。
用軟件實施的部件包括巻積單元410、相^i^擇單元450、先進先出管理 單元407、和反饋單元470。這些部件提供在i賄技術的嚴格硬件實施方案中不 可能提供的靈活性。軟4鉤件讀出速率估算器421、 422的值,并JUAil些值確 定輸/v^樣速率。通過來自軟^Nl^N口先進先出管理單元407和反饋單元470的反饋可以調節速i^f古算值。然后,相^i4擇單元45(H錢估算的速率內插多相濾 波器系數,并JLiiit4^只單元410執行這些系數與輸入數據樣本的4^只。4^只單 元410^J ]軟件實施的,因為典型的數字信號處理器可以有效地實現這項功能, 同時可以/"##器中讀出樣本并從系數內插器460中讀出系數。
在一個實施例中,釆樣速率轉換器的軟件負責執行多項任務。例如,如以上 所述,速率估算器的計數器421、 422將它們的各自的計數HJ直與一個增益相乘, ^i^個增益是由這個軟件確定的。類似地,用于^Eit率估算器計數器后邊的低通
濾波器的偏差和濾波器系 _通^個軟件確定的。這個軟件進一步還負責計算 輸/v^樣速率(Fin)與輸出采樣速率(Fout)之比,這個比值在伊涵實施例中是 固定的。才財居采樣速率與經過濾波的計數器的值之比,所i^欠件確定濾波器長度、 相位、和用于內插多相濾波器系數的相位增加。進而,這個軟件還負責4^只多相 濾波器系數與輸入樣本,管理輸入和輸出先進先出隊列,并提供反饋以調節估算 的輸4樣速率。
在數據處理器中實施軟^^件。典型的現代處理器具有極其有凌i^y^亍緊湊 循環(tight loop)同時讀出數據流的能力。例如,數字信號處理器(DSP)具有 "零耗循環(zero overhead looping)"的能力。現代的微控制器還具有每個周期執 行多個指令的能力。這些數字信號處理器和微控制器在""i&情況下還具有使其適 合于^^才羊it率4封灸器應用的M的程序和數據^^者器。
這些處理器具有在一個處理器周期中扭行例如下所述任務的能力乂A^f諸器 中讀出一個數據樣本(如由采樣指針寄存器指示的)、更新采樣指針寄存器以指 向下一個樣本、W卜圍系數內插單iUC取一個系數值、用這個系數值去乘數據樣 本、在數據寄存器中相加(累加)乘法結果。如果多相濾波器包含X個系凄t,則 4錢X個時鐘周期來計算一個輸出樣本。
一個處理器可以同時地處理一系列并行的通道Y,在i^X, Y受到累加器和 釆樣指針寄存器的可以利用的數目的限制。當^J ]相同的系數同時處理Y個通道 時,可以設計出相對緊湊的硬件在Y個循環中或小于Y個循環中扭行下述的任務 從,器中讀出一系列系數(如由系數指針指示的)、更新系數指針寄存器、執 行內插以計算濾波器系數到期望的精度。
在"偽C"中,處理器進行如下的操作為每個輸出樣本 啟動硬件系數計算器
forj=ltoY
o[Y]=0; 〃啟動累加器
p[Y]=start(N); 〃啟動指針
for i=l to X 〃對于每個系數
Omem[coefi] //讀出系數
for j=l to Y 〃對于每個通道
o[Y]+=C*mem[p[Y]w]
在一般情況下,使用j的內部循環可以被展開,下一個系數的讀出可以與最 后一次迭代(j=Y)并行;hk^行。 一個筒單有效的處理器可能為每個Y的循環計 算出一個新的系數。 一個比較靈活的解決方案可能在Y個循環或較少的循環中計 算出一個系數。當新的樣本變為可以利用的時候,停止這種計算, 一直到讀出這 個樣本并且因此自動調節到數字信號處理器讀出濾波器系數的速率時為止。除了 使Y的實際值更加靈活以夕卜,這還將允許處理器周斯I^也停止計算并且可以提供 其它的功能如中斷。
本發明的實施例可以提供一系列優點,這些優點在J賄技術中是得不到的。 例如,硬件和軟^HM牛的組合可以以極高的水平允許本發明的系統和方法在采樣 速率轉換器功能的性能方面提供更高的狄和靈洽性,錄全部由硬件或全部用
軟件實施的現有技術系統中是辦不到的。它們的實施效率比觀有技術要高。
在某些實施例中,采樣速率轉換器的部件可以在兩個或多個獨立的采樣速率 轉換^4圣之間共享。例如,兩個不同的路徑可以使用同一個多相濾波器系數內插 硬件,其中可能包括^f諸系數的ROM、地址發生器、和內插器本身。在采樣速 率轉換路徑上共享的資源的另外的實例是執行各自游農上的軟件部件的數據處 理器。盡管有共享的資源,但是每個采樣速率轉換路徑都與其它路徑無關地實現 各自的采樣速率轉換功能。
本發明的至少某些實施例的另外的優點是能夠處理具有允許變化的采樣速率的輸入數據流。因為每個釆樣速率轉換i l^都包括一個釆樣速率估算器,用于 確定輸A^樣速率,并JUi包括各種不同的部件,用于針對這個輸X^樣速率i務 t^樣速率轉換器的功能,所以這個采樣速率轉換器不容易因為釆樣速率的變化 產生誤差。 一個相關的優點是能夠針對具有不同的采樣速率的輸入數據^f蟲立地 修改兩個不同的采樣速率轉換路徑。
另一個優點是能夠簡化采樣速率轉換器的某些部件的實施方案。例如,在一 個實施例中,對于每個釆樣速率轉換路徑的速率估算器硬件都包括一個筒單的計 數器。這個計數器能夠很容易地由一個軟件部^H^出,然后可以根據計數器的值 來確定輸入數據流的采樣速率。
本領域的"tit技術人員應該理解,^J ]各種不同技術中的^^r一項技^^可 以代表信息和信號。例如,通過電壓、電流、電磁波、磁場或粒子、光場或粒子、 或者它們的任意組合都可以^4^以上整個所述的內容中引用的數據、指令、命
令、信息、信號、比特、符號、和芯片。^J H爿可合適的傳^f某介,其中包括導
線、金屬軌跡、通孔、光纖、或類似物,都可以在所公開的系統的^^p件之間 交換信息和信號。
本領域的"fit技術人員應該認識到,結合M公開的實施例描述的各種不同
的說明性的邏輯塊、模塊、電路、和算法步驟可以實施為電子硬件、計算才M大件、
或者二者的組合。為了清楚說明硬件和軟件的這種互掩性,以上按照功能總桐苗 述了樹說明性的部件、邏輯塊、才狹、電路、和步驟。這些功能是作為硬件還 是怍為軟件實施的,取決于強加在整個系統上的特定的應用承設計約束限制。本 領域的普通技術人員可以按照[個特^I用的不同方式來實施所述的功能,但 是這樣的實施方案的確定不應解釋為偏離了本發明的范圍。
結合在M公開的實施例描述的各種說明性的邏輯塊、模塊、和電路可以利
用通用處理器、數字信號處理器(DSP)或其它邏輯設備、專用集成電路(ASIC)、 現場可編程門陣列(FPGA)、分立的門電路或晶體管邏輯電路、分立的硬件部件、 或者它們的用于實現M描述的功能的^f可組合來實施或實現。通用處理器可以 是4封可常規的處理器、控制器、微控制器、狀態機、或類似物。還可以將處理器 實施為計算裝置的組合,例如數字信號處理器和孩狄理器的組合、多個微處理器、 與數字信號處理芯結合的一個或多個微處理器、或者^^可其它這樣的配置。結合i!X公開的實施例描述的方法或算法的步驟可以用硬件、由處理器執行
的軟件或固件才莫塊、或者它們的組合直接實施。軟件產品可以駐留在RAM^fi者 器、閃存、ROM存儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、 可拆卸盤、CD-ROM、或者在本領域中公知的任何其它形式的萄 諸介質內。 一個 典型的存儲介質井給到處理器上,以使處理器可以從所iJL4^諸介質中讀出信息并 且可以#(言息寫/^'』##介質內。在可替換方案中,#^諸介質可以集成到處理器。 處理器和^fi者介質都可以駐留在一個專用集成電路中。專用集成電路可以駐留在 用戶終端。在可替換方案中,處理器和##介質都可以作為分立的部件駐留在用 戶終端內。
提供公開的實施例的以上描述的目的是使本領域的普通技術人員能夠制造 并^^本發明。對于這些實施例的各種不同的改iW于本領域的普通技術人員來 iJLf嫁易變為顯而易見,可以將i^描述的^^、理應用到其它實施例而不《4扁 離本發明的構思和范圍。這樣,不期望將本發明限制在^描述的實施例,本發 明符合與il^公開的原理和新潁特征一致的最寬的范圍。
以上參照具體的實施例描述了本發明能夠^_供的好處和優點。這些好處和優 點,以及使這些優點M或變得更加突出的元件或限制,都不,皮"i人為是^frf可一個 權利要求或者所有的權利要求的關鍵的、必要的、或本質的特征。如紐所用的, 期望將術語"包括"或者它的^f可其它的變化形式,解釋成不排它地包括在這些 術語之后出現的元件或限制。因此, 一個系統、方法、或者包括一組元件的其它 實施例不限于只有這些元件,還可以包括沒有明顯列出的或者要求保護的實施例 本身固有的其它元件。
雖然參照特定的實施例描述了本發明,但應該理解,這些實施例是說明性的, 本發明的范圍不限于這些實施例。對于以上所述的實施例,許多變化、修改、增 加、或 文進都是可能的。可以預期,這些變化、修改、增加、或改進#]尋落在本 發明的范圍內。
權利要求
1.一種采樣速率轉換器,所述采樣速率轉換器包括多個采樣速率轉換器部件,所述采樣速率轉換器包括速率估算器;低通濾波器,其中所述速率估算器的輸出通過所述低通濾波器;相位選擇單元,其中所述低通濾波器的輸出被提供給所述相位選擇單元;多相系數內插器,其中所述多相系數內插器根據所述相位選擇單元的輸出產生一組內插的多相濾波器系數;卷積單元,其配置成卷積所述內插的多相濾波器系數與輸入數據流的對應的樣本;輸入先進先出隊列,其配置成接收所述輸入數據流的樣本并且向所述卷積單元提供所述輸入數據流的所述樣本;輸出先進先出隊列,其配置成接收來自所述卷積單元的輸出數據流的樣本;以及先進先出管理單元,其耦合到所述輸入先進先出隊列和所述輸出先進先出隊列并且配置成向所述低通濾波器提供反饋;其中所述部件的第一部分包括硬件部件;以及其中所述部件的第二部分包括軟件部件。
2. 權利要求1的采樣速率轉換器,其中用硬件實施所iii4率估算器、所述 ^t濾波器和所述多相系數內插器。
3. 權利要求1的釆樣速率轉換器,其中用軟件實施所i^目^ii擇單元、所 ^J^只單元和所迷先進先出管理單元。
4. 權矛漆求1的采樣速率轉換器,其中所iii4率估算器包括一個計數器, 所述計數器配置成計數所迷輸入數據流的采樣周期,并且其中通過一個軟件部件根據所述計數器的值計算輸/v^樣速率。
5. 權利要求1的采樣速率轉換器,其中所述采樣速率轉換器包括用于處理輸入數據流的兩個或更多通道,其中所述兩個或更多通道共享所述多個采樣速率 轉換器部件中的一個或更多部件。
6. 權利要求1的釆樣速率轉換器,其中所述釆樣速率轉換器包括用于處理 輸入數據流的兩個或更多通道,其中所述兩個或更多通道中的[個通道都配置成處理釆樣速率與其它通it^:理的輸入數椐流的采樣速率無關的輸入數悟流。
7. 權利要求6的釆樣速率轉換器,其中每個通道包括獨立的速率估算器。
8. 權利要求7的釆樣速率轉換器,其中每^Ht率估算器包括單獨的采樣周 期計數器。
9. 權利要求8的采樣速率轉換器,其中每個采樣周期計數器產生用于估計 對應的輸入數據流的采樣速率的單獨的計數。
10. 權利要求8的采樣速率轉換器,其中所艦道中一個通it^通道,并且所艦道中剩絲道是次要通道; 對于所iiiL通道估算采樣速率,對于每個次要通道,確定對應的采樣周期計數器與所ili通道的采樣周期計 數器之比,以及每個次要通道的采樣速率被確定為對所述主通道估算的所述釆樣速率乘以 所述比值。
11. 權利要求6的釆樣速率轉換器,其中 每個通道實施一個多相濾波器;以及用于每個多相濾波器實施方案的系凄U^人濾波器系數的一個共用的組內插的。
12. 權利要求1的采才鏈率轉換器,其中所述采樣速率轉換器l給到月擬中寬 度調制音頻;故大器。
13. —種采樣速率轉換器,所述釆樣速率轉換器將數字輸入數據流轉4械預 定的輸出釆樣速率(Fout),所述采樣速率轉換器包括釆樣速4^古算路徑,其配置成接收與所述輸入數據^N關聯的幀同步信號并估算所迷輸入數據流的輸A^樣速率(Fin);音頻數據縱,所述音頻數據縱包括輸A^進先出隊列,其配置成接》^斤述輸入數據流的樣本;4^只單元,其配置成接4W斤述輸入先進先出隊列的輸出并4^只所述輸入 數據流的所述樣本與濾波器系數;以及輸出先進先出隊列,其配置A^^斤ii4^只單元的輸出,其中樣本能夠 以所述輸出采樣速率(Fout) 乂A^斤述輸出先進先出隊列讀取;以及先M出管理單元,其井給到所述輸A^進先出隊列和所述輸出先進先出隊 列并且配置成向所iii4^f古算路徑的至少一^NP件提供反饋。
14. 權利要求13的采樣速率轉換器,其中所^Jt用于阻止所述輸AJt進 先出隊列和所述輸出先進先出隊列的溢出或下溢。
15. 權利要求13的采樣速率轉換器,其中所趙剩古算i^圣包括逸慮計數的^it濾波器,用于估算所述輸入數據流的 所述輸入采樣速率(Fin);以及所i^^f^^是供^^所ii^4t濾波器。
16. 權利要求13的采樣速率轉換器,其中所述濾波器系數包括內插的多相 濾波器系數。
17. 權利要求13的采樣速率轉換器,其中所趙率估算^f圣包括 用硬件實施的速^f古算器、4腿濾波器和多相系數內插器;以及 用軟件實施的相位選擇單元。
18. 權利要求17的釆樣速率轉換器,其中 所述音頻數據路徑的所述4^單元用軟件實施;以及 所述先進先出管理單元用軟件實施。
19. 一種方法,所述方法用于將數字輸入數據^4爭換為預定的輸出采樣速率 (Fout),所述方法包括以下步驟根據與所述輸入數據^Nl關聯的幀同步信號估算所述輸入數據流的輸入采樣速率(Fin);在輸Aib進先出隊列接J)W斤述輸入數據流的樣本;4^只所述輸入數據流的所述樣本與濾波器系數,所述輸入數據流的所述樣本 乂A^斤述輸/^L進先出隊列輸出;以及在輸出先進先出隊列接收已經與所述濾波器系數進行4i口、的樣本,其中樣本 能夠以所述輸出釆樣速率(Fout) 乂A^斤述輸出先進先出隊列讀取;-'右'以及調節所估算的所述輸入釆樣速率(Fin)。
20. 權利要求19的方法,其中所述估算的步驟包括 根據與所述輸入數據i糾目關聯的所述幀同步信號產生計數; it^慮所述計數;以及才財居所過濾的所述計數估算所述輸入數據流的所述輸A^樣速率(Fin )。
21. 權利要求20的方法,其中所述調節所述估算的步驟包括調節所述計數 的所述過濾。
22. —種數字音頻放大系統,包括采#^4率轉換器,其將數字輸入數據itA人輸X^樣速率(Fin)轉^^預定的 輸出采樣速率(Fout);音頻步汰子系統,其>^斤述采樣速率轉換||#收具有所述預定的輸出釆樣速 率(Fout)的數字數據流,并對所述數字數據伊Li^亍處理,以產生經處理的數字 數據流;脈中M調制器,期夸所艘處理的數字數據^#換^^中^1調制信號; 以及輸出級,其放大所iU^中寬度調制信號以產生能^^]于驅動負載的^fc^大的 信號;其中所述采樣速率轉換器包括采樣速率估算路徑,其配置成接收與所述輸入數據^4目關聯的幀同步信號并估算所述輸入數據流的輸7v^樣速率(Fin);音頻數據膽,其包括輸4進先出隊列,其配置成接"W斤述輸入數據流的樣本;4^只單元,其配置A^收所迷輸A^進先出隊列的輸出并4^只所述 輸入數據流的所述樣本與濾波器系數;以及輸出先進先出隊列,其配置成接收所i!4^只單元的輸出,其中樣本 能夠以所述輸出釆樣速率(Fout) /A;斤述輸出先進先出隊列讀取;以及先進先出管理單元,其^^到所述輸入先進先出隊列和所述輸出先進先 出隊列并且配置成向所述速率估算路徑的至少一^件提供反饋。
全文摘要
一種用于轉換數字輸入數據流使其從第一采樣速率轉換成第二固定采樣速率的系統和方法,使用硬件部件和軟件部件的組合。在一個實施例中,一種系統包括速率估算器,用于估算輸入數據流的采樣速率;相位選擇單元,用于根據估算的采樣速率選擇用于內插一組多相濾波器系數的相位;系數內插器,用于根據所選的相位內插濾波器系數;卷積單元,用于卷積內插的濾波器系數與輸入數據流的樣本,以產生重新采樣的輸出數據流的樣本。在能夠處理具有無關可變的采樣速率的數據流的多個通道之間共享一個或多個硬件或軟件部件。
文檔編號H03H17/06GK101577535SQ20091013848
公開日2009年11月11日 申請日期2004年3月19日 優先權日2003年3月21日
發明者喬·W·佩吉, 拉瑞·E·漢德, 杰克·B·安德森, 錢連瑋 申請人:D2音頻有限公司