朱敏杰, 王 海, 梁 偉
(紹興文理學院 數(shù)理信息學院, 浙江 紹興 312000)
語音傳輸是目前最主要最普遍的通信傳輸服務,考慮到存儲空間、信道帶寬的限制及擴大通信容量的需求,可利用低速率編碼技術對語音信號進行壓縮編碼。此類低速語音編碼技術在軍事和航天領域有廣闊的應用空間[1-2]。目前常用的低速率語音編解碼系統(tǒng)一般以CPU和音頻codec芯片為核心構成,CPU根據(jù)語音編解碼算法編程,傳輸語音數(shù)據(jù),音頻codec芯片用于實現(xiàn)語音數(shù)據(jù)采集和回放。這種方案編程復雜、保密性差、成本高,難以擴展,而且編碼速率低于2.4 Kbps的應用方案不多[3]。本文采用低速率語音編解碼專用芯片TR600和STM32微控制器,完成一種低速率語音編解碼系統(tǒng)設計,編碼速率可選擇0.6、0.8、1.2或2.4 Kb/s,經(jīng)實踐檢驗,系統(tǒng)穩(wěn)定可靠。
低速率語音編解碼系統(tǒng)由信道管理器STM32微控制器、語音編解碼專用芯片TR600[4]、音頻codec芯片TLV320AIC10及外圍電路構成,如圖1所示。
圖1 系統(tǒng)結構框圖
系統(tǒng)管理器選用ARM cortex-M3內核STM32F103芯片,主頻72 MHz,字長32 位,片內存儲器容量大,片上外設豐富,開發(fā)工具完備,是8 位及16 位微控制器的理想替代產(chǎn)品[5-6]。在本設計中,主要負責通信信道的管理。TR600采用清華大學微波和數(shù)字通信國家重點實驗室研制的SELP (Sine Excitation Linear Prediction )聲碼器算法,在此基礎上,引入了多幀參數(shù)聯(lián)合矢量量化方法,壓縮幀間冗余,在0.6 Kb/s的極低編碼速率下,重建語音DRT測試評分>89%[7-9]。
麥克風采集的語音信號通過TLV320AIC10進行A/D轉換,由TR600進行量化壓縮后通過RS232接口傳送給STM32,再由STM32傳送到通信網(wǎng)絡。還可將來自通信網(wǎng)絡的壓縮語音數(shù)據(jù)傳送給TR600解碼,通過TLV320AIC10的D/A轉換實現(xiàn)語音重建。
系統(tǒng)硬件電路主要由信道接口電路,語音采集、回放電路,電源電路,CPU主控電路組成。其中CPU主控電路主要由JTAG下載、晶振、按鍵及LCD顯示、EEPROM組成,本文不再展開。
信道接口包括系統(tǒng)管理器、音頻codec芯片及編解碼器的接口電路設計,如圖2所示。TLV320AIC10的M/S引腳置高,M0、M1、FC引腳接地,配置成主模式,F(xiàn)S同步信號由TLV320AIC10產(chǎn)生,脈沖方式,次級通信不選擇[10]。TR600芯片DATAIO_SEL引腳接地,表示使用控制接口對TLV320AIC10執(zhí)行初始化,即通過SDIN信號對DCSI控制接口寫初始化命令。FS為幀同步信號,接TR600的串行數(shù)據(jù)輸入輸出同步信號LRCIN和LRCOUT,DIN、DOUT、SCLK為串行通信數(shù)據(jù)線和時鐘線,用于發(fā)送、接收16 bit串行數(shù)字音頻數(shù)據(jù),與TR600的相應引腳相連。PCMCTRL_CLKSE引腳接地,表示TLV320AIC10、TR600的數(shù)據(jù)接口和控制接口都使用的SCLK作為時鐘信號。TR600可用RS232串口與系統(tǒng)管理器STM32F103通信,考慮到STM32F103沒有DTR和DSR信號線,選擇其GPIO口PC4、PC5用軟件模擬實現(xiàn),STM32F103預留USART2接口用于系統(tǒng)與上位機或網(wǎng)絡通信。
系統(tǒng)語音由TLV320AIC10采集,語音采集電路設計成反向模式。語音回放電路采用低壓音頻放大器LM386,電路設計成200倍增益模式,LM386可采用+5 V供電,典型功耗325 mW,可接8Ω喇叭或電話聽筒。語音采集、回放電路如圖3所示。
圖2 信道接口電路
圖3 語音采集、回放電路
系統(tǒng)中需要模擬3.3 V和數(shù)字3.3 V兩路電源,語音回放需要5 V電源。系統(tǒng)采用LM2575-5.0[11]開關穩(wěn)壓器將來自于變壓器端的9 V直流穩(wěn)壓為5 V,最大1 A直流輸出。5 V電壓可直接供給語音回放電路的功放使用,另經(jīng)低壓差穩(wěn)壓器(LDO)LM1117-3.3[12]穩(wěn)壓為3.3 V,最大800 mA直流輸出。
圖4 電源電路
3.3 V電壓分成模擬電源和數(shù)字電源,其中模擬部分給TLV320AIC10和TR600的模擬電路供電,數(shù)字部分給包括系統(tǒng)管理器STM32F103在內的數(shù)字部分供電。電源電路如圖4所示。其中D1為穩(wěn)壓二極管,L2和C3構成輸出紋波濾波器,提高輸出直流5 V的電源質量,R2為短路電阻,用于連接數(shù)字地和模擬地。計算系統(tǒng)主要芯片功耗,此電源電路可滿足要求。
系統(tǒng)軟件主要完成系統(tǒng)初始化、系統(tǒng)啟動、運行控制等工作。軟件編譯利用意法半導體(STM)提供的固件庫軟件包,在Keil uVision風格的MDK環(huán)境下采用C語言完成開發(fā)[13-14]。
系統(tǒng)工作時,TLV320AIC10的采樣速率F=FMCLK/256N,其中N由TLV320AIC10的控制寄存器R2的低5 bit決定。TR600已內置對TLV320AIC10的初始化數(shù)據(jù),將在TR600啟動后隨即初始化TLV320AIC10,將TLV320AIC10的控制寄存器R2低5 bit修改為“01000”,即N=8,當FMCLK選用外接有源晶振16.384 MHz時,對應的采樣速率為8 kHz。
TR600在四種速率下的數(shù)據(jù)幀壓縮見下表1所示。以0.6 Kbps編碼速率為例,TLV320AIC10采集的8 kHz、16 bit語音數(shù)據(jù)傳送給TR600,TR600將每600個采樣點數(shù)據(jù)經(jīng)預測分析后量化編碼為45 bit的語音幀,每隔75 ms以9.6 Kb/s的速率向串口發(fā)送,TR600發(fā)送的語音編碼幀以“0X9C”開頭,后面45 bit語音幀分為6 Byte,最低字節(jié)高5 bit有效。TR600由串口接收的待解碼語音幀以“0X80”開頭。TR600與系統(tǒng)管理器之間的串行通信由CTS、RTS、DTR、DSR等信號同步,可保證通信的可靠性。
表1 不同速率數(shù)據(jù)幀壓縮對比
圖5 系統(tǒng)軟件流程圖
系統(tǒng)軟件流程如圖5所示。系統(tǒng)上電后,STM32F103最小系統(tǒng)自檢,讀取EEPROM系統(tǒng)參數(shù),包括系統(tǒng)模式,自環(huán)延時時間等,可由按鍵修改系統(tǒng)參數(shù),并實時存入EEPROM,由按鍵確認系統(tǒng)開始工作。系統(tǒng)工作模式分為自環(huán)、發(fā)送、接收三種。自環(huán)模式即麥克風采集的語音能在設定的延時時間后在喇叭端重建;發(fā)送模式能將壓縮語音數(shù)據(jù)傳送到通信網(wǎng)絡;而接收模式則將來自于通信網(wǎng)絡的壓縮語音數(shù)據(jù)傳送到喇叭端重建。自環(huán)模式下,STM32F103首先對TR600進行復位及軟件啟動,并開啟USART1中斷,TR600正常啟動后,會利用其中固化程序對TLV320AIC10初始化。TLV320AIC10以8 kHz、16 bit對語音信號進行采樣量化,傳送給TR600,TR600通過串口傳送給STM32F103的USART1,USART1接收中斷服務程序將語音數(shù)據(jù)以照移位寄存方式放入緩沖區(qū)中,待自環(huán)延時結束后,修改語音幀頭,并發(fā)送回TR600,即可聽到延時后的連續(xù)語音。發(fā)送和接收模式的編程思想與自環(huán)模式基本一致,本文不再展開。
在實驗室對系統(tǒng)進行測試,系統(tǒng)如圖6所示。工作在0.6 Kb/s編碼速率,自環(huán)模式下,延時6 s,把成年男性聲音“紹興文理學院”錄制成WAV語音文件,采用praat語音軟件[15]分析語音時域波形圖和窄帶語譜圖,如圖7所示,前6 s語音為測試人聲音,后6 s語音是TR600通過語音壓縮編碼、自環(huán)解碼重建的效果。比較發(fā)現(xiàn),在頻譜圖中重建語音與原始語音的頻譜結構差別較??;在時域波形圖中略有區(qū)別。主觀聽覺測試表明重建語音具有較高可懂度、清晰度以及一定的自然度。
圖6 系統(tǒng)實物測試圖
圖7 測試語音時域頻域圖
[1] 叢 鍵, 張知易.一種600bps極低速率語音編碼算法[J].電子與信息學報,2007.29(2):429-433.
CONG Jian, ZHANG Zhi-yi. A Very Low Bit Rate Speech Encoding Algorithm in 600bps[J].Journal of Electronics & Information Technology, 2007.29(2):429-433.
[2] 吳江濱, 叢 鍵.一種600b/s聲碼器及其與典型中低速語音編碼器的音質對比[J].中國電子科學研究院學報,2007,2(1):93-96
WU Jiang-bin, CONG Jian. A 600 bps Vocoder and Voice Quality Evaluation Compared with Some Typical Middle and Low Bit Rate Vocoders[J]. Journal of CAEIT, 2007,2(1):93-96.
[3] 韓大晗, 崔慧娟, 唐 昆.一款專用可編程語音壓縮芯片的設計[J].電子技術應用,2006(9):137-140.
HAN Da-han, CUI Hui-juan, TANG kun. Design of programmable chip for speech compression[J]. Application of Electronic Technique,2006(9):137-140.
[4] 多思集團.TR600語音編解碼芯片白皮書[EB/OL].2012.11.
[2013.4].http://www.t-macro.com/products.aspx?FCateID=107&CateID=184.
[5] Joseph Yiu. ARM Cortex-M3權威指南[M].宋巖譯.北京:北京航空航天大學出版社,2009.
[6] 李 寧.基于MDK的STM32處理器開發(fā)應用[M].北京:北京航空航天大學出版社,2008.
[7] 郭 莉, 郭麗紅, 王炳錫. 極低速率語音編碼的新發(fā)展與應用[J].電聲技術,2005(6):38-41.
GUO Li, GUO Li-hong, WANG Bing-xi, New Development and Application of Very Low Bit Rate Speech Coding[J].Voice technology,2005(6):38-41.
[8] 計 哲, 李 曄, 崔慧娟. SELP 2.4 kb/s語音編碼算法跳躍幀判決及處理[J].清華大學學報(自然科學版), 2009, 49(8):1152-1155.
JI Zhe, LI Ye, CUI Hui-juan. Leaping frame detection and processing with a 2. 4 kb/s SELP vocoder[J]. J Tsinghua Univ (Sci & Tech), 2009, 49(8):1152-1155.
[9] 張建偉, 賀天宏, 李軍林.高質量的0.6kb/s聲碼器算法[J].清華大學學報(自然科學版), 2003,43(4):449-452.
ZHANG Jian-wei, HE Tian-hong, LI Jun-lin. High quality 0.6 kb/s speech coding algorithm[J]. J Tsinghua Univ (Sci & Tech), 2003,43(4):449-452.
[10] Texas Instruments. TLV320AIC10 datasheet [EB/OL].2000[2013.2]http://www.21icsearch.com/pdf-49BDA84ABD1C6417/TLV320AIC10.html,2000/2013-02-02.
[11] Texas Instruments.LM2575 datasheet [EB/OL]2005[2013.4]. http://www.21icsearch.com/pdf-DA3C53A4A17E8D48/LM2575.html.
[12] National Semiconductor. LM1117 datasheet [EB/OL]2005[2013.4].http://www.21icsearch.com/s_LM1117.html?stype=pdf&t1=&keyword=LM1117.
[13] 王永虹.STM32系列ARM Cortex-M3微控制器原理與實踐[M].北京:北京航空航天大學出版社,2008.
[14] 崔 鳴, 尚 麗, 顏廷秦.基于ARM的帆板控制系統(tǒng)設計與實驗分析[J].實驗室研究與探索,2012.31(9):57-62.
CUI Ming, SHANG Li, YAN Tin-qin. Design and Experimental Analysis of a Sailboard Control System Based on ARM[J]. Research and Exploration in Laboratory,2012.31(9):57-62.
[15] 張立華, 楊瑩春. 情感語音變化規(guī)律的特征分析[J].清華大學學報 (自然科學版),2008.48(S1):652-657.
ZHANG Li-hua, YANG Ying-chun. Emotional speech characteristics[J]. J Tsing hua Univ (Sci & Tech), 2008.48(S1):652-657.