關鍵詞: USB音頻 , 微控制器
盡管有些報道稱隨著Wi-Fi和藍牙等無線傳輸工具的出現,USB音頻即將被淘汰,但此種言論還為時過早,USB音頻目前仍活躍在市場上。近幾年來,USB音頻技術已成為音樂產業中數字音頻(音頻+MIDI)配件(混頻器、DJ設備、數字音頻接口、麥克風等)中一個尤為重要的元素。
此外,《今日美國》中有文章提到功能強大的移動設備正在逐漸取代筆記本電腦和便攜式電腦。然而,專業或準專業用戶卻沒有停止對USB音頻的需求,在許多諸如iOS和Android移動操作系統以及Raspberry Pi和BeagleBone Black等業余愛好者/制造商的單板機中,隨處都可見到這種USB音頻。
它采用低成本、低功耗的方法來傳輸數字音頻,在最佳狀態下,可以呈現普通無線方法無法比擬的高品質和低延時效果。但難就難在只有在最佳狀態下它才能達到這種效果。
通過USB接口回放(或錄制)高品質音頻時,一個亟待解決的重要問題就是如何生成具有高度穩定性和準確性的轉換器主時鐘。在設計階段因忽視細節而造成的音頻時鐘恢復過程中的不足極易導致顯著缺陷,會產生雜音,即便是非專業人士都可以感受到。欲了解更多有關USB音頻模式的基礎知識,請參閱2011年音頻工程協會(Audio Engineering Society)會議上有關音頻接口的相關演講稿。
以賽普拉斯半導體公司的PSoC 3系列為代表,可以看到最新的可編程片上系統(SoC)器件的靈活性,它可以產生具有成本效益的、可靠且準確的音頻主時鐘,尤其適用于低功耗便攜式系統。基于此種SoC的方法概述參見《現代USB音頻系統設計》。對頻率合成技術有濃厚興趣的用戶,可以參見音頻工程協會的會議論文《USB音頻系統的可編程時鐘發生與同步》,其中對硬件時鐘恢復方法進行了詳細描述。
自這些論文發表后,賽普拉斯半導體公司的USB音頻團隊從研究角度出發,花費了大量時間拆解、測試和測量各類裝置以測試USB音頻能力,受測對象不僅包括商業產品,還包括微控制器廠商的開發工具包和參考設計。對廠商來說,制定嚴格測試方案和競爭標桿分析方案至關重要,可以確保設計質量滿足客戶的需求并達到音頻行業的預期。本應在參考設計發布前就發現的缺陷卻在客戶缺陷報告中才被發現,這實在是件無比糟糕的事情。
這些測試向用戶呈現了音頻質量的諸多問題,而音頻回放的質量及完整性有時實在是差得驚人。音頻行業將大量的精力放在確定音頻再現質量和修復后的可聽性上,而音頻回放的質量整體較差這種認識似乎已經超出了當今微控制器供應商的能力范圍。
這可能歸結于從事單一業務的MCU公司僅把音頻視為一種數據接口格式,沒有真正了解獲得優質音頻質量的重要因素。例如,從應用筆記中可以看到,大多數廠商都認識到管理再現音頻數據的時域完整性對音頻質量至關重要。但是,認識到這個問題是一回事,解決這個問題又是另一回事。
根據測量顯示,音頻主時鐘生成和數據同步管理的一些推薦和實施方法針對高品質的音頻產品并無用武之地。本文接下來將帶讀者盡覽有關音頻質量的諸多問題,重點揭示一些最有代表性的問題,并討論問題背后的原因。
缺乏穩固性
針對USB音頻系統(針對各種主機設計,但主要是針對移動主機)的故障測試旨在測試包含較短時段選擇的播放列表的循環情況,每個時段的采樣率各不相同。看來,大家似乎都不太喜歡這種測試,你也會驚訝于該測試的失敗頻率。這種測試不僅用于芯片廠商的一些項目,甚至還用于一些音頻產品現貨。
從這些測試中可以發現一些明顯的行為特征。在某些情況下,測試中的系統無法開始播放其中一個音軌,從而導致在本該有聲音的音軌階段出現一段長時間的靜音。還有一些情況是,有些音軌會看似隨機地在回放時出現一定程度的失真,你會聽到輕微的噼里啪啦聲,有時甚至會突然被那種聲音嚇一跳。
圖1顯示了在變換的44.1ksps和48ksps速率下1.4kHz測試音調的頻譜(采用優秀的免費程序Friture測得),該頻譜在某廠商的評估電路板上顯示。通過該圖,可以看到很多指標都不達標,最明顯的是在某一時段上的徹底失靈。整體表現很不穩定。圖2顯示的是使用具有強大固件和穩固的硬件同步主時鐘發生器的SoC參考系統進行的同一測試。
圖1:USB音頻效果隨采樣率的變化而惡化。
圖2:配置硬件時鐘恢復功能的SoC系統在圖1中應呈現的圖樣。
筆者從美國購買了一個現成的揚聲器底座,結果發現在任何音軌末都會出現明顯的、惱人的音調變化,緊隨其后的就是另一具有不同采樣率的音軌,因為它過早地改變了采樣率。前10秒你會覺得比較有趣,隨后這種新鮮感消失,你會把它放入包裝箱然后退回給商店,隨后制造商不得不承擔退貨審查和技術支持服務的費用。移動設備制造商也不得不向消費者解釋說出現這種問題不是自身USB或自有連接器(相對于3.5mm插孔)的問題,而是配件的問題。
圖3給出了音調變化示意圖,圖案圍繞四個不同的采樣率頻率1kHz、1.2kHz、1.4kHz和1.6kHz呈階梯狀變化。獲知新的采樣率后,該產品的回放頻率立刻向上躥升。
圖3:因采樣率的過早變化而造成的顯著音調變化。
圖4則不存在頻率變換的問題。相反,這個從一家聲譽良好的音頻公司購得的底座產品僅在一些音軌上隨機出現了一些空檔,沒能播放出來。
圖4:該產品沒有音調變換,完全沒有音軌。
所以我講這個故事的寓意是:一定要對設計進行深入的測試,并找出它的破綻。這一點應在選擇廠商的過程中就著手去做,并在整個開發過程中定期進行測試。
現代化的移動音頻配件由一連串代碼組成,對中斷優先級和DMA描述符的一些單純改變都會在一定程度上改變系統行為。因此,我建議在設計團隊之間相互交換候選發布的設計,如果他們能發現其中的設計缺陷,就請他們喝酒、品茶,或給予其他一些獎勵。
頻率不穩定
在自適應或同步模式下運行的USB回放裝置需要創建D/A轉換器所需的時鐘。對于普通音頻DAC來講,該時鐘頻率值最可能為音頻采樣頻率的256倍。在這些模式下運行的所有USB音頻接口方法都有某種可調振蕩器,在基于微控制器的系統中,這種振蕩器通常是數字控制振蕩器,并置于固件中,其頻率設定有限且分辨率較低。有些微控制器配備某種可編程振蕩器,其頻率飄搖不定,以確保振蕩器的平均速率設置符合您的要求,這種情況是很常見的。您可以用它來跟蹤FIFO讀寫指針,并改變您指針擺動的占空比,以保持指針間距離的恒定(這是在自適應模式下運行,使勁按CPU)。該擺動時鐘用作DAC的主時鐘,也負責通過微控制器和DAC之間的接口進行數據轉移。
現在,想象您正再現一段美妙、精確的正弦波。假設DAC每秒有4.41萬個采樣(最標準的數字音頻采樣率,因為這是CD上使用的值),這段正弦波的頻率應該是1.4kHz(較佳的頻率——1kHz基本不影響USB音頻系統作業)。
但是如果您在兩個頻率之間切換主振蕩器(使得系統半數的時間以每秒4.425萬的采樣率回放,而另一半時間以每秒4.395萬的采樣率回放)會發生什么事情呢?當然,平均回放率為每秒4.41萬個采樣。但實際上,系統會花費半數的時間以1.40476kHz的頻率來發送一個正弦波,而剩余的半數時間則以1.39524kHz的頻率來發送正弦波。
那些覺得“嗯,好像還不錯”的人請考慮下這個問題吧:這種音調變化水平一般聽眾都能聽出來,更何況音頻業所謂的“金耳朵”了。如果您覺得這些都只是一些隨便挑出來的荒謬的數字,那么我們一起來看圖5——某一微控制器廠商的開發套件測量結果。
圖5:平均頻率是正確的,但變化是聽得見的。
測試這種東西非常容易,因此沒有借口不這樣做。如前所述,Friture等免費軟件分析程序通常都可以提供一種便利的頻譜模式(深受廣大語音分析師青睞,尤其是在好萊塢故事片中)。這種模式通過采集連續的FFT短塊來進行持續的頻譜分析,并隨著時間的推移繪制出結果—時間自左向右推移,頻率與屏幕垂直并通過彩色映射來表明幅度。
將模擬音頻信號輸入到一個運行Friture程序的PC線路上,您就可以輕易地發現回放頻率的不穩定性。在傳統音頻分析儀的常規FFT顯示器上,這種不穩定性并不明顯,特別是當趨向于為了穩定而只是增加求平均的數量時。它幾乎不會影響測得的THD+N數值,僅在一個特別小的窗口顯示出一個失真數字,您是無法從中獲得任何有關音頻回放系統質量的信息的。
當然,這并非是一個共性問題。一些微控制器廠商選擇在系統中使用CS2200等性能優良的外部時鐘生成芯片來解決計時問題,這類系統瀏覽無痕,如同之前提到的使用硬件時鐘生成方式的SoC參考系統,見圖6。
圖6:恒頻音調應以這種方式出現(還有硬件SoC時鐘恢復)。
本節旨在提醒人們,對于通過在粗略設置的振蕩器的不同值間切換來實現同步的系統,我們應持一種懷疑態度。因為這種頻率偏差會導致可感知音調穩定性的進一步惡化,但當用常規技術測量時,不會對THD+N等標準音頻性能參數產生顯著的影響。
有些(但不是全部)傳統的USB微控制器應用筆記和參考設計推薦使用BOM音頻PLL,如CS2200,這種情況并非巧合。這是個不錯的部件,但如果您的產品設計并不需要這種部件不是更好嗎?那就看下頻譜圖,關注其中的直線,而非鋸齒線!
采樣率轉換引起的本底噪聲
一些低端集成USB音頻設備采用的一種簡單方法就是將系統設計成為僅支持一個核心采樣率(44.1ksps或48ksps)。如果主機想發送以其他速率采樣的音頻且本身未打算(或不允許)做速率轉換,則回放裝置會采用某種采樣率轉換形式。而這一切都是非常可怕的錯誤。
如果您有一個強大的DSP或在應用程序特定的芯片內設置了多個門,則很難設計出一個好的采樣率轉換器。但一般的微控制器無法切割,唯一可以切割的是各個角。
回放44.1ksps的音頻材料時,只有一個評估板的雜散性能測試合格。使用48ksps測試音頻材料后,音頻分析儀顯示器上的本底噪聲變成了一系列神秘的音調。該模式下采樣率轉換器中使用的濾波器響應出現了最壞情況下的大約只有55分貝的阻帶抑制。簡而言之,測試音影像的重采樣混疊(通過頻率可以明確地確定)會上升到一個從未有的高度,進而影響音頻舒適度。圖7展示了這一問題的嚴重程度。這是一個能夠聽得見的寬帶問題,那些假音并非低于“掩蔽閾值”而聽不到。
圖7:SRC困境:大基調應該有,但其他不應該有。
于是,我們又得到這樣一個啟示:不要輕信普通微控制器上運行的采樣率轉換庫,很有可能它們在優質音頻應用程序中并無用武之地。“最好的采樣率轉換器就是沒有采樣率轉換器”,一位注重性能的音頻制造商在被問及該問題時曾這樣表示。
瘋狂的轉換設置
測試過程中,有一個USB音頻評估板的回放頻率響應沒有任何意義,看起來就像是有人抓住高音控制,并一路將其調低,聽起來就好像是將揚聲器扔進一個塞滿棉花的包里。
原來評估板上的DAC被設置為使用“去加重”,而現在的CD標準中基本已沒有這種選項了。CD標準提供了一種在記錄信息中提升高頻率的方法,然后在回放階段將頻率降回原有水平,會出現較高頻率的嘶嘶聲。
圖8顯示了一堆雜亂的軌跡,但重點在于那條黃色的曲線。它本應該是一條水平線,而其他廠商也都在努力想要達到水平線的標準,但該廠商是個例外。也許將評價體系綜合在一起的人喜歡平穩、音色圓潤、不被高音打斷的音調,亦或是他們的實驗室揚聲器本身就是多峰的高頻響應;而他們也確實認為這種設置是正確的,因為聽起來效果更好一些。這一段的寓意在于:不要想當然地認為廠商已對外圍元件進行了正確設置,尤其是當該元件并非該廠商生產時。
圖8:黃色軌跡本應是一條平直的水平線,但圖中顯示的聽起來非常模糊不清。
為什么USB音頻配件無法充當主機
有些舊的USB音頻配件被設計為主機,并迫使移動設備成為USB總線上的設備。這在以前還說得過去,因為這些配件連接的都是又慢又笨的音樂播放器。
現在,USB揚聲器底座或DAC要求Mac或PC放棄對USB總線的整體控制,使它們可以彼此交換音樂數據的想法簡直就是無稽之談。就好像是使配件對最新一代功能強大、靈活的智能手機和平板設備做出同樣的要求一樣毫無意義。
結論
創建USB音頻回放系統的方法有很多,有許多USB微控制器供應商已在實施這樣的系統。但這些系統的魯棒性和音頻性能差別極其驚人。
不妨采用以下方法:尋找一個深諳音頻領域的供應商團隊,并尋求一個經過嚴格測試(聽效驗證)的完整的、成熟的參考設計。在整個開發過程中不斷進行測試。選擇一個有著豐富USB音頻經驗的設計制造合作商。如果他們只知道模擬音頻或微控制器的非音頻應用,他們可能無法探知沒有足夠安全系數的整個系統設計所帶來的無數隱患。
挑選超精細頻率分辨率的頻率同步計劃,以確保堅若磐石的音調穩定性——您需要一個外部時鐘合成器設備,如配有普通微控制器的CS2200(盡管配備的不是賽普拉斯半導體公司的PSoC 3)。
如果想要得到音效凈化的音頻,就不要使用低檔采樣率轉換算法,因為一般的微控制器無法讓濾波器長時間地抑制雜音。如果您想要一個真正的通用系統,那就不要指望異步操作模式能夠解決一切——當然,如果您能找到一個平臺,可以很容易地支持同步或異步操作,那當然最好。
致謝
對音頻質量的這些令人發指的缺陷披露得益于Saksham Bhatla、Gowthamraj B、Krishnaprasad MV和Ahmed Majeed Khan長時間以來的實驗室測試和聆聽。
評論
查看更多