多核设计竞争激烈异构架构渐行
——

架构变迁
简单地说,多核处理器就是将多个计算内核集成在一个处理器中,从而提高计算能力。当系统中有很多处理器时,多个任务可以同时运行,这种方法可用来提高绝对性能或性价比。
而随着技术的成熟,多核处理器近两年发生的一个最显著的变化就是架构的变迁——那就是多核架构从通用的对等设计迁移到“主核心+协处理器”的异构架构,即处理器中只有一个或数个通用核心承担任务指派功能,而诸如协处理器、加速器和外设等功能都可以由专门的DSP硬件核心来完成,由此实现处理器执行效率和最终性能的最大化。
我们知道,Intel最初的四核处理器采用的就是对等设计,即每个内核地位相同。而在2005年的IDF技术峰会上,Intel对外公布了Many Core超多核发展蓝图。Many Core采用的就是“主核心+协处理器”的异构架构,其中的某一个或几个内核可以被置换为若干数量的DSP逻辑,保留下来的X86核心执行所有的通用任务以及对特殊任务的分派。
而IBM、索尼和东芝等联手为游戏打造的强大“细胞”芯片Cell正是这种新型异构架构的典范,它是一枚拥有9个硬件核心的多核处理器。在Cell芯片中,只有一个是IBM标准的Power处理器,其余8个内核都是为处理图像而专门设计的、用于浮点运算的协处理器。其中,主处理器的主要职能就是负责任务的分配,实际的浮点运算工作都是由协处理器来完成。由于Cell中的协处理器只负责浮点运算任务,所需的运算规则非常简单,对应的电路逻辑同样如此,只要CPU运行频率足够高,Cell就能够获得惊人的浮点效能。而由于电路逻辑简单,主处理器和协处理器都可以轻松工作在很高的频率上——Cell起步频率即达到4GHz就是最好的证明。在高效率的专用核心和高频率的帮助下,Cell可以获得高达256Gigaflops(2560亿次浮点运算每秒)的浮点运算能力,接近超级计算机的水准,远远超越目前所有的X86和RISC处理器。这正是异构架构所带来的好处、
在本期“嵌入式多核设计”专题中,TI和ARM的文章将分别就这种异构架构的多核设计和调试等问题进行探讨。
需要多核吗?
尽管众厂商都在追捧多核处理器,但也有人对它提出质疑。理论上,多核处理器架构具有无穷的可扩展性。如果有多余的内核,设计者总是想再增加一个。增加一个内核虽然会带来性能提升,但SoC中增加的每个处理器内核都会增加芯片面积,因而MIPS科技更加看好多线程技术,公司科技工程副总裁Pat Hays博士说:“多核技术并不能从根本上解决存储器的瓶颈问题,相反对于多核处理器,处理器多了以后,反而增加了面积和功耗。就共享存储而言,我们更倾向于多线程技术。在多线程处理器中,当一个线程停止时,其它线程立刻进入流水线开始执行,使应用吞吐能力显著增加。”
Pat Hays博士认为,从面积和能量效率的角度来说,最理想的 SoC 处理器解决方案应当使用多线程内核作为最基本的处理单元,如果应用需要比单内核所提供的更高的性能,可在多核配置中复制这些单元。
TI公司软件与开发工具工程师Bruce Lee也认为,多核处理器并不适合所有场合。他说,随着处理器功能日益增多,某些多内核设计可以回退到较传统的单内核设计,如单个 DSP、GPP或 FPGA。而且,多内核 SoC 可能并不适合单功能设备,如:无线电监控设备 (radio control watch) 或助听器。此外,对于那些不需要过多考虑功耗问题的产品,设计人员一般会提高时钟频率,以便获得执行单内核处理的各种任务所需要的处理功率,而不一定要用多核产品。
评论