周 發(fā) 尉 宇
(武漢科技大學(xué)信息科學(xué)與工程學(xué)院 武漢 430081)
語音處理是信息高速公路、多媒體技術(shù)、辦公自動化、現(xiàn)代通信及職能系統(tǒng)等新興領(lǐng)域應(yīng)用的核心技術(shù)之一。用數(shù)字化的方法進行語音的傳送、存儲、分析、識別、合成、增強等是整個數(shù)字化通信網(wǎng)中的最重要、最基本的組成部分之一[1]。一個完備的語音信號處理系統(tǒng)不但要具有語音信號的采集和回放功能,還要能夠進行復(fù)雜的語音信號分析和處理。通常這些信號處理算法的運算量很大,而且又要滿足實時的快速高效處理要求,隨著DSP技術(shù)的發(fā)展,以DSP為內(nèi)核的設(shè)備越來越多。本文采用定點DSP芯TMS320C5402作為CPU,完成對語音信號的采集和濾波處理[2]。
1)系統(tǒng)總體設(shè)計
語音采集與處理系統(tǒng)主要包括三個部分:TMS320C5402 、T LC320AD50 、存儲器模塊 。系統(tǒng)硬件結(jié)構(gòu)如圖1所示。本文設(shè)計選用TLC320AD50完成語音處理的A/D轉(zhuǎn)換和D/A轉(zhuǎn)換。AD50是 TI公司生產(chǎn)的一款集成有A/D和D/A的芯片,DSP與AD50連接后,可以只使用一個緩沖串口來同時現(xiàn)實數(shù)據(jù)的采集和輸出,從而節(jié)省了DSP的硬件開銷。因此,DSP與音頻AD50的連接使用在音頻信號處理中得到了廣泛的應(yīng)用[3]。
2)接口電路

圖1 系統(tǒng)總體框圖
DSP設(shè)備與AD50設(shè)備的連接方法如圖2所示。

圖2 系統(tǒng)的接口連接
C5402有 2個 McBSP多通道緩沖串口。McBSP提供了全雙工的通信機制,以及雙緩存的發(fā)送寄存器和三緩存的接受寄存器,允許連續(xù)的數(shù)據(jù)流傳輸,數(shù)據(jù)長度可以為 8、12、16、20、24、32,同時還提供了A律和μ律的壓縮擴展。數(shù)據(jù)信號經(jīng)DR和DX引腳與外設(shè)通信,控制信號 由 CLX、CLKR、FSX、FSR四個引腳來實現(xiàn)。CPU和DMA控制器可以讀取DRR[1,2]的數(shù)據(jù)實現(xiàn)接收,可以對DXR[1,2]寫入數(shù)據(jù)實現(xiàn)發(fā)送。此時可以通過串口控制寄存器SPCR[1,2]和引腳控制寄存器PCR用來配置串口,用RCR[1,2]和XCR[1,2]用來設(shè)置接收通道和發(fā)送通道的參數(shù),用SRGR[1,2]來設(shè)置采樣率。這些都可以通過軟件編程來實現(xiàn)[4]。
AD50控制寄存器的設(shè)置必須在二次通信中完成。AD50有硬件和軟件兩種方式啟動二次通信。本文采用軟件觸發(fā)的方式,因此FC必須接地。即數(shù)據(jù)格式為15+1時,最低位 LSB被確認為高電平。最后一位標(biāo)記下一個數(shù)據(jù)是否為二次通信數(shù)據(jù),1表示是,0表示否。通過兩次通信可以對AD50的四個控制寄存器的讀寫。在二次通信中,D0~D7為寫入控制寄存器的數(shù)據(jù)或者從控制寄存器讀出的數(shù)據(jù),D8~D12的內(nèi)容決定選擇哪個控制寄存器,D13位決定是讀操作還是寫操作[5]。
3)語音采集
語音信號的采集是通過話筒經(jīng)模擬放大輸入到AD50,AD50作相應(yīng)的低頻濾波并進行A/D轉(zhuǎn)化,再通過McBSP通道輸入DSP芯片。語音信號采集程序包括以下幾個部分[5]:
(1)DSP的初始化。對DSP的寄存器以及緩沖串口進行初始化。
(2)AD50的初始化。通過DSP的緩沖串口和二次通信對AD50的四個控制寄存器設(shè)置,確定AD50的四個控制寄存器設(shè)置正確后,AD50才能開始采集數(shù)據(jù)。
(3)設(shè)置DSP的中斷,從緩沖串口讀取數(shù)據(jù)。如果此時在緩沖串口連續(xù)讀取數(shù)據(jù),就可以在仿真軟件CCS中查看讀取的數(shù)據(jù)是否正確。
(4)DSP存放數(shù)據(jù)。可以將緩沖串口讀取的數(shù)據(jù)存放到DSP的RAM 單元,連續(xù)存放。
1)FIR濾波器的設(shè)計
在頻率方面,人的聲音是在800Hz~1100Hz。本文采用FIR設(shè)計一個低通濾波器,將1200Hz的高頻噪聲濾波[6]。
FIR濾波器的系統(tǒng)函數(shù)為:

