账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
DSP内核的演变
先进通讯和多媒体技术发展的幕后功臣

【作者: Eran Briman】2009年09月25日 星期五

浏览人次:【5223】

首先,为什么及什​​么时候必须使用DSP?我们可以先从应用的角度进行探讨。举个例说,手机通常需要至少2个DSP引擎,一个用于通讯工作,另一个用于应用处理。在通讯方面,通话一端的语音信号经数位化和压缩(DSP的一个典型功能),被调制为一个无线信号(另一个DSP工作),再通过无线基础设施发送到通话另一端,然后执行解调解压(也是DSP的功能)。在手机的应用处理方面,载有视讯、图片和音讯信号的资料档案必须经过解码,然后才会被发送到萤幕、扬声器和耳机,所有这些典型的DSP工作虽然本质上各不相同,但它们都是通讯通道需要的工作。



随着无线通讯的不断进步, 为了追上4G无线通道上100Mbps的速度,DSP承担的工作也在大幅度演进。如此高位元速率的调制和解调需要一些先进的演算法,包括多天线(又称MIMO)、多载波调制和QAM调制方案。而DSP引擎已作出相应发展,能够以多种方式满足这些要求,变成应用专用(或通讯专用) DSP。



在其它DSP领域也经已出现类似的进展,譬如视讯处理就是一例。近年来,萤幕解析度已从VGA渐渐提高到Full HD高画质(1080p),而且为了处理这些更高的解析度,并保持最低的位元速率,市场也出现了多种视讯标准。由于传统的DSP引擎已很难满足这些要求,各种不同的架构和设计理念应运而生,包括多核设计和SIMD(单指令,多资料)处理技术。在这里,DSP处理样演变为应用专用处理器,专门用于多媒体工作,同时保持其普遍性。下面将对这些方面进行详细的讨论。



处理DSP应用的不同方法


在SoC中实现DSP功能性有好几种方法,而我们将主要介绍DSP的可编程设计和半可编程设计实现方案,包括中央处理单元(CPU)、微控制器单元(MCU),和 DSP。至于完全采用硬体来执行演算法的硬体线路方法,这里就不赘述了。



CPU的典型例子有Pentium 和 PowerPC 处理器。这些超高性能的​​处理器本质上是通用处理器,时钟频率高达2GHz或更高。 CPU用于个人电脑、工作站和笔记型电脑等系统,而通常不适合于嵌入式应用。它们能够处理信号处理工作,但由于时脉频率极高,致使功耗也相当高,同时带来电池寿命方面的问题。此外,这类CPU成本非常高,所以不适用于大多数消费电子设备。



另一方面,MCU可被视为Pentium这类 CPU的较慢较小版本。 ARM和MIPS科技等公司都提供针对嵌入式应用的内核,它们主要适用于控制工作,能够运行Windows Mobile 和 Linux等作业系统。一般而言,MCU主要针对控制工作而设计,缺乏典型的DSP支援能力。不过,也有一些MCU具有DSP功能性专用扩展,这一点稍后再作介绍。



获得DSP功能性的第三种方法是纯粹DSP,它们非常适用于数学密集型工作和以资料为主的处理工作,而且专门为嵌入式应用而设计,可确保功耗及电路尺寸适合SoC晶片使用。这种纯粹DSP的典型例子有德州仪器的 C55 和 C64、ADI的 Blackfin 以及 CEVA的 TeakLite 和 CEVA-X DSP内核系列。



图一以X-Y座标空间的形式描述了这些不同DSP解决方案的性能和灵活性。硬体线路加速器也在其中。此外,图中用不同的颜色标注出了每一种解决方案的功耗程度。




《图一 不同DSP解决方案的性能和灵活性》




MCU是完全可编程设计的通用处理器,故能够执行多种不同功能,适用于SoC中的不同应用。不过,因为MCU不是为DSP功能而设计,所以在这一方面无法获得高性能。



如果运行频率在1GHz 到 2GHz范围的话, CPU执行DSP功能的速度当然比MCU更快。但是,除非电池容量够大,否则在掌上型产品中几乎不可能采用CPU来执行DSP功能。而硬体线路引擎的DSP性能最高,功耗最低,而灵活性却大为逊色。



迄今为止,本地DSP在灵活性、性能和功耗三者之间的权衡折衷是最好的。随着不同DSP应用继续发展,嵌入式处理器也衍生出新的类型。下面将一一进行讨论。



DSP工作演变带动DSP处理器不断发展


