CN1252733C - 存储系统、存储单元、比特屏蔽电路及相关方法 - Google Patents

存储系统、存储单元、比特屏蔽电路及相关方法 Download PDF

Info

Publication number
CN1252733C
CN1252733C CNB008077398A CN00807739A CN1252733C CN 1252733 C CN1252733 C CN 1252733C CN B008077398 A CNB008077398 A CN B008077398A CN 00807739 A CN00807739 A CN 00807739A CN 1252733 C CN1252733 C CN 1252733C
Authority
CN
China
Prior art keywords
address
data
storage unit
bus
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB008077398A
Other languages
English (en)
Other versions
CN1352796A (zh
Inventor
伊弗斯·E·维拉雷特
休穆尔·普罗科派斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MEMCALL LLC
Memcall Inc
Original Assignee
MEMCALL LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MEMCALL LLC filed Critical MEMCALL LLC
Publication of CN1352796A publication Critical patent/CN1352796A/zh
Application granted granted Critical
Publication of CN1252733C publication Critical patent/CN1252733C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种存储系统,包括:存储单元阵列,每个存储单元中有比特屏蔽电路。该存储系统还包括:总线电路,它有一组地址总线,一组数据总线,一组原点总线和一组控制线,每个存储单元连接到每个所述各组线路。控制线有选择地使系统工作在三种工作模式中的一种模式。控制线还包括一种装置,用于选取搜索操作中预定组关系之一的关系。在第一工作模式下,该系统把所述数据总线上所加的数据存储到各个存储单元,这些存储单元有所述地址总线上所加数据确定的位置;在第二工作模式下,有地址总线确定位置的存储单元把该存储单元中存储的数据设置到数据总线上;在第三工作模式下,被搜索的数据加到地址总线上,并被这样一种过程搜索,其中具有匹配数据的每个存储单元把代表所述存储单元地址的值加到数据总线上,所述存储单元利用其他存储单元加到地址总线上的地址比特验证以前选取的关系,这些其他存储单元有与被搜索数据匹配的数据,从而使所述单元的比特被所述比特屏蔽电路所屏蔽,因此,该单元的地址只有在以下的情况下才出现在数据总线上,在具有匹配数据的所有单元中,那个特定存储单元的位置是在预定方向上最接近于原点总线上设置的数据。

Description

存储系统、存储单元、比特屏蔽电路及相关方法
技术领域
本发明涉及增大电子搜索系统操作速度的方法,例如,计算机搜索系统,以及计算机,电子系统,互联网服务器等中所用存储器件的高速存储器和电路。
背景技术
在计算机系统中,处理单元(CPU)通常连接到存储器件。CPU运行程序所完成的一个例行操作是扫描预定部分的存储器位置,为的是找到存储特定数据的存储单元。因为事先不知道被搜索数据的位置,扫描操作是一个冗长的过程,允许CPU扫描存储器的整个部分,寻址每个存储单元,读出该单元中的数据,并把它与被搜索的数据进行比较。
可以利用一个计算机系统的例子来说明现有技术,该系统的存储器中存储包括姓名,年龄和其他个人数据的很长列表,所有数据是按照姓名的字母顺序排列的。在需要所有年龄为20岁人的列表时,计算机系统扫描整个存储器,读出该列表中每个人的年龄,若该人的年龄为20岁,则把各个人的姓名登记在新的列表中。对于一个有100,000人的列表,要求计算机程序完成100,000次操作。
所以,有必要设计一种新的节省时间的过程,在不需要扫描存储器中每个数据的条件下,查找存储系统中的数据。这种过程在要求提高效率的许多领域中有极其广泛的应用,其中包括个人计算机,互联网服务器,计算机化生产方法,数据处理以及利用计算机系统的其他技术。
在现有技术中,使用按内容寻址存储器(CAM)是众所周知的。然而,现有的CAM器件不同于常规的存储器件,它们要求采用特殊适应的接口电路(US 4,805,093)。现有技术的另一个缺点是,需要有单独的器件以便使系统完成常规的读出/写入操作和CAM数据搜索。所以,需要有一个经数据总线和地址总线可以连接到处理单元的CAM器件,它可以用在最通用的计算机系统中。还需要有这样的一种器件,它可以交替地工作在正常模式和呼出模式。
在一些现有技术CAM系统中,响应时间往往随被搜索存储器容量的增大而增加,其原因是,各个存储单元是由信号连接的,信号又依次通过每个存储单元(US 4,805,093),或者,搜索功能是由扫描机构完成的(US 5,502,832)。在其他的现有技术系统中,匹配信号传播通过各个存储单元,依次传播通过每个单元,因此,由于在每个单元中产生传播延迟,若匹配单元远离原点,则响应时间就较长。
在一些现有技术的CAM中,待存储数据的地址不是确定的。器件存储数据的地址是由该器件的逻辑确定的,而数据的检索可能仅由按内容寻址操作实现的。所以,需要有这样的存储器,其中数据存储是通过确定地址总线上的单元地址完成的,随后把待存储的数据提供给数据总线,从而可以按照与常规存储器相同的方法存储数据和检索数据,而呼出搜索模式作为一个附加的功能。
在US 5,568,416描述的另一种现有技术器件中,按内容寻址存储器包括多个存储单元,在每个存储单元中有匹配输出线,来自所有存储单元的匹配输出线连接到优先编码器,该编码器产生最高优先级匹配单元的地址。在这种类型的现有技术中,要求优先编码器包含大量输入端,每个单元有一个输入端。因此,需要大量的门和一个扩充表面,允许来自每个单元的匹配线分别路由到优先编码器,使这些CAM的实际容量受到最大的限制。
所以,需要有这样一种呼出存储器,它不是通过整体电路工作的,其中在每个单元中分别增加“呼出”功能。在这种具有并行结构的存储器中,每个单元是独立的,并连接到地址总线,数据总线和原点总线,响应时间不取决于存储器的容量大小,也不取决于被搜索数据的位置和逻辑门的数目,这些逻辑门是实施“呼出”功能所必需的。这种类型的器件有如下的优点,可以用低成本制成大的存储器件,且由于它具有并行结构,可以利用“呼出”器件实现大的存储器。
发明内容
本发明涉及增大电子搜索系统操作速度的方法,例如,计算机搜索系统,以及计算机,电子系统,互联网服务器等的所用存储器件中的快速存储器和电路。
本发明的解决方案是:
一种存储系统,包括:a)总线电路,它有一组地址总线,一组数据总线,一组原点总线和一组控制线,其中原点地址在原点总线上设置,相对于所述原点地址的距离和方向的预定关系由第一控制线装置选出以便用于搜索操作;b)存储单元阵列,每个存储单元连接到每个所述各组线,每个存储单元包括数据存储电路、地址/内容选择器、比较器电路和比特屏蔽电路,该比特屏蔽电路包括:a.测距电路,其将单元地址与预定方向上的原点地址进行比较,并在该单元地址大于所述原点地址的情况下屏蔽该单元地址的所有比特;b.优先屏蔽电路,其中所述优先屏蔽电路在所述设置在数据总线上的地址在预定方向上代表一个比所述单元地址大的地址的情况下屏蔽不在数据总线上设置的单元地址的比特;以及第二和第三控制线可使所述存储系统进入以下三种工作模式中的一种,由此:a)在第一工作模式下,该系统把所述数据总线上所加的数据存储到各个存储单元,这些存储单元有所述地址总线上所加数据确定的位置,b)在第二工作模式下,有地址总线确定的位置的存储单元把该存储单元中存储的数据设置到数据总线上,c)在第三工作模式下,被搜索的数据加到地址总线上,并被这样一种过程搜索,其中具有匹配数据的每个存储单元把代表所述存储单元地址的值加到数据总线上,所述存储单元利用其他存储单元加到地址总线上的地址字节验证以前选取的关系,这些其他存储单元有与被搜索数据匹配的数据,从而使所述单元的比特被所述比特屏蔽电路所屏蔽,因此,该单元的地址只有在以下的情况下才出现在数据总线上:即在具有匹配数据的所有单元中,那个特定存储单元的位置是在预定方向上最接近于原点总线上设置的数据。
一种存储单元,连接到一组地址总线,一组数据总线,一组原点总线和一组控制线,所述存储单元包括:数据存储电路、比较器电路、地址/内容选择器和比特屏蔽电路,其中控制线连到地址/内容选择器,地址/内容选择器把控制线作为输入,地址/内容选择器还连接到比较器电路和数据存储电路,比较器电路还与数据存储电路连接,所述存储单元的工作模式是由控制线通过地址/内容选择器选取的,从而,在第一工作模式中,与地址/内容选择器相连的比较器电路接收地址,以便与单元地址比较,而在第二工作模式中,比较器电路接收被搜索数据,以便与数据存储电路中的存储数据比较,若发现在所述第二模式下被搜索数据与存储数据匹配,则所述比特屏蔽电路把该单元地址与预定的原点地址和其他匹配单元的地址比特进行逻辑组合,以使只有当该单元地址最接近于给定方向上所述原点地址时,该单元地址才出现在数据总线上,该比特屏蔽电路包括:a.测距电路,其将单元地址与预定方向上的原点地址进行比较,并在该单元地址大于所述原点地址的情况下屏蔽该单元地址的所有比特;b.优先屏蔽电路,其中所述优先屏蔽电路在所述设置在数据总线上的地址在预定方向上代表一个比所述单元地址大的地址的情况下屏蔽不在数据总线上设置的单元地址的比特。
一种存储单元中的比特屏蔽电路,该存储单元并行连接到有数据总线的存储器,所述比特屏蔽电路包括测距电路和优先屏蔽电路,以使在不用扫描在所述存储器中的所有单元的情况下就能检索出存储单元的地址,其中在单元地址超过预定方向上原点地址的情况下,所述测距电路屏蔽该单元地址,且阻止该单元地址设置到数据总线上,尽管发现了该单元地址与被搜索的数据匹配,所述优先屏蔽电路对在存储器数据总线上所有单元的地址进行逻辑组合,其中包括所述单元的地址,从而,若所述单元地址最接近于所述预定方向上所述原点地址,该单元地址才出现在存储器数据总线上。
一种在不扫描存储器中的每个单元的条件下定位包含被搜索数据的存储单元的方法,它是通过在地址总线上设置被搜索的数据、设置单元比较器到数据比较模式、和设置搜索的原点地址实现的,该方法包括以下的步骤:a.比较器把被搜索的数据与存储单元中存储的数据进行比较;b.在找到该单元数据是匹配的情况下,若该单元的地址不满足相对于所述原点地址的距离和方向的预定关系的条件,则测距电路屏蔽该单元地址;c.若该单元地址满足相对于原点地址的距离和方向的预定关系的条件,则设置所述单元地址到数据总线上;d.优先屏蔽电路,从满足所述条件的若干存储单元的输出端接收数据总线上产生的数据作为反馈输入;e.在优先屏蔽电路中把该单元地址与其他存储单元的地址比特进行逻辑组合,这些其他存储单元有匹配的数据且满足所述条件,从而只有最接近于原点地址的单元地址才出现在数据总线上,而所有其他的地址被所述优先屏蔽电路所屏蔽。
本发明的器件和方法大大改进了系统的搜索顺序,在不需要扫描存储器中所有数据的条件下,提供一种搜索以前存储在存储器中给定数据位置的装置。由于新型的逻辑器件包括在本发明的电路中,尽管存储器件中的许多单元可以响应请求,但只出现一个地址。因此,找到一个包含被搜索数据的存储单元所需的时间减小到单个存储器周期。
一组线路或附加的存储单元用于确定搜索的“原点”,因此,出现具有匹配数据的单元地址是在预定方向上最接近于“原点”的地址,在查找所有的匹配数据之前,可以在那个方向上反复地进行搜索。
该存储器包括新型存储单元的阵列,每个存储单元包括一个屏蔽电路,取决于该存储单元相对于原点和其他匹配单元的位置,屏蔽电路有选择地禁止被搜索数据的输出。
该存储器有并行结构,其中每个单元独立地连接到包括地址总线,数据总线和原点的总线系统。数据存储是通过确定地址总线上单元地址而完成的,随后把待存储的数据提供给数据总线,从而可以按照与常规存储器相同的方法存储数据和检索数据,而呼出搜索模式作为附加的功能。
为了与以上现有技术的例子进行比较,我们举一个存储器的例子,该存储器中存储100,000人的数据,其中仅有5,000人的年龄为20岁。本发明存储器的编程是这样的,首先把原点地址设置在预定方向上列表中最上面的一项。其次,该系统工作在呼出模式,把数据20设置到地址总线上。然后,呼出存储器把年龄为20岁的个人地址设置到数据总线,该地址是在列表中预定方向上最高的。然后,处理器在正常模式下读出该地址上的数据,并把它写入到新的列表中。接着,处理器把原点设置到首先找到姓名的地址,并在呼出模式下重复这种搜索。在重复该过程5000次之后,得到具有被搜索数据(年龄为20岁)的个人完整列表。现有技术的方法需要100,000次操作才得到相同的结果,而本发明搜索方法比现有技术方法快了20倍。
本发明的一个重要优点是,该器件能够在两种模式下工作:在第一种模式下(正常模式),其功能类似于普通的存储器件。在第二种模式下(呼出模式),该器件执行呼出功能。
本发明的另一个优点是,该器件结构是与通常使用的计算机器件兼容,因此,它可以与不同类型的标准存储器件一起使用或代替那些标准存储器件。
本发明的另一个优点是,执行“呼出”功能所需的逻辑门数目仅仅随存储器的大小而线性地增加,从而可以用低的成本制作大的存储器件。
附图说明
图1表示按照本发明的呼出存储器件的总体结构。
图2表示呼出存储单元的总体方框图。
图3表示单元地址中设置比特的比特屏蔽电路。
图4表示“优先屏蔽”电路。
图5表示“优先屏蔽”电路的例子。
图6表示“测距”电路,用于选取其地址低于原点地址的单元。
图7表示逻辑器件的例子,它可用于选取比较器的输入。
具体实施方式
本发明的目的是克服现有存储系统的缺点,提出建议在新型存储器件中实施组合的呼出存储器和常规存储器的方法,该器件可应用于常规的电子系统,例如,计算机系统。
本发明的存储器件包括新型存储单元阵列,每个存储单元包括标准类型的存储区和执行所谓“呼出”功能的新型电路。该存储器件可以工作在两种交替的“模式”:“正常”模式和“呼出”模式。按照一个优选实施例,该器件的工作模式是由专用连接线确定的。然而,应当明白,任何已知的其他接口也可以进入呼出模式。
在该存储器件中有多条数据线,分别并行连接到每个存储单元,这些数据线是设置搜索地址“原点”的装置。在第一个实施例中,借助于一个特定的存储单元,这些数据线在内部设置到代表“原点”地址的给定状态。在第二个实施例中,利用外部器件设置这些数据线的状态。
每个单元能够按照通常使用存储器件的熟知方法存储和检索数据。借助于数据线(数据总线)存储或检索数据,这些数据线发射数据到诸如CPU的处理器或从处理器接收数据。另一组线路(地址总线)用于寻址读出或写入操作的特定存储单元。通常,还利用若干条控制线完成读出和写入操作。数据总线,地址总线和控制线的总体通常称之为系统总线。系统总线还可以包括输出线。
在本发明的方法和系统中,提供一种使存储器进入到呼出模式的装置,例如,控制线。在“呼出”模式下,地址和数据的作用是倒置的。处理器在“地址总线”上设置待取出的数据,若“地址总线”的容量小于“数据总线”,则在“地址总线”上设置部分的数据。公用电路比较加到地址总线上的地址数据和存储单元中存储的地址数据,在每个单元中,公用电路用于比较该单元中存储的数据和地址总线数据。这是通过增加一个电子模块完成的,该模块用单元数据代替单元地址输入到比较器中。若两种数据匹配,则把单元地址提供到数据总线上。在这个语境下,匹配可以指任何预定的关系,例如,等于,大于,小于,或任何已知的逻辑组合。
几个单元可以包含匹配数据。然而,一个单元的地址只应当设置在数据总线上。
所以,新型电路用于屏蔽某些线路上的数据,因此,出现在数据总线上的数据仅仅代表包含被搜索数据的一个存储单元的地址。本发明的特征是,屏蔽电路分别添加到每个存储单元,导致一种并行的存储器结构。
屏蔽电路接收数据总线的输入。按照一个优选实施例,内部输出总线作为中间缓冲器。若存储单元包含的数据与地址总线上出现的数据匹配,则该存储单元的地址逻辑地组合到优先屏蔽电路中,导致数据总线上的输出。每个单元包含匹配的数据,这几个单元可以把它们的地址加到优先屏蔽电路上。然而,数据总线上输出的数据代表这样一个单元的地址,其地址值最接近于预定方向上“原点”线路上设置的“原点”地址。
虽然本发明的描述涉及这样一个实施例,其中单元地址是数据总线上输出,应当理解,实现相同的目的也可以有其他的手段,例如,可以采用一组附加的线路。具体地说,输出总线可以作为中间缓冲器。应当明白,这种输出总线是与计算机系统之间实现模块接口的实际和有用的方法。
本发明器件和方法的优点是,找到存储器中存储的一个特定字所需的时间可以等于在正常模式下写入/检索数据所需的时间,而在标准的计算机系统中,找到存储给定数据的存储器地址是一个长时间操作,因为CPU在找到给定数据之前必须扫描存储器的整个部分。
本发明的另一个优点是,该存储器件可用于现有的标准计算机系统中,可以有利地代替通常使用的存储器件。
按照本发明方法的另一个优点,找到特定数据所需的时间不取决于数据的位置,也不取决于该存储器件中包含的存储单元数目。
本发明的另一个优点是,由于本发明存储器件具有并行结构,几个器件可以用模块方式叠加在一起以增大存储器的容量。由于本发明器件的可扩充性和所述并行结构,任何数目的器件可以安装在计算机系统中,它取决于该系统的容量要求。
还是由于本发明器件的并行结构,实现“呼出”存储器所需的逻辑门数目是直接地与存储器容量成正比。在一些现有技术系统中,例如,CAM存储器,逻辑门数目的增长速度远远高于存储器容量的增长速度。因此,本发明器件可以节省时间和空间以及能够节省大量的成本。
按照本发明的另一个优点,计算机系统可以设计成所有的工作存储器是呼出存储器。这种系统与合适软件的组合可以大大改进计算机的总体性能。
以下对本发明的描述涉及一个优选实施例。然而,应当明白,在这个技术说明和权利要求书的范围内,可以设想出许多的改动和本发明的应用。
具体地说,可以按照现有技术中已知的不同但相当的方法实现包括在本发明存储器中的电路逻辑功能。
以下描述的本发明涉及本发明存储器的优选实施例,其中搜索方向规定为从原点向下的方向,被搜索的存储单元是地址值小于原点地址的存储单元。然而,应当明白,还可以规定原点与存储单元之间其他的关系以实现本发明,例如,大于;等于或小于;等于或大于;等等。
图1表示本发明一个优选实施例中呼出存储器件的总体结构。
从图1中可以看出,呼出存储器件包括存储单元阵列。每个存储单元连接到系统总线,即,连接到地址总线,数据总线和控制线。每个存储单元还连接到若干条原点线,所述原点线规定所谓的“原点”地址。这些线路可以是器件内部的线路,或连接到外部系统的线路,它们的逻辑状态规定搜索功能的“原点”。按照本发明的优选实施例,若呼出存储器件工作在搜索模式,则仅仅搜索其地址值小于“原点”地址的存储单元。图1中标记为CO的另一条线路是从总线控制器发出,它用于设置存储器到“呼出”模式。
在这个优选实施例中,系统总线包括以下的组成部分:
包含Z条数据线的“数据总线”;
包含A条地址线的“地址总线”;
包含多条“控制线”的总线控制器,它配置在用于总线同步的本发明存储器中。还有类似于普通计算机系统中使用的控制线,用于与外部存储器和器件之间的通信。
在本发明的框架内,我们仅仅讨论包括在该优选实施例中的下列控制线:
“读出/写入”线,用于选取读出操作或写入操作。
“CO”线,用于选取“呼出”模式。
其他的控制线,用于完成总线系统的各种功能。
每个存储单元在存储器部分能够存储Z个比特。
每个存储单元接收来自“CO”线的输入;这条控制线确定该存储单元究竟工作在正常存储器模式(“正常模式”)或工作在新的模式(“呼出模式”)。
若(CO)线不是激活的,则该器件的功能是作为标准的存储器阵列。若(CO)线是激活的,则该器件的功能是在新型的“呼出”模式。
按照这个优选实施例,呼出存储器用于与处理单元(CPU)的组合。然而,可以设想,本发明的呼出存储器可用在不包含CPU的电子系统中。为了在呼出模式下与呼出存储器通信,CPU必须首先激活CO信号。可以有多种方法完成这种操作,通常在电子系统中是选取连接到系统总线的不同器件(往往称之为“片选”),以下描述其中的两个例子:
在第一个优选实施例中,CO线是被某些地址线电平的逻辑组合所激活。这种方法是在所用存储器容量小于地址线数目确定的可寻址空间情况下实现的,因此,一些地址线可以专门用于寻址各种器件。在本发明的存储器中,这些剩余线路可用在呼出模式下寻址存储器。换句话说,图1中的少量地址线(CS)用于“片选”存储器的呼出功能。因为这些少量线路不能用于提供数据给呼出存储器,在“呼出”模式下可以被搜索的数据字最大宽度减小到(A-CS)。应当明白,当地址总线的容量超过数据总线的容量时,由数据总线容量确定的被搜索数据量不受到限制。应当明白,这种方法在地址线数目大于被搜索数据量的系统中是很有利的。
在第二个优选实施例中,逻辑电路是在总线控制器中实现的,因此,读出或写入到专用地址设置(CO)线。在这个实施例中,总线控制器检测读出/写入到所述地址,设置(CO)线,并在下一个总线周期内保持(CO)线激活。在计算机系统中使用总线控制器是很普通的技术,因此,可以容易地把(CO)线的控制功能添加到总线控制器的内部。在这个实施例中,由于需要激活呼出功能,被搜索数据的宽度没有减小,但呼出周期要求两个总线周期,而不是第一个优选实施例中的单个总线周期。
按照本发明,现有型号的任何种类存储单元可用于存储本发明存储器阵列搜索的数据,通过增加下述电路中的存储单元,可以实现新型的呼出功能。
图2表示按照优选实施例中本发明呼出存储单元的总体方框图,其中“数据存储电路”是用于存储数据的电路。这种电路是存储器件中通常使用的电路。
图2的“地址/内容选择器”方框代表按照本发明添加到存储器电路中的特定元件。如图2所示,这个逻辑模块接收来自CO线的输入。地址/内容选择器模块提供一种交换功能,用于有选择地连接两组输入(存储单元地址和存储的数据)之一到比较器输入端。当CO线是在正常存储器模式状态时,存储单元地址加到比较器中。当CO线是在“呼出”存储器模式时,存储的数据加到比较器中。
图2的“比较器”方框代表存储单元中通常使用的电路,用于比较地址总线上所加的地址数据和特定的存储单元地址。在这个优选实施例中,比较器只是检查两种数据的等同性。然而,在其他的实施例中,比较器可以检查从预定组中选取的其他关系。这种关系的实例是大于,小于,相同符号,等等。少量的专用控制线可用于从一组预定的关系中选取有关的一种关系。若地址数据与存储单元地址是匹配的(即,检验确定的关系),则单元选择线被激活,且该单元中存储的数据连接到读出或写入操作的输出总线。在呼出模式下,使用相同的比较器,但在“呼出”模式下,把地址总线上的数据与存储单元中存储的数据进行比较。
应当明白,可以利用不同的比较器完成呼出功能和正常的存储器功能。
比较器电路根据它的输入激活“单元选择”,这些输入是一侧上的地址总线和另一侧上地址/内容选择器的输出。在以下两种情况下激活“单元选择”。
第一种情况:CO线是在“正常”模式,且单元的地址与地址总线上所加的地址匹配。
第二种情况:CO线是在“呼出”模式,且存储单元内存储的数据与地址总线上所加的数据匹配。
再参照图2,其中“比特屏蔽”电路添加到单元电路中以实现呼出功能。如图2所示,“比特屏蔽”电路包括:“优先屏蔽”电路,“测距”电路和连接到数据总线的逻辑电路。
按照本发明的方法,若CO线是激活的且“单元选择”线也是激活的,这是由于单元数据与地址总线上所加的数据匹配,则单元地址的设置比特连接到“比特屏蔽”电路,因此被屏蔽。从图2中可以看出,“比特屏蔽”电路包括:“测距”电路和“优先屏蔽”电路。在第一步,测距电路把单元地址和“原点”地址进行比较,只有当单元地址小于“原点”地址时,才发送信号R(N)到优先屏蔽电路。然后,“优先屏蔽”电路选取输出到数据总线的比特,其中存储被搜索数据且满足要求的所有存储单元中的所有设置比特组合在“OR”功能块中,用于设置“数据总线”的对应比特,这个要求是该单元地址小于“原点”地址。只有“优先屏蔽”电路选取的比特传输通过“数据总线”。“比特屏蔽”电路的全部功能是屏蔽比特输出,这些输出会改变数据总线上检测的高地址输出。于是,数据总线上看到的最后数据等于有最高地址但小于原点地址的单元地址,且包含与地址总线上所加数据匹配的数据。
应当明白,以上的过程涉及向下搜索。若规定系统作向上搜索,则所选的地址是大于原点地址的最小地址。
图3表示“比特屏蔽”功能的实施装置。N标志单元地址的数目,以下是N的二进制表示:
N = Σ k = 0 K 2 [ u ( N , k ) ]
其中u(N,k)是地址值的设置比特,而K是N的设置比特数减1。
例如,单元地址37的二进制表示是100101。于是我们得到:
K=3;比特0,2和5设置成
u(37,0)=0;→第一个设置比特是在位置0
u(37,1)=2;→第二个设置比特是在位置2
u(37,2)=5;→第三个设置比特是在位置5
再参照图3,其中画出地址为N的单元设置比特的比特屏蔽电路,“搜索地址原点”是由若干条线设置的,在每个存储单元中这些线并联到该存储单元的测距电路,这些线标记为“原点地址线”。原点地址线的逻辑电平代表“原点”地址。例如,这些线可以由外部器件设置。按照一个优选的实施例,“搜索原点”线可以连接到一个专用存储单元中写入的数据。
图3中的“测距电路”把“原点”地址与单元地址N进行比较。若单元地址小于原点地址,则信号R(N)输出到优先屏蔽电路。图6中画出比较电路的一个例子。专业人员应当知道,任何现有技术的比较电路可用于完成测距电路的比较功能。
再参照图3,“优先屏蔽”电路包括在比特屏蔽电路中,所述优先屏蔽电路有K条输出线P[N,u(k)]。以下参照图4详细地描述优先屏蔽电路。优先屏蔽电路的功能是决定单元地址中的哪个比特输出到数据总线{Bi}。这个决定是由逻辑组合数据总线的当前状态和单元地址的当前状态作出的。这种电路功能可以描述成数据总线与存储单元电路之间的反馈系统。数据总线的状态是由在线路P[N,u(N,k)]上设置反馈输出的优先屏蔽电路检测的,该输出随后又影响数据总线的状态。
这种反馈方法允许特定的存储单元电路检测任何高地址处的其他单元是否正在输出地址数据到数据总线上,如果是,则屏蔽它自己的比特,以便使高地址处的单元是在数据总线上输出其地址的唯一单元。
应当明白,以上的方法涉及向下搜索,若我们规定系统作向上搜索,则把最低的地址放置在数据总线上。
可以按照如下描述优先屏蔽电路的操作:
把被搜索的数据提供给地址总线,并设置原点地址。对于每个存储单元,完成“单元选择”,R(N)和CO线的AND逻辑组合,用于输出启动信号“E”到“优先屏蔽”电路。因此,若不能满足以下的一个条件,则“优先屏蔽”电路复位全部P[N,u(N,k)]线到零逻辑状态:
-单元地址高于或等于原点地址。
-单元中存储的数据等于地址总线上出现的数据。
-该器件不是在“呼出”模式。
所有来自有比特u(N,k)设置的全部存储单元(M)的P[N,u(N,k)]线输入到OR逻辑电路,该电路的输出作为比特u(N,k)设置到数据总线上。M是共同的,它代表有比特u(N,k)设置的全部存储单元的地址。
在呼出周期的开始,数据总线是在非激活(逻辑0)的初始状态。例如,若我们使用负逻辑,则全部线路是被电阻器“上拉”到系统电源的正极。在第一步,优先屏蔽电路检测所有这些非激活的线路,并输出P[N,u(N,k)]。在这第一步,许多其他的单元也可以借助于OR电路设置数据总线。然后,这个数据总线的新状态分别由每个单元作检测,按照优先屏蔽规则,一些P[N,u(N,k)]线被去激活。最后,没有设置在存储被搜索数据的最高存储单元地址中的比特P[N,u(N,k)]被复位,而设置数据总线到那个最高的存储单元地址。这个过程是异步的;这些线路稳定到它们稳定值所需的时间是与该电路中电子元件的上升时间有相同的量级。因此,搜索一个数据所需的时间是与正常读出或写入周期有相同的量级。
现在参照图4,其中详细地画出“优先屏蔽”电路。若满足以下的条件,则“优先屏蔽”电路输出比特P[N,u(N,k)]:
对于最高比特设置:u(N,k)
a)若“单元选择”和“R(N)”是激活的。
b)AND若没有设置高于u(N,k)的数据总线上的所有比特。若没有较高的比特,即,若最高的比特是比特Z,则这个比特是由“E”信号直接设置的。
对于其他的比特:u(N,k),k<K
a)设置较高的比特u(N,k+1)
b)AND没有设置当前比特u(N,k)与较高比特u(N,k+1)之间内部总线B[u(N,k)]上的所有比特。
这就保证,在没有设置在当前的存储单元中的比特处,若有较高地址的另一个存储单元在数据总线上输出它的地址,则不输出比特k和低于当前单元地址的比特。最后,仅仅输出最高匹配存储器中设置的比特。
应当明白,以上的描述是涉及向下搜索,若我们规定系统作向上搜索,则最低的匹配存储器输出到数据总线上。
图5表示优先屏蔽电路操作的一个特定例子,其中单元地址N=10001010,三个设置比特u(0)=1;u(1)=3;u(2)=7,它们产生三个输出P[N,1];P[N,3]和P[N,7]。在这个例子中利用E,因为不存在较高的比特。
双存储器功能的描述
在“正常”模式下使用时(CO线是不激活的),呼出存储器完全类似于通常使用的存储器件。地址数据加到地址总线上,设置控制线以确定读出操作或写入操作,然后,数据是通过数据总线移动到存储单元或从来自存储单元。借助于比较器选取被寻址的单元。地址/内容选择器检测到“CO”线在低位,因此输出单元地址到比较器。若发现那个地址是与地址总线上设置的地址数据匹配,则设置单元选择线。若读出/写入线是在“写入”状态,则存储器数据存储电路输出该数据到数据总线。若读出/写入线是在“读出”状态,则存储器数据存储电路存储来自数据总线的数据。当工作在正常模式时,CO线的非激活状态把比特屏蔽电路设置成非激活的。
当工作在“呼出”模式时(CO线是激活的),把被搜索的数据值放置在地址总线上,并设置读出/写入线到“读出”状态。然后,地址/内容选择器把存储的数据加到比较器的输入端。若存在匹配,则设置单元选择线。CO线把比特屏蔽电路设置成激活的,但是去激活数据存储电路,因此,它不被任何的总线设置。在这个状态下,只有比特屏蔽电路加数据到数据总线上。
单元选择信号与以前在原点地址线上设置的原点地址数据一起输入到比特屏蔽电路。比特屏蔽电路屏蔽每个比特,因此,数据总线上所加的数据是最接近于原点但小于原点地址的数据。该地址上的各个比特(来自一个或多个单元)可以输出到数据总线上,即使该单元地址不是最接近于原点地址,然而,数据总线上的形成数据是最接近地址上的数据。
在全部包含被搜索数据的单元地址按照从最高到最低的顺序出现在总线上之前,可以利用现在的最高地址作为原点地址重复这个循环。搜索的持续时间等于N次读出和写入周期的持续时间,其中N是包含被请求数据的单元数目。
应当明白,以上的描述是涉及向下搜索,若我们规定系统作向上搜索,则数据总线上形成的数据在单次循环之后是最接近于原点地址的最高地址,而在几次重复搜索之后,数据按照从最低到最高的顺序出现在总线上。

Claims (7)

1.一种存储系统,包括:a)总线电路,它有一组地址总线,一组数据总线,一组原点总线和一组控制线,其中原点地址在原点总线上设置,相对于所述原点地址的距离和方向的预定关系由第一控制线装置选出以便用于搜索操作;b)存储单元阵列,每个存储单元连接到每个所述各组线,每个存储单元包括数据存储电路、地址/内容选择器、比较器电路和比特屏蔽电路,该比特屏蔽电路包括:a.测距电路,其将单元地址与预定方向上的原点地址进行比较,并在该单元地址大于所述原点地址的情况下屏蔽该单元地址的所有比特;b.优先屏蔽电路,其中所述优先屏蔽电路在所述设置在数据总线上的地址在预定方向上代表一个比所述单元地址大的地址的情况下屏蔽不在数据总线上设置的单元地址的比特;以及第二和第三控制线可使所述存储系统进入以下三种工作模式中的一种,由此:
a)在第一工作模式下,该系统把所述数据总线上所加的数据存储到各个存储单元,这些存储单元有所述地址总线上所加数据确定的位置,
b)在第二工作模式下,有地址总线确定的位置的存储单元把该存储单元中存储的数据设置到数据总线上,
c)在第三工作模式下,被搜索的数据加到地址总线上,并被这样一种过程搜索,其中具有匹配数据的每个存储单元把代表所述存储单元地址的值加到数据总线上,所述存储单元利用其他存储单元加到地址总线上的地址字节验证以前选取的关系,这些其他存储单元有与被搜索数据匹配的数据,从而使所述单元的比特被所述比特屏蔽电路所屏蔽,因此,该单元的地址只有在以下的情况下才出现在数据总线上:即在具有匹配数据的所有单元中,那个特定存储单元的位置是在预定方向上最接近于原点总线上设置的数据。
2.一种存储单元,连接到一组地址总线,一组数据总线,一组原点总线和一组控制线,所述存储单元包括:数据存储电路、比较器电路、地址/内容选择器和比特屏蔽电路,其中控制线连到地址/内容选择器,地址/内容选择器把控制线作为输入,地址/内容选择器还连接到比较器电路和数据存储电路,比较器电路还与数据存储电路连接,所述存储单元的工作模式是由控制线通过地址/内容选择器选取的,从而,在第一工作模式中,与地址/内容选择器相连的比较器电路接收地址,以便与单元地址比较,而在第二工作模式中,比较器电路接收被搜索数据,以便与数据存储电路中的存储数据比较,若发现在所述第二模式下被搜索数据与存储数据匹配,则所述比特屏蔽电路把该单元地址与预定的原点地址和其他匹配单元的地址比特进行逻辑组合,以使只有当该单元地址最接近于给定方向上所述原点地址时,该单元地址才出现在数据总线上,该比特屏蔽电路包括:a.测距电路,其将单元地址与预定方向上的原点地址进行比较,并在该单元地址大于所述原点地址的情况下屏蔽该单元地址的所有比特;b.优先屏蔽电路,其中所述优先屏蔽电路在所述设置在数据总线上的地址在预定方向上代表一个比所述单元地址大的地址的情况下屏蔽不在数据总线上设置的单元地址的比特。
3.一种存储单元中的比特屏蔽电路,该存储单元并行连接到有数据总线的存储器,所述比特屏蔽电路包括测距电路和优先屏蔽电路,以使在不用扫描在所述存储器中的所有单元的情况下就能检索出存储单元的地址,其中在单元地址超过预定方向上原点地址的情况下,所述测距电路屏蔽该单元地址,且阻止该单元地址设置到数据总线上,尽管发现了该单元地址与被搜索的数据匹配,所述优先屏蔽电路对在存储器数据总线上所有单元的地址进行逻辑组合,其中包括所述单元的地址,从而,若所述单元地址最接近于所述预定方向上所述原点地址,该单元地址才出现在存储器数据总线上。
4.一种在不扫描存储器中的每个单元的条件下定位包含被搜索数据的存储单元的方法,它是通过在地址总线上设置被搜索的数据、设置单元比较器到数据比较模式、和设置搜索的原点地址实现的,该方法包括以下的步骤:
a.比较器把被搜索的数据与存储单元中存储的数据进行比较;
b.在找到该单元数据是匹配的情况下,若该单元的地址不满足相对于所述原点地址的距离和方向的预定关系的条件,则测距电路屏蔽该单元地址;
c.若该单元地址满足相对于原点地址的距离和方向的预定关系的条件,则设置所述单元地址到数据总线上;
d.优先屏蔽电路,从满足所述条件的若干存储单元的输出端接收数据总线上产生的数据作为反馈输入;
e.在优先屏蔽电路中把该单元地址与其他存储单元的地址比特进行逻辑组合,这些其他存储单元有匹配的数据且满足所述条件,从而只有最接近于原点地址的单元地址才出现在数据总线上,而所有其他的地址被所述优先屏蔽电路所屏蔽。
5.按照权利要求4查找包含被搜索数据的存储单元的方法,其中所述预定的关系是,该存储单元的地址低于预定方向上的原点地址。
6.按照权利要求4查找包含被搜索数据的存储单元的方法,其中所述预定的关系是,该存储单元的地址低于或等于预定方向上的原点地址。
7.按照权利要求4查找包含被搜索数据的存储单元的方法,其中在找到包含被请求数据的所有存储单元之前,重复以上的步骤(a)至(d),把出现在数据总线上最后一个存储单元的地址设置成原点地址。
CNB008077398A 2000-02-28 2000-02-28 存储系统、存储单元、比特屏蔽电路及相关方法 Expired - Fee Related CN1252733C (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IL2000/000121 WO2001065564A1 (en) 2000-02-28 2000-02-28 Memory with call out function

Publications (2)

Publication Number Publication Date
CN1352796A CN1352796A (zh) 2002-06-05
CN1252733C true CN1252733C (zh) 2006-04-19

Family

ID=11042953

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008077398A Expired - Fee Related CN1252733C (zh) 2000-02-28 2000-02-28 存储系统、存储单元、比特屏蔽电路及相关方法

Country Status (7)

Country Link
US (1) US6658524B1 (zh)
EP (1) EP1173852A1 (zh)
JP (1) JP2003525511A (zh)
CN (1) CN1252733C (zh)
AU (1) AU2936800A (zh)
IL (1) IL146195A0 (zh)
WO (1) WO2001065564A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002061757A1 (en) * 2001-01-30 2002-08-08 Memcall Inc. Combined content addressable memories
US7634500B1 (en) 2003-11-03 2009-12-15 Netlogic Microsystems, Inc. Multiple string searching using content addressable memory
JP4651277B2 (ja) * 2003-11-13 2011-03-16 ソニー株式会社 情報記録再生装置および方法、プログラム格納媒体、並びにプログラム
US7353332B2 (en) * 2005-10-11 2008-04-01 Integrated Device Technology, Inc. Switching circuit implementing variable string matching
US7783654B1 (en) 2006-09-19 2010-08-24 Netlogic Microsystems, Inc. Multiple string searching using content addressable memory
CA2790009C (en) * 2010-02-18 2017-01-17 Katsumi Inoue Memory having information refinement detection function, information detection method using memory, device including memory, information detection method, method for using memory, and memory address comparison circuit
JP4588114B1 (ja) * 2010-02-18 2010-11-24 克己 井上 情報絞り込み検出機能を備えたメモリ、その使用方法、このメモリを含む装置。

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4805093A (en) * 1986-10-14 1989-02-14 Ward Calvin B Content addressable memory
US5497488A (en) 1990-06-12 1996-03-05 Hitachi, Ltd. System for parallel string search with a function-directed parallel collation of a first partition of each string followed by matching of second partitions
FR2687004B1 (fr) * 1992-01-31 1994-03-18 France Telecom Architecture de memoire associative.
US5568416A (en) * 1994-03-24 1996-10-22 Kawasaki Steel Corporation Associative memory
GB9815370D0 (en) 1998-07-16 1998-09-16 Harman M G Content addressable memory

Also Published As

Publication number Publication date
JP2003525511A (ja) 2003-08-26
IL146195A0 (en) 2002-07-25
WO2001065564A1 (en) 2001-09-07
EP1173852A1 (en) 2002-01-23
AU2936800A (en) 2001-09-12
CN1352796A (zh) 2002-06-05
US6658524B1 (en) 2003-12-02

Similar Documents

Publication Publication Date Title
CN1118027C (zh) 存储器访问保护
CN1264083C (zh) 用于在执行被转换指令时维持环境的方法和装置
CN1193779A (zh) 中文语句分词方法及其在中文查错系统中的应用
CN1766850A (zh) 具有存储元件的存储卡及其控制方法
CN1652253A (zh) 存储卡和半导体器件
CN1019698B (zh) 手写字符识别装置及方法
CN1141666C (zh) 利用标准笔划识别输入字符的在线字符识别系统
CN1728114A (zh) 使用页信息的页替换方法
CN1702776A (zh) 存储卡、半导体装置和半导体存储器的控制方法
CN1716246A (zh) 用于web应用的多列多数据类型的国际化排序扩展方法
CN1252733C (zh) 存储系统、存储单元、比特屏蔽电路及相关方法
CN101075239A (zh) 一种复合搜索方法和系统
CN1110759C (zh) 信息处理方法和装置
CN1549133A (zh) 快闪存储器的平行双轨使用方法
CN1492361A (zh) 嵌入式数据库查询的处理方法
CN1214326C (zh) 非易失性存储装置及其控制方法
CN1107277C (zh) 扩大利用用户字符的系统
CN1540666A (zh) 可动态配置的内容可寻址存储器系统
CN1525362A (zh) 筛选核苷酸序列的计算机系统和方法
CN1851701A (zh) 一种二进制数据的访问方法
CN1489766A (zh) 分析和修复存储器的方法和装置
CN1295778C (zh) 一种验证芯片硬件行为与软件模拟行为的一致性的方法
CN1282113C (zh) 一种基于快速排序算法的快速分页排序方法
CN1534509A (zh) 具有快速且预防不当操作功效的快闪记忆体演算法及其控制系统
CN1577634A (zh) 半导体装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1047499

Country of ref document: HK

C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee