在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 實(shí)現(xiàn)比特完美(Bit-Perfect) 的USB音頻

      實(shí)現(xiàn)比特完美(Bit-Perfect) 的USB音頻

      作者: 時(shí)間:2016-09-16 來源:電子產(chǎn)品世界 收藏

        采用接口來確保高品質(zhì)音頻傳輸?shù)酵獠吭O(shè)備是一種常用方法。由于使用者只需要把設(shè)備插入到預(yù)裝了驅(qū)動程序的通用接口即可,因此其對于音頻應(yīng)用極富吸引力。盡管有這些優(yōu)勢,使用音頻類時(shí)仍然需要對系統(tǒng)設(shè)計(jì)進(jìn)行明智的選擇,以確保傳送音頻流時(shí)不會發(fā)生錯(cuò)誤或更加糟糕的頻率失配。這篇文章《選擇音頻須小心:來自測試臺的可怕故事》給出了幾個(gè)有趣的故障案例。

      本文引用地址:http://www.biyoush.com/article/201609/297019.htm

        USB音頻系統(tǒng)是一個(gè)串行橋接系統(tǒng),,它將來自USB總線的數(shù)據(jù)包轉(zhuǎn)換成音頻(I2S)總線數(shù)據(jù)包。這條總線通常連接一個(gè)編解碼器或下游音頻處理器(圖1)。I2S 總線的棘手之處在于,其需要精準(zhǔn)的時(shí)鐘信號,才能實(shí)現(xiàn)高品質(zhì)音頻。

        

       

        圖一:基于USB的音頻系統(tǒng)將來自USB總線的數(shù)據(jù)包轉(zhuǎn)換到I2S總線,后者通常連接編解碼器或下游音頻處理器

        舉例來說,典型的音頻采樣率是48 k個(gè)樣本/秒。大多數(shù)商用編解碼器IC需要一個(gè)頻率為音頻采樣率整數(shù)倍(通常是128或256倍)的純凈時(shí)鐘。這迫使編解碼器的時(shí)鐘頻率達(dá)到恐怖的12.288 MHz,而這個(gè)頻率難以從標(biāo)準(zhǔn)的晶振震蕩時(shí)鐘源中獲得。更為復(fù)雜的是,支持44.1 k個(gè)樣本/秒等多個(gè)采樣率需要為每一個(gè)采樣率采用同樣高品質(zhì)的時(shí)鐘。這意味著系統(tǒng)或者配置多個(gè)晶振振蕩器,或采用非常靈活的時(shí)鐘方案。

        可以使用貼片(SMD)振蕩器,但這些通常功耗較大的器件需要高達(dá)20 mA的功率,因此不適合電池供電型設(shè)備。也可以使用鎖相環(huán)(PLL)實(shí)現(xiàn)靈活的時(shí)鐘方案。例如,賽普拉斯的PSoC 4-L系列芯片內(nèi)置PLL和高度可配置的通用數(shù)字模塊(UDB),可讓開發(fā)人員設(shè)計(jì)出靈活的時(shí)鐘方案。

        Clocking Woes—the I2S Bus

        時(shí)鐘悲劇—I2S總線

        

       

        圖二:編解碼器和主芯片之間一條典型的I2S總線連接

        I2S是用于在兩個(gè)芯片之間傳送音頻的標(biāo)準(zhǔn)接口。該協(xié)議類似于一個(gè)串行外設(shè)接口(SPI),只是增加了幾個(gè)額外的信號。但是,音頻數(shù)據(jù)的性質(zhì)使得為I2S總線計(jì)時(shí)比想象的要困難。圖2顯示了編解碼器和主芯片之間典型的I2S總線連接。

        I2S總線包括(圖3):

        • Bit clock:用于從Data In和Data Out線路讀取數(shù)據(jù)的時(shí)鐘。

        • Word select:也被稱為Left-Right Clock。該信號用于區(qū)分左右信道。

        • Data out: 主芯片輸出的串行數(shù)據(jù)流。

        • Data in:來自編解碼器的串行數(shù)據(jù)流。

        

       

        圖三:I2S總線的主要構(gòu)件包括bit clock、word select、data in和data out

        此外,大多數(shù)編解碼器還需要一個(gè)主時(shí)鐘(MCLK),用于為編解碼器的內(nèi)部邏輯計(jì)時(shí)。

        音頻數(shù)據(jù)有兩種典型的分辨率:16位和24位。如果我們考慮一個(gè)立體聲數(shù)據(jù)流,一個(gè)采樣周期中的總數(shù)據(jù)流為32或48位。這個(gè)周期通常是48/44.1/32 kHz。大多數(shù)編解碼器在一個(gè)word-select周期中最多支持32位,但分辨率可能仍為24位,因?yàn)橐?填充到最后。

        這將每個(gè)采樣周期的總數(shù)據(jù)增至64位。如果我們考慮48-kHz的24位立體聲,我們所需的位時(shí)鐘將為48 × 64 × 2,即6.144 MHz。

        編解碼器對主時(shí)鐘的要求取決于所用的編解碼器的品牌和類型。現(xiàn)代編解碼器支持多個(gè)時(shí)鐘模式,但每個(gè)模式都是采樣頻率(fS).的整數(shù)倍。主時(shí)鐘的值通常為fS的128/256/512倍。因此,48-kHz采樣頻率的時(shí)鐘值為 6.144/12.288/24.576 MHz。

        USB音頻同步

        同步來自于I2S 接口的流入/流出數(shù)據(jù)包是實(shí)現(xiàn)USB音頻需要克服的一個(gè)基礎(chǔ)性的問題。USB類別規(guī)范定義了幾種不同的實(shí)現(xiàn)方法:

        • 同步模式:在同步模式中,從設(shè)備的音頻時(shí)鐘將與USB幀起始同步(每1 ms)。這簡化了系統(tǒng)的緩沖器管理工作,更加便于維持一個(gè)一致的數(shù)據(jù)流。

        • 異步模式:在異步模式中,音頻電路的從設(shè)備運(yùn)行一個(gè)完全獨(dú)立于USB時(shí)鐘的時(shí)鐘。使用一個(gè)通過USB接口的反饋路徑來保持?jǐn)?shù)據(jù)速率之間的同步。

        同步端點(diǎn)模式

        在同步端點(diǎn)模式中,所生成的音頻時(shí)鐘與每1ms進(jìn)入一次的USB幀起始(SOF)包同步(圖4)。本質(zhì)而言,我們從USB恢復(fù)時(shí)鐘,并用它運(yùn)行編解碼器主時(shí)鐘和I2S模塊。同步模式極大簡化了緩沖器管理,因?yàn)槌鋈氲臄?shù)據(jù)包基于同一個(gè)時(shí)鐘。

        

       

        圖四:在同步端點(diǎn)模式中,音頻時(shí)鐘與USB幀起始同步

        生成用于支持標(biāo)準(zhǔn)采樣率的部分時(shí)鐘頻率依然棘手,涉及一些數(shù)學(xué)問題。一種方法是使用前饋和反饋混合架構(gòu)。所需的fS的整數(shù)倍由一個(gè)高品質(zhì)的PLL生成??梢允褂?1-3 MHz之間的一個(gè)參考時(shí)鐘頻率,然后乘以一個(gè)可配置的有理分?jǐn)?shù),以此生成純凈的輸出時(shí)鐘。

        PLL的參考時(shí)鐘由一個(gè)快速前饋一級生成。該級計(jì)算出本地晶振震蕩源生成所需參考時(shí)鐘所必需除以的分?jǐn)?shù)因子,然后暗中運(yùn)行這個(gè)除法運(yùn)算。運(yùn)算由一個(gè)雙模前置分頻器執(zhí)行,其除法控制輸入由一個(gè)△Σ調(diào)制器驅(qū)動,后者接受一個(gè)代表分?jǐn)?shù)分頻的輸入。

        一個(gè)噪聲整形環(huán)路提供一個(gè)兩級輸出,后者代表一個(gè)數(shù)字的分?jǐn)?shù)部分,我們需要將本地時(shí)鐘頻率除以該數(shù)字以獲取所需參考頻率。有關(guān)如何恢復(fù)USB時(shí)鐘的詳細(xì)解釋,請參閱:USB音頻系統(tǒng)中可編程時(shí)鐘的生成和同步。

        異步模式

        

       

        圖五:在異步模式中,一個(gè)獨(dú)立的時(shí)鐘源提供主時(shí)鐘

        在異步模式中,主時(shí)鐘由一個(gè)獨(dú)立的本地時(shí)鐘源提供(圖5)。該模式可實(shí)現(xiàn)研發(fā)時(shí)間和生產(chǎn)成本所能實(shí)現(xiàn)的時(shí)鐘純凈度。系統(tǒng)擁有兩個(gè)獨(dú)立的時(shí)鐘域。PSoC系列可在芯片內(nèi)創(chuàng)建獨(dú)立的時(shí)鐘域,而且能夠靈活地確保UDB與CPU和系統(tǒng)時(shí)鐘完全異步。

        我們還遇到了多個(gè)音頻速率的支持問題。選擇合適的晶振和內(nèi)置PLL,我們有可能創(chuàng)建一個(gè)可實(shí)現(xiàn)常用音頻頻率的頻率集。這個(gè)神奇的數(shù)字就是17.2032 MHz(見下表)。

        

       

        使用PLL異步模式可提供一個(gè)沒有鎖定和同步問題的低抖動時(shí)鐘,但該模式給系統(tǒng)的緩沖器管理增加了復(fù)雜性。這是因?yàn)楸镜鼐д裾袷幤鞑灰欢ū绘i定到主機(jī)認(rèn)為的48 kHz。微小的頻率失配將最終導(dǎo)致上溢/下溢,從而導(dǎo)致音頻污染。

        為了解決這個(gè)問題,USB類別規(guī)范提供一個(gè)反饋端點(diǎn),它可用于調(diào)節(jié)主機(jī)數(shù)據(jù)速率,以匹配輸入數(shù)據(jù)包和I2S輸出數(shù)據(jù)流之間的數(shù)據(jù)速率。系統(tǒng)計(jì)算I2S發(fā)出的數(shù)據(jù)包數(shù)量,將其與USB SOF進(jìn)行對比,然后調(diào)節(jié)反饋端點(diǎn)的值,以匹配平均數(shù)據(jù)流。簡而言之,主機(jī)縮小或擴(kuò)大數(shù)據(jù)樣本數(shù)量,以便讓一段時(shí)間內(nèi)的平均速率匹配音頻采樣率。CY8CKIT-046套件中演示了異步模式USB音頻。



      關(guān)鍵詞: USB MCU

      評論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