2012年第2期 工业仪表与自动化装置 ・105・ 嵌入式数字音频系统在车载导航 系统中的应用研究 吴记群 ,李双科 (兰州y-.,_Ik高等专科学校a.电子信息工程系;b.电气工程系,兰州730050) 摘要:针对人们对导航系统人机界面越来越高的要求,介绍了基于IIS总线的数字音频系统在 车载导航系统中的应用。该系统利用线性预测倒谱系数(LPCC)作为语音信号的特征参数,运用 VQ矢量量化技术实现特定人的孤立词识别,通过特定人孤立词识别算法,将语音输入转化成命 令,可以实现更友好的人机交互。 关键词:孤立词识别;语音交互;IIS总线;Linux设备驱动程序;车载导航系统 中图分类号:TN912.34 文献标志码:A 文章编号:1000—0682(2012)02—0105—03 Application study on embedded digital audio system applied in car navigation system WU Jiqun ,LI Shuangke (a.Department of Electronic and Information Engineering;b.Departentm of Electrical Engineering, Lanzhou Polytechnical College,Lanzhou 730050,China) Abstract:Navigation system for the people has more and more human—machine interface require— ments.This paper describes the IIS bus—based digital audio system in car navigation system applications. The system uses linear prediction cepstral coeficifents(LPCC)as feature parameters of speech signals, used VQ vector quantization techniques to achieve specific human isolated word recognition,and isolated word recognition by specific human algorithm.By put the voice into a command,more friendly human— computer interaction can achieved. Key words:isolated word recognition;voice interaction;IIS bus;Linux device driver;car naviga- tion system 0 引言 车辆导航定位是智能交通系统的基础,它可以 有效地利用现有的道路设施减少交通拥挤,便于集 将语音输入转换成命令,通过语音输入来设定出发 点与目的地,使各种操作更简单。和其他导航系统 相比,用户注意力能更多地集中于驾驶上。 中管理调度,为驾驶员提供足够的信息,特别是动态 交通信息可对特种车辆进行不问断跟踪和监控。目 前世界上车辆导航的方法有:全球定位系统GPS、惯 性导航系统INS、航位推算系统DR、地图匹配MM 等多种。该文将嵌入式数字音频系统应用于车载自 动导航系统中,以音频接口作为输出设备,除了提供 1特定人孤立词语音识别方案设计 1.1语音识别系统的组成 语音识别系统是建立在一定的硬件平台和操作 系统之上的一套应用软件。其硬件平台一般是一台 个人机或一台工作站;操作系统可以选择UNIX或 Windows系列。语音识别一般分为“学习/训练”阶 引导、语音提示功能外,还是一个语音输入设备,实 现人机语音交互。系统通过特定人孤立词的识别, 收稿日期:2011—11一O9 段和“识别/测试”2个阶段。第1阶段的任务是建 立识别单元的声学模型和语法分析的语言模型;第 作者简介:吴记群(1966),女,福建永春人,硕士,副教授,主要 从事电路与系统的研究和教学工作。 2阶段的任务是根据识别方法的要求,采用语音分 析方法分析语音特征参数,按照一定的准则和测度 与系统模型进行比较,通过判决得出识别结果。语 ・106・ 工业仪表与自动化装置 2012年第2期 音识别系统的基本流程如图1所示。 图1语音识别系统的基本流程 1.2语音识别方案的设计 语音识别系统的基本流程:语音信号输入后首 先经过滤波器,去除干扰及能造成混淆的成分,然后 由前端处理模块提取语音识别所需的特征参数;识 别算法对特征参数进行处理、分析,并最后作出判 断,给出识别结果 。 当前语音识别所用的特征参数主要有2种: LPCC线性预测倒谱系数和MEL频标倒谱系数。 LPCC系数主要是模拟人的发声模型,未考虑人耳 的听觉特性。MEL系数则考虑到了人耳的听觉特 性,具有较好的识别性能。 语音识别模块的作用是将输入信号的特征与模 板库中已训练好的语音模板进行比较识别,找到最 好的识别结果。现在应用较为广泛的语音识别的算 法主要有以下几种:动态时间规整(DTW)、离散隐 马尔可夫模型(DHMM)、连续隐马尔可夫模型 (CHMM)、人工神经网络(NN)、矢量量化算法 (VQ)等,VQ算法是一种信号压缩方法,在语音信 号处理中占有十分重要的地位。采用VQ可避免 DTW等方法中困难的语音分段问题和时间规整问 题,作为一种数据压缩手段可大大减少系统所需的 数据存储量 。 对汽车导航中嵌入式语音的识别,要求系统应 该能实现特定人的孤立词识别,孤立词即为所需查 询的地名;考虑识别速度的同时应该兼顾词库的大 小,识别结果以路径引导的方式输出,提示司机行车 的路线。为此,该识别系统采用语音信号的线性预 测倒谱系数(LPCC)作为语音信号的特征参数,运用 VQ技术实现特定人的孤立词识别。 2嵌入式数字音频系统设计 系统数字音频接口由三星公司的¥3C44B0内 部声音集成电路和Philips公司的UDA1341TS音频 编解码芯片组成,在硬件上使用了基于IIs总线的 音频系统体系结构 。其结构如图2所示。 ¥3C44B0支持IIS总线数据格式和MSB—justiifed 数据格式。UDA1341TS芯片除了提供IIs接口和麦 克风扬声器接15,还提供L3接15控制,用于调节音 量、音频信号的处理等。 扬卢器麦克风 内存缓存区/\ F= 匡 一一 l总 处理器 { 接Lf L二—— 一 E二二 {线 旦 :!j 音频数捌I 图2音频系统体系结构 系统采用DMA传输方式,可选择BDMA通道 中任意一个,设置IIS为服务请求源。由于只有一 个IIS服务请求源,DMA控制器无法区分是发送请 求,还是接收请求,故只能实现单工方式的音频数据 传输。但s3C44B0提供了第3种传输方式:传输/ 接收模式。该模式下,IIS数据线将通过双通道 DMA同时接收和发送音频数据。 由于三星公司的BDMA控制器没有内置的存 储区域,在驱动程序中必须为音频设备分配DMA 缓存区,其地址可在通道DMA控制器的地址寄存 器中设置。 2.1 IlS总线概述 IIS(Inter—IC Sound bus)是Philips公司提出的 串行数字音频总线协议。IIS总线只处理声音数据, 其他信号(如控制信号)必须单独传输。为了使芯 片的引出管脚尽可能少,IIS只使用了3根串行总 线:提供分时复用功能的数据线、字段选择线(声道 选择)、时钟信号线 J。 2.2 音频编解码芯片UDA1341TS UDA1341TS芯片除了提供IIS接口和麦克风扬 声器接口,还提供L3接口控制音量等。L3接口分 别连到¥3C44B0的3个通用数据输出引脚上。 IIS总线只传送声音数据,故UDA1341TS与 CPU除了IIS三根总线的连接之外,还有控制信号 的连接,称为L3接口,如图3所示。通过L3接口可 对UDA1341TS进行各种设置,共有3种设置模式。 —厂——一 SYSCLK BCK I L3MODE W UDA1 341TS L3CLoC1 L3DATA 图3 UDA1341TS与IIS总线、CPU连接 2.3 S3C44B0的IIS接口 ¥3C44B0的IIs总线接口可用来实现对外部8/ 16位立体声音频数字信号编解码器电路的接口功 能,从而实现迷你型放音机和其他便携式的应用。它 2012年第2期 工业仪表与自动化装置 ・107・ 支持IIs总线数据格式和MSB—justiifed数据格式。 IIs总线接口为FIFO操作提供DMA传输模式,代替 中断模式,它可以同时传送和接收。¥3C44B0的IIs 总线有4根信号线,包括串行数据输入线(IISDI),串 行数据输出线(IISDO), 右声道选择线(IISLRCK) 和串行数据时钟(IISCLK);产生IISLRCK和IISCLK 的是主设备 。其接口如图4所示。 ADDR DATA tISDI CNTL ⅡSDo SCLK MCLK SLRCK oDECLK 图4 s3c44B0的IIs总线接口 根据采样频率来确定主设备时钟。例如采样频 率fs=22.05 kHz,串行数据位数16 bit,,IISLRCK频 率类型=32/48f,,若主设备时钟频率类型选为 25 ,则CODECLK=256fs=44.1×256=5.644 8 MHz。外部晶振10 MHz,系统主频预设置为64 MHz,取预分频器值=8,则系统主频MCLK=CO— DECLK×8=45.158 4 MHz。这时就需要同时改变 整个系统主频,具体根据¥3C44BO数据手册,设置 PLL寄存器。 2.4¥3C44B0的DMA通道 ¥3C44BOX有4路DMA控制器,其中2路称为 ZDMA(General DMA)被连到SSB(Samsung System Bus)总线上,另外2路称为BDMA(Bridge DMA)是 SSB和SPB(Samsung Peripheral Bus)之间的接口层, 相当于一个桥,因此称为桥DMA。ZDMA和BDMA 都可以由指令启动,也可以由内部外设和外部请求 引脚来请求启动。 ZDMA用于存储器到存储器、存储器到I/O存 储器、I/O装置到存储器之间传输数据。BDMA控 制器只能在连到SPB上的I/O装置(外设)与存储 器之间传输数据。 对于ZDMA,¥3C44BOX有一个FIFO缓冲来支 持4字突发DMA传输,而BDMA不支持突发DMA 传输,因此存储器之间的传输数据最好用ZDMA传 输,来提供高的传输速度。 当DMA传送结束后地址总线与数据总线将还 给CPU,CPU可以进行其他的工作。 3 uclinux系统下的音频驱动程序设计 3.1音频设备结构 typedef struct audio——mix unsigned char OGS; /:l:output gain switch.0 for 0db.1 for 6db:l:/ unsigned char IGS:/ input gain switch,0 for 0db,1 for 6db / unsigned char volume; / 0~一db. value range 0~0x3f / unsigned char BassBoost; /:l=0~ 24db,value range 0~0xe / unsigned char Treble; /;I:0~6db. vaule range 0~Ox3 / unsigned char mute; / mute on/off,1 for muste / unsigned char mode; / BassBoost and Treble mode.0~3 / unsigned char EXTADDR; / EXT register’S address / unsigned char EXTDATA; /:l:EXT register’S data / }audio—mix—t; typedef struct audio—stateS{ audiomixt mix: ——int used; int writecount; int read—count; int status; }audio—state—t; void init tee—sound—init(void); 3.2驱动程序的对外入口函数集 static struct file——operations ev44bOii——sound——fops = { owner:THIS—MODULE, read:ev44b0ii—sound—read, write: ev44bOii—sound_write, poll:ev44bOiipoll, —sound—ioctl:ev44bOii—soundioctl。 open:ev44bOii—soundopen, release:ev44bOii—sound—release, llseek: ev44bOiisoundllseek, ——}; static int ev44bOiisoundopen(struct inode in— ode,struct file:l=filp); static int ev44bOii—sound—release(struct inode inode,struct file flip); (下转第112页) ・112・ 工业仪表与自动化装置 2012年第2期 3结束语 根据数据采集监控系统的无线传感网络特点, 该文提出了一种新的树状一多层次路由协议 (TSML)。该协议基于簇状拓扑结构对网内的传感 器节点进行组网,从而构建了一个具有树状结构的 多层次网络结构。通过利用上位机存储各传感器节 点之间的路由关系,改变了在节点上存储路由的传 统模式,大大降低了节点的能耗,能够保障无线传感 器网络通信的稳定性和可靠性。实际应用表明,基 于TSML协议组建的树状多层次网络,具有监测范 图6对10号节点的数据采集消息流程 围广、能耗小、网络结构稳定等特点,适用于数据采 集监控系统的网络部署。 参考文献: 2)网络拓扑结构变化的情况 网络拓扑结构的变化一般指节点失效和新节点 加入两种情况H 。 (1)对于节点失效的处理:由于能量耗尽或者 受环境的影响,会发生节点失效的现象。在正常情 [1]孙利民,李建中,陈渝,等.无线传感器网络[M].北 京:清华大学出版社,2005. [2] 王殊,阎毓杰,胡富平,等.无线传感器网络的理论及 应用[M].北京:北京航空航天大学出版社,2007. 况下,汇聚节点发送数据采集命令后即进入等待接 收上行采集数据消息的状态;而目标采集节点上传 数据后开始等待下行确认传输正确的命令,若等待 超时则进行重发。当到达重发延时上限时,汇聚节 点仍然没有接收到有效的上行数据包,则认为当前 路径中存在着失效节点。这时汇聚节点将广播组网 命令,要求重建网络。 (2)对于新加入节点的处理:监测区域有时需 添加新的传感器节点,或者采用新节点替代已经失 效的节点,从而引起网络拓扑结构的变化。这种情 况下,要求管理员通过远程监控软件将新节点添加 至数据库中,并在节点管理软件中刷节点列表,同时 触发汇聚节点广播组网命令,重新组网。 [3] 于宏毅,李欧,张效义.尢线传感器网络理论、技术与 实现[M].北京:国防工业出版社,2008. [4] 于海滨,曾鹏,王中锋,等.分布式无线传感器网络通信 协议研究[J].通信学报,2O04,25(10):102—110. [5] 毕俊蕾,任新会,郭拯危.无线传感器网络路由协议分类 研究[Jj.计算机技术与发展,2008,18(5):131—134. [6]Heinzehnan W R,Chandrakasan A,Balakrishnan H.An application——specitic protocol architecture for wireless mi- -crosensor networks[J].IEEE Transactions on Wireless Communication,2002,1(4):660—670. [7] 谭辉.智能无线抄表中影响无线通信效果的囚素分 析及无线通信协议设计[J].电子工程师,2002,28 (4):16—18. (上接第107页) freeirq(S3 C44BOX—INTERRUPT—BDMA0,bm— —da0一id); static ssizet ev44bOiisound——统具有语音提示功能,是一个语音输入设备,可以实现 人机语音交互,使操作更简单,具有一定的应用价值。 参考文献: write(struct file:l: lip,constf char buf,sizet count,lofft ppos); [1] 赵力.语音信号处理[M].北京:机械工业出版 社,2003. static int ev44b0iisound ioctl(struct inode:l:inode, _struct file flip,unsigned int cmd,unsigned long arg); [2] 宋一扬,李金平.基于ARM的实时语音识别系统在 嵌入式系统中的应用[J].北京交通大学学报,2004, 28(5):92—98. 默认情况下,在打开设备初始化时对这些值都 进行了默认设置,同时也为应用程序提供了设置的 接口,可以根据各种音频数据的特性设置合适的预 分频器值,改变音量,调节高低音等。 [3] 陆科进.嵌入式语音识别特征矢量的研究[Dj.南 京:东南大学计算机科学与工程系,2003. [4] 徐睿,李斐,王申康.基于IIs总线的嵌入式音频系统 设计[J].电子技术应用,2004(4):7—9. 4 结语 该文提出的基于IIs总线的数字音频车载导航系 inux系统原 [5] 李岩,荣盘祥.基于¥3C44BOX嵌入式ucl理及应用[M].北京:清华大学出版社,2005.