多核架构已踏上征途引领DSP发展
2009-02-10
作者:来自:中电网
在满足功耗要求的前提下,增加处理器内核来获得系统性能的提升已经成为计算和嵌入式处理器行业的一项标准做法。一场相似的演进似乎正在不可避免的渗入到所有高性能的处理应用,DSP厂商正在试图采纳多核架构来满足日益增长的系统处理性能要求。TI首席科学家方进(GeneFrantz)在TI开发商大会上就展望了未来DSP发展之路。他指出,并行处理带来了半导体性能的疾速提升,未来IC产业通用性将变得极其重要。面对未来创新应用所带来的高效严峻的挑战,系统需要更多灵活可编程的DSP核,并增加优化的可编程的协处理器。
TI日前发布了一款三核DSPTMS320C6474,该芯片在同一裸片上集成了三个1GHzC64x 内核,可以实现3GHz的DSP性能,处理能力为24,000MMACS(16位)和48,000MMACS(8位)。该公司称,多核平台最大的优势是体现在功耗和芯片面积上。以C6474为例,与多芯片解决方案相比,功耗降低了1/3,板级空间则减少了2/3,而成本也比降低了2/3。一个很明显的比较就是,与TI此前推出的单核1GHzDSPC6455相比,同样是提供3GHz的处理能力,三颗C6455的功耗约为15W,而C6474的功耗则只有6W左右。多核的另一优势则体现在执行效率方面。“多颗内核集成到单芯片上,片内时钟交换远比在一个单板上的多个DSP之间的级联快的多,可以1/2主频的速率进行数据交换,因此,带来了更快的数据信号处理。”TI中国区DSP业务开发经理郝晓鹏表示。除了在运算速度方面优势尽显之外,多核DSP内部存储空间也得以扩展。每个内核除了有32KB的L1数据和的程序存储空间之外,C6474还提供了一个3M的L2存储空间。并且3M内存在每个核内有两种分区方式,可以是1:1:1,也可以是1.5M:1:0.5M。“这完全取决于具体的应用。”郝晓鹏说道。大存储容量带来的一个显而易见的好处是DSP处理性能的迅速提高。多核DSP一个非常重要的性能就是并行计算能力,但如果没有足够的片内存储空间来配合,DSP就需要频繁的进行片外数据,在这种情况下,即使主频达到1GHz甚至更高,也无法提高运算速度,处理性能也将大打折扣。
飞思卡尔最近推出的一款多核DSP则是基于其e500PowerArchitecture内核。这款名为QorIQ平台包括5款产品,最多集成了8个1.5GHze500mc内核。该公司表示,多核是一项异常复杂的技术,对功率、成本和性能要求都受到严格限制的嵌入式领域来说尤其如此。并希望借此平台来提高多核技术在市场上的采用及支持,并将把多核技术带入一个嵌入式应用数量更多、更具多元化的时代。“这种增长也将改善整个多核生态系统。”
虽然多核在提升系统性能,降低功耗、成本方面具有领先的优势,但显然,并非集成的核越多越好。多核DSP仍然是面向那些可以很好的将任务分为几部分的特定应用。在不久前举办的亚洲PowerArchitecture会议上,飞思卡尔网络和多媒体集团战略营销主管,Power.org市场营销委员会主席FawziBehmann指出,多核是一个发展方向,但显然并不是唯一的出路。多核需要面对工作任务的合理分配,处理性能优化,并且与存储器的互联,以及相关软件算法的支持非常关键。“就目前的发展而言,2-4个内核产品不是飞思卡尔发展的重点。”
来自TI的观点则是,需要集成几个内核完全取决于市场的需求。尽管工艺技术在不断演进,但就单芯片的功耗及面积而言,处理性能无法继续大幅提升,而功耗却随着处理频率的增加成倍增长,这无疑会增加整个系统设计的复杂度。对于一些应用来说,需要多核的产品来解决上述难题。这其中包括通信基础设施的信号处理方面,需要多核来处理语音、数据、多媒体等需求;另一个是对功能及图像处理复杂度要求高的设施,实现视频侦测,视觉成像,医疗成像;第三则是在高性能、高强度的终端设备,包括核磁共振、CT、彩超等;第四,是需要实时现场通信的应用,大量的数据需要在极短的时间内完成信号处理分析,并送至控制台。“还有很多新兴应用,甚至一些我们现在都很难说清楚的应用,对信号处理带来了极高的要求。”郝晓鹏说道。“鉴于从客户方面获取的信息,我们目前推出了3核而不是其它几核的DSP产品。”
ADI也已经推出了双核的DSP产品BF561。该公司DSP市场经理陆磊表示,未来还将推出多核产品。但ADI通用DSP及移动处理器产品线总监MauryWood也同时表示,最多4核,已经足够应付现阶段的应用。
与此同时,多核DSP的开发环境与单核产品的巨大差异,使得如何发挥多核DSP全部的效能成为设计人员面临的一项重要挑战。“编译器在这个时候显得意义非凡,不同DSP核之间的任务加载,如何持续配合、匹配不同的线程等这些工作都是由编译器来完成的。”郝晓鹏补充说道。“多核产品的定义,有时候甚至是与我们主要的客户一起来完成的。需要考虑很多因素。单芯片能承受的功耗,针对特定应用单芯片的处理能力,以及多增加一个核带来的处理能力的提升是否要远远优于其所带来的功耗方面的影响。同时,多核DSP的可编程性和升级维护都是厂商需要考虑的。”