日韩欧美国产极速不卡一区,国产手机视频在线观看尤物,国产亚洲欧美日韩蜜芽一区,亚洲精品国产免费,亚洲二区三区无码中文,A大片亚洲AV无码一区二区三区,日韩国语国产无码123

您好,歡迎來到維庫電子市場網(wǎng) 登錄 | 免費(fèi)注冊

語音編碼�
閱讀�7134時間�2010-11-15 14:21:27

  語音編碼�是基于語音編碼技�(shù)基礎(chǔ)上研�(fā)的一種儀�,因為在很大程度上,語音編碼決定收到的語音質(zhì)量和系統(tǒng)�(nèi)��

類別

  語音編碼器方法歸納起來可以分成三大類:波形編�、信源編碼、混合編��

  1.波形編�

  波形編碼比較簡單,編碼前采樣定理對模擬語音信號�(jìn)行量�,然后�(jìn)行幅度量�,再�(jìn)行二�(jìn)制編�。解碼器作數(shù)/模變換后再由低通濾波器恢復(fù)出現(xiàn)原始的模擬語音波�,這就是最簡單的脈沖編碼調(diào)制(PCM),也稱為線性PCM。可以通過非線性量�,前后樣值的差分、自適應(yīng)�(yù)測等方法實現(xiàn)�(shù)�(jù)壓縮。波形編碼的目標(biāo)是讓解碼器恢�(fù)出的模擬信號在波形上盡量與編碼前原始波形相一�,也即失真要最�。波形編碼的方法簡單,數(shù)碼率較高,在64kbit/s�32kbit/s之間音質(zhì)�(yōu)�,當(dāng)�(shù)碼率低于32kbit/s的時候音�(zhì)明顯降低�16 kbit/s時音�(zhì)非常��

  2.信源編�

  信源編碼又稱為聲碼器,是根據(jù)人的�(fā)生機(jī)�,在編碼端對語音信號�(jìn)行分析,分解成有聲音和無聲音兩部�。聲碼器每隔一定時間分析一次語�,傳送一次分析的的道德有/無聲和濾波參數(shù)。在解碼端根�(jù)接收的參�(shù)再合成聲音。聲碼器編碼后的碼率可以做得很低,如1.2kbit/s�2.4kbit/s,但是也有其缺點。首先是合成語音�(zhì)量較�,往往清晰度可以而自然度沒有,難于辨�(rèn)說話人是�,其次是�(fù)雜度比較��

  3.混合編�

  混合編碼是將波形編碼和聲碼器的原理結(jié)合起來,�(shù)碼率約在4kbit/s�16kbit/s之間,音�(zhì)比較好,最近有個別算法所取得的音�(zhì)可與波形編碼相當(dāng),復(fù)雜程度介乎與波形編碼器和聲碼器之��

  上述的三大語音編碼方案還可以分成許多不同的編碼方案�

  語音編碼屬性可以分為四�,分別是比特速率,時�、復(fù)雜性和�(zhì)�。比特律是語音編碼很重要的一方面。比特速率的范圍可以是從保密的電話通信�2.4kbit/s�64kbit/s的G.711PCM編碼和G.722寬帶�7KHz)語音編碼器�

功能

  語音編碼器的功能主要就是把用戶語音的PCM(脈沖編碼�(diào)�)樣值編碼成少量的比�(幀)。這種方法使得語音在連路�(chǎn)生誤�、網(wǎng)�(luò)抖動和突�(fā)傳輸時具有健壯�(Robustness)。在接收端的時�,語音幀先被誤碼為PCM語音樣�,然后再轉(zhuǎn)換成語音波形�

