2 係統硬件設計
通過針對擬人機器人的特點,對係統進行分析和方案設計,最終確定本係統的框圖如圖2所示。本係統的硬件基於一個以DSP(TMS320VC5416)為主處理器的硬件平台,硬件平台主要包括:語音輸入輸出模塊、主處理器DSP模塊、存儲器模塊、單片機MCU模塊、485串口通信模塊。其中語音輸入輸出模塊實現了語音信號的采集和輸出;主處理器DSP模塊(TMS320VC5416)主要完成語音識別所需的計算,其性能能夠達到實時處理的要求;存儲器模塊包括一片FLASH和兩片SRAM,用FLASH作為DSP的可編程存儲器,SRAM分別作為DSP的數據和程序存儲器;單片機MCU模塊完成對擬人機器人的運動控製;485串口通信模塊實現單片機MCU和PC機之間的通信。
2.1 主處理器DSP模塊介紹
TMS320VC5416(簡稱VC5416)是TI公司的C54X家族的成員之一,它是基於先進的改進哈佛結構的16位定點DSP。它具有C54X的共同特點,高性能低功耗,具有高達160MHz的主頻,核心電壓1.5V,運行於此頻率時功耗僅為90mW;擁有一條程序總線和三條數據總線,片內集成有高度並行性的算術邏輯單元(ALU)、專有硬件邏輯、片內存儲器和片內外設等。
片內可屏蔽ROM中固化有啟動裝載程序(BOOTLOADER)和中斷向量表等。係統上電時,BOOTLOADER自動把用戶代碼從外部存儲器搬移到程序空間。複位以後,中斷向量表可被重新映射到程序空間的任何(128Word)的開始處。為了與慢速的外設通信,VC5416提供了等待狀態發生器,通過軟件設置等待周期的個數,不僅降低了係統硬件設計的複雜性,而且為係統帶來了很大的靈活性。VC5416片內集成了軟件可編程的鎖相環時鍾電路,它隻需要一個參考時鍾輸入就可以得到31種不同頻率的輸出時鍾,最大的乘率因子(在寄存器CLKMD中設置)為15,最小的為0.25。這樣,一方麵可利用較低頻率的外部時鍾源產生較高頻率的CPU時鍾,另一方麵在不工作時可降低CPU時鍾頻率至外部頻率的四分之一,從而降低了CPU的功耗。
2.2 語音輸入輸出模塊介紹
語音輸入輸出模塊采用TI公司推出的一款高性能立體聲音頻Codec芯片TLV320AIC23B,內置耳機輸出放大器,支持MIC和LINE IN兩種輸入方式,且對輸入和輸出都具有可編程增益調節。其最主要的優點是和TI公司的DSP芯片的McBSP接口完全兼容,與本設計中使用的DSP芯片能夠實現無縫接口。
AIC23的模數轉換((ADCs)和數模轉換(DACs)部件高度集成在芯片內部,采用了先進的Sigma-delta過采樣技術,可以在8K到96K的頻率範圍內提供16bit,20bit,24bit和32bit的采樣,ADC和DAC的輸出信噪比分別可以達到90dB和100dB。與此同時,AIC23還具有很低的能耗,回放模式下功率僅為23mW,省電模式下更是小於15uW。由於具有這些優點,使得AIC23是一款非常理想的音頻模擬I/0器件,可以很好地適用於隨聲聽(如CD,MP3),錄音機等數字音頻領域。由TLV320AIC23組成的語音輸入與輸出模塊不僅采樣率高(最高可達96KHz),而且外圍電路簡單,性價比高。最方便之處是能與McBSP無縫接口(它是TI原廠製造)。
2.3 存儲器模塊介紹
VC5416 DSP片內提供了16K×16bit的ROM和128K×16bit的SRAM。其中ROM內部包含的Boot loader程序在係統上電時能把外部存儲器中的源程序調到內部存儲器中,允許源程序存放在速度較慢的外部存儲器中,降低了硬件資源的成本,片內ROM由廠家定製,位於程序空間OxF000-OxFFFFo。On-Chip RAM分為兩個大小都為64K的塊,其中DARAM和SARAM各有8塊,每塊容量為8K×16bit。在DARAM中,有4塊定位在數據空間0x0080-Ox7FFF(當OVLY=1時,可以被映射到程序/數據空間),剩下的4塊DARAM被定位到程序空間0x18000-Ox1FFFF。通過設置DROM=1可使定位在程序空間的0x18000-Ox1FFFF的RAM映射到數據空間。在一個周期內它支持兩次讀操作,或者一次讀操作和一次寫操作。SARAM被定位到程序空間0x28000-Ox2FFFF和0x38000-Ox3FFFF。