《科技创新与品牌》杂志社学术交流

移动媒体终端方案设计

  移动媒体终端方案设计     

      移动媒体终端(Portable Media Center)是Intel和微软联合开创的新一代便携式信息终端,是一种集数字音乐、照片和视频播放、录音、录像、移动存储、PDA、电子图书和掌上游戏等功能于一体的便携式数字娱乐产品。目前随着计算机、通讯和和消费电子的进一步融合,移动媒体终端已具备GPS、数字电视、手机通讯和无线互连等多种功能。
      移动媒体终端已成为后PC时代的主流产品和推动IT市场增长的主要动力,为全球信息产业带来无限商机。微软已从基于PC的操作系统软件市场,开始延伸至基于各种移动消费电子终端的嵌入式操作系统软件产品市场,国内外IT和消费电子企业均开始大规模进入移动媒体终端产品领域。
     
              一、基于Intel通用CPU和微软Windows Mobile操作系统方案
      为了进一步拓展计算机之外的业务领域,Intel于2002年7月正式对外宣布,将使用Xscale架构的通用CPU开发PMC(Portable Media Center)移动媒体终端。PMC配置了一个4英寸LCD显示屏和20GB硬盘,通过USB接口将PC机中的数据传输到该设备上,消费者可通过PMC随时随地欣赏高质量的视频、静止图像、音乐及其它类型的媒体节目。
      PMC使用微软专为其开发的Media2Go嵌入式操作系统(2003年10月微软将其更名为Windows Mobile for Portable Media Centers),并利用Windows Media Player软件进行数字音视频内容播放。Windows Mobile是从Windows CE延伸出的嵌入式操作系统,支持Windows Media 9系列音频和视频格式,并采用了与Windows XP Media Center Edition相同的用户界面。
      基于StrongARM技术的 Xscale微架构CPU是专为PDA个人数字助理、Pocket PC掌上电脑、Smart Phone智能手机等个人手持设备推出的通用处理器,目前在PDA和Pocket PC产品上获得了广泛应用。
      为了节省移动媒体终端厂家的研发时间和费用,降低开发风险,缩短产品的开发周期, Intel在Xscale架构CPU、Windows Mobile和Windows Media Player的基础上建构了一套PMC参考设计方案。三星、创新、三洋、iRiver和ViewSonic相继推出了该方案的PMC产品。
      基于Intel通用CPU、Windows Mobile和Windows Media Player播放软件构成的PMC方案缺点是计算速度慢、专用性不强,达不到消费电子产品要求的最小软、硬件配置,产品成本较高。该方案需要在通用CPU外围配置NTSC视频编码器、音频DAC,以及用于控制操作的FPGA等外围芯片。另外,Windows Mobile和Windows Media Player对于系统资源具有巨大的吞噬作用,至少需要64MB的SDRAM和32MB的Intel StrataFlash,而且Windows Mobile的授权费用高达每台40美元,因此采用该设计方案的移动媒体终端产品成本难以降低。

               二、基于TI可遍程DSP和DSPLinuxTM 操作系统方案
      TI与Ingenient Technologies公司联合推出了基于TMS320 DM270 DSP的PMC方案,利用数字信号处理能力很强的可编程DSP来进行媒体数字信号的运算和处理。TMS320 DM270处理器将DSP和MPU融为一体,内部集成有TMS320C54x DSP和32位ARM7 CPU。DSP专门用于数字音、视频信号处理,而MPU则用来执行智能控制任务,如文件管理、存储以及用户界面与外围器件管理等。
