語音識別(Speech Recognition)是機器通過訓(xùn)練和匹配過程把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令的技術(shù)。關(guān)于語音識別技術(shù),先后出現(xiàn)了動態(tài)時間彎折(DTW)、隱馬爾可夫和人工神經(jīng)網(wǎng)絡(luò)三種主要方法[1]。由于每種方法都涉及大量的乘加運算,并且計算精度是算法性能的有效保障,因此對處理器的運算能力要求較高。近年大規(guī)模集成電路的快速發(fā)展,為語音識別的實現(xiàn)創(chuàng)造了硬件條件。目前,基于DSP的語音識別系統(tǒng)多以浮點型DSP為主[2],但其成本較高。本文以TI公司的較低成本定點DSP TMS320VC5509A作為處理芯片。在軟件編程時,考慮運算速度和精度對性能的影響,將定點運算與基于定點DSP的浮點運算巧妙結(jié)合,既保證了處理速度,又提高了運算精度和識別率。此外,該系統(tǒng)的DSP芯片自帶USB接口,可使程序下載不借助于硬件仿真器,便于推廣應(yīng)用;可編程邏輯器件(CPLD)能夠根據(jù)識別結(jié)果發(fā)出相應(yīng)的控制信號以驅(qū)動各種控制對象;外擴Flash達(dá)1M×16Bit,不僅能存儲較多數(shù)量的模板,也可實現(xiàn)程序的并行加載,使系統(tǒng)能夠脫機運行,便于攜帶。通過對語音信號的采集與識別,能夠完成對特定人、小詞匯量、孤立詞的識別,并且能發(fā)出相應(yīng)的控制信號,以達(dá)到系統(tǒng)的設(shè)計要求。實踐驗證了該系統(tǒng)具有可靠性、穩(wěn)定性和靈活性。
1 語音識別原理
語音識別原理框圖如圖1所示。語音信號輸入之后,預(yù)處理和數(shù)字化是進(jìn)行語音識別的前提條件。其中,預(yù)處理主要是進(jìn)行預(yù)濾波,保留正常人的300~3400Hz的語音信號;數(shù)字化是要進(jìn)行A/D轉(zhuǎn)換及抗混疊等處理;特征提取是進(jìn)行語音信號訓(xùn)練和識別必不可少的步驟。能夠體現(xiàn)語音信號特征的參數(shù)包括:(1)基于LPC的倒譜參數(shù);(2)Mel系數(shù)的倒譜參數(shù);(3)采用前沿數(shù)字信號處理技術(shù)的特征分析手段,如小波分析、時/頻域分析、人工神經(jīng)網(wǎng)絡(luò)等。本文采用基于LPC的倒譜參數(shù)表示方法,提取出的特征值存入?yún)⒖寄J綆熘,用來匹配待識別語音信號的特征值。匹配計算是進(jìn)行語音識別的核心部分,由待識別人的語音經(jīng)過特征提取后,與系統(tǒng)訓(xùn)練時產(chǎn)生的模板進(jìn)行匹配,在說話人辨認(rèn)中,取與待識別語音相似度最大的模型所對應(yīng)的語音作為識別結(jié)果,這就是語音識別的整個過程[1]。

2 硬件結(jié)構(gòu)部分
本系統(tǒng)的硬件結(jié)構(gòu)框圖如圖2所示。

此系統(tǒng)的核心器件是TI公司的TMS320VC5509A定點DSP芯片。它是系統(tǒng)的運算處理單元,具有2個乘法器(MAC),4個累加器(ACC);40位、16位的算術(shù)邏輯單元(ALU)各一個,這大大增強了DSP的運算能力;指令字長不只單一的16位,可擴展到最高48位,數(shù)據(jù)字長16位;在144MHz下工作,指令周期可達(dá)6.94ns。TMS320VC5509A還提供高速的多通道緩沖串口McBSP(Multi-channel Buffererd Serial Ports),DSP可通過McBSP與其他DSP、編解碼器等器件相連。McBSP具有全雙工通信,雙緩沖數(shù)據(jù)寄存器,允許傳送連續(xù)的數(shù)據(jù)流,能夠向CPU發(fā)送中斷,向DMA控制器發(fā)送DMA事件,可設(shè)置幀同步脈沖和時鐘信號的極性等功能,這大大方便了DSP采集音頻信號[3]。除此之外,TMS320VC5509A還提供了更為高效的外部存儲器接口(EMIF),以往DSP的空間選通信號被片選信號取代,而每個片選信號分別占用不同的地址空間,這樣就不需要外部的譯碼電路,從而實現(xiàn)了與外部設(shè)備的無縫連接,可使DSP外部存儲空間擴大到滿足系統(tǒng)要求。值得強調(diào)的是,可通過USB接口對TMS320VC5509A燒寫程序而不必借助仿真器。正是基于這些優(yōu)點,選擇該芯片可節(jié)省開發(fā)資金,減小電路板面積。
TLV320AIC23是TI公司的一款低成本、低功耗的音頻編解碼芯片(CODEC),在本系統(tǒng)中負(fù)責(zé)采集語音信號。它與本系統(tǒng)相關(guān)的性能參數(shù)如下:(1)支持8kHz~96kHz可調(diào)采樣率;(2)與DSP連接,主從類型可通過軟件編寫來實現(xiàn);(3)DSP可通過I2C總線來配置TLV320AIC23的寄存器;(4)采集語音信號字長16/20/24/32Bit;(5)MIC音頻輸入具有強抗噪性;(6)具有可調(diào)1~5dB的完整緩存放大系統(tǒng)[4]。
EPM3128ATC100-10可編程邏輯器件(CPLD)在本系統(tǒng)中擔(dān)當(dāng)兩方面的職能:(1)作為控制部件,接收DSP發(fā)出的信號,經(jīng)邏輯判斷后,驅(qū)動諸如電機、發(fā)光二極管等器件;(2)用于DSP地址線的擴展。TMS320VC5509A只有14根地址線,但它的外部存儲空間可以擴展到16MB(字節(jié)尋址),顯然,DSP的固有地址線是無法滿足要求的。本系統(tǒng)采用CPLD完成地址線的擴展[5][6]。
HY57V641620同步動態(tài)存儲器(SDRAM),容量為4M×16Bit。作為RAM的擴展,大大增強了DSP的存儲與運算能力[7]。
SST39VF1601閃存存儲器(Flash),容量為1M×16Bit。在這個系統(tǒng)中[8],它主要用來存儲程序代碼。上電后,DSP從外部Flash加載并執(zhí)行程序代碼,使系統(tǒng)能夠脫機運行。
3 軟件模塊部分
軟件流程如圖3所示。系統(tǒng)采集語音信號后,首先要進(jìn)行預(yù)濾波和預(yù)加重;接著將語音信號進(jìn)行分幀,由于語音信號具有極強的相關(guān)性,因此在分幀時,要考慮幀重復(fù)。本文將語音信號以256個采樣點為一幀,兩幀之間的重復(fù)點數(shù)為80;然后計算每幀信號的短時能量與短時平均過零率,這也是接下來進(jìn)行端點檢測的依據(jù);利用門限判決進(jìn)行端點檢測后,提取每幀信號的LPC系數(shù),作為該幀信號的特征值;最后,用語音信號的特征值與模板逐個進(jìn)行匹配。相似度最大的模板所對應(yīng)的語音信號為識別結(jié)果,根據(jù)識別結(jié)果就可以向外發(fā)出控制信號。






