用于操作存储器设备的方法和用于存储器操作的系统技术方案

技术编号:9667838 阅读:91 留言:0更新日期:2014-02-14 06:11
根据本发明专利技术的一个实施例,一种用于操作包括存储器和处理元件的存储器设备的方法,所述方法包括:在处理元件中,接收来自请求者的命令;在处理元件中,基于命令加载程序,所述程序包括从存储器中的第一存储器位置加载的加载指令;以及通过处理元件,执行程序,所述执行包括在处理元件中从存储器中的第二存储器位置加载数据。所述方法还包括:通过处理元件,基于加载指令生成第二存储器位置的虚拟地址;以及通过处理元件,将虚拟地址翻译成真实地址。

【技术实现步骤摘要】
用于操作存储器设备的方法和用于存储器操作的系统
本专利技术通常涉及计算机存储器,更具体地,涉及有源缓冲存储器系统。
技术介绍
当计算机通电并操作时,计算机系统通常要求相当多数量的高速存储器(如随机存取存储器(RAM))来保持信息,如数据和程序。随着计算机系统已经在性能和复杂性方面增加,存储器设备密度已经持续增长。由于从增加的密度导致的更长的信号路径,从主处理器到密集存储器设备上的各位置的通信可能要求额外的功率。此外,高密度存储器设备内的增加的功耗可能导致温度管理问题。此外,由于处理器和存储器之间的距离,与数据操作相关的数据存取时间和延迟增加,而主处理器和存储器之间的有效带宽减少。更长的信号路径也可能允许在主处理器和存储器之间的数据传输期间的崩溃或数据错误的更多机会。相应地,由于系统组件之间的距离,增加的存储器设备的密度可能导致不期望的功耗和减少的性能。
技术实现思路
根据本专利技术的一个实施例,一种用于操作包括存储器和处理元件的存储器设备的方法,所述方法包括:在处理元件中,接收来自请求者的命令;在处理元件中,基于命令加载程序,所述程序包括从存储器中的第一存储器位置加载的加载指令;以及通过处理元件,执行程序,所述执行包括在处理元件中从存储器中的第二存储器位置加载数据。所述方法还包括:通过处理元件,基于加载指令生成第二存储器位置的虚拟地址;以及通过处理元件,将虚拟地址翻译成真实地址。根据本专利技术的另一个实施例,一种用于存储器操作的系统包括存储器和处理元件,所述系统配置为执行包括以下步骤的方法:在处理元件中,接收来自请求者的命令;以及在处理元件中,基于命令加载程序,所述程序包括从存储器中的位置加载的指令序列。所述方法还包括:在处理元件中,基于命令加载配置信息,所述配置信息包括与存储器中的虚拟地址和真实地址有关的信息;以及通过处理元件,执行加载到处理元件中的指令序列。另外的特征和优点通过本专利技术的技术实现。本专利技术的其它实施例和方面在此详细描述,并且被认为是要求保护的本专利技术的一部分。为了更好的理解具有优点和特征的本专利技术,参考以下描述和附图。附图说明被当做专利技术的主题内容在说明书的结论处具体指出,并且在权利要求中明确要求保护。本专利技术的前述和其它特征和优点从结合附图进行的以下详细描述中变得明显,附图中:图1图示根据实施例的用于有源缓冲存储器的系统的方块图;图2图示根据实施例的用于操作具有有源缓冲存储器的存储器系统的方法的流程图;图3图示根据实施例的具有有源缓冲存储器的存储器系统的方块图;以及图4图示根据实施例的具有有源缓冲存储器的存储器系统的示意图。具体实施方式实施例贯注于操作有源缓冲(activebuffered)存储器设备。有源缓冲设备可以是任何适合的存储器设备,包括连接到逻辑部分的多个存储器元件(例如芯片)和处理元件。在实施例中,有源缓冲存储器设备包括形成三维(“3D”)存储器设备的多层存储器,其中各列芯片形成与处理元件和逻辑通信的库(vault)。存储器设备可以包括配置为与芯片通信的多个处理元件和其它处理元件。在一些实施例中,有源缓冲存储器设备可以包括可以被多个处理元件并发地存取的各分区(partition),其中各分区可以是任何适合的存储器段,包括但不限于库。在实施例中,处理元件通过互连网络访问分区中的已选择地址。此外,互连网络提供存储器设备上的处理元件之间以及处理元件和主处理器之间的通信。在实施例中,每个分区(例如,库)可以具有相关的存储器控制器或逻辑单元,其也耦合到互连网络。实施例包括能够使用存储器设备内的多个位置(例如,存储在特殊地址处的数据)作为操作数执行一组复杂的操作的有源缓冲存储器设备。此外,提供处理,从而对存储器设备内的这些操作数自动执行指令和操作。具体地,指令和操作存储在存储器设备自身内,并且不从主存储器分派,其中存储在存储器设备中的指令提供给处理元件,用于由处理器设备中的处理元件处理。在一个实施例中,处理元件是可编程引擎,包括指令缓冲器、指令单元(包括分支能力和指令解码)、矢量、标量和屏蔽寄存器文件的混合、用于存储器和寄存器文件之间的数据移动的多个加载/存储单元、以及用于各种数据类型的算术和逻辑处理的多个执行单元。在存储器设备中还包括有用于转换或翻译虚拟地址到物理地址的地址翻译能力、用于存储器和处理元件之间的顺序数据移动的统一加载/存储队列、以及用于与主处理器通信的处理器通信单元。在实施例中,有源缓冲存储器设备配置为在从外部请求者(如主处理器或其它存储器设备)接收命令之后,将配置信息或指令从有源缓冲存储器设备的一部分加载到处理元件中。此外,处理元件可以在执行加载的指令的同时执行它计算的虚拟到真实地址翻译。在示例中,当执行加载指令时,有源缓冲存储器设备从存储器位置存取操作数,并且将该操作数放入处理元件中的寄存器中。通过加载指令生成存储器位置的虚拟地址,并且通过处理元件将其翻译成真实地址。类似地,当执行存储指令时,有源缓冲存储器设备将具有内容(例如操作数)的存储器位置写入处理元件中的寄存器中。通过存储指令生成存储器位置的虚拟地址,并且通过处理元件将其翻译成真实地址。存储器设备中的处理元件的实施例还具有通过互连网络在存储器设备的任何部分中读取或写入操作数的能力。具体地,处理元件可以使用互连网络存取存储器设备中的其它分区(例如,库)。在实施例中,处理元件经由互连网络汇聚(pool)和耦合到库,其中处理元件不是物理地位于库层堆(stack)中。在实施例中,互连网络是耦合设备(如纵横开关),配置为将任何处理元件连接到任何存储器库,假设处理元件和存储器库耦耦合到互连。在实施例中,互连网络可以耦合多个有源缓冲存储器设备,其中互连网络提供分开设备的处理元件和存储器分区之间的通信。在一个实施例中,在存储器控制器作为层堆的一部分的情况下包括处理元件。此外,处理元件可以对读取的操作数执行复杂的算术和逻辑操作,并且将最终结果写回到存储器中的位置。有源缓冲存储器设备可以返回单个结果值或信号给主处理器,指示期望的复杂操作的结果在存储器设备中已准备好,因此在存储器设备上执行高带宽,并且使用存储器设备和主处理器之间的较低带宽通信。在实施例中,期望在有源缓冲存储器设备内具有处理能力,以便减少在存储器被驻留在分开的芯片内的处理器存取时将预期的存储器延迟和能量消耗。替代通过较低带宽通信路径将数据从存储器传输到分开的处理芯片,对数据执行通常是非常简单的的计算,然后将处理后的数据传送回到存储器,系统的主处理器将配置有源缓冲存储器设备内的有源处理元件,然后指示它们执行数据处理任务。这可以通过从主处理器向设备发送一个或多个命令来实现。在该情况下,在从存储器芯片到处理器芯片行进的距离和必须穿过存储器分级的缓存的级数两者中,主处理器和存储器之间的数据移动大大减少。在实施例中,有源缓冲存储器设备包括存储器立方体内的无状态(stateless)处理元件。处理元件对于处理器中的程序显得是长延迟功能单元。处理元件自身是可编程引擎,包括指令缓冲器、指令单元(包括分支能力和指令解码)、矢量、标量和屏蔽寄存器文件的混合、用于存储器和寄存器文件之间的数据移动的多个加载/存储单元、以及用于各种数据类型的算术和逻辑处理的多个执行单元。还包括有用于转换程序虚拟地址本文档来自技高网...
用于操作存储器设备的方法和用于存储器操作的系统

