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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式数字多媒体终端硬件平台的设计
与实现
嵌入式数字多媒体终端硬件平台的设计与实现
类别:嵌入式系统
引言随着信息时代的到来,信息技术尤其是计算机多媒体技术与网络技术飞速发展,语音教室在各种学校都已有了广泛的应用。

现存的语音教学系统一般都是采用模拟电路,可靠性低,抗干扰性弱,易发生串音,从而在传输过程中会失真、衰减,且易受干扰,导致语音质量较差,同时布线也较复杂,建设成本比较高;另外现存的解决方案实现的功能较为单一,只能完成简单的教学功能,没有提供随意分组讨论、点名、选择题问答等应有的功能;另外,现存的解决方案没有发挥出现有的多媒体网络技术优势,无法进行高效、生动的多媒体教学,交互性比较差,教学效果受到很大的影响,严重影响了在实际教学中的推广与应用。

要解决传统语音教学面临的问题必须引入数字化的设计。

数字多媒体终端的硬件设计与实现数字语音教学系统由教师端、多个学生端(数字多媒体终端)、数字传输网络组成。

其中,教师端一般采用计算机控制,主要完成系统管理及网络管理。

学生端既可以基于pc机平台,也可以采用经济型独立设备。

数字传输网络是所要传输的多媒体信息的载体。

本文就是针对学生端设计一种经济实用的独立设备。

它采用嵌入式数字信号处理器
dsp+cpld+接口电路的设计模式。

数字信号处理器dsp实现语音信号的处理、网络接口部分的控制及多任务的管理。

cpld完成网络适配部分设计及部分外围电路控制。

接口电路包含网络接口、模拟语音输入输出接口。

语音传输中要保证语音传输的实时性和交互性,实现学生端与教师端和其他学生端的通信。

硬件平台构造于dsp嵌入式系统上,该平台采用了ti公司的数字信号处理器
tms320vc5402作为核心部件,利用可编程逻辑器件xc95288开发了外围控制电路和接口电路,其电路如图1所示。

它主要包括以下几部分:多种设备接口包括网络输入、输出接口、话筒输入接口和耳机输出接口。

语音信号前置放大由于从话筒输入的语音信号比较微弱(1~30mv),达不到编解码器对信号强度的要求,因此必须进行前置放大,这里由专用前置放大芯片完成。

语音信号的转换及编解码语音信号的a/d,d/a转换及编解码功能是利用mc145480完成的,它的优点是:①可将语音信号的a/d,d/a转换及编解码集成在一个芯片中,提高了系统稳定性;②只需单电源供电,减少了双电源供电所带来的电源干扰问题,提高了语声质量;③可提供a律及m律两种编码格式,提供符合itu-
tg.711建议的语音数据流。

系统控制、管理与语音压缩由数字信号处理器tms320vc5402完成。

该芯片处理速度快,可实现语音的实时处理,并实现语音的回声抑制功能。

除了能完成dsp所提供的功能外,利用内嵌的dsp/bios实时操作系统,可实现并建立语音实时多任务系统。

网络适配电路本网络的拓扑结构参考令牌总线网,物理拓扑采用总线型结构,由一根线形的电缆连接各个站点。

逻辑拓扑采用环形结构,每个站点知道自己左边和右边站点的地址,在
逻辑上构成一个环,数据沿环逐节点顺序传送。

这种物理结构具有以太网电缆的可靠性,不会因某处电缆故障物而在物理上导致整个系统瘫痪。

其所需电缆长度短,安装费用低,易于布线、维护和扩充。

而且,物理上共享总线的站点之间可以直接通信,响应速度较快。

同时,由于总线电缆固有的广播特性,使得应用中广播功能的实现较为容易。

另外,由于逻辑环是公平的,每一站点对信道的访问时间有一个确定的上界,因此可以防止某一站点独占信道这种情况的发生。

共享媒体语音网是一个局域通信网络,它没有路由问题,任何两个站点之间可以使用一条直接链路,所以不需要单独设置网络层,而可以将寻址、排序、流控、差错控制等功能都放在数据链路层中实现。

该控制电路利用xilinx公司的可编程逻辑器件cx95288实现。

网络适配器把数据总线上的低电平并行信号转换成0、1码流,通过连接网络各站点的电缆传输。

它采用特殊技术,以便利用适配器共享局域网线缆、局域网的介质访问控制mac方式和发送信号的类型。

电路包括网络接口、接收电路、发送电路及与dsp的接口电路。

其中,网络接口部分采用通用的rs-485通信接口,实现简单。

共享媒体语音网络的适配器电路结构如图2所示。

图2 网络适配器电路结构数字多媒体终端的软件设计与实现数字多媒体终端系统除了利用dsp完成信号处理,实现全部系统控制功能之外,在系统软件设计中,需要对dsp、存储器、外设等各种资源加以管理,同时还要处理多任务并发操作和不同任务之间的协调。

为了保证系统的可靠性和稳定性,本文采用了dsp/bios实现上述工作。

dsp/bios实时操作系统 dsp/bios是ti公司推出的一个实时操作系统(rtos),与ti的codecomposerstudio(ccs)集成在一个开发环境下。

目前最新的版本是ccs2.0中的dsp/biosii。

它支持软件模块化,通过修改内核提供占先式多任务服务;具有设备独立的i/o数据流模型;可以对内存进行动态分配与内存管理。

dsp/bios实际上是一个可调用的系统模块api的集合,利用dsp/bios调试工具可以对程序进行实时跟踪与分析,提高应用程序开发的可靠性。

通过
dsp/bios插件(plug-ins)可实时观察内核中各线程的执行状态和对象的当前属性。

利用配置工具(configurationtool)开发者可以对各个模块实行配置。

非常有效地提高项目了开发效率,简化了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_fxnsdax_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处理函数如下所示:staticvoiddostreaming(sio_handleinput,sio_handleoutput,unsnloops) { ptrbuf; inti,nbytes;
if(sio_staticbuf(input,&buf)==0){ sys_abort("errorreadingbuffer"); } while(1){ if((nbytes=sio_get(input,&buf))<0){ sys_abort("errorreading buffer%d",i); }
if(sio_put(output,&buf,nbytes)<0){ sys_abort("errorwritingbuffer%d",i ); } } } 虽然两个线程调用了相同的i/o处理函数,但是由于对应不同的输入/输出流,因此在多任务操作中,不会出现冲突。

●建立中断服务程序使用hwi硬件中断服务管理器hwi配置相应的中断服务程序isr。

当接收发生中断时,isr将接收的数据放入缓冲区,当接收缓冲区满时,通知设备驱动程序dax,将缓冲区的数据发送到insample流中,供上层任务处理。

结语本文针对传统模拟语音教学系统的弊端提出了数字语音教学系统,并设计实现。

该系统平台主要为数字语音教室的随意分组讨论、点名、选择题问答、播放备课文件、回放等一系列功能提供了实现基础。

同时通过共享多种媒体,如声音、音乐、文字、图象等,减少时间浪费,使教学高效、生动,从而激发学生的学习积极性和想象力,有很好的开发应用价值。

相关文档
最新文档