《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 基于定點DSP的MP3實時解碼器的設計與實現

基于定點DSP的MP3實時解碼器的設計與實現

2008-10-15
作者:梅 軍

  摘 要: FD216是智原科技" title="智原科技">智原科技公司出品的一款結構與ADI公司的ADSP-2181相類似且指令集相兼容的高性價比16位定點DSP芯片。利用智原科技公司提供的開發工具包,可以方便地將C算法移植到FD216中。詳細介紹了在FD216評估板" title="評估板">評估板上用嵌入式C語言和匯編語言混合編程的方法設計并實現基于定點DSP的MP3實時解碼" title="實時解碼">實時解碼器的整個流程。
  關鍵詞: DSP MP3解碼器 嵌入式C語言 匯編語言


1 FD216 16位定點DSP特點簡介
  DSP(數字信號處理器)是一種特別適合于進行數字信號處理的微處理器,主要用于實時快速地實現各種數字信號處理算法。FD216是一個高效能而且易于使用的16位定點DSP,包含DSP內核、芯片內建數據存儲器、程序內存、兩個串行接口、一個定時器、12組可編程I/O、內部直接內存存取(IDMA)接口、外部內存接口和串行式在線仿真器(SICE)接口等,兼容ADSP-218X系列匯編代碼,最高運行速度可達到190MIPS。FD216的CM(Code Memory)、PM(Program Memory)和DM(Data Memory)是嚴格區分的,在程序設計時要將放在PM區和DM區的數據分別說明。在移植ADSP2181匯編代碼時,也要做相應修改。
2 MP3及其解碼原理
  MPEG-1 Audio Layer 3(MP3)[3] 是一個在低比特率下提供高保真音頻的壓縮標準。特別是在解碼部分,它已經成功地應用于多種消費類電子產品中。
  MP3解碼原理:首先將MP3數據幀解包,解出幀頭信息和邊帶信息;然后采用霍夫曼解碼解出比特分配信息;接著在逆變換中利用頻譜系數,在綜合濾波器中將32個子帶合并成一個寬帶信號。18個頻譜值執行32次IMDCT(逆改進型離散余弦變換),將生成的576個頻譜值變換成長度為32的18個連續的頻譜。通過18次運算,多相位綜合濾波器將這些頻譜轉換到時域,完成波形重構,生成立體聲PCM音頻數據。MP3解碼流程圖如圖1所示。


3 開發環境
  目標系統為智原科技公司提供的FD216 DSP評估板,系統環境為WIN2K,軟件環境為FD2XX工具包(DSP C compiler,assembler,linker,debugger)。
  圖2為FD216開發系統結構框圖。


4 MP3解碼器系統設計
4.1 設計要求

  設計要求包括以下內容:
  (1)功能要求:以智原科技公司提供的FD216 DSP評估板作為目標系統,進行MP3解碼器設計,要求系統能實時解碼采樣頻率為32kHz/44.1kHz/48kHz、數據碼率從32到320kbps的MP3比特流。
  (2)解碼精度要求:定點MP3解碼精度應符合ISO/IEC 11172-4所規定的限制精度。
4.2 硬件設計
  硬件設計包括以下內容:
  (1)在FD216評估板上進行正確的硬件配置。
  (2)串口" title="串口">串口0配置。FD216評估板所采用的Audio Codec是Philips公司的UDA1345TS,它與FD216的串口0相連,輸出16位或8位PCM線性數據。
  (3)串行ICE(SICE)仿真調試接口。
4.3 軟件設計
  軟件設計包括以下內容:
  (1)C運行時間庫。C語言運行時間庫(C Run Time Library)是整個C開發工具的核心之一,提供了大量的可以直接調用的庫函數。
  (2)設置內存映射寄存器訪問方式。