近年来,各种应用中的DSP要求有了显著的提高。例如,只要分析一下音讯要求的演进,便会发现在极短时间内同时出现了多个进展,超过了DSP要求的5倍多。下面列出了家用音讯应用设备中的一些新发展:




  • ●每通资料流的声道数目从2(身历声)增加到5.1(典型杜比数位设备),到7.1(典型蓝光光碟播放机);



  • ●需要解码并混合的资料流数目从1(典型A/V接收器)增加到2(典型DVD用例)再到3(蓝光光碟用例);



  • ●每通解码资料流的位元速率从48Kbps(MP3)增加到24Mbps(DTS-HD MA);



  • 音讯转码器及后处理功能的复杂性增加。





当前的DSP面对视讯应用及其提出的要求也存在类似情况,同样需要更高的解析度、更高的位元速率和更复杂的视讯标准,而相关的设计工具已不断推出。至于无线通讯应用,只要分析从3G 到 4G无线标准的位元速率演进,就可看出这一变化趋势,而且这种成长还不是线性而是指数级的。图二描绘出了三大DSP领域的技术进展。




《图二 三大DSP领域的技术进展》




为了满足对DSP能力的不断攀升的要求,三种基于处理器的方案中,每一种都在向不同的方向演变。



MCU供应商已尝试透过在其架构中增我进能喔加一些DSP功能,以及利用专用DSP指令来扩展这些处理器的ISA,来满足不断增长的要求,而ARM Cortex-A8就是一典型例子。该元件的CPU连接了一个SIMD加速器(ARM NEON),不过有些供应商选择的方向稍有不同,他们允许程式设计人员利用自己的指令来扩展其MCU。在这两种情况中,DSP扩展都能够提供一个不错的系统折衷来实现基本DSP功能。不过,对于中高阶处理要求,这种MCU解决方案就完全不可行,并会使产品开发和再用方面出现严重的缺陷。下一节我们将较详细地讨论这些缺陷。



CPU供应商已经明白,单纯靠提高处理器的运行速度是不足以满足不断增长的要求的。相对之下,多处理器架构提供了一种替代解决方案,可实现更高的指令级并行性(instruction-level-parallelism;ILP),但这种方法更难满足可携式设备的严格功率预算要求。面对其它要求更严苛的用例,CPU供应商干脆决定把精力集中自己的核心专业技术上,而把重负载的DSP应用让位给其它解决方案。譬如,CPU(或多核CPU) 都不能有效地以1080p解析度解码视讯讯号,或运行LTE基频,于是这类工作便由市场专用DSP来解决。



市场专用DSP已成为DSP供应商的另类方案,以期满足高阶DSP处理要求。过去,通用DSP曾一度流行,为多个终端市场提供高阶的处理。这类DSP的可再用性和普遍性,使其在市场上非常普及,为不少开发商及合作伙伴所采纳。虽然通用DSP现在仍拥有某些市场,但更高阶领域则需要市场专用性更强的方案,也就是采用ISA来支援市场专用功能(如最新无线通讯标准所需的4×4矩阵计算能力)。市场专用DSP能够更仔细地满足整个市场的要求,提供更多所需的能力,同时又不限制这种架构在该市场上不同解决方案中的可再用性(譬如能够有效用于LTE、WiMAX 、HSPA+、EV-DO等的无线通讯DSP)。图三在同一X-Y空间中描绘出了这些不断演进的DSP解决方案。




《图三 不断演进的DSP解决方案》




在MCU中增加DSP功能―这是一个好办法吗?


MCU供应商提升性能的其中一个方法,是提供可扩展架构的DSP指令。有些供应商提供带有预先定义DSP ISA扩展的MCU 产品(如ARM NEON);也有一些供应商提供了一系列各种各样的DSP ISA扩展,供用户选择;另外一些供应商则允许获授权者自行开发DSP指令。在所有这些情况中,由于这些DSP ISA扩展由于并非处理器所固有,故不妨将之视作中央微控制器的附属加速器。