TD-SCDMA系統(tǒng)中AMR實現(xiàn)

  在語音編碼領(lǐng)域中,隨著傳輸、處�、存儲等各種信息量的巨增,信息的壓縮處理已成為迫切的要求,基于新的網(wǎng)�(luò)和新的要�,無論是從節(jié)省傳輸頻帶資�,還是保持線路通信的高效率等方面來�,研究采用各種可變速率語音編碼技�(shù)的系�(tǒng)都有重要意義。目前為了適�(yīng)此需要提出了AMR(adaptivemulti-rate)概�,即自適�(yīng)話音編碼�。基于帶寬的考慮可分為AMR� NB(AMRNarrowband)和AMR-WB(AMRwideband�。對于AMR-NB,語音通道帶寬限制�3�7 MHz,采樣頻率為8 kHz,而AMR-WB�7 MHz的帶�,采樣頻率為16 kHz,但考慮語音的短時相�(guān)�,每幀長度均為20 ms。�2種編碼器根據(jù)帶寬的要求雖然選用了不同的速率,但有異曲同�之處,以下著重介紹在TD-SCDMA中AMR-NB的實�(xiàn)。此編碼器運(yùn)用了代數(shù)碼本線性預(yù)測(ACELP)混合編碼方�,也就是�(shù)字語音信號中既包括若干語音特征參�(shù)又包括部分波形編碼信�,再�(yùn)用這些特征信息重新合成語音信號的過�??刂七@些參�(shù)的提取數(shù)目,根據(jù)速率要求對信息�(jìn)行取舍而得到了以下8種速率,混合組成如�1所示的自適�(yīng)語音編碼�。表1中模式AMR�12�20就提取出244比特的參�(shù)信息,而模式AMR�4�70卻只提取�95比特信息。根�(jù)這些比特所含的信息量可以將其分�3類比特class 0�1�2。在信道編碼時class0�1都將會使用循�(huán)冗余校驗碼�(jìn)行差錯檢�,對于class 2則根�(jù)上一幀�(jìn)行恢�(fù)�

  語音編碼或語音壓縮編碼研究的基本問題,就是在給定編碼速率的條件下,如何能得到盡量好的重建語音�(zhì)量。主觀評定方法符合人類聽話時對語音�(zhì)量的感覺得到了廣泛應(yīng)�。常用的方法有平均得分意見(mean opinion score,簡稱MOS)判定法,表2說明了AMR話音編碼器各模式的話音質(zhì)��

AMR話音編碼器各模式的話音質(zhì)量

  1 AMR模式選擇的自適應(yīng)�(jī)�

  自適�(yīng)的基本概念是以更加智能的方式解決信源和信道編碼的速率分配問題,使得無線資源的配置和利用更加靈活和高效。實際的語音編碼速率取決于信道的條件,它是信道質(zhì)量的函數(shù)。而這部分的工作是解碼器根據(jù)噪聲等測量參�(shù)�(xié)助基站來完成�,選擇模式,決定速率快慢。原則上在信道很差的時候采用速率比較低的編碼�,這樣就能分配給信道編碼更多的比特�(shù)來實�(xiàn)糾錯,實�(xiàn)更可靠的差錯控制,從而有效地抑制錯誤�(fā)生,提高話音�(zhì)量[1��

  在TD-SCDMA系統(tǒng)實現(xiàn)方面為了便于量化比較而采用了C/I(載干比)這一概念,取其滑動平均�,再將此值與一�(yù)先定義好的門限值�(jìn)行比�,來決定速率的選�。由于不同的特�,全速率信道和半速率信道就應(yīng)有不同的定義�。在全速率信道,當(dāng)C/I�13�,MR122的MOS值可以達(dá)�4以上,可以提供很好的性能�9≤C/I�13�,MR122、MR102、MR795都是可以選擇的,速率越低,誤幀率越低;�(dāng)6≤C/I�9�,選擇MR74� MR67、MR59;而當(dāng)C/I�6時就�(yīng)盡量選擇越低的速率,隨著信道質(zhì)量的下降,誤幀率都會增�,但相對選擇的速率低,就能提供相對較好的話音質(zhì)�。對于半速率信道,與上述類似,不再累�。下面�(jìn)一步說明自適應(yīng)速率選擇的實�(xiàn)過程。圖1是完整的說明�。自適應(yīng)要求�2類信息需要傳輸:在下行信道上,需要基站發(fā)送給移動�1模式選擇測量命令,而在上行信道�,移動臺將信道測量信息傳送給基站。這種模式要求傳送信息準(zhǔn)�、可靠、及�,才能有效達(dá)到自適應(yīng)的目�。基站每幀�(fā)�1測量命令,得到返回信息,通過比較選擇,選�1模式用于下一幀。這樣就可以實�(xiàn)速率間的�(zhuǎn)�,達(dá)到自適應(yīng)的目�,在速率間的切換會有一定功率損耗,并且不同速率間的� 耗是不同�,這是在實�(xiàn)過程中應(yīng)該考慮的[2�3��

自適應(yīng)過程實現(xiàn)框圖

  2 AMR編碼器算�

  AMR編碼器算法是基于代數(shù)碼本線性預(yù)測(ACELP)的混合編碼算法�4�5�?;驹硎窃颊Z音按幀輸入,根�(jù)使合成語音與原始語音的加�(quán)均方誤差最小的�(zhǔn)�,從隨機(jī)碼本和固定碼本中挑選合適的碼矢以代替殘差信號,并將碼矢地址和增益及各濾波器的參�(shù)量化編碼后傳送到接收端;接收端恢�(fù)各濾波器�,采用與�(fā)送端相同的碼�,按照碼矢地址找到該碼矢乘上增�,激勵合成濾波器,得到合成語�。在編碼部分需要抽取下列典型參�(shù):線性預(yù)測濾波器系數(shù)(LP),自適�(yīng)碼本(ACB)和固定碼本(FCB)索引以�2種碼本的增益� 見圖2�。下面將分別從編碼和解碼 的角度闡述AMR編解碼方案�

AMR編碼原理

 ?�?)線性預(yù)測計�。LPC濾波器表征語音信號發(fā)生模型中的聲道模�,圖2�其中,A(z)為聲道傳輸函數(shù),ai隨語音幀的變化不斷改變(ai具有短時�(wěn)定性)。因此,在每個語音幀�,需要提取LPC系數(shù)。按其預(yù)測值與實際值最� 化均方誤差原則,可得下式�

  上述正則方程�6]采用Durbin算法�(jìn)行線性預(yù)測便可得到參�(shù)ak。考慮到線譜頻率(LSF)誤差的相對獨立性及有序有界性質(zhì),與線性預(yù)測參�(shù)(LP)是一一對應(yīng)的,采用Chebyshev多項式估計方法是可以相互�(zhuǎn)換的,因此在考慮傳輸時用LSF參數(shù)代替LP參數(shù),將其�(jìn)行矢量量化,在解碼部分再對LP�(jìn)行恢�(fù)。在12�2 kbit/s模式下采用分裂矩陣(SMQ)的方式�(jìn)行矢量量化,在其它模式下采用分裂矢量(SVQ)的方式�(jìn)行矢量量�。由于在12�2kbit/s中,每一幀需要�(jìn)�2次線性預(yù)測編碼(LPC)分析,所以會得到2組LSF系數(shù)。AMR在TD-SCDMA系統(tǒng)的具體實�(xiàn)過程中將�2組系�(shù)�(jìn)行聯(lián)合量化。也就是將矩陣(r�1�,r�2))分為5�2×2的子陣,分別�(jìn)行矢量量�,維�(shù)�4,碼本容量分別為128(子�1��64(子�5),256(子� 2�3�4),失真  測度選擇計算量最小也有主觀評價意義的歐式距�,在碼本搜索過程中采用了全搜索算法。同�,對于其它的編碼速率,有相同的思路和操作步�,的差別就是對LSF矢量的子陣劃�,它們的劃分方法是采用維�(shù)�3�3�4�3個子陣(子矢量)�

 ?�?)碼本搜索[4]。TD� SCDMA系統(tǒng)�,AMR自適�(yīng)碼本搜索和代�(shù)碼本搜索是語音合成的�(guān)�,它們都是在子幀的基�(chǔ)上完成的,其�,每個子幀長為5 ms,對�(yīng)4個樣點。自適應(yīng)碼本表征語音信號�(fā)生模型中的周期性結(jié)�(gòu),自適應(yīng)碼本搜索通過一個長時預(yù)測濾波器(LTP),去除信號中存在的長時相關(guān),使殘差信號頻譜更加平坦,以便于形成白噪聲激勵信�,同時提取基音延遲和對應(yīng)的基音增�。再�(jīng)過基音開�(huán)和閉�(huán)分析得到�?jǐn)?shù)基音延遲決定�,自適應(yīng)碼本矢量v (n)通過在的整數(shù)延遲kopt和相位(�?jǐn)?shù)延遲)t處內(nèi)插就得到

  代數(shù)碼本表示語音信號�(fā)生模型中的隨�(jī)信號,根�(jù)感覺加權(quán)均方誤差最小的原則,最終獲得[2�。代�(shù)碼本�(jié)�(gòu)是基于交織單脈沖序列(ISPP)的,其脈沖幅度和位置的取值都要受到一定的限制以滿足一定的代數(shù)�(jié)�(gòu)和比特分配要�,對于不同速率,脈沖位置和個數(shù)都選擇不�。而且在系�(tǒng)中,碼本�(shè)計上改�(jìn)了以前的高斯隨機(jī)碼本�(jié)�(gòu),構(gòu)造了中心削波的重疊碼�。經(jīng)稀疏后,碼本中就會�(chǎn)�90%的零�。這樣是可以簡化搜索過程的。通過化下式可?�,d=Htx2表示目標(biāo)信號x2(n)和沖激響應(yīng)h′w(n)之間的相關(guān)�。在得到以上參數(shù)�,AMR中系�(tǒng)總共�(shè)計了3種量化器。AMR�12�2代數(shù)碼本增益的量化是采用6比特�(biāo)量量化器,AMR �4�75是將自適�(yīng)碼本增益和代�(shù)碼本增益�(jìn)行聯(lián)合量�,而對于其他速率則是按原始語音與合成語音的加�(quán)誤差最小找出目�(biāo)矢量。由于考慮多速率的公用,所以碼本容量較�,這與其他編碼器是不同��

 ?�?)AMR解碼原理。解碼器分為3大部分:譯碼部分、語音合成和后濾泀在解碼器輸入端,從接收的比特流中獲得LSP矢量、自適應(yīng)碼本和代�(shù)碼本參數(shù)(索引和增益)等。LSP線譜對參�(shù)還需要轉(zhuǎn)化為線性預(yù)測濾波器系數(shù),再根據(jù)LP系數(shù)�(nèi)插得到各子幀的合成濾波器系數(shù)。激勵矢量由自適�(yīng)碼本和代�(shù)碼本�(jīng)各自的增益加�(quán)后獲得,將激勵矢量輸入合成濾波器得到重建的語音信�。,重建的語音信號還需要經(jīng)過后濾波處理。ACELP編碼器編碼的語音可看成是包含了高斯噪聲的原始語音。使用后濾波可以減少合成語音中包含的噪聲信號,從而有效地提高合成語音的語音質(zhì)�。后處理包括兩部分功能:自適�(yīng)后濾波和信號放大。自適應(yīng)增益控制用于�(bǔ)償合成語音和�(jīng)過后濾波的合成語音之間的失真。將信號通過以下濾波�,就可得到修正的后濾波合成語��

  3 �(jié)束語

  AMR的提出能提供高質(zhì)量的語音,增�(qiáng)抗信道誤差的能力,通過低編碼速率靈活配置提高了系�(tǒng)容量,編碼速率根據(jù)無線�(huán)境和本地容量需求動�(tài)選擇不同模式。筆者圍繞AMR語音編碼算法�(jìn)行分析和研究。該算法已在TI公司的TMS320 C5510DSP上采用定點C語音和匯編語言的混合編程實�(xiàn),并用于TD-SCDMA系統(tǒng)�,運(yùn)算量能降低到20 MIPS左右,通過在TD-SCDMA系統(tǒng)的硬件平臺上自環(huán)測試,可得到良好的通話語音�(zhì)�,結(jié)果是很理想的�

