解读Tilera"怪兽级"64核处理器(转)

【IT168 专稿】日前,由麻省理工学院(MIT)教授阿南特·阿加瓦尔(Anant Agarwal)于2004年创办的Tilera公司推出了一款带有64个可编程内核、90nm工艺的RISC处理器——Tile64。据称该款处理器每核主频仅仅在600MHz和1GHz之间,总体功耗不过19.2W,但该芯片总体性能却是当前英特尔双核Xeon的10倍,每瓦特性能更是高达惊人的30倍,每万颗处理器的批发价也只有435美元(目前每千颗四核2.33GHz,8MB L2 Xeon处理器的价格是455美元)。

    不过,跟Transmeta 一样,Tilera没有选择直接跟英特尔和AMD在PC和服务器市场上进行竞争,而是瞄准了嵌入式领域,如路由器、交换机、防火墙、视频会议系统和机顶盒等网络应用及数字视频处理设备,但也不排除未来向服务器和工作站领域拓展的可能。阿加瓦尔表示,“我们关注嵌入式市场,是因为我们还是一家初创公司,想进入的是对性能有强烈需求的市场空间。在这些有限的细分市场中,我们能够更好地满足用户的需求,因此,我们不必直接去挑战市场上已占据优势地位的竞争者。”



Tile64处理器实物图

“Mesh”网状架构Vs.前端总线架构

    针对Tile64芯片,阿加瓦尔设计了所谓的“Mesh”多核架构,这些核心之间全部直接相连,而无须象英特尔多核芯片那样要经过前端总线。阿加瓦尔其实在1996年就提出了多核架构,比英特尔和AMD都要早得多。该项目还获得了DAPPA(Defense Advanced Research Project Agency)和美国科学基金会(National Science Foundation)的资金支持。目前Tilera在多核设计方面拥有40多项专利,TILE64其第一款进行量产的多核芯片。

    “多核处理器已经成为主流,业界预计处理器内核数量每18个月就将增加一倍。到2014年,我们将拥有千核处理器。但问题在于,在当前的多核架构中,总线是多核扩展所面临的关键问题。在传统架构下,总线就象是一个中央交换机,所有的内核都要经过它进行通信。虽然对于单核、双核和四核芯片来说,总线架构是没有问题的,但它不利于进一步的扩展。” 阿加瓦尔认为不同设计架构是Tile64的关键特色,“Tilera使用了mesh架构,所有的核心都呈网格状进行排列,并通过高速连接进行互连。采用这种架构,你可以不断地扩展,而不用担心任何严重阻塞问题。”

    据了解,跟传统X86处理器采用的前端总线结构不同,Tile64处理器内核之间采用的是一种“网状”架构(MESH)进行数据交换,有些类似于AMD HyperTransport总线的点对点架构,并集成了4个DDR2内存控制器,分布在核心阵列的周围。Tile64的64个核心排成8×8的阵列,每个核心都有一个CPU单元、一个缓存单元和一个交换单元组成,这些交换单元构成了一个名为iMesh的mesh网络,供芯片通讯使用,每个内核可以从四个方向与临近核心进行通信(处于边缘的核心则是与周围的两个或三个核心通信)。与传统芯片采用2、4个更大、更快、更复杂的内核的方式相比,由低速内核组成的分布网络能够更快速地完成计算任务,芯片的数据传输通道也更短。据称Tile64的每个核心拥有500Gb/s的带宽,从而使Tile64的总带宽可以高达32Tb/s。

 

