非易失性存储器中的处理器制造技术

技术编号:18428023 阅读:46 留言:0更新日期:2018-07-12 02:23
在一个示例中,计算系统包括设备,该设备包括:被划分为多个可选位置的非易失性存储器,在非易失性存储器中的每个位被配置为具有被独立地更改的对应数据,其中可选位置被分组为多个数据行;以及一个或多个处理单元,其被耦合到非易失性存储器,处理单元的每一个与多个数据行中的数据行相关联,并且处理单元的每一个被配置为基于在多个数据行中的关联数据行中的数据来计算对应结果,其中非易失性存储器被配置为基于对应结果来将数据选择性地写入关联数据行的可选位置中,该可选位置被保留以存储来自与关联数据行相关联的处理单元的计算结果。

【技术实现步骤摘要】
非易失性存储器中的处理器
本公开一般涉及存储器领域,更具体地,涉及非易失性存储器中的处理器。
技术介绍
在消费者、工业、军事和航空领域的所有现有设备中使用的存储器设备可以由非易失性存储器或易失性存储器组成。非易失性存储器与易失性存储器之间的主要区别是非易失性存储器在不需要持续电源的情况下能够保留数据。通常,可以从非易失性存储器读取数据,传输该数据并在易失性存储器中暂时存储该数据,然后使用处理单元来操纵数据,并将结果存储回到非易失性存储器中。通常,可能期望增加上述操作的总体速度。然而,可能由硬件带宽(例如,其中例如指令提取和数据操作不能同时在一个共享存储器总线上发生的冯诺依曼瓶颈)而在速度上限制了将数据从非易失性存储器传输到易失性存储器用于数据操纵。因此,需要新的处理单元和存储器架构来克服这个限制。
技术实现思路
在一个示例中,计算系统包括设备,该设备包括:非易失性存储器,其被划分为多个可选位置,非易失性存储器中的每个位被配置为具有被独立地更改的对应数据,其中可选位置被分组为多个数据行(dataline);以及一个或多个处理单元,其被耦合到非易失性存储器,处理单元的每一个与多个数据行中的数据行相关联,并且处理单元的每一个被配置为基于在多个数据行中的关联数据行中的数据来计算对应结果,其中非易失性存储器被配置为基于对应结果来将数据选择性地写入关联数据行的可选位置中,这些可选位置被保留以存储来自与关联数据行相关联的处理单元的计算结果。在另一示例中,一种方法包括由被耦合到非易失性存储器的一个或多个处理单元的特定处理单元、并且基于在与处理单元相关联的多个数据行的特定数据行中的数据计算对应结果,该非易失性存储器被划分为被分组为多个数据行的多个可选位置,其中非易失性存储器中的每个可选位置被配置为被独立地编程和擦除,其中处理单元的每个处理单元与多个数据行中的数据行相关联,并且其中一个或多个处理单元和非易失性存储器被包括在相同芯片上。在该示例中,方法还包括基于对应结果来选择性地更改在特定数据行的可选位置中的数据,这些可选位置被保留以存储来自与特定数据行相关联的处理单元的计算结果。在另一示例中,存储器设备中的处理器包括多个装置,其用于基于在数据行中的数据来计算对应结果,该数据行的每一个包括被划分为多个可选位置的非易失性存储器的一个或多个可选位置,其中非易失性存储器中的每个可选位置被配置为被独立地编程和擦除,其中用于计算的多个装置的每一个与多个数据行中的数据行相关联,并且其中用于计算的多个装置和非易失性存储器被包括在相同芯片上;以及用于基于对应结果来选择性地更改在数据行的所选择的位置中的数据,这些所选择的位置被保留以存储来自与数据行相关联的用于计算的装置的计算结果。在附图和下面的描述中阐述本公开中描述的技术的一个或多个示例的细节。该技术的其它特征、对象和优点将从说明书和附图以及从权利要求书中变得显而易见。附图说明图1是示出根据本公开的一个或多个技术的包括多个在非易失性存储存储器设备中的处理器(processorinnon-volatilestoragememory,PiNVSM)的示例系统的概念和示意框图。图2是示出根据本公开的一个或多个技术的示例数据处理单元(dataprocessingunit,DPU)的进一步细节的框图。图3是示出根据本公开的一个或多个技术的示例数据处理单元(DPU)的进一步细节的框图。图4是示出根据本公开的一个或多个技术的PiNVSM设备的示例存储空间的概念图。图5是示出根据本公开的一个或多个技术的可以被包括在PiNVSM设备中的示例数据行的概念图。图6是示出根据本公开的一个或多个技术的可以被包括在PiNVSM设备中的示例代码行的概念图。图7是示出根据本公开的一个或多个技术的可以被包括在PiNVSM设备中的数据行的示例布置的概念图。图8是示出根据本公开的一个或多个技术的与PiNVSM设备的数据行一起的示例代码行的概念图。图9是示出根据本公开的一个或多个技术的与PiNVSM设备的数据行一起的示例代码行的概念图。图10是示出根据本公开的一个或多个技术的可以用命令移位(shift)方法来被执行的示例代码行的概念图。图11是示出根据本公开的一个或多个技术的包括跳转(jump)的示例代码行的概念图。图12是示出根据本公开的一个或多个技术的非易失性存储器设备的经优化的数据行的概念图。图13是示出根据本公开的一个或多个技术的非易失性存储器设备的示例存储空间的概念图。图14是示出根据本公开的一个或多个技术可由管理单元维护的示例队列的概念图。图15是示出根据本公开的一个或多个技术的用于在非易失性存储器设备中维护指令集使用频率的队列的示例技术的流程图。图16是示出根据本公开的一个或多个技术的在DPU中的队列维护的概念图。图17是示出根据本公开的一个或多个技术的非易失性存储器设备的数据行的优化的概念图。图18是示出根据本公开的一个或多个技术的由PiNVSM设备存储的数据类型的概念图。图19是示出根据本公开的一个或多个技术的用于操纵在PiNVSM设备中的数据的示例技术的流程图。图20是示出根据本公开的一个或多个技术的用于操纵在PiNVSM设备中的数据的示例技术的流程图。具体实施方式根据本公开的一个或多个技术,提出了一种计算机架构,在其中处理单元包括持久数据存储装置并且可以就地(in-place)处理数据。例如,在芯片上的非易失性存储器(PiNVSM)设备中的处理器可以能够持久地持久存储大量数据,并且就地处理所持久存储的数据。由于一个或多个处理单元和NVSM两者都被包括在相同芯片上,可以减少一个或多个处理单元可以访问由NVSM存储的数据的速率(即,等待时间)。为了说明的目的,PiNVSM设备可以是单个半导体芯片,并且可以包括被连接到非易失性存储器的关联存储器子阵列的数据处理单元。PiNVSM系统可以包括经由各种通信总线或信道(有线或无线)来以各种配置被连接到彼此的多个PiNVSM设备。以这种方式,PiNVSM设备可以避免诸如冯诺依曼瓶颈的存储器带宽限制问题。可以由PiNVSM设备使用一个或多个处理单元来执行使用数学计算功能和/或逻辑功能的数学计算操作和/或逻辑操作。在一些示例中,PiNVSM设备包括一个或多个算术逻辑单元(arithmeticlogicunit,ALU)。如下面更详细地讨论的,ALU可以每个被配置为执行整数运算和逻辑操作(例如,AND、NAND、OR、NOR、XOR、NOT)。在一些示例中,PiNVSM设备可以包括一个或多个浮点单元(floatingpoíntunit,FPU),其可以每个被配置为执行非整数计算,诸如可以生成分数或“浮点数”的除法操作。在一些示例中,PiNVSM设备可以包括一个或多个处理单元(processingunit,PU)、以及一个或多个现场可编程门阵列(fleld-programmablegatearray,FPGA)。在一些实施例中的处理单元可以以硬件被预先制造以执行特定计算或数据操纵。例如,可以仅使用特定电路逻辑(诸如ASIC)来预先制造处理单元以执行特定计算。可替换地,处理单元可以是可以在现场被编程的可编程处理单元以基于执行代码来执行计算或数据操纵。例如,这样的处理单元可本文档来自技高网...

