1、 基于 DSP56F827 的 声控收音机 比赛编号 : B10900 日 期: 10/06/02 姓 名: 崔涛 (中文) Cui Tao(英文) 职 业: 本科生 通讯地址: 西安市西安交通大学信息工程系 9970 邮 编: 710049 电子邮箱: 电 话: 029 2670673 指派单位名称: 西安交通大学信息工程系 单位电话: 029 2668772-549 目 录 引 言 . 3 1. 声控收音机原理 4 1.1 语音识别基本原理 . 4 1.1 HMM 算法在本系统中的应用 . 5 1.2 软件无线电的基本原理 . 8 1.3 软件无线电实现的关键技术 . 9 1.4 DSP
2、 实现信号解调的算法模型 10 2. 系统概述 12 2.1 系统特性 . 12 2.2 系统概述 . 12 2.3 Motorola DSP56F827 简介 . 12 3. 系统硬件 13 3.1 混频电路 . 13 3.2 本地振荡电路 . 14 3.3 抗混叠滤波器 . 14 3.4 声音采集电路 . 15 3.5 中央处理模块 . 15 4. 系统软件 16 5. 结论 . 17 参考文献 . 17 基于 DSP56F827 的声控收音机 崔 涛,乔瑞萍 (西安交通大学电子与信息工程学院 710049 西安) 摘要: 本文首先介绍了语音识别和软件无线电的基本原理。设计了一种基于语音识
3、别和软件无线电的新型声控收音机。该收音机是以 Motorola 的 DSP56F827为核心,应用 HMM 模型和超外差式接收原理,本设计具有新颖和便携的特性。文中还简单介绍了 Motorola 的 DSP56F827 的特性以及与 TMS320C54 的区别。 关键字: DSP;语音识别;软件无线电;声控收音机 Voice Control Radio Based on DSP56827 Cui Tao, Qiao Ruiping (School of Electronic and Information Engineering, Xian Jiaotong University, Xian
4、710049, China) Abstract: At first, the methods of speech recognition and radio software are summarized in this paper. Then a hardware structure of Voice Control Radio, which adopts DSP56F827 as its main CPU, is introduced. This design is very novel and small in size. In the paper, the features of DS
5、P56F827 that are different from TMS320C54 are also introduced. Finally we also give the software flow chart in the end. Keywords: DSP; Speech recognition; Radio Software 引言 语言是人们交流的最直接的方式 ,语音交流的自然与舒适使得人们宁愿用语音界面与计算机交互,而不是通过键盘等低级的方式 。 尤其是对于中文等双字节表示的语言 , 输入成了相当一部分人的使用计算机的瓶颈。语音界面能支持很多应用。比如,电话簿查询,数据库语音查询
6、,办公听写系统,甚至机器语音翻译系统等等。这些应用背景促进了五十年代以来自动语音识别的研究。近四十年间,应用一系列的工程方法 模板匹配,知识工程,统计模型等,语音识别研究取得了很大进展。 软件无线电是最近几年在无线通信领域提出的一种新的通信系统体系结构,它的基 本思想是以开放性,可扩展性,结构最简的硬件为通用平台,把尽可能多的通信功能用可升级,可替换的软件来实现。而软件的加载或更新可以通过空中接口实现,所以使用起来更加快捷方便。 声控收音机就是用这些原理,在 DSP 平台上开发的新型的,方便的收音机。其中, DSP 是整个设计的核心,主要完成语音识别算法和解调算法。 1. 声控收音机的原理 1
7、.1 语音识别的基本原理 语音识别就是研究如何使机器能准确地听出人的语音及其内容,以便控制其它设备来满足人类的各种需要。语音识别的基本方法是预先分析出语音特征,按照要求送给机器储存起来,这个 语音参数库称为“模板库”,而这个过程称为“ 训练 ”。接着,待识别的语音经过与训练相同的分析,得到 语音参数 ,将它与模板库中的模板一一进行比较,失真最小的那个模板所代表的内容,就是识别结果,这个过程就称为“识别”。 一个孤立词识别系统的识别原理可以由图 1来表示。 图 1 孤立词识别系统原理框图 为了描述一个给定信号的性质,一般可以选择不同的信号模型。信号模型粗略的可以分为确定模型和统计模型两大类。确定
8、模型通常要利用信号的某些已知的特定性质,而统计模型要描述信号的统计性质。统计模型的基本假设是:信号可以用一个参数 随机过程来很好的加以描述,而且这个随机过程的参数可以用精确的很容易定义的方法加以确定或估计。考虑到语音信号的种种特点,相比较而言,采用统计模型会较为合适,目前发展最快,使用最广的统计模型就是隐式马尔可夫模型 (HMM)。 当采用统计模型来描述语音时,设 A 为待识别语音的声学信号, W 为识别基元组成的句子 (即基元序列 ),则语音识别的最终目的可以表示为是求解 W = a rg m ax P( W |A ) ( 1-1) 其中 W 是从众多的侯选中找到的识 别结果。 利用 Bay
9、es公式改写上式,有 P (W )P (A |W )P (W |A )= P (A ) ( 1-2) W = a r g m a x P( W ) P( A |W ) ( 1-3) 因为是在 A 确定的情况下选 W,所以 P(A)与 W 无关。 P(W)是语言模型的匹配结果, P(A/W)则是声学模型匹配得来的结果。因此,总体来讲,语音识别的关键技术包括自适应滤波,断点检测,语音建模等。 1.2 HMM 算法在本系统中的应用 1.2.1 噪声环境中基于短时分形的语音信号端点检测和 滤波方法 在噪声语音信号的处理中,噪声语音信号中的语音和非语音段的判定,即噪声语音信号的语音端点检测,是语音处理系
10、统中非常重要的工作,也是极其关键的一步工作。因为,在语音分析、语音滤波和增强中,语音信号的模型参数和噪声模型参数以及自适应滤波器中的适应参数都得依赖对应的信号段 (语音段或噪声段 )来计算确定。因此,只有准确地判定语音信号的端点,才能正确地进行语音处理。为了提高起止点检测的准确性,这里提出了一种非线性处理方法,即信号的短时分形维维数( Short-time Fractal Dimension)来进 行噪声语音信号的端点检测。 二维空间的时间信号图形的分形维数的物理含义是:在平面空间 2R 中,设有复杂曲线 L(如语音信号波形),以长度为 r 的直线段去测量 L,设需要的线段数为 N ,则使得测
11、量值 dN(r) r 不依赖于 r 的大小而取有限值的实数 d,则称 d为平面图形 L 的分形维维数。即: 0limN(r)=Cr( C 为常数 ) (1-4) 亦即: lg N ( r ) = - d lg r + lg C ( r 0 ) (1-5) 由于直接应用( 1 5)式求时间序列信号的分形维维数 d 是很困难的。因此,一般都将上述平面图形 L 的分形过程改用盒分形或网格分形。由于网格分形是一种简单实用的图形分形方式,特别适合于计算机进行数字处理,在数字图像和语音处理中也有人进行了研究和应用。 将语音信号 x(t)数字化为 x(i),并将其按一定时间长度进行分帧处理。考虑到语音的特点
12、,在 20ms 内信号近似平稳。同时又兼顾计算量和信号 x(i)的时变性,帧长一般控制在 128 点左右(分形的理论要求是长度 K 要长, K),即 k k k kx ( 1 ) ,x ( 2 ) ,x ( 3 ) , ,x ( 1 2 8 ),组成第 k 帧信号 k k - 1 k k + 1( x ( 0 ) = x ( 1 2 8 ) , x ( 1 2 9 ) = x ( 1 ) )。 令 128k i= 1D ( )= | x (i) -x (i+ 1 )| ( 1-6) 64k k = iD ( 2 ) = m a x x ( 2 i- 1 ) ,x ( 2 i) ,x ( 2 i
13、+ 1 ) - m in x ( 2 i- 1 ) ,x ( 2 i) ,x ( 2 i+ 1 ) ( 1-7) 以及 kkN ( )=D ( )/ (1-8) kkN (2 )= D (2 )/2 (1-9) kN( ) , kN(2 ) 分别表示用宽度为 及 2 的正方形网格覆盖第 k 帧信号图形所需要的网格格子数。 则 x(i)第 k 帧的短时分形维维数 (k) Fd 为: k k k F 2kl g N ( ) - l g N ( 2 ) D ( )d 1 l o gl g 2 D ( 2 ) (1-10) (1-10)式是用于动态计算 x(i)的分形维维数的近似平均算法。 设 x(i
14、)是数字化的噪声语音信号的时间序列, s(i)和 n(i)分别表示语音信号和加性噪声的时间序列: x(i )=s(i)+n(i) (1-11) 实际噪声语音处理过程中, (1-11)式的 x(i)是唯一能得到的数据信号, s(i)和n(i)是不可分离的。语音端点的检测就是要在可测量和可获得的数据 x(i)中判定语音 s(i)的起止点(端点)。 由于噪声语音信号 x(i)在语音段,特别是语音中韵母声音信号期的图形较高频噪声信号(如白噪声)的图形具有较大的周期性和规则性,也就是说语音信号的分形维维数较白噪声的分形维维数要小。所以,信号的短时分形维维数具备噪声语音信 号的端点检测能力。白噪声段的分形
15、维维数要比语音段信号的分形维数大,噪声段的分形维维数大约为: dF=1。 201578 左右,而语音段的分形维维数大约在 dF=1。 065891 1。 173043 之间。因此,时序信号的短时分形维维数是时域中用于提取信号特征的一种有效方法。 一个 1阶自回归平滑滤波器的数学表达式为: y ( i ) = ( i ) + ( 1 - ) y ( i - 1 ) ( 0 1 ) x (1-12) 式中, x(i)为噪声语音信号, y(i)是滤波后的输出信号,为平滑滤波的控制参数。在噪声语音的滤波中,参数应根据输入的信号是语音还是 噪声进行大小自动调整,即应具有自适应能力,要能根据输入信号的特征
16、动态地调整值。假设参数是 x(i)信号的短时分形维维数 dF 的函数,即 =f(dF) 。自适应滤波的应随输入信号 x(i)的不同帧而不同,即 (k) (k)F=f (d ) 。当滤波器输入信号为噪声时, (k)Fd较大, (k) 取值应小,而输入信号处于语音段时, (k)Fd 较小,则 (k) 取值要大。为了使算法应用于 DSP,取 (k) 与 (k)Fd 的函数关系为分段线性关系,如图 2 所示。图 2 中 (k)F 0d =1。 17 作为判定输入信号语音段和噪声段的门限值参数。 图 2 (k) 与 ()kFd 的关系 1.2.2 采用 VQ/HMM 的自学习语音识别系统 隐马尔可夫模型
17、是一个双重随机过程的统计模型,其基本随机过程是隐藏起来观测不到的,另一个随机过程则产生观测序列。设: 12 , , TO O O O 为观测序列; 12 , , , Tq q q q 为状态序列; T 为语音长度(以帧为单位); (1 )iS i N为第 i 个状态, N 为状态数; (1 )kV i N 为第 k 个码矢, M 为量化器 阶数;又HMM 模型 ( , )AB ,其中,状态转移概率矩阵 ij N NAa ,1 | ,1 ,1i j t j t ia P q S q S i N j N ;观测序列分布概率矩阵 ij N MBb ,( ) | j k t jb k P V q S,
18、 1 ,1i N k M 。 定义:前向概率 12( ) , , , | t t t ii P O O O q S; 后向概率 12( ) , , , | t t t T t ii P O O O q S 对于语音识别系统,观测序列 O 就是矢量量化后的结果序列,模型 就是有训练语音得到的模板。语音的训练过程就是产生模板 的过程,而语音的识别过程就是求出在模板 下待识别语音的结果序列 O 的条件概率 | PO 。由 ()t i和 ()t i 的定义可直接得到: | ( ) ( )ttP O i i 。而语音的训练算法则较复杂,目前都采用迭代的方法得到 A 和 B 的近似解。迭代公式: 1111
19、11111( ) ( ) ( )( ) ( ) ( )Tt ij j t ttij TNt ij j t ttji b O jai b O j ( 1-13) 11111( ) ( )()( ) ( ) ( )tkttt O Vj TNt ij j t ttjiibki b O j ( 1-14) 在实际应用中,仅对词条的少数次发音进行训练的语音识别系统,不可能对各种复杂语境下的不同发音都有较高的识别率。某些较陈旧的识别算法如动态时间弯曲法,只能把单词的多次训练发音形成多个模板,造成模板数 量成倍增加,影响系统的实时性。而 HMM 能够对一个词的多个训练序列进行有效的融合而形成一个模板。当训练
20、发音的数量增多时,只会造成训练过程的计算量增大,而不会使识别过程的计算量有丝毫的增加,这对系统的实时性是相当有利的。设 K个训练序列: (1) ( 2 ) ( ), , , ,kO O O式中 ( ) ( ) ( )() 12 , , , k k kkk TO O O O是第 k 个训练序列,计算 A 和 B 的迭代公式只要修改如下: 11111( ) ( ) ( )111( ) ( ) ( )1 1 11 ( ) ( ) ( )1 ( ) ( ) ( )ttttKTk k kt ij jktkij K T Nk k kt ij jk t jki b O jPai b O jP ( 1-15)
21、 ( ) ( )11( ) ( ) ( )111 1 11 ( ) ( )() 1( ) ( ) ( )tkKkkttk t O Vkj K T Nk k kt ij j t tk t jkijPbki b O jP ( 1-16) 式中 ( ) ( )1 ( ) ( )N kkk t tiP i i 作为归一化系数。 利用 HMM 对多训练序列的迭代公式,我们设计一套算法式系统具有自学习的功能。该算法的基本思想是,当发生误识时,系统对误识的模板进行调整,使之更适应使用者的发音习惯,以避免类似的误识再度发生。发生误识时必然牵涉到两个模板,一个是与待识别发音相同的词却被判为不相同的模板;另一个是
22、与待识别发音不相同的词却被判为相同的模板。当发生误识并由用户确认后,系统对两个模板分别进行修正,对于前者的处理较简单,只需将被 误识的发音加入到原训练发音群中,再用迭代公式求出新的模板即可;对于后者的处理则较复杂,它的出现必然是因为形成该模板的训练发音群中有一部分与被误识的发音相近,所以修正该模板的主要任务就是删除这部分训练发音。为此先把被误识的发音制成模板,再用该模板与原先模板的各训练发音分别匹配,把匹配程度较好的训练发音删除掉,对剩下的训练发音使用迭代公式形成新的模板即可。 1.3 软件无线电的基本原理 软件无线电的基本思想是;宽带 A/D, D/A 变换尽可能早地将接收到的模拟信号数字化
23、,最大程度地通过软件来实现电台的各种功能。软件无 线电的特点是其完全可编程性。接收时,信号经过处理和变换,由宽带 AD 数字化,通过可编程 DSP 模块实现各种所需信号处理,并将处理后的数据送至多功能用户终端。发射时,和上述情况类似。典型的软件 (定义 )无线电框图如图 3 所示。 图 3 采用 DSP 技术的软件无线电接收机的硬件结构框图 1.4 软件无线电实现的关键技术 一个典型可实现的软件定义的数字无线电系统,可以引用数字移动通信中的移动台和基站来进一步分析和说明其实现的关键技术。不论是移动台还是基站,它们都含有宽带天线、多波段射频 转换器、宽带 A/D/转换器以及通用可编程处理器、存储
24、器、电源以及总线结构等。实现的关键技术可以归纳为宽带射频段、高速中频段、可编程的基带段以及总线控制四大部分 1.4.1 宽带射频段 ( 1)频段应具有接入多个波段甚至覆盖全波段功能。它具有频率高、带宽宽的两大特点,比如对于 GSM,应工作 900MHz 的高频段,占有带宽 25MHz。显然在这样高频率和如此宽的带宽下直接进行数字化处理,目前器件还不具备条件。 (2)目前,只能靠采用传统的高频模拟器件的硬件设备来完成射频段的主要功能。但也不排除能用软件程序控制的方法 对功能及参数进行设置。 (3 )射频段主要包含有:组合式多波段天线及智能化天线技术;模块化,通用化收、发双工技术;多倍频程宽带低噪
25、声接收放大器技术;线性高功率放大器技术;宽带上 /下变频器技术。 1.4.2 高速、高精度中频数字化处理 (1)在射频段直接取样进行数字化处理,目前条件不可行。所以一般是将射频信号进行一次或两次混频搬至几十兆赫的中频段,再进行 A/D 变换进行数字化处理。本设计就是利用超外差式技术完成射频段的主要功能。 (2 )在中频段的处理主要包括:高速 A/D 变换部分和数字式上 /下变频部分。 (3)对高速 A/D 变换要求是很高的,它的主要性能为:取样速率、取样动态范围和取样精度。其中,取样率一般取最高频率的 2。 5 倍,取样信号动态范围取 80dB,这时取样精度一般不低于 12 位。 (4)高速
26、A/D 变换,其中,抗混叠滤波器的目的是将进入 A/D变换器的模拟信号变为带限信号。 (5)数字上 /下变频部分 (DUC/DDC):以 DDC为例,它是 A/D 变换后首先要完成的处理工作,它主要包括数字下变频、滤波和二次取样,它是系统中最难完成的部分之一。下面以 GSM 为例, GSM 占用25MHz 带宽,实际上一般仅占用 10MHz,则取 样率应大于 2。 5 10MHz=25MHz,同时,为了要进行较好的滤波等处理,每个样点要进行 100 次操作,这样大约共需 2500MIPS(百万条指令 )的运算能力,单个 DSP 都很难胜任这一工作。因此一般都是将 DDC 工作交给专用的可编程芯
27、片去完成。 1.4.3 基带处理 这一部分主要完成单一载波(信道)信号基带可编程处理。基带处理比直接在中频处理其复杂度可大大降低,以 GSM 为例,若在中频处理,仅考虑信道选择滤波需 100 次 /样值,中频处理需 2500MIPS,降到基带处理,只需对每个载波 (8 个时隙信道 ) 200 kHz 基带信号进行处理,这时仅需 2。 5 200 kHz 100 =50MIPS,两者相差 50 倍。基带处理主要包括:调制 /解调、编码 /译码、交 织/去交织、扩频 /解扩、信道均衡、定时、同步,甚至还有信源编码 /解码等等。(本设计中基带处理只有 AM/FM 的解调。)其复杂度与运算量主要取决于
28、各部分实现的体制与复杂性。显然基带部分总的复杂度远远超过 50 MIPS。 鉴于基站中的基带处理,不仅限于单个载波 (GSM 中 ),而是要同时处理多个载波。若一个基站同时有 32 个用户,则需同时处理 4 个载波。这时上述单个载波总 体的基带处理能力又要增大 4 倍。 目前,现有器件对 GSM 基带处理,基本上可实现,但是对于第三代移动通信系统,其基带带宽由 200kHz 增加到 5MHz 增加了25 倍,仍然难于实现。为了突破 DSP 运算能力的瓶颈,可以采用几种方法加以解决,一是直接改进器件,提高速率与处理能力;二是使用专用芯片与 DSP 集成在一起处理;三是用多个 DSP 并行处理,采
29、用合适的并行算法,完成软件无线电系统所要求的高速处理功能。 1.4.4 开放式总线结构 软件无线电一个重要的指标是开放性和可扩展性,因此必须要为各个功能模块寻找一个统一而开放的接口 标准。基于总线结构的硬件平台就是其中最主要的一种,它能将各个功能模块通过总线连接起来。总线结构的优点是实现比较简单,而且目前已有很多总线工业标准,比如 VEM 总线、 PCI 总线等。 VEM 总线是一种可支持多机并行处理的高性能总线,也是目前市场占有率最高的高档标准总线。它具有高性能的支持独立 32 位地址的 32 位数据总线,另外还具有支持多主机并行处理、实时操作和高可靠性等一系列优点。所以一般均采用 VEM
30、总线结构。 1.5 DSP 实现信号解调的算法模型 由于我们的设计只用来解调 AM/FM 广播信号,下面我们着重讨论 AM/FM信号 的解调算法。 1.5.1 AM 信号的解调 对于 AM 信号,模拟解调普遍采用的方法是包络检波法,实现 AM 信号数字解调的基本思想也是提取已调信号的包络。 AM S (t) 经过采样,变为离散信号AMS (i) ,其表达式为: A M 0 A M m m c cS ( i ) = A 1 + k c o s ( i + ) c o s ( i + ) (1-17) 式中 m /msf , /c c sf 。这里, sf 为采样频率,即 m , c 分别是调制信号和载波的数字频率。如果收发载波同频同相,经过数字混频和数字低通滤波器后,