设计人员在考虑选用一个扩展MCU来实现先进DSP工作时,必须了解其缺点所在,例如下列的问题:




  • ●除非设计人员小心设计记忆体存取,否则加入的功能单元(譬如MAC单元和加法器)可能无法运作。一般而言,在大型平坦记忆体模型上,MCU同一时间只能支援单​​个记忆体存取,而且还存在不同的资料故障限制。这与大多数基本DSP架构截然不同,并会很快降低任何DSP扩展的附加价值。



  • ●MCU往往非常依赖带有特权模式(privilege mode)和虚拟储存支援的缓冲记忆架构,这是由于它们必须支援的控制功能的特性之故。另一方面,DMA在MCU中不会被频繁采用,因此可以把基本DMA作为一个外挂程式提供给MCU。在资料高度密集的DSP应用中,鉴于应用的即时特性,以及它对确定性处理的要求,先进的DMA是不可或缺的。所以与扩展MCU刚好相反,在处理器架构内,先进的DSP本身就支援DMA机制。



  • ●利用DSP指令来扩展MCU通常不会引起定址机制的任何大的变化。因此,这种扩展MCU通常不支援DSP应用中非常典型的独特定址模式(因其可预测的资料存取模式,如回圈缓冲器和位元反置)。



  • ●由于这种DSP扩展不是MCU的固有部分,它们便需要使用编译器内在函数来充分发挥这些DSP功能的作用。也就是说,简明的C代码不能轻易地编译为适合在这种DSP扩展上运行的最佳汇编代码。对于DSP处理器,这种编译器支援是需要嵌入到编译器-架构交互设计中的。



  • ●MCU一般不支援某些演算法所需要的特殊DSP资料类型,例如是先进无线应用中常见的10位和 12位部件。此外,MCU中的数字准确度通常限制在32位元,而在某些应用则需要更大的动态范围,高至72位元资料,包括保护位元(guard bit)、饱和硬体和回圈机制(rounding mechanisms)。这些一般都根据应用的特定要求,由市场专用DSP处理。



  • ●在这类扩展MCU中,可用并行性通常限制程式设计人员同时使用MCU及其DSP扩展。于是,即使拥有处理能力,MCU也可能无法以最佳方式来予以利用。





除此之外,扩展MCU虽然为程式设计人员提供了一组不同的DSP扩展供选择,甚至让程式设计人员能够利用自己的DSP指令集来扩展ISA,但还存在一个「非标准」的问题。这种「按需定制」的处理器设计乍看可能颇具吸引力,然而软体维护极其困难,因为设计人员必须不停地从一个架构向另一个架构移植代码,无法再用自己的代码。这也意味着因为某些指令和机制可能有别,由协力厂商软体供应商开发的代码未必运行在既有配置上。由于这已成为一个专有的处理器架构,MCU供应商将不能继续自己的发展蓝图。而另一方面,这种特定MCU配置的使用者(及开​​发者)则必须维持自己的处理器发展蓝图,以延续一个完整的产品发展蓝图。



结语


随着无线通讯和多媒体技术的不断进步,工程师面临的设计挑战变得越来越复杂。传统的DSP引擎,对许多需要通用DSP能力来实现未来提升的应用而言(譬如可携式多媒体设备),仍然是一种可行的解决方案。但一些更复杂的工作,如4G无线通讯处理和高画质视讯/音讯处理,则需要一种新的市场专用方案。起源于CPU领域并且也流行于MCU领域的多核设计,是提升性能水准的方法之一,不过这同时也增加了功耗。一些MCU厂商提出的另一种方法是提供不同的DSP ISA扩展。另一方面,DSP厂商开始将新设计转为市场专用DSP。然而,这些替代解决方案的功能性的性能、灵活性和效率到底如何,仍然是一大关键问题。



如上所述,扩展MCU把DSP功能作为附属加速器来处理,对市场专用DSP而言,这却是架构的固有部分。另外,扩展MCU(客户可借此定义自己的DSP指令集)可被看作单点解决方案,但是无法用于和再用于同一个产品系列中的不同产品。这样,由于扩展MCU缺乏发展蓝图和代码相容性,而市场专用DSP以单个DSP架构就能够服务于特定市场的整个产品系列,最终使前者无法达到市场专用DSP的普遍性。这正是市场专用DSP的的主要优势,而这也是市场专用DSP将成为下一代SoC基础的原因。



---作者为CEVA公司企业市场副总裁---



相关文章
AI Everywhere势不可挡 信任运算架构将成关键
神经处理/运算为边缘带来实时决策
嵌入式应用渐趋多元 浮点运算MCU满足市场不同需求
高性能DSP与深度学习语库是智慧语音开发关键
类比、数位还是混合型电源:何时为电源增加智慧功能才有意义
comments powered by Disqus
相关讨论
  相关新闻
» 美光针对用户端和资料中心等市场 推出232层QLC NAND
» 摩尔斯微电子在台湾设立新办公室 为进军亚太写下新里程碑
» 爱德万测试与东丽签订Micro LED显示屏制造战略夥伴关系
» 格斯科技携手生态系夥伴产学合作 推出油电转纯电示范车
» Arm:因应AI永无止尽的能源需求 推动AI资料中心工作负载


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK84S3ZU962STACUK2
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw