日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]ITU-TG.729算法及其實(shí)時(shí)實(shí)現(xiàn)

 G.729編解碼算法,實(shí)時(shí)實(shí)現(xiàn)的G.729系統(tǒng)的軟件設(shè)計(jì)和硬件設(shè)計(jì)。在ADSP-2181上實(shí)現(xiàn)的G.729編解碼器,已經(jīng)通過(guò)了ITU-T G.729的全部測(cè)試矢量,并且已經(jīng)在數(shù)字語(yǔ)音記錄儀和H.323網(wǎng)上多媒體通信系統(tǒng)中得到推廣應(yīng)用。

    關(guān)鍵詞: G.729協(xié)議 ADSP-2181 接口模塊 IDMA口

    G.729協(xié)議[1]是由ITU-T的第15研究小組提出的,并在1996年3月通過(guò)的8Kbps的語(yǔ)音編碼協(xié)議。

    G.729協(xié)議使用的算法是共軛結(jié)構(gòu)的算術(shù)碼本激勵(lì)線性預(yù)測(cè)(CS-ACELP),它基于CELP編碼模型[2]。由于G.729編解碼器具有很高的語(yǔ)音質(zhì)量和很低的延時(shí),被廣泛地應(yīng)用在數(shù)據(jù)通信的各個(gè)領(lǐng)域,如IP phone和H.323網(wǎng)上多媒體通信系統(tǒng)等。

    針對(duì)實(shí)時(shí)實(shí)現(xiàn)G.729的一些難點(diǎn),我們提出了解決的方法。目前,我們已經(jīng)在Analog Device的定點(diǎn)數(shù)字處理芯片adsp-2181上實(shí)時(shí)實(shí)現(xiàn)了符合ITU-T G.729編解碼器的全部功能,該編解碼器占用了22MIPS的運(yùn)算量。我們?cè)贏DSP-2181上實(shí)現(xiàn)的G.729編解碼器,已經(jīng)通過(guò)了ITU-T G729的全部測(cè)試矢量,并且已經(jīng)在數(shù)字語(yǔ)音記錄儀和H.323網(wǎng)上多媒體通信系統(tǒng)中進(jìn)行了推廣應(yīng)用。

    1 G.729協(xié)議編解碼算法介紹

    1.1 G.729編碼算法介紹

    電話線路上的模擬語(yǔ)音信號(hào),經(jīng)話路帶寬濾波(符合ITU-T G.712建議)后,被8kHz采樣,量化成16bit線性PCM數(shù)字信號(hào)輸入到編碼器。該編碼器是基于線性預(yù)測(cè)分析合成技術(shù),盡量減少實(shí)際語(yǔ)音與合成語(yǔ)音之間經(jīng)聽(tīng)覺(jué)加權(quán)后差分信號(hào)的能量為準(zhǔn)則來(lái)進(jìn)行編碼的。編碼器的結(jié)構(gòu)框圖如圖1所示,其主要部分有:

        ·線性預(yù)測(cè)分析和LPC系數(shù)的量化;

        ·開(kāi)環(huán)基音周期估計(jì);

        ·自適應(yīng)碼本搜索;

        ·固定碼本搜索;

        ·碼本增益量化。

    下面分別描述這五部分的主要技術(shù)。

        ·線性預(yù)測(cè)分析與LPC系數(shù)的量化

    首先對(duì)信號(hào)進(jìn)行加線性預(yù)測(cè)分析窗,分析窗由兩部分組成。第一部分是半個(gè)漢明窗,第二部分是四分之一個(gè)余弦信號(hào)。將加窗后的語(yǔ)音信號(hào)通過(guò)LevinsonDurbin算法獲得線性預(yù)測(cè)濾波器系數(shù)ai ?i=1......10。由于線譜對(duì)參數(shù)比線性預(yù)測(cè)系數(shù)具有更好的內(nèi)插特性和量化特性[3], G.729將LPC參數(shù)轉(zhuǎn)換成相應(yīng)的線

    譜對(duì)參數(shù),最后對(duì)線譜對(duì)參數(shù)進(jìn)行量化。

        ·開(kāi)環(huán)基音分析

    為了減少自適應(yīng)碼本搜索的復(fù)雜度,需要計(jì)算開(kāi)環(huán)基音Top,使自適應(yīng)碼本搜索在開(kāi)環(huán)基音值附近進(jìn)行?;糁档姆秶?8~145個(gè)樣本點(diǎn)之間。

        ·自適應(yīng)碼本搜索

    G.729對(duì)每個(gè)子幀進(jìn)行閉環(huán)基音搜索,它通過(guò)最小化原始語(yǔ)音信號(hào)和重構(gòu)語(yǔ)音信號(hào)的加權(quán)均方誤差來(lái)進(jìn)行閉環(huán)基音搜索。對(duì)子幀1的閉環(huán)基音T1的搜索是局限在開(kāi)環(huán)基音Top的一個(gè)小范圍內(nèi),對(duì)子幀2的閉環(huán)基音T2的搜索是局限在閉環(huán)基音T1的一個(gè)小范圍內(nèi)。這樣可以減少基音搜索的復(fù)雜度。

        ·固定碼本搜索

    G.729固定碼本矢量含有四個(gè)非0脈沖,每個(gè)脈沖的幅度要可以是+1或-1。通過(guò)最小化加權(quán)語(yǔ)音信號(hào)和加權(quán)重構(gòu)語(yǔ)音信號(hào)的均方誤差來(lái)進(jìn)行固定碼本的搜索。

        ·增益量化

    G.729對(duì)自適應(yīng)碼本增益和固定碼本增益采用二級(jí)共軛結(jié)構(gòu)碼本進(jìn)行矢量量化。在碼本搜索時(shí),采用預(yù)搜索策略,使得運(yùn)算量只為全搜索算法的1/4。

    1.2 G.729解碼算法介紹[!--empirenews.page--]

    G.729的解碼也是按幀進(jìn)行的,主要是對(duì)符合G.729協(xié)議的碼流進(jìn)行解碼,得到相應(yīng)的參數(shù),根據(jù)語(yǔ)音產(chǎn)生的機(jī)理,合成語(yǔ)音。解碼的方框圖如圖2所示,其主要部分為:參數(shù)解碼;后濾波處理。

    G.729解碼過(guò)程如下。

         ·參數(shù)解碼

    首先解碼得到線譜對(duì)參數(shù),并將線譜對(duì)參數(shù)轉(zhuǎn)換為線性預(yù)測(cè)系數(shù)。然后解碼出基音周期,獲得自適應(yīng)碼本矢量V(n)。解碼出固定碼本矢量的四個(gè)脈沖的位置和符號(hào),計(jì)算出固定碼本矢量c(n)。解碼出固定本預(yù)測(cè)增益gc和固定碼本增益,接著得到激勵(lì)信號(hào)

    ?,n=0……39。最后將激勵(lì)信號(hào)

    u(n)?輸入到線性預(yù)測(cè)合成濾波器中,計(jì)算出重構(gòu)語(yǔ)音。

        ·后濾波處理

    后濾波處理主要是自適應(yīng)后濾波。自適應(yīng)后置濾波器是由三個(gè)濾波器級(jí)連而成:長(zhǎng)時(shí)后置濾波器Hp(z),短時(shí)后置濾波器Hf(z),頻譜傾斜補(bǔ)償濾波器Ht(z),后面接著進(jìn)行一個(gè)自適應(yīng)增益控制過(guò)程。后置 濾波器的系數(shù)每一個(gè)子幀更新一次。后置濾波能夠有效地改善合成出的語(yǔ)音質(zhì)量。

    2 G.729編解碼器的實(shí)現(xiàn)

    我們?cè)贏nalog Device的定點(diǎn)數(shù)字處理芯片ADSP-2181[4][5]上實(shí)時(shí)實(shí)現(xiàn)了符合ITU-T G.729的全部功能,進(jìn)行編解碼總共用了22MIPS(ADSP-2181處理速度為33MIPS)。實(shí)時(shí)實(shí)現(xiàn)了G.729的編解碼功能,主要有以下的難點(diǎn)。

        ·數(shù)據(jù)在DSP中的安排。在DSP中只要是聲明的變量,DSP的連接程序就會(huì)分配數(shù)據(jù)空間。如果我們象C語(yǔ)言編程那樣定義局部變量,就會(huì)浪費(fèi)大量的存儲(chǔ)空間。

        ·數(shù)據(jù)精度的處理。在16位的定點(diǎn)信號(hào)處理芯片上實(shí)現(xiàn)一些浮點(diǎn)算法時(shí),為了使運(yùn)算速度加快,往往要針對(duì)定點(diǎn)芯片的特點(diǎn),用定點(diǎn)數(shù)來(lái)表示浮點(diǎn)數(shù)。雖然速度提高了,但是很可能導(dǎo)致運(yùn)算精度不夠。

        ·有限計(jì)算資源的利用。ADSP2181只有33MIPS,而且不能使所有的MIPS都用來(lái)實(shí)現(xiàn)G.729的編解碼功能。

        ·DSP高速運(yùn)行時(shí),DSP與主機(jī)的數(shù)據(jù)交互。

        ·語(yǔ)音信號(hào)和編解碼緩沖區(qū)的維護(hù)。這些緩沖區(qū)至少都有兩者要去存儲(chǔ),如語(yǔ)音信號(hào)緩沖區(qū), 一方面語(yǔ)音編碼模塊要調(diào)用,另一方面采集中斷程序也要調(diào)用它。而在語(yǔ)音編碼模塊調(diào)用的過(guò)程中,該緩沖區(qū)不應(yīng)該被其它模塊所改變,所以中斷程序不應(yīng)該此時(shí)去存儲(chǔ)這個(gè)緩沖區(qū),這就存在著矛盾。

    2.1 軟件設(shè)計(jì)

    軟件設(shè)計(jì)主要包括三個(gè)部分。

        · 命令解釋器

    命令解釋器主要是用于解釋主CPU發(fā)來(lái)的各種命令,如發(fā)送或接收編解碼數(shù)據(jù)、查詢編解碼狀態(tài)以及啟動(dòng)、停止編解碼操作等。該模塊不直接與主CPU打交道,而是通過(guò)接口功能模塊,間接實(shí)現(xiàn)與主CPU的數(shù)據(jù)信息交換。

        · G.729數(shù)據(jù)引擎

    我們?cè)贏DSP-2181上完成了G.729的實(shí)時(shí)編/解碼工作。

    ADSP-2181不僅包含了ADSP-2100系列的基本結(jié)構(gòu)(三個(gè)運(yùn)算單元、數(shù)據(jù)地址發(fā)生器和一個(gè)程序序列器),還含有兩個(gè)串行口、一個(gè)16位的內(nèi)部IDMA口,一個(gè)8位的BMDA口、一個(gè)可編程定時(shí)器、標(biāo)志輸入輸出(Flag I/O、外部中斷能力以及片內(nèi)程序和數(shù)據(jù)存儲(chǔ)器等周邊設(shè)備。ADSP-2181片內(nèi)集成了共80K字節(jié)的存儲(chǔ)器,它們分別是16K字(24bit)程序存儲(chǔ)器和16k字(16bit)的數(shù)據(jù)存儲(chǔ)器,大量的片內(nèi)存儲(chǔ)器使得復(fù)雜的G.729編解碼算法能夠全部放入ADSP-2181片內(nèi),無(wú)須增加任何的片外RAM,簡(jiǎn)化了硬件設(shè)計(jì)和接口。[!--empirenews.page--]

        · 接口功能模塊

    該模塊實(shí)現(xiàn)ADSP-2181與主CPU的數(shù)據(jù)實(shí)際交換工作。該模塊包括DSP的主控程序和數(shù)據(jù)傳輸兩部分。DSP的主控程序主要負(fù)責(zé)不斷將采集到的語(yǔ)音數(shù)據(jù)分幀,送入編碼器,并將接收到的碼流分類后送入解碼器模塊。數(shù)據(jù)傳輸部分負(fù)責(zé)采集數(shù)據(jù)和與主CPU的數(shù)據(jù)交換。

    2.2 硬件設(shè)計(jì)

    本系統(tǒng)考慮了各CPU之間的數(shù)據(jù)交換與協(xié)調(diào)等問(wèn)題。ADSP2181具有一個(gè)16位的IDMA

口,在處理器全速運(yùn)行的情況下,ADSP-2181可以自動(dòng)完成IDMA口的接收和發(fā)送數(shù)據(jù),這為系統(tǒng)的設(shè)計(jì)帶來(lái)了很大的便利。利用ADSP-2181的這個(gè)性質(zhì),我們通過(guò)IDMA口來(lái)實(shí)現(xiàn)ADSP-2181與主CPU的數(shù)據(jù)交互。

    我們?cè)O(shè)計(jì)了ADSP-2181與PC機(jī)ISA總線接口的主從系統(tǒng)。在這個(gè)主從系統(tǒng)中,PC機(jī)為主CPU,ADSP-2181為從CPU。在啟動(dòng)時(shí),由PC機(jī)通過(guò)IDMA口將程序裝載入ADSP-2181內(nèi)部存儲(chǔ)器中。在ADSP-2181全速運(yùn)行時(shí),主機(jī)可以查詢從機(jī)的運(yùn)行狀態(tài)、讀取壓縮后的G.729碼流,也可以送入待解碼的G.729碼流等。

    在該主從系統(tǒng)中,PC機(jī)通過(guò)ADSP-2181的IDMA口來(lái)讀寫它的內(nèi)部存儲(chǔ)器。PC總線通過(guò)GAL譯碼,形成,,,,IACK信號(hào),與ADSP-2181的IDMA口連接,這樣就實(shí)現(xiàn)了在ADSP-2181全速運(yùn)行的情況下,PC機(jī)仍能訪問(wèn)到ADSP-2181內(nèi)部存儲(chǔ)器。

    圖3是主從系統(tǒng)中的ADSP-2181功能與接口的框圖。語(yǔ)音信號(hào)由ADSP1847采集,通過(guò)ADSP-2181的串口0送入到ADSP-2181進(jìn)行編碼。編碼數(shù)據(jù)通過(guò)IDMA口送到主機(jī)進(jìn)行存儲(chǔ)。需要解碼的數(shù)據(jù)從主機(jī)由IDMA口送到ADSP-2181進(jìn)行解碼,解碼后獲得的語(yǔ)音信號(hào)通過(guò)串口0送至ADSP1847。

    2.3 難點(diǎn)的解決

    數(shù)據(jù)在DSP中的安排。維護(hù)好一張變量表,每次進(jìn)入一個(gè)模塊時(shí),首先使用已經(jīng)分配但暫時(shí)不用的變量。只在不夠的情形下,再去分配額外的變量,同時(shí)將這些新分配的變量計(jì)入到變量表中,供其它模塊使用。另外維護(hù)好一個(gè)局部變量堆棧,使得各個(gè)模塊的內(nèi)部局部變量分配在堆棧中,當(dāng)從該模塊退出時(shí),就從堆棧中彈出這些局部變量,釋放空間。

    數(shù)據(jù)精度的處理。對(duì)精度要求比較高的地方,將計(jì)算的中間變量采用32位來(lái)表示,運(yùn)算結(jié)束后,再轉(zhuǎn)換成16位表示,這樣指令條數(shù)增加不多,但精度卻大大提高了。在某些精度要求比較高的模塊,采用尾數(shù)和指數(shù)來(lái)表示浮點(diǎn)數(shù),自己編寫一套指數(shù)和尾數(shù)的運(yùn)算庫(kù),由于尾數(shù)和指數(shù)表示法有足夠大的精度范圍,完全滿足要求。但只能在少許地方采用這種方法,否則運(yùn)算量就會(huì)上去,給實(shí)時(shí)實(shí)現(xiàn)帶來(lái)困難。

    有限計(jì)算資源的利用。利用ADSP強(qiáng)大的多功能指令可以非常好地利用有限計(jì)算資源。

    DSJP高速運(yùn)行時(shí),DSP與主機(jī)的數(shù)據(jù)交互。由于ADSP-2181具有一個(gè)16位的IDMA口,在處理器全速運(yùn)行的情況下,ADSP-2181可以自動(dòng)完成IDMA口的接收和發(fā)送數(shù)據(jù),這為系統(tǒng)的設(shè)計(jì)帶來(lái)了很大的便利。利用ADSP-2181的這個(gè)性質(zhì),我們通過(guò)IDMA口來(lái)實(shí)現(xiàn)ADSP-2181與主CPU的數(shù)據(jù)交互。

    語(yǔ)音信號(hào)和編解碼緩沖區(qū)的維護(hù)。本系統(tǒng)的數(shù)據(jù)交互都是采用雙緩沖的工作方式。雙緩沖的好處在于數(shù)據(jù)的交互不會(huì)影響到其他工作的正常進(jìn)行。

    本系統(tǒng)的數(shù)據(jù)采集與播放采用雙緩沖的工作方式。采集時(shí)采用cod-ad和cod-work兩個(gè)緩沖區(qū),播放時(shí)采用decod-work和decod-work兩個(gè)緩沖區(qū)。cod-ad用于ADSP-2181的串口數(shù)據(jù)采集,cod-work用于ADSP-2181的編碼。當(dāng)cod-ad采完一幀數(shù)據(jù)后與cod-work互換。decod-work用于ADSP-2181的串口數(shù)據(jù)播放,decod-work用于ADSP-2181的解碼。當(dāng)播放完一幀數(shù)據(jù)后,decod-ad與decod-work互換。采集與播放程序放在ADSP-2181的中斷服務(wù)程序中。本系統(tǒng)只開(kāi)放ADSP-2181的接收中斷,ADSP-2181每接收一個(gè)數(shù)據(jù),同時(shí)就播放一個(gè)數(shù)據(jù)。

    另外G.729的編碼器的編碼數(shù)據(jù)和解碼器的解碼數(shù)據(jù)都有兩個(gè)緩沖區(qū),緩沖區(qū)的工作原理與數(shù)據(jù)采集和播放的雙緩沖區(qū)的工作原理相同。

    綜上所述,ITU-T的G.729協(xié)議是一個(gè)ITU-T的8Kbps語(yǔ)音編解碼協(xié)議,它具有高音質(zhì)和低延時(shí)的特點(diǎn)。軟件設(shè)計(jì)主要包括三個(gè)部分:命令解釋器、G.729數(shù)據(jù)引擎、接口功能模塊。我們用ADSP-2181實(shí)時(shí)實(shí)現(xiàn)了G.729協(xié)議,在ADSP-2181的數(shù)據(jù)采集/播放和ADSP-2181與主CPU接口的數(shù)據(jù)交互方面都采用了雙緩沖方式。硬件設(shè)計(jì)主要是通過(guò)ADSP-2181的IDMA口,來(lái)實(shí)現(xiàn)主CPU與ADSP-2181的數(shù)據(jù)交互。

    針對(duì)實(shí)時(shí)實(shí)現(xiàn)G.729的一些難點(diǎn),我們提出了一系列解決的方法,通過(guò)這些解決方法,我們已經(jīng)在Analog Device的定點(diǎn)數(shù)字處理芯片ADSP-2181上實(shí)時(shí)實(shí)現(xiàn)了符合ITU-T G.729的全部功能,并且已經(jīng)通過(guò)了ITU-T G.729的全部測(cè)試矢量。該編解碼器已經(jīng)在數(shù)字語(yǔ)音記錄儀和H.323網(wǎng)上多媒體通信系統(tǒng)中推廣應(yīng)用。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