基于uC/OS-II的低速率系統(tǒng)�(shè)�

  隨著�(shù)字信號處理技�(shù)的發(fā)�,越來越多的�(yīng)用于各行各業(yè)。但�,以往多數(shù)的DSP系統(tǒng)是基于流程圖的設(shè)計方法,該方法設(shè)計的程序�(wěn)定性不�,流程中任意一個環(huán)節(jié)出錯都將�(dǎo)致系�(tǒng)崩潰甚至死機(jī)。使用RTOS將對系統(tǒng)的穩(wěn)定性有很大的改�。使�(yīng)用模塊化,可極大提高程序的可讀�、可�(kuò)展性和可移植性�

  TI公司的定點DSP處理芯片TMS320C54X是目前應(yīng)用比較廣泛的一種DSP芯片,具有功耗低、運(yùn)行速度快等�(yōu)點,適合低速率語音編碼的應(yīng)��

  uC/OS-II是一種免�(fèi)�(yīng)且源代碼公開的實時內(nèi)�,經(jīng)過多年的實際�(yīng)�,顯示出�(qiáng)大的功能和巨大的商業(yè)價值。本文實�(xiàn)了uC/OS-II在TMS320C54X上的移植,并提出了在uC/OS-II的平臺上的低速率語音編碼器的系統(tǒng)�(shè)計方��

  uC/OS-II在TMS320C54X上的移植

  要實�(xiàn)uC/OS-II的移�,主要改寫以下三個文�

  OS[_]CPU.H文件

  包括定義�(shù)�(jù)類型、代碼值界區(qū)的中斷控�、堆棧增長方向變量、任�(wù)切換函數(shù)定義和變量聲�。TMS320C54X中的堆棧�(shù)�(jù)類型�16�,定義為�

  typedef unsigned int OS[_]STK

  在TMS320C54X中所有的堆棧都必須用OS[_]STK聲明�

  RTOS在�(jìn)入系�(tǒng)臨界區(qū)之前必須�(guān)閉中�,退出臨界區(qū)后再打開中斷。uC/OS-II定義了兩個宏來關(guān)�/打開中斷:OS[_]ENTER[_]CRITICAL()和OS[_]EXIT[_]CRITICAL()�

  用OS[_]STK[_]GROWTH來設(shè)�,OS[_]STK[_]GROWTH�0表示堆棧從低地址向高地址遞增;OS[_]STK[_]GROWTH�1表示堆棧從高向低地址遞減,TMS320C54X中,堆棧地址是由高向低遞減的�

  在uC/OS-II中,OS[_]TASK[_]SW()用來實現(xiàn)任務(wù)切換。OS[_]TASK[_]SW()函數(shù)模擬一次中斷過�,在中斷返回時�(jìn)行任�(wù)切換�

  另外,還聲明了一�8位變�,用來調(diào)用DOS的時鐘節(jié)拍函�(shù),在TMS320C54X中應(yīng)該屏蔽掉�

  OS[_]CPU[_]A.ASM文件

  在此文件�,需改寫函數(shù):OSStartHighRdy()、OSCtxSw()、OSIntCtxSw()�

  OSStartHighRdy(0)函數(shù)由Sstart()函數(shù)�(diào)�,功能是�(yùn)行優(yōu)先級的就緒任�(wù)。其過程為:獲得�(yōu)先級任務(wù)的TCB地址→設(shè)置堆棧指針→恢復(fù)任務(wù)�(huán)境→中斷返回→運(yùn)行新任務(wù)。在TMS320C54X中實�(xiàn)如程序列�1,其�,CONTEXT[_]RESTORE是將C54X中的寄存器出棧的宏定�,在此不再詳��

  OSCtxSw()函數(shù)是一個任�(wù)級的任務(wù)切換函數(shù)。軟中斷向量指向此函�(shù)。在uC/OS-II�,如果任�(wù)�(diào)用了某個函�(shù),而該函數(shù)的執(zhí)行結(jié)果可能造成系統(tǒng)任務(wù)的重新調(diào)�,則在函�(shù)的末尾會�(diào)用OSSched()。OSSched()查找�(dāng)前就緒優(yōu)先級任務(wù),如果不是當(dāng)前任�(wù),則找到該任�(wù)TCB的地址,并拷貝到變量OSTCBHighRdy�,然后通過宏OS[_]TASK[_]SW()�(zhí)行軟中斷�(diào)用OSCtxSw()�(jìn)行任�(wù)切換。變量OSTCBCur始終包含指向�(dāng)前運(yùn)行任�(wù)TCB的指�。在TMS320C54X中實�(xiàn)如程序列�2�

  OSIntCtxSw()函數(shù)與OSCtxSw()函數(shù)類似,不同的�,OSIntCtxSw()函數(shù)�(jìn)行中斷級任務(wù)切換。中斷可能引起任�(wù)切換,在中斷服務(wù)程序的會�(diào)用OSIntExit()函數(shù)檢查任務(wù)就緒狀�(tài),如果需要�(jìn)行任�(wù)切換,則�(diào)用OSIntCtxSw()。值得注意的是,產(chǎn)生中斷后,CPU寄存器會自動被保�,所以,在此函數(shù)中不再�(jìn)行環(huán)境保�。在TMS320C54X中實�(xiàn)如程序列�3�

  OS[_]CPU[_]C.C文件

  在此文件�,只需修改OSTaskStkInit()函數(shù)。OSTaskStkInit()由任�(wù)�(chuàng)建函�(shù)OSTaskCreate()或OSTaskCreateExt()�(diào)用,用來初始化任�(wù)的堆�。OSTaskStkInit()與調(diào)用它的函�(shù)有三個參�(shù)�(jìn)行傳遞:任務(wù)代碼起始地址(task),參�(shù)指針(pdata),任�(wù)堆棧�?shù)�?ptos)。為提高代碼效率,此函數(shù)用匯編語言改寫,在TMS320C54X中實�(xiàn)如程序列�4�(程序列表1~4,均見本刊網(wǎng)� https://www.eaw.com.cn)

  基于uC/OS-II的低速率語音編碼器系�(tǒng)�(shè)�

  本系�(tǒng)�,低速率語音編碼器的功能有語音編碼、語音解�、回波抵�、模擬接�、數(shù)字接口等。另�,為提高系統(tǒng)的穩(wěn)定�,增加了空閑任務(wù)和監(jiān)視任�(wù)。系�(tǒng)�(jié)�(gòu)如圖1所��

  系統(tǒng)由里向外分為三層:操作系�(tǒng)層、任�(wù)�、硬件層�

  硬件層設(shè)�

  硬件層設(shè)計主要包括串口和HPI�,用于接�(�(fā)�)語音信號和信道上的數(shù)�(jù)�

  任務(wù)層設(shè)�

  本系�(tǒng)中共有七個任�(wù),其�(yōu)先級從高到低依次為:�(jiān)控任�(wù)、模擬接口任�(wù)、數(shù)字接口任�(wù)、回波抵消任�(wù)、編碼任�(wù)、解碼任�(wù)、Idle任務(wù)。各任務(wù)的狀�(tài)�4種,即等待態(tài)和掛起態(tài)、就緒態(tài)、運(yùn)行態(tài)以及中斷�(tài),狀�(tài)的轉(zhuǎn)換關(guān)系如�2所��

  �(jiān)視任�(wù)�(shè)計思路為:被監(jiān)視任�(wù)正常�(yùn)行時其執(zhí)行時間是可預(yù)估的,被�(jiān)視任�(wù)在其即將�(yùn)行完畢時向監(jiān)視任�(wù)�(fā)送消息說明自身運(yùn)行正�。被�(jiān)視任�(wù)�(yùn)行時,監(jiān)視任�(wù)處于等待�(tài),等待被�(jiān)視任�(wù)給它�(fā)送消�,等待時間被�(shè)定為�(yù)計的任務(wù)正常�(yùn)行所需的時�。若等待時間�(nèi)�(jiān)視任�(wù)收到消息,則�(rèn)為發(fā)送消息的任務(wù)�(yùn)行正常,依照各任�(wù)�(zhí)行順序的先后下一任務(wù)開始�(yùn)�,監(jiān)視任�(wù)等待下一任務(wù)�(fā)送的消息。若等待時間已過,監(jiān)視任�(wù)仍未收到消息,則系統(tǒng)的時間管理函�(shù)將強(qiáng)行把�(jiān)視任�(wù)視為就緒�(tài)。因�(jiān)視任�(wù)的優(yōu)先權(quán)是的,它將搶占對CPU的控制權(quán)并采取相�(yīng)的糾錯方��

  操作系統(tǒng)層設(shè)�

  在應(yīng)用中,各個任�(wù)之間都有�(shù)�(jù)要交�,本�(shè)計中采用消息�(jī)制實�(xiàn)任務(wù)間通信。編碼任�(wù)需要模擬接口任�(wù)�(fā)送的消息,以接收用于編碼的語音數(shù)�(jù);數(shù)字接口任�(wù)需要編碼任�(wù)�(fā)送的消息,以接收用于�(fā)往信道的編碼數(shù)�(jù);解碼任�(wù)需要數(shù)字接口任�(wù)�(fā)來的消息,以接收來自信道的用于解碼的解碼�;模擬接口任�(wù)需要解碼任�(wù)�(fā)來的消息,以接收用于D/A�(zhuǎn)換的�(shù)字語音信�?;夭ǖ窒�?wù)需要等待的消息來自模擬接口任務(wù)和解碼任�(wù)。監(jiān)控任�(wù)接收所有其任務(wù)�(fā)來的消息,確�(rèn)系統(tǒng)是否正常�(yùn)行�

  在運(yùn)行過程中,操作系�(tǒng)對各任務(wù)�(jìn)行調(diào)�。其動作為:

  系統(tǒng)啟動�,建立所有的任務(wù),除回波抵消任務(wù)�,都處于就緒�(tài)�

  此時,監(jiān)控任�(wù)�(yōu)先級,查詢消息隊列,沒有消息的到�,轉(zhuǎn)為等待態(tài)�

  模擬接口任務(wù)�(yùn)行,接收/�(fā)送數(shù)�(jù),發(fā)�(shù)�(jù)給回波抵消任�(wù),并使回波抵消任�(wù)處于就緒�(tài);如條件�(dá)�(如幀�(shù)已夠),向編碼任務(wù)�(fā)消息,傳送數(shù)�(jù),運(yùn)行完畢,  自行�(jìn)入掛起態(tài),等待下一次串口中斷將其轉(zhuǎn)為就緒態(tài)�

  �(shù)字接口任�(wù)�(yùn)�,接�/�(fā)送數(shù)�(jù),如條件�(dá)�(如編碼字?jǐn)?shù)�),向解碼任務(wù)�(fā)消息,傳送數(shù)�(jù),運(yùn)行完�,自行�(jìn)入掛起態(tài),等待下一次串口中�(或HPI中斷)將其�(zhuǎn)為就緒態(tài)�

  如消息足�,回波抵消任�(wù)�(yùn)�,運(yùn)行完畢,自行處于掛起�(tài)�

  編碼任務(wù)�(yùn)�,如有模擬接口任�(wù)�(fā)來的消息,則�(yùn)�,編碼完�,向�(shù)字接口發(fā)消息;否�,處于等待態(tài)�

  解碼任務(wù)�(yùn)�,如有數(shù)字接口任�(wù)�(fā)來的消息,則�(yùn)�,解碼完畢,向模擬接口任�(wù)和回波抵消任�(wù)�(fā)消息;否則,處于等待�(tài)�

  在所有任�(wù)都執(zhí)行完畢后,Idle任務(wù)�(yùn)行�

  由于所有的任務(wù)都有�(yán)格的�(zhí)行時間限�,因�,上述的任務(wù)流程在正常情況下可以順利�(jìn)��

  否則,監(jiān)控任�(wù)會重啟系�(tǒng)�

  �(jié)�

  本文在TMS320C54X的硬件平臺上實現(xiàn)uC/OS-II,并針對傳統(tǒng)的系�(tǒng)�(shè)計方法設(shè)計的低速率語音編碼器穩(wěn)定性不佳的問題,提出了基于uC/OS-II的低速率語音編碼器系�(tǒng)�(shè)計的方案。由于低速率語音編碼器通常是單片的,內(nèi)部任�(wù)相對較少。使用實時內(nèi)核來管理這些任務(wù),會增加系統(tǒng)的內(nèi)存和CPU時間的消�,而任�(wù)�(diào)度的�(yōu)勢不能很好地顯示出來,該�(shè)計有一定局限�。但�,在系統(tǒng)的內(nèi)存足夠大、CPU�(yùn)行速度足夠快的情況下,使用實時�(nèi)核設(shè)計低速率語音編碼�,有利于系統(tǒng)的后繼開�(fā)�

GSM系統(tǒng)綜述

  信號處理�(nèi)核的�(fā)展促�(jìn)了GSM系統(tǒng)語音編解碼器的增�(qiáng)。目前更為密集的分析加合成方法已用于在常見的EFR 及AMR語音編碼器中,以在容量有限且容易出錯的空中接口上提供�(zhì)量的語音傳輸�

  以當(dāng)前對高速分組數(shù)�(jù)傳輸?shù)年P(guān)注程度,人們很容易忘記GSM�(shù)字電信系�(tǒng)的最初主要目的是傳輸語音。總的感覺是整個系�(tǒng)的復(fù)雜性與傳輸鏈路的管理有�(guān),但也有很大部分與麥克風(fēng)捕捉到的音頻壓縮與解壓縮�(fù)雜性有�(guān)�

  為滿足這一主要目的的需�,必須以足夠高的采樣及分辨率來捕獲語�,以清楚地再�(xiàn)原始聲音,并用一種可在比特率有限及容易出錯的無線傳輸信道上保持音頻高保真度的方式來壓縮語��

  這一需求很具體,其目的是傳輸語�,故載荷的頻率范圍及聲音�(zhì)量均為已知。人類聽覺系�(tǒng)的工作方式允許編碼器在手�(jī)耳機(jī)上產(chǎn)生出類似自然聲音的聽覺效�。GSM系統(tǒng)中所使用的語音編碼器的主要原理是對人類音域的�(shù)�(xué)建模,從而產(chǎn)生出一種用于傳輸語音的有效壓縮方法。術(shù)語“聲碼器”或“語音編碼器”專門用來描述這些專門�(zhí)行語音壓縮的系統(tǒng)�

  GSM系統(tǒng)對用于傳輸語音的信道具有一組固定的物理要求。首�,它具有22.8kbps的原始數(shù)�(jù)速率;其�,幀可以被“偷竊”以及用于信�,且語音編碼系統(tǒng)對這種情況必須很穩(wěn)�,盡管存在對可偷竊語音幀的頻率及時序的一定限制�

  信道容量與編�

  GSM物理層是FDMA與TDMA的組�。無線信道在整個GSM頻段被分成相�200kHz的多個信�,這些FDMA信道又被分成8個時�。GSM物理信道被定義為單個“無線頻率信道號�(ARFCN)上的單個時�--故每一頻率均可包含�8個獨立物理信��

  “猝�(fā)”是指GSM系統(tǒng)中的無線傳輸�,且包含以周�577(s�(fā)送的114位原始信�。由于語音流量信道傳�?shù)亩鄮Y(jié)�(gòu),故�26次猝�(fā)最多有24次可包含語音�(shù)�(jù)(其余2次猝�(fā)用于空閑周期或傳輸信令信�)。因此合計能給出22.8kbps的原始信道容量�

  原始信道容量是完美傳輸條件下的用戶數(shù)�(jù)(編碼語音)吞吐�。在真實世界�,無線傳輸并不穩(wěn)健而且需要為�(shù)�(jù)增加保護(hù)�

  增加冗余信息�,GSM系統(tǒng)中的全速率語音信道用于編碼語音的容量為13kbps�

  語音編解碼器

  如果�8 kHz采樣率及13位精度來對出自GSM蜂窩手機(jī)麥克�(fēng)的音頻數(shù)�(jù)�(jìn)行采�,則可得�104kbps的源�(shù)�(jù)速率。GSM系統(tǒng)中有四種編解碼器,分別執(zhí)行:全速率、增�(qiáng)型全速率(EFR)、自適應(yīng)多速率(AMR)及半速率語音壓縮。表1給出了一些聲碼器的參�(shù)比較�

  全速率

  全速率語音編解碼器是改良的線性預(yù)測編碼器(LPC),它將人類聲域建模成一系列不同寬度的圓柱體。通過迫使空氣通過這些柱體,即可產(chǎn)生語�。LPC編碼器用一組聯(lián)立方程來�(jìn)行建��

  �(biāo)�(zhǔn)LPC編碼器不能提供電話系�(tǒng)所需的話音質(zhì)�(雖能聽清語句,但很難或不可能分辨出說話的�)。GSM系統(tǒng)中采用兩種技�(shù)來提高LPC編碼器的�(zhì)�,即:長期預(yù)�(LTP)與規(guī)則脈沖激�(RPE),而全速率編解碼器就被稱為RPE-LTP線性預(yù)測編碼器�

  輸入至RPE-LTP編碼器的�(shù)�(jù)為包�160個采樣值的20ms語音,每一個采樣值都擁有13位精�。數(shù)�(jù)首先通過�(yù)加重濾波器來提高信號的高頻分�,以獲得更好的傳輸效�。濾波器一般還消除信號上的任何偏移以簡化�(jìn)一步的計算�

  正如前面所提到�,語音產(chǎn)生模型可看成是空氣通過一組不同大小的圓柱體。短期分析級采用自動相關(guān)來計算與模型所用的8個圓柱體有關(guān)�8個反射系�(shù),同時采用一種稱為Schur遞歸的技�(shù)來有效地求解所得到的方程組。參�(shù)被變換成可以更少的位�(shù)來�(jìn)行更佳量化的LAR(log-area ratio)。這些是傳輸流的前8個參�(shù)�

  然后再將編碼后的LAR解碼成系�(shù),并用來對輸入采樣值�(jìn)行濾�。解碼LAR的原因是為了確保編碼器使用解碼器上的相同信息來�(jìn)行濾�。這一級上的其余采樣值用于編解碼器的LTP級�

  160個采樣值被分成4個子窗口,每一個子窗口都擁�40個采樣值。長期預(yù)測器為每一子窗口產(chǎn)�2個參�(shù):滯后與增益。滯后由�(dāng)前幀與后兩幀之間的交叉相�(guān)峰值確�,而增益則由歸一化交叉相�(guān)系數(shù)決定。滯后與增益參數(shù)被應(yīng)用到長期濾波器上,同時對�(xiàn)有短期剩余信號�(jìn)行預(yù)��

  RPE級通過十取一及交錯將40個剩余采樣值轉(zhuǎn)換成13個參�(shù),并用APCM將所得出�13個值編�,其中值用對數(shù)編碼�6位,然后再將13個參�(shù)均表示成3�,總�45��

  一級是從計算出的長期剩余及分析信號來更新短期剩余信�,然后再用此�(shù)�(jù)來計算下一幀�

  增強(qiáng)型全速率

  全速率編解碼器是一種用來傳輸語音并在計算上相當(dāng)有效的方法,但通過使用更為密集的算�,語音質(zhì)量還能提�。全速率編解碼器首先�1990年代初的DSP上實�(xiàn),當(dāng)時在�(jīng)�(jì)上雖不能采用�(zhì)量更好的編碼器但卻是一種更為密集的算法�

  �1990年代�,功能更�(qiáng)的DSP�(nèi)核的可用性已不再是一個問題,因此增強(qiáng)型全速率編解碼器開始在手�(jī)中出�(xiàn)�

  EFR聲碼器是一種代�(shù)碼激勵線性預(yù)�(ACELP)編碼�,且不同于采用分析加合成方法的全速率系統(tǒng)。它計算雖更加密集但能在輸出端得到更為精確的�(jié)�。預(yù)處理級由80Hz高通濾波器及一些縮減電路組�,以使實�(xiàn)更為容易。每幀�(jìn)行兩次短期分�,由與兩�30mS(1.5個語音幀)、長度集中在不同子幀上的不同非對稱窗口自動關(guān)�(lián)。所得到的系�(shù)被變換成線譜�(line spectral pairs)并被量化�38位,以獲得更好的傳輸效率�

  同時�(zhí)行開�(huán)間隔(pitch)分析來計算每幀的間隔滯后估計值,然后再用此估計值啟動閉�(huán)搜索(以得出更快的�(jié)�)。再將所得到的閉�(huán)值應(yīng)用于合成器及與非量化輸入比較后的�(jié)果上(即分析加合成),最小的加權(quán)誤差從自適應(yīng)編碼�(codebook)上得出并被編碼成每子幀35��

  然后再用代數(shù)(固定) 編碼�、并再一次用分析加合成方法來對量化后余下的剩余信號�(jìn)行建模。所得到的編碼本增益被編碼成每子幀5��

  ,正如全速率聲碼器中一�,針對下一幀將存儲器刷新�

  EFR聲碼器的12.2kbps輸出等于每幀244�。但編碼語音是通過擁有260位容量的常規(guī)GSM全速率空中信道來傳�,其�16位被填以CRC以及重復(fù)一些用于冗余的最重要編解碼器參數(shù)�

  自適�(yīng)多速率

  �(dāng)全部參數(shù)均能解碼�,全速率及EFR編解碼器可實�(xiàn)良好的語音再�(xiàn)。由于傳輸信道的冗余(請記�,原始信道容量比�(shù)�(jù)載荷�10kbps),故許多原始位可以出錯且參數(shù)仍能恢復(fù)�

  但當(dāng)參數(shù)丟失或錯誤時,所接收信號的質(zhì)量將迅速下�(參見�3中的最右側(cè)黑色曲線)�

  這也是AMR編解碼器組所試圖解決的問題。通過指定8個全都共享公共數(shù)�(xué)算法的聲碼器�,可改變信道的冗余量。以此種方式,語音傳�?shù)馁|(zhì)量可能會由于降至更低的編碼速率上而稍微有所下降,但覆蓋編碼參數(shù)的信心則得以提高�

  �(jié)果是在載波干擾增加的情況下可獲得感覺更好的語音信號質(zhì)�(如圖3)�

  AMR編解碼器組由速率�12.2kbps�4.75kbps的ACELP聲碼器組�,故可提�87[%]�480[%]的冗�。在一種很糟的情況�,即全速率及EFR幀丟失很久后,4.75kbps編解碼器�(shù)�(jù)仍能恢復(fù)�

  半速率

  GSM所采用的空中接口允許使用兩個完全獨立的半速率子信道,故能使蜂窩單元的語音容量加�。半速率聲碼器采用矢量和激勵線性預(yù)(VSELP)編碼器,它以一種類似EFR及AMR編解碼器的分析加合成方式工作,速率�5.7kbps�

  半速率聲碼器的輸出幀包含用來指示幀聲音�(nèi)容的2個位。該聲碼器工作方式在每種模式下略微有些不�,故可獲得的音頻�(shù)�(jù)再現(xiàn)�(zhì)��

  人們對半速率語音的感覺普遍不�,所以今天一般不采用此項技�(shù)。但以其自適�(yīng)模式,AMR聲碼器的6種較低速率將適合半速率空中信道的可用容�,結(jié)果是采用帶AMR的半速率信道將在高流量領(lǐng)域變得更為普遍�

  非連續(xù)傳輸

  在典型的談話過程�,語音僅占總時間的大�40[%]。為減少對無線接口的干擾,可采用非連續(xù)傳輸(DTX),即移動電話僅在有語音信號時才�(jìn)行傳�。此功能要求有如下幾項內(nèi)�,即:語音活動檢�(VAD)、用于空中接口的靜寂描述�(SID)幀及舒適噪音產(chǎn)生等�

  為減少猝�(fā)傳輸?shù)目倳r間,語音解碼器必須能確定什么時候有語音。由于編碼的自然特性,可通過分析中間參數(shù)來精確確定是否有語音。重要的是要保證閾值合�,太靈敏會由于無線傳輸次�(shù)太多而對空中接口不利,而靈敏度不夠則會切斷語音并使聲音�(zhì)量嚴(yán)重下降�

  盡管在理論上VAD是實�(xiàn)DTX所需的全�,但來自接收器的完全靜寂降低整體感覺�(zhì)�。為解決此問�,接收器采用了“舒適噪音”功能,即利用SID幀參數(shù)的逐漸衰減來產(chǎn)生類似發(fā)射器背景噪音的聲��

  �(dāng)VAD確定沒有語音�,在空中接口上不�(jìn)行傳�(實際情況比這更�(fù)雜一�,但其基本原理一�)。經(jīng)過一段預(yù)定時間間隔后,再�(fā)送一個包含一組參�(shù)的SID幀,這些參數(shù)用于接收器舒適噪音產(chǎn)生功��

  實現(xiàn)

  語音編碼功能可解釋為像卷積這樣的數(shù)�(xué)密集型處�,在帶有處理這類計算指令(例如乘法-累加指令)的專用DSP上能得到實現(xiàn)。盡管這可以在通用處理器上實現(xiàn),但要求有更高數(shù)量級的時鐘速度來與同樣的執(zhí)行速度相匹��

  不同處理�(nèi)核中所實現(xiàn)的EFR及全速率聲碼器執(zhí)行速度不同。作為一種與時鐘速度有關(guān)的比較,DSP全速率實現(xiàn)的速度大約要比奔騰處理器實�(xiàn)的速度�3.5�,而經(jīng)徹底�(yōu)化后的SC140實現(xiàn)的速度要比奔騰處理器實�(xiàn)的速度整整�18��

  在語音編解碼器中采用了許多優(yōu)化技�(shù)。最初一般將�(shù)�(jù)偏移以使計算更加容易并能再利用存儲器空間。例�,用剩余濾波器寫入輸入陣列而不使用新存儲器空間�

  處理器可采用定制浮點實現(xiàn)來在�(nèi)核中提供浮點支持。這些實現(xiàn)不是位精確的,這意味著它們不能得出像定點參考實�(xiàn)一樣精確的�(shù)�(xué)�(jié)�。但通過軟硬件中針對這類�(shù)�(xué)算法的優(yōu)化,速度可明顯提�。而輸出參�(shù),當(dāng)被送入定點解碼器時,將�(chǎn)生感覺上一樣的聲音幀�

  測試位序�

  為檢驗依從�,ETSI頒布了一組全面的測試位序�。它們由輸入文件(160�13位采樣�)、編碼文�(通過解碼器的�(jié)�)、一些解碼文�(用于直接提供給解碼器)以及輸出文件(代表來自輸出�160個采樣�)組成�

  而像VAD及舒適噪音產(chǎn)生等額外功能,則用各種序列�(jìn)行隱含測�。同時也對不同輸入壓縮擴(kuò)展方�(A-law�(-law)�(jìn)行測��

  浮點實現(xiàn)一般不遵循ETSI位序列,但能�(chǎn)生一組感覺上與定點編碼器及解碼器相兼容的參數(shù)�

  對語音編碼器實現(xiàn)的定性評�,可用Racal儀器公司帶VQA的AIME系統(tǒng)來測�。這種系統(tǒng)允許建立原始流量信道(無需完全的GSM�(xié)議實�(xiàn)),且能執(zhí)行全速率的空中傳輸雙向語音編��

語音編碼器相�(guān)技�(shù)資料更多>>

維庫電子�,電子知識,一查百��

已收錄詞�160482