5 MP3解碼器程序設計
  MP3解碼器程序設計包括以下內容:
  (1)定點算法設計。盡管定點DSP也支持浮點運算,但浮點運算會消耗大量的指令周期和內存,也會降低系統運行速度,不能應用于MP3實時解碼。在程序設計中,首先要將MP3浮點C解碼算法轉換為定點C解碼算法。浮點算法轉換成定點算法實現過程比較復雜,本文不再贅述。
  (2)在程序的頭部建立正確的運行頭(RunTimeHeader)文件。
  (3)內存分頁/重疊。與ADSP-218X類似,FD216也是通過設置重疊存儲器選擇寄存器(PMOVLAY/DMOVLAY)來實現PM(CM)/DM存儲器分頁/重疊的。
  FD216的內存結構圖如圖3所示。


  FD216系統說明文件FD216.SYS說明了FD216 DSP的內存分配方式,是支持DSP程序正確運行的系統文件。
  數據、代碼分頁/重疊應首先在HOST(PC)上對數據、代碼分別進行內存分頁,接著使用FD2XX開發工具包進行編譯、匯編、鏈接,生成目標代碼,然后下載到目標板上運行。
  (4)中斷服務子程序" title="子程序">子程序。FD216中斷控制器允許處理器響應十二個中斷之一。在MP3解碼應用中使用了如下三個中斷服務子程序:
  ①eset中斷服務子程序:程序運行時,首先進入reset中斷服務子程序,即從start程序開始運行,其優先級最高。
  jump start; rti; rti; rti; /* Reset */
 ?、趇r2_get_data外部中斷服務子程序:通過IDMA接口經過PCI總線從HOST(PC)硬盤讀取數據的控制程序。
  ③intsp0中斷服務子程序:向串口0發送數據的子程序。為了實現MP3文件在系統中的實時播放,設計了雙Buffer通過串口0向Audio Codec傳送解碼后的聲音樣本數據。intsp0中斷服務子程序流程圖如圖4所示。


  (5)代碼移植:將MP3 解碼算法C程序移植為可在FD216 DSP系統中運行的嵌入式C程序。在此需要注意以下幾點:
 ?、儆捎贒SP系統中沒有文件I/O函數,應將C程序中的文件I/O函數方式改成嵌入式系統中的內存直接讀、寫方式。
 ?、趹⒁鈹祿愋偷奶幚恚簩程序中的int類型改成short或long類型,將unsigned int類型改成unsigned short或unsigned long類型,并且為了提高程序運行效率,應注意盡量少用(unsigned)long型,算法驗證無誤后再移植到DSP中。
  ③在保證程序正確性、穩定性的前提下,應通過修改C算法和數據結構,盡量縮減C程序中表數據的尺寸,使表在DSP內存中占據的空間盡量小。
6 MP3解碼器實驗結論
6.1 算法復雜度(Complexity)評測

  通過仿真調試工具debugger對MP3解碼器在一定條件下進行性能評估(Profile),并計算出系統所需要的MIPS (Million Instruction Per Second)?;贔D216的MP3解碼算法復雜度如表1所示。


  MP3解碼算法復雜度為60.01MIPS,只占了系統最大運行能力(190MIPS)的31.58%。
6.2 實驗結果
  基于FD216的MP3解碼器的實驗結果如表2所示。


  實驗結論:系統功能、解碼速度、精度均符合設計要求,并且實現了實時解碼、回放。
  本文簡要介紹了MP3解碼原理,并詳細說明了MP3在FD216定點DSP上實現實時解碼的設計、開發流程。在此基礎上亦可開發、實現其它格式的壓縮編碼數字音頻解碼器,如Dolby AC-3 [5]、MPEG-2 Advanced Audio Coding (AAC)、Microsoft(r) Windows Media(tm) Audio (WMA)等。利用DSP可編程特性,可以開發出多格式音頻解碼器,而不需要增加其它硬件。


