内容可寻址存储器设备制造技术

技术编号:13118993 阅读:76 留言:0更新日期:2016-04-06 09:16
本文描述的技术一般地涉及将数据存储在内容可寻址存储器(CAM)中以及从内容可寻址存储器(CAM)取回数据。可以接收待存储在CAM中的数据值,其中数据值具有两个或更多个比特。CAM可以包括多个存储器集。对应于数据值的索引可以被确定。该索引可以基于数据值的对应于索引比特集的比特子集来确定。CAM的存储器集可以基于所确定的索引来识别,并且数据值可以存储在所识别的存储器集的存储单元中。

【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
本申请要求享有2013年8月31日在印度递交的申请No.3910//CHE/2013的优先权。该母申请的全部公开内容因为所有目的通过引用方式合并于此。除非在此处进行说明,否则此处所描述的方法不是本申请权利要求的现有技术并且不因包含在该部分中而承认是现有技术。内容可寻址存储器(CAM)有时在处理器中用于对诸如在转换后援缓存(TLB)中的小的数据结构进行存储和访问。CAM还用于其它环境,诸如互联网路由器、加密以及网络入侵检测,以及其它环境。CAM可用于加速执行数据库搜索或检测模式的应用,诸如在数据库系统、计算机与通信网络、以及高速切换系统中。在操作期间,CAM的存储阵列的所有行都可以被同时查找以定位特定值,因为该值可能驻存在CAM的任意行中。可能需要大量的功率和持续时间来执行该查找。高功耗还会导致发热,发热会限制CAM的存储密度。本公开探索这些问题以及其它问题。概述本文描述的技术一般地涉及将数据存储在功能内容可寻址存储器(CAM)中以及从功能内容可寻址存储器(CAM)中取回数据。该功能CAM可经由RAM的使用来仿真。各种所述的技术可以应用于方法、系统、设备或其组合。根据本公开的一些示例,描述了与在CAM中存储数据有关的各种方法。一些示例的方法可以包括接收待存储在CAM中的数据值。数据值可以包括两个或更多个比特。CAM可以包括多个存储器集。可以确定对应于数据值的索引。索引可以基于数据值的对应于索引比特集的比特子集来确定。CAM的存储器集可以基于所确定的索引来识别,数据值可以存储在所识别的存储器集的存储单元中。根据本公开的另外的示例,描述了与从CAM中取回数据有关的各种技术。一些示例的方法可以包括:接收对应于要从内容可寻址存储器(CAM)中取回的数据值的搜索关键字。搜索关键字可以包括两个或更多个比特。CAM可以包括多个存储器集。确定对应于搜索关键字的索引。所确定的索引可被评估以识别对应于所确定的索引的存储器集。可以从所识别的存储器集的存储器集的存储单元取回数据值。根据本公开另外的示例,描述了内容可寻址存储器(CAM)设备。一些描述的CAM设备可以包括被配置为存储多个数据值的多个存储器集。每个存储器集可以包括多个存储单元。CAM设备可以进一步包括索引选择模块和存储器访问模块。该索引选择模块可被配置为确定对应于数据值或搜索关键字的索引以及识别与数据值或搜索关键字的索引相关联的存储器集。存储器访问模块可被配置为从CAM的识别的存储器集中的存储单元读或者向CAM的识别的存储器集中的存储单元写。前面的概述仅仅是示例性的,而不意在以任何方式进行限制。通过参考附图以及下面的详细说明,除了上文所描述的示例性的方案、实施例和特征之外,另外的方案、实施例和特征将变得清晰可见。附图说明在附图中:图1是将数据存储在内容可寻址存储器(CAM)设备中的示例过程的图示说明;图2是从内容可寻址存储器设备取回数据的示例过程的图示说明;图3示出了存储在CAM的多个存储器集中的示例数据值以及数据中每个比特位置处的值的分布表;图4示出了具有对应数据值的搜索关键字的示例表以及索引和与索引相关联的存储器集的索引表;图5是示出示例的内容可寻址存储器设备的功能组件的示意图;图6是示出图5的内容可寻址存储器设备中的数据值的存储的示意图;图7是示出从图5的内容可寻址存储器设备中取回数据值的示意图;以及图8是示出被布置成存储数据在内容可寻址存储器设备中以及从内容可寻址存储器设备中取回数据的示例的计算设备的框图。以上附图全部都根据本公开的至少一些实施例来布置。具体实施方式在下面的详细说明中,将参考附图,附图构成了详细说明的一部分。在附图中,除非上下文指出,否则相似的符号通常表示相似的部件。在详细说明、附图和权利要求中所描述的示例性实施例不意在限制。可以使用其它实施例,并且可以做出其它改变,而不偏离本文呈现的主题的精神或范围。将易于理解的是,如本文大致描述且如图中所图示的,本公开的方案能够以各种不同配置来布置、替代、组合、分离和设计,所有这些都在本文中明确地构思出。本公开的示例性实施例一般涉及用于内容可寻址存储器(CAM)的存储器管理技术。该技术可实现将数据存储在该内容可寻址存储器中以及从该内容可寻址存储器取回数据,与常规CAM相比其具有降低的功耗和提高的操作速度。在所描述的实施例中,CAM可以利用索引组织到存储器集中。索引可以基于存储在CAM中的数据值。该技术可允许集相关(set-associative)高速缓存作为CAM运行,并且可实现该CAM中的高效过滤和搜索操作。下面所述的索引和搜索技术可用于网络路由器中并且可以实现该CAM在处理器中的使用用于支持诸如加密、安全、存储器访问过滤和芯片上通信量过滤的应用。图1是将数据存储在CAM设备中的示例的过程100的图示说明。过程100可以包括由框102-108中的一个或多个所示的一个或多个操作、功能或动作。虽然按顺序的次序示出,这些框还可以并行地执行,和/或按照不同于本文所述的次序来执行。而且,各个框可以组合成较少的框,划分成额外的框,补充代表了其它操作、功能或动作的额外框,和/或基于特定实现方式而去除。过程100开始于框102。在框102中,“接收待存储在CAM中的具有两个或更多个比特的数据值”,可以通过CAM接口来接收待存储在CAM中的具有两个或更多个比特的数据值。在该示例中,CAM可以包括被配置为存储多个数据值的多个存储器集。在一个示例的实施例中,CAM可以是被配置为用作CAM的集相关SRAM。处理可以从框102继续到框104,“确定对应于数据值的索引”。在框104中,对应于数据值的索引可以由CAM设备的索引选择模块来确定。该索引可以基于数据值的对应于索引比特集的比特子集来确定。在一些示例中,在数据值存储于CAM设备中的同时,索引比特集可以离线确定。在该示例中,索引比特集可通过评估存储在CAM的多个存储器集中的多个数据值来确定,并且该比特集可以从当前呈现的数据值中被选为索引。评估可以包括确定存储在CAM的多个存储器集中的多个数据值中的每个比特位置处的值的分布。在一些示例中,所确定的索引可以由数据值中的对应于索引比特集的比特值子集构成。在一些实施例中,在数据值存储于CAM的存储器集中时,专用处理器或本文档来自技高网...

