消费者可能想在不同设备上播放和共享内容。绝大多数人已经拥有多套多媒体设备,如电视机、机顶盒、DVD机、手机、电脑、PMP等。未来设备的一个重要能力就是能够在这些设备之间传输和/或转移内容。在这些极其不同的设备之间需要具有互操作性。由于所用的音视频编码标准有很多,互操作性要求基础多媒体处理架构具有可编程性。然后在软件中编入编码标准,从而使得终端设备灵活并能实现升级。
可编程性同时也意味着可以对影响音频和图像质量的关键算法进行升级――即通过升级使其具有所需的功能,这是因为工程师不断地研发用来提高音频和图像质量的新方法,事实上也正是这些语音和图像质量使得其产品具备与竞争产品之间的差异化。可编程性同样也使得器件制造商进一步实现产品差异化,可以为用户提供不同的SoC使用方法,降低流片风险,并延长产品的市场寿命。
结果,多媒体处理器架构必须覆盖很大范围的复杂度并能够软件可编程。ARC Vraptor采用了特殊的多核方案:多个高性能处理器被连接到多个SIMD处理器和多个DMA引擎,还采用了面向不同域的加速器。所有这些都带有低开销,低延迟的通信信道和本地宽带数据总线。
图1:ARC VRaptor 多媒体处理器架构。
并行多媒体处理
对于可提供的实际时钟频率来说,当需要比一个单处理器的能力还高的性能时,并行处理是加速的唯一方法。但是,Amdahl定律告诉我们,只有算法的一部分可以并行,而有些部分是不能并行的,因而最终的加速系数,并非并行处理器的数量。极少应用可以容易地实现全并行,通过增加处理器就可以实现系统性能的线性加速。而现实中的多媒体应用的并行处理可以涉及到全过程:并行得到的好处不但非微不足道,而且肯定可以大大地增加效率并改善性能,如果并行处理得好的话。在为所运行的应用设计一个好的子系统之前,设计师应该仔细地分析这些应用的性质,看一看如何将这些应用分配到各个处理单元中。
视频和图像算法通常容易实现并行处理;一幅图像的左上角的像素与一幅图像的右下角的像素关联很少,故可以独立进行处理,因此处理可以并行。在一幅简单图像的获取和显示过程中,处理的情况是这样的:从图像获取阶段基本上都是并行处理,到视频压缩/解压缩的信息墒编解码阶段变成完全串行处理,然后再返回到显示器上像素的全并行处理。显然,需要一个既擅长串行处理又擅长并行处理的混合处理器架构。
文章评论(0条评论)
登录后参与讨论