新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MPEG聲音編碼系統的單片DSP實現

        MPEG聲音編碼系統的單片DSP實現

        作者: 時間:2012-04-05 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/257594.htm

        (2)輸入數據的組織 輸入數據的組織不但要考慮方便地從數模轉換器取得聲音原始數據,還要考慮輸入數據在片內數據RAM的存儲適合作為多相濾波器組和聲學模型的FFT運算的輸入.多相濾波器組每次移入32個新的聲音數據,移出32個舊的樣值,操作如下:

        Xi=Xi-32,i=511,510,…,32
        Xi=next-input-audio-sample,i=31,30,…,0

        然而A-2181并不適于實現數據的移動,每個賦值運算需要兩個指令才能完成,每次分析濾波操作需要1024個指令周期.如果利用A- 2181的多通道自動緩沖串口及間接尋址能力,適當地組織輸入聲音數據,就可利用滑動窗的方法實現數據的移入和移出,如圖2所示.


        圖2 多相濾波的滑動窗技術

        為了保證幀邊界處理的連續性,輸入數據緩存應該設計成圓緩沖的形式,其長度應能存儲兩幀聲音輸入數據.當在處理一幀數據時,輸入數據可以緩沖到另一幀.這樣,數據移動的開銷就節約了.同時,輸入數據的組織還要利于聲學模型的FFT運算,FFT需要利用ADSP-2181的地址反轉尋址模式.由于 FFT計算和輸入數據的緩存是同時進行的,所以FFT計算的指針需要地址反轉,而輸入緩沖的指針卻不能地址反轉,否則會導致輸入聲音數據排列混亂. ADSP-2181提供這種能力,它的第一地址指針組I0,I1,I2,I3有地址反轉能力,而第二地址指針組I4,I5,I6,I7卻不受地址反轉模式的影響.所以從第二地址指針組中選擇指針進行輸入緩沖,從第一地址指針組中選擇指針進行FFT計算.

        (3)聲學模型的改進 用DSP實現心理聲學模型的一個難題是其中有大量的對數運算,雖然可以用多項式逼近求得其近似值,但是其巨大的運算量說明這不是一個明智的選擇.在改進的心理聲學模型中,FFT運算后并不立即換算到對數域,而是用分段折線逼近線性域的掩蔽效應曲線.為簡單起見,使用與標準一致的分段方法.逼近采用取指數的多項式展開的一次項的方法,這種方法雖然比較粗糙,但正如前面分析的那樣,聲學模型在16bit定點實現時不是主要矛盾,因而還是可以接受的.

        得到掩蔽門限以后,為計算信掩比供比特分配使用,還是需要從線性域轉換到對數域.這時,我們采用一種利用ADSP-2181移位器的近似計算方法.通過EXP指令,可以提取2進制補碼小數的指數,對能量而言又有1bit約3dB.因而指數值乘3就近似得到該補碼小數的dB值,尾數部分的影響忽略不計.

        (4)比例因子的編碼 標準中一共給出了63個比例因子,但是并不是所有這些比例因子都可以用16bit的2進制數表示.如果用雙字進行精度擴展,在量化時又將面臨雙字除法的巨大開銷,因此,只使用其中可以用16bit的2進制補碼小數精確表示的子集,即序號為3的倍數且小于等于45 的比例因子.

        采用比例因子子集后,比例因子編碼就可以不再通過比較的方法得到,而可以直接通過計算子帶最大幅度的指數獲得,簡化了比例因子的編碼.

        (5)軟件仿真結果 結合上述各項算法改進,根據ADSP-2181的特點和標準,用AD公司的開發軟件進行了軟件仿真.表1列出了仿真得到的各個模塊對運算量和存儲量要求進行的估算結果.仿真在抽樣率為48kHz,編碼模式為立體聲,輸入信號為頻率為1kHz的正弦波,輸出碼率為 192kbit/s的情況下進行.

        由表1可知,ADSP-2181的性能得到了較充分的利用.仿真結果表明,在以上的條件下,解碼輸出的信噪比可達80dB左右.可見,所作的算法改進是比較有效的.

        表1 各模塊的運算量和存儲量要求

        4 硬件設計

        硬件結構框圖如圖3所示.各模塊的基本功能如下:


        DSP核:除完成所有編碼算法以外,還要完成對模數轉換電路的初始化配置;通過輔助控制電路選擇抽樣時鐘,通過接口電路接受主機的編碼參數.

        輔助控制電路:由FPGA及附屬電路實現,完成時鐘的產生、FIFO狀態的監測、地址譯碼等功能.

        輸出緩沖:編碼碼流的暫時存儲區,同時提供完全異步的輸出接口方式.在需要實現圖象聲音唇形同步的應用中特別有用.

        外部存儲器:包括BDMA空間、I/O空間.

        模數轉換電路:完成聲音的數字化,直接與DSP的串口0連接.抽樣頻率由外部提供的256倍抽樣時鐘的頻率決定,正常工作前需要進行初始化.

        接口電路:接口電路分為兩部分,一部分是編碼輸出接口,另一部分是與主機連接的接口.主機接口使用RS232接口芯片完成DSP串口1與主機串口的連接,DSP使用中斷和內部計時器實現異步串型通信.

        上述方案已經在“九五”科技攻關項目中實現,實時編解碼的聲音通過了主觀測試.



        上一頁 1 2 下一頁

        關鍵詞: MPEG DSP 聲音編碼

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 西昌市| 五华县| 湖南省| 宁远县| 德化县| 巩留县| 凤山县| 嘉荫县| 安阳市| 西平县| 噶尔县| 华坪县| 澄城县| 凭祥市| 巩义市| 富锦市| 丘北县| 鹤壁市| 潜山县| 女性| 天柱县| 营山县| 桐柏县| 长治市| 大埔区| 新田县| 前郭尔| 郎溪县| 富川| 永嘉县| 广东省| 横山县| 建瓯市| 吉水县| 汕尾市| 田林县| 乾安县| 道真| 托克逊县| 香港| 丹东市|