中微电全新处理器架构

标签:
杂谈 |
分类: 前沿及领先技术 |
(PS:设计新的架构不难,困难是能在这个新架构上跑的软件)
图1 CPU+GPU的演进图 (MVP是multi-thread virtual pipeline,多线程虚拟流水线)
中微电不仅提供UPU IP,还提供芯片,其IC1是第一个基于UPU的移动系统芯片,已于去年推出工程样片[1],主频600MHz,是双核-8线程。预计明年底推出IC2芯片,主频1GHz,四核-16线程。去年,中微电还与深圳一家公司联合申请了国家的核高基项目。
把CPU和GPU真正的融合在一个芯片里,这种融合不仅是硬件的融合,还有软件和完整的工具链,例如中微电有自己的指令集和Ithreads、Pthreads,可以进行GPU、CPU的软件调用。这样,客户不用管具体应用,GPU任务来后,中微电的软件自动分配给几个线程,并支持OpenGL。
中微电的IP有单核-4线程,双核-8线程,未来将有四核16线程。每个线程相当于一个标准的GPU或CPU核。16个线程做处理时,多任务情况下,可相当于16个SMP(对称多处理)核;如果是单任务,可以进行并行计算,即通过Pthreads,把多线程全部作为一个并行计算的硬件载体来进行运算。例如,在中微电的实验室里,“只用一个双核8线程,能够把软件的并行计算、视频的解码(软的)等用多线程实现出来。”
中微电公司业务拓展副总裁曹安生称,相比市面上SoC芯片的CPU核(ARM或者MIPS),中微电的核效率较高。例如要执行GPU任务时,客户还要License(获得授权)另外一个GPU的核。而要做视频的编解码时,还要再License一个视频硬核,所以是一个CPU核、一个GPU核,之后再封装在一起。如果要想GPU的能力越强,GPU核就越多。未来x265标准出来,它License的视频硬核是定死的,因此处理能力会受限。
一个UPU核有4个线程,相当于有4个SMP核,因此可以多任务、在不同的线程上跑。“当跑视频时,通过这四个线程,把算法并行化,就可以在四个线程上用软件来做。”
那么,相对于硬件,软件是否会引发功耗升高?曹安生称功耗会稍微高一点,但是可以接受的范围。软件的好处在哪儿?灵活性.“我们的软件可以并行化。例如现在可以是双核-8线程。如果未来推出四核-16线程,如果你有新的算法,也没问题,只要是把这个软件并行了之后,你在网上下载一些你现在格式就OK了。”
首先,线程既可执行GPU任务,又可当CPU。4个线程的好处是灵活,例如玩游戏时,CPU的任务很少。那我就可以把4个线程拿出来作为GPU的1个处理器,它的旁边如果再配一些固定的配置,就组成了完整的GPU。
任务动态地在线程之间分配,哪几个做CPU,哪几个做GPU。但是有GPU任务时,优先满足GPU,剩下的那些线程可以执行CPU的任务。当GPU把任务结束了,那些线程又可以来执行CPU的任务。
IC1是中微电的第一款产品,据曹安生介绍,其GPU的能力比Mali-400
GPU不逊色,或者更强(注:指核的比较,Maili有单核和双核产品)。
据中微电评估,IC1 600MHz与ARM
Cortex-A9双核1GHz比,ARM制程是40nm,中微电是65nm。对于CoreMark指标,中微电的单核是2580,双核就是5160;Cortex-A9双核不到3000。功耗方面,用MVP核来比较,一点都不差,甚至还更好。
中微电有自己完整的编译器,这归功于中微电的编译器的专家——Fred
Chow,曾是MIPS科技公司的创始人之一,主持过MIPS的Open64编译软件设计。
因此,如果客户是用C语言写的,之后在ARM环境上面来编译或运行,其源代码可以在中微电的编译器上编译,就能在中微电的UPU上运行了。