張 顯,賀秀玲
(防災科技學院,河北 三河 065201)
本系統主要以DSP為核心完成語音信號識別系統的設計,其電路主要由三部分電路組成,DSP芯片及其外圍電路、A/D轉換電路和接口電路組成,基本的工作原理和芯片的選擇是:首先選擇TLC320AD50對語音信號進行A/D轉換,再選擇DSP芯片TMS320C5510對信號進行濾波、端點檢測、語音信號增強、特征參數提取等語音信號處理進而進行識別,并通過LED檢測識別結果進而報警。
選用DSP器件作為語音信號處理的專用微處理器,因為具有以下4個特點:
(1)DSP內部采用改進的哈佛架構(Modified Harvard),即程序空間與數據存儲空間分開各有獨立的地址總線和數據總線,允許同時訪問程序存儲器和數據存儲器,實現高度并行操作。如可以在一條指令中,同時執行3次讀操作和1次寫操作。此外,還可以在數據總線與程序總線之間相互傳送數據,使處理器的性能大大提高。
(2)采用流水線結構,增強了軟件程序的處理能力。每條指令的執行可劃分為取指令、譯碼、取操作數和執行等幾個階段。在DSP中,采用流水線結構,在程序運行過程中這幾個階段是重疊的,這樣將指令周期降低到最小值。
(3)多處理單元。DSP內部一般都包括多個處理單元,如算術邏輯運算單元、累加器、輔助寄存器運算單元以及硬件乘法器等。它們可以在一個指令周期內同時進行運算。因此,DSP在進行連續的乘加運算時,每一次乘加運算都是單周期的。DSP的這種多處理單元結構,特別適用于FIR和IIR濾波器。
(4)運算精度高。早期DSP的字長為8位,后來逐步提高到16位、24位、32位。為防止運算過程中溢出,有的累加器達到40位。此外,一批浮點DSP,則提供了更大的動態范圍。
本設計核心芯片DSP選用TMS320VC5410DSP,該芯片采用了專用硬件邏輯CPU、片內存儲器、片內外設及高度專業化的精簡指令集計算(RISC),其結構采用改進的哈佛結構,獨立的數據和地址總線,保證了指令和數據能得以并行處理。在語音識別中,首先是濾波器的設計,TMS320VC5410在指令集和硬件結構上,對濾波器算法的實現,有專門的考慮。其基本實現方法是:首先是在指令中設置了MACD指令,它的功能是將數據區的兩個數相乘以后,再與累加器中的值累加,運算結果仍保留于累加器中,而為下一次操作準備;其次在硬件上,設計了間接尋址時的循環尋址功能,即將濾波器系數保存于一個可循環尋址的數據緩沖區,尋址指針由低地址自動增長,當達到緩沖區頂部時,自動返回低地址重新尋址,這樣,配合單指令重復指令RPT,就可以快速實現卷積操作。
系統語音信號處理的實現主要通過軟件來完,軟件設計主要包括DSP編程和PC編程,要完成的功能是通過外部設備采集語音信號,經TLC320AD50進行模擬信號轉換成數字信號后進入TMS320C5510和PC機進行處理,整個程序處理過程基本是在PC機上完成,包括語音信號預處理、端點檢測,語音信號增強等,處理后的信號在PC機上進行波形顯示、頻譜分析等。DSP編程的主要任務是初始化管理板上的資源和完成語音處理的算法。PC機編程重點則是完成與"DSP的串行通信,用戶使用系統界面和對信號的存儲分析顯示等功能。本軟件設計以TI提供的功能強大的CCS(Code Composer Studio)為集成開發環境。
TMS320C5510控制著整個系統的工作流程和運行狀態,系統上電CPU復位后,首先由TMS320C5510完成自身的初始化,包括配置RAM塊,設置數據頁指針、中斷和I/O模式,設置中斷屏蔽位和等待狀態位,設置定時器模式、初值、串行口等,然后開始啟動TLC320AD50,等待中斷。TLC320AD50負責信號采集,并將轉換的數據存入到一級緩存器FIFO中。當FIFO達到半時向TMS320C5510提出中斷申請,TMS320C5510響應中斷,讀取采樣數據,進行語音信號端點檢測等處理后,存入二級緩沖器CRAM中,并通過USB接口與PC機連接,可以在PC機上進行語音信號處理、存儲示波顯示、波形實時顯示等。要輸出的數據再送入TLC320AD50進行模數轉換,實現聲音回放。主程序和中斷服務程序流程框圖如圖1、圖2所示。

圖1 主程序流程框圖

圖1 中斷服務程序流程框圖
數據采集與處理是采用DSP與TLC320AD50組成,TLC320AD50集成了16位A/D和D/A轉換器,采用速率可達22Kbit/s,它具有7個控制寄存器,AD50的采用速率有寄存器4設定。
當選用PLL模式時(D7=0),采樣速率為:FS=MCLK/128×N;
當不選用PLL模式時(D7=1),采樣速率為:FS=MCLK/256×N;其中:N=1~8的整數。
其TLC320AD50的16位傳輸的時序圖如圖3所示,FS為幀同步信號。DSP提供了3個多通道緩沖串行口(MCBSP),為魔術接口提供了極大的便利。MCBSP提供了雙工的傳輸機制,數據長度可為8、12、16、20、24、32位。數據經MCBSP的DR和DX引腳傳輸,控制信號經CLKR、CLKX、FSR、FSX 4個引腳決定,如圖4所示。

圖3 TLC320AD50的16位傳輸的時序圖

圖4 DSP與TLC320AD50硬件接口
(1)TMS320VC5510采用雙電源供電,其中I/O供電電壓為3.3 V,內核供電電壓僅為1.26V。由于實際系統使用5V電源,所以必須采用電源轉換芯片。選用PT75233和PT70302兩塊電源轉換芯片,與DSP可以進行無縫連接,分別接上少量的外圍電路,即可調整兩塊芯片的輸出電壓分別為3.3 V和1.26V。
(2)由于TMS320VC5510片上沒有FLASH且片內RAM只有64K,要想使其成為獨立系統就必須外擴外部存儲器,這里選用了存儲容量為256K的低功耗FLASH芯片SST39VF400A。當系統上電后,DSP芯片自動讀取FLASH芯片中保存的程序并自主運行程序。
(3)JTAG可以對DSP片上的各引腳邏輯值進行掃描和測試,片內的各種資源都能通過JTAG口進行訪問,包括各寄存器、ROM、RAM、各片內外設等,還可通過JTAG口下載程序進行系統調試,功能很強大。
文章設計了語音識別系統,該系統以TMS320VC5510DSP為核心,結合A/D和D/A轉換器TLC320AD50構成了一個閉環設計系統,可自發自收,而算法主要集中在TMS320VC5510DSP芯片內部進行模塊化處理,這給系統的軟硬件設計帶來了極大的方便,這種設計思路還可用于各種信號處理儀器中。經驗證,本系統設計成功后可以有效識別災后生命體。