【技术保护点】
1.一种包括设备的计算系统,所述设备包括:非易失性存储器,被划分为多个可选位置,所述非易失性存储器中的每个位被配置为具有被独立地更改的对应数据,其中所述可选位置被分组为多个数据行;以及一个或多个处理单元,被耦合到所述非易失性存储器,所述处理单元的每一个与所述多个数据行中的数据行相关联,并且所述处理单元的每一个被配置为基于在所述多个数据行中的关联数据行中的数据来计算对应结果,其中所述非易失性存储器被配置为基于所述对应结果来将数据选择性地写入所述关联数据行的可选位置中,所述可选位置被保留以存储来自与所述关联数据行相关联的所述处理单元的所述计算结果。

【技术特征摘要】
2016.12.30 US 15/395,4741.一种包括设备的计算系统,所述设备包括:非易失性存储器,被划分为多个可选位置,所述非易失性存储器中的每个位被配置为具有被独立地更改的对应数据,其中所述可选位置被分组为多个数据行;以及一个或多个处理单元,被耦合到所述非易失性存储器,所述处理单元的每一个与所述多个数据行中的数据行相关联,并且所述处理单元的每一个被配置为基于在所述多个数据行中的关联数据行中的数据来计算对应结果,其中所述非易失性存储器被配置为基于所述对应结果来将数据选择性地写入所述关联数据行的可选位置中,所述可选位置被保留以存储来自与所述关联数据行相关联的所述处理单元的所述计算结果。2.根据权利要求1所述的计算系统,其中所述一个或多个处理单元被配置为基于执行代码来计算所述对应结果,所述计算系统还包括管理单元,被配置为:从包括代码行的非易失性存储器获得所述执行代码。3.根据权利要求2所述的计算系统,其中在所述代码行的每一个中的所述执行代码包含指令序列。4.根据权利要求3所述的计算系统,其中所述一个或多个处理单元的每一个被配置为基于由所述代码行中的代码行表示的指令序列中的相应指令来同时为所述多个数据行中的关联数据行计算结果。5.根据权利要求2所述的计算系统,其中所述指令序列中的指令包括基本操作。6.根据权利要求1所述的计算系统,其中所述设备包括集成电路(IC)。7.根据权利要求6所述的计算系统,其中所述设备是多个数据处理单元中的第一数据处理单元,其中所述多个数据处理单元的每一个包括相应的非易失性存储器和相应的一个或多个处理单元,所述计算系统还包括:被配置为在多个数据处理单元之间传输数据和指令的一个或多个路由器。8.根据权利要求1所述的计算系统,其中更改在所述非易失性存储器中的位的对应数据包括编程或擦除所述对应数据,其中编程在所述非易失性存储器中的特定位的数据不更改所述非易失性存储器的其他位的数据,并且其中擦除在所述非易失性存储器中的特定位的数据不更改在所述非易失性存储器中的其他位的数据。9.一种方法,包括:由被耦合到非易失性存储器的一个或多个处理单元中的特定处理单元、并且基于在与所述处理单元相关联的多个数据行中的特定数据行中的数据来计算对应结果,所述非易失性存储器被划分为被分组为所述多个数据行的多个可选位置,其中所述非易失性存储器中的每个可选位置被配置为被独立地编程和擦除,其中所述处理单元中的每个处理单元与所述多个数据行中的数据行相关联,并且其中所述一个或多个处理单元和所述非易失性存储器被包括在相同芯片上;以及基于所述对应结果来选择性地更改在所述特定数据行的可选位置中的数...

【专利技术属性】
技术研发人员:LV卡格尼尼VA杜贝科
申请(专利权)人:西部数据技术公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1