嵌入式数字多媒体终端硬件平台的设计与实现

发布者:chi32最新更新时间:2007-03-09 手机看文章 扫描二维码
随时随地手机看文章
引言 随着信息时代的到来,信息技术尤其是计算机多媒体技术与网络技术飞速发展,语音教室在各种学校都已有了广泛的应用。现存的语音教学系统一般都是采用模拟电路,可靠性低,抗干扰性弱,易发生串音,从而在传输过程中会失真、衰减,且易受干扰,导致语音质量较差,同时布线也较复杂,建设成本比较高;另外现存的解决方案实现的功能较为单一,只能完成简单的教学功能,没有提供随意分组讨论、点名、选择题问答等应有的功能;另外,现存的解决方案没有发挥出现有的多媒体网络技术优势,无法进行高效、生动的多媒体教学,交互性比较差,教学效果受到很大的影响,严重影响了在实际教学中的推广与应用。要解决传统语音教学面临的问题必须引入数字化的设计。 [b]数字多媒体终端的硬件设计与实现 [/b] 数字语音教学系统由教师端、多个学生端(数字多媒体终端)、数字传输网络组成。其中,教师端一般采用计算机控制,主要完成系统管理及网络管理。学生端既可以基于PC机平台,也可以采用经济型独立设备。数字传输网络是所要传输的多媒体信息的载体。本文就是针对学生端设计一种经济实用的独立设备。它采用嵌入式数字信号处理器DSP+CPLD+接口电路的设计模式。数字信号处理器DSP实现语音信号的处理、网络接口部分的控制及多任务的管理。CPLD完成网络适配部分设计及部分外围电路控制。接口电路包含网络接口、模拟语音输入输出接口。语音传输中要保证语音传输的实时性和交互性,实现学生端与教师端和其他学生端的通信。 硬件平台构造于DSP嵌入式系统上,该平台采用了TI公司的数字信号处理器TMS320VC5402作为核心部件,利用可编程逻辑器件XC95288开发了外围控制电路和接口电路,其电路如图1所示。它主要包括以下几部分: 图1 嵌入式多媒体终端硬件平台结构框图 多种设备接口 包括网络输入、输出接口、话筒输入接口和耳机输出接口。 语音信号前置放大 由于从话筒输入的语音信号比较微弱(1~30mV),达不到编解码器对信号强度的要求,因此必须进行前置放大,这里由专用前置放大芯片完成。 语音信号的转换及编解码 语音信号的A/D,D/A转换及编解码功能是利用MC145480完成的,它的优点是:①可将语音信号的A/D,D/A转换及编解码集成在一个芯片中,提高了系统稳定性;②只需单电源供电,减少了双电源供电所带来的电源干扰问题,提高了语声质量;③可提供A律及m律两种编码格式,提供符合ITU-T G.711建议的语音数据流。 系统控制、管理与语音压缩 由数字信号处理器TMS320VC5402完成。该芯片处理速度快,可实现语音的实时处理,并实现语音的回声抑制功能。除了能完成DSP所提供的功能外,利用内嵌的DSP/BIOS实时操作系统,可实现并建立语音实时多任务系统。 网络适配电路 本网络的拓扑结构参考令牌总线网,物理拓扑采用总线型结构,由一根线形的电缆连接各个站点。逻辑拓扑采用环形结构,每个站点知道自己左边和右边站点的地址,在逻辑上构成一个环,数据沿环逐节点顺序传送。这种物理结构具有以太网电缆的可靠性,不会因某处电缆故障物而在物理上导致整个系统瘫痪。其所需电缆长度短,安装费用低,易于布线、维护和扩充。而且,物理上共享总线的站点之间可以直接通信,响应速度较快。同时,由于总线电缆固有的广播特性,使得应用中广播功能的实现较为容易。另外,由于逻辑环是公平的,每一站点对信道的访问时间有一个确定的上界,因此可以防止某一站点独占信道这种情况的发生。共享媒体语音网是一个局域通信网络,它没有路由问题,任何两个站点之间可以使用一条直接链路,所以不需要单独设置网络层,而可以将寻址、排序、流控、差错控制等功能都放在数据链路层中实现。 该控制电路利用XILINX公司的可编程逻辑器件CX95288实现。网络适配器把数据总线上的低电平并行信号转换成0、1码流,通过连接网络各站点的电缆传输。它采用特殊技术,以便利用适配器共享局域网线缆、局域网的介质访问控制MAC方式和发送信号的类型。电路包括网络接口、接收电路、发送电路及与DSP的接口电路。其中,网络接口部分采用通用的RS-485通信接口,实现简单。共享媒体语音网络的适配器电路结构如图2所示。 图2 网络适配器电路结构 [b]数字多媒体终端的软件设计与实现 [/b] 数字多媒体终端系统除了利用DSP完成信号处理,实现全部系统控制功能之外,在系统软件设计中,需要对DSP、存储器、外设等各种资源加以管理,同时还要处理多任务并发操作和不同任务之间的协调。为了保证系统的可靠性和稳定性,本文采用了DSP/BIOS实现上述工作。 DSP/BIOS实时操作系统 DSP/BIOS是TI公司推出的一个实时操作系统(RTOS),与TI的Code Composer Studio(CCS)集成在一个开发环境下。目前最新的版本是CCS 2.0 中的DSP/BIOS II。它支持软件模块化,通过修改内核提供占先式多任务服务;具有设备独立的I/O数据流模型;可以对内存进行动态分配与内存管理。DSP/BIOS实际上是一个可调用的系统模块API的集合,利用DSP/BIOS调试工具可以对程序进行实时跟踪与分析,提高应用程序开发的可靠性。通过DSP/BIOS 插件(Plug-ins)可实时观察内核中各线程的执行状态和对象的当前属性。利用配置工具(Configuration Tool)开发者可以对各个模块实行配置。非常有效地提高项目了开发效率,简化了DSP应用程序的开发和调试。 DSP/BIOS实时语音处理多任务系统 对语音信号的处理利用DSP/BIOS建立实时多任务系统。DSP与音频编解码器之间的通信通过DSP的外设多通道缓冲串行口(McBSP)实现闭环测试。简单的语音处理系统由采集线程和播放线程两个应用任务组成。每个应用任务分别对应一个输入SIO和一个输出SIO流,通过两个半双工通道(一个输入,一个输出)来访问连接到音频编解码器的DSP多通道缓冲串行口。另外,在两个任务之间的数据交换通过DPI设备驱动完成。具体实现包括: ● 建立设备驱动 设备驱动采用DAX驱动程序作为管理设备的软件模块。DAX驱动模块由DAX头文件和DAX函数组成。DAX_Params作为配置工具设备驱动对象的属性。每个设备驱动模块同时还需要一个控制模块,控制模块由外部函数bind、start、stop和unbind等组成,通过DAX_Params参数结构和配置工具配置控制器。其中,控制器的bind(unbind)函数负责绑定(解除绑定)设备驱动模块对设备端口的控制。控制器的start函数负责调用流SIO_get时打开设备端口,也就是打开McBSP的接收和发送中断使ISR中断服务线程正常运行。控制器的stop函数使停止中断运行并关中断。 DAX函数由配置工具中设备对象的函数表调用,在dax.c中初始化驱动函数表DAX_FXNS,DAX函数表的结构如下所示: DEV_Fxns DAX_FXNS = { DAX_close, DAX_ctrl, DAX_idle, DAX_issue, DAX_open, DAX_ready, DAX_reclaim }; 应用程序不直接调用驱动函数,这个函数表用于SIO模块调用特定的设备驱动函数,SIO模块依次发送通常的函数调用适当的驱动函数。 ● 建立SIO流 本文利用静态配置工具为每个任务建立一个输入流和一个输出流,采样线程对应采样输入流inSample和输出流outSample,播放线程对应播放输入流inSink和输出流outSink。 ● 建立任务 系统利用DSP/BIOS建立两个任务tasksample和tasksink,分别对应Sample 和Sink线程,以完成语音的采集处理与播放处理。采样线程Sample和播放线程Sink调用相同的I/O处理函数,I/O处理函数如下所示: static Void doStreaming(SIO_Handle input, SIO_Handle output, Uns nloops) { Ptr buf; Int i, nbytes; if ( SIO_staticbuf(input, %26;amp;buf) == 0) { SYS_abort("Error reading buffer"); } while(1) { if ((nbytes = SIO_get(input, %26;amp;buf)) < 0) { SYS_abort("Error reading buffer %d", i); } if (SIO_put(output, %26;amp;buf, nbytes) < 0) { SYS_abort("Error writing buffer %d", i); } } } 虽然两个线程调用了相同的I/O处理函数,但是由于对应不同的输入/输出流,因此在多任务操作中,不会出现冲突。 ● 建立中断服务程序 使用HWI硬件中断服务管理器HWI配置相应的中断服务程序ISR。当接收发生中断时,ISR将接收的数据放入缓冲区,当接收缓冲区满时,通知设备驱动程序DAX,将缓冲区的数据发送到inSample流中,供上层任务处理。 [b] 结语[/b] 本文针对传统模拟语音教学系统的弊端提出了数字语音教学系统,并设计实现。该系统平台主要为数字语音教室的随意分组讨论、点名、选择题问答、播放备课文件、回放等一系列功能提供了实现基础。同时通过共享多种媒体,如声音、音乐、文字、图象等,减少时间浪费,使教学高效、生动,从而激发学生的学习积极性和想象力,有很好的开发应用价值。 参考文献: 1.TMS320C54XDSP Applications Guide.Texas Instuments, 1999. 2. TMS320C54XDSP Enhanced Peripherals.Texas Instuments, 1999. 3. 朱之剑、吕进,《多媒体技术及其应用》,浙江科学技术出版社,1997年5月. 4. 胡道元,《计算机局域网》(第二版),清华大学出版社,1996年12月.
引用地址:嵌入式数字多媒体终端硬件平台的设计与实现

上一篇:采用S3C2410和Linux系统的指纹识别管理系统
下一篇:基于ARM与μClinux的RTU设计

小广播
最新应用文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved