APP下载

QNX下实现VoIP语音的应用研究

2012-06-25赵付轩杨斌

单片机与嵌入式系统应用 2012年7期
关键词:系统

赵付轩,杨斌

(西南交通大学 信息科学与技术学院,成都 610031)

赵付轩(硕士生)、杨斌(教授),主要研究方向为单片机与嵌入式系统应用。

引 言

1 嵌入式系统硬件设计

1.1 OMAP3530平台简介

如图1所示,BeagleBoard开发板主要由OMAP3530异构双核处理器、MMC模块、电源、I2C总线模块及多通道缓冲串口(McBSP)等部件组成。系统由MMC模块通过SD卡启动Bootloader及QNX操作系统,通过I2C总线模块连接语音模块,通过McBSP连接其他模块。

图1 BeagleBoard开发板

OMAP3530采用一种独特的双核结构,把控制性较强的ARM处理器和高性能、低功耗的DSP结合起来,是一种开放式的可编程体系结构。对于一些运算量大的实时信号,例如图像、音频数据,可以采用DSP进行计算,而对于通信、外设控制等功能,则采用ARM处理器来实现,从而在功耗和复杂应用之间建立了良好的平衡。利用不同的内核(ARM和DSP)和硬件加速器的不同功能,根据性能或功耗的要求将一个算法映射到最佳的处理器引擎,这样分别发挥了DSP和ARM核的优势,与传统只使用ARM核或只使用DSP芯片的移动终端相比,OMAP成功实现了性能与功耗的最佳组合。

1.2 ARM和DSP核之间的通信

ARM与DSP通信结构框图如图2所示。Codec Engine是连接ARM和DSP或协处理器的桥梁[1],是介于应用层(ARM侧的应用程序)和信号处理层(DSP侧的算法)之间的软件模块。ARM应用程序调用Codec Engine的 VISA (Video,Image,Speech,Audio)API,如图2中VIDENC_process(a,b,c)。Codec Engine的stub(ARM侧)会把参数a、b、c以及要调用DSP侧process这个信息打包,通过消息队列(message queue)传递到DSP。Codec Engine的skeleton(DSP侧)会解开这个参数包,把参数a、b、c转换成DSP侧对应的参数x、y、z(比如ARM侧传递的是虚拟地址,而DSP只能认物理地址),DSP侧的server(优先级较低,负责和ARM通信的任务)会根据process这一信息创建一个DSP侧的process(x,y,x)任务最终实现 VIDENC_process(a,b,c)的操作。……

登录APP查看全文

猜你喜欢

系统
Smartflower POP 一体式光伏系统
WJ-700无人机系统
ZC系列无人机遥感系统
基于PowerPC+FPGA显示系统
基于UG的发射箱自动化虚拟装配系统开发
半沸制皂系统(下)
FAO系统特有功能分析及互联互通探讨
连通与提升系统的最后一块拼图 Audiolab 傲立 M-DAC mini
PLC在多段调速系统中的应用
1-Bit人机交互系统