网站公告列表

  没有公告

加入收藏
设为首页
联系本站
您现在的位置: AnalogCN安诺电子 >> 文章 >> 技术交流 >> 文章正文
  [图文]嵌入式媒体处理器选型要素           ★★★ 【字体:
嵌入式媒体处理器选型要素
作者:David Ka…    文章来源:电子设计技术    点击数:    更新时间:2007-12-19    
  为多媒体应用程序挑选一个处理器是一项复杂的任务。为了做出最好的决策,你应该透彻分析每一个备选处理器的内核架构和外围设备,充分理解音频和视频数据在系统中的流通路径,并且正确评估在可接受的功率损耗下能达到的处理能力水平。
 

图1在定点和浮点处理器之间的选择并不总是那么显而易见

       是否仅仅使用喜欢而且熟悉的处理器?
  
        让我们从显而易见的选项开始。你的首选是使用自己最熟悉的处理器。这也合情合理,因为你已经有在这些平台上做开发的经验。即使对于正在进行中的项目,你也有编码基础以资利用。
  
        那究竟你为什么还要从一种处理器系列转向其他的处理器系列呢?最常见的原因是,当前的应用要求比原先的应用更为苛刻。如果对器件的要求出现剧增,你就不能继续采用同一个处理器家族。例如,一个针对音频应用优化的处理器家族不可能总是满足视频需求。同样,如果你先前的设计目标是较低分辨率(和较低帧速率)的视频,你可能需要转向其他家族才能选出适用于分辨率和帧速率更高的处理器。

  需要对数据进行何种处理?
  
        这个问题与处理器的性能相关。系统的设计者评估处理器性能时应该首先分析的指标包括:每秒运行的指令数目、在每一个处理器的时钟周期中完成的操作数和计算单元的效率。
  
        当处理能力方面的需求提升的速度超过处理器内核技术发展的步伐时,就会出现一种处理器不能满足某一特定应用的情形。这正是考虑使用双核处理器的一个原因。加入另一个处理器内核不仅可以有效倍增处理器承担计算的能力,而且在根据内核来确定软件的架构时,双核处理也可以提供相应的灵活性。其功耗甚至低于以两倍频率运行的单核处理器。
  
        若要从上面提到的各种度量标准出发考察处理器是否具备相应的优点,则可以在有待评估的处理器上运行一套有代表性的基准程序。结果将表明实时处理方面的需求是否超出了处理器的能力,同样重要的是显示出是否有充足的能力来满足新的或不断提高的系统需求。
  
        系统带宽是否够用?
  
        常见的一个错误是对系统的带宽需求的估算过于简化。正确的分析研究需要将每一个单独的数据流相加起来。例如,对于一个视频译码器,你首先要考虑到有待译码的数据读入时所需的带宽。然后,你必须考虑到创建经过解码的帧序列时需要对数据进行处理的次数。这种处理需要在内部和外部存储器之间多次经由缓存区传输数据。最后,你还必须考虑到从显示缓存器输送到输出装置的显示数据流。在对数据流的所有分析都完成后,下一步是调整各方面的带宽需求,以便让相应的总系统预算得到满足。

  是否针对便携应用?
  
        系统的电池供电带来了一整套全新的应用需求。它们需要使用一个外形紧凑的、节能的处理器解决方案。这种限制使得设计者必须在处理性能和功率效率之间权衡利弊,做出折中。而且在这个领域中,如果处理器没有标明适用于多媒体应用,就将不堪使用,因为若要求它们完成并非它们所擅长的任务则功率消耗将过大。

  应用要求定点还是浮点运算?
  
        处理器的算法分为两大类别:浮点运算和定点运算。通常定点运算的系列产品运行更快,对功率和成本都更加敏感,而浮点处理器则可以在较宽的动态范围内提供高精确度运算。动态范围指的是数字格式所能表示的最大数与最小数的比值。而精确度指的是确定分度时的精细程度。
  
        如图1表示,仅有少量浮点函数运算需求的应用的设计者会陷入“灰色区”,他们经常被迫转向成本更高的浮点运算设备。如今某些定点运算处理器能够在极高的时钟速度下运行,以至于如果架构选取恰当的话,它有可能模拟出浮点运算的操作。这种方法允许设计者牺牲浮点计算效率来保证低成本和低能耗工作。显然,这种方法对真正需要进行密集的浮点运算的应用来说并不适用,但是为那些陷在灰色区中“不能自拔”的设计人员提供了诱人的机会。

  数据是怎样流入和流出芯片的?
  
        必须仔细地考察处理器的外围设备,确保他们适合你的应用。恰当的外围设备的组合可以取消支持所需接口时必须采用的外电路,从而能实现时间和金钱上的节约。当然,你在设计中会改变你的连接选项,所以最好选择外设灵活、兼容性好的处理器。

  怎样在处理器上做开发?
  
        这是一个非常重要的问题,因为一套强大的开发工具能极大提高生产率,降低开发和调试时间。要理解的是,这一问题的答案既取决于各开发者的需求,又取决于最终应用。许多公司可能都建立了一个针对某个开发工具包的经验库,他们也可能已经建立了大型的代码库,以供利用。
  
        当你转向新的处理器平台时,研发工具会变的特别重要。例如,一个功能强大的C/C++编译器能轻松把现有的源代码移植到新的开发平台上,各种各样的优化选项(例如,优化速度,功率或代码密度)能帮助设计者完成他们的开发目标,而不必在理解处理器的指令系统和架构的细节上投入大量的精力。
  
        怎样才能快速证明软件算法的正确性?
  
        能在处理器家族间实现轻松转换的一个关键前提是大多数编码是以C或者C++编写的。当编码用C语言编写时,就能轻松移植到新型处理器上。C代码移植的复杂性就在于外设的代码通常是专门针对某个处理器系列的。但是,如果代码使用能掩盖外设操作细节的设备驱动程序的话,则这种转移可以得以简化。
  
  另外,当你转而采用新型嵌入式媒体处理器时,你必须看看什么能够在更高水平的抽象层次上帮助你编程。工程师很长时间以来在样机研究阶段使用的是MATLAB/Simulink(Mathworks提供)或者LabVIEW(National Instruments提供),这些产品能为一些嵌入式目标产生代码。选择一个支持这些工具的媒体处理器,则可以轻松地搭建硬件样机。另外,这些产品在样机和生产之间的过渡方面已经取得了长足的进步。
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    对比ADI两代TD-SCDMA射频IC得
    [结尾篇]ADSP-TS20XS系列DSP
    一种基于DDS的幅值可调信号发
    基于ADSP2181的CAN总线通讯设
    一种采用单片机控制AD9854为
    在vs2008下使用ffmpeg(5):
    在vs2008下使用ffmpeg(4):
    在vs2008下使用ffmpeg(3):
    ADI AD8275电平转换16位ADC驱
    Boot在ADSP-BF533上的移植
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    版权所有:AnalogCN安诺电子 湘ICP备06016315号