美國(guó)紐約州阿蒙克2022年10月20日 /美通社/ -- IBM(NYSE: IBM)發(fā)布 2022 年第三季度業(yè)績(jī)報(bào)告。 IBM 董事長(zhǎng)兼首席執(zhí)行官 Arvind Kri...

關(guān)鍵字: IBM 軟件 BSP 云平臺(tái)

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險(xiǎn)積極籌備個(gè)人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開(kāi)發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動(dòng)商業(yè)養(yǎng)老保險(xiǎn)、個(gè)人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險(xiǎn)等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動(dòng)的最基本功能。而對(duì)于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對(duì)于空間和生活深層關(guān)系的思考,同時(shí)也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績(jī)預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營(yíng)業(yè)收入7.54億元至8.33億元,同比增長(zhǎng)60.24%至77.03%;歸母凈利潤(rùn)預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

上海2022年10月19日 /美通社/ -- 一年一度的2022易路人力科技趨勢(shì)峰會(huì)將于11月22日開(kāi)啟,本次峰會(huì)以"智未來(lái),效先行"主題舉辦,全程以線上...

關(guān)鍵字: 力科 數(shù)字化 MIDDOT SAAS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級(jí)企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠(chéng)健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷售額同比增長(zhǎng)59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國(guó))在華深耕經(jīng)營(yíng)12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對(duì)在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國(guó)進(jìn)出口商品交易會(huì)("廣交會(huì)")于"云端"開(kāi)幕。本屆廣交會(huì)上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過(guò)140,...

關(guān)鍵字: 中國(guó)智造 BSP 手機(jī) CAN

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