飞思卡尔公司的多核战略

分享到:

        目前,芯片级的多核处理技术是人们可以预见到的、能显著提升性能的唯一策略,每一家引领潮流的处理器公司都制定了一项多核战略。Freescale Semiconductor公司最近也完成了多核战略的修订。

  公司自从上世纪90年代中期以来,就一直在出售某种类型的多核芯片。Freescale的被广泛采用的PowerQUICC通信芯片是一种非对称式的多核处理器,它集成了一个通用型Power架构的内核,该内核内置一个专用的网络连接加速引擎。这些加速引擎最早于1995年以PowerQUICC通信处理器模块(CPM)的名字出现,其基础是一个专有的RISC架构。2005年,Freescale用QUICC引擎取代了CPM,该引擎本身包含有多个RISC内核,与CPM实现了后向兼容。

  但是,用户并不能对CPM进行完全的编程。用户对其进行编程时,只能通过Freescale的应用编程接口(API)来调用数量有限的、预先编写好的函数。更新的QUICC引擎采用了开放式的编程模式。因此,由于定义的严格程度不同,2005前的PowerQUICC芯片要么是异质化的多核设计(Power内核加CPM),要么是依靠专用加速器来加强的、传统的单核设计。不过,PowerQUICC芯片架构的本质特点—在多个异质化的处理单元上运行的分布化的处理—迫使Freescale在很长时间以前,就必须面对非对称的多处理器以及复杂的片上互连所带来的挑战。Freescale也是在多核DSP上实现对称化处理的先行者之一,在2001年引入了4核MSC8102。MSC8102及其后继产品都是基于StarCore DSP架构,而非通用的Power架构。

  2004年10月,Freescale发布了MPC8641D,一种基于Power的主控制器,带有双32 bit Power e600内核。在那时,原计划将在05年下半年开始提供MPC8641D的样品,可惜的是,MPC8641D的开发被延迟了一年以上,直到07年4季度推出其改版之前,均无望进入批量生产。

  在设计下一款多核处理器时,Freescale从这一艰难的经验中汲取了教训。在2006年6月,Freescale发布了PowerQUICC III MPC8572E,一种集成了双重Power e500内核的高度集成化的通信处理器。这种同质化的多核设计支持对称或者不对称的处理,集成了硬件加速器和I/O控制器。MPC8572E在去年6月按时交付了样品,确定于08年2季度投入批量制造。

  尽管在设计高性能、高度集成化的处理器方面拥有长期的经验,Freescale在向市场推出双核的Power芯片(MPC8641D)时仍然遇到了困难。这些困难对未来集成4个或更多Power内核的PowerQUICC设计是有用的经验。现在正是Freescale通过推出新的多核平台,思考未来的处理能力需求,实施长期多核战略技术的机遇。

  多核平台的多个部件

  Freescale的战略围绕着面向通信的技术平台展开,它包含了未来多核芯片设计所需要的全部部件。主要的部件是一个32bit的通用处理器内核、专用的加速引擎、具有多核处理能力的混合式仿真环境、多核软件开发工具,以及将各个核、I/O控制器、加速引擎和其他的资源连接起来的、新的片上互联交互架构。该平台的唯一一个全新的部件是CoreNet,即片上交换架构。其他的部件都是现有产品的改进版本。

  举例来说,基本的处理器内核是现有的Power e500内核的增强版本,该经过增强的内核被称为Power e500-mc,目前,其自有的L2高速缓冲被放置在一条后端总线上,与其他的e500-mc内核对一个L3缓存进行一致性的分享。除此之外,e500-mc实际上与2001年推出的e500内核并无区别。自有的L2高速缓存有助于减少内核间在总线上进行的数据传输,这与共享L2高速缓存的情形截然不同。Freescale正试图通过在这样的分层结构中引入一个共用的L3高速缓存,将自用和共用的高速缓存各自的优势结合起来。L3高速缓存的规模为数Mbyte。

  图1是Freescale的多核平台方框图。代表CoreNet模块的方框表示一个公共的交叉总线,它实际上是一种“带有多个地址仲裁器的可扩展的交叉架构”,更多的像一个网格架构那样运行,但连线密度要低于具有全局点到点连接能力的真正的网格。

                                                           图1 Freescale的多核平台方框图

  值得注意的是,Power e500-mc的功能要比某些其他公司的嵌入式多核设计所用的处理器内核强大得多。Power e500-mc是一种双向的超标量32bit处理器,Freescale的目标是1.8~2.0GHz范围的主频,以及基于绝缘体上硅(SOI)的45nm CMOS工艺。这样高的时钟速度能让e500-mc与Cavium Network 公司采用了4路超标量的、与MIPS公司兼容的64bit通信处理器中的内核展开竞争,后者目前达到了1.0GHz的峰值速度。

  Freescale对Power 500-mc的选用,反映了所有多核设计者都必须作出的一个折中选择:使用数量较少、功能更强的内核,还是使用数量较多而功能较弱的内核。Freescale作出选择时所考虑的一个主要因素,就是能否与现有的PowerQUICC芯片实现后向兼容。为了维持软件的兼容性,必须采用一个Power内核,而Power架构目前尚没有4、8或16bit的实现方案。Freescale可以选择一个更简单的Power核,例如e200,不过e500拥有高性能网络连接和通信所额外需要的实力。Freescale的多核平台也并未排除使用e500-mc之外的其他Power内核,包括功能较弱的e200等内核,或者一起使用的可能性。

  CoreNet互连能够将32个以上的Power e500-mc连接起来,构成完全一致的片上网络。如此大量的内核确实超越了“多核”的范畴,进入了定义尚不严格、最近被称为“Manycore(很多核)”的层次—虽然它还达不到级别最高的“大规模并行处理”层次。Freescale的计划对于一家正在竭力交付其首款同质双核Power芯片的公司来说,似乎显得过于野心勃勃。然而,Manycore设计必须在未来的网络和通信应用中进行竞争。Freescale的战略反映了在开发迟迟未能露面的MPC8641D时所获得的(正反两方面的)经验。

  未来的Freescale芯片将对Power e 500-mc内核进行补充,增添多个硬件加速器,例如QUICC引擎、压缩/解压缩引擎、模式匹配引擎和加密引擎。Freescale正在超前地针对32nm以及更高的技术进行规划。我们预计,Freescale即将保守地从同质的双核设计开始,向前发展。双核设计可能已经为在4核处理器中将双芯片耦合在一起的架构做好了准备,而该架构的功耗约为30W。

精彩活动