【技术保护点】
一种用于操作包括存储器和处理元件的存储器设备的方法,所述方法包括:在处理元件中,接收来自请求者的命令;在处理元件中,基于命令加载程序,所述程序包括从存储器中的第一存储器位置加载的加载指令;通过处理元件,执行程序,所述执行包括在处理元件中从存储器中的第二存储器位置加载数据;通过处理元件,基于加载指令生成第二存储器位置的虚拟地址;以及通过处理元件,将虚拟地址翻译成真实地址。

【技术特征摘要】
2012.08.03 US 13/566,0191.一种用于操作包括存储器和处理元件的有源缓冲存储器设备的方法,所述方法包括:在处理元件中,接收来自请求者的命令;在处理元件中,基于命令加载程序,所述程序包括从存储器中的第一存储器位置加载的加载指令,所述有源缓冲存储器设备包括可以被多个处理元件并发地存取的各分区,所述处理元件与所述存储器通信;通过处理元件,执行程序,所述执行包括在处理元件中从存储器中的第二存储器位置加载数据;通过处理元件,基于加载指令生成第二存储器位置的虚拟地址;以及通过处理元件,将虚拟地址翻译成真实地址。2.根据权利要求1所述的方法,其中,在处理元件中,基于命令加载程序包括:加载指令序列,所述指令序列包括加载指令和另外指令,所述另外指令包括使用来自处理元件的数据并将结果放入处理元件的算术操作或逻辑操作。3.根据权利要求1所述的方法,包括从处理元件向请求者发送跟随命令的执行的值或信号。4.根据权利要求1所述的方法,包括基于命令加载配置,所述配置从存储器内加载。5.根据权利要求4所述的方法,其中,所述配置包括用于在虚拟和真实地址之间翻译的地址信息、以及用于保持处理元件和请求者之间的存储器的一致的信息。6.根据权利要求1所述的方法,其中,所述请求者包括主处理器、网络接口、I/O设备或另外的有源缓冲存储器设备,其配置为与所述有源缓冲存储器设备通信。7.根据权利要求1所述的方法,其中,所述存储器包括存储器分区,其中在处理元件中,接收来自请求者的命令包括:在多个处理元件中,接收多个命令;以及,其中在处理元件中,基于命令加载指令包括:基于多个命令加载多个指令,其中每个处理元件配置为加载在其它存储器分区被存取的同时并发地存取存储器分区的指令。8.根据权利要求7所述的方法,其中,每个所述存储器分区包括存储器控制器,并且其中各存储器控制器和多个处理元件通过互连网络通信。9.根据权利要求1所述的方法,所述有源缓冲存储器设备还包括互连网络,并且其中所述存储器包括存储器分区,其中在处理元件中,接收来自请求者的命令包括:在多个处理元件中,接收多个命令;以及,其中在处理元件中,基于命令加载指令包括:基于多个命令加载多个指令,其中每个处理元件配置为加载在其它存储器分区被存取的同时并发地存取存储器分区的指令,其中存储器分区和多个处理元件通过互连网络通信。10.根据权利要求1所述的方法,其中,在处理元件中,基于命令加载指令包括:加载指令序列,所述指令序列包括指令和以下的至少一个:分支指令、同步指令和通信指令。11.一种用于操作包括存储器和处理元件的有源缓冲存储器设备的方法,所述方法包括:在处理元件中,接收来自请求者的命令;在处理元件中,基于命令加载程序,所述程序包括从存储器中的第一存储器位置加载的存储指令,所述有源缓冲存储器设备包括可以被多个处理元件并发地存取的各分区,所述处理元件与所述存储器通信;通过处理元件,执行程序,所述执行包括在处理元件中将数据存储到存储器中的存储器位置;通过处理元件,基于存储指令生成第二存储器位置的虚拟地址;以及通过处理元件,将虚拟地址翻译成真实地址。12.根据权利要求11所述的方法,其中,在处理元件中,基于命令加载程序包括:加载指令序列,所述指令序列包括存储指令和另外指令,所述另外指令包括使用来自处理元件的数据并将结果放入处理元件的算术操作或逻辑操作。13.根据权利要求11所述的方法,包括从处理元件向请求者发送跟随命令的执行的值或...

【专利技术属性】
技术研发人员:BM弗莱舍TW福克斯HM雅各布森JA卡尔JH莫雷诺R奈尔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1