基于TMS320VC5509A的语音识别与控制系统
-
基于
TMS320VC5509A
的语音识别与
控制系统
关胜平,何培宇,刘珂含,李
锦
时间
:2
008
年
07
月
03
日
字
体
:
大
中
小
p>
关键词
:
语音信号定点运算端点检测浮点运
算语音识别
摘
要:
<
/p>
设计并实现了一种基于定点数字信号处理器(
DSP
)的
语音识别
与控制系统。
由音频编解码芯片(
TLV320AIC23
)负责采集
语音信号
;以定点
DSP
(
TMS320VC5509A
)作为
运算处理单元;
通过
定点运算
与<
/p>
浮点运算
的有机结合,
解决了处理速度与
处理精度之间的矛
盾;在保证处理速度的前提下,提高了运算精度和识别率。
关键词:
定点
DSP
定点运算
浮点运算
端点检测
模板匹配
语音识别(
Speech <
/p>
Recognition
)是机器通过训练和匹配过程把语音信号
转变为相应的
文本或命令的技术。
关于语音识别技术,
先后出现了动态时间弯折
(
DTW
)
、
隐马尔可夫和人
工神经
网络三种主要方法
。由于每种方法都涉及大量的乘加运算,并且计算精度是算法性
能的有效保障,
因此对处理器的运算能力要求较高。
< br>近年大规模集成电路的快速发展,
为语
音识别的实现创造
了硬件条件。目前,基于
DSP
的语音识别系统多以浮点型
p>
DSP
为主
,但
其
成本较高。本文以
TI
公司的较低成本定点
DSP TMS320VC5509A
作为处理芯片。在软件编
程时,
考虑运算速度和精度对性能的影响,
将定点运算与基
于定点
DSP
的浮点运算巧妙结合,
既
保证了处理速度,又提高了运算精度和识别率。此外,该系统的
DSP
< br>芯片自带
USB
接口,
可使程序
下载不借助于硬件仿真器,
便于推广应用;可编程逻辑器件(
C
PLD
)
能够根据识别
结果发出相应的
控制信号以驱动各种控制对象;外扩
Flash
达1M×16B
it,不仅能存储较多
数量的模板,也可实现程序的并行加载,
使系统能够脱机运行,便于携带。
通过对语音信号
的采集与识别
,
能够完成对特定人、
小词汇量、
孤立
词的识别,
并且能发出相应的控制信号,
以达到系统的设计要求
。实践验证了该系统具有可靠性、稳定性和灵活性。
1
语音识别原理
语音识别原理框图如图
1
所示。语音信号输入之后,
预处理和数字化是进行语音识别的
前提条件。其中,预处理主要是进行预滤波,保留正常
人的
300
~
3400Hz
的语音信号;数字
化是要进行
A/D
转换及抗混叠等处理;特征提取是进行语音信号训练和识别必不可少的步
骤。
能够体现语音信号特征的参数包括:
(1)
基于
LPC
的倒谱参数;
(2)M
el
系数的倒谱参数;
(3)
采用前沿
数字信号处理技术的特征分析手段,
如小波分析、
时
/
频域分析、
人工神经网络
等。
本文采用基于
LPC
的倒谱参数
表示方法,
提取出的特征值存入参考模式库中,
用来匹配
待识别语音信号的特征值。
匹配计算是进行语音识别的核心部分,
p>
由待识别人的语音经过特
征提取后,
与系统
训练时产生的模板进行匹配,
在说话人辨认中,
取与待识别语音
相似度最
大的模型所对应的语音作为识别结果,这就是语音识别的整个过程
。
[1]
[2]
[1]
2
硬件结构部分
本系统的硬件结
构框图如图
2
所示。
此系统的核心器件是
TI
公司的
TMS
320VC5509A
定点
DSP
芯片
。它是系统的运算处理单
元,具有
2
个
乘法器
(MAC)
,
4
个累加器
(ACC)
;
40<
/p>
位、
16
位的算术逻辑单元
(ALU)
各一个,这
大大增强了
< br>DSP
的运算能力;指令字长不只单一的
16
位,可扩展到最高
48
位,数据字长
16
位;
在
144MHz<
/p>
下工作,
指令周期可达
6.94ns
p>
。
TMS320VC5509A
还提供高速
的多通道缓冲串口
McBSP(Multi-channel
Buffererd
Serial
Ports
)
,
DSP
可通过
McBSP
与其他
DS
P
、编解码器
等器件相连。
McBSP
具有全双工通信,双缓冲数据寄存器,允许传送连续的数据流,能够向
< br>CPU
发送中断,向
DMA
控制
器发送
DMA
事件,可设置帧同步脉冲和时钟信号的极性等功能
,
这大大方便了
DSP
采集音频信号<
/p>
。除此之外,
TMS320VC5509A
还提供了更为高效的外部存
储器接口(
EMIF
)
,以往
DSP
的空间选通
信号被片选信号取代,而每个片选信号分别占用不
同的地址空间,这样就不需要外部的译
码电路,从而实现了与外部设备的无缝连接,可使
DSP
外部存
储空间扩大到满足系统要求。值得强调的是,可通过
USB
接口
对
TMS320VC5509A
烧写程序而不必借助仿真器。<
/p>
正是基于这些优点,
选择该芯片可节省开发资金,
减小电路板
面积。
TLV320AIC23
是
TI
公司的
一款低成本、低功耗的音频编解码芯片
(CODEC)
,在本系
统中
负责采集语音信号。它与本系统相关的性能参数如下:
(1
)
支持
8kHz
~
96kHz
可调采样率;
(2)
与
DSP
连接,主从类型可通过软件编写来实现;
(3)DSP
可通过
I2C
总
线来配置
TLV320AIC23
的寄存器;
< br>(4)
采集语音信号字长
16/20/24/32Bit
;
(5)MIC
音频输入具有强抗
p>
噪性;
(6)
具有可调
1
~
5dB
的完整缓存放大系统<
/p>
。
EPM3128ATC10
0-10
可编程逻辑器件
(CPLD)
在本系统中担当两方面的职能:
(1)
作为控制
部件,接收
DSP
发出的信号,经逻辑判断后,驱动诸
如电机、发光二极管等器件;
(2)
用于
DSP
地址线的扩展。
TMS320VC5509A
只有
14
根地址线,但它的外部存储空间可以扩
展到
16MB(
字节寻址
)
,显然,
DSP
的固有地址线是无法满足要求的。
本系统采用
CPLD
完成地址
线的扩展
[5][6]
[4]
[3]
。
[7]
HY57V6
41620
同步动态存储器
(SDRAM)
,
容量为4M×16Bit。
作为
RAM
的扩展,
大大增强了
DSP
p>
的存储与运算能力
。
SST39VF1601
闪存存储器
< br>(Flash)
,
容量为1M×16Bit。
在这个系统中
[8]
,
它
主要用来存
储程序代码。上电后,
DSP
从外部
Flash
加载并执行程序代码,使系统能够脱机运行
。
3
软件模块部分
软件流程如图
3
所示。系统采集语音信号后,首先要
进行预滤波和预加重;接着将语音
信号进行分帧,
由于语音信号
具有极强的相关性,
因此在分帧时,
要考虑帧重复。
本文将语
音信号以
256
个采样点为一帧,两帧之间的重复点数为
80
;然后计算每帧信
号的短时能量与
短时平均过零率,
这也是接下来进行端点检测的
依据;
利用门限判决进行端点检测后,
提取