基于可编程DSP的PMC方案需使用DSP应用软件来对各种音、视频格式的数字信号进行编解码,优点是能灵活地支持多变的各种音、视频格式,而缺点是必须要使用汇编语言或C/C++语言编写源程序,因此软件编程相对复杂,用户开发时间较长。虽然RidgeRun公司为移动终端厂商提供基于TI DSP平台的DSPLinuxTM 潜入式操作系统和主板支持套件BSP(Board Support Packages),Ingenient Technologies公司提供其MPEG-4解码软件,但其昂贵的软件授权费用大幅度增加了产品成本。
      Archos、Sony、RCA(Thomson)、Iriver、Mobinote、MSI、Olympus、Neosol等公司采用了基于DSP和DSPLinuxTM 操作系统的移动媒体终端方案。移动媒体终端厂商不仅要从RidgeRun公司和Ingenient Technologies公司购买DSPLinuxTM 操作系统和MPEG-4解码软件使用授权,而且还要从其它多个第三方公司分别购买MP3、JEPG、MPEG1、MPEG2等解码软件,无形中增加了PMC厂商的开发难度和产品成本。TI已与微软开始合作,将把微软Windows Mobile和Windows Media Player移植到TI TMS320 DM270 DSP平台上,以便让众多PMC厂商尽快推出使用TI DSP的移动媒体终端。

                三、基于DVD解码芯片与紫光嵌入式软件系统方案
      美国Sigma Designs公司生产的低功耗DVD解码芯片EM8510是一种单芯片DMP(Digital Media Processor)数字媒体处理器,片内集成有200MHz 32位RISC CPU、硬件音、视频解码器,以及NTSC/PAL编码器、IDE接口、控制面板和红外遥控器接口等PMP数字视听产品所需的外围电路。硬件音、视频解码器含有专用的硬件逻辑,可高效完成数字音、视频信号的计算和处理,进行MPEG1、MPEG2 MP@ML、MPEG4、DivX、Dolby AC-3、DTS解码。32位RISC CPU用于控制硬件音、视频解码器的解码过程,以及运行DVD导航软件,监控和执行DVD机的播放过程。
      EM8510 DMP的特点是硬件解码、速度快、功能强、功耗小(最大功耗500mW)、芯片集成度高,是一种单芯片DVD播放机解决方案,可大幅度缩短用户的开发时间和成本,因而在中国DVD播放机领域获得了广泛的应用。
      EM8510 DMP使用片内的硬件MPEG解码器,可高效完成高质量的MPEG2节目(HDTV)播放。而Intel通用CPU和TI DSP方案使用软件进行解码,只能播放高压缩率的MPEG4压缩节目。
      Sigma Designs公司 DMP成本大大低于Intel的通用CPU和TI的DSP,并包含移动媒体终端产品所需的多种解码软件(Firmware)和其它外围电路,因此是一种理想的PMC硬件平台方案。
      Sigma Designs公司 的EM8510 DMP为了提高实时性能、并降低运行功耗和硬件成本,取消了MMU(Memory Management Unit)部件,采用了可对内存进行直接访问的实存储器管理策略,因而EM8510只支持没有虚拟存储器管理的μClinux,不支持使用虚拟存储器管理策略的Windows CE和标准Linux操作系统,使移动媒体终端厂家无法利用现有的Windows Mobile for Portable Media Centers快速设计开发产品。
      Sigma Designs公司为EM8510提供的嵌入式系统软件是专为满足DVD导航管理功能而裁减的,因此没有移动媒体终端所需的GUI图形用户接口、电源管理模块、USB设备驱动软件,以及PDA、E-Book和掌上游戏等应用软件。
      利用EM8510作为移动媒体终端的硬件平台,不仅可减小移动媒体终端产品的体积,降低产品功耗,而且无需使用NTSC/PAL编码器、IDE接口、控制面板和红外遥控器接口等外围电路,可大幅度提高产品集成度和可靠性,降低产品成本。众多IT和消费电子厂商都期待基于EM8510的嵌入式系统软件,目前虽然有韩国和日本的厂商已推出基于EM8510的PMC产品,但是尚无第三方提供基于EM8510的嵌入式系统软件。
      紫光公司自2003年起开始研发基于EM8510硬件平台的μClinux嵌入式操作系统、嵌入式GUI、以及E-Book和掌上游戏等应用软件,实现了数字音乐、照片和视频播放、数字录音、移动存储、电子图书和掌上游戏等多种应用功能。
      紫光嵌入式软件系统根据移动媒体终端的功能需求和EM8510数字媒体处理器的具体情况,对开放源代码的μClinux内核重新进行配置和编译,在编译时仔细选择所需要的功能支持模块,同时删除不需要的功能,优化操作系统代码,降低整个系统的开销与能耗,使系统运行所需要的内核显著减小,将其剪裁(改造)为一个高性能、轻量级、功能可扩展的可配置内核。
      剪裁后的嵌入式操作系统二进制映象文件所占用的存储空间极小,体积小于512KB。媒体文件播放和嵌入式操作系统完全一体化,音频DAC、IDE接口、红外遥控器接口、控制面板接口等应用电路以动态连接库(Lib)的形式与嵌入式操作系统编译连接成一个单独的可执行程序,固化存储在ROM芯片中。
      由于移动媒体信息终端使用的LCD显示屏幕面积十分有限,不适合用户进行多窗口操作,因此紫光嵌入式软件系统使用单窗口的GUI进行移动媒体信息终端的人机交互。单窗口GUI同一时刻只支持一个活动窗口,即每次只能有一个进程独占屏幕,因而不存在多窗口环境下多个窗口共享屏幕的现象,可大为简化屏幕管理和事件处理的难度,不必建立复杂的数据结构和算法,来支持多个窗口的管理和解决窗口之间的遮挡、焦点判断及窗口切换等问题。单窗口GUI不仅因系统复杂程度的降低带来了执行效率的大幅提高,而且编译后的长度只有几百KB,运行时占用最小系统资源,可降低系统功耗。