吴忠躺衫网络科技有限公司

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>DSP>多制式語音編解碼算法的DSP設計

多制式語音編解碼算法的DSP設計

2017-11-06 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

 近二十年來,全球半導體產業的飛速發展帶動相關的軟件、硬件設計水平迅速提高,這些發展使得一大批性能優良的復雜的數字信號處理算法可以實時實現并在日常通信系統中得到廣泛應用,極大地提高了現有通信系統的可靠性和效率。因此,研究語音處理技術并將其用基于DSP芯片硬件系統實現有著非常重要的現實意義和廣闊的市場前景。本文介紹了語音編解碼硬件平臺的設計思路和編解碼算法在硬件平臺上的實現和優化過程,同時給出了硬件平臺結構和低功耗設計思路。
  1 平臺中語音編解碼算法簡述
  本文在TI C55x系列DSP上實現了0.3kbps至16kbps的多種不同速率的語音編解碼算法。其中16kps速率采用連續可變增量調制(CVSD)的波形編碼算法,8kps速率采用了ITU-T公布的G.729a標準算法。而低速率編解碼采用了正弦激勵線性預測(SELP)算法。SELP算法是建立在傳統的線性預測模型的基礎上,其中清音成分用白噪聲擬合,濁音成分在每個諧波處用一個頻率變化的正弦信號合成,整個激勵的濁音部分由一組不同幅度的正弦疊加而成,這也是SELP模型不同于傳統的線性預測的一個非常的重要方面,即激勵信號采用分帶混合正弦激勵。
  2 語音編解碼算法在DSP數字處理芯片上的實現和優化
  由于在DSP上運行的聲碼器必須要達到實時化的要求,而直接編譯的C程序遠無法達到。因此需要編寫和優化C55x的匯編代碼來提高聲碼器的運行效率。下面介紹幾點在算法硬件實現過程中的關鍵技術:
  2.1 C程序和匯編程序的混編,函數的調用和參數傳遞
  把一個模塊改寫為匯編函數,然后在C程序或者匯編程序中調用它。在C55x的開發中,函數的調用機制是這樣的:首先記錄下函數傳遞來的參數,和返回地址SP向低位移。然后再在堆棧中開出本地變量常量所需要的空間,SP再次向低位移。
  (1)匯編函數的聲明:在匯編函數中定義的函數如果要想在C代碼中被調用,必須用.global語句加以聲明,這樣,對象或函數被定義為外部的(external)。比如:
  .global _Rem_Dc
  _Rem_Dc:
  ……
  (2)參數傳遞:在函數調用的過程中,C代碼傳來的參數按照以下規則存放在特定的寄存器中:即16或23位的數據指針,先后存放在(X)AR0-(X)AR4中。16位的數據,先后存放在T0,T1,AR0-AR4中,32位的數據,先后存放在AC0,AC1和AC2中。如果參數個數超過寄存器個數,則存放在堆棧中。同時,函數的返回值如果是短整型(short)則存放在T0中,如果是長整型(long)則存放在AC0中,如果是指針則存放在(X)AR0中。
  例如:
  ①int fn(int i1, long l2, int *p3);
  則fn-》T0; il-》T0, l2-》AC0, p3-》AR0
  ②long fn(int *p1, int i2, int i3, int i4);
  則fn-》AC0, p1-》AR0, i2-》T0, i3-》T1, i4-》AR1
  ③void fn(long l1, long l2, long l3, long l4, int i5);
  則l1-》AC0, l2-》AC1, l3-》AC2, l4-》堆棧, i5-》T0
  ④void fn(long l1, long l2, long l3, int *p4, int *p5, int *p6, int *p7, int *p8, int i9, int i10);
  則l1-》AC0,l2-》AC1,l3-》AC2,p4-》AR0,p5-》AR1, p6-》AR2, p7-》AR3, p8-》AR4, i9-》T0,i10-》T1
  2.2 標志位的設置
  標志位是DSP芯片在計算時設置一些位置。它們存放在ST0_55~ST3_55中,在運算中主要用到的幾個有:
  FRCT,當其值等于1時,乘法運算的結果將左移一位。等于零時,運算結果不變。
  SATD,當其值等于1時,運算發生溢出時作飽和處理
  SXMD,當其值等于1時,輸入操作數有符號擴展
  SMUL,當其值等于1時,飽和模式開
  他們分別存儲在ST1_55和ST3_55寄存器的位置如圖1所示:
  
  
  圖1 C55x DSP關鍵標志位在寄存器中的位置
  這幾個操作位的設置不對的話,會出現運算結果的錯誤。所以要根據程序的需要正確設置操作位,同時要在程序的前后保護和還原其初值。
  psh *(ST1_55)
  psh *(ST3_55)
  ……
  pop *(ST3_55)
  pop *(ST1_55)
  3 語音編解碼硬件平臺簡述
  本文設計的多模式語音編解碼系統基于C55x系列DSP和MCU的雙處理器設計,主芯片采用了TI公司的TMS320VC5510A數字信號處理器。其時鐘周期最高為200MHz。擁有160KWord片上RAM(其中包括8塊4KWord的DARAM和32塊4KWord的SARAM)、16KWord片上ROM、8MWord的最大擴展尋址能力。微控制器(MCU)選用TI公司的MSP430F149,主要完成系統啟動,電源管理,狀態監控,DSP程序加載,聲碼器二進制碼流位置重排等功能,并和DSP配合實現系統級加密機制。另外,硬件平臺的音頻編解碼芯片選用TLV320AIC10,而程序存儲部分采用的是SST39VF160 Flash,容量為1MWord,用來儲存程序和數據。本硬件平臺的框架結構圖如圖2所示。
  
  圖2 多速率語音編解碼系統硬件平臺框架結構圖
  4 低功耗設計
  在數字集成電路設計中,CMOS電路的靜態功耗很低,與其動態功耗相比基本可以忽略不計,故暫不考慮。其動態功耗計算公式為:
  ?  (1)
  式中Pd為CMOS芯片的動態功耗;CT為CMOS芯片的負載電容;V為CMOS芯片的工作電壓;f為CMOS芯片的工作頻率。本硬件平臺的低功耗設計從選用有可變電壓和多電壓的器件、動態功耗管理、動態頻率控制三個方面入手。
  4.1 選用有可變電壓和多電壓的器件
  首先在文中的系統中,選用的單片機芯片TI公司的MSP430系列MCU是一款功耗相當低的器件,供電電壓1.8V~3.6V,運行模式下功耗280μA/MHz,待機模式下功耗1.6μA/MHz,禁用模式下功耗0.1μA/MHz。其次選用的DSP芯片TI的C5510 DSP采用兩種驅動電壓,內核電壓1.6V,I/O電壓3.3V,根據(1)式,IC器件的功耗和供電電壓的平方成正比,1.6V供電的器件比3.3V供電器件能降低一半以上的功耗。IC設計中通常都將降低電壓作為控制功耗的最直接的手段,通過采用低電壓供電的DSP,既能有效地降低內核動態功耗,還能兼顧I/O的電平兼容性。
  4.2動態功耗管理
  PCM編解碼芯片TLV320AIC11可以單獨將A/D或D/A部分禁用。當話筒PTT沒有按下時,表示沒有話音輸入,此時可以將A/D部分置為IDLE狀態。同樣的,當MODEM的CD信號為高時,表示沒有有效的數字碼流輸入聲碼器,故在此時可以將D/A部分設為IDLE狀態。通過將該芯片配置成低功耗模式,降低了系統的功耗。另外,C5510 DSP芯片內部劃出了五個獨立的IDLE域,分別負責CPUDMA、CACHE、外設、時鐘生成器、EMIF接口的配置。每個域可以獨立地將該域管轄的多個部件設置成活動模式或IDLE模式以此降低DSP的功耗。針對本文設計,由于沒有使用到DMA、CACHE、時鐘生成器三個域中的外設,故將這三個域設置成了IDLE模式。EMIF域在DSP和MSP交換數據(為了調整發送和接收的比特流)時才被置為活動,其他時候被置為IDLE。通過這樣的設置,更加有效地控制了整個系統的運算功耗。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1DC電源插座圖紙
  2. 0.67 MB   |  2次下載  |  免費
  3. 2AN158 GD32VW553 Wi-Fi開發指南
  4. 1.51MB   |  2次下載  |  免費
  5. 3AN148 GD32VW553射頻硬件開發指南
  6. 2.07MB   |  1次下載  |  免費
  7. 4AN111-LTC3219用戶指南
  8. 84.32KB   |  次下載  |  免費
  9. 5AN153-用于電源系統管理的Linduino
  10. 1.38MB   |  次下載  |  免費
  11. 6AN-283: Σ-Δ型ADC和DAC[中文版]
  12. 677.86KB   |  次下載  |  免費
  13. 7SM2018E 支持可控硅調光線性恒流控制芯片
  14. 402.24 KB  |  次下載  |  免費
  15. 8AN-1308: 電流檢測放大器共模階躍響應
  16. 545.42KB   |  次下載  |  免費

