<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于DSP的吉他音效器的設(shè)計(jì)與實(shí)現(xiàn)

          基于DSP的吉他音效器的設(shè)計(jì)與實(shí)現(xiàn)

          作者:劉宗法 康碩 任勇 時(shí)間:2015-10-09 來源:電子產(chǎn)品世界 收藏
          編者按:為使吉他在非聲學(xué)標(biāo)準(zhǔn)建筑內(nèi)達(dá)到較為完美的音質(zhì)和效果而設(shè)計(jì)一套基于數(shù)字信號處理器(Digital Signal Processer, DSP)的音效器。使用拾音器獲取吉他模擬音頻信號,經(jīng)轉(zhuǎn)換芯片成為數(shù)字信號后分幀輸入到DSP芯片的多通道緩沖同步串口,使用芯片完成最后音頻信號的數(shù)模轉(zhuǎn)換并輸出到音響。軟件方面主要使用內(nèi)存中定義的環(huán)形緩沖區(qū)從而以DSP的零消耗循環(huán)控制實(shí)現(xiàn)高效的延時(shí),并使用嵌套的全通濾波器實(shí)現(xiàn)較好的混響功能。使用音頻硬件測試軟件RMAA(Right Mark Audio Analyzer)的測試結(jié)

          摘要:為使在非聲學(xué)標(biāo)準(zhǔn)建筑內(nèi)達(dá)到較為完美的音質(zhì)和效果而設(shè)計(jì)一套基于數(shù)字信號處理器(Digital Signal Processer, )的。使用拾音器獲取模擬音頻信號,經(jīng)轉(zhuǎn)換芯片成為數(shù)字信號后分幀輸入到芯片的多通道緩沖同步串口,使用芯片完成最后音頻信號的數(shù)模轉(zhuǎn)換并輸出到音響。軟件方面主要使用內(nèi)存中定義的環(huán)形緩沖區(qū)從而以的零消耗循環(huán)控制實(shí)現(xiàn)高效的延時(shí),并使用嵌套的全通濾波器實(shí)現(xiàn)較好的混響功能。使用音頻硬件測試軟件RMAA(Right Mark Audio Analyzer)的測試結(jié)果表明,該的頻率響應(yīng)、動(dòng)態(tài)范圍、本底噪聲和互調(diào)失真等指標(biāo)達(dá)到了設(shè)計(jì)要求,具有一定的推廣和應(yīng)用價(jià)值。

          本文引用地址:http://www.ex-cimer.com/article/280693.htm

          引言

            指彈吉他是一種吉他加花的演奏方式,是音樂界極為新興的項(xiàng)目,這種彈奏方法與古典吉他的不同之處在于可廣泛使用多種拍擊、調(diào)弦法,不受手法限制,一把吉他可彈奏出任何美妙音樂,因此更注重彈奏音效,在很多場合需要的輔助。目前國內(nèi)市場的音效器多為日韓等國外國家壟斷,價(jià)格昂貴[1],因而為滿足市場需求,設(shè)計(jì)出一款具有較好效果的指彈吉他音效器,采用數(shù)字音頻信號處理技術(shù)提升指彈吉他的音效,以達(dá)到預(yù)期的商業(yè)推廣目的。

          1 系統(tǒng)結(jié)構(gòu)

            系統(tǒng)的輸入信號通過吉他識音器獲取[2],為增強(qiáng)產(chǎn)品普及性,采用免開孔的拾音器,輸出為150mV的單聲道模擬音頻信號,經(jīng)高速模數(shù)轉(zhuǎn)換成數(shù)字信號,分幀存入到緩沖區(qū)RAM中,其后的高速數(shù)字信號處理在TI的DSP芯片TMS320C6713上進(jìn)行,相關(guān)算法在內(nèi)部存儲區(qū)中進(jìn)行運(yùn)算處理,數(shù)字信號經(jīng)處理后再經(jīng)高速高精度數(shù)模轉(zhuǎn)換成聲音信號,經(jīng)功放后輸出。為了實(shí)現(xiàn)數(shù)字信號的快速運(yùn)算,使用了TMS320C6713特有的增強(qiáng)型直接存儲器訪問(Enhanced Direct Memory Access, EDMA)[3]聯(lián)合RAM的方式進(jìn)行流水線[4]處理,即各模塊同時(shí)工作,部分音頻信號進(jìn)行模數(shù)轉(zhuǎn)換,部分轉(zhuǎn)換后的信號在TMS320C6713中進(jìn)行處理,部分處理后的信號進(jìn)行數(shù)模轉(zhuǎn)換,從而保證音效的實(shí)時(shí)快速處理。

          2 硬件結(jié)構(gòu)設(shè)計(jì)

            音效器硬件選用TMS320C6713芯片,模數(shù)轉(zhuǎn)換芯片選擇PCM1804,數(shù)模轉(zhuǎn)換芯片選擇PCM1730。

          2.1 電源設(shè)計(jì)

            以9V直流電壓作為電源模塊的輸入,經(jīng)7805三端穩(wěn)壓集成電路后輸出的5V電流對TPS767D318芯片供電,分別輸出3.3V和1.8V對TMS320C6713和PCM1804、PCM1730供電。為器件安全考慮,設(shè)置輸出的最大電流為1A,并具有過熱保護(hù)的功能同時(shí)為避免模擬5V電路和模塊中的數(shù)字電路的相互干擾,引入隔離磁珠[5]用以模數(shù)隔離。


          2.2 核心電路

            本項(xiàng)目的音效器選擇TMS320C6713芯片的主要原因在于,這是一款高速浮點(diǎn)DSP芯片,最大時(shí)鐘頻率達(dá)到225MHz兆赫茲,外部存儲器接口為32位,能訪問最高達(dá)512M字節(jié)的外部存儲空間,完成與同/異步存儲器的無縫對接,有兩個(gè)多通道緩沖串行端口,各端口可與265個(gè)通道進(jìn)行全雙工通信,支持多種幀格式,與串行接口兼容。并且支持流水線工作方式,可在同一時(shí)刻實(shí)現(xiàn)多達(dá)8個(gè)不同指令在內(nèi)部不同部位交迭地處理執(zhí)行,流水線運(yùn)行按取指、譯碼、執(zhí)行三級步驟運(yùn)行,各級包含幾個(gè)節(jié)拍,可實(shí)現(xiàn)指令周期內(nèi)的有序運(yùn)算,性能穩(wěn)定, TMS320C6713芯片的EDMA可在無CPU參與的環(huán)境下控制芯片存儲空間的數(shù)據(jù)遷移,并可實(shí)現(xiàn)DSP芯片與外部EPROM芯片的高速數(shù)據(jù)傳輸,適合音效器設(shè)計(jì)的需要。

            本系統(tǒng)采用的PCM1804轉(zhuǎn)換器[7],可選多種系統(tǒng)時(shí)鐘頻率和采樣頻率,模塊有主模式和從模式兩種接口模式,主模式狀態(tài)下提供與DSP之間的串行音頻數(shù)據(jù)通信,從模式狀態(tài)下只接收數(shù)據(jù)。PCM1804與TMS320C6713芯片的I2C接口通過I2S音頻傳輸協(xié)議進(jìn)行音頻傳輸。由于PCM1804具有24位112dB動(dòng)態(tài)范圍,在音頻處理過程中將會產(chǎn)生比模數(shù)轉(zhuǎn)換電路更寬的動(dòng)態(tài)范圍,因此數(shù)模轉(zhuǎn)換電路使用24位的PCM1730,其動(dòng)態(tài)范圍是117dB,可保證系統(tǒng)最終的噪聲門限和處理精度不下降。PCM1730自帶系統(tǒng)時(shí)鐘檢測電路,可自動(dòng)檢測到SCKI輸入的系統(tǒng)時(shí)鐘頻率。系統(tǒng)核心電路如圖2所示,圖2顯示了PCM1804在主模式下與TMS320C6713芯片和數(shù)模轉(zhuǎn)換芯片PCM1730的連接關(guān)系圖,輸入的音頻數(shù)據(jù)經(jīng)模數(shù)轉(zhuǎn)換和數(shù)字信號處理后經(jīng)模數(shù)轉(zhuǎn)換還原成模擬音頻信號輸出。

          3 典型算法分析

            DSP編程主要用于對吉他音頻數(shù)字信號進(jìn)行處理,可使用C語言或者匯編語言編程,鑒于C語言的易移植性、靈活性和在復(fù)雜系統(tǒng)中的便捷優(yōu)勢[1],本系統(tǒng)使用C語言進(jìn)行混合編程,主要以延時(shí)算法和混響算法為例簡要說明音效器的實(shí)現(xiàn)原理。

          3.1 延時(shí)算法

            對音頻信號的處理,延時(shí)[4]是最基本的輸出效果,其它音效如合唱效果、弗蘭格效果和回聲效果等都離不開延時(shí)的基礎(chǔ)性作用,延時(shí)產(chǎn)生的原聲滯后音可有效調(diào)整音色?;镜难訒r(shí)包括不帶反饋的和帶反饋的兩種,其中不帶反饋的延時(shí)對輸入音頻信號進(jìn)行延時(shí)一次,從而實(shí)現(xiàn)回聲效果,而帶反饋的延時(shí)能進(jìn)行反復(fù)延時(shí)和重復(fù)播放,兩者原理如圖3所示。

            由圖3可知,延時(shí)實(shí)際上是音頻數(shù)據(jù)延遲一個(gè)時(shí)段后再輸出,是通過在系統(tǒng)內(nèi)存中定義的環(huán)形緩沖區(qū)實(shí)現(xiàn),該緩沖區(qū)由讀/寫利用的地址指針確定,每次對數(shù)據(jù)延時(shí)的過程是指針從先前的指定時(shí)段前的數(shù)據(jù)和當(dāng)前數(shù)據(jù)做加成,并更新指針指向下一位置。由于內(nèi)存緩沖區(qū)的地址是線性的,為實(shí)現(xiàn)環(huán)形緩沖區(qū)的結(jié)構(gòu),充分利用了TMS320C6713具備零消耗循環(huán)控制的專門部件,不必每次指針指向地址到緩沖區(qū)上界時(shí)自動(dòng)跳到下界,而是在上界時(shí)將計(jì)數(shù)器減1直到緩沖區(qū)的下界,在硬件上完成循環(huán)跳轉(zhuǎn)和計(jì)數(shù)器的衰減,從而減小系統(tǒng)的開銷以提升系統(tǒng)運(yùn)行效率。

            此外延遲時(shí)間由系統(tǒng)采樣頻率和延遲線單元數(shù)共同決定,初始采樣頻率是96kHz,TMS320C6713芯片可支持512MB的最大尋址,因此本系統(tǒng)的延遲時(shí)間使用模數(shù)尋址方式快速實(shí)現(xiàn)。

          3.2 混響算法

            實(shí)現(xiàn)混響功能的基本單元是全通濾波器[3],但經(jīng)測試發(fā)現(xiàn)級聯(lián)或單個(gè)的全通濾波器回聲是周期性的且密度較低,從而形成較大的聲擺效應(yīng),對音效器的效果造成較壞的影響。其解決方法是使用嵌套的全通濾波器,如圖4所示,即在一個(gè)全通濾波器的延時(shí)單元中插入另一個(gè)延時(shí)濾波器。在圖4中為并不是延時(shí)單元而是全通濾波器,其Z變換為:

          (1)

            (1)式中X、Y分別是嵌套濾波器的輸入和輸出, H(z)的模為:

          (2)

            由(2)式可知,若G(z)為全通濾波器,則H(z)也為全通濾波器。這樣嵌套較大的優(yōu)點(diǎn)是提高吉他混響音效的時(shí)域響應(yīng)效果,其原理是由于嵌套全通濾波器中內(nèi)部濾波器產(chǎn)生的回聲經(jīng)過外部濾波器的反饋環(huán)路,從而重新用作輸入信號。因此,該系統(tǒng)生成的回聲個(gè)數(shù)比常規(guī)全通濾波器的回聲個(gè)數(shù)相比要多,而且嵌套全通濾波器的回聲相互間隔不是固定的,這也與常規(guī)全通濾波器不同。同時(shí)無論如何嵌套,由于使用的是全通濾波器,系統(tǒng)的穩(wěn)定性得到保證,避免了采用梳狀濾波器等條件下的振蕩和不穩(wěn)定性。

          4 系統(tǒng)測試

            為驗(yàn)證吉他音效器的指標(biāo)是否達(dá)到設(shè)計(jì)需求,采用音頻測試軟件RMAA(Right Mark Audio Analyzer)[8],該軟件下載于俄羅斯硬件資訊網(wǎng)站,可用于對本文的音效器進(jìn)行電聲性能測試,主要項(xiàng)目包括頻率響應(yīng)、本底噪聲、動(dòng)態(tài)范圍和互調(diào)失真等四項(xiàng),其測試結(jié)果為:

            (1)頻率響應(yīng)反映了音效器的音響系統(tǒng)對吉他輸出的不同頻率信號的還原特性,測試發(fā)現(xiàn)吉他音效器的頻率響應(yīng)曲線過渡平滑,各頻率點(diǎn)沒有明顯衰減,近似為一條直線,在20Hz-2kHz的頻率響應(yīng)不超過0.3dB,在2kHz-20kHz的頻率響應(yīng)不超過0.1dB,滿足系統(tǒng)頻率響應(yīng)不超過0.4dB的指標(biāo)要求。

            (2)本底噪聲主要反映吉他音效器的抗干擾性能,測試結(jié)果為音效器的左、右聲道的本底噪聲分別是-95.3dB和-92.1dB,在沒有音頻信號輸出時(shí)音箱不會出現(xiàn)交流聲,達(dá)到系統(tǒng)設(shè)計(jì)時(shí)設(shè)定的本底噪聲指標(biāo)要求。

            (3)動(dòng)態(tài)范圍是聲卡輸出最高音量和最低音量的相對比較值,吉他音效器的測試結(jié)果為83.3dB,達(dá)到設(shè)計(jì)要求。

            (4)互調(diào)失真主要反映系統(tǒng)的非線性失真程度,音效器的互調(diào)失真測試結(jié)果為0.012,滿足系統(tǒng)指標(biāo)要求。

            綜上所述,使用RMAA測試本文的吉他音效器的指標(biāo)均滿足系統(tǒng)設(shè)計(jì)要求,且吉他音效結(jié)果經(jīng)聽音師試聽,得到了充分的肯定。

          5 結(jié)論

            以TMS320C6713芯片為核心,結(jié)合模數(shù)轉(zhuǎn)換芯片PCM1804、數(shù)模轉(zhuǎn)換芯片PCM1730所進(jìn)行系統(tǒng)硬件電路的設(shè)計(jì),實(shí)現(xiàn)增強(qiáng)音效器對音頻信號的實(shí)時(shí)快速處理,通過環(huán)形緩沖區(qū)實(shí)現(xiàn)了系統(tǒng)高效率的延時(shí)功能,并使用嵌套的全通濾波器實(shí)現(xiàn)混響音效,使用RMAA對音效器進(jìn)行測試的結(jié)果表明音效器主要指標(biāo)達(dá)到了系統(tǒng)設(shè)計(jì)需求,具備較好的性能和應(yīng)用價(jià)值。

          參考文獻(xiàn):

            [1]譚志宏,景德勝,緱麗敏.基于DSP的高速AD采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)設(shè)計(jì)與應(yīng)用,2014,44(12):41-44

            [2]王鮮芳,杜志勇.基于TMS320VC5409的電吉他音效器的設(shè)計(jì)與實(shí)現(xiàn)[J].電聲技術(shù),2005,31(9):28-30

            [3]張兆偉,王舒文,李文月等.基于TMS320C6713的多功能數(shù)字音效器[J].數(shù)據(jù)采集與處理,2012,27(11):199-204

            [4]王天寶.數(shù)字調(diào)音系統(tǒng)的研究與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2010

            [5]劉越.數(shù)字音效算法的研究與實(shí)現(xiàn)[D].大連:大連理工大學(xué),2011

            [6]劉睿.一種基于DSP的音頻實(shí)時(shí)處理系統(tǒng)[J].現(xiàn)代電子技術(shù),2011,34(1):85-87

            [7]肖啟洋,張忠慧,方元.基于DSP的聲反饋抑制系統(tǒng)的研究與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2013,29(1):13-16

            [8]李淵洋.基于DSP的音效處理器設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2011

          濾波器相關(guān)文章:濾波器原理


          c語言相關(guān)文章:c語言教程


          濾波器相關(guān)文章:濾波器原理




          關(guān)鍵詞: DSP 吉他 音效器 201510

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();