假設(shè)FIR濾波器的系數(shù)為h(0),h(1),…,h(N-1),x(n)表示濾波器在n時刻的輸入,則n時刻的輸出為:

FIR濾波器的設(shè)計可以用MAT LAB窗函數(shù)法進行,例如選擇Hamming窗,其程序為:b=f ir1(16,1200/8000*2),這里采用8000Hz的采樣率,階數(shù)為17,從而得到數(shù)字濾波器的系數(shù),由于在DSP匯編語言中,不能直接輸入十進制的小數(shù),可以在MAT LAB中進行如下轉(zhuǎn)換:b=round(b*2∧15),這樣就將系數(shù)轉(zhuǎn)換為 Q15的定點小數(shù)形式[7]。
可以用DSP的乘加指令完成,采用循環(huán)緩沖區(qū)法完成程序。部分濾波程序如下:

軟件流程圖如圖3所示。
2)仿真結(jié)果

比較圖4和圖5,可以看到1200Hz以上的頻譜明顯得到了抑制。
文中介紹了DSP芯片和AD50芯片的數(shù)據(jù)采集處理系統(tǒng)的設(shè)計和實現(xiàn),實踐證明,可以較好地實現(xiàn)語音濾波。滿足了語音處理的要求,與DSP接口簡單,高性能,低功耗,廣泛應(yīng)用在音頻處理,語音增強,語音安全,回聲抵消等電話或語音應(yīng)用領(lǐng)域[9]。
[1]李利.DSP原理及應(yīng)用[M].北京:中國水利水電出版社,2004
[2]王安民,陳明欣,朱明.TMS320C54xx DSP實用技術(shù)[M].北京:清華大學(xué)出版社,2007
[3]彭啟琮,李玉柏.DSP技術(shù)[M].成都:電子科技大學(xué)出版社,1997
[4]李宏偉,等.基于幀間重疊譜減法的語音增強方法[J].解放軍理工大學(xué)學(xué)報,2001(1):41~44
[5]Texas Instruments Incorporated.TMS320C54x系列DSP的CPU與外設(shè)[M].梁曉雯,裴小平,李玉虎,譯.北京:清華大學(xué)出版社,2006
[6]趙力.語音信號處理[M].北京:機械工業(yè)出版社,2003
[7]江濤,朱光喜.基于 TMS320VC5402的音頻信號采集與系統(tǒng)處理[J].電子技術(shù)應(yīng)用,2002,28(7):70~72
[8] TexasInstruments Incorporated:TMS320VC5402 Datasheet,2001
[9]戴明幀,周建江.TMS320C54xDSP結(jié)構(gòu)、原理及應(yīng)用[M].北京:北航出版社,2002