本月

  1. 1ADI高性能電源管理解決方案
  2. 2.43 MB   |  450次下載  |  免費
  3. 2免費開源CC3D飛控資料(電路圖&PCB源文件、BOM、
  4. 5.67 MB   |  138次下載  |  1 積分
  5. 3基于STM32單片機智能手環心率計步器體溫顯示設計
  6. 0.10 MB   |  130次下載  |  免費
  7. 4使用單片機實現七人表決器的程序和仿真資料免費下載
  8. 2.96 MB   |  44次下載  |  免費
  9. 53314A函數發生器維修手冊
  10. 16.30 MB   |  31次下載  |  免費
  11. 6美的電磁爐維修手冊大全
  12. 1.56 MB   |  24次下載  |  5 積分
  13. 7如何正確測試電源的紋波
  14. 0.36 MB   |  17次下載  |  免費
  15. 8感應筆電路圖
  16. 0.06 MB   |  10次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935121次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420062次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233088次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183335次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73810次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65988次下載  |  10 積分
金赞百家乐现金网| 镇平县| 巴厘岛百家乐官网娱乐城| 大发888大赢家| 百家乐官网博乐城| 大发888刮刮了下载| 百家乐官网龙虎| 大发888出纳| 澳门百家乐官网然后赢| 大发888下载亚洲城| 百家乐官网资深 | 百家乐官网冲动| 大发888娱乐场168| 赌王百家乐官网的玩法技巧和规则| 百家乐招商用语| 百家乐官网是怎样的| 百家乐庄闲排| 线上百家乐官网攻略| 大发888娱乐场18| 做生意的风水摆件| 体育| Bet百家乐娱乐城| 澳门百家乐官网必胜看| 仙桃市| 足球百家乐系统| 百家乐官网澳门赌| 188比分| 百家乐薯片| 百家乐官网算牌方| 皇冠网遮天小说| 兰桂坊百家乐的玩法技巧和规则| 百家乐官网追注法| 顶旺国际| 诺贝尔百家乐的玩法技巧和规则 | 大发888娱乐城17| 帝王百家乐官网的玩法技巧和规则 | 优博娱乐网| 百家乐投注方法| 尊龙百家乐官网娱乐网| 万博88真人娱乐城| 威尼斯人娱乐城代理加盟|