细胞阵列计算系统的制作方法

文档序号:9929885阅读:400来源:国知局
细胞阵列计算系统的制作方法
【技术领域】
[0001]本发明涉及计算机及计算机应用技术领域,特别涉及一种细胞阵列计算系统。
【背景技术】
[0002]通常来说,一台计算机主要包括三个核心部分:中央处理器(CPU,CentralProcessing Unit)、内存和存储。
[0003]经过一些世界顶级公司的不懈努力,CPU已经演变成极度复杂的半导体芯片。顶级的CPU内核内部的MOS管数目可以超过一亿个。目前的产业趋势是受制于功耗,CPU的运行频率已经很难再提高。已经极度复杂的现代CPU,运行效率同样很难再提高。新的CPU产品,越来越多地朝多核方向演进。
[0004]在内存方面,目前居于统治地位的是动态随机存取存储器(DRAM,Dynamic RandomAccess Memory)技术。DRAM可以快速随机读写,但却不能在断电的情况下保持内容。实际上,即使在通电的情况下,它也会由于内部用于储存信息的电容器的漏电而丢失信息,必须周期性地自刷新。
[0005]在存储方面,NAND闪存技术正在逐步取代传统硬盘。闪存所依赖的浮置栅极(floating gate)技术,虽然能够在断电的情况下保持内容,但写入(将‘I’改写为‘0’ )的速度很慢,擦除(将‘0’改写为‘I’)的速度更慢,无法像DRAM那样用于对计算的直接支持。它被制作成块设备(block device),必须整块一起擦除,一个块(block)包含很多页(page),擦除后每页可以进行写入操作。NAND的另外一个问题是具有有限的寿命。
[0006]DRAM和NAND闪存,以及CPU的逻辑电路,虽然都是基于CMOS半导体工艺生产的,但这三者的工艺彼此并不兼容。于是,计算机的三个核心部分无法在一个芯片上共存,这深刻地影响了现代计算机的架构。
[0007]现有技术中的计算机架构如图1所示,图1中示出多个CPU内核,分别为CPU1、CPU2、CPU3、……、CPUn,每个CPU内核一般具有相应的一级缓存(LlCache),根据需要还可以进一步为每个CPU内核配备相应的二级缓存(L2Cache)、三级缓存(L3Cache)。DRAM与各个CPU内核之间通过双倍速率(DDR,Double Data Rate)接口进行通信,硬盘(HD,HardDisk)或固态硬盘(SSD,Solid State Drives)与各个CPU内核之间则通过外围设备接口进行通信。
[0008]—方面,CPU在向多核的方向发展,另一方面内存和存储都在另外的芯片里。多核CPU吞吐信息量成比例增加,与内存、存储的通信就越来越成为系统性能的瓶颈。为了缓解通信瓶颈,CPU不得不采用越来越大的多级缓存。缓存是把内存中的内容复制,通常是用成本比DRAM高得多但速度更快的静态随机存取存储器(SRAM,Static Random AccessMemory)设计的。这样的架构,费效比非常的差。半导体芯片的成本由其硅片的面积决定,而传统计算机架构带来的性能提升与其硅片面积的增加远远不成比例。

【发明内容】

