欢迎来到天天文库
浏览记录
ID:10593522
大小:54.50 KB
页数:4页
时间:2018-07-07
《基于omap的mpeg—4实时解码器的实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于OMAP的MPEG—4实时解码器的实现
2、第1摘要:提出了一种在TIOMAPl510上实现MPEC—4实时视频解码的方法。该方法充分利用了0MAP双核的特点,同时采用软件优化来满足实时的要求。仿真结果表明,该方法在保持质量的情况下有较快的解码速度,适合在无线终端实现多媒体的应用。关键词:OMAPl510MPEC—4解码器实时解码优化随着移动通信和多媒体技术的发展,人们对通信的要求已不满足于传统的语音业务,而是追求更高品质的视频、音频等多媒体信息服务。在多媒体通信中,视频区别于音频和文字的显著特点是其大数据量以及高处理复杂度。现有的移动终端一般采用
3、DSP芯片作为核心,DSP芯片在数据处理方面具有较多的优势,但其系统处理和控制能力比较弱。第三代移动通信(3G)终端需要提供更多更复杂的服务如实时视频交互等,原有的DSP芯片很难满足这些需求[1]。TI公司提出了开放式多媒体应用平台OMAP(OpenMultimediaApplicationsPlatform)体系结构,并为此设计了OMAP处理器。笔者利用本文提出的方法在使用TIOMAPl510的PocketPC上实现了MPEG-4简单级(simpleprofile)解码,基本满足了实时的要求,同时保持了较好的质量。1开放式多媒体平台(OMAP)O
4、MAP采用一种独特的双核结构,把控制性能较强的ARM处理器与高性能低功耗的DSP核结合,是一种开放式的、可编程的基于DSP的体系结构。主要目标是满足2.5G和3G网络上移动、PDA上的语音与多媒体需要。图11.1OMAP的硬件平台OMAP硬件平台主要由DSP核、ARM核以及业务控制器(TrafficController)组成。这三部分可以独立地进行时钟管理,有效地控制功耗。OMAP硬件平台采用双核技术提高操作系统的效率和优化多媒体代码的执行。实时性任务如实时视频通信等由DSP完成,非实时性任务和系统控制工作如界面交互、操作系统等由ARM完成[2]。
5、例如,使用者在进行视频通信时可以同时使用操作系统上的应用软件如的较强控制能力的优势。与传统只使用ARM或者只使用DSP芯片的移动终端相比,OMAP成功地解决了性能与功耗的最佳组合问题。OMAP硬件平台不断升级,以满足日益增长的应用需求。本文使用OMAPl510芯片,它的两个关键部分是TI增强型ARM925(TI925T)和TMS320C55xDSP。TMS320C55xDSP的工作主频为200MHz,内部有32K字双存取SRAM,48K字单存取SRAM和12K字的高速指令缓存。它具有高度的并行能力,32位读写和功能强大的EMIF、双流水线的独立操作
6、以及双MAC的运算能力。它采用了三项关键的革新技术:增大的空闲省电区域、变长指令、扩大的并行机制。此外TMS320C55xDSP核增加了处理运动估计、离散余弦变换(DCT)、离散余弦反变换(IDCT)、1/2像素插值的硬件加速器,降低了视频处理的功耗,其结构对于多媒体应用高度优化,适合低功耗的实时语音图像处理。TI增强型ARM925采用ARM9TDMI技术,工作主频为175MHz,有16K字节的高速指令缓存、8K字节的高速数据缓存和17个字的写缓冲。ARM和DSP都可以访问内部SRAM和外部存储器接口,但ARM是平台的核心,它能访问全部16M字节的
7、内存空间和DSP的128K字节的I/O空间。1.2OMAP的软件平台OMAP的软件结构建立在两个操作系统之上,一个是基于ARM的操作系统如APl510上的程序结构在OMAP上开发程序通常分为两部分,一部分是使用EmbeddedVisualC开发ARM端程序,另一部分是使用TICCS开发DSP端程序。前者主要是为了使设计的算法与xDAIS(eXpressDSPTM算法标准)兼容,在ARM端程序中调用一些DSP/BIOS桥的API实现在DSP上初始化信号处理任务、与DSP任务交换消息、对来自DSP和从DSP发出的数据流进行缓冲、暂停、继续、删除DSP任
8、务并进行资源状态查询等。而具体的功能实现则是在DSP端完成。图2显示了TI-enhancedARM925应用程序与DSP节点之间的关系。通过写节点封装器的创建、执行及删除函数,将xDAIS算法封装于DSP节点中。创建函数可分配节点处理和xDAIS算法所需的存储器,还可分配节点的相关模块。这些模块是传递到执行和删除函数的一种结构。创建函数还可给出xDAIS算法的实例,并可将其激活,还可初始化任何在任务执行前必须初始化的数据或参数。执行函数是主要的分派函数,在此函数执行阶段中一般不分配存储器及其它资源。执行函数一般包括消息处理循环,该循环可中断函数并等
9、待来自ARM925的消息或数据流,然后节点将这些消息或数据分派到合适的xDAIS控制或处理任务中去。同时执行函数查询DSP
此文档下载收益归作者所有