音頻信號的加速處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信號處理技術(shù)領(lǐng)域,涉及一種音頻信號的處理方法,特別是涉及一種音頻信號的加速處理方法及裝置。
【背景技術(shù)】
[0002]音頻信號處理過程中會涉及很多數(shù)字信號處理的算法設(shè)計,一般通過軟件實現(xiàn)該類算法,類似FFT (快速傅里葉變換)、IIR濾波、FIR濾波、以及一些音頻格式解碼模塊中線性預(yù)測模塊的算法設(shè)計等。這些算法設(shè)計在軟件上操作需要耗費(fèi)較多時間,算法處理速度達(dá)不到日益增長的高速音頻處理需求。那么,如何提高此類算法的運(yùn)算速度則是本發(fā)明即將解決的問題。
【發(fā)明內(nèi)容】
[0003]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種音頻信號的加速處理方法及裝置,用于解決現(xiàn)有的數(shù)字信號處理的算法設(shè)計在軟件實現(xiàn)上耗時長,運(yùn)算速度慢的問題。
[0004]為實現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種音頻信號的加速處理方法,所述音頻信號的加速處理方法包括:利用DMA接口對外部音頻信號數(shù)據(jù)進(jìn)行硬件加速讀取,輸出音頻信號加速數(shù)據(jù);對所述音頻信號加速數(shù)據(jù)進(jìn)行先入先出隊列緩存;利用第一音頻處理模塊對緩存的音頻信號加速數(shù)據(jù)進(jìn)行硬件高頻運(yùn)算處理,輸出第一路音頻信號處理數(shù)據(jù);對所述第一路音頻信號處理數(shù)據(jù)進(jìn)行先入先出隊列緩存;利用所述DMA接口輸出緩存的第一路音頻信號處理數(shù)據(jù)。
[0005]可選地,所述利用第一音頻處理模塊對緩存的音頻信號加速數(shù)據(jù)進(jìn)行硬件高頻運(yùn)算處理的過程包括:利用FIR濾波器對音頻格式為FLAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理,獲得第一線性預(yù)測編碼結(jié)果;利用濾波器系數(shù)更新后的FIR濾波器對音頻格式為ALAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理后,獲得第二線性預(yù)測編碼結(jié)果;或/和利用濾波器系數(shù)修正更新后的FIR濾波器對音頻格式為APE的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理后,獲得第三線性預(yù)測編碼結(jié)果。
[0006]可選地,所述音頻信號的加速處理方法還包括:利用第二音頻處理模塊對所述音頻信號加速數(shù)據(jù)進(jìn)行硬件加速處理,輸出第二路音頻信號處理數(shù)據(jù);利用所述DMA接口發(fā)出所述第二路音頻信號處理數(shù)據(jù)。
[0007]可選地,所述利用第二音頻處理模塊對所述音頻信號加速數(shù)據(jù)進(jìn)行硬件加速處理的過程包括:對所述音頻信號加速數(shù)據(jù)進(jìn)行FFT硬件加速處理;對所述音頻信號加速數(shù)據(jù)進(jìn)行IFFT硬件加速處理;對所述音頻信號加速數(shù)據(jù)進(jìn)行IIR硬件加速處理;或/和對所述音頻信號加速數(shù)據(jù)進(jìn)行FIR硬件加速處理。
[0008]可選地,所述音頻信號的加速處理方法還包括:利用AMBA總線接口對所述第一音頻處理模塊進(jìn)行硬件解碼模塊寄存器配置;在所述外部音頻信號數(shù)據(jù)加速處理完成后或發(fā)生異常時,利用Interrupt接口輸出中斷信號。
[0009]本發(fā)明提供一種音頻信號的加速處理裝置,所述音頻信號的加速處理裝置包括:系統(tǒng)接口模塊,通過DMA接口對外部音頻信號數(shù)據(jù)進(jìn)行硬件加速讀取,輸出音頻信號加速數(shù)據(jù);發(fā)送緩存模塊,與所述系統(tǒng)接口模塊相連,對所述音頻信號加速數(shù)據(jù)進(jìn)行先入先出隊列緩存;第一音頻處理模塊,與所述發(fā)送緩存模塊相連,對緩存的音頻信號加速數(shù)據(jù)進(jìn)行硬件高頻運(yùn)算處理,輸出第一路音頻信號處理數(shù)據(jù);接收緩存模塊,與所述第一音頻處理模塊相連,對所述第一路音頻信號處理數(shù)據(jù)進(jìn)行先入先出隊列緩存;所述系統(tǒng)接口模塊與所述接收緩存模塊相連,通過DMA接口輸出緩存的第一路音頻信號處理數(shù)據(jù)。
[0010]可選地,所述第一音頻處理模塊包括:FIR濾波器單元,對音頻格式為FLAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理,獲得第一線性預(yù)測編碼結(jié)果;濾波器系數(shù)更新單元,與所述FIR濾波器單元相連,對所述FIR濾波器單元的濾波器系數(shù)進(jìn)行更新;系數(shù)更新后的FIR濾波器單元對音頻格式為ALAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理,獲得第二線性預(yù)測編碼結(jié)果;修正系數(shù)更新單元,與所述濾波器系數(shù)更新單元相連,對濾波器系數(shù)更新單元的更新系數(shù)進(jìn)行修正;系數(shù)修正更新后的FIR濾波器單元對音頻格式為APE的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理,獲得第三線性預(yù)測編碼結(jié)果。
[0011]可選地,所述音頻信號的加速處理裝置還包括:第二音頻處理模塊,與所述系統(tǒng)接口模塊相連,對所述音頻信號加速數(shù)據(jù)進(jìn)行硬件加速處理,輸出第二路音頻信號處理數(shù)據(jù);利用所述DMA接口輸出所述第二路音頻信號處理數(shù)據(jù)。
[0012]可選地,所述第二音頻處理模塊包括:FFT單元,對所述音頻信號加速數(shù)據(jù)進(jìn)行FFT硬件加速處理;IFFT單元,對所述音頻信號加速數(shù)據(jù)進(jìn)行IFFT硬件加速處理;IIR單元,對所述音頻信號加速數(shù)據(jù)進(jìn)行IIR硬件加速處理;或/和FIR單元,對所述音頻信號加速數(shù)據(jù)進(jìn)行FIR硬件加速處理。
[0013]可選地,所述系統(tǒng)接口模塊還包括:AMBA BUS接口,通過AMBA總線對所述第一音頻處理模塊進(jìn)行硬件解碼模塊寄存器配置;中斷接口,在所述外部音頻信號數(shù)據(jù)加速處理完成后或發(fā)生異常時,輸出中斷信號。
[0014]如上所述,本發(fā)明的音頻信號的加速處理方法及裝置,具有以下有益效果:
[0015]本發(fā)明利用硬件電路固有的高頻運(yùn)算特性,將數(shù)字信號處理的算法硬件化,通過軟硬件協(xié)同,實現(xiàn)了算法的最高速實現(xiàn),可以有效提高音頻信號處理的性能。
【附圖說明】
[0016]圖1顯示為本發(fā)明實施例所述的音頻信號的加速處理方法的一種實現(xiàn)流程示意圖。
[0017]圖2顯示為本發(fā)明實施例所述的音頻信號的加速處理方法的另一種實現(xiàn)流程示意圖。
[0018]圖3顯示為本發(fā)明實施例所述的音頻信號的加速處理方法的步驟S3的一種實現(xiàn)流程示意圖。
[0019]圖4顯示為本發(fā)明實施例所述的音頻信號的加速處理裝置的一種實現(xiàn)結(jié)構(gòu)示意圖。
[0020]圖5顯示為本發(fā)明實施例所述的音頻信號的加速處理裝置的第一音頻處理模塊的一種實現(xiàn)結(jié)構(gòu)示意圖。
[0021]圖6顯示為本發(fā)明實施例所述的音頻信號的加速處理裝置的第二音頻處理模塊的一種實現(xiàn)結(jié)構(gòu)示意圖。
[0022]元件標(biāo)號說明
[0023]400音頻信號的加速處理裝置
[0024]410系統(tǒng)接口模塊
[0025]411DMA 接口
[0026]412AMBA BUS 接口
[0027]413中斷接口
[0028]420發(fā)送緩存模塊
[0029]430第一音頻處理模塊
[0030]431FIR濾波器單元
[0031]432濾波器系數(shù)更新單元
[0032]433修正系數(shù)更新單元
[0033]440接收緩存模塊
[0034]450第二音頻處理模塊
[0035]451FFT 單元
[0036]452IFFT 單元
[0037]453IIR 單元
[0038]454FIR 單元
[0039]SI ?S7 步驟
[0040]S31 ?S33 步驟
【具體實施方式】
[0041]以下通過特定的具體實例說明本發(fā)明的實施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實施方式】加以實施或應(yīng)用,本說明書中的各項細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
[0042]需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實際實施時的組件數(shù)目、形狀及尺寸繪制,其實際實施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0043]請參閱圖1,本發(fā)明提供一種音頻信號的加速處理方法,所述音頻信號的加速處理方法包括:
[0044]SI,利用DMA接口對外部音頻信號數(shù)據(jù)進(jìn)行硬件加速讀取,輸出音頻信號加速數(shù)據(jù)。
[0045]S2,對所述音頻信號加速數(shù)據(jù)進(jìn)行先入先出隊列緩存。
[0046]S3,利用第一音頻處理模塊對緩存的音頻信號加速數(shù)據(jù)進(jìn)行硬件高頻運(yùn)算處理,輸出第一路音頻信號處理數(shù)據(jù)。本實施例利用AMBA總線接口對所述第一音頻處理模塊進(jìn)行硬件解碼模塊寄存器配置。本實施例中,需要所述第一音頻處理模塊處理的音頻信號加速數(shù)據(jù)類型包括音頻格式為FLAC的音頻信號加速數(shù)據(jù),音頻格式為ALAC的音頻信號加速數(shù)據(jù),或/和音頻格式為APE的音頻信號加速數(shù)據(jù)。
[0047]進(jìn)一步,參見圖3所示,步驟S3所述的利用第一音頻處理模塊對緩存的音頻信號加速數(shù)據(jù)進(jìn)行硬件高頻運(yùn)算處理的過程包括:
[0048]S31,利用FIR濾波器對音頻格式為FLAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理,獲得第一線性預(yù)測編碼結(jié)果。
[0049]S32,利用濾波器系數(shù)更新后的FIR濾波器對音頻格式為ALAC的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理后,獲得第二線性預(yù)測編碼結(jié)果?;?和
[0050]S33,利用濾波器系數(shù)修正更新后的FIR濾波器對音頻格式為APE的音頻信號加速數(shù)據(jù)進(jìn)行硬件濾波處理后,獲得第三線性預(yù)測編碼結(jié)果。
[0051]S4,對所述第一路音頻信號處理數(shù)據(jù)進(jìn)行先入先出隊列緩存。
[0052]S5,利用所述DMA接口輸出緩存的第一路音頻信號處理數(shù)據(jù)。
[0053]進(jìn)一步,參見圖2所示,所述音頻信號的加速處理方法還包括:
[0054]SI,利用DMA接口對外部音頻信號數(shù)據(jù)進(jìn)行硬件加速讀取,輸出音頻信號加速數(shù)據(jù)。
[0055]S6,利用第二音頻處理模塊對所述音頻信號加速數(shù)據(jù)進(jìn)行硬件加速處理,輸出第二路音頻信號處理數(shù)據(jù)。本實施例中,所述第二音頻處理模塊的硬件加速處理功能包括FFT加速處理功能、IFFT加速處理功能、IIR加速處理功能、FIR加速處理功能等。
[0056]進(jìn)一步,步驟S6所述的利用第二音頻處理模塊對所述音頻信號加速數(shù)據(jù)進(jìn)行硬件加速處理的一種實現(xiàn)過程包括:對所述音頻信號加速數(shù)據(jù)進(jìn)行FFT硬件加速處理;對所述音頻信號加速數(shù)據(jù)進(jìn)行IFFT硬件加速處理;對所述音頻信號加速數(shù)據(jù)進(jìn)行IIR硬件加速處理;或/和對所述音頻信號加速數(shù)據(jù)進(jìn)行FIR硬件加速處理。
[0057]S7,利用所述DMA接口發(fā)出所述第二路音頻信號處理數(shù)據(jù)。
[0058]本實施例在所述外部音頻信號數(shù)據(jù)加速處理完成后或發(fā)生異常時,利用Interrupt接口輸出中斷信號。其中,發(fā)生異常的情況包括硬件解碼出現(xiàn)超時或總線取數(shù),寫數(shù)據(jù)等錯誤的時候發(fā)起中斷。
[0059]本發(fā)明所述的音頻信號的加速處理方法的保護(hù)范圍不限于本實施例列舉的步驟執(zhí)行順序,凡是根據(jù)本發(fā)明的原理所做的現(xiàn)有技術(shù)的步驟增減、步驟替換所實現(xiàn)的方案都包括在本發(fā)明的保護(hù)范圍內(nèi)。
[0060]本發(fā)明還提供一種音頻信號的加速處理裝置,所述音頻信號的加速處理裝置可以實現(xiàn)本發(fā)明所述的音頻信號