【技术保护点】
一种将数据存储在具有多个存储器集的内容可寻址存储器(CAM)中的方法,所述方法包括:接收待存储在所述CAM中的数据值,其中所述数据值具有两个或更多个比特;确定所述数据值的索引,其中所述索引是基于所述数据值的对应于索引比特集的比特子集来确定的;基于所确定的索引来从所述CAM的所述多个存储器集中识别存储器集;以及将所述数据值存储在所识别的存储器集的存储单元中。

【技术特征摘要】
【国外来华专利技术】2013.08.31 IN 3910/CHE/20131.一种将数据存储在具有多个存储器集的内容可寻址存储器(CAM)
中的方法,所述方法包括:
接收待存储在所述CAM中的数据值,其中所述数据值具有两个或更
多个比特;
确定所述数据值的索引,其中所述索引是基于所述数据值的对应于索
引比特集的比特子集来确定的;
基于所确定的索引来从所述CAM的所述多个存储器集中识别存储器
集;以及
将所述数据值存储在所识别的存储器集的存储单元中。
2.如权利要求1所述的方法,其中存储所述数据值进一步包括识别
所识别的存储器集中的可供用于存储所述数据值的存储器存储位置。
3.如权利要求1所述的方法,其中确定所述索引包括:
评估存储在所述CAM的所述多个存储器集中的所述多个数据值中的
每个比特位置处的值的分布,以及基于所评估的分布来从所述索引比特集
中选定所述索引。
4.如权利要求3所述的方法,进一步包括:
利用所述多个数据值来更新总体计数器;以及
存储所述总体计数器。
5.如权利要求4所述的方法,其中更新所述总体计数器包括:评估
所述多个数据值中的每个数据值的每个比特位置处的值,以及基于评估结
果来更新所述总体计数器。
6.如权利要求4所述的方法,其中更新所述总体计数器包括:确定
所述多个数据值中的每个数据值的每个比特位置处的值的加权平均,以及
基于所确定的加权平均来更新所述总体计数器。
7.如权利要求3所述的方法,其中评估所述索引比特的分布包括基
于所述总体计数器来识别所述索引。
8.如权利要求1所述的方法,其中将所述数据值存储在所识别的存
储器集的存储单元中包括将所述数据值存储在集相关静态随机存取存储
器(SRAM)的存储器集的存储单元中。
9.如权利要求1所述的方法,进一步包括:
接收待存储在所述CAM中的额外数据值;
识别来自所述CAM的所识别的存储器集的溢出数据值;以及
利用补充索引将所识别的溢出数据值存储在所述CAM的一个或多个
存储器集中。
10.一种从包括多个存储器集的内容可寻址存储器(CAM)取回数据
的方法,所述方法包括:
接收对应于待从所述内容可寻址存储器(CAM)取回的数据值的搜索
关键字,其中所述搜索关键字具有两个或更多个比特;
确定对应于所述搜索关键字的索引;
评估所确定的索引以识别来自所述CAM的所述多个存储器集中对应
于所确定的索引的存储器集;以及
从所识别的存储器集的存储单元中取回所述数据值。
11.如权利要求10所述的方法,其中从所述存储单元取回所述数据值
包括:
将所述搜索关键字的标签与所述CAM中存储的数据值进行比较,以
识别所述存储器集的存储单元;以及
从所述存储器集的所识别的存储单元中取回所述数据值。
1...

【专利技术属性】
技术研发人员:S·瓦加佩亚姆
申请(专利权)人:英派尔科技开发有限公司
类型:发明
国别省市:美国;US

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

1