点积引擎中的内容可寻址存储器编码的交叉杆阵列制造技术

技术编号:27439780 阅读:41 留言:0更新日期:2021-02-25 03:42
提供了可重复编程的点积引擎三元内容可寻址存储器(DPE

【技术实现步骤摘要】
点积引擎中的内容可寻址存储器编码的交叉杆阵列

技术介绍

[0001]内容可寻址存储器(CAM)是一种可以执行搜索操作的存储器,在搜索操作中可以输入数据串作为搜索内容,并且产生的输出是存储器中存储匹配数据的位置的地址。这与读取操作相反,在读取操作中输入地址并且产生的输出是存储在与搜索的地址相对应的存储位置中的数据。某些CAM能够执行上述搜索操作和上述读取操作两者,而非CAM存储器能够执行读取操作,但不能执行搜索操作。
[0002]三元CAM(TCAM)是一种CAM,在该三元CAM中,位单元除两个二元数据值以外还可以存储通配符数据值。当搜索存储通配符值的位单元时,无论使用什么搜索标准来搜索位单元,结果都是匹配。某些TCAM还可以允许在通配符搜索标准的基础上进行搜索。当基于通配符搜索标准来搜索位单元时,无论位单元中存储了什么值,结果都是匹配。
附图说明
[0003]根据一个或多个各种实施例,参考以下附图来详细描述本公开。仅出于说明性目的提供附图,并且附图仅描绘了典型的或示例实施例。
[0004]图1示出了根据本文公开的技术的实施例的示例交叉杆阵列。
[0005]图2示出了根据本文公开的技术的实施例的示例DPE-TCAM。
[0006]图3示出了根据本文公开的技术的实施例的示例选择器TCAM交叉杆阵列。
[0007]图4示出了根据本文公开的技术的实施例的另一示例TCAM交叉杆阵列。
[0008]图5示出了根据本文公开的技术的实施例的另一示例TCAM交叉杆阵列。
[0009]图6A示出了根据本文公开的技术的实施例的示例方法。
[0010]图6B示出了根据本文公开的技术的实施例的另一示例方法。
[0011]图7是可以用于实施本公开所描述的实施例的各种特征的示例计算组件。
[0012]附图不是穷举的,并且不将本公开限制为所公开的精确形式。
具体实施方式
[0013]内容可寻址存储器(CAM)是通常用于高速搜索应用程序中的特殊类型的存储器。CAM包括对输入模式与存储的二元数据进行比较的硬件(电路)。CAM的存储数据不通过存储数据的位置进行访问,而是基于存储数据的内容来执行访问。将字或“标签”输入到CAM,CAM在其内容中搜索标签,并且当找到时,CAM返回找到的内容所驻留的位置的地址。CAM功能强大,高效并且快速。CAM中的输入模式和数据由逻辑
‘0’
和逻辑
‘1’
来表示(通常被称为二元CAM或bCAM)。读取、写入和比较是对CAM进行的操作的三种主要模式。存储在CAM中的数据表示随机存取存储器(RAM)中的存储地址,在随机存取存储器(RAM)中存储有所寻找的基础数据。如果要访问RAM中的数据,则对CAM进行搜索以得到与该所期望的数据相关联的地址,其中,从CAM检索存储地址。在二元CAM中,通过搜索线将输入的搜索字与存储的字的表进行比较,并且如果在存储的CAM字中找到对输入的搜索字的匹配,则CAM将匹配数据的地址返回到编码器。如果在任何存储的字中均未找到匹配,则在匹配线上指示不匹配,并且在一些情
况下可以触发标志来指示缺失。
[0014]三元内容可寻址存储器(TCAM)存储并搜索被称为通配符或“无关”位的第三个值。无论用于存储的数据字的位的搜索标准是逻辑
‘0’
还是逻辑
‘1’
,存储的通配符位都被视为匹配。通过这种方式,TCAM允许另外的复杂度,因为输入模式可以表示一系列模式,而不仅仅是一个模式。例如,输入模式“01XX0”可以指示对四个单独的存储的数据字:“01000”、“01010”、“01100”和“01110”的匹配。TCAM的一种用途是在联网中,在联网中很大程度上依赖TCAM来进行快速的网络IP地址查找以及实施访问控制列表(ACL)。
[0015]传统上,使用位单元阵列来实施CAM和TCAM,其中,每行表示存储的数据字并且每列表示数据字内特定的位位置。许多现有技术CAM和TCAM通常包括常规的半导体存储器(例如,静态随机存取存储器(SRAM))和比较电路。例如,一些现有技术CAM可以包括位单元阵列,每个单元包括六个晶体管(6T)SRAM,而一些现有技术TCAM可以包括位单元阵列,其中,每个单元包括十六个晶体管(16T)SRAM。在一些现有技术方式中,每个位单元(CAM或TCAM)内的一个或多个晶体管可以用忆阻器来代替。忆阻器是可以用作大范围的电子电路(例如存储器、交换器、射频电路以及逻辑电路和系统)中的组件的设备。可以代替忆阻器使用的其他类型的电阻式随机存取存储器(RRAM)设备包括但不限于相变存储器(PCM)设备、铁电RAM(FeRAM)设备、自旋转移力矩RAM(STT-RAM)设备以及导电桥RAM(CBRAM)等。
[0016]即使在存储器中使用另外的设备来代替晶体管的情况下,这些类型的可替代的位单元也被设计为以与常规的全晶体管设备相同的方式起作用。即,仍然将基于忆阻器的TCAM编码为与常规的基于SRAM的TCAM一样进行操作,在常规的基于SRAM的TCAM中给出了完整的数字和二元匹配结果(搜索与存储)。尽管可以使用忆阻器或其他RRAM设备来代替晶体管,从而给CAM或TCAM提供一些效率优势,但不同的电路设计仍以类似的方式进行操作以得到相同类型的结果。该结果是二元答案——搜索字与数据字匹配(例如,预充电的匹配线上的电压保持高电压)或搜索字与数据字不匹配(例如,预充电的匹配线上的电压通过切换晶体管被拉低)。这种搜索操作提供了可以用于识别何时发生匹配或不匹配的高级别响应。然而,新兴的应用程序不仅需要搜索能力,还需要用于确定搜索字与数据字之间的相似性的功能性。除非存在完全匹配(即,所有位都匹配),否则常规的TCAM不能确定搜索字和数据字的匹配程度。这种操作将需要是通过TCAM单元外部的另外的电路进行的搜索后功能。
[0017]本公开的实施例提供了用于CAM、TCAM或其他基于内容的可搜索存储器的存储器结构,该存储器结构促进相似性搜索能力。如以下更详细讨论的,本公开的实施例提出了基于交叉杆阵列的TCAM结构,其中,多个忆阻器或其他RRAM设备被编程为用作TCAM内的单个单元。本质上,多个设备表示常规的TCAM结构中的一个三元单元。利用交叉杆阵列使得本公开的实施例能够促进相似性搜索,该相似性搜索不仅在纯匹配/不匹配模式下操作(即,像当前的CAM设备一样输出完整的二元结果),还可以被配置为检测搜索字与存储的字之间的不匹配位的数量。这种较低级别的粒度允许将CAM设备用于新的应用程序中,例如基因组排序。交叉杆阵列的每一行表示包括多个交叉杆单元的字存储块,每个交叉杆单元包括布置到结点设备的两个或三个忆阻器。忆阻器可以被编程为存储逻辑值并且共同工作以识别是否已经发生了不匹配。不仅沿着每一行输出匹配/不匹配的二元结果,还可以沿着每一行输出在不匹配的情况下搜索字与存储的字之间的相似性的程度。即,沿着每一行感测的电流可以在同一操作中指示二元搜索结果和相似性结果。
[001本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种点积引擎三元内容可寻址存储器DPE-TCAM,包括:TCAM交叉杆阵列,所述TCAM交叉杆阵列包括:多条匹配线;多条搜索线;多个存储单元,每个存储单元被配置为将所述多条搜索线中的搜索线与所述多条匹配线中的匹配线耦接;多个搜索线驱动器,每个搜索线驱动器被配置为向所述多条搜索线中的相关联的搜索线施加电压信号;以及电流感测电路,所述电流感测电路耦接到所述多条匹配线中的每条匹配线的输出,其中,所述电流感测电路被配置为检测所述多条匹配线中的相应的匹配线上的由所述多个搜索线驱动器施加的多个电压信号所表示的搜索字与存储在与所述相应的匹配线相关联的TCAM单元集中的数据字之间的不匹配,每个TCAM单元包括所述多个存储单元中的存储单元集。2.根据权利要求1所述的DPE-TCAM,进一步包括编码器,所述编码器通信地耦接到所述电流感测电路,所述电流感测电路耦接到所述多条匹配线中的每条匹配线,所述编码器被配置为响应于检测到匹配线上的匹配而生成与存储在与所述匹配线相关联的所述TCAM单元集中的数据字相对应的地址。3.根据权利要求1所述的DPE-TCAM,其中,每个TCAM单元包括所述多个存储单元中的两个存储单元,其中,所述两个存储单元被编程为表示数据字的单个三元值。4.根据权利要求3所述的DPE-TCAM,其中:当将第一存储单元设置为低电阻状态并且将第二存储单元设置为高电阻状态时,TCAM单元表示逻辑
‘0’
;当将第一存储单元设置为高电阻状态并且将第二存储单元设置为低电阻状态时,TCAM单元表示逻辑
‘1’
;并且当将所述两个存储单元设置为高电阻状态时,TCAM单元表示通配符位。5.根据权利要求1所述的DPE-TCAM,其中,每个TCAM单元包括所述多个存储单元中的三个存储单元,其中,所述三个存储单元被编程为表示数据字的单个三元值。6.根据权利要求5所述的DPE-TCAM,其中:当将第一存储单元设置为低电阻状态并且将第二存储单元和第三存储单元设置为高电阻状态时,TCAM单元表示逻辑
‘0’
;当将第一存储单元和第二存储单元设置为高电阻状态并且将第三存储单元设置为低电阻状态时,TCAM单元表示逻辑
‘1’
;并且当将所述三个存储单元设置为高电阻状态时,TCAM单元表示通配符位。7.根据权利要求1所述的DPE-TCAM,其中,所述电流感测电路进一步被配置为检测基于给定匹配线上累积的电流在给定匹配线上检测到的不匹配的数量。8.根据权利要求1所述的DPE-TCAM,进一步包括选择器设备,所述选择器设备布置在所述多条搜索线中的搜索线与所述多个存储单元中的存储单元的第一端部之间。9.根据权利要求8所述的DPE-TCAM,其中,所述选择器设备包括选择晶体管或非晶体管选择器设备中的一个。
10.一种方法,包括:由多个搜索线驱动器接收搜索字;由所述多个搜索线驱动器确定多个电压组合,每个电压组合与所接收到的搜索字的单个位相关联;由所述多个搜索线驱动器向多条搜索线施加所述多个电压组合,每个电压组合定义施加到搜索线组中的搜索线的电压信号;由多个电流感测电路感测多条匹配线上的电流;响应于检测到所述搜索字的至少一位与存储在沿着所述多条匹配线中的匹配线的多个三元内容可寻址存储器TCAM单元中的数据字之间的不匹配,由所述电流感测电路确定所述搜索字的多个位与所述数据字的多个位之间的不匹配的数量,其中,每个TCAM单元包括存储单元组,每个存储单元将搜索线组中的搜索线耦接到所述多条匹配线中的...

【专利技术属性】
技术研发人员:李灿C
申请(专利权)人:慧与发展有限责任合伙企业
类型:发明
国别省市:

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

1