[0009]本发明要解决的问题是现有技术中的计算机架构因CPU与内存、存储之间存在的通信瓶颈而影响计算机整体性能的提升,并使费效比较差。
[0010]为解决上述问题,本发明技术方案提供一种细胞阵列计算系统,包括:主控CPU、细胞阵列、细胞阵列总线和至少一个内存单元阵列;所述细胞阵列是由一个以上兼具计算和存储功能的细胞组成的二维阵列,其中每一个细胞包括微处理器(MPU,MicroProcessing Unit)和非易失(NV,Not Volatile)随机存储器;所述非易失随机存储器用于所述微处理器计算时所涉及数据的随机存取,还用于存储软件的指令代码和需要永久保存的数据;所述内存单元阵列是由一个以上内存单元组成的二维阵列,所述细胞阵列与所有内存单元阵列叠合形成三维结构,每个内存单元阵列中的内存单元与所述细胞阵列中的细胞一一对应地相连;所述内存单元用于所述微处理器计算时所涉及数据的随机存取;每一个细胞储存各自在所述细胞阵列中的位置作为身份识别号(ID,identificat1n)以供细胞中的软件或硬件读取;所述主控CPU通过所述细胞阵列总线与所述细胞阵列中的每一个细胞进行通信;所述细胞阵列中的相邻细胞之间有通信接口,能相互发送数据。
[0011]可选的,所述主控CPU通过所述细胞阵列总线与所述细胞阵列中的每一个细胞进行的通信包括以下情况中的至少一种:
[0012]按地址读写所述细胞阵列中任一细胞的非易失随机存储器或相应的内存单元;
[0013]将数据广播到目标区域内每一个细胞的非易失随机存储器或相应的内存单元,并写入该目标区域内每一个细胞的非易失随机存储器或相应的内存单元中相同的相对地址;
[0014]给所述细胞阵列中任一细胞的微处理器发送指令、发送数据或读取状态;
[0015]给目标区域内所有细胞的微处理器广播指令。
[0016]可选的,所述细胞阵列中的细胞还包括总线控制器和细胞内部总线,所述细胞内部总线连接所述微处理器、非易失随机存储器以及与本细胞相对应的内存单元,所述总线控制器与所述细胞阵列总线、微处理器以及细胞内部总线相连,所述总线控制器用于识别所述主控CPU与本细胞之间进行的通信,连接所述微处理器以传递所述主控CPU发送的指令或数据、状态读取,或者通过所述细胞内部总线连接所述非易失随机存储器或与本细胞相对应的内存单元进行数据的读写操作。
[0017]可选的,所述细胞阵列中的任意两个细胞之间能进行通信,参与细胞间通信的细胞包含起点细胞、终点细胞和中转细胞,所述起点细胞为向所述终点细胞发出数据的细胞,所述终点细胞为最终接收所述起点细胞所发数据的细胞,所述中转细胞为沿细胞间通信路径依次相邻且通过所述通信接口中转所述起点细胞所发数据的细胞,所述细胞间通信路径是由所述起点细胞、中转细胞和终点细胞所构成的数据收发路径。
[0018]可选的,所述细胞阵列中的任一细胞还能作为所述起点细胞向目标区域内的所有细胞进行群发通信,参与所述群发通信且位于目标区域内的细胞作为所述起点细胞、或作为所述终点细胞、或同时作为所述中转细胞和终点细胞,参与所述群发通信且位于目标区域外的细胞作为所述起点细胞或中转细胞。
[0019]可选的,所述细胞阵列中的细胞还包括与所述微处理器相连的网络控制器,所述网络控制器用于在进行细胞间通信时,对发出的数据、中转的数据或者最终接收的数据进行收发控制,还用于向所述微处理器发送中断信号。
[0020]可选的,所述细胞阵列中的细胞还包括与所述网络控制器相连的一组或一组以上先入先出队列(FIFO,First Input First Output),各组先入先出队列分别对应一个与本细胞相邻的细胞,每一组先入先出队列包括输入先入先出队列和输出先入先出队列,所述输入先入先出队列用于存储输入本细胞进行中转的数据或最终接收的数据,所述输出先入先出队列用于存储从本细胞输出的需进行中转的数据或本细胞向其他细胞发出的数据。
[0021]可选的,所述细胞阵列中还设有至少一个专职输出细胞,所述专职输出细胞作为所述终点细胞接收并存储其他细胞给所述主控CPU的输出数据,并以中断信号通知所述主控CPU读取所述输出数据。
[0022]可选的,所述内存单元与所述细胞阵列中相对应的细胞之间通过过硅通孔(TSV,Through Silicon Vias)建立通信联系。
[0023]可选的,所述微处理器中集成有浮点计算处理器(FPU,Float Point Unit)和图像处理器中的至少一种。
[0024]可选的,所述主控CPU与所述细胞阵列和所述细胞阵列总线集成于一个芯片中。
[0025]可选的,所述主控CPU作为独立的芯片,通过标准的内存接口与由所述细胞阵列和所述细胞阵列总线组成的芯片进行通信。
[0026]可选的,所述非易失随机存储器为磁性随机存储器(MRAM,Magnetic RandomAccess Memory)ο
[0027]可选的,所述内存单元阵列为MRAM、DRAM或SRAM芯片。
[0028]与现有技术相比,本发明的技术方案至少具有以下优点:
[0029]通过将一个以上兼具独立计算和存储功能的单元(称为“细胞”)组成二维阵列(称为“细胞阵列”),其中每一个细胞包括微处理器和非易失随机存储器,所述非易失随机存储器既能支持所述微处理器进行计算时所涉及数据的随机存取,也能支持存储软件的指令代码和需要永久保存的数据,使内存、存储、计算三个功能集成到每个细胞中,并使各细胞之间形成密集的通讯网络,一方面,主控CPU能通过细胞阵列总线与细胞阵列中的每一个细胞进行通信,另一方面,细胞阵列中的相邻细胞之间也能相互发送数据,由此能通过数据群发和内部网络,克服现有计算机架构因CPU与内存、存储之间存在的通信瓶颈,从而提升计算系统的整体性能,并能使费效比较佳;此外,再通过将至少一个由一个以上内存单元组成的内存单元阵列,与所述细胞阵列叠合形成三维结构,并使每个内存单元阵列中的内存单元与细胞阵列中的细胞一一对应地相连,所述内存单元用于所述微处理器计算时所涉及数据的随机存取,如此便能以较低的成本扩展细胞阵列中每个细胞的内存空间,提高细胞中微处理器的处理效率。
[0030]通过细胞阵列中相邻细胞之间的通信接口,实现相邻细胞之间对于数据的多次中转,使细胞阵列中的任意两个细胞之间不依靠主控CPU便能进行通信,提高了细胞间通信的效率,也降低了主控CPU的处理负担,从而能进一步提升计算系统的整体性能。
[0031]通过将细胞间的点对点通信功能扩展到区域群发,可以支持更高的平行度,获得高得多的总带宽,从而进一步提升计算系统的整体性能。
[0032]通过在细胞阵列中设置专职输出细胞,以所述专职输出细胞作为所述终点细胞接收并存储其他细胞给主控CPU的输出数据,并以中断信号的方式通知所述主控CPU读取所述输出数据,如此能够在只有少数几个细胞需要向主控CPU输出数据时提高主控CPU读取输出数据的效率。
[0033]本发明解决了 CPU和内存之间的通信瓶颈问题。这样,在相同的硅片面积下,大量微型MPU的处理能力,在很多问题上远超少数几个顶级CPU的处理能力,而耗电则低得多。
[0034]本发明使得计算机的架构更接近人脑,为未来的人工智能算法提供了强有力的引擎。
【附图说明】
[0035]图1是现有技术中计算机架构的示意图;
[0036]图2是本发明实施例提供的细胞阵列计算系统的一种结构示意图;
[0037]图3是本发明实施例的一种相邻细胞之间通信方式的示意图;
[0038]图4是本发明实施例的另一种相邻细胞之间通信方式的示意图;
[0039]图5是本发明实施例的细胞的结构示意图;
[0040]图6是应用细胞阵列计算系统以流水线的方式计算Monte Carlo积分的示意图;
[0041]图7是本发明实施例的细胞阵列中进行细胞间通信的细胞的结构示意图;
[0042]图8是本发明实施例的细胞阵列中细胞间通信的路径选择的示意图;
[0043]图9是本发明实施例的专职输出细胞的实施过程示意图;
[0044]图10是本发明实施例的细胞阵列中起点细胞在目标区域角上的细胞群发
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1