CN111128278A - 内容寻址存储器、数据处理方法及网络设备 - Google Patents
内容寻址存储器、数据处理方法及网络设备 Download PDFInfo
- Publication number
- CN111128278A CN111128278A CN201811281043.6A CN201811281043A CN111128278A CN 111128278 A CN111128278 A CN 111128278A CN 201811281043 A CN201811281043 A CN 201811281043A CN 111128278 A CN111128278 A CN 111128278A
- Authority
- CN
- China
- Prior art keywords
- voltage
- fefet
- bit line
- bit
- gate
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/223—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements using MOS with ferroelectric gate insulating film
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2273—Reading or sensing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2253—Address circuits or decoders
- G11C11/2255—Bit-line or column circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2275—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/22—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
- G11C11/225—Auxiliary circuits
- G11C11/2297—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital 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/04—Digital 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital 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/04—Digital 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
- G11C15/046—Digital 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 using non-volatile storage elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Semiconductor Memories (AREA)
- Static Random-Access Memory (AREA)
Abstract
本申请公开CAM、数据处理方法及网络设备,涉及存储技术领域,可解决现有的CAM面积较大,进而功耗较大的问题。该CAM包括:M行N列bit单元,每个bit单元包括第一FeFET和第二FeFET,第一FeFET的源极连接第二FeFET的漏极,第二FeFET的源极接地,同一列bit单元对应同一匹配线;位于同一列的每个bit单元中的第一FeFET的漏极均连接该列对应的匹配线。同一行bit单元对应同一第一位线和同一第二位线,位于同一行的每个bit单元中的第一FeFET的栅极均连接该行对应的第一位线,位于同一行的每个bit单元中的第二FeFET的栅极均连接该行对应的第二位线。该CAM可应用在路由器等网络设备中。
Description
技术领域
本申请涉及存储技术领域,尤其涉及内容寻址存储器、数据处理方法及网络设备。
背景技术
内容寻址存储器(content addressable memory,CAM)是网络设备的重要物理器件,一种典型的CAM为三态内容寻址存储器(ternary content addressable memory,TCAM)主要用于快速查找访问控制列表(access control list,ACL)、路由表等表项。
如图1所示,传统的基于(metal oxide semiconductor,MOS)管的TCAM,每一个位(bit)单元由16个晶体管(transistor,T)构成,其中12T用于存储数值和掩码,4T用于做比较。搜索线(search line,SL)用来输入匹配值(key),匹配线(match line,ML)用来返回匹配结果。该传统TCAM阵列中每一行代表一个表项,查找数据时,先把每一行的ML都充到高电位。每一列的SL输入key的一个bit,将该bit的值与TCAM表项中的值比较,所有表项同时进行匹配。如果某一行中的所有bit都匹配成功,ML保持高电位。如果该行中有任意bit不匹配,则该行的ML泄漏到低电平。通过判定ML的高低电位,来判定匹配结果。
由于传统的基于MOS管的TCAM每个bit单元需要16T,因此TCAM的面积较大,随之带来的是TCAM的功耗较大,越大尺寸的TCAM的功耗越为严重。
发明内容
本申请实施例提供的内容寻址存储器、数据处理方法及网络设备,能够减小CAM的尺寸,进而减少CAM的功耗。
第一方面,本申请实施例提供一种内容寻址存储器CAM,包括:M行N列bit单元,该M和N均为大于等于1的正整数;每个bit单元包括第一铁电场效应晶体管(ferro-electricfield effect transistor,FeFET)和第二FeFET。该第一FeFET的源极连接该第二FeFET的漏极,该第二FeFET的源极接地。
CAM通常由多行多列bit单元组成,其中,可以是CAM的一行bit单元中存储的数据组成一个表项,也可以是CAM的一列bit单元中存储的数据组成一个表项,这两种方式下CAM的结构不同。
结构一:CAM的一列bit单元中存储的数据组成一个表项。那么,同一列bit单元对应同一匹配线;位于同一列的每个bit单元中的第一FeFET的漏极均连接该列对应的匹配线;同一行bit单元对应同一第一位线和同一第二位线,位于同一行的每个bit单元中的第一FeFET的栅极均连接该行对应的第一位线,位于同一行的每个bit单元中的第二FeFET的栅极均连接该行对应的第二位线。
结构二:CAM的一行bit单元中存储的数据组成一个表项。那么,同一行bit单元对应同一匹配线;位于同一行的每个bit单元中的第一FeFET的漏极均连接该行对应的匹配线;同一列bit单元对应同一第一位线和同一第二位线,位于同一列的每个bit单元中的第一FeFET的栅极均连接该列对应的第一位线,位于同一列的每个bit单元中的第二FeFET的栅极均连接该列对应的第二位线。
需要说明的是,结构一中的一列bit单元相当于结构二中的一行bit单元,结构一中的一行bit单元相当于结构二中的一列bit单元,因此结构一和结构二实质上是相同的。本申请实施例针对这两种结构展开描述,可以理解的是,即使仅以结构一为例进行描述,本领域技术人员可参照结构一的相关描述得到结构二的CAM以及利用该CAM实现数据处理的方法。
在一种可能的设计中,针对结构一,也即CAM的一列bit单元中存储的数据组成一个表项,则同一列bit单元分别对应同一第一背栅线和同一第二背栅线;位于同一列的每个bit单元中的第一FeFET的背栅极均连接该列对应的第一背栅线;位于同一列的每个bit单元中的第二FeFET的背栅极均连接该列对应的第二背栅线。针对结构二,也即CAM的一行bit单元中存储的数据组成一个表项,则同一行bit单元分别对应同一第一背栅线和同一第二背栅线;位于同一行的每个bit单元中的第一FeFET的背栅极均连接该行对应的第一背栅线;位于同一行的每个bit单元中的第二FeFET的背栅极均连接该行对应的第二背栅线。
本申请实施例提供的CAM中,每个bit单元中仅包括2个FeFET晶体管,与现有技术中的每个bit单元包括16个晶体管相比,本申请实施例提供的CAM的面积大大减少进而能够减少CAM的功耗。
第二方面,提供一种数据处理方法,应用于第一方面及第一方面任意一种实现方式所述的CAM,该方法包括:
针对结构一所示的CAM,也即若CAM的一列bit单元中存储的数据组成一个表项,则设置每个bit单元中的第一FeFET和/或第二FeFET始终断开。分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同。分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。若存在目标列的匹配线的输出电压保持为所述目标列对应的预设电压,则确定所述目标列的bit单元中存储的数据组成的表项为匹配表项。
针对结构二所示的CAM,也即若所述CAM的一行bit单元中存储的数据组成一个表项,则设置每个bit单元中的第一FeFET和/或第二FeFET始终断开。分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同。分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。若存在目标行的匹配线的输出电压保持为所述目标行对应的所述预设电压,则确定该目标行的bit单元中存储的数据组成的表项为匹配表项。
在一种可能的设计中,无论是结构一所示的CAM还是结构二所示的CAM,若CAM中的FeFET包括栅极,不包括背栅极,则可通过以下方式设置每个bit单元中的第一FeFET和/或第二FeFET始终断开:设置每个bit单元中与第一位线连接的第一FeFET和/或与第二位线连接的第二FeFET的栅极电压位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极的电压位于第一电压范围时,FeFET断开。
相应的,分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,可具体实现为以下方式:分别设置第一位线连接的第一FeFET的栅极的电压为第一电压,设置第二位线连接的第二FeFET的栅极的电压为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
在一种可能的设计中,无论是结构一所示的CAM还是结构二所示的CAM,若所述FeFET包括栅极和背栅极,则可通过以下方式设置每个bit单元中的第一FeFET和/或第二FeFET始终断开:设置每个bit单元中与第一位线连接的第一FeFET的栅极和背栅极的电压差位于第一电压范围,和/或,设置每个bit单元中与第二位线连接的第二FeFET的栅极和背栅极的电压差位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极和背栅极的电压差位于第一电压范围时,所述FeFET断开。
相应的,分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,可具体实现为以下方式:分别设置第一位线连接的第一FeFET的栅极和背栅极的电压差为第一电压,设置第二位线连接的第二FeFET的栅极和背栅极的电压差为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
示例性的,若通过所述第一位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;当所述匹配值为1时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围。若通过所述第二位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;当所述匹配值为1时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围。
其中,若FeFET包含栅极,不包含背栅极,则当栅极的电压位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极的电压位于第三电压范围时,FeFET始终导通。或者,若FeFET包含栅极和背栅极,则当栅极和背栅极的电压差位于第二电压范围时,FeFET中输入匹配值以进行匹配,当栅极和背栅极的电压差位于第三电压范围时,FeFET始终导通。
在一种可能的设计中,若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出。
或者,针对结构一所示的CAM,也即当CAM的一列bit单元中存储的数据组成一个表项时,若存在至少两个匹配表项,则将列号最小的目标列的bit单元中存储的数据组成的表项作为匹配结果输出。
或者,针对结构二所示的CAM,也即当CAM的一行bit单元中存储的数据组成一个表项时,若存在至少两个匹配表项,则将行号最小的目标行的bit单元中存储的数据组成的表项作为匹配结果输出。
本申请实施例提供了一种利用第一方面及其任意一种实现方式中所述CAM实现数据匹配的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线输入匹配值,通过与漏极连接的匹配线输出匹配结果,相比于现有技术中的匹配方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少匹配功耗。
在一种可能的设计中,本申请实施例还提供了一种在CAM中写入数据的方法,具体为:当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值。当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在所述bit单元中写入数据时,在所述第一FeFET和第二FeFET中均写入0。
在一种可能的设计中,所述FeFET包括栅极和背栅极,则在所述bit单元中写入数据时,可通过以下方式分别在第一FeFET和第二FeFET中写入不同值:设置第一位线连接的第一FeFET的栅极和背栅极的电压差位于第四电压范围,设置第二位线连接的第二FeFET的栅极和背栅极的电压差位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同。同理,可通过以下方式在所述第一FeFET和第二FeFET中均写入0:设置第一位线连接的第一FeFET的栅极和背栅极的电压差、第二位线连接的第二FeFET的栅极和背栅极的电压差位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
在一种可能的设计中,所述FeFET包括栅极,不包括背栅极,则可通过以下方式在第一FeFET和第二FeFET中写入不同值:设置第一位线连接的第一FeFET的栅极的电压位于第四电压范围,第二位线连接的第二FeFET的栅极的电压位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同。可通过以下方式在所述第一FeFET和第二FeFET中均写入0:设置第一位线连接的第一FeFET的栅极和第二位线连接的第二FeFET的栅极的电压位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
在一种可能的设计中,本申请实施例还提供了一种在CAM中具体某个bit单元中写入数据的方法。
其中,若FeFET包括栅极和背栅极,则针对结构一所示的CAM,当CAM的一列bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。设置第Y列的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余列的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
若FeFET包括栅极和背栅极,则针对结构二所示的CAM,也即当CAM的一行bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。设置第X行的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余行的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
示例性的,所述第一写入电压和所述第五写入电压之差在第四电压范围内、所述第二写入电压和所述第六写入电压之差在第五电压范围内以使得仅在第X行Y列的bit单元中写入数据;所述第三写入电压和所述第五写入电压之差、所述第四写入电压和所述第六写入电压之差、所述第三写入电压和所述第七写入电压之差、所述第四写入电压和所述第八写入电压之差、所述第一写入电压和所述第七写入电压之差、所述第二写入电压和所述第八写入电压之差在第六电压范围内以使得不在其余bit单元中写入数据。
若所述FeFET包括栅极,不包括背栅极,则针对结构一所示的CAM,当CAM的一列bit单元中存储的数据组成一个表项时,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关。则当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。设置第X行的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
若所述FeFET包括栅极,不包括背栅极,则针对结构二所示的CAM,当CAM的一行bit单元中存储的数据组成一个表项时,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关。则当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。设置第Y列的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
本申请实施例提供了一种利用第一方面及其任意一种实现方式中所述CAM在CAM中写入数据的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线写入数值,相比于现有技术中的数据写入方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少写数据的功耗。
第三方面,提供一种数据处理方法,应用于第一方面以及第一方面任意一种实现方式所述的CAM,所述方法包括:当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值。当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在所述bit单元中写入数据时,在所述第一FeFET和第二FeFET中均写入0。
在一种可能的设计中,所述FeFET包括栅极和背栅极,则在所述bit单元中写入数据时,可通过以下方式分别在第一FeFET和第二FeFET中写入不同值:设置第一位线连接的第一FeFET的栅极和背栅极的电压差位于第四电压范围,设置第二位线连接的第二FeFET的栅极和背栅极的电压差位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同。同理,可通过以下方式在所述第一FeFET和第二FeFET中均写入0:设置第一位线连接的第一FeFET的栅极和背栅极的电压差、第二位线连接的第二FeFET的栅极和背栅极的电压差位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
在一种可能的设计中,所述FeFET包括栅极,不包括背栅极。则可通过以下方式在第一FeFET和第二FeFET中写入不同值:设置第一位线连接的第一FeFET的栅极的电压位于第四电压范围,第二位线连接的第二FeFET的栅极的电压位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同。可通过以下方式在所述第一FeFET和第二FeFET中均写入0:设置第一位线连接的第一FeFET的栅极和第二位线连接的第二FeFET的栅极的电压位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
在一种可能的设计中,本申请实施例还提供了一种在CAM中具体某个bit单元中写入数据的方法。
其中,若FeFET包括栅极和背栅极,则针对结构一所示的CAM,当CAM的一列bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。设置第Y列的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余列的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
若FeFET包括栅极和背栅极,则针对结构二所示的CAM,也即当CAM的一行bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。设置第X行的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余行的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
示例性的,所述第一写入电压和所述第五写入电压之差在第四电压范围内、所述第二写入电压和所述第六写入电压之差在第五电压范围内以使得仅在第X行Y列的bit单元中写入数据;所述第三写入电压和所述第五写入电压之差、所述第四写入电压和所述第六写入电压之差、所述第三写入电压和所述第七写入电压之差、所述第四写入电压和所述第八写入电压之差、所述第一写入电压和所述第七写入电压之差、所述第二写入电压和所述第八写入电压之差在第六电压范围内以使得不在其余bit单元中写入数据。
若所述FeFET包括栅极,不包括背栅极,则针对结构一所示的CAM,当CAM的一列bit单元中存储的数据组成一个表项时,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关。则当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。设置第X行的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
若所述FeFET包括栅极,不包括背栅极,则针对结构二所示的CAM,当CAM的一行bit单元中存储的数据组成一个表项时,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关。则当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。设置第Y列的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
本申请实施例提供了一种利用第一方面及其任意一种实现方式中所述CAM在CAM中写入数据的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线写入数值,相比于现有技术中的数据写入方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少写数据的功耗。
在一种可能的设计中,本申请实施例还提供了一种利用结构一或结构二所示的CAM进行数据匹配的方法。其中,针对结构一所示的CAM,也即若CAM的一列位bit单元中存储的数据组成一个表项,则设置每个bit单元中的第一FeFET和/或第二FeFET始终断开。分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同。分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。若存在目标列的匹配线的输出电压保持为所述目标列对应的预设电压,则确定所述目标列的bit单元中存储的数据组成的表项为匹配表项。
针对结构二所示的CAM,也即若所述CAM的一行bit单元中存储的数据组成一个表项,则设置每个bit单元中的第一FeFET和/或第二FeFET始终断开。分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同。分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。若存在目标行的匹配线的输出电压保持为所述目标行对应的所述预设电压,则确定该目标行的bit单元中存储的数据组成的表项为匹配表项。
在一种可能的设计中,无论是结构一所示的CAM还是结构二所示的CAM,若CAM中的FeFET包括栅极,不包括背栅极,则可通过以下方式设置每个bit单元中的第一FeFET和/或第二FeFET始终断开:设置每个bit单元中与第一位线连接的第一FeFET和/或与第二位线连接的第二FeFET的栅极电压位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极的电压位于第一电压范围时,FeFET断开。
相应的,分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,可具体实现为以下方式:分别设置第一位线连接的第一FeFET的栅极的电压为第一电压,设置第二位线连接的第二FeFET的栅极的电压为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
在一种可能的设计中,无论是结构一所示的CAM还是结构二所示的CAM,若所述FeFET包括栅极和背栅极,则可通过以下方式设置每个bit单元中的第一FeFET和/或第二FeFET始终断开:设置每个bit单元中与第一位线连接的第一FeFET的栅极和背栅极的电压差位于第一电压范围,和/或,设置每个bit单元中与第二位线连接的第二FeFET的栅极和背栅极的电压差位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极和背栅极的电压差位于第一电压范围时,所述FeFET断开。
相应的,分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,可具体实现为以下方式:分别设置第一位线连接的第一FeFET的栅极和背栅极的电压差为第一电压,设置第二位线连接的第二FeFET的栅极和背栅极的电压差为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
示例性的,若通过所述第一位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;当所述匹配值为1时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围。若通过所述第二位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;当所述匹配值为1时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围。
其中,若FeFET包含栅极,不包含背栅极,则当栅极的电压位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极的电压位于第三电压范围时,FeFET始终导通。或者,若FeFET包含栅极和背栅极,则当栅极和背栅极的电压差位于第二电压范围时,FeFET中输入匹配值以进行匹配,当栅极和背栅极的电压差位于第三电压范围时,FeFET始终导通。
在一种可能的设计中,若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出。
或者,针对结构一所示的CAM,也即当CAM的一列bit单元中存储的数据组成一个表项时,若存在至少两个匹配表项,则将列号最小的目标列的bit单元中存储的数据组成的表项作为匹配结果输出。
或者,针对结构二所示的CAM,也即当CAM的一行bit单元中存储的数据组成一个表项时,若存在至少两个匹配表项,则将行号最小的目标行的bit单元中存储的数据组成的表项作为匹配结果输出。
本申请实施例提供了一种利用第一方面及其任意一种实现方式中所述CAM实现数据匹配的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线输入匹配值,通过与漏极连接的匹配线输出匹配结果,相比于现有技术中的匹配方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少匹配功耗。
第四方面,本申请实施例提供一种网络设备,包括处理器、通信接口、第一存储器、第二存储器和通信总线;其中,所述处理器、通信接口、第一存储器和第二存储器通过所述通信总线互相通信;所述第一存储器中存储有计算机可执行程序代码,所述第二存储器为第一方面以及第一方面任意一种实现方式所述的CAM,所述处理器用于执行所述第一存储器中存储的所述计算机可执行程序代码以控制所述第二存储器执行第二方面及其任意一种实现方式所述的数据处理方法。或者,所述处理器用于执行所述第一存储器中存储的所述计算机可执行程序代码以控制所述第二存储器执行第三方面及其任意一种实现方式所述的数据处理方法。
附图说明
图1为本申请实施例提供的一种FeFET的结构示意图;
图2为本申请实施例提供的一种CAM的结构示意图;
图3为本申请实施例提供的一种在CAM中查找数据的方法流程示意图;
图4为本申请实施例提供的另一种在CAM中查找数据的方法流程示意图;
图5为本申请实施例提供的一种在CAM中写入数据的方法流程示意图;
图6为本申请实施例提供的一种在CAM中某个bit单元写入数据的方法流程示意图;
图7为本申请实施例提供的另一种在CAM中某个bit单元写入数据的方法流程示意图;
图8为本申请实施例提供的又一种在CAM中某个bit单元写入数据的方法流程示意图;
图9为本申请实施例提供的再一种在CAM中某个bit单元写入数据的方法流程示意图;
图10为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
在一些电介质晶体中,晶胞的结构使正负电荷中心不重合而出现电偶极矩,产生不等于零的电极化强度,使晶体具有自发极化,且电偶极矩方向可以因外电场而改变,呈现出类似于铁磁体的特点,晶体的这种性质叫铁电性。
铁电场效应晶体管(ferro-electric field effect transistor,FeFET)是一种具有铁电特性的场效应晶体管,其主要原理是在场效应晶体管的栅极绝缘体中加入有铁电特性的物质,使FeFET拥有滞回曲线特性,将FeFET的阈值电压分成两个稳定的状态,因此,二进制状态可以存储在FeFET中。如果FeFET的栅极电压高于阈值电压,则FeFET导通;如果FeFET的栅极电压低于阈值电压,则FeFET关闭。此外,即使FeFET的栅极电压为0,仍保存数据。
CAM是以内容进行寻址的存储器,是一种特殊的存储阵列,其工作机制为将一个输入数据项与存储在CAM中的所有数据项自动同时进行比较,判别该输入数据项与CAM中存储的数据项是否相匹配,并输出该数据项对应的匹配信息。CAM为交换机、路由器等网络设备的重要组成部件。一种典型的CAM为TCAM,TCAM是从CAM的基础上发展而来的。一般的CAM存储器中每个bit位的状态只有两个,“0”或“1”,而TCAM中每个bit位有三种状态,除掉“0”和“1”外,还有一个“don’t care”状态,所以称为“三态”,它是通过掩码来实现的,正是TCAM的这个第三种状态特征使其既能进行精确匹配查找,又能进行模糊匹配查找。
本申请实施例提供一种内容寻址存储器,该内容寻址存储器的每个bit单元由两个FeFET串联组成。示例性的,如图1所示,第一FeFET(图1中以M1示出)的漏极连接ML,第一FeFET的源极连接第二FeFET(图1中以M2示出)的漏极,第二FeFET的源极接地。第一FeFET的栅极连接第一位线,第二FeFET的栅极连接第二位线。
可选的,所述FeFET还包括背栅极,则相应的,第一FeFET的背栅极连接第一背栅线,第二FeFET的背栅极连接第二背栅线。
每个bit单元为基于串联的这2个FeFET的异或非门。当执行查找操作时,位线用于输入匹配值。每个bit单元能够实现该bit单元存储的数据和匹配值的异或非逻辑运算(或者描述为比较运算)。
示例性的,bit单元的M1中存储有待匹配的值,M2中存储有待匹配值的相反值。下表表一为bit单元的真值表的一种可能实现方式。
表一
结合该表一,前四行为精确匹配,只有当M1的值和key值不同时,M1和M2才会同时打开,key值和M1的匹配结果为不匹配。其他情况下,当M1中存储的值和key值相同时,M1和M2中至少一个断开,key值和M1的匹配结果为匹配。第五行为掩码匹配,上述表1中以该bit单元的掩码为0为例说明,掩码为0表示该bit不参与匹配,则M1和M2都存储0,无论输入的key值为何值,M1和M2中至少一个是断开的,则M1中存储的值和key值相同,key值和M1的匹配结果为匹配。
当在内容寻址存储器的一行bit单元或一列bit单元中写入数据时,位线用于输入待写入数据。示例性的,当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在该bit单元中写入数据时,分别通过第一位线和第二位线在第一FeFET和第二FeFET中写入不同值,其中,第一FeFET写入待写入数据,第二FeFET写入待写入数据的相反值或者第二FeFET写入待写入数据,第一FeFET写入待写入数据的相反值。当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在该bit单元中写入数据时,分别通过第一位线和第二位线在第一FeFET和第二FeFET中均写入0。
基于图1所示的bit单元,本申请实施例提供一种CAM,该CAM包括:M行N列bit单元,所述M和N均为大于等于1的正整数。
每个bit单元的结构参见图1所示的bit单元,也即每个bit单元包括第一FeFET和第二FeFET,该第一FeFET的源极连接第二FeFET的漏极,该第二FeFET的源极接地。
在一种实现方式中,所述CAM的一列bit单元中存储的数据组成一个表项。在该实现方式中,同一列bit单元对应同一匹配线,位于同一列的每个bit单元中的第一FeFET的漏极均连接该列对应的匹配线。同一行bit单元对应同一第一位线和同一第二位线,位于同一行的每个bit单元中的第一FeFET的栅极均连接该行对应的第一位线,位于同一行的每个bit单元中的第二FeFET的栅极均连接该行对应的第二位线。可选的,同一列bit单元分别对应同一第一背栅线和同一第二背栅线;位于同一列的每个bit单元中的第一FeFET的背栅极均连接该列对应的第一背栅线;位于同一列的每个bit单元中的第二FeFET的背栅极均连接该列对应的第二背栅线。
示例性的,图2为CAM的一种可能实现方式。该CAM包括:4行4列bit单元,一列bit单元中存储的数据组成一个表项,每个bit单元包括M1和M2两个FeFET。那么,同一列的每个bit单元中的M1的漏极均连接该列对应的匹配线。同一行bit单元中的所有M1的栅极均连接该行对应的第一位线,同一行bit单元中的所有M2的栅极均连接该行对应的第二位线。此外,同一列的每个bit单元中的M1的背栅极均连接该列对应的第一背栅线,同一列的每个bit单元中的M2的背栅极均连接该列对应的第二背栅线。
在上述实现方式中,所述CAM的一列bit单元中存储的数据组成一个表项。在另一种实现方式中,所述CAM的一行bit单元中存储的数据组成一个表项。那么,在该实现方式中,同一行bit单元对应同一匹配线;位于同一行的每个bit单元中的第一FeFET的漏极均连接该行对应的匹配线;同一列bit单元对应同一第一位线和同一第二位线,位于同一列的每个bit单元中的第一FeFET的栅极均连接该列对应的第一位线,位于同一列的每个bit单元中的第二FeFET的栅极均连接该列对应的第二位线。
同理,可选的,同一行bit单元分别对应同一第一背栅线和同一第二背栅线;位于同一行的每个bit单元中的第一FeFET的背栅极均连接该行对应的第一背栅线;位于同一行的每个bit单元中的第二FeFET的背栅极均连接该行对应的第二背栅线。
本申请实施例提供的CAM中,每个bit单元中仅包括2个FeFET晶体管,与现有技术中的每个bit单元包括16个晶体管相比,本申请实施例提供的CAM的面积大大减少进而能够减少CAM的功耗。
本申请实施例还提供基于本申请实施例提供的上述CAM的数据处理方法,该数据处理方法具体包括:在CAM中写入数据和在CAM中查找数据(或者描述为从CAM中匹配数据)。通常,CAM中用于存入路由表或ACL表等表的表项数据。一个路由表或ACL表由多个表项组成。因此,本申请实施例所描述的在CAM中写入数据具体为在CAM中写入路由表或ACL表中各个表项的数据。相应的,从CAM中匹配数据具体为在CAM中查找某个路由表或ACL表的某个表项的数据。
在详细描述本申请实施例提供的数据处理方法之前,先介绍几个与本申请实施例提供的数据处理方法相关的术语。
匹配涉及到的电压:第一电压范围、第二电压范围、第三电压范围。如果FeFET的栅极输入的电压位于第一电压范围,则该FeFET始终断开。如果FeFET的栅极输入电压位于第二电压范围,则在FeFET中写入1时该FeFET导通,在FeFET中写入0时该FeFET断开。如果FeFET的栅极输入的电压位于第三电压范围,则该FeFET始终导通。示例性的,第一电压范围为-2V至-0.6V,第二电压范围为0V左右的电压,例如:-0.5V至0.5V,第三电压范围为0.6V至1.6V。
写入涉及到的电压:写入0的电压范围和写入1的电压范围。该写入0的电压范围和写入1的电压范围为不同的电压范围。其中,当在FeFET中写入0时,设置该FeFET的栅极电压位于写入0的电压范围。当在FeFET中写入1时,设置该FeFET的栅极电压位于写入1的电压范围。此外,写入0的电压范围和写入1的电压范围的具体取值由FeFET器件的属性决定,通常,写入0的电压和写入1的电压正负相反,但不限定其绝对值之间的大小关系。具体的,写入0的电压范围通常为小于某个负值电压,不限定其下限;写入1的电压范围通常为大于某个正值电压,不限定其上限;示例性的,写入0的电压范围为-3V至-2V,写入1的电压范围为2V至3V。
下文分别描述这两种数据处理方法。
一、在CAM中查找数据:
参考图3,若CAM的一列bit单元中存储的数据组成一个表项,则在CAM中查找数据可具体实现为以下步骤S301至S304:
S301、设置每个bit单元中的第一FeFET和/或第二FeFET始终断开。
可选的,每个FeFET包括栅极不包括背栅极,则在本步骤的一种实现方式中,分别设置每个bit单元中与第一位线连接的第一FeFET和/或与第二位线连接的第二FeFET的栅极电压位于第一电压范围。其中,当FeFET栅极电压为位于第一电压范围时,FeFET断开。
可选的,每个FeFET包括栅极和背栅极,则在本步骤的一种实现方式中,分别设置每个bit单元中与第一位线连接的第一FeFET的栅极和背栅极的电压差,和/或,与第二位线连接的第二FeFET的栅极和背栅极的电压差位于第一电压范围。其中,当FeFET的栅极和背栅极的电压差位于第一电压范围时,FeFET断开。
S302、分别设置CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压。
其中,不同匹配线对应的预设电压可能相同也可能不同。
可选的,所述预设电压为任意电压。在一种可能的实现中,给匹配线预充电至所述预设电压。
S303、分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
可选的,每个FeFET包括栅极不包括背栅极,则在本步骤的一种实现方式中,分别设置第一位线连接的第一FeFET的栅极的电压为第一电压,设置第二位线连接的第二FeFET的栅极的电压为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
需要说明的是,不同第一位线连接的栅极电压可能相同也可能不同,也即不同第一位线对应的第一电压可能相同也可能不同,不同第二位线连接的栅极电压可能相同也可能不同,也即不同第二位线对应的第二电压可能相同也可能不同。
可选的,每个FeFET包括栅极和背栅极,则在本步骤的一种实现方式中,分别设置第一位线连接的第一FeFET的栅极和背栅极的电压差为第一电压,设置第二位线连接的第二FeFET的栅极和背栅极的电压差为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
需要说明的是,不同第一位线连接的第一FeFET的栅极和背栅极的电压差可能相同也可能不同,也即不同第一位线对应的第一电压可能相同也可能不同,不同第二位线连接的第二FeFET的栅极和背栅极的电压差可能相同也可能不同,也即不同第二位线对应的第二电压可能相同也可能不同。
示例性的,若通过所述第一位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;当所述匹配值为1时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围。若通过所述第二位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;当所述匹配值为1时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围。
其中,若FeFET包含栅极,不包含背栅极,则当栅极的电压位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极的电压位于第三电压范围时,所述FeFET始终导通;或者,若FeFET包含栅极和背栅极,则当栅极和背栅极的电压差位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极和背栅极的电压差位于第三电压范围时,所述FeFET始终导通。
需要说明的是,本申请实施例不限定上述S301至S303的执行顺序。
S304、若存在目标列的匹配线的输出电压保持为所述目标列对应的预设电压,则确定所述目标列的bit单元中存储的数据组成的表项为匹配表项。
在该步骤中,若某列的匹配线的输出电压仍保持为S302中的预设电压,则确定该列的bit单元中存储的数据组成的表项为匹配表项。如果某列的匹配线的输出电压泄露为0,则表明该列的所有bit单元中存在至少一个bit单元不匹配。
实际应用中,可能存在多个列的匹配线的输出电压均保持为预设电压,也即存在至少两个匹配表项。这种场景下,若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出。或者,若存在至少两个匹配表项,则将列号最小的目标列的bit单元中存储的数据组成的表项作为匹配结果输出。
示例性的,结合图2所示的4行4列的CAM,一种可能的匹配结果如下表表二所示。
表二
如表二,存在第2列表项和第3列表项这两列表项均为匹配表项,则取第2列表项为匹配表项。
同理,参考图4,若CAM的一行bit单元中存储的数据组成一个表项,则在CAM中查找数据可具体实现为以下步骤S401至S404:
S401、设置每个bit单元中第一FeFET和/或第二FeFET断开。
S402、分别设置所述CAM中的匹配线连接的第一FeFET的漏极电压为预设电压。
其中,不同匹配线对应的预设电压相同或不同。
S403、分别通过第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
需要说明的是,本申请实施例不限定上述S401至S403的执行顺序。
S404、若存在目标行的匹配线的输出电压保持为所述目标行对应的预设电压,则确定所述目标行的bit单元中存储的数据组成的表项为匹配表项。
可选的,若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出。
或者,若存在至少两个匹配表项,则将行号最小的目标行的bit单元中存储的数据组成的表项作为匹配结果输出。
需要说明的是,上述步骤S401至S404所描述的数据处理方法的具体实现可参考上述步骤S301至S304所描述的数据处理方法。其不同之处在于,S301至S304所描述的数据处理方法的应用场景为CAM中一列bit单元中存储的数据组成一个表项。S401至S404所描述的数据处理方法的应用场景为CAM中一行bit单元中存储的数据组成一个表项。
本申请实施例提供的在所述CAM中实现数据匹配的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线输入匹配值,通过与漏极连接的匹配线输出匹配结果,相比于现有技术中的匹配方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少匹配功耗。
二、在CAM中写入数据:
实际应用中,一个数据表由多个表项组成,数据表的配置文件中存储有表项的匹配方式,同一个数据表中的所有表项的匹配方式相同。因此,在CAM中查表时根据该表的配置文件可确定该表项的匹配方式。表项的匹配方式包括:精确匹配和掩码匹配。其中,精确匹配是指当输入的匹配值和bit单元中存储的值相同时,则表示bit单元中存储的值和待匹配的值匹配,否则认为不匹配。掩码匹配是指根据bit单元的掩码值来确定bit单元中存储的值是否参与匹配。例如:若表项的匹配方式为掩码匹配且bit单元的掩码为1时,表示该bit单元存储的值参与匹配且当该bit单元存储的值和待匹配值相同时,表示匹配。若表项的匹配方式为掩码匹配且bit单元的掩码为0时,表示该bit单元存储的值不参与匹配。
参考图5,在CAM中写入数据的过程包括以下步骤S501和S502。
S501、当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值。
可选的,所述FeFET包括栅极和背栅极,相应的,在本步骤的一种实现方式中,设置第一位线连接的第一FeFET的栅极和背栅极的电压差位于第四电压范围,设置第二位线连接的第二FeFET的栅极和背栅极的电压差位于第五电压范围以使得第一FeFET和第二FeFET写入不同值。其中,所述第四电压范围和第五电压范围不同。
可选的,所述FeFET包括栅极,不包括背栅极,相应的,在本步骤的一种实现方式中,设置第一位线连接的第一FeFET的栅极的电压位于第四电压范围,第二位线连接的第二FeFET的栅极的电压位于第五电压范围以使得第一FeFET和第二FeFET写入不同值。其中,所述第四电压范围和第五电压范围不同。
需要说明的是,实际应用中对于包含背栅极的FeFET,一般背栅极接地,因此栅极和背栅极的电压差即为栅极的电压。
示例性的,当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,当在bit单元中写入1时,所述第四电压范围为写入1的电压范围,也即该电压范围用于在第一FeFET中写入1。第五电压范围为写入0的电压范围,也即该电压范围用于在第二FeFET中写入0。或者,所述第四电压范围为写入0的电压范围,也即该电压范围用于在第一FeFET中写入0,第五电压范围为写入0的电压范围,也即该电压范围用于在第二FeFET中写入1。
无论上述哪种实现方式,bit单元中的其中一个FeFET中写入1,另一个FeFET中写入0,bit单元的两个FeFET存在一个FeFET为主导FeFET,该bit单元中存储的数值具体由主导FeFET中存储的值决定。
S502、当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在bit单元中写入数据时,在所述第一FeFET和第二FeFET中均写入0。
可选的,所述FeFET包括栅极和背栅极,相应的,在本步骤的一种实现方式中,设置第一位线连接的第一FeFET的栅极和背栅极的电压差、第二位线连接的第二FeFET的栅极和背栅极的电压差位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
可选的,所述FeFET仅包括栅极,不包括背栅极,相应的,在本步骤的一种实现方式中,设置第一位线连接的第一FeFET的栅极和第二位线连接的第二FeFET的栅极的电压位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
其中,上述相同的电压范围为写入0的电压范围。
作为图5所示方法的一种具体实现,若FeFET包括栅极和背栅极,当所述CAM的一列bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,需要设置第X行Y列的bit单元中包含的FeFET的栅极和背栅极的写入电压之差在一定范围内如前文所述的第四电压范围或第五电压范围内,其余行其余列的FeFET的栅极和背栅极的写入电压之差在另一范围(本申请实施例描述为第六电压范围)内以保证仅在第X行Y列的bit单元中写入数据。如图6所示,执行以下过程:
S601、设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。
S602、设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。
需要说明的是,不同行的第一位线连接的第一FeFET的栅极的电压可能相同可能不同,也即不同行对应的第三写入电压可能相同也可能不同。同理,不同行的第二位线连接的第二FeFET的栅极的电压可能相同也可能不同,也即不同行对应的第四写入电压可能相同也可能不同。
S603、设置第Y列的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压。
示例性的,所述第五写入电压位于0V左右的电压范围,第六写入电压位于0V左右的电压范围,这两个电压范围可能相同也可能不同。例如:第五写入电压位于-0.5V至0.5V这一电压范围,第五写入电压位于-0.4V至0.4V这一电压范围。
S604、设置其余列的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
需要说明的是,不同列的第一背栅线连接的第一FeFET的背栅极的电压可能相同也可能不同,也即不同列对应的第七写入电压可能相同也可能不同。同理,不同列的第二背栅线连接的第二FeFET的背栅极的电压可能相同也可能不同,也即不同列对应的第八写入电压可能相同也可能不同。
可选的,所述第一写入电压和所述第五写入电压之差在第四电压范围内、所述第二写入电压和所述第六写入电压之差在第五电压范围内以使得仅在第X行Y列的bit单元中写入数据;所述第三写入电压和所述第五写入电压之差、所述第四写入电压和所述第六写入电压之差、所述第三写入电压和所述第七写入电压之差、所述第四写入电压和所述第八写入电压之差、所述第一写入电压和所述第七写入电压之差、所述第二写入电压和所述第八写入电压之差在第六电压范围内以使得不在其余bit单元中写入数据。其中,第四电压范围和第五电压范围不同,具体的第四电压范围为写入0的电压范围,第五电压范围为写入1的电压范围。或者,第四电压范围为写入1的电压范围,第五电压范围为写入0的电压范围。第六电压范围为不写入数据的电压范围,也即所述写入0的电压范围和写入1的电压范围以外的电压范围。
示例性的,当在第X行Y列的bit单元中写入0时,第一写入电压和第五写入电压之差在写入0的电压范围内以在该bit单元的第一FeFET中写入0,第二写入电压和第六写入电压之差在写入1的电压范围内以在该bit单元的第二FeFET中写入1,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为0。同理,第一写入电压和第五写入电压之差在写入1的电压范围内以在该bit单元的第一FeFET中写入1,第二写入电压和第六写入电压之差在写入0的电压范围内以在该bit单元的第二FeFET中写入0,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为1。
示例性的,所述第三写入电压占所述第一写入电压的比例位于预设比例范围,例如一半,所述第六写入电压占所述第一写入电压的比例也为一半;所述第四写入电压占所述第二写入电压的比例位于预设比例范围,例如一半;所述第七写入电压占所述第二写入电压的比例位于预设比例范围,比如一半。
需要说明的是,本申请实施例不限定上述S601至S604的执行顺序。
示例性的,结合图2所示的CAM,在第3列第2行写入1时,各行各列的FeFET的电压设置如下表表三所示。
表三
结合该表三,可见仅第3列第2行的bit单元的栅极和背栅极的电压差达到写入电压,因此仅在该第3列第2行的bit单元中写入了数据。
需要说明的是,上述表三中仅写明了栅极和背栅极的电压之间的关系。bit单元的某个FeFET的栅极和背栅极之间的电压均满足上述关系。但同一个bit单元的两个FeFET的栅极的电压可能相同也可能不同。
同理,若FeFET包括栅极和背栅极,则当CAM的一行bit单元中存储的数据组成一个表项时,则当在位于第X行Y列的bit单元写入数据时,如图7所示,执行以下过程:
S701、设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。
S702、设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。
S703、设置第X行的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压。
S704、设置其余行的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
该S701至S704的具体实现过程可参考前述S601至S604,也即第一写入电压、第二写入电压、第三写入电压、第四写入电压、第五写入电压、第六写入电压、第七写入电压、第八写入电压的设置参考S601至S604中各个写入电压的设置。该S701至S704的实现过程与S601至S604的实现过程的不同在于:该S701至S704所描述的实现过程应用在CAM的一行bit单元中存储的数据组成一个表项的场景中,该S601至S604所描述的实现过程应用在CAM的一列bit单元中存储的数据组成一个表项的场景中。
需要说明的是,本申请实施例不限定上述S701至S704的执行顺序。
上文是以FeFET中包含栅极和背栅极为例进行描述,如果FeFET中仅包含栅极,而不包含背栅极,则在CAM的一列bit单元中存储的数据组成一个数据表项的场景中,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关,因此如图8所示,可通过以下方式在位于第X行Y列的bit单元中写入数据:
S801、设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。
S802、设置第X行的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。
S803、设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。
S804、设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。
其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
具体的,当在第X行Y列的bit单元中写入0时,第四电压范围为写入0的电压范围内以在该bit单元的第一FeFET中写入0,第五电压范围为写入1的电压范围内以在该bit单元的第二FeFET中写入1,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为0。同理,当在第X行Y列的bit单元中写入1时,第四电压范围为写入1的电压范围内以在该bit单元的第一FeFET中写入1,第五电压范围为写入0的电压范围内以在该bit单元的第二FeFET中写入0,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为1。
同理,如果FeFET中仅包含栅极,而不包含背栅极,则在CAM的一行bit单元中存储的数据组成一个数据表项的场景中,可在每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关。进而,如图9所示,可通过以下方式在位于第X行Y列的bit单元中写入数据:
S901、设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开。
S902、设置第Y列的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭。
S903、设置第Y列的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压。
S904、设置其余列的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压。
需要说明的是,不同列的第一位线对应的第三写入电压可能相同也可能不同,不同列的第二位线对应的第四写入电压可能相同也可能不同。
其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
具体的,当在第X行Y列的bit单元中写入0时,第四电压范围为写入0的电压范围以在该bit单元的第一FeFET中写入0,第五电压范围为写入1的电压范围内以在该bit单元的第二FeFET中写入1,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为0。同理,当在第X行Y列的bit单元中写入1时,第四电压范围为写入1的电压范围内以在该bit单元的第一FeFET中写入1,第五电压范围为写入0的电压范围内以在该bit单元的第二FeFET中写入0,这样当第一FeFET为主导FeFET时,该bit单元中存储的数据为1。
本申请实施例提供的在CAM中写入数据的方法,该CAM的每个bit单元仅包含两个FeFET晶体管。在该方法中,通过与栅极连接的位线写入数值,相比于现有技术中的数据写入方法,由于CAM仅包含两个FeFET晶体管,其尺寸较小,因此能够减少写数据的功耗。
网络设备中的查表都是用查找算法来实现的,查找算法通常分为多级或多节点,在某一级或某个节点内,通常有需要精确查找的工作。传统的做法是:通过内存读取,将该级或该节点的所有数据从内存中读出来,再由逻辑电路完成匹配工作,这种做法非常耗时而且会占用内存带宽。应用本申请实施例提供的内容寻址存储器在网络设备中查表,对于某一级或某一节点的查表工作,能够直接在内存中完成算法节点内部的查找命中,仅返回命中的部分,从而节省内存带宽,同时大幅度减少查找时延。常见的查表算法包括最长前缀匹配(longest prefix match,LPM)、掩码匹配和精确匹配(exact match,EM)。
例如:在LPM的一种查找算法中,LPM包括五级处理过程,传统的查表算法中,每一级的处理流程如下:将数据从内存中读取出来,使用逻辑电路在众多表项中查找与给定匹配值(key)匹配的表项。采用本申请实施例提供的方法,能够直接使用CAM在内存中完成表项的查找匹配,进而直接从内存中返回结果,省去了使用逻辑电路进行查找的过程。
又如:掩码匹配的查找分为多级处理,最后一级的处理为在特定容器中寻找匹配的规则。传统的算法是从内存中将所有数据都读出来,然后再用逻辑电路从中查找匹配的规则。采用本申请实施例提供的方法,能够直接在进行最后一级处理时从该特定容器中查找到匹配的规则并从内存中直接返回结果。
再如:精确匹配的查找分为多级,传统的查找算法为将数据从内存中读出来,然后再使用逻辑电路从中查找匹配的数据。采用本申请实施例提供的方法,能够直接在内存中完成查找并从内存中返回结果。
本申请实施例提供的内容寻址存储器,应用于网络设备,该网络设备可以为任意用于通过网络传送数据包的设备,示例性的,所述网络设备具体可以为交换机、路由器等设备。
如图10所示为本申请实施例提供的一种网络设备的结构示意图。网络设备1000包括通信接口1010、处理器1020、存储器1030和总线1040。其中,通信接口1010、处理器1020、存储器1030通过总线1040互相通信。存储器1030包括第一存储器1031和第二存储器1032,该第二存储器1032具体可以为本申请实施例提供的CAM。
其中,网络设备1000通过通信接口1010与其他设备之间互相通信。例如:网络设备1000通过通信接口1010接收其他设备发送的报文或向其他设备发送报文。示例性的,通信接口1010包括入口媒体访问控制(media access control,MAC)芯片和出口MAC芯片。网络设备1000可通过入口MAC芯片接收报文,并通过出口MAC芯片发送报文。
处理器1020可能是一个中央处理器(central processing unit,CPU),或者是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。示例性的,处理器1020为互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)逻辑电路,处理器1020用于执行第一存储器1031中存储的可执行程序代码,例如计算机程序来运行与可执行代码对应的程序。
第一存储器1031用于存储可执行程序代码,该程序代码包括计算机操作指令。第一存储器1031可能包含高速随机存取存储器(random access memory,RAM)存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
第二存储器1032可以为本申请实施例提供的CAM,例如可以为TCAM。
总线1040可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component,PCI)总线或扩展工业标准体系结构(extendedindustry standard architecture,EISA)总线等。该总线1040可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
结合该图10所示的网络设备,本申请实施例提供的方法具体可以实现为:网络设备1000通过通信接口1010接收数据报文并将数据报文交由处理器1020,由处理器1020进行预处理后由第二存储器1032执行图3所示的S301至S304、图4所示的S401至S404、图5所示的S501至S502、图6所示的S601至S604、图7所示的S701至S704的各个步骤的具体实现过程,或者直接由第二存储器8032直接执行图3所示的S301至S304、图4所示的S401至S404、图5所示的S501至S502、图6所示的S601至S604、图7所示的S701至S704、图8所示的S801至S804、图9所示的S901至S904的各个步骤的具体实现过程。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (23)
1.内容寻址存储器CAM,其特征在于,包括:M行N列位bit单元,所述M和N均为大于等于1的正整数;每个所述bit单元包括第一铁电场效应晶体管FeFET和第二FeFET;所述第一FeFET的源极连接所述第二FeFET的漏极;所述第二FeFET的源极接地;
所述CAM的一列bit单元中存储的数据组成一个表项;同一列bit单元对应同一匹配线;位于同一列的每个bit单元中的第一FeFET的漏极均连接该列对应的匹配线;同一行bit单元对应同一第一位线和同一第二位线,位于同一行的每个bit单元中的第一FeFET的栅极均连接该行对应的第一位线,位于同一行的每个bit单元中的第二FeFET的栅极均连接该行对应的第二位线。
2.根据权利要求1所述的CAM,其特征在于,还包括:
同一列bit单元分别对应同一第一背栅线和同一第二背栅线;位于同一列的每个bit单元中的第一FeFET的背栅极均连接该列对应的第一背栅线;位于同一列的每个bit单元中的第二FeFET的背栅极均连接该列对应的第二背栅线。
3.一种数据处理方法,应用于权利要求1或2所述的内容寻址存储器CAM,其特征在于,所述方法包括:
设置每个bit单元中的第一FeFET和/或第二FeFET始终断开;
分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同;
分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值;
若存在目标列的匹配线的输出电压保持为所述目标列对应的预设电压,则确定所述目标列的bit单元中存储的数据组成的表项为匹配表项。
4.根据权利要求3所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极;所述设置每个bit单元中的第一FeFET和/或第二FeFET始终断开包括:
设置每个bit单元中与第一位线连接的第一FeFET和/或与第二位线连接的第二FeFET的栅极电压位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极的电压位于第一电压范围时,所述FeFET断开;
所述分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,包括:
分别设置第一位线连接的第一FeFET的栅极的电压为第一电压,设置第二位线连接的第二FeFET的栅极的电压为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值;
或者,所述FeFET包括栅极和背栅极;
所述设置每个bit单元中的第一FeFET和/或第二FeFET始终断开包括:
设置每个bit单元中与第一位线连接的第一FeFET的栅极和背栅极的电压差位于第一电压范围,和/或,设置每个bit单元中与第二位线连接的第二FeFET的栅极和背栅极的电压差位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极和背栅极的电压差位于第一电压范围时,所述FeFET断开;
所述分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,包括:
分别设置第一位线连接的第一FeFET的栅极和背栅极的电压差为第一电压,设置第二位线连接的第二FeFET的栅极和背栅极的电压差为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
5.根据权利要求4所述的数据处理方法,其特征在于,
若通过所述第一位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;当所述匹配值为1时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;
若通过所述第二位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;当所述匹配值为1时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;
其中,若FeFET包含栅极,不包含背栅极,则当栅极的电压位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极的电压位于第三电压范围时,所述FeFET始终导通;或者,若FeFET包含栅极和背栅极,则当栅极和背栅极的电压差位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极和背栅极的电压差位于第三电压范围时,所述FeFET始终导通。
6.根据权利要求3至5任一项所述的数据处理方法,其特征在于,所述方法还包括:
若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出;
或者,将列号最小的目标列的bit单元中存储的数据组成的表项作为匹配结果输出。
7.根据权利要求3至6任一项所述的数据处理方法,其特征在于,所述方法还包括:
当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值;
当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在所述bit单元中写入数据时,在所述第一FeFET和第二FeFET中均写入0。
8.根据权利要求7所述的数据处理方法,其特征在于,所述FeFET包括栅极和背栅极;
所述在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值,包括:
设置第一位线连接的第一FeFET的栅极和背栅极的电压差位于第四电压范围,设置第二位线连接的第二FeFET的栅极和背栅极的电压差位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同;
所述在所述第一FeFET和第二FeFET中均写入0,包括:
设置第一位线连接的第一FeFET的栅极和背栅极的电压差、第二位线连接的第二FeFET的栅极和背栅极的电压差位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
9.根据权利要求8所述的数据处理方法,其特征在于,所述FeFET包括栅极和背栅极;所述方法还包括:
当在CAM中位于第X行Y列的bit单元写入数据时,设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压;
设置第Y列的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余列的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
10.根据权利要求9所述的数据处理方法,其特征在于,所述第一写入电压和所述第五写入电压之差在第四电压范围内、所述第二写入电压和所述第六写入电压之差在第五电压范围内以使得仅在第X行Y列的bit单元中写入数据;所述第三写入电压和所述第五写入电压之差、所述第四写入电压和所述第六写入电压之差、所述第三写入电压和所述第七写入电压之差、所述第四写入电压和所述第八写入电压之差、所述第一写入电压和所述第七写入电压之差、所述第二写入电压和所述第八写入电压之差在第六电压范围内以使得不在其余bit单元中写入数据。
11.根据权利要求7所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极;
所述在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值,包括:
设置第一位线连接的第一FeFET的栅极的电压位于第四电压范围,第二位线连接的第二FeFET的栅极的电压位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同;
所述在所述第一FeFET和第二FeFET中均写入0,包括:
设置第一位线连接的第一FeFET的栅极和第二位线连接的第二FeFET的栅极的电压位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
12.根据权利要求11所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关;所述方法还包括:
当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开;设置第X行的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭;
设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压;
其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
13.一种数据处理方法,其特征在于,应用于权利要求1或2所述的内容寻址存储器CAM,所述方法包括:
当表项的匹配方式为精确匹配或掩码匹配且bit单元的掩码为1时,在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值;
当表项的匹配方式为掩码匹配且bit单元的掩码为0时,在所述bit单元中写入数据时,在所述第一FeFET和第二FeFET中均写入0。
14.根据权利要求13所述的数据处理方法,其特征在于,所述FeFET包括栅极和背栅极;
所述在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值,包括:
设置第一位线连接的第一FeFET的栅极和背栅极的电压差位于第四电压范围,设置第二位线连接的第二FeFET的栅极和背栅极的电压差位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同;
所述在所述第一FeFET和第二FeFET中均写入0,包括:
设置第一位线连接的第一FeFET的栅极和背栅极的电压差、第二位线连接的第二FeFET的栅极和背栅极的电压差位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
15.根据权利要求14所述的数据处理方法,其特征在于,所述FeFET包括栅极和背栅极;所述方法还包括:
当在CAM中位于第X行Y列的bit单元写入数据时,设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压;
设置第Y列的第一背栅线连接的第一FeFET的背栅极的电压为第五写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第六写入电压;设置其余列的第一背栅线连接的第一FeFET的背栅极的电压为第七写入电压,第二背栅线连接的第二FeFET的背栅极的电压为第八写入电压。
16.根据权利要求15所述的数据处理方法,其特征在于,所述第一写入电压和所述第五写入电压之差在第四电压范围内、所述第二写入电压和所述第六写入电压之差在第五电压范围内以使得仅在第X行Y列的bit单元中写入数据;所述第三写入电压和所述第五写入电压之差、所述第四写入电压和所述第六写入电压之差、所述第三写入电压和所述第七写入电压之差、所述第四写入电压和所述第八写入电压之差、所述第一写入电压和所述第七写入电压之差、所述第二写入电压和所述第八写入电压之差在第六电压范围内以使得不在其余bit单元中写入数据。
17.根据权利要求13所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极;
所述在所述bit单元中写入数据时,分别在第一FeFET和第二FeFET中写入不同值,包括:
设置第一位线连接的第一FeFET的栅极的电压位于第四电压范围,第二位线连接的第二FeFET的栅极的电压位于第五电压范围以使得第一FeFET和第二FeFET写入不同值;其中,所述第四电压范围和第五电压范围不同;
所述在所述第一FeFET和第二FeFET中均写入0,包括:
设置第一位线连接的第一FeFET的栅极和第二位线连接的第二FeFET的栅极的电压位于相同的电压范围以使得写入所述第一FeFET和第二FeFET的值都为0。
18.根据权利要求17所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极,每个bit单元中的第一FeFET的栅极与连接的第一位线之间设置有开关,每个bit单元中的第二FeFET的栅极与连接的第二位线之间设置有开关;所述方法还包括:
当在CAM中位于第X行Y列的bit单元中写入数据时,设置所述第X行Y列的bit单元中的第一FeFET的栅极与连接的第一位线之间的开关打开,第二FeFET的栅极与连接的第二位线之间的开关打开;设置第X行的其余bit单元中的第一FeFET的栅极与连接的第一位线之间的开关关闭,第二FeFET的栅极与连接的第二位线之间的开关关闭;
设置第X行的第一位线连接的第一FeFET的栅极的电压为第一写入电压,第二位线连接的第二FeFET的栅极的电压为第二写入电压;设置其余行的第一位线连接的第一FeFET的栅极的电压为第三写入电压,第二位线连接的第二FeFET的栅极的电压为第四写入电压;
其中,所述第一写入电压在第四电压范围内,第二写入电压在第五电压范围内以仅在所述第X行Y列的bit单元中写入数据;所述第三写入电压和第四写入电压在第六电压范围内以不在除所述第X行Y列的bit单元以外的其余bit单元中写入数据。
19.根据权利要求13至18任一项所述的数据处理方法,其特征在于,所述方法包括:
设置每个bit单元中的第一FeFET和/或第二FeFET始终断开;
分别设置所述CAM中的匹配线连接的第一FeFET的漏极的电压为预设电压,不同匹配线对应的预设电压相同或不同;
分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值;
若存在目标列的匹配线的输出电压保持为所述目标列对应的预设电压,则确定所述目标列的bit单元中存储的数据组成的表项为匹配表项。
20.根据权利要求19所述的数据处理方法,其特征在于,所述FeFET包括栅极,不包括背栅极;所述设置每个bit单元中的第一FeFET和/或第二FeFET始终断开包括:
设置每个bit单元中与第一位线连接的第一FeFET和/或与第二位线连接的第二FeFET的栅极电压位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极的电压位于第一电压范围时,所述FeFET断开;
所述分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,包括:
分别设置第一位线连接的第一FeFET的栅极的电压为第一电压,设置第二位线连接的第二FeFET的栅极的电压为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值;
或者,所述FeFET包括栅极和背栅极;
所述设置每个bit单元中的第一FeFET和/或第二FeFET始终断开包括:
设置每个bit单元中与第一位线连接的第一FeFET的栅极和背栅极的电压差位于第一电压范围,和/或,设置每个bit单元中与第二位线连接的第二FeFET的栅极和背栅极的电压差位于第一电压范围,以使得所述第一FeFET和/或第二FeFET始终断开;其中,当FeFET的栅极和背栅极的电压差位于第一电压范围时,所述FeFET断开;
所述分别通过第一位线输入匹配值,通过第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值,包括:
分别设置第一位线连接的第一FeFET的栅极和背栅极的电压差为第一电压,设置第二位线连接的第二FeFET的栅极和背栅极的电压差为第二电压以通过所述第一位线输入匹配值,通过所述第二位线输入所述匹配值的相反值或者通过所述第二位线输入匹配值,通过所述第一位线输入所述匹配值的相反值。
21.根据权利要求20所述的数据处理方法,其特征在于,
若通过所述第一位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;当所述匹配值为1时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;
若通过所述第二位线输入匹配值,则当所述匹配值为0时,所述第一电压位于第三电压范围,所述第二电压位于第二电压范围;当所述匹配值为1时,所述第一电压位于第二电压范围,所述第二电压位于第三电压范围;
其中,若FeFET包含栅极,不包含背栅极,则当栅极的电压位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极的电压位于第三电压范围时,所述FeFET始终导通;或者,若FeFET包含栅极和背栅极,则当栅极和背栅极的电压差位于第二电压范围时,所述FeFET中输入匹配值以进行匹配,当栅极和背栅极的电压差位于第三电压范围时,所述FeFET始终导通。
22.根据权利要求19至21任一项所述的数据处理方法,其特征在于,所述方法还包括:
若存在至少两个匹配表项,则将存储地址最小的匹配表项作为匹配结果输出;
或者,将列号最小的目标列的bit单元中存储的数据组成的表项作为匹配结果输出。
23.一种网络设备,其特征在于,包括处理器、通信接口、第一存储器、第二存储器和通信总线;其中,所述处理器、通信接口、第一存储器、第二存储器通过所述通信总线互相通信;所述第一存储器中存储有计算机可执行程序代码,所述第二存储器为权利要求1或2所述的内容寻址存储器CAM;
所述处理器用于执行所述第一存储器中存储的所述计算机可执行程序代码以控制所述第二存储器执行权利要求3至12任一项所述的数据处理方法;
或者,所述处理器用于执行所述第一存储器中存储的所述计算机可执行程序代码以控制所述第二存储器执行权利要求13至22任一项所述的数据处理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811281043.6A CN111128278B (zh) | 2018-10-30 | 2018-10-30 | 内容寻址存储器、数据处理方法及网络设备 |
PCT/CN2019/111238 WO2020088241A1 (zh) | 2018-10-30 | 2019-10-15 | 内容寻址存储器、数据处理方法及网络设备 |
EP19878916.6A EP3813067B1 (en) | 2018-10-30 | 2019-10-15 | Content addressing memory, data processing method and network device |
US17/156,938 US11468933B2 (en) | 2018-10-30 | 2021-01-25 | Content addressable memory, data processing method, and network device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811281043.6A CN111128278B (zh) | 2018-10-30 | 2018-10-30 | 内容寻址存储器、数据处理方法及网络设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111128278A true CN111128278A (zh) | 2020-05-08 |
CN111128278B CN111128278B (zh) | 2021-08-27 |
Family
ID=70462932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811281043.6A Active CN111128278B (zh) | 2018-10-30 | 2018-10-30 | 内容寻址存储器、数据处理方法及网络设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11468933B2 (zh) |
EP (1) | EP3813067B1 (zh) |
CN (1) | CN111128278B (zh) |
WO (1) | WO2020088241A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096710A (zh) * | 2021-04-28 | 2021-07-09 | 清华大学 | 一种单元电路及其动态三态内容寻址存储器 |
US11996150B2 (en) | 2021-04-30 | 2024-05-28 | Samsung Electronics Co., Ltd. | Non-volatile content addressable memory device having simple cell configuration and operating method of the same |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11527277B1 (en) | 2021-06-04 | 2022-12-13 | Kepler Computing Inc. | High-density low voltage ferroelectric memory bit-cell |
TWI766773B (zh) * | 2021-07-23 | 2022-06-01 | 旺宏電子股份有限公司 | 多階內容可定址記憶體、多階編碼方法與多階搜尋方法 |
US11482270B1 (en) | 2021-11-17 | 2022-10-25 | Kepler Computing Inc. | Pulsing scheme for a ferroelectric memory bit-cell to minimize read or write disturb effect and refresh logic |
US11854619B2 (en) * | 2022-01-19 | 2023-12-26 | Taiwan Semiconductor Manufacturing Company, Ltd. | Memory device with content addressable memory units |
US20230395134A1 (en) | 2022-06-03 | 2023-12-07 | Kepler Computing Inc. | Write disturb mitigation for non-linear polar material based multi-capacitor bit-cell |
US12062584B1 (en) | 2022-10-28 | 2024-08-13 | Kepler Computing Inc. | Iterative method of multilayer stack development for device applications |
US11741428B1 (en) | 2022-12-23 | 2023-08-29 | Kepler Computing Inc. | Iterative monetization of process development of non-linear polar material and devices |
US11765908B1 (en) | 2023-02-10 | 2023-09-19 | Kepler Computing Inc. | Memory device fabrication through wafer bonding |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030206466A1 (en) * | 2001-09-25 | 2003-11-06 | Fujitsu Limited | Associative memory circuit judging whether or not a memory cell content matches search data by performing a differential amplification to a potential of a match line and a reference potential |
CN1490880A (zh) * | 2002-09-27 | 2004-04-21 | �Ҵ���˾ | 使用铁电栅极场效应晶体管的非易失性存储器和制造方法 |
US20060028247A1 (en) * | 2004-08-03 | 2006-02-09 | Sony Corporation | Arithmetic circuit |
US20070002608A1 (en) * | 2005-06-30 | 2007-01-04 | International Business Machines Corporation | Non-volatile content addressable memory using phase-change-material memory elements |
US20080055961A1 (en) * | 2006-09-01 | 2008-03-06 | Seiko Epson Corporation | Ferroelectric memory device and electronic apparatus |
CN101501780A (zh) * | 2006-08-04 | 2009-08-05 | 高通股份有限公司 | 用于减少内容可寻址存储器中的功率消耗的方法和设备 |
US20110051483A1 (en) * | 2009-08-28 | 2011-03-03 | International Business Machines Corporation | Content addressable memory array |
US7944724B2 (en) * | 2009-04-28 | 2011-05-17 | Netlogic Microsystems, Inc. | Ternary content addressable memory having reduced leakage effects |
CN102341863A (zh) * | 2009-03-06 | 2012-02-01 | 国际商业机器公司 | 使用相变器件的三元内容可寻址存储器 |
CN105099918A (zh) * | 2014-05-13 | 2015-11-25 | 华为技术有限公司 | 一种数据查找匹配的方法和装置 |
US9312006B2 (en) * | 2014-06-03 | 2016-04-12 | National Tsing Hua University | Non-volatile ternary content-addressable memory with resistive memory device |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5140849B2 (ja) * | 2008-02-13 | 2013-02-13 | ルネサスエレクトロニクス株式会社 | 内容参照メモリ |
CN101271728B (zh) * | 2008-04-22 | 2011-05-11 | 清华大学 | 一种抑制小信号干扰的铁电存储器存储阵列结构 |
US9001545B2 (en) * | 2012-08-31 | 2015-04-07 | Aplus Flash Technology, Inc. | NOR-based BCAM/TCAM cell and array with NAND scalability |
US9281044B2 (en) * | 2013-05-17 | 2016-03-08 | Micron Technology, Inc. | Apparatuses having a ferroelectric field-effect transistor memory array and related method |
US10650892B2 (en) * | 2018-04-23 | 2020-05-12 | Ferroelectric Memory Gmbh | Ternary memory cell and ternary memory cell arrangement |
US10453531B1 (en) * | 2018-06-29 | 2019-10-22 | Sandisk Technologies Llc | Content addressable memory using threshold-adjustable vertical transistors and methods of forming the same |
US11289162B2 (en) * | 2020-04-30 | 2022-03-29 | Hewlett Packard Enterprise Development Lp | Analog content addressable memory utilizing three terminal memory devices |
-
2018
- 2018-10-30 CN CN201811281043.6A patent/CN111128278B/zh active Active
-
2019
- 2019-10-15 WO PCT/CN2019/111238 patent/WO2020088241A1/zh unknown
- 2019-10-15 EP EP19878916.6A patent/EP3813067B1/en active Active
-
2021
- 2021-01-25 US US17/156,938 patent/US11468933B2/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030206466A1 (en) * | 2001-09-25 | 2003-11-06 | Fujitsu Limited | Associative memory circuit judging whether or not a memory cell content matches search data by performing a differential amplification to a potential of a match line and a reference potential |
CN1490880A (zh) * | 2002-09-27 | 2004-04-21 | �Ҵ���˾ | 使用铁电栅极场效应晶体管的非易失性存储器和制造方法 |
US20060028247A1 (en) * | 2004-08-03 | 2006-02-09 | Sony Corporation | Arithmetic circuit |
US20070002608A1 (en) * | 2005-06-30 | 2007-01-04 | International Business Machines Corporation | Non-volatile content addressable memory using phase-change-material memory elements |
CN101501780A (zh) * | 2006-08-04 | 2009-08-05 | 高通股份有限公司 | 用于减少内容可寻址存储器中的功率消耗的方法和设备 |
US20080055961A1 (en) * | 2006-09-01 | 2008-03-06 | Seiko Epson Corporation | Ferroelectric memory device and electronic apparatus |
CN102341863A (zh) * | 2009-03-06 | 2012-02-01 | 国际商业机器公司 | 使用相变器件的三元内容可寻址存储器 |
US7944724B2 (en) * | 2009-04-28 | 2011-05-17 | Netlogic Microsystems, Inc. | Ternary content addressable memory having reduced leakage effects |
US20110051483A1 (en) * | 2009-08-28 | 2011-03-03 | International Business Machines Corporation | Content addressable memory array |
CN105099918A (zh) * | 2014-05-13 | 2015-11-25 | 华为技术有限公司 | 一种数据查找匹配的方法和装置 |
US9312006B2 (en) * | 2014-06-03 | 2016-04-12 | National Tsing Hua University | Non-volatile ternary content-addressable memory with resistive memory device |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096710A (zh) * | 2021-04-28 | 2021-07-09 | 清华大学 | 一种单元电路及其动态三态内容寻址存储器 |
CN113096710B (zh) * | 2021-04-28 | 2023-03-31 | 清华大学 | 一种单元电路及其动态三态内容寻址存储器 |
US11996150B2 (en) | 2021-04-30 | 2024-05-28 | Samsung Electronics Co., Ltd. | Non-volatile content addressable memory device having simple cell configuration and operating method of the same |
Also Published As
Publication number | Publication date |
---|---|
EP3813067A4 (en) | 2021-08-11 |
CN111128278B (zh) | 2021-08-27 |
EP3813067A1 (en) | 2021-04-28 |
EP3813067B1 (en) | 2024-07-31 |
WO2020088241A1 (zh) | 2020-05-07 |
US20210142837A1 (en) | 2021-05-13 |
US11468933B2 (en) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111128278B (zh) | 内容寻址存储器、数据处理方法及网络设备 | |
US7433217B1 (en) | Content addressable memory cell configurable between multiple modes and method therefor | |
JPH0973793A (ja) | 連想記憶装置 | |
US8059440B2 (en) | Content-addressable memory | |
US20050201132A1 (en) | Content addressable memory (CAM) cell for operating at a high speed | |
US10891337B2 (en) | Content addressable memory and semiconductor device | |
US11107531B2 (en) | Search circuits, hammer address management circuits, and memory systems including the same | |
US8125811B2 (en) | Content-addressable memory | |
US6618280B2 (en) | Associative memory for accomplishing longest coincidence data detection by two comparing operations | |
US10373684B2 (en) | Semiconductor device | |
CN100440379C (zh) | 三级内容寻址存储器单元 | |
US11631459B2 (en) | Dual compare ternary content addressable memory | |
EP1526546B1 (en) | Magnitude (relational) content addressable memory | |
JPH0421997A (ja) | 連想記憶回路 | |
US20140085957A1 (en) | Shared Stack dual Phase Content Addressable Memory (CAM) Cell | |
TWI790107B (zh) | 內容定址記憶體裝置及其資料搜尋比對方法 | |
TWI541806B (zh) | 內容可定址記憶體 | |
US20050146911A1 (en) | Transmission device | |
TW202318425A (zh) | 內容可定址記憶體單元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |