新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種數(shù)字語音通信系統(tǒng)的DSP實(shí)現(xiàn)

一種數(shù)字語音通信系統(tǒng)的DSP實(shí)現(xiàn)

作者: 時間:2004-12-06 來源:網(wǎng)絡(luò) 收藏
摘要:介紹了一種甚低頻低碼率方案,該方案中的軟件采用混合編程的方法,硬件則用,文章給出了整個軟硬件調(diào)試方法,并通過調(diào)試結(jié)果表明該方案具有很好的可行性和實(shí)時性。

關(guān)鍵詞:軟件無線電;;混合編程

1 引言

現(xiàn)代已不斷由模擬體制向化體制過渡,并越來越傾向于采用“軟件無線電”的設(shè)計(jì)方案。即通過構(gòu)造通用的硬件平臺,以使各種相關(guān)的任務(wù)能夠用軟件完成,從而構(gòu)成一個具有高度靈活性、開放性的通信系統(tǒng)?,F(xiàn)代的DSP通用處理器為這一方案提供了極大的便利。

軟件無線電的設(shè)計(jì)思想是:用一個通用、標(biāo)準(zhǔn)、模塊化的硬件平臺為依托,然后通過軟件編程來實(shí)現(xiàn)無線電臺的各種功能,從而取代基于硬件、面向用途的電臺設(shè)計(jì)方法。功能的軟件化實(shí)現(xiàn)勢必要求減少功能單一、靈活性差的硬件電路,尤其是減少模擬環(huán)節(jié),并把化處理?A/D、D/A?盡量靠近天線。軟件無線電強(qiáng)調(diào)體系結(jié)構(gòu)的開放性和全面可編程性。它通過軟件的更新來改變硬件的配置結(jié)構(gòu),從而實(shí)現(xiàn)新的功能。軟件無線電一般采用標(biāo)準(zhǔn)的、高性能的開放式總線結(jié)構(gòu),此結(jié)構(gòu)利于硬件模塊地不斷升級和擴(kuò)展。

本文介紹一種利用TMS320C31浮點(diǎn)型DSP芯片為核心來設(shè)計(jì)并實(shí)現(xiàn)甚低頻低碼率數(shù)字化通信系統(tǒng)的方法。這種通信系統(tǒng)是以DSP硬件為平臺,并用硬件來實(shí)現(xiàn)系統(tǒng)的外圍功能,而用軟件來實(shí)現(xiàn)核心部分的數(shù)字化處理,從而完成整個系統(tǒng)的正常通信工作。

2?。模樱杏布脚_

本通信系統(tǒng)的主要功能是實(shí)現(xiàn)的數(shù)字化傳輸,其系統(tǒng)功能圖如圖1所示。具體工作過程如下:

整個通信系統(tǒng)分為兩大部分,其工作狀態(tài)轉(zhuǎn)換由外附的MCU控制。在發(fā)送時,通過克麥風(fēng)之后進(jìn)入語音壓縮板進(jìn)行采樣量化及數(shù)字化壓縮,壓縮后的比特流從串口送入DSP內(nèi)進(jìn)行調(diào)制,調(diào)制信號依次通過信道DAC、平滑濾波和功放,然后發(fā)送出去;在接收時,前置放大部分送來的信號再經(jīng)過一次放大之后送往信道AD轉(zhuǎn)換器,轉(zhuǎn)換的數(shù)據(jù)FIFO通過中斷方式送給DSP進(jìn)行解調(diào),在DSP內(nèi)解調(diào)之后的數(shù)據(jù)仍然通過串口送往語音壓縮板解壓后經(jīng)揚(yáng)聲器輸出。

根據(jù)系統(tǒng)要求,本設(shè)計(jì)選定的DSP是TI公司的TMS320C31。信道AD轉(zhuǎn)換器件選用ANALOG DE-VICE公司的AD7870,它是一個12bit的ADC,具有2μs的片上信號放大時間和8μs的轉(zhuǎn)換時間,最高轉(zhuǎn)換速率為100kHz,可以提供三種輸出接口方式?12bit并行方式、字節(jié)方式和串行方式?。信道DAC選用的是TI公司的TLV5619,這是一種12bit單通道電壓型DA轉(zhuǎn)換器。系統(tǒng)中的ADC和DAC轉(zhuǎn)換器都以并行12bit方式直接和FIFO相連。FIFO?First In First Out?采用的是雙端口RAM構(gòu)架,其讀指針和寫指針是完全分開的,可實(shí)現(xiàn)讀寫操作的完全獨(dú)立,因此,這里選用CYPRESS公司的CY7C425。

3 軟件實(shí)現(xiàn)

本通信系統(tǒng)中的軟件采用C語言和混合編程,其中主程序和一部分子程序用C語言編寫,而一些運(yùn)算量比較大的算法子程序則用匯編語言編寫,這樣,既容易進(jìn)行調(diào)試,又可以提高軟件的執(zhí)行效率,可達(dá)到最佳利用DSP芯片的軟硬件資源之目的。

整個軟件的主程序由發(fā)送部分程序段和接收部分段兩部分組成,主程序流程圖見圖2所示,每個程序段又分別是一個獨(dú)立的程序體,可以獨(dú)立的實(shí)現(xiàn)通信系統(tǒng)的發(fā)送和接收功能。

由于要求系統(tǒng)能夠?qū)崟r完成通信任務(wù),故相應(yīng)的程序須和硬件相互配合,它們各操作之間的同步協(xié)調(diào)要求很高。而本系統(tǒng)可充分利用DSP芯片所提供的中斷和定時器資源來很好地實(shí)現(xiàn)系統(tǒng)功能。

串行口發(fā)送/接收中斷子程序用于完成DSP對串口的發(fā)送和接收任務(wù),發(fā)送定時器中斷子程序流程圖如圖3所示,圖4所示是串口接收中斷子程序的流程圖。

在系統(tǒng)實(shí)現(xiàn)過程中,由于采用了混合編程,并對運(yùn)算量比較大的算法用匯編程序來實(shí)現(xiàn),因此,在對128點(diǎn)FFT算法采用匯編語言編程后,可經(jīng)CCS仿真進(jìn)行測試。匯編程序的執(zhí)行時間為111113個時鐘周期?2.78ms?,可在一幀時間內(nèi)?30ms?完成5次FFT和IFFT的幀同步算法,而用C語言實(shí)現(xiàn)時的程序執(zhí)行時間為1812409個時鐘周期?45.3ms???梢姡脜R編程序的執(zhí)行效率有明顯的提高。

4 結(jié)束語

DSP軟硬件開發(fā)設(shè)計(jì)是應(yīng)用TMS320C31芯片進(jìn)行的,這一方案在運(yùn)用仿真器進(jìn)行軟硬件聯(lián)合調(diào)試時取得了很好的效果,由此可見,在硬件設(shè)計(jì)合理的情況下,將C語言和匯編語言很好的結(jié)合,可充分發(fā)揮各自的優(yōu)勢,從而達(dá)到最佳的設(shè)計(jì)效果。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