有源存储器件中的地址生成的方法及其处理元件技术

技术编号:10069946 阅读:235 留言:0更新日期:2014-05-23 13:39
实施例涉及包括存储器和处理元件的有源存储器件中的地址生成。一个方面包括有源存储器件中的地址生成的方法及其处理元件。该方法包括从处理元件的寄存器文件组中读取基地址值和偏移地址值。该处理元件根据基地址值和偏移地址值确定虚拟地址。该处理元件将虚拟地址转换成物理地址并根据物理地址访问存储器中的位置。

【技术实现步骤摘要】
有源存储器件中的地址生成的方法及其处理元件
本专利技术一般涉及计算机存储器,尤其涉及有源存储器件中的地址生成。
技术介绍
当计算机上电并可工作时,计算机系统常常需要相当数量的像随机访问存储器(RAM)那样的高速存储器来保持像数据和程序那样的信息。随着计算机系统的性能不断提高和越来越复杂,存储器件需求也持续增长。在典型主存储器应用中,主处理器指定地址,并且请求读取存储器的内容或请求将存储位置用主处理器指定的一些其他内容重写。从主处理器到存储器件上的位置的通信可能牵涉到相对长的数据访问时间和延迟。主处理器访问存储器所花费的时间可以是例如几百个周期,包括识别数据不在高速缓存中(用于存储器读取)的时间、从主处理器的处理器核心跨过模块或其他插件(packaging)横穿到I/O的时间、建立到多处理器/共享存储器系统中的存储器的通道的仲裁时间、和让数据进入存储单元中或从存储单元中出来的时间。
技术实现思路
各示范性实施例包括在包括存储器和处理元件的有源存储器件中的地址生成的方法。该方法包括从处理元件的寄存器文件组中读取基地址值和偏移地址值。该处理元件根据基地址值和偏移地址值确定虚拟地址。该处理元件将虚拟地址转换成物理地址并根据物理地址访问存储器中的位置。另外的示范性实施例包括有源存储器件的处理元件。该处理元件包括:包括一个或多个寄存器文件的寄存器文件组和与该寄存器文件组耦合的地址生成逻辑。该地址生成逻辑被配置成从寄存器文件组中读取基地址值和偏移地址值。该地址生成逻辑被进一步配置成根据基地址值和偏移地址值确定虚拟地址。该地址生成逻辑将虚拟地址转换成物理地址,并输出物理地址以便通过该处理元件访问有源存储器件的存储器中的位置。进一步的示范性实施例包括有源存储器件。该有源存储器件包括存储器和处理元件。该处理元件包括寄存器文件组和与该寄存器文件组耦合的地址生成逻辑。该地址生成逻辑被配置成执行包括从寄存器文件组中读取基地址值和偏移地址值的方法。该地址生成逻辑被进一步配置成根据基地址值和偏移地址值确定虚拟地址。该地址生成逻辑将虚拟地址转换成物理地址,并输出物理地址以便访问存储器中的位置。另外的特征和优点通过本专利技术的技术来实现。本专利技术的其他实施例和方面将在本文中得到详细描述,并被认为是要求保护的专利技术的一部分。为了更好地理解本专利技术及其优点和特征,请参照如下描述和附图。附图说明作为本说明书的结论,在权利要求书中具体指出和明确地要求保护被视为本专利技术看待的主题内容。本专利技术的前面和其他特征以及优点,可从结合附图所作的如下详细描述中明显,在附图中:图1例示了依照一实施例的有源存储器的系统的方块图;图2例示了依照一实施例的含有有源存储器的存储系统的方块图;图3例示了依照一实施例的含有有源存储器的存储系统的示意图;图4例示了依照一实施例的有源存储器件中的处理元件的方块图;图5例示了依照一实施例的有源存储器件的处理元件中的地址生成逻辑的例子;以及图6例示了依照一实施例的有源存储器件的处理元件中的地址生成的过程的流程图。具体实施方式一实施例针对有源存储器件的处理元件中的地址生成。该有源存储器件可以是任何适当存储器件,其包括与逻辑部分连接的多个存储元件(例如,芯片)和处理元件。在一实施例中,有源存储器件包括形成三维(“3D”)存储器件(例如,存储器立方)的多层存储器,其中芯片的各个列形成与处理元件和逻辑通信的库(vault)。有源存储器件可以包括配置成与芯片和其他处理元件通信的多个处理元件。在一实施例中,处理元件通过互连网络访问库中的所选地址。另外,互连网络提供有源存储器件上的各处理元件之间以及各处理元件与主处理器之间的通信路径。每个库可以含有也与互连网络耦合的相关存储器控制器和逻辑单元。实施例包括可以将有源存储器件内的多个位置(location)(例如,存储在特定地址上的数据)用作操作数进行一组复杂运算。进一步,提供了在有源存储器件内对这些操作数自主执行指令和运算的过程。具体地说,将指令存储在有源存储器件本身中,并且不由主处理器执行。将存储的指令提供给处理元件以便由有源存储器件中的处理元件处理。在一个实施例中,处理元件是可编程引擎,包括指令缓冲器、具有分支能力和指令解码的指令单元、矢量寄存器文件和标量寄存器文件的混合体、用于存储器和寄存器文件之间的数据移动的多个装载/存储单元、和用于各种数据类型的算术和逻辑处理的多个执行单元。此外,包括在有源存储器件中的是将虚拟地址转换成物理地址的地址转换能力、在存储器与处理元件之间顺序数据移动的统一装载/存储队列、和与主处理器通信的处理器通信单元。在一个实施例中,有源存储器件被配置成在从像主处理器或另一个处理元件那样的外部请求器接收到命令之后,将配置信息或指令从有源存储器件的一部分装载到处理元件中。另外,处理元件可以进行在执行所装载指令的同时计算的虚拟到物理地址转换。在一个例子中,当执行装载指令时,有源存储器件从存储位置中取出操作数,并将操作数放置在处理元件中的寄存器中。存储位置的虚拟地址通过装载指令生成,并由处理元件转换成物理地址。类似地,当执行存储指令时,有源存储器件用处理元件中的寄存器的内容(例如,操作数)写存储位置。存储位置的虚拟地址通过存储指令生成,并由处理元件转换成物理地址。有源存储器件的处理元件中的实施例还具有通过互连网络在有源存储器件的任何部分中读取或写入操作数的能力。具体地说,处理元件可以使用互连网络访问有源存储器件中的其他库。在一个实施例中,处理元件是成池的,经由互连网络与库联合,其中处理元件在物理上未处在库堆栈中。在一个实施例中,互连网络是像纵横开关那样的耦合设备,配置成将任何处理元件与任何存储器库连接,假设处理元件和存储器库与互连网络连接。在一个实施例中,互连网络可以耦合多个有源存储器件,其中互连网络提供分立设备的处理元件和存储器库之间的通信路径。在一个实施例中,处理元件与作为堆栈的一部分的存储器控制器一起包括。另外,处理元件可以对操作数进行复杂算术和逻辑运算,以及读取和将最终结果写回到存储器中的位置中。有源存储器件可以将单个结束值或信号返还给主处理器以指示在有源存储器件中准备好所希望复杂运算的结果,因此在有源存储器件上进行宽带宽处理和在有源存储器件与主处理器之间使用较窄带宽通信。有源存储器件内的处理能力可以减小当通过驻留在单独芯片中的处理器访问存储器时将经历的存储延迟和能耗。取代通过较窄带宽通信路径将数据从存储器带到单独处理芯片,对数据进行往往相当简单的计算,然后将处理后数据传回到存储器,主处理器可以配置有源存储器件内的处理元件,然后指示它们执行数据处理任务。这可以通过将一条或多条命令从主处理器发送到有源存储器件来实现。在这种情形下,无论在必须从存储器行进到数据处理位置的距离上,还是在通过存储器分层结构横穿的高速缓存的级数上,都极大地减少了进行数据处理的位置与存储器之间的数据移动。图1例示了依照一个实施例在存储器中存储和检索数据的系统的方块图。描绘在图1中的系统100包括计算机处理器(CPU)102、含有存储器件的存储器106、以及存储器控制器104和接收和处理来自计算机处理器102的数据以便存储在存储器106中的处理元件108。存储器控制器104可以与计算机处理器102通信,并且本文档来自技高网...
有源存储器件中的地址生成的方法及其处理元件