Tile64总体架构设计图

    业界认为,这种架构解决了“如果在一颗芯片中集成多个内核,并让多个内核之间实现高速连接”的棘手问题——数十年来,芯片速度和晶体管数目一直在稳步、快速增长,但总线和内核间互连的数据通道的发展速度则要慢得多;如果采用当前的总线结构,当内核超过16个以后,核心之间以及核心与内存之间的连接速度就会形成处理器性能进一步提升的瓶颈。其实,包括英特尔、AMD、SUN等在内的芯片巨头都在试图解决这一问题,比如英特尔也有计划在明年推出的下一代Nehalem架构中放弃前端总线,而且,英特尔在去年9月份还公布了一款80内核的原型芯片,通过Through Silicon Vias技术大幅度提高芯片-内存间的数据传输通道;AMD在其皓龙处理器中采用了“Hyper Transport超传输总线、直连架构及集成内存控制器”,不过,AMD的皓龙处理器虽然没有前端总线,但目前最多也只能扩展到四个内核,而Tilera现在是64核;SUN公司则一直在开发一项名为proximity communication的技术,它能够使不同的芯片相互通讯。可见,未来芯片的基本限制将不再是内核性能,而是I/O性能。



Tile64内核模块设计架构图

弹性缓存、网络功能与极低功耗

    在缓存方面,Tile64处理器采用了更具弹性的缓存架构——每核集成两个8KB的一级缓存(8KB iL1,8KB dL1)和一个64KB二级缓存。尽管每个核都有自己的缓存区,但也可以访问所有的缓存区。虽然没有三级缓存(AMD即将推出的“巴塞罗那”和明年将推出的“上海”则分别带有2MB和6MB三级缓存),但可以通过软件方式,利用一级缓存和二级缓存来实现5MB三级缓存。Tile64的每一个内核都是一个功能完整的处理器,可以运行一个操作系统。



从共享缓存看Tile64 与Alpha EV7有相似的总线结构,不过EV7尚不能支持64个核心

    值得一提的是,Tilera的魅力不仅仅是能够装入更多的内核。该芯片上有一对万兆以太网端口以实现高速网络接入功能,还包括片上I/O和外设控制器。其内置的内存控制器可以在芯片内实现高达200GB的内存带宽。这也是为什么TILE64特别受到Top Layer青睐的原因所在,Top Layer是一家专业的网络安全和入侵检测设备制作商。据该公司首席策略官(Chief Strategy Officer)Mike Paquette表示,虽然Top Layer拥有自己的处理器,但现在已计划转向Tilera的芯片。“我们的软件是针对多核进行设计的,在Tilera中能够在内核与软件进程之间实现几乎1对1对应的功能。Tilera的网络功能要比X86处理器强得多。我们预计其性能会超出采用其他任何一种芯片的方案。”

    另外,Tile64在图形处理方面的性能也非常强劲,它可以同时编码8个2Mb/s码率的标清视频流(Parallel standard definition video stream),或者2个7Mb/s的720p高清视频流,或者1个20Mb/s的1080p高清视频流。同时,Tile64的编程和调节都非常简单,程序员可以轻松上手。

    在功耗方面,Tile64处理器每一个处理器核心的能耗在170-300毫瓦之间,因而Tile64芯片的最大功耗就达到19.2W。当处于空闲状态时,内核能够关闭自己,以降低能耗。

    解决了多内核扩展时所面临的数据通道问题,Tilera公司计划明年将推出一款价格较低的36内核版本,在2008年底或2009年推出集成有120个内核的芯片,到2014年还可能推出1000核心的超强产品,当然,Tile也可以向下收缩到两个内核。Tile64运行Linux,能够针对不同的应用软件进行优化。Tilera还会发布一个完整的针对应用的开发工具包MDE(Multicore Development Environment,多核开发环境)。它是一个基于Eclipse的集成开发环境,带有符合ANSI标准的C语言编译器、一个应用层开发库以及对多核处理器进行调试的工具等等。目前,首批已有12家包括3Com、Top Layer、Codian、GoBackTV等在内的客户采纳Tile64处理器。Tilera已经向客户交付了样品芯片,并计划于第四季度以商业规模交付芯片。

你可能感兴趣的:(网络,嵌入式,扩展,英特尔,layer,hyper)