亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        CVSD算法分析及其在FPGA中的實(shí)現(xiàn)

        2009-03-19 01:59:12向澤永
        現(xiàn)代電子技術(shù) 2009年3期

        向澤永 高 勇

        摘 要:通過分析連續(xù)可變斜率增量調(diào)制(CVSD)的語音編譯碼工作原理,對CVSD的軟件算法進(jìn)行了詳細(xì)地剖析。通過合理選取各參數(shù)的值,在FPGA中對CVSD算法進(jìn)行了仿真和實(shí)現(xiàn)。在此基礎(chǔ)上,提出了FPGA硬件平臺實(shí)現(xiàn)方案,在硬件平臺上對CVSD編譯碼算法進(jìn)行了驗(yàn)證,同時和專用CVSD編譯碼芯片CMX639實(shí)現(xiàn)了互相通信。測試結(jié)果表明算法可行,設(shè)計(jì)正確,達(dá)到了良好的效果。

        關(guān)鍵詞:語音編譯碼;CVSD;FPGA;CMX639

        中圖分類號:TN919文獻(xiàn)標(biāo)識碼:B

        文章編號:1004-373X(2009)03-151-03

        Analysis of CVSD Algorithm and Its Realization in FPGA

        XIANG Zeyong,GAO Yong

        (College of Electronics and Information Engineering,Sichuan University,Chengdu,610065,China)

        Abstract:Through analyzing the speech code-decode principle of the Continuously Variable Slope Delta modulation(CVSD),the CVSD algorithm is discussed in detail.Due to the preferable parameter of the algorithm,its simulation and implement are designed in FPGA.A practical solution based on hardware platform of FPGA is presented,on which the algorithm of CVSD is verified and the intercommunication is realizied between FPGA and CMX639.The results show that the algorithm in FPGA is attractive and the design is successful.

        Keywords:speech code-decode;CVSD;FPGA;CMX639

        0 引 言

        在眾多的語音編譯碼調(diào)制中,連續(xù)可變斜率增量調(diào)制(CVSD)作為許多增量調(diào)制中的一種,只需編一位碼,在發(fā)送端與接收端之間不需要碼型同步,量階Δ的大小能自動地跟蹤信號變化,因而具有強(qiáng)抗誤碼能力,在10-3時仍可保持高質(zhì)量的話音[1]。目前市場上有CVSD的專用芯片,但專用芯片的通用性、靈活性和可擴(kuò)展性受到了很大的限制,并且產(chǎn)品的開發(fā)周期長,開發(fā)成本也較高。專用CVSD芯片只能實(shí)現(xiàn)一路編譯碼,在需要多路CVSD編譯碼時則需要很多專用芯片,具有局限性;而單片F(xiàn)PGA容易實(shí)現(xiàn)多路CVSD編譯碼功能。此外如果專用芯片停產(chǎn)或者買不到,已有的通信設(shè)備維修將會因器件缺乏導(dǎo)致后續(xù)工作無法開展。為了彌補(bǔ)專用CVSD芯片的不足,同時也方便在現(xiàn)場可編程門陣列(FPGA)[2]中增加一些其他相關(guān)的應(yīng)用功能,因此在FPGA中實(shí)現(xiàn)CVSD語音編譯碼調(diào)制功能的前景將是非常廣闊的。

        這里將詳細(xì)介紹基于FPGA的CVSD語音編譯碼的設(shè)計(jì)思路、具體實(shí)現(xiàn)以及和專用芯片CMX639[3]之間的互相通信。

        1 CVSD工作原理

        CVSD是一種量階Δ隨著輸入語音信號平均斜率(斜率絕對值的平均值)大小而連續(xù)變化的增量調(diào)制方式[1]。它的工作原理如下:用多個連續(xù)可變斜率的折線[1]來逼近語音信號,當(dāng)折線斜率為正時,對應(yīng)的數(shù)字編碼為“1”;當(dāng)折線斜率為負(fù)時,對應(yīng)的數(shù)字編碼為“0”。

        當(dāng)CVSD工作于編碼方式時,其系統(tǒng)框圖如圖1所示。語音信號xin(t)經(jīng)采樣得到數(shù)字信號x(n),數(shù)字信號x(n)與積分器輸出信號g(n)比較后輸出誤差信號d(n),誤差信號d(n)經(jīng)判決后輸出數(shù)字編碼c(n),同時該信號作為積分器輸出斜率的極性控制信號和積分器輸出斜率大小邏輯的輸入信號。在每個時鐘周期內(nèi),若語音信號大于積分器輸出信號,則判決輸出為“1”,積分器輸出上升一個量階Δ;若語音信號小于積分器輸出信號,則判決輸出為“0”,積分器輸出下降一個量階Δ。

        當(dāng)CVSD工作于譯碼方式時,其系統(tǒng)框圖如圖2所示。在每個時鐘周期內(nèi),數(shù)字編碼c(n)被送到連碼檢測器,然后送到平滑電路以控制積分器輸出斜率的大小。若數(shù)字編碼c(n)輸入為“1”,則積分器的輸出上升一個量階Δ,若數(shù)字輸入為“0”,則積分器的輸出下降一個量階Δ,這相當(dāng)于編碼過程的逆過程。積分器的輸出g(n)通過低通濾波器平滑濾波后將重現(xiàn)輸入語音信號xout(t)。

        可見輸入信號的波形上升越快,輸出的連“1”碼就越多,同樣下降越快,輸出的連“0”碼越多,CVSD 編譯碼能夠很好地反映輸入信號的斜率大小,有效地避免了斜率過載失真和顆粒失真。為使積分器的輸出能夠更好地逼近輸入語音信號,量階Δ隨著輸入信號斜率大小而變化,當(dāng)信號斜率絕對值很大,編碼出現(xiàn)3個或4個連“1”或連“0”碼時,則量階Δ加一個增量Δ0;當(dāng)不出現(xiàn)上述碼型時,量階Δ則相應(yīng)地減少。

        2 CVSD的軟件算法

        2.1 CVSD的編碼算法

        圖3是CVSD編碼算法框圖[4],其量階Δ調(diào)整是基于前3位的連碼。x(n)是語音經(jīng)過采樣得到的數(shù)字信號,數(shù)字信號x(n)與積分器地I1輸出的預(yù)測信號xp(n)經(jīng)過比較后輸出誤差信號d(n),誤差信號d(n)經(jīng)一階量化(d(n)≥0,c(n)=1;d(n)<0,c(n)=0)得到輸出的數(shù)字編碼c(n),該信號同時作為積分器I2的極性控制信號和控制積分器I2輸出斜率大小邏輯的輸入信號。當(dāng)輸出碼出現(xiàn)連續(xù)的“1”碼或者連續(xù)的“0”碼,則說明信號波形的斜率較大,因此量階Δ需要適當(dāng)增加,當(dāng)輸出碼c(n)長時間沒有出現(xiàn)連碼,則積分器I2向“0”值方向衰減,量階Δ減小。最小和最大階距是由ΔMIN和ΔMAX分別確定的。當(dāng)長時間沒有出現(xiàn)連碼,CVSD編碼器退化為一個線性增量調(diào)制(LDM)編碼器。

        2.2 CVSD的譯碼算法

        圖4是CVSD譯碼算法框圖[4],其量階調(diào)整是基于前3位的連碼。譯碼過程就是編碼的逆過程,只是在積分器I1后面增加了一個低通濾波器,用于抑制帶外干擾。

        3 CVSD算法在FPGA中的實(shí)現(xiàn)

        3.1 硬件實(shí)現(xiàn)框圖

        考慮到實(shí)際需求,采用了通用性較強(qiáng)的A/D,D/A元器件和FPGA器件。該硬件可以同時實(shí)現(xiàn)3路CVSD編譯碼算法,一路采用FPGA(XC3S1500)[5]實(shí)現(xiàn),兩路采用專用芯片實(shí)現(xiàn);同時編譯碼之間可以通過FPGA內(nèi)部邏輯控制互相通信。在FPGA內(nèi)設(shè)計(jì)實(shí)現(xiàn)了CVSD編譯碼算法,在該器件內(nèi)融合多種控制功能,可以在線編程、方便調(diào)試。

        音頻信號在進(jìn)行A/D采樣之前,為了防止帶外信號進(jìn)入,首先進(jìn)行低通濾波;再通過高倍時鐘進(jìn)行采樣得到數(shù)字信號進(jìn)入FPGA進(jìn)行編譯碼處理。譯碼過后的信號通過D/A輸出模擬信號,該信號再經(jīng)過低通濾波器后輸出,得到音頻信號。

        3.2 CVSD算法實(shí)現(xiàn)框圖

        在FPGA內(nèi)部算法實(shí)現(xiàn)上,采用了 “自頂向下”的設(shè)計(jì)方法,即根據(jù)要求的功能先設(shè)計(jì)出頂層的原理圖,該圖由若干個功能模塊組成。再把各個模塊細(xì)化為子模塊,各子模塊的功能采用電路圖實(shí)現(xiàn),也可用硬件描述語言實(shí)現(xiàn)。設(shè)計(jì)中頂層采用原理圖實(shí)現(xiàn),子模塊采用VHDL硬件描述語言實(shí)現(xiàn),利用ISE自帶的IP Core乘法器,經(jīng)過綜合和優(yōu)化等過程,最終將程序下載到芯片中,使用在線邏輯分析儀ChipScope Pro進(jìn)行邏輯和功能測試分析[6]。

        3.3 CVSD算法的仿真

        以正弦單音輸入信號為例,利用信號源產(chǎn)生信號幅度0.5 Vpp,頻率fin(t)=1 kHz的正弦信號作為測試信號,在FPGA中利用高倍時鐘產(chǎn)生fs(t)=64 kHz的采樣時鐘。對輸入A/D的音頻信號采用專用低通濾波芯片進(jìn)行了濾波。D/A輸出的信號包含了許多不必要的高次諧波分量,因此也采用低通濾波器對其進(jìn)行了平滑濾波。

        在設(shè)計(jì)上,不僅僅是采用FPGA實(shí)現(xiàn)和驗(yàn)證自己的CVSD編譯碼算法,還和專用芯片CMX639進(jìn)行互相通信進(jìn)行驗(yàn)證。CMX639是一款CVSD全雙工音頻調(diào)制芯片,集成了編碼和譯碼功能,實(shí)現(xiàn)了單芯片語音處理能力,外圍設(shè)備簡單,用戶可以根據(jù)實(shí)際情況,自主選擇采樣速率。

        圖8是通過ChipScope Pro采集的實(shí)時正弦信號。從圖中可以看出量階Δ的大小能夠很好地反映輸入信號斜率的大小,輸出端輸出信號能夠很好地重現(xiàn)輸入信號,說明CVSD編譯碼方式是有效的。

        3.4 CVSD算法的實(shí)現(xiàn)

        采用原理圖和VHDL語言相結(jié)合的方式在FPGA中實(shí)現(xiàn)了CVSD電路。具體實(shí)現(xiàn)步驟如下:

        (1) 根據(jù)算法框圖設(shè)計(jì)頂層原理圖CVSD.SCH;

        (2) 利用IP Core產(chǎn)生底層所需要的乘法器;

        (3) 利用VHDL語言完成CVSD編譯碼模塊;

        (4) I/O管腳定義,約束條件編寫;

        (5) 設(shè)計(jì)綜合、編譯;

        (6) bit文件生成、下載,通過ChipScope Pro進(jìn)行仿真測試;

        (7) 根據(jù)仿真測試結(jié)果返回修改設(shè)計(jì),直到設(shè)計(jì)成功;

        (8) mcs文件生成、加載,最終驗(yàn)證。

        驗(yàn)證是FPGA設(shè)計(jì)中很重要的一環(huán),只有通過驗(yàn)證才能說明設(shè)計(jì)的正確與否。采用XILINX公司的Spartan-3系列中的XC3S1500[5]來具體實(shí)現(xiàn)CVSD的編譯碼功能。通過自己設(shè)計(jì)的編譯碼算法和CMX639專用芯片的編譯碼模塊互相通信,輸入實(shí)際語音信號測試,能夠很好地從D/A輸出語音信號,從CMX639譯碼輸出也能聽到語音信號,達(dá)到了滿意的效果。

        4 結(jié) 語

        本文提出的FPGA設(shè)計(jì)方法很好地實(shí)現(xiàn)了CVSD編譯碼功能,充分利用了FPGA的優(yōu)勢,可以同時實(shí)現(xiàn)多路CVSD編譯碼功能,彌補(bǔ)了采用專用芯片實(shí)現(xiàn)CVSD編譯碼的不足,設(shè)計(jì)靈活、簡單,成本低,具有很好的應(yīng)用前景。

        參考文獻(xiàn)

        [1]呂洪生,楊新德.實(shí)用衛(wèi)星通信工程[M].成都:電子科技大學(xué)出版社,1994.

        [2]趙曙光,郭萬有,楊頌華.可編程邏輯器件原理、開發(fā)與應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2001.

        [3]CML Microcircuits.CMX639:Consumer/Commerical CVSD Digital Voice Codec[Z].2005.

        [4]CML Microcircuits.Continuously Variable Slope Delta Modulation:A Tutorial[Z].1997.

        [5]XILINX.Spartan-3 FPGA Family:Complete Data Sheet[Z].2004.

        [6]EDA先鋒工作室.FPGA/CPLD設(shè)計(jì)工具:Xilinx ISE 5.x使用詳解[M].北京:人民郵電出版社,2003.

        作者簡介 向澤永 男,1976年出生,碩士研究生。研究方向?yàn)橥ㄐ爬碚撆c技術(shù)。

        高 勇 男,1969年出生,博士,副教授,中國電子學(xué)會高級會員,中國通信學(xué)會高級會員,四川省電子學(xué)會電子戰(zhàn)專業(yè)委員會副主任委員,四川省聲學(xué)學(xué)會語音、音樂和信號處理專業(yè)委員會主任,四川省通信學(xué)會理事,已在國內(nèi)重要核心學(xué)術(shù)刊物、重要國際和國內(nèi)學(xué)術(shù)會議上發(fā)表學(xué)術(shù)論文16篇(第一作者)。申請中國發(fā)明專利4項(xiàng),已獲發(fā)明專利授權(quán)2項(xiàng)、實(shí)用新型授權(quán)2項(xiàng)。研究興趣為陣列信號處理、軟件無線電、通信抗干擾技術(shù)、實(shí)時信號處理、嵌入式系統(tǒng)開發(fā)等。

        六月丁香综合在线视频| 一区二区三区人妻在线| 亚洲乱码一区二区av高潮偷拍的 | 中文字幕网伦射乱中文| 亚洲国产精品特色大片观看完整版| 久久福利资源国产精品999| 亚洲一区有码在线观看| 精品一区二区三区芒果| 久久久久国产一区二区| 亚洲AV无码资源在线观看| 国产精品亚洲一区二区三区妖精| 97精品人妻一区二区三区蜜桃| 熟女体下毛毛黑森林| 亚洲AV无码一区二区三区ba| 亚洲综合色视频在线免费观看| 免费日本一区二区三区视频| 人妻丰满熟妇av无码片| 亚洲另在线日韩综合色| 精品一区二区三区牛牛| 无套内内射视频网站| 日日av拍夜夜添久久免费| 国产真实伦视频在线视频| 国产黄色一区二区在线看| 免费无码高潮流白浆视频| 亚洲综合欧美日本另类激情| 在线视频一区二区三区中文字幕| 亚洲精品粉嫩美女一区| 成人妇女免费播放久久久| 日本一区二区三区激情视频| 五月婷婷丁香视频在线观看 | 蜜臀av在线一区二区尤物| 人人人妻人人澡人人爽欧美一区| 无码丰满少妇2在线观看| 韩国免费一级a一片在线| 国产情侣自拍一区视频| 日本japanese少妇高清| 国产精品日日摸夜夜添夜夜添| 高清不卡av一区二区| 天天综合网在线观看视频| 99国产精品久久久蜜芽| 国产大屁股熟女流白浆一区二区|