我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:彩63彩票注册 > 多分辨率分析 >

利用可配置处理器来创建多标准多分辨率视频引擎

归档日期:05-09       文本归类:多分辨率分析      文章编辑:爱尚语录

  随着消费类电子产品,尤其是手机、PDA和便携式媒体播放器(PMP)的急剧发展,其对于终端硅供应商的要求也大大提高。对这些供应商来说,设计仅仅能够适用于一到两个多媒体编解码器或无线标准的IC已经远远不够了。消费者希望他们的设备能够播放各种采用不同的编码标准和无线下载标准的媒体。因此,必须采取一个新的更具灵活性的途径来更好地适配新的媒体标准。在本文中,我们主要谈一谈视频解码器和编码器引擎所面对的挑战和机遇。

  上一代视频ASIC设计的目的是为了解码和编码MPEG-2,因为这是DVD所使用的标准。其中也有些支持MPEG-1,可以播放VCD。大多数情况下,这种单个应用的逻辑实现策略就是:利用RTL(寄存器转换层,寄存器转换逻辑)来设计定制化MPEG-2解码器和编码器。下图1是一个典型的MPEG-2视频ASIC结构,展示了由视频子系统、主控制器和片上存储器组成的RTL功能块。

  随着市场形势的改变,现在的视频ASIC必须能够支持多种视频标准,并具有多个分辨率。由于下列原因,传统的RTL方法已经不再有效:

  ·无论是执行一个新的视频标准,还是升级现有的已执行的标准,或者修改bug,都需要进行硅芯片重制;

  ·在第一代硅执行之后的这4-5年内,视频编解码器,尤其是编码器在性能上(比特率、性能)有很大的改进。要执行这些改进的成果,也必须在所有的RTL方法中进行硅芯片重制。

  那么,有没有其它办法呢?使用一个可编程处理器是最佳方案,因为它可以解决上面提到的所有问题:(1)处理器和编解码器之间很容易建立连接端口;(不论是采用新的视频标准,还是升级现有的编解码器或者修改bug,都可以很容易地在软件中进行);(3)通过软件升级,可以很容易地应用视频编解码器执行中的改进。

  但是,由于其性能瓶颈,传统的处理器只能用于一般的编码,而不能用于视频引擎。嵌入式DSP也不是专为视频而设计的,但拥有通用DSP应用所需的硬件功能单元、指令和接口。因此,要在传统的RISC和DSP处理器上执行视频编解码,就意味着这些处理器必须以非常高的速度运行(MHz),而且还需要大量内存并消耗大量功率,但是在便携式设备中,这显然是行不通的。

  只要我们对某个视频内核中所需的计算次数作一个简单分析,就很容易得出这一点。绝对误差和是大多数视频解码运算的动作估计中所进行的一个重要计算步骤。SAD运算的目的在于发现两个连续视频帧之间的宏模块的运动。它是通过计算这两个宏模块中每套相应的象素值之间的绝对误差之和来实现这一目的的。

  图2展示了SAD运算中的基本计算步骤。如图所示,其中主要进行的计算有减、算绝对值和结果累计。

  计算一个RISC上的两个16x16宏模块的SAD需要进行256次减法、256次求绝对值和256次相加――总共进行了768次计算,还不包括传输数据所需的负载与内存。由于每一帧当中所有的宏模块都必须进行这一运算,很显然这在计算上成本是很昂贵的,而且会随着视频帧分辨率的增加而越来越难。

本文链接:http://art-olivier.com/duofenbianlvfenxi/220.html