【技术保护点】
一种包括存储器和处理元件的有源存储器件中的地址生成的方法,该方法包含:从处理元件的寄存器文件组中读取基地址值;从处理元件的寄存器文件组中读取偏移地址值;由处理元件根据基地址值和偏移地址值确定虚拟地址;由处理元件将虚拟地址转换成物理地址;以及根据物理地址访问存储器中的位置。

【技术特征摘要】
2012.11.08 US 13/671,6791.一种包括存储器和处理元件的有源存储器件中的地址生成的方法,该方法包含:从与处理元件通信的主处理器接收基地址值和偏移地址值;将基地址值和偏移地址值存储在处理元件的寄存器文件组中;从处理元件的寄存器文件组中读取基地址值;从处理元件的寄存器文件组中读取偏移地址值;由处理元件根据基地址值和偏移地址值确定虚拟地址;由处理元件将虚拟地址转换成物理地址;以及根据物理地址访问存储器中的位置,其中在处理元件和存储器间提供宽带宽通信路径。2.如权利要求1所述的方法,其中该寄存器文件组包含标量寄存器文件和矢量寄存器文件,以及进一步包含:从标量寄存器文件中读取基地址值;从标量寄存器文件中读取偏移地址值;以及通过递增地将偏移地址值加到基地址值和随后中间和,以及将一系列虚拟地址转换成物理地址持续预定迭代次数,顺序生成一系列虚拟地址和相应物理地址。3.如权利要求2所述的方法,其中预定迭代次数基于矢量寄存器文件的矢量长度,以及进一步包含:根据处理元件执行的单条读取指令,通过根据一系列虚拟地址和相应物理地址访问存储器中的多个位置,进行顺序读取操作,以及将在存储器中的多个位置读取的值写入矢量寄存器文件中;以及根据处理元件执行的单条写入指令,通过从矢量寄存器文件中顺序读取值,以及根据一系列虚拟地址和相应物理地址将值写入存储器中的多个位置中,进行顺序写入操作。4.如权利要求1所述的方法,其中该寄存器文件组包含标量寄存器文件和矢量寄存器文件,以及进一步包含:从矢量寄存器文件中读取作为矢量的基地址值;从标量寄存器文件中读取偏移地址值;以及通过为矢量寄存器文件的矢量的每个元素相加偏移地址值和基地址值,以及将一系列虚拟地址转换成相应物理地址持续预定迭代次数,顺序生成一系列虚拟地址和相应物理地址。5.如权利要求1所述的方法,其中该寄存器文件组包含矢量寄存器文件,以及进一步包含:从矢量寄存器文件中读取作为第一矢量的基地址值;从矢量寄存器文件中读取作为第二矢量的偏移地址值;以及通过为矢量寄存器文件的第一矢量和第二矢量的每个矢量元素矢量相加偏移地址值和基地址值,以及将一系列虚拟地址转换成相应物理地址以便访问存储器中的多个位置,顺序生成一系列虚拟地址和相应物理地址。6.如权利要求1所述的方法,其中将虚拟地址转换成物理地址进一步包含根据虚拟地址进行转换表的查找。7.一种有源存储器件的处理元件,其包含:包含一个或多个寄存器文件的寄存器文件组;以及地址生成逻辑,其与该寄存器文件组耦合并配置成执行包含如下步骤的方法:从寄存器文件组中读取从与处理元件通信的主处理器接收的基地址值;从寄存器文件组中读取从与处理元件通信的主处理器接收的偏移地址值;根据基地址值和偏移地址值确定虚拟地址;将虚拟地址转换成物理地址;以及输出物理地址以便通过该处理元件访问有源存储器件的存储器中的位置,其中在处理元件和存储器间提供宽带宽通信路径。8.如权利要求7所述的处理元件,其中该寄存器文件组包含标量寄存器文件和矢量寄存器文件,以及该地址生成逻辑被进一步配置成执行如下步骤:从标量寄存器文件中读取基地址值;从标量寄存器文件中读取偏移地址值;以及通过递增地将偏移地址值加到基地址值和随后中间和,以及将一系列虚拟地址转换成物理地址持续预定迭代次数,顺序生成一系列虚拟地址和相应物理地址。9.如权利要求8所述的处理元件,其中预定迭代次数基于矢量寄存器文件的矢量长度,以及该处理元件被进一步配置成执行如下步骤:根据处理元件执行的单条读取指令,通过根据一系列虚拟地址和相应物理地址访问存储器中的多个位置,进行顺序读取操作,以及将在存储器中的多个位置读取的值写入矢量寄存器文件中;以及根据处理元件执行的单条写入指令,通过从矢量寄存器文件中顺序读取值,以及根据一系列虚拟地址和相应物理地址将值写入存储器中的多个位置...

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

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

1