摘 要: 以數(shù)字信號處理器" title="數(shù)字信號處理器">數(shù)字信號處理器ADSP2186L為核心,,通過單片機進行系統(tǒng)控制,,設計語音撥號器,,實現(xiàn)語音控制的自動撥號功能,。
關鍵詞: DSP 語音識別 雙音多頻
隨著語音信號處理理論以及超大規(guī)模集成電路的發(fā)展,,語音識別,、語音編碼以及語音合成技術逐步走向實用化,。國外已有相應的應用電子產(chǎn)品問世(如美國Sensory公司的產(chǎn)品),,國內市場上也出現(xiàn)了具備語音識別功能的手機(如PHILIPS,SAMSUNG等公司的產(chǎn)品),。本文介紹的基于ADSP2186L的語音撥號器集語音識別,、語音編解碼、語音提示,、語音合成以及雙音多頻撥號功能于一體,,與現(xiàn)有產(chǎn)品相比具有容量大,識別率高,,使用方便的優(yōu)點,。
1 系統(tǒng)功能
·可存儲200個用戶詞條,,800個電話號碼。
· 支持語音查詢方式,,用戶只需口述詞條,,即可獲得相應的電話號碼。同時兼容手動查詢方式,。
· 具有方便的編輯功能(增加,、刪除、修改用戶記錄),。
· 具有雙音多頻撥號功能,,使用普通電話機便可實現(xiàn)自動撥號。
2 系統(tǒng)整體模塊設計
整個系統(tǒng)可分為信號處理單元,,系統(tǒng)控制單元和用戶界面單元共三個功能模塊,。
2.1 信號處理單元
本單元包括數(shù)字信號處理器,編解碼器" title="編解碼器">編解碼器和存儲器,。
作為系統(tǒng)語音信號處理核心的ADSP2186L是ANALOG DEVICES公司生產(chǎn)的低電壓16位定點數(shù)字信號處理器,。該芯片具有以下特點:
· 運算速度33MIPS;
· 片內含40K Byte RAM,,分為16K Byte的程序RAM及24K Byte的數(shù)據(jù)RAM,;
· 兩路獨立可編程全雙工串行通信接口,支持A律/μ律的硬件語音解壓擴,,支持自動緩沖區(qū)操作,;
· 4M Byte的外部尋址空間;
· 支持內外存之間的DMA操作,;
· 13個可編程的I/O" title="I/O">I/O口,。
DSP在系統(tǒng)中主要完成語音信號的特征提取,端點檢測和模板匹配,,同時負責用戶記錄的管理,。
與ADSP2186L配套使用的是ANALOG DEVICES公司最新生產(chǎn)的低電壓16位編解碼器AD73311L,該芯片通過設置相應的寄存器可實現(xiàn)8~64kHz的多種采樣頻率,,具有可編程的輸入輸出增益控制,。該芯片在系統(tǒng)中完成語音信號的A/D,D/A轉換,。
系統(tǒng)存儲器選用SILICON STORAGE TECHNOLOGY公司生產(chǎn)的8M位快閃存儲器(Flash Memory)SST39VF080Q,,主要存儲兩部分內容,DSP的應用程序和用戶的語音記錄" title="語音記錄">語音記錄數(shù)據(jù),。該芯片具有軟件寫保護功能,,可以防止應用程序的意外更改,全片分為256個4KByte的扇區(qū),,適于語音記錄的存取,。
2.2 系統(tǒng)控制單元
選用SAMSUNG公司生產(chǎn)的4位單片機KS57C2308,,該芯片主要負責系統(tǒng)整體流程控制以及用戶界面控制。KS57C2308具有較寬的工作電壓,,同時提供段式液晶的驅動,,具有較強的I/O操作能力,適合應用于要求多個I/O口以及液晶顯示的工作環(huán)境,。采用KS57C2308可以簡化系統(tǒng),,并使系統(tǒng)具有較好的外部接口擴展能力。
2.3 用戶界面單元
包括鍵盤,、液晶,、駐極話筒和揚聲器四部分。
系統(tǒng)硬件模塊結構如圖1所示,。
2.4數(shù)字信號處理器與編解碼器之間的通信
數(shù)字信號處理器ADSP2186L與編解碼器之間的通信通過獨立的串行口完成,。具體連線如圖2所示,信號說明如表1所示,。
由于AD73311L采取自接外部晶振,,通過內部設置分頻寄存器確定采樣率的工作方式,ADSP2186L的SCLK,、TFS,,RFS均設為外部輸入。采用DSP的串口時序進行通信,。
2.5 數(shù)字信號處理其余單片機間的通信
ADSP2186L與單片機的接口與此類似,,區(qū)別在于ADSP2186L的SCLK、TFS,、RFS均設為內部輸出,。單片機通過通用的I/O口模擬DSP的串口時序,,通信協(xié)議采用自定義的數(shù)據(jù)包格式,,速度快,可靠性高,。單片機同時控制DSP的復位引腳,,進一步保證系統(tǒng)工作的可靠性。
2.6 數(shù)字信號處理器與外部存儲器的接口
DSP與外部存儲器之間通過地址和數(shù)據(jù)總線連接,,利用DSP的BMS,、WR、RD引腳實現(xiàn)對外部存儲器存的片選及讀寫控制,。系統(tǒng)復位時,,DSP由外部存儲器中自動加載程序,系統(tǒng)運行過程中的數(shù)據(jù)通過DMA方式進行傳輸,。
單片機通過專用的液晶驅動引腳控制液晶,,通過通用的I/O引腳完成鍵盤掃描,。
3 系統(tǒng)軟件實現(xiàn)
系統(tǒng)軟件采取模塊化設計,根據(jù)功能將DSP的程序分為10個基本模塊,。
(1)系統(tǒng)初始化
初始化內容包括算法參數(shù),,狀態(tài)變量,端口設置,。
(2)通信接口
主要功能是接收單片機指令,,并在完成相應的操作序列后回送操作結果。
(3)語音記錄
使用DSP的自動緩沖區(qū)技術,,在用戶口述詞條的過程中,,實時提取用于識別和回放的特征參數(shù)" title="特征參數(shù)">特征參數(shù),利用高性能的端點檢測算法去除靜音段及噪聲段,,將實際語音段的特征數(shù)據(jù)保存在數(shù)據(jù)RAM中,。
(4)語音識別
使用模式識別方法將數(shù)據(jù)RAM中的特征參數(shù)與外部存儲器中保存的現(xiàn)有用戶記錄相比較,找出最相近的記錄作為識別結果,,獲得相應的記錄指針,。
(5)語音提示
利用預先編碼的數(shù)據(jù)合成語音,用于對用戶的相應操作進行提示,,方便用戶使用,,減少誤操作的可能性。編解碼采用多脈沖線性預測編碼(Multi-Pulse Linear Predict Code)算法,,能以較低的碼率獲得較高質量的合成語音,。
(6)語音回放
利用“語音記錄”過程中提取的回放特征參數(shù)合成語音,用于用戶檢驗記錄結果或識別結果,。根據(jù)參數(shù)提取的實時性要求,,此處采取速度快,合成質量好的編解碼算法,。
(7)增加記錄
將“語音記錄”中提取的特征參數(shù)連同相應的用戶電話號碼存入外部存儲器,。同時修改記錄指針。
(8)修改記錄
保持記錄的特征參數(shù)不變,,只修改電話號碼,。
(9)刪除記錄
刪除整個用戶記錄,包括特征參數(shù)和電話號碼,,同時清除相應指針,。
(10)雙音多頻撥號
利用級數(shù)展開的方法合成正弦信號,經(jīng)編解碼器進行D/A轉換后至揚聲器輸出,,實現(xiàn)自動撥號功能,。
單片機利用鍵盤接收用戶指令,通過功能模塊的不同組合方式,,可以形成多種控制流程,,以適應不同應用場合的需要,。
系統(tǒng)軟件框圖如圖3所示。
4 系統(tǒng)性能測試
本系統(tǒng)具有較高的識別率,,對于普通詞條,,識別率超過99%,對于發(fā)音相近的易混淆詞條,,如“李平,,李寧,李丁”,,識別率也可達到90%以上,。同時,本系統(tǒng)具有良好的用戶界面,,用戶在語音提示下完成相應操作,,方便快捷。
本系統(tǒng)具備語音撥號器的基本功能,,由于它的軟件和硬件設計都具有模塊化特性,,很容易改造成適用于其他應用場合的語音控制系統(tǒng)。因此,,本系統(tǒng)具有較為廣泛的應用前景,。
參考文獻
1 楊行峻,遲惠生等.語音信號數(shù)字處理.北京:電子工業(yè)
出版社,,1995
2 ADSP-2100 FAMILY USER'S MANUAL,、 ANALOG DE-VICES、 1995
3 KS57C2308 USER'S MANUAL,、 SAMSUNG ELECTRON-ICS,、 1998
4 FLASH MEMORY DATA BOOK、 SILICON STORAGE TECHNOLOGY,、 1999