參考文獻
1 FD216 16-bit DSP Microcomputer Data Sheet.Hsin-chu,Taiwan:Faraday Technology Corporation, 2002
2 FD216 DSP Evaluation Board User’s Manual. Hsin-chu,Taiwan :Faraday Technology Corporation, 2002
3 ISO/IEC JTC1/SC29/WG11 MPEG, IS11172-3.Informa-tion Technology-Coding of Moving Pictures and Associated Audio for Digital Storage Media at up to About 1.5Mbit/s.Audio, 1992(3)
4 徐科軍,黃云志.定點DSP的原理、開發與應用.北京:清華大學出版社,2002

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品免费观看| 99re这里只有精品6| 在线观看成人av| 国产视频欧美| 国产三级欧美三级| 国产精品一区二区三区乱码 | 国产视频综合在线| 亚洲精品美女免费| 亚洲男人的天堂在线aⅴ视频| 亚洲天堂网站在线观看视频| 一区二区日韩欧美| 亚洲人成在线观看网站高清| 最新日韩在线视频| 亚洲欧洲中文日韩久久av乱码| 国产一区二三区| 国产一区二区毛片| 国模叶桐国产精品一区| 狠狠色噜噜狠狠狠狠色吗综合| 韩国精品在线观看| 国产在线观看一区| 亚洲第一区在线观看| 亚洲第一久久影院| 亚洲激情在线观看| 久久久久久久久久久久久久一区 | 欧美日韩亚洲综合| 欧美日韩在线不卡一区| 国产精品激情| 国产毛片精品国产一区二区三区| 国产欧美日韩91| 国产一区二区丝袜高跟鞋图片| 国内精品亚洲| 亚洲高清毛片| 日韩视频在线一区二区| 中文日韩在线| 欧美一级在线亚洲天堂| 亚洲黄色天堂| 在线一区亚洲| 欧美在线不卡| 免费久久99精品国产自| 欧美精品一区二区三区四区| 欧美婷婷久久| 国产亚洲欧美激情| 亚洲东热激情| 一区二区三区国产| 亚洲午夜国产一区99re久久 | 久久久亚洲影院你懂的| 欧美高潮视频| 国产精品久久久久av免费| 国产一区导航| 亚洲精品视频在线观看免费| 中日韩视频在线观看| 欧美在线亚洲一区| 一本色道久久综合亚洲91| 欧美一二三区精品| 欧美大尺度在线观看| 国产精品美女久久久久久免费| 国内外成人在线| 亚洲精品乱码视频| 小黄鸭精品aⅴ导航网站入口| 亚洲人成在线观看| 午夜欧美理论片| 欧美大片免费观看在线观看网站推荐| 欧美涩涩视频| 伊人久久亚洲热| 亚洲视频在线二区| 亚洲精品久久视频| 久久成年人视频| 欧美日韩三级电影在线| 国外成人网址| 亚洲午夜激情在线| 亚洲美女淫视频| 久久久久久久精| 国产精品福利在线观看| 亚洲第一精品福利| 亚洲欧美中日韩| 中日韩美女免费视频网址在线观看 | 亚洲一二三区精品| 亚洲国产一成人久久精品| 亚洲欧美中文日韩在线| 欧美高清在线精品一区| 国产午夜精品一区二区三区欧美| aa日韩免费精品视频一| 最新亚洲电影| 久久久久国产一区二区| 国产精品扒开腿做爽爽爽软件 | 亚洲无毛电影| 欧美大片在线观看一区| 国产真实久久| 亚洲主播在线播放| 亚洲一区二区三区色| 欧美电影免费观看高清| 国产专区一区| 亚洲欧美一区二区三区久久| 亚洲午夜一级| 欧美韩日高清| 在线欧美日韩| 亚洲成人直播| 亚洲靠逼com| 亚洲精品国产精品国自产观看| 欧美一区二区三区视频在线| 午夜在线一区二区| 欧美性开放视频| 99视频有精品| 在线视频你懂得一区二区三区| 欧美二区在线看| 在线免费观看欧美| 亚洲高清网站| 久久综合99re88久久爱| 国产中文一区二区三区| 香蕉免费一区二区三区在线观看 | 国产色综合天天综合网| 亚洲一区中文| 亚洲欧美另类综合偷拍| 欧美午夜在线观看| 一区二区三区波多野结衣在线观看| 日韩午夜在线| 欧美日韩国产综合一区二区| 亚洲精品久久视频| 亚洲视频在线观看三级| 欧美日韩视频一区二区三区| 亚洲美女在线一区| 中文一区二区| 国产精品成人免费精品自在线观看| aa级大片欧美三级| 亚洲欧美精品在线观看| 国产精品看片资源| 亚洲综合欧美| 久久久久国产精品www| 国外成人免费视频| 91久久精品国产91性色| 欧美国产第一页| 亚洲开发第一视频在线播放| 中文日韩在线视频| 国产精品看片资源| 亚欧美中日韩视频| 老鸭窝毛片一区二区三区| 亚洲高清在线| 99视频精品免费观看| 欧美日韩在线视频首页| 亚洲一区二区三区精品在线| 久久99在线观看| 有码中文亚洲精品| 日韩性生活视频| 欧美香蕉视频| 欧美一区二区性| 欧美国产高潮xxxx1819| 宅男精品导航| 久久精品一区二区三区不卡| 亚洲第一二三四五区| 亚洲天堂网在线观看| 国产精品手机视频| 久久精品国产一区二区三| 欧美福利视频在线| 一区二区日韩精品| 久久久久亚洲综合| 亚洲欧洲精品一区二区| 亚洲欧美在线一区二区| 狠狠做深爱婷婷久久综合一区| 亚洲精品视频在线看| 国产精品久久一区主播| 国产欧美va欧美va香蕉在| 亚洲视频www| 久久网站免费| 日韩视频第一页| 欧美在线三级| 亚洲欧洲另类国产综合| 午夜精品短视频| 亚洲盗摄视频| 亚洲欧美三级在线| 亚洲电影激情视频网站| 亚洲欧美日韩视频一区| 在线观看av一区| 羞羞视频在线观看欧美| 亚洲二区在线视频| 香蕉久久夜色精品| 亚洲国产精品va在看黑人| 午夜电影亚洲| 亚洲国产免费| 欧美一区二区视频97| 亚洲欧洲精品一区二区精品久久久| 性色av香蕉一区二区| 亚洲激情av| 久久久久.com| 一区二区不卡在线视频 午夜欧美不卡在 | 久久精品人人做人人爽| 一本色道久久综合亚洲91 | 欧美激情国产日韩| 午夜在线精品偷拍| 欧美日韩精品二区第二页| 欧美专区日韩专区| 国产精品观看| 亚洲人线精品午夜| 国产综合婷婷| 午夜精品久久久久久久男人的天堂 | 99国产精品自拍| 模特精品裸拍一区| 先锋a资源在线看亚洲| 国产精品久久久99| 一本久久综合亚洲鲁鲁| 一区二区亚洲精品国产|