慎选主控芯片外的多媒体加速运算设计

2010-12-18 11:50:31 来源:《半导体器件应用》2009年1-2月刊
前言
要强化电子应用装置的多媒体运算效能,有多种手法可实现,其中,在体积、用电…等设计要求较不严苛条件下,可从板卡层面来追加多媒体运算功效,即是在不改变主控芯片线路、封装的条件下,进行强化电子装置多媒体展现效能的目的…
对于主控芯片外的多媒体硬件加速方案,一般来说,比较适合应用于印刷电路板(PCB)上还有较大布局面积,即主机板的空间较宽裕的场合中,这方面多半是固接式应用,例如,高清晰的数字电视、视讯机上盒、数字媒体配接器、网络电视(Internet Protocol Television;IPTV)…等,至多在一些较大体积的可携式运用中,也可使用,例如,个人数字助理、体积稍大的智能型手机…等,而在一般轻巧型手机、数字随身听设计上,则较难以实现,其限制包括电路板应用面积不允许、电池电容量与功耗用电方面不支持。
在固接设计上,想达到多媒体加速运算,有 3 种常见设计手法,第 1 种作法是增加 1 颗媒体处理器,有时也称媒体通讯处理器(Media Communication Processor;MCP),因为执行架构能对多媒体运作进行加速,通常也就能藉此使通讯运算加速。
在媒体处理器方面,目前常见的有 NXP(恩智浦,过去为 Philips Semiconductors)公司的 TriMedia 系列、Sigma Designs 公司的 EM 系列及 SMP 系列、Equator Semiconductor 公司(已被 Pixelworks 公司购并)的 BSP 系列、Chromatic Research公司(1998 年被 ATI 购并,2005 年 AMD 购并 ATI)的 MPACT! 系列。
媒体处理器通常内建多种视讯译码、解压缩(有时也含编码、压缩)的硬件加速运算,例如,MPEG-2 压缩、解压缩,或 MPEG-4(也称为 MPEG-4 Part 2,或MPEG-4.2)压缩、解压缩,或 H.264(也称为 MEPG-4 Part 10,或 MPEG-4.10)压缩、解压缩。
更进一步的,有些媒体处理器芯片,内建微软媒体技术的硬件加速设计,可用来加速 SMPTE 421M 标准音/视讯,或者也包括过去的 WMV9(Windows Media Video 9)的编/解码加速。
SMPTE 421M头标准,相信许多人没听过,但它的前身其实就是 Microsoft 的 VC-1 技术,Microsoft 自身了解:若 VC-1 一直是自有技术将难以推广,所以 Microsoft 积极将此项技术推广成业界标准,而 SMPTE(Society of Motion Picture and Television Engineers),即审议 VC-1 后成为美国产业标准。
大陆方面也订立出自有数字音视讯标准,称为AVS(Audio Video Standard),AVS 视讯质量略低于 MPEG-4 与 H.264,最初被人认为只是大陆方面为了规避视讯应用产品生产的技术权利金,不过,现在欧洲芯片业者也开始支持 AVS,用 AVS 抗衡现有 MPEG-4、H.264、VC-1 的筹码,所以也开始有芯片内建 AVS 硬件编/译码加速器。
使用媒体处理器的好处是,仍保有相当大的设计弹性,例如,今天设计1款视讯机上盒,即便不知道订单客户最终期望装置出厂前要支持何种视讯格式,都可事先采媒体处理器进行设计,因为 1 颗媒体处理器,通常可以支持多种视讯格式编/译码加速。
另外,除了视讯外,音讯方面要不要也进行硬件加速?这方面其实需要不大,因为音讯即便是最高分辨率的 24-bit、最高取样的 192kHz、最高声道数的 8ch,其数据传输量最高仅 4.6MB/Sec 左右,一般性处理器效能足够应付,不用再透过硬件加速运算处理,此方面通常只是向 Dolby(杜比)、QSound…等音效技术实验室取得技术授权(支付权利金)后,直接用软件方式在产品中实现。
比较特别的是,语音辨识应用,在这方面一般处理器就可能力有未逮,需透过数字信号处理架构来进行加速处理,此时即有额外硬件设计需求。
当然,媒体处理器也有缺点,那就是:既然 1 颗芯片内要支持多种视讯编/译码标准,那么就要支付多笔技术权利金,无论购买芯片应用者是用到几项编/译码加速技术,支付费用早已转嫁到芯片取得成本中。
所以,有的媒体处理器并不内建任何 1 种硬件编/译码加速设计,而是使用中立超然的加速设计,例如,在处理器内使用 VLIW 架构,使运算效能提升,或直接使用 1 颗一般用途性数字信号处理器,然后于设计过程中,确定要支持某种音/视讯标准后,再以软件方式实现该影音标准支持,如此加速程度,虽不及前述硬件编/译码加速型媒体处理器,却保持支持标准增/减弹性。
了解上述 2 种作法后,还有 1 种作法是:使用针对该音视讯标准的编/译码器芯片,此种作法的好处是,成本比前 2 种作法低廉,但缺点是更缺乏弹性,一旦确定支持某种音/视讯标准,临时想增加或更替成其它标准,则该编/译码器芯片就不适用。
严格来说,编/译码器芯片又分成译码器与编/译码器 2 种,译码器是针对一些纯播放性应用设计,编/译码器则是针对有录制需求应用而提供,很明显,后者的芯片价格较高,前者则更具成本优势,然而,若选择单纯译码器后,之后想变更设计成也得具备录制功效,则译码器就无法使用。至此很明显的,译码器与编/译码器芯片,适合低度弹性、高量产、高度价格敏感应用设计上。
到目前为止,已说明了 3 种设计手法,这 3 种设计手法其实设计属性,即是设计弹性、加速性、价格…等。第1种手法是媒体处理器,其弹性居中、加速程度高,但成本也高。第 2 种手法是使用 VLIW 架构处理器,或具数字信号处理特性的处理器,此作法弹性最高、加速程度居中、成本居中。第 3 种则是使用 Decoder/CODEC 芯片,此种作法弹性低,但加速程度高,成本低。
除了这 3 种手法外,难道没有其它解决方案了吗?答案为「否」。还有 1 种作法,那就是使用现场可程序化逻辑门阵列(Field-Programmable Gate Array;FPGA)。
现场可程序化逻辑数组,过去一直是 1 种运用偏少的芯片,适用在一些少量、多样、快速变化的市场,不过近年来,现场可程序化逻辑数组运用愈来愈广,包括芯片开发过程中的逻辑功效验证、超级计算机的高效能运算加速、无线基地台(Base Station;BS)数字信号运算加速…等都有使用。
现在也有使用现场可程序化逻辑数组,进行多媒体加速的设计手法,不过仍高度局限于固定式应用中,原因是,现场可程序化逻辑数组过于耗电,难以应用在采电池供电设计的行动/手持式装置中,即便目前有若干现场可程序化逻辑数组,已运用于手持式装置内,多以逻辑设计变动、转换为主,而不是多媒体加速。
采现场可程序化逻辑数组的好处是设计弹性最高,比前述的 VLIW 架构芯片、DSP 架构芯片…等设计手法弹性更高,但缺点即是前述的功耗问题,然 FPGA 也有极佳的加速性,在愈是高度重复性、高度平行性运算方面应用,现场可程序化逻辑数组的效能价格比,将比 DSP 架构方案还要划算,而无线基地台的数字信号运算,及视讯编/译码…等设计,也合乎这类需求特性。
至于价格成本方面,高阶、高逻辑闸密度的现场可程序化逻辑数组,仍处于高价位,且批货量并非典型千颗批发,而是数万颗以上的批发,所以,在用量不多情况下并不适合采用。另外,现场可程序化逻辑数组,要在重度运算下才能彰显运算成本,不是很重度的多媒体应用,也不适合使用,比较适用场合会是同时多组视讯监控/录像之类的应用。
另外也有用 VLIW 架构处理器或 DSP 架构处理器来做主控芯片,用 1 颗芯片肩负一般性控制与多媒体加速,此法虽可行,但软件方面通常要付出大程度的改写代价,且集中化运算不容易控制实时性,但多媒体运算却高度讲究实时性,所以,利用此设计方向改善多媒体加速设计的案例并不多。
本文为哔哥哔特资讯原创文章,未经允许和授权,不得转载,否则将严格追究法律责任;
Big-Bit 商务网

请使用微信扫码登陆

x
凌鸥学园天地 广告