一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储器搜索组件的制作方法

2022-03-13 23:01:58 来源:中国专利 TAG:


1.本公开大体上涉及半导体存储器和方法,且更具体地,涉及与存储器搜索组件相关的设备、系统和方法。


背景技术:

2.存储器装置通常被提供为计算机或其它电子系统中的内部电路、半导体电路、集成电路。存在许多不同类型的存储器,包含易失性和非易失性存储器。易失性存储器可能需要电力来维持其数据(例如主机数据、错误数据等等),并包含随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、同步动态随机存取存储器(sdram)和晶闸管随机存取存储器(tram)等等。非易失性存储器可通过在未供电时保存所存储数据来提供永久数据,且可包含nand快闪存储器、nor快闪存储器和电阻可变存储器,例如相变随机存取存储器(pcram)、电阻式随机存取存储器(rram)和磁阻式随机存取存储器(mram),例如自旋力矩转移随机存取存储器(stt ram)等等。
3.存储器装置可耦合到主机(例如,主机计算装置)以存储数据、命令和/或指令以在计算机或电子系统处于操作中时供主机使用。举例来说,数据、命令和/或指令可在计算或其它电子系统的操作期间在主机与存储器装置之间传送。


技术实现要素:

4.本公开的方面提供一种存储器搜索组件设备,其包括:存储器装置,所述存储器装置包括存储器组件和耦合到存储器组件的存储器控制器;和存储器搜索组件(msc),所述存储器搜索组件驻留在存储器装置上且配置成:接收指示进行从存储器组件检索特定数据的操作的外部指令;且响应于接收到指令而将命令发布到存储器控制器以致使存储器控制器进行调用存储器组件的读取请求,作为在不存在另一外部指令的情况下进行操作的部分
5.本公开的另一方面提供一种用于存储器搜索组件的方法,其中所述方法包括:由存储器搜索组件(msc)接收指示进行从存储器装置的至少一个存储器组件检索特定数据的操作的指令;响应于所述指令而致使进行调用存储器组件中的至少一个的读取请求,作为进行操作的部分;确定操作是否成功地进行;以及响应于操作成功地进行的确定,将检索到的特定数据传送到存储器装置外部的电路系统。
6.本公开的另一方面提供一种用于存储器搜索组件的方法,其中所述方法包括:由存储器搜索组件(msc)接收包括开始节点的地址和与请求节点对应的信息的搜索命令;由msc发布检索与请求节点相关联的特定数据的读取请求;由msc接收与请求节点相关联的数据;以及由msc确定接收到的数据是否与同请求节点相关联的特定数据对应。
7.本公开的另一方面提供一种存储器搜索组件系统,其包括:主机;存储器装置,所述存储器装置包括驻留在其上的多个存储器组件和存储器搜索组件(msc),其中存储器装置经由抽象接口耦合到主机,且其中msc配置成:从主机且经由抽象接口接收指示进行从存储器组件中的至少一个检索特定数据的操作的指令;响应于所述指令而致使进行调用存储
器组件中的至少一个的读取请求,作为进行操作的部分;确定操作是否成功地进行;以及响应于操作成功地进行的确定,在不存在另一主机指令的情况下经由抽象接口将检索到的特定数据传送到主机。
附图说明
8.图1是根据本公开的数个实施例的呈包含主机和存储器装置的设备形式的功能框图。
9.图2是根据本公开的数个实施例的呈包含主机和存储器装置的设备形式的另一功能框图。
10.图3是根据本公开的数个实施例的呈包含主机和存储器装置的设备形式的又一功能框图。
11.图4是根据本公开的数个实施例的呈存储器装置形式的功能框图。
12.图5是根据本公开的数个实施例的由存储器搜索组件产生的命令的实例。
13.图6是表示根据本公开的数个实施例的与存储器搜索组件相关的实例方法的流程图。
具体实施方式
14.一种设备可包含存储器装置,所述存储器装置包括存储器组件和耦合到存储器组件的存储器控制器。存储器搜索组件(msc)驻留在设备上。msc可接收指示进行从存储器组件检索特定数据的操作的外部指令且响应于接收到指令而将一或多个命令发布到存储器控制器以致使存储器控制器进行调用存储器组件的读取请求,作为在不存在另一外部指令的情况下进行操作的部分。
15.计算系统可在操作期间进行各种任务。在进行此类任务的过程中,计算系统可执行各种搜索功能以定位和/或检索存储在计算系统内的数据。举例来说,可由计算系统在进行任务的操作期间使用的数据可存储在与计算系统相关联的存储器装置内。为了存取此类数据,主机可进行一或多个搜索功能以从存储器装置定位和/或检索数据并处理数据,作为进行计算任务的部分。
16.在一些方法中,搜索功能的执行可由主机计算系统(例如,由中央处理单元结合部署在主机上的高速缓存)通过发布遍历将主机耦合到存储器装置的通信路径的命令(或指令)而进行。可经由通信路径将所请求的数据传送回到主机,且数据可由主机处理以例如确定检索到的数据是否与所请求的数据匹配。
17.然而,如果检索到的数据与所请求的数据不匹配,那么可发布一或多个额外命令以定位并检索所请求的数据。每当发出这种命令时,命令必须遍历通信路径以到达存储器系统,数据必须遍历通信路径以到达主机,且主机必须处理数据以确定检索到的数据是否与所请求的数据匹配。
18.通信路径的这些额外遍历可通过引发存储器存取、数据移动和计算时间的增加并且通过增加主机计算系统上的高速缓存压力来影响计算系统的性能。另外,可以不发生数据的成功检索,这可以导致额外存储器存取、数据移动和计算时间被白费的场景。
19.当所请求的数据与作为数据结构的部分的搜索节点对应时,存储器存取、数据移
动和计算时间的增加以及主机计算系统上的增大的高速缓存压力可进一步加剧。如本文中所使用,“数据结构”是指实现对组成数据结构的节点(例如,搜索节点或数据节点)的存取和修改的数据组织、管理和存储格式。数据结构可包含数据值的集合、数据值之间的关系,和/或可应用于数据的函数和运算。数据结构的非限制性实例包含数据树、链表、容器、曲线图、队列等。
20.在将搜索节点存取作为从存储器装置检索所请求的数据的部分的实例中,从存储器装置检索搜索节点的命令可由主机产生且经由通信路径传送到存储器装置。这种命令可与通过通信路径路由的其它系统和/或存储器业务发生争用,这可潜在地延迟对存储器装置的关键存取。另外,与将检索到的数据从存储器装置传送到主机相关联的数据业务可与通过通信路径路由的其它系统和/或存储器业务发生争用。如上文所描述,可重复这些过程,直到定位并成功地检索到所请求的搜索节点为止。
21.确定是否已成功地检索到与搜索节点相关联的所请求的数据的过程可包含检索与搜索节点相关联的数据;将与搜索节点相关联的数据传送到主机;以及对与检索到的搜索节点相关联的数据进行运算(例如,算术运算、逻辑运算、比较运算等)。如果与搜索节点相关联的数据与所请求的数据不匹配,那么过程继续,且检索到与另一搜索节点相关联的数据,且重复确定与搜索节点相关联的数据是否与所请求的数据匹配的操作,直到将所请求的数据成功地定位且传送到主机为止,或直到已用尽所有搜索可能性并做出对所请求的数据的搜索已经失败的确定为止。
22.检索非匹配搜索节点可产生不用于获取的冷高速缓存行,所述冷高速缓存行可潜在地驱逐有用的高速缓存行。另外,因为一些方法进行确定搜索节点检索是否在主机上成功的操作,所以可引发潜在地无用的cpu循环。这可减小主机的功效且可导致计算系统的电力消耗增加。另外,高速缓存压力和/或高速缓存污染可变得成问题,这是由于最终无用的搜索节点可由主机在此类搜索和检索操作期间缓存。当涉及例如链表、曲线图等的特定数据结构时,这些问题可进一步加剧,这是由于这些类型的数据结构通常串行地存取。
23.相比之下,本文中的实施例使用驻留在设备(例如,存储器系统、存储器装置、存储器子系统等)上的组件(例如,“存储器搜索组件”)进行搜索功能。通过提供组件以进行上文所描述的驻留在例如设备上的搜索和检索操作,与在主机上进行搜索和检索操作的方法相比,可减少主机与存储器装置之间的通信路径的遍历的数量。这可减少上文所描述的方法中所固有的浪费cpu循环的数量,这可改进计算系统的整体性能且/或减少计算系统在进行此类操作时所消耗的电力的量。另外,与上文所描述的方法相比,通过提供驻留在设备上的用于进行搜索和检索操作的组件,可减少主机高速缓存污染和/或高速缓存压力。
24.在本公开的以下详细描述中,参考形成本公开的一部分的附图,且图中通过说明的方式展示可如何实践本公开的一或多个实施例。足够详细地描述这些实施例以使得本领域普通技术人员能够实践本公开的实施例,且应理解,可利用其它实施例,且可在不脱离本公开的范围的情况下进行过程、电气和结构改变。
25.如本文中所使用,例如“n”、“m”等的指定符,尤其是关于图式中的附图标号,指示可包含数个如此指定的特定特征。还应理解,本文中所使用的术语仅出于描述特定实施例的目的,且并不意图作为限制。如本文中所使用,除非上下文另外明确规定,否则单数形式“一(a/an)”和“所述(the)”可包含单数指示物和复数指示物两者。另外,“数个”、“至少一
个”和“一或多个”(例如,数个存储器组)可指一或多个存储器组,而“多个”意图是指超过一个此类事物。
26.此外,贯穿本技术在容许意义上(即,有可能、能够)而非在强制性意义上(即,必须)使用词语“可(can/may)”。术语“包含”和其派生词意味着“包含但不限于”。视上下文而定,术语“耦合(coupled/coupling)”意指物理地直接或间接连接或存取和移动(传输)命令和/或数据。
27.本文中的图遵循编号惯例,其中前一或多个数字与图号对应,且其余的数字标识图中的元件或组件。可通过使用类似数字来标识不同图之间的类似元件或组件。举例来说,102可表示图1中的元件“02”,且类似元件可在图2中表示为202。通常在本文中可用单个元件符号指代一组或多个类似元件或组件。举例来说,为简单起见,多个参考元件222-1、222-2、
……
、222-n或222-1到222-n通常可称为222。如应了解,可添加、交换和/或排除本文中的各种实施例中所展示的元件,以便提供本公开的数个额外实施例。另外,图中提供的元件的比例和/或相对尺度意图说明本公开的某些实施例,并且不应被视作限制性意义。
28.图1是根据本公开的数个实施例的呈包含主机102和存储器装置104的设备100形式的功能框图。如本文中所使用,“设备”可以指但不限于各种结构或结构的组合中的任一种,例如电路或电路系统、一或多个裸片、一或多个模块、一或多个装置或一或多个系统。在一些非限制性实施例中,“设备”可指存储器系统、存储器装置、存储器子系统等。如图1中所展示,主机102可包含中央处理单元(cpu)106和高速缓存108,而存储器装置104可包含存储器搜索组件120、控制器110和存储器组件122。主机102可经由通信路径103通信耦合到存储器装置104。
29.主机102可包含系统母板和/或底板,且可包含数个处理资源(例如,一或多个处理器、微处理器或某一其它类型的控制电路系统),例如cpu 106。系统100可包含单独的集成电路,或主机102和存储器装置104两者可在同一集成电路上。主机102可进一步包含一或多个高速缓存108。系统100可以是例如服务器系统和/或高性能计算(hpc)系统和/或其一部分。虽然图1中所展示的实例说明具有冯
·
诺依曼(von neumann)架构的系统,但本公开的实施例可实施于非冯
·
诺依曼架构中,所述非冯
·
诺依曼架构可不包含通常与冯
·
诺依曼架构相关联的一或多个组件(例如,cpu、alu等)。
30.主机102可经由通信路径103耦合到存储器装置104。通信路径103可包含一或多个总线、信道、互连件、接口等以促进主机102与存储器装置104之间的数据、命令和/或指令的传送。在一些实施例中,所述通信可包含抽象接口。如本文中所使用,“抽象接口”通常是指支持既不限于也不特定于特定主机102或存储器装置104的存储器语义协议的通信路径。因此,在不存在专用或供应商特定协议的情况下,抽象接口可支持各种类型的主机102与存储器装置104之间的通信。
31.在一些实施例中,抽象接口可以是高速缓存一致性通信路径架构,但实施例不限于此。抽象接口的非限制性实例可包含加速器高速缓存一致性互连(ccix)接口、gen-z接口、混合存储器立方体(hmc)接口、非易失性双列直插式存储器模块(nvdimm)接口,例如nvdimm-p或nvdimm-n接口等等。在一些实施例中,抽象接口可允许主机102与存储器装置104之间的非确定性的响应定时。
32.如图1中所展示,存储器装置104可包含控制器110、存储器搜索组件120和存储器
组件122。存储器搜索组件120可驻留在存储器装置104上。如本文中所使用,术语“驻留在
……
上”是指物理地位于特定组件上的某物。举例来说,存储器搜索组件120“驻留在存储器装置104上”是指存储器搜索组件120物理地耦合到存储器装置104或物理地位于存储器装置104内的情况。术语“驻留在
……
上”可在本文中与例如“部署在
……
上”或“位于
……
上”的其它术语互换使用。
33.存储器搜索组件120可包含可致使进行从存储器组件122定位和检索特定数据的操作的各种硬件(例如,电路系统、逻辑等)。在一些实施例中,存储器搜索组件120可包含比较器(例如,64位比较器)、状态机(例如,有限状态机)、指令集架构(例如,精简指令集架构)、专用集成电路(asic)、现场可编程门阵列(fpga)、一或多个处理器、协处理器和/或核心。另外或在替代方案中,存储器搜索组件120可致使执行机器可读指令,从而致使进行从存储器组件122定位和检索特定数据的操作。
34.在一些实施例中,存储器搜索组件120可响应于从主机102接收到指令而安排并致使进行从存储器组件122定位和检索特定数据的操作。举例来说,主机102可产生请求检索存储在存储器组件122中的特定数据的指令且经由通信路径103将指令传送到存储器搜索组件120。
35.响应于接收到指令,存储器搜索组件120可发布开始定位和检索所请求的数据的命令。在一些实施例中,存储器搜索组件120可将命令(例如,本文中结合图5所说明和描述的命令530)发布到控制器110以致使控制器从存储器组件122的一或多个搜索节点检索数据。当存取存储器组件122的搜索节点时,可经由控制器110将与搜索节点相关联的数据传送到存储器搜索组件120,且存储器搜索组件120可确定与搜索节点相关联的检索到的数据是否与所请求的数据匹配。
36.在一些实施例中,存储器搜索组件120可进行各种算术运算、逻辑运算、比较运算和/或键值比较以确定与搜索节点相关联的检索到的数据是否与所请求的数据匹配。一旦存储器搜索组件120已确定与搜索节点相关联的检索到的数据与所请求的数据匹配,存储器搜索组件120便可致使经由通信路径103将与搜索节点相关联的检索到的数据传送到主机102。
37.如上文所描述,其可采用以下各项的多个迭代:检索搜索节点的内容和进行确定与搜索节点相关联的检索到的数据是否与所请求的数据匹配的操作。因此,在一些实施例中,存储器搜索组件120可将额外命令发布到控制器110以进行存取不同搜索节点的额外搜索和检索操作,直到存储器搜索组件120确定与搜索节点相关联的检索到的数据与所请求的数据匹配为止,或直到已用尽所有搜索可能性并做出对所请求的数据的搜索已经失败的确定为止。
38.与使用主机102进行此类操作的方法相比,通过用存储器搜索组件120进行上文所描述的操作,可减少通信路径103上的数据业务。这又可减少由主机102进行的操作的量,从而减少主机102的电力消耗和/或释放主机102以进行与搜索操作不相关的不同类型的操作和/或任务。
39.在非限制性实例中,存储器搜索组件(msc)120可接收指示进行从存储器组件122检索特定数据(例如,本文在图4中所说明的特定数据424-2到424-n)的操作的外部指令(例如,由主机102产生的指令)。msc 120可响应于信令而将命令发布到存储器控制器110以致
使存储器控制器110进行调用存储器组件122的读取请求,作为进行操作的部分。在一些实施例中,msc 120和/或控制器110可在不存在用于例如主机102的另一外部指令的情况下进行操作。也就是说,在一些实施例中,驻留在存储器装置104上的电路系统(例如,msc 120和/或控制器110)可在不妨碍主机102的情况下进行本文中所描述的操作中的一或多个。
40.继续参照此实例,msc 120可确定操作是否成功地进行,并且响应于操作成功地进行的确定,将检索到的特定数据传送到存储器装置104外部的电路系统。如果操作并未成功地进行(例如,如果操作失败地进行),那么102可响应于操作并未成功地进行的确定而重新进行读取请求。在一些实施例中,重新进行读取请求可包含将由msc 102产生的一或多个额外信号发布到控制器110。在一些实施例中,msc 120可进行比较运算,作为确定检索数据的操作是否成功的部分。
41.在一些实施例中,由主机102产生的本文中结合图5更详细地描述的外部指令可包含与特定数据对应的地址信息、与特定数据对应的键值、与特定数据对应的地址偏移信息,或可促进定位和检索特定(例如,所请求的)数据的类似信息。响应于接收到外部指令,如上文所描述,msc 120可发布读取请求,所述读取请求可引导控制器110读取与存储器组件相关联的特定地址。另外,在一些实施例中,msc 120可进行比较运算,作为进行从存储器组件检索特定数据的操作的部分。
42.控制器110可负责执行从msc 120接收到的命令和控制对存储器组件122的存取。控制器110可以是状态机、定序器或某一其它类型的控制电路系统。控制器110可(例如,经由通信路径105)从存储器搜索组件120接收命令,且基于接收到的命令,控制存储器装置104和/或存储器组件122的操作。在一些实施例中,控制器110可从存储器搜索组件120接收命令以致使进行从存储器组件122定位和检索特定数据的操作。
43.控制器110可经由通信路径107将数据存取请求(例如,与读取请求对应的指令和/或命令等)确证到存储器组件122,以便促进从存储器组件122定位和检索特定数据。举例来说,响应于接收到从存储器组件122检索特定数据的一或多个命令,控制器110可经由通信路径107将与特定数据的定位(例如,搜索节点)和/或检索对应的数据存取请求确证到存储器组件122。
44.在一些实施例中,通信路径105和/或107可包含可促进存储器搜索组件120、控制器110和/或存储器组件122之间的命令和/或指令的传送的一或多个总线、接口、信号线或其它通信路径。在一些实施例中,通信路径105和/或107可为外围组件互连总线,例如外围组件互连高速(pcie)总线;非易失性存储器接口,例如非易失性存储器高速(nvme)总线;等。
45.在一些实施例中,控制器110可为全局处理控制器,且可将电力管理功能提供给存储器装置104。电力管理功能可包含对由存储器装置104和/或存储器组件122消耗的电力的控制。举例来说,控制器110可控制提供给存储器组件122的各种组或区段的电力以在存储器装置104的操作期间控制存储器组件122的哪些组或区段可在不同时间操作。这可包含控制存储器组件122以使存储器装置104的电力消耗优化。
46.存储器组件122可包含易失性存储器资源、非易失性存储器资源,或易失性与非易失性存储器资源的组合。在一些实施例中,存储器资源可为随机存取存储器(ram),例如静态随机存取存储器(sram)。然而,实施例不限于此,且存储器资源可以是高速缓存、一或多
n、存储器搜索组件320和存储器组件322-1到322-n可类似于本文在图1和2中所说明的控制器110、存储器搜索组件120和存储器组件122和/或控制器210、存储器搜索组件220和存储器组件222。
53.主机302可经由通信路径303通信耦合到存储器装置304,所述通信路径303可类似于本文在图1和2中所说明的通信路径103和/或通信路径203。存储器搜索组件320可经由相应通信路径305-1到305-n通信耦合到控制器310-1到310-n,所述通信路径305-1到305-n可类似于本文在图1和2中所说明的通信路径105和/或通信路径205。
54.在图3中所说明的实施例中,控制器310-1到310-n中的每一个经由相应通信路径307-1到307-n通信耦合到相应存储器组件322-1到322-n,所述通信路径307-1到307-n可类似于本文在图1和2中所说明的通信路径107和/或通信路径207-1到207-n。在此类实施例中,如上文所描述,存储器搜索组件320可将一或多个命令发布到控制器310-1到310-n,以致使控制器310-1到310-n定位和检索存储在存储器组件322-1到322-n中的一或多个内的特定数据。
55.在非限制性实例中,存储器装置304经由抽象接口303耦合到主机302。存储器装置304包含驻留在其上的存储器搜索组件(msc)320和驻留在其上的多个存储器组件322-1到322-n。msc 320可从主机302且经由抽象接口303接收指示进行从存储器组件322-1到322-n中的至少一个检索特定数据(例如,本文在图4中所说明的特定数据426-1到426-n)的操作的指令。
56.msc 320可响应于所述指令而致使进行调用存储器组件322-1到322-n中的至少一个的读取请求,作为进行操作的部分。msc 320可确定操作是否成功地进行,并且响应于操作成功地进行的确定,经由抽象接口303将检索到的特定数据传送到主机302。
57.为了确定操作是否成功地进行,msc 320可进行各种算术和/或逻辑运算。举例来说,msc 320可进行检查检索到的数据以确定检索特定数据的操作的功效的一或多个比较运算。
58.在一些实施例中,msc 320可以非确定性方式将检索到的特定数据传送到主机302。举例来说,msc 320可以不一定遵循严格的计时或定时模式的方式将检索到的特定数据传送到主机302。举例来说,因为从存储器组件322-1到322-n检索到的数据有可能会花费不同时间量从存储器组件322-1到322-n进行检索,所以msc 320可致使在不存在严格的定时或计时信号的情况下将检索到的数据传送到主机302。
59.msc 320可进一步致使基本上同时进行调用多个存储器组件322-1到322-n当中的第一存储器组件(例如,存储器组件322-1)的第一读取请求和调用多个存储器组件322-1到322-n当中的第二存储器组件(例如,存储器组件322-2)的第二读取请求,作为进行所述操作的部分。也就是说,在一些实施例中,msc 320可致使并行地进行多个读取请求操作,前提是能够并行地搜索检索到的特定数据。
60.如本文中所使用,术语“基本上”意指特性不需要是绝对的,而是足够接近以便实现所述特性的优点。举例来说,“基本上同时”不限于绝对同时地进行操作并且可包含意图同时但由于制造限制可能并不精确地同时的定时。举例来说,由于各种接口(例如,ddr相对于pcie)可展现的读取/写入延迟,因此“基本上同时”进行的第一读取请求和第二读取请求可能并不精确地在同一时间开始或完成。举例来说,第一读取请求和第二读取请求可以使
其在同一时间进行的方式进行,而不管所述第一读取请求和第二读取请求中的一个是在另一个之前开始还是在另一个之前终止。
61.在一些实施例中,msc 320可部署在主机302的末级高速缓存308与耦合到存储器组件322-1到322-n中的至少一个的存储器控制器(例如,控制器310)之间。
62.与一些其它实施例相比,通过以与存储器组件322-1到322-n进行1:1配对的方式提供控制器310-1到310-n以响应于由存储器搜索组件320产生的命令而进行搜索操作,可增加部署在存储器装置304内的电路系统的量。然而,为了跨多个存储器组件322-1到322-n进行搜索操作,与一些其它实施例相比,控制器310-1到310-n可能需要更少的电路系统(例如,更少的处理资源等)。另外,在特定数据检索条件下,可在以与存储器组件322-1到322-n进行1:1配对的方式提供控制器310-1到310-n的实施例中实现数据检索操作的并行度。
63.图4是根据本公开的数个实施例的呈存储器装置404形式的功能框图。存储器装置404可类似于本文在图1、2和3中所说明的存储器装置104、204和/或304。存储器装置404可包含多个控制器410-1到410-n、存储器搜索组件420和多个存储器组件422-1到422-n,所述控制器410-1到410-n、存储器搜索组件420和存储器组件422-1到422-n可分别类似于图1、2和3中所说明的控制器110、210和/或310、存储器搜索组件120、220和/或320和存储器组件122、222和/或322。
64.在图4中所说明的实施例中,控制器410-1到410-n中的每一个经由相应通信路径407-1到407-n通信耦合到相应存储器组件422-1到422-n,所述通信路径407-1到407-n可类似于本文在图1、2和3中所说明的通信路径107、207-1到207-n和/或307-1到307-n。在此类实施例中,如上文所描述,存储器搜索组件420可将一或多个命令发布到控制器410-1到410-n,以致使控制器410-1到410-n定位和检索存储在存储器组件422-1到422-n中的一或多个内的特定数据。
65.如图4中所展示,存储器组件422-1到422-n包含相应搜索节点424-1到424-n和相应特定数据426-1到426-n。在将特定数据426-1到426-n组织成树状结构的实施例中,搜索节点424-1到424-n可包含键和相关联的值中的至少一个。搜索节点424-2到424-n可与树状结构的根节点对应,且可基于搜索节点424-1到424-n的键和/或相关联的值通过遍历树状结构来存取特定数据426-1到426-n。
66.在一些实施例中,存储器搜索组件420可产生与待由控制器410-1到410-n进行的数据存取对应的命令。存储器搜索组件420可将命令发布到控制器410-1到410-n以发起检索特定数据426-1到426-n的操作的进行。
67.响应于接收到命令,控制器410-1到410-n可进行定位特定数据426-1到426-n并从存储器组件422-1到422-n检索特定数据426-1到426-n的各种操作。控制器410-1到410-n可致使将特定数据426-1到426-n传送到存储器搜索组件420,且存储器搜索组件420可使用特定数据426-1到426-n进行算术和/或逻辑运算以确定检索到的特定数据426-1到426-n是否与所请求的数据匹配。
68.如果检索到的数据与所请求的数据不匹配,那么存储器搜索组件420可将一或多个额外命令发布到控制器410-1到410-n以进行尝试定位和检索与所请求的数据匹配的特定数据426-1到426-n的进一步的搜索操作。如上文所描述,可重复这种过程,直到存储器搜索组件420确定检索到的数据与所请求的数据匹配为止。一旦存储器搜索组件420确定数据
与所请求的数据匹配,存储器搜索组件420便可致使将数据传送到存储器装置404外部的电路系统(例如,传送到主机,例如,上文在图1到3中所说明的主机102、202和/或302)。
69.图5是根据本公开的数个实施例的由存储器搜索组件(例如,本文在图1到4中所说明的存储器搜索组件120、220、320和/或420)接收到的命令530的实例。在一些实施例中,命令530可包含地址信息532、地址偏移信息534和/或键值信息536。命令530可视需要包含图5中未明确说明的额外信息以促进定位和检索特定数据(例如,图4中所说明的特定数据426-1到426-n)。在一些实施例中,命令可由主机(例如,本文在图1到3中所说明的主机102、202、302)产生,且可经由抽象接口(例如,本文在图1到3中所说明的接口102、203、303)将所述命令传送到存储器搜索组件。
70.地址信息532可与存储器组件(例如,本文在图1到4中所说明的存储器组件122、222、322和/或422)中的地址对应,可在所述地址处开始定位和检索特定数据(例如,本文在图4中所说明的特定数据426-1到426-n)的数据搜索操作。地址偏移信息534可与存储器组件内的特定数量的存储器位置对应,数据搜索操作可在数据搜索操作开始之前偏移所述特定数量的存储器位置。键值信息536可与同搜索节点(例如,本文在图4中所说明的搜索节点424-2到424-n)相关联的键和/或相关联的值对应。
71.如上文所描述,命令530可由主机产生且传送到存储器搜索组件。如上文所描述,响应于接收到命令530,存储器搜索组件可产生命令或指令且将所述命令或指令发布到控制器(例如,本文在图1到4中所说明的控制器110、210、310和/或410),且控制器可发布开始搜索所请求的数据的数据存取请求。在一些实施例中,由存储器搜索组件产生的命令或指令可以是读取存取命令,且可包含与存储器组件中的搜索操作将要开始的地址相关的信息。
72.图6是表示根据本公开的数个实施例的用于动态精确度位串累加的实例方法640的流程图。方法640可由处理逻辑进行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令),或其组合。虽然以特定序列或次序来展示,但除非另外规定,否则可修改过程的次序。因此,所说明实施例应仅作为实例理解,且所说明过程可以不同次序进行,且一些过程可并行地进行。另外,可在各种实施例中省略一或多个过程。因此,并非每个实施例中都需要所有过程。其它过程流程是可能的。
73.在框642处,方法640可包含由驻留在存储器装置上的存储器搜索组件(msc)接收指示进行从存储器组件中的至少一个检索特定数据的操作的指令。方法640可进一步包含由msc经由抽象接口接收指示进行操作的指令。在一些实施例中,指令可包含与特定数据对应的地址信息、与特定数据对应的键值或与特定数据对应的地址偏移信息,或其任何组合。
74.在框644处,方法640可包含响应于指令而致使进行调用存储器组件中的至少一个的读取请求,作为进行操作的部分。在框646处,方法640可包含确定操作是否成功地进行。在一些实施例中,方法640可包含由msc进行比较运算作为确定操作是否成功地进行的部分。
75.在框648处,方法640可包含响应于操作成功地进行的确定,将检索到的特定数据传送到存储器装置外部的电路系统。在一些实施例中,方法640可包含由msc以非确定性方式将检索到的特定数据传送到存储器装置外部的电路系统。
76.在一些实施例中,方法640可包含由耦合到msc和多个存储器组件中的相应一个的多个存储器控制器当中的至少一个存储器控制器接收指示进行来自msc的读取请求的命令;致使进行从耦合到存储器控制器中的至少一个的存储器组件中的相应一个检索特定数据的读取请求;和/或将检索到的特定数据传送到msc。
77.方法640可进一步包含致使进行检索特定数据的读取请求且将检索到的特定数据传送到msc在不存在额外指令或命令或两者的情况下进行。
78.方法640可包含由msc致使基本上同时进行调用多个存储器组件当中的第一存储器组件的第一读取请求和调用多个存储器组件当中的第二存储器组件的第二读取请求,作为进行操作的部分。
79.在一些实施例中,方法可包含由存储器搜索组件(msc),例如图4中所说明的msc420接收包括开始节点(例如,图4中所说明的搜索节点424-1到424-n)的地址和与请求节点(例如,与图4中所说明的特定数据426-1到426-n相关联的节点)对应的信息的搜索命令。在一些实施例中,请求节点可包含在例如链表、曲线图或其它串行存取的数据结构的可串行存取的数据结构中。方法可进一步包含由msc发布检索与请求节点相关联的特定数据(例如,图4中所说明的特定数据426-1到426-n)的读取请求;由msc接收与请求节点相关联的数据;和/或由msc确定接收到的数据是否与同请求节点相关联的特定数据对应。
80.方法可进一步包含由msc将接收到的数据与同请求节点相关联的特定数据进行比较,作为确定接收到的数据是否与同请求节点相关联的特定数据对应的部分。在一些实施例中,方法可包含由msc确定接收到的数据与同请求节点相关联的特定数据对应;以及由msc致使将接收到的数据传送到可耦合到msc的主机。然而,实施例不限于此,且在一些实施例中,方法可包含由msc确定接收到的数据不与同请求节点相关联的特定数据对应;由msc提取与连接到请求节点的至少一个节点相关联的地址;以及由msc发布检索与请求节点相关联的特定数据的第二读取请求,其中所述第二读取请求包含与连接到请求节点的至少一个节点相关联的地址。
81.尽管已在本文中说明并描述了具体实施例,但本领域普通技术人员应了解,经计算以实现相同结果的布置可取代所展示的具体实施例。本公开意图涵盖本公开的一或多个实施例的修改或变化。应理解,以上描述是以说明性方式而非限制性方式进行的。对于本领域的技术人员而言在审阅以上描述之后以上实施例的组合和本文中未具体描述的其它实施例将是显而易见的。本公开的一或多个实施例的范围包含使用以上结构和过程的其它应用。因此,本公开的一或多个实施例的范围应参考所附权利要求书以及此类权利要求被赋予的等效物的完整范围而确定。
82.在前述具体实施方式中,出于简化本公开的目的而将一些特征一并归到单个实施例中。本公开的这种方法不应被理解为反映本公开的所公开实施例必须使用比每项权利要求中明确叙述的特征更多的特征的意图。实际上,如所附权利要求书所反映,本发明主题在于单个所公开实施例的不到全部的特征。因此,所附权利要求书特此并入于具体实施方式中,其中每项权利要求就其自身而言作为单独实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献