引言:随着VoIP被广泛整合进入WiFi中,实现成本、功耗和功能之间的平衡对设计提出了重大的挑战。本文描述的具有DSP功能的嵌入式RISC处理器在不增加系统复杂性、对功耗影响很小的前提下,为移动电话增加WiFi电话功能提供了很好的解决方案。
图1:RISC+DSP方案的功能设计划分。
WiFi电话(VoWiFi)的市场容量预测显示,随着消费者持续采用VoIP技术,WiFi电话的市场容量将大幅增长。这种预测结果引起了各地系统集成商和设计师的关注,许多设计公司争相推出或研究新的解决方案以满足这种即将到来的市场需求。虽然很容易发现WiFi电话解决方案的价值所在,但设计出能够在成本、功耗和功能之间达到最佳平衡的市场畅销产品对现有公司和新进入的公司都提出了极大的挑战。
随着大众普遍接受标准化信令格式-会话初始协议(SIP),以及免费易用的软件电话包(如Skype)的出现,VoIP电话通话逐渐变得流行起来。随着WiFi手机、PDA和能够在蜂窝和WiFi网络间漫游的双模WiFi/蜂窝手机中VoIP被整合进WiFi,VoIP正在进入无线应用。据市场调查公司In-Stat预测,双模手机和WiFi单模手机的普通消费和商业应用总量在2009年将达到1.41亿部。虽然这种应用是迄今为止VoIP的最大市场,但把VoIP整合到如汽车系统和便携式媒体播放机(PMP)这样的其它的功率有限设备里也会给半导体供应商带来巨大的市场机遇。
毫无疑问,如今功能丰富的手机的发展在功率有限电子设备中一马当先。最先进的手机具有大屏幕LCD、照相机、蓝牙和802.11b WiFi连接。用户可以观看或捕获视频、上网冲浪和检查电子邮件。这种智能电话需要使用高容量的电池,电池容量可能比普通手机用的电池容量大三倍。但即使配备了高容量电池,在使用WiFi连接时其总的允许通话时间也会从典型的5小时左右下降至2小时不到。更糟的是,用户必须采用成本大大增加、体积更大、更重的电池。而通常,电池使用时间和价格是消费者最关注的因素。
在这些功率有限的电话设备中增加基于WiFi的VoIP功能需要增加支持802.11g WiFi、语音和IP网络的软硬件。虽然这听起来微不足道,但802.11g的实现特别具有挑战性,要知道典型的802.11g笔记本芯片组在传输时消耗的电流要比整个手机在通话期间消耗的电流还要高。典型的手机在通话时功耗约600mW,而标准的WiFi无线设备在收发时的功耗高达800mW。在基于WiFi的VoIP通话期间,处理器和其它逻辑电路还要消耗额外的功率,因此WiFi电话的总功耗很容易达到1W的范围。通话期间功耗增加400mW大约会缩短一半的总体通话时间。
即使处理器并不是这种系统中最耗电的器件,但为了降低整个系统功耗,也很有必要管理处理器的功率。电池技术的发展太慢,根本跟不上消费者对更长电池寿命和增强的功能的需求,因此处理器和系统电源的效率成为增加功能(此处为WiFi电话)可用的功率预算,并能够在不降低用户使用体验的条件下实现创新服务的关键因素。对于支持VoIP的电池供电设备来说,在满足用户使用性能的前提下,处理器的最佳选择应该是能实现最低功耗和最低成本的内核。
VoIP的处理
包括双模和WiFi电话手机在内的大多数VoIP终端都需要同时支持1~2路语音通道,这确保能满足双方和三方会议通话的需求。每路语音通道由用于编解码的ITU(国际电信联盟)G.7xx算法、语音质量(G.168-2000)和电话信令(SIP或H.323)组成。
表1:DSP增强型RISC处理器上的语音处理。
一个VoIP设备必须支持多个编解码类型,具体使用类型取决于各自的网络要求。常用的编解码标准有G.729AB、G.723.1、G.711和iLBC。语音质量组件包括声学回声消除(G.167 AEC)、语音活动检测(VAD)和舒适噪声产生(CNG)以及抖动缓冲:回声消除用于滤除语音的回声,VAD用来编码和压缩语句间的静音,而CNG用来在电路或环境导致的噪声情况下提供语音检测。抖动缓冲可以确保不管经过网络的延时有多大,语音包括都能以正确的顺序得到处理,同时使包的丢失最少。其它组件还有像用于语音邮件和寻呼的双音多频(DTMF)信号系统拨号这样的电话算法、基于SIP或H.323的通话建立控制。实际上,上述标准目前已经很普遍,但任何VoIP应用都需要具备软件可升级性,语音编解码和通话控制标准还在不断发展,因此现在的设计能够支持可能出现的新的语音算法或标准是非常重要的。
这些算法的处理传统上都是在双内核系统上进行的,系统中的通用处理器用于控制和管理功能,DSP内核用于语音编解码和高质量的算法处理。如表1所示的频率评估那样,如今整合了RISC和DSP功能的嵌入式处理器足够为全双工通道提供执行这些运算所需的带宽。虽然每个架构实现DSP功能的方式不同,因此处理语音算法的效率有高有低,但是设计师可以采用一种通用规则,即一个全双工通道使用约100MHz的带宽或100MCPS(每秒百万周期)。在DSP性能得到增强的RISC内核上,这个带宽一般占总的可用带宽的一半以下,因此能给大多数VoIP设备预留出足够的应用余量。
语音处理对单内核系统仅仅增加30到60mW的功耗。功率由动态功率和静态功率组成(P=CV2F+IV),每个通道语音数据的处理和传送的功率用动态功耗的频率分量来表示,并且动态功耗的大小取决于处理器的功率模式和CPU内核执行特定算法所需的周期数。大多数供应商都能提供特定半导体工艺的常规处理器的每兆赫兹功耗估计,CPU处理算法所需的周期数很大程度上取决于处理器的DSP功能的执行效率和算法代码的优化程度。表1给出了基于ARM9E(台积电的0.13微米工艺)内核的高度优化解决方案的估算功耗,该值处于功耗范围的下限-更低效率的内核只会导致更高的功耗。
语音处理给单内核系统增加30到60mW的功耗,而传统的双内核系统增加的功耗可能是这个数字的二到三倍。DSP内核和存储器系统不仅在时钟信号驱动下会产生动态功耗,由于第二个子系统而需要增加的门电路还会消耗额外的静态功耗。
SoC设计师可以采用在单处理器上结合了控制和信号处理功能的单内核架构降低功耗和成本。使用一个CPU的方法可以简化设计、减少整合问题、缩短开发时间并降低风险,同时还能减少芯片周边的数据传输。将语音划分给CPU处理意味着只有一个存储器系统,分立DSP的划分方案涉及多个存储器系统,以及DSP和CPU内核之间的包交换,而占用的每个时钟周期都要消耗功率。除了降低功耗外,给CPU增加数据层功能可以降低开发和产品成本。使用单个工具链而非分离的DSP和CPU的软件开发可以在工具和工时数方面减少设计费用。此外,采用一个内核而不是两个内核可以减少内核和存储器系统的裸片面积,从而降低裸片的成本。单内核可降低总体拥有成本:一个IP授权引起的法律费用、维护费用、版税和许可费用都要少很多。
RISC+DSP
通用的嵌入式RISC处理器在20世纪90年代后期开始集成数字信号处理功能。像ARM9E处理器中的增强的DSP功能就是第一代DSP功能,它支持快速和灵活的16×16MAC与饱和算法。这个创新性设计对语音和音频处理很理想,因为这种处理需要组合的数字信号处理和控制功能。在某些情况下,新的DSP指令专门针对于处理16位语音数据所需的常见的循环(loop)。例如,ITU规定的许多语音算法要求在每次操作后进行溢出/饱和校验。用于加法和减法指令的饱和扩展减少了周期数,并降低了功耗,显著地减少了指令数量。其它有益于语音处理的新增功能包括用于改进的归一化和灵活的寄存器寻址的CLZ(前导零计数)指令,与以前的RISC架构相比,其数据和系数值加载和存储效率会更高。这些新增功能进一步减少了资源使用和周期数量。
除了使性能相对于独立的RISC架构提高了二到三倍,这些扩展还可以让设计师重新划分他们的设计。在诸如需要支持1至2路语音通道的手机这样的应用中,不再需要增加单独的DSP内核或语音处理加速器。去掉第二个DSP内核可以减少门电路数量和简化设计过程,由此可以使成本下降多达40%。
后续的几代处理器(如ARM11)集成了更复杂的信号处理逻辑和指令,可进一步提升那些需要中等或高复杂度的信号处理应用的性能。在几种嵌入式处理器中还集成了SIMD(单指令多数据)引擎,配合新的指令可以充分发挥视频和多媒体处理算法的固有并行处理优势。这些架构还改善了语音处理性能,相比DSP增强的内核速度提升20-30%。因此这些内核非常适用于二个以上通道的应用,如家庭网关或同时支持视频和语音的应用。这些架构一般有更长的流水线,因此可以工作在更高的频率。由于这些内核有更大的带宽,因此可以支持更大的应用负载。然而性能的增加自然也要增加裸片和功率成本,设计师必须仔细斟酌产品的使用情况和应用的性能需求,力求做到处理需求与性能一致。
评估DSP功能
在评估某个特定内核的DSP功能时需要考虑架构的性能和效率以及对架构的支持。在判断你的应用负载能否被单一处理器支持时,性能是至关重要的条件。另外,RISC处理器的DSP性能将影响语音处理时消耗的功率。对特定内核DSP功能的评估最好是采用实际的代码和硅片进行,但考虑到需要在开发开始之前评估性能,某些基准测试程序可能会对决策制定的过程提供帮助。可以采用专注于数字信号处理的基准测试,如伯克利设计科技有限公司(BDTI)发布的BDTIBenchmarks分析内核的DSP性能。在为了优化性能而将算法调整到适合架构的应用(比如语音处理)中,BDTIBenchmarks可以对在一般信号处理应用中手工调整的汇编代码例程的性能提供指导。BDTI的结果可以帮助设计师以一定的精度预测该类型的代码在特定处理器上运行的情况。RISC处理器的DSP功能在性能上的微小差别反映到功耗上差别就可能变得很大。裸片大小和存储器效率是第二个关键问题,因为性能的提高可能以效率作为代价。
在处理器性能给定的情况下,内核大小比较的结果怎样?增加的性能应该用最低的硅片成本实现。最后,由于上市时间周期越来越短,利润空间的压力越来越大,内核扩展得到大量工具、OS和中间件供应商的支持是非常重要的,是否具备用于软DSP解决方案的高度优化的语音处理软件是非常重要的考虑因素。用汇编编写、手工优化的用于特定处理器的优化软件对保持足够的应用负载余量非常重要。未经优化的解决方案速度可能会下降高达40%,和/或使用显著增多的存储器。从DSP指令的恰当使用到消除了不必要的指令和并行机制的流水线,这些供应商在算法调整和语音框架软件方面都非常专业。软件提供的这些特性有助于实现具有竞争力的解决方案,并释放出宝贵的工程资源专门用于产品的差异化开发。大多数软件供应商可以提供在不同嵌入式处理器平台上优化的解决方案所需的周期数和存储器的详细统计数据,从而在设计过程早期就向设计师和系统集成商提出硬性的目标要求。
本文小结
借助于支持软DSP架构的现成的软件解决方案,具有DSP功能的RISC处理器提供的一体化软件包,能满足对功耗和成本都很敏感的设计的需求。在单个设备中融合很多应用功能的今天,具有DSP功能的嵌入式RISC处理器可以在不增加系统复杂性、对功耗影响很小的前提下,为这些新增功能提供很好的解决方案。设计师真的可以“少劳多得”,通过在一个处理器中集成多项功能来优化系统的成本和功耗。在不远的将来,这种设计划分方案将生产出低于100美元价格门槛要求的高能效手机,实现视频和VoIP设备,并将VoIP移植到原本没有语音功能的设备上,比如打印机或便携式媒体播放器。这些功能强大、节省成本的解决方案的出现将推动VoIP的应用。
作者:Charlene Marini
ARM公司企业级市场部