CN104813405B - 用于三元内容可寻址存储器的伪nor单元 - Google Patents
用于三元内容可寻址存储器的伪nor单元 Download PDFInfo
- Publication number
- CN104813405B CN104813405B CN201380060697.5A CN201380060697A CN104813405B CN 104813405 B CN104813405 B CN 104813405B CN 201380060697 A CN201380060697 A CN 201380060697A CN 104813405 B CN104813405 B CN 104813405B
- Authority
- CN
- China
- Prior art keywords
- tcam
- matched line
- grades
- matched
- line
- 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.)
- Active
Links
Classifications
-
- 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
Landscapes
- Static Random-Access Memory (AREA)
- Logic Circuits (AREA)
Abstract
三元内容可寻址存储器(TCAM)内的方法包括:在当前TCAM级的上拉晶体管的栅极处和在当前TCAM级的下拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。当来自先前TCAM级的匹配线输出指示失配时,该方法经由下拉晶体管将当前TCAM级处的匹配线逆设置为低值。当来自先前TCAM级的匹配线输出指示匹配时,该方法还经由上拉晶体管将当前TCAM级处的匹配线逆设置为高值。
Description
技术领域
本公开一般涉及三元内容可寻址存储器(TCAM)。具体而言,本公开涉及TCAM的伪NOR架构。
背景
TCAM通常被用于路由器和以太网交换机中以用于网际协议(IP)地址转发。存储元件通常使用动态NOR/NAND(或非/与非)类型单元来设计。
内容可寻址存储器(CAM)支持读取操作、写入操作、以及比较操作。与CAM中条目的宽度(例如,每字比特)相同的比较总线在时钟边沿处输入。比较总线的数据与CAM中的每个条目同时进行比较。也就是说,比较是并行发生的,因此总线可在一个时钟循环期间与CAM中的每个条目进行比较。当条目中的每个比特与比较总线中的对应比特相匹配时,条目是匹配。替换地,当条目中的任何比特与比较总线中的对应比特不相匹配时,条目是失配。CAM中的条目的比特或为0,或为1。
TCAM类似于CAM,外加可存储于单元中的掩码值。该掩码值可被称为本地掩码。掩码值不与比较比特进行比较,由此比较结果将总是匹配。
图1解说常规TCAM 100的架构。如图1中所解说的,搜索字(诸如,“1101”)被输入到TCAM 100的寄存器150。该搜索字与TCAM单元110中所存储的值进行比较。TCAM通常每级具有16个TCAM单元。搜索跨TCAM单元110同时进行。TCAM单元110的内容可以是高比特(1)、低比特(0)、或掩码值(X)。在搜索之前,每组TCAM单元120-126的匹配线130-136被设置为高。匹配线130-136被输入到优先级编码器140。TCAM 100输出(ML输出)与搜索字线相匹配的那组TCAM单元的地址。由于该搜索是并行搜索,所以该搜索可在一个时钟循环中完成。应注意,掩码值可以是0或1,此外,在本公开中,掩码值可被称为X。
作为示例,如图1中所解说的,第一组TCAM单元120被设置成“1X 01”,第二组TCAM单元122被设置成“10X 1”,第三组TCAM单元124被设置成“1 1X X”,并且第四组TCAM单元126被设置成“1X 1X”。在将TCAM单元的内容与搜索比特进行比较时,在TCAM单元的内容为掩码值X的情况下,该比较将产生匹配。因此,根据图1中所解说的示例,第一组TCAM单元120和第三组TACM单元124与寄存器150中的搜索字相匹配。相应地,第一组TCAM单元120和第三组TCAM单元124的匹配线130、134将指示匹配,并且优先级编码器140输出第一组TCAM单元120和第三组TCAM单元124的地址。
常规TCAM架构是动态电路并且具有高动态功率耗散。在一些情形中,TCAM可具有动态NAND架构。在其他情形中,TCAM可具有动态NOR架构。
图2解说了常规动态NAND TCAM 200。如图2中所解说的,动态NAND架构200包括从上拉晶体管210通过预充电线PRE#充电的匹配线MLNAND。匹配线MLNAND被连接至一连串中间匹配线ML0-MLn-1。中间匹配线ML0-MLn-1中的每一条中间匹配线经由传输门被耦合至掩码单元Mask0-Maskn-1和键单元Key0-Keyn-1。传输门包括耦合至键单元Key0-Keyn-1的键NMOS晶体管202以及耦合至掩码单元Mask0-Maskn-1的掩码NMOS晶体管204。
掩码单元Mask0-Maskn-1的内容在展开掩码单元222中解说。如展开掩码单元222中所示,掩码单元Mask0-Maskn-1是SRAM单元,其包括掩码值M、掩码值逆(bar)M#、掩码字线WLM、掩码比特线BLM、以及掩码比特线逆BLM#。键单元Key0-Keyn-1的内容在展开键单元220中解说。如展开键单元220中所示,键单元Key0-Keyn-1是具有XNOR逻辑的SRAM单元。键单元Key0-Keyn-1还包括搜索线SL、搜索线逆SL#、键比特线BLK、键比特线逆BLK#、键值K、键逆值K#、以及键写入线WLK。
在动态NAND TCAM架构中,匹配线被预充电为高并在评估为低时指示匹配。即,预充电信号在每个循环期间被用于每条匹配线以将匹配线设置为高。取决于掩码单元或键单元的状态,匹配线可被拉低或保持为高。每条中间匹配线与掩码单元及键单元相关联。此外,每个键单元进一步包括XNOR逻辑。动态NAND TCAM使用串行操作。因此,当先前的中间匹配线(n-2)被拉低以指示匹配时,中间匹配线(n-1)可放电(例如,与搜索线的值进行比较)。也就是说,当存在匹配时操作从一条中间匹配线(n-2)继续到后续中间匹配线(n-1),而当存在失配时,停止穿过中间匹配线前进。
在动态NOR TCAM架构中,匹配线被预充电为高并在评估为低时指示失配。大多数比较产生失配,因此动态NOR由于从高向低切换以指示失配而具有增加的功耗。此外,动态NOR具有复杂的定时控制,这是因为预充电信号在每个时钟循环中被每个匹配线使用。
图3解说常规动态NOR TCAM 300。如图3中所解说的,动态NOR TCAM 300包括键单元Key0-Keyn-1和掩码单元Mask0-Maskn-1。通常,NOR TCAM(诸如图3的NOR TCAM 300)可具有16个键单元和掩码单元。数据是经由搜索线(SL0-SLn-1和SL0#-SLn-1#)输入的。数据与键单元Key0-Keyn-1和掩码单元Mask0-Maskn-1中所存储的值进行比较。匹配线MLNOR和搜索线(SL0-SLn-1和SL0#-SLn-1#)从上拉晶体管303通过预充电线PRE#预充电为高。当经由搜索线(SL0-SLn-1和SL0#-SLn-1#)之一输入的数据与单元Key0-Keyn-1、Mask0-Maskn-1之一中所存储的数据之间存在失配时,匹配线MLNOR将评估为低。当所有单元Key0-Keyn-1、Mask0-Maskn-1的值匹配于输入数据时,匹配线保持为高。
键单元Key0-Keyn-1的结构在展开键单元330中解说,而掩码单元Mask0-Maskn-1的结构在展开掩码单元333中解说。如展开键单元330中所解说的,键单元Key0-Keyn-1是通过SRAM单元来实现的。在比较操作期间,键逆K#与搜索线SL进行与操作。键单元Key0-Keyn-1包括比特线BLK、比特线逆BLK#、以及字线WLK。
如展开掩码单元333中所解说的,掩码单元Mask0-Maskn-1是通过SRAM单元来实现的。在比较操作期间,掩码逆K#与搜索线逆SL#进行与操作。掩码单元Mask0-Maskn-1包括比特线BLM、比特线逆BLM#、以及字线WLM。
表1是动态NOR TCAM的真值表。表1示出基于掩码单元(M)、键单元(K)、以及搜索线(SL和SL#)的值的匹配线的值。应注意,状态是指存储元件(键单元和掩码单元)的状态。当键比特具有值0时状态为0,当键比特具有值1时状态为1,并且当掩码比特和键比特均为1时状态为X。状态X是指既不存在匹配又不存在失配的掩码状态,更确切地,在搜索线的值与掩码单元及键单元的值之间不存在比较的掩码状态。因此,匹配线常常指示匹配。
如表1中所示,当键比特与搜索线具有不同值时,匹配线将为0(低)并指示失配。类似地,当掩码比特与搜索线逆两者具有不同值时,匹配线将为0并指示失配。即,当键比特为0(例如,键比特逆(K#)为1)并且搜索线为1时、或者当掩码比特为0(例如,掩码比特逆(M#)为1)并且搜索线逆为1时,则下拉晶体管将被激活以将匹配线拉到低。此外,当键比特与搜索线具有相同值时,匹配线将为1(高)并指示匹配。类似地,当掩码比特与搜索线逆两者具有相同值时,匹配线将为1并指示匹配。此外,当掩码比特和键比特均为1时,状态为X。即,匹配线将保持为高并指示匹配而不管搜索线的值。
如以上所讨论的,在动态NOR TCAM中,匹配线和搜索线在每个循环的开始时被预充电为高,并且匹配线评估为低以指示失配。TCAM中的单元的大多数比较产生失配。因此,动态NOR TCAM的功耗由于指示失配时从高向低的切换而增加。在一些情形中,匹配线可被预放电为低以减小功耗。然而,即使在匹配线被预放电时,预充电操作在每个循环的开始时对匹配线充电。因此,匹配线的预充电导致功耗的增加以及附加的控制电路系统。
概述
根据本公开的一方面,三元内容可寻址存储器(TCAM)内的方法包括:在当前TCAM级的上拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。该方法还包括在当前TCAM级的下拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。该方法进一步包括当来自先前TCAM级的匹配线输出指示失配时,经由下拉晶体管将当前TCAM级处的匹配线逆设为低值。该方法还进一步包括当来自先前TCAM级的匹配线输出指示匹配时,经由上拉晶体管将当前TCAM级处的匹配线逆设为高值。
根据另一方面,给出了一种TCAM。该TCAM包括用于在当前TCAM级处接收来自先前TCAM级的匹配线输出的上拉装置。该TCAM还包括用于在当前TCAM级处接收来自先前TCAM级的匹配线输出的下拉装置。该TCAM进一步包括用于当来自先前TCAM级的匹配线输出指示失配时,经由第一装置将当前TCAM级处的匹配线设为低值的装置。该TCAM还进一步包括用于当来自先前TCAM级的匹配线输出指示匹配时,经由第二装置将当前TCAM级处的匹配线设为高值的装置。
根据又一方面,给出了一种TCAM。该TCAM包括上拉晶体管堆叠,其配置成在当前TCAM级处接收来自先前TCAM级的匹配线输出。当来自先前TCAM级的匹配线输出指示失配时,该上拉晶体管堆叠将当前TCAM级处的匹配线逆设置为低值。该TCAM进一步包括下拉晶体管,其配置成在当前TCAM级处接收来自先前TCAM级的匹配线输出。当来自先前TCAM级的匹配线输出指示匹配时,下拉晶体管将当前TCAM级处的匹配线逆设为高值。
这已较宽泛地勾勒出本公开的特征和技术优势以力图使下面的详细描述可以被更好地理解。本公开的其他特征和优点将在下面描述。本领域技术人员应该领会,本公开可容易地被用作改动或设计用于实施与本公开相同的目的的其他结构的基础。本领域技术人员还应认识到,此类等效构造并不脱离所附权利要求中所阐述的本公开的教导。被认为是本公开的特性的新颖特征在其组织和操作方法两方面连同进一步的目的和优点在结合附图来考虑以下描述时将被更好地理解。然而要明确理解的是,提供每一幅附图均仅用于解说和描述目的,且无意作为对本公开的限定的定义。
附图简要说明
本公开的特征、本质和优点将因以下结合附图阐述的具体描述而变得更加明显。
图1解说了TCAM存储器系统。
图2解说了现有技术动态NAND架构。
图3解说了现有技术动态NOR架构。
图4和5解说了根据本公开各方面的伪NOR架构。
图6是解说根据本公开一方面的用于操作图4和5的伪NOR架构的方法的流程图。
图7解说了其中可有利地采用本公开的实施例的示例性无线通信系统。
图8是示出根据本公开一方面的用于半导体组件的电路、布局以及逻辑设计的设计工作站的框图。
详细描述
以下结合附图阐述的详细描述旨在作为各种配置的描述,而无意表示可实践本文中所描述的概念的仅有的配置。本详细描述包括具体细节以便提供对各种概念的透彻理解。然而,对于本领域技术人员将明显的是,没有这些具体细节也可实践这些概念。在一些实例中,以框图形式示出众所周知的结构和组件以避免湮没此类概念。
期望提供不对匹配线预充电且关于定时控制电路系统具有降低的复杂度的TCAM。本公开的各方面提供了不对匹配线预充电且降低定时控制电路系统的复杂度的伪NORTCAM。该伪NOR TCAM可被称为伪NOR。
根据本公开,伪NOR不将复杂的定时控制电路系统用于匹配线预充电,这是因为匹配线(ML)在每个循环之前不被预充电。在本方面,伪NOR使用伪NOR门来消除预充电电路系统并降低定时控制电路系统的复杂度。
图4解说了根据本公开的一方面的伪NOR 400A和400B的架构。如图4中所解说的,伪NOR 400A包括接收来自一组搜索线SL0...SLn-1和搜索线补集SL0#...SLn-1#的输入的NOR下拉网络410A。虽然图4仅解说了两个伪NOR级(400A和400B),但在实现中,TCAM行(其存储TCAM条目)可具有m个伪NOR级,这m个伪NOR级中的每一个具有n个单元。因此,每个TCAM条目(其存储于TCAM行中)可包括由n×m个单元存储的n×m个值。每个单元包括掩码单元和键单元,如以下进一步描述的。虽然至伪NOR级400A和400B的搜索线和搜索线逆输入两者以相同方式标注,但搜索线和搜索线逆输入中的每一者都是唯一的。
此外,伪NOR 400A还可包括匹配线输出Match-outm-2以及耦合至匹配线输出Match-outm-2的反相器440A。而且,NOR下拉网络410A还耦合至PMOS堆叠414A。PMOS堆叠414A包括两个PMOS晶体管并接收来自匹配线输入Match-inm-2的输入。伪NOR可包括PMOS堆叠414A和下拉晶体管435A。应注意,PMOS堆叠414A并不限于两个PMOS晶体管。本公开的各方面构想了仅具有单个弱PMOS晶体管的堆叠、或具有两个以上弱PMOS晶体管的堆叠。
应注意,匹配线输入(Match-in)是先前的NOR下拉网络(例如,伪NOR)的匹配线输出(Match-out)。也就是说,至伪NOR(伪NOR 400B)的匹配线输入被耦合至先前的NOR(伪NOR400A)的匹配线输出。例如,如图4中所解说的,伪NOR 400A的匹配线输出Match-outm-2是后续的伪NOR 400B的匹配线输入Match-inm-1。图4的伪NOR 400A和400B的架构是相似的。具体而言,伪NOR 400B也包括NOR下拉网络410B、下拉晶体管435B、PMOS堆叠414B、以及反相器440B。在本公开中,每个伪NOR(例如,400A和400B)可被称为TCAM级。
在一种配置中,各TCAM级(例如,伪NOR 400A和伪NOR 400B)可被串联连接以形成由m个TCAM级(0…m-1)构成的一行。每个TCAM级包括n个(0…n-1)搜索线、键单元、和掩码单元。图4的每个伪NOR(例如,400A和400B)的搜索线输入是TCAM的多条搜索线的示例性输入。应注意,在一些方面,搜索线、键单元、和掩码单元的数目可在每个TCAM级之间变化。也就是说,一个TCAM级(诸如,伪NOR 400A)的(0…n-1)搜索线、键单元、和掩码单元的n值可以不同于另一个TCAM级(诸如,伪NOR 400B)的(0…n-1)搜索线、键单元、和掩码单元的n值。
通过串联连接各伪NOR节省了功率。具体而言,将上拉晶体管(例如,PMOS堆叠)的栅极连接至先前的伪NOR的匹配线输出节省了功率,这是因为当未指定比较时(例如,当先前的匹配线输出/匹配线输入指示先前的比较为失配时),先前的匹配线输出充当用于关断上拉晶体管的控制信号。更具体地,至NOR下拉网络的PMOS堆叠的串联连接是伪NOR的组件,该组件取代了常规动态NOR的预充电和/或预放电。
与TCAM的常规NOR架构相比,伪NOR提供了较高的速度和较低的晶体管计数。另外,伪NOR因上拉晶体管(PMOS堆叠)而具有静态功耗,并具有减小的输出电压摆动。不过,鉴于静态功耗的增加,仍期望伪NOR的总体速度改善。应注意,伪NOR的上拉晶体管应当足够宽以传导NMOS块的漏电流,并且足够窄以供NMOS块安全地拉低输出。
图5解说了根据本公开的各方面的示例性伪NOR TCAM级500。伪NOR TCAM级500是伪NOR TCAM级(诸如,图4的伪NOR TCAM级400A和400B)的展开图。
如图5中所解说的,伪NOR TCAM级500包括耦合至匹配线输出Match-outm-1的反相器540、耦合至匹配线输入Match-inm-1的PMOS堆叠514、和耦合至匹配线输入Match-inm-1的下拉晶体管535、以及NOR下拉网络510。NOR下拉网络510包括键单元Key0-Keyn-1和掩码单元Mask0-Maskn-1。键单元和掩码单元的示例性结构在展开键单元550和展开掩码单元555中更详细地解说。
在操作中,数据是经由搜索线(SL0-SLn-1和SL0#-SLn-1#)给出的。该数据与键单元Key0-Keyn-1和掩码单元Mask0-Maskn-1中所存储的值进行比较。如展开键单元550中所解说的,键单元Key0-Keyn-1可使用SRAM单元来实现。在比较操作期间,键逆K#与搜索线SL进行逻辑与。键单元Key0-Keyn-1包括比特线BL、BL#、和键字线WLK。如展开掩码单元555中所解说的,掩码单元Mask0-Maskn-1可通过SRAM单元来实现。在比较操作期间,掩码逆M#与搜索线逆SL#进行逻辑与。掩码单元Mask0-Maskn-1包括比特线BL、BL#、和掩码字线WLM。也就是说,掩码单元Mask0-Maskn-1和键单元Key0-Keyn-1可各自共享相应的比特线,但可使用它们自己的字线,即,不同的字线。
伪NOR TCAM级500还包括耦合至匹配线逆Match-outm-1#的输入级560。输入级560接收来自先前的伪NOR级的匹配线输出Match-outm-2的输入Match-inm-1。如先前所讨论的,输入级560可包括下拉晶体管535和PMOS堆叠514。在一些情形中,伪NOR功能性指定对输入级560和NOR下拉网络510的使用。最后,反相器540被耦合至匹配线逆Match-outm-1#的末端。来自反相器540的输出是匹配线输出Match-outm-1。
表2是掩码比特和键比特的真值表。应注意,表2中的状态是指存储元件(键单元和掩码单元)的状态。当键比特具有值0且掩码比特具有值1时状态为0,当键比特具有值1且掩码比特具有值0时状态为1,并且当掩码比特和键比特均为1时状态为X。状态X是指既不存在匹配又不存在失配的掩码状态,更确切地,在搜索线的值与掩码单元及键单元的值之间不存在比较的掩码状态。因此,当状态为X时,匹配线始终指示匹配。
表3是关于伪NOR的真值表且使用表2的状态值。
如表3中所示,匹配线输出Match-outm-1将为0(低)以指示匹配。当状态和搜索线SLn-1的值相等时发生匹配。此外,当状态为X时,匹配线输出Match-outm-1将也为低以指示匹配。最后,匹配线输出Match-outm-1将为1(高)以指示失配。当状态的值不等于搜索线SLn-1的值时发生失配。
表3的匹配线输出Match-outm-1是伪NOR TCAM级500的反相器540的输出。如图5中所示,匹配线逆Match-outm-1#在反相器540之前。当存在失配时,匹配线逆Match-outm-1#将评估为低。也就是说,为了禁用串联连接的伪NOR(例如,400A和400B)的进一步比较,后续的伪NOR的输入级560被指定为接收高输入,该高输入将激活下拉晶体管535以将后续的伪NOR的匹配线逆Match-outm-1#拉低。因此,反相器540将使匹配线逆Match-outm-1#从低信号改变到高信号,以便于禁用后续的伪NOR。
表3还示出了接收被设为高的匹配线输入Match-inm-1的结果。如表3中所示,当匹配线输入Match-inm-1为高时,状态为1/0/X,这是因为将不存在评估。此外,匹配线输出Match-outm-1也将为高以禁用后续的伪NOR 400。
替换地,当匹配线输入为低时,PMOS堆叠514被激活,并且匹配线逆Match-outm-1#被评估为高。如果所有比较结果匹配,则匹配线逆Match-outm-1#将保持为高,并且匹配线输出Match-outm-1将为低。如果比较导致失配,则匹配线逆Match-outm-1#将评估为低,并且匹配线输出Match-outm-1将为高以禁用后续的伪NOR。
对伪NOR的禁用降低了TCAM的总体功耗,这是因为当存在失配时,后续比较被禁用。也就是说,不同于对每个NOR下拉网络的匹配线和搜索线进行预充电而不管先前比较的比较结果的动态NOR,仅当先前比较导致匹配时,伪NOR才继续进行后续比较。此外,伪NOR并不对匹配线和搜索线预充电。因此,本公开的各方面降低了TCAM的总体功耗并进一步降低了控制电路系统和定时的复杂度。
图6解说TCAM内的方法600的框图。如图6中所解说的,在框602中,当前TCAM级在当前TCAM级的上拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。在框604中,当前TCAM级在当前TCAM级的下拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。此外,在框606中,当来自先前TCAM级的匹配线输出指示失配时,经由下拉晶体管将当前TCAM级处的匹配线逆设置为低值。最后,在框608中,当来自先前TCAM级的匹配线输出指示匹配时,经由上拉晶体管将当前TCAM级处的匹配线逆设置为高值。
图7示出其中可有利地采用本公开的实施例的示例性无线通信系统700。出于解说目的,图7示出了三个远程单元720、730和750以及两个基站740。将认识到,无线通信系统可具有多得多的远程单元和基站。远程单元720、730和750包括带有伪NOR TCAM 725A、725B、和725C的多核处理器。图7示出从基站740到远程单元720、730、和750的前向链路信号780,以及从远程单元720、730、和750到基站740的反向链路信号770。
在图7中,远程单元720被示为移动电话,远程单元730被示为便携式计算机,而远程单元750被示为无线本地环路系统中的位置固定的远程单元。例如,远程单元可以是蜂窝电话、手持式个人通信系统(PCS)单元、机顶盒、音乐播放器、视频播放器、娱乐单元、导航设备、便携式数据单元(诸如个人数据助理)或者位置固定的数据单元(诸如仪表读数装备)。尽管图7示出了可采用带有根据本公开的教导的伪NOR TCAM 725A、725B、725C的多核处理器的远程单元,但本公开不限于所解说的这些示例性单元。例如,可在任何设备中适当地采用带有根据本公开各方面的伪NOR TCAM的多核处理器。
图8是解说用于具有上面公开的伪NOR TCAM的半导体组件(诸如多核处理器)的电路、布局和逻辑设计的设计工作站的框图。设计工作站800包括硬盘801,该硬盘801包含操作系统软件、支持文件以及设计软件(诸如Cadence或OrCAD)。设计工作站800还包括促成对电路810或半导体组件812(诸如伪NOR TCAM)的设计的显示器802。存储介质804被提供以用于有形地存储电路设计810或半导体组件812。电路设计810或半导体组件812可以文件格式(诸如GDSII或GERBER)存储在存储介质804上。存储介质804可以是CD-ROM、DVD、硬盘、闪存、或其他合适的设备。此外,设计工作站800包括用于从存储介质804接受输入或将输出写到存储介质804的驱动装置803。
记录在存储介质804上的数据可指定逻辑电路配置、用于光刻掩模的图案数据、或者用于串写工具(诸如电子束光刻)的掩模图案数据。该数据可进一步包括与逻辑仿真相关联的逻辑验证数据(诸如时序图或网电路)。在存储介质804上提供数据通过减少用于设计半导体晶片的工艺数目促成了对电路设计810或半导体组件812的设计。
在一种配置中,TCAM包括接收装置和设置装置。接收装置可以是配置成执行由接收装置陈述的功能的伪NOR门、上拉晶体管、下拉晶体管和/或PMOS堆叠。设置装置可以是配置成执行由设置装置陈述的功能的伪NOR门、上拉晶体管、下拉晶体管和/或PMOS堆叠。
在另一配置中,前述装置可以是被配置成执行由前述装置所述的功能的任何模块或任何设备。尽管已阐述了特定装置,但是本领域技术人员应当领会,并非所有所公开的装置都是实践所公开的配置所必需的。此外,某些众所周知的装置未被描述,以便保持专注于本公开。
尽管已阐述了特定电路系统,但是本领域技术人员应当领会,并非所有所公开的电路系统都是实践所公开的实施例所必需的。此外,某些众所周知的电路未被描述,以便保持专注于本公开。
本文中所描述的方法体系取决于应用可藉由各种手段来实现。例如,这些方法体系可在硬件、固件、软件或其任何组合中实现。对于硬件实现,这些处理单元可以在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子器件、设计成执行本文中所描述功能的其他电子单元或其组合内实现。
对于固件和/或软件实现,这些方法体系可以用执行本文中所描述功能的模块(例如,规程、函数等等)来实现。有形地体现指令的任何机器或计算机可读介质可用于实现本文中所描述的方法体系。例如,软件代码可被存储在存储器中并由处理器执行。当由处理器执行时,执行中的软件代码生成实现本文所呈现的教导的不同方面的各种方法体系和功能性的操作环境。存储器可以实现在处理器内部或处理器外部。如本文所使用的,术语“存储器”是指任何类型的长期、短期、易失性、非易失性、或其他存储器,且并不限于任何特定类型的存储器或特定数目的存储器、或记忆存储在其上的介质类型。
存储有定义本文所述方法体系和功能性的软件代码的机器或计算机可读介质包括物理计算机存储介质。存储介质可以是可被计算机访问的任何可用介质。作为示例而非限制,这些计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或可被用来存储指令或数据结构形式的期望程序代码且可被计算机访问的任何其它介质。如本文所用的盘(disk)和/或碟(disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)常常磁性地再现数据而碟(disc)用激光来光学地再现数据。上述的组合也应被包括在计算机可读介质的范围内。
除了存储在计算机可读介质上,指令和/或数据还可作为包括在通信装置中的传输介质上的信号来提供。例如,通信装置可包括具有表示指令和数据的信号的收发机。这些指令和数据被配置成致使一个或多个处理器实现权利要求中叙述的功能。
尽管已详细描述了本教导及其优点,但是应当理解,能在本文中作出各种改变、替代和变更而不会脱离如由所附权利要求所定义的本教导的技术。而且,本申请的范围并非旨在被限定于说明书中所描述的过程、机器、制造、物质组成、装置、方法和步骤的特定方面。因为本领域普通技术人员将容易地从本公开领会到,根据本教导,可以利用现存或今后开发的与本文所描述的相应方面执行基本相同的功能或达成基本相同的结果的过程、机器、制造、物质组成、装置、方法或步骤。相应地,所附权利要求旨在将这样的过程、机器、制造、物质组成、装置、方法或步骤包括在其范围内。
Claims (15)
1.一种三元内容可寻址存储器(TCAM)内的方法,所述方法包括:
在当前TCAM级的上拉晶体管的栅极处接收来自先前TCAM级的第一匹配线输出;
在所述当前TCAM级的下拉晶体管的栅极处接收所述第一匹配线输出;
当所述第一匹配线输出指示失配时,经由所述下拉晶体管将所述当前TCAM级处的匹配线逆设置为低值;
当所述第一匹配线输出指示匹配时,经由所述上拉晶体管将所述当前TCAM级处的匹配线逆设置为高值;
响应于搜索值与键值之间的失配或者搜索值的补与掩码值之间的失配而下拉所述匹配线逆上的高值,以及响应于所述搜索值与所述键值之间的匹配或者所述搜索值的补与所述掩码值之间的匹配而不下拉所述匹配线逆上的高值;以及
使所述匹配线逆上的高值或低值反相以生成第二匹配线输出。
2.如权利要求1所述的方法,其特征在于,进一步包括:
当所述第一匹配线输出指示匹配时,将搜索值与所述当前TCAM级的单元的数据进行比较。
3.如权利要求2所述的方法,其特征在于,进一步包括:经由所述当前TCAM级的第二匹配线输出将所述比较的结果输出给后续TCAM级。
4.如权利要求2所述的方法,其特征在于,所述单元是静态随机存取存储器(SRAM)单元。
5.如权利要求1所述的方法,其特征在于,每个TCAM级至少包括所述上拉晶体管、所述下拉晶体管、搜索线、掩码单元、所述匹配线逆、第二匹配线输出、和键单元。
6.一种三元内容可寻址存储器TCAM,包括:
用于在当前TCAM级处接收来自先前TCAM级的匹配线输出的上拉装置;
用于在所述当前TCAM级处接收来自所述先前TCAM级的所述匹配线输出的下拉装置;
用于当来自所述先前TCAM级的所述匹配线输出指示失配时,经由所述下拉装置将所述当前TCAM级处的匹配线逆设置为低值的装置;
用于当来自所述先前TCAM级的所述匹配线输出指示匹配时,经由所述上拉装置将所述当前TCAM级处的所述匹配线逆设置为高值的装置;
用于响应于搜索值与键值之间的失配或者搜索值的补与掩码值之间的失配而下拉所述匹配线逆上的高值,以及响应于所述搜索值与所述键值之间的匹配或者所述搜索值的补与所述掩码值之间的匹配而不下拉所述匹配线逆上的高值的装置;以及
用于使所述匹配线逆上的高值或低值反相以生成第二匹配线输出的装置。
7.如权利要求6所述的TCAM,其特征在于,进一步包括:
用于当来自所述先前TCAM级的所述匹配线输出指示匹配时,将搜索值与单元的数据进行比较的装置。
8.如权利要求7所述的TCAM,其特征在于,进一步包括:用于将所述比较的结果输出给后续TCAM级的装置。
9.如权利要求7所述的TCAM,其特征在于,所述单元是静态随机存取存储器装置。
10.如权利要求6所述的TCAM,其特征在于,每个TCAM级至少包括所述上拉装置、所述下拉装置、搜索装置、掩码存储器装置、所述匹配线逆、匹配输出装置、和键存储器装置。
11.一种三元内容可寻址存储器TCAM,包括:
上拉晶体管堆叠,其配置成在当前TCAM级处接收来自先前TCAM级的第一匹配线输出,当所述第一匹配线输出指示匹配时,所述上拉晶体管堆叠将所述当前TCAM级处的匹配线逆设置为高值;
下拉晶体管,其配置成在所述当前TCAM级处接收所述第一匹配线输出,当所述第一匹配线输出指示失配时,所述下拉晶体管将所述当前TCAM级处的所述匹配线逆设置为低值;
TCAM单元,其用于响应于搜索值与键值之间的失配或者搜索值的补与掩码值之间的失配而下拉所述匹配线逆上的高值,以及响应于所述搜索值与所述键值之间的匹配或者所述搜索值的补与所述掩码值之间的匹配而不下拉所述匹配线逆上的高值;以及
反相器,其用于使所述匹配线逆上的高值或低值反相以生成第二匹配线输出。
12.如权利要求11所述的TCAM,其特征在于,进一步包括:
键单元,其配置成当所述第一匹配线输出指示匹配时,将搜索值与所述键单元的数据进行比较;以及
掩码单元,其配置成当所述第一匹配线输出指示匹配时,将搜索值的补与所述掩码单元的数据进行比较。
13.如权利要求12所述的TCAM,其特征在于,所述第二匹配线输出被配置成将所述当前TCAM级的所述比较的结果输出给后续TCAM级。
14.如权利要求12所述的TCAM,其特征在于,所述键单元和所述掩码单元是静态随机存取存储器(SRAM)单元。
15.如权利要求11所述的TCAM,其特征在于,每个TCAM级至少包括所述上拉晶体管堆叠、所述下拉晶体管、搜索线、掩码单元、所述匹配线逆、第二匹配线输出、和键单元。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/727,494 | 2012-12-26 | ||
US13/727,494 US8891273B2 (en) | 2012-12-26 | 2012-12-26 | Pseudo-NOR cell for ternary content addressable memory |
PCT/US2013/076835 WO2014105680A1 (en) | 2012-12-26 | 2013-12-20 | Pseudo-nor cell for ternary content addressable memory |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104813405A CN104813405A (zh) | 2015-07-29 |
CN104813405B true CN104813405B (zh) | 2017-09-05 |
Family
ID=49958701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380060697.5A Active CN104813405B (zh) | 2012-12-26 | 2013-12-20 | 用于三元内容可寻址存储器的伪nor单元 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8891273B2 (zh) |
EP (1) | EP2939242B1 (zh) |
JP (2) | JP2016505191A (zh) |
KR (1) | KR101557926B1 (zh) |
CN (1) | CN104813405B (zh) |
TW (1) | TW201435873A (zh) |
WO (1) | WO2014105680A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8934278B2 (en) | 2012-12-28 | 2015-01-13 | Qualcomm Incorporated | Hybrid ternary content addressable memory |
US8958226B2 (en) | 2012-12-28 | 2015-02-17 | Qualcomm Incorporated | Static NAND cell for ternary content addressable memory (TCAM) |
CN105047223B (zh) * | 2015-08-03 | 2017-12-26 | 大连理工大学 | 一种或型级联匹配线结构 |
JP6533129B2 (ja) * | 2015-08-28 | 2019-06-19 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
KR20180028020A (ko) * | 2016-09-07 | 2018-03-15 | 르네사스 일렉트로닉스 가부시키가이샤 | 반도체 장치 |
US9941008B1 (en) * | 2017-03-23 | 2018-04-10 | National Taiwan University | Ternary content addressable memory device for software defined networking and method thereof |
KR20200086144A (ko) * | 2019-01-08 | 2020-07-16 | 울산과학기술원 | 3진 메모리 셀 및 이를 포함하는 메모리 장치 |
TWI794510B (zh) * | 2019-06-12 | 2023-03-01 | 聯華電子股份有限公司 | 三元內容可定址記憶體單元 |
CN111341365B (zh) * | 2020-03-05 | 2022-02-15 | 北京大学 | 三态内容可寻址存储器及其操作方法 |
KR102481452B1 (ko) | 2021-07-14 | 2022-12-23 | 연세대학교 산학협력단 | 강유전체 소자 기반 nor 타입 내용 주소화 메모리 셀 및 이를 포함하는 내용 주소화 메모리 |
KR102598015B1 (ko) | 2021-07-29 | 2023-11-02 | 연세대학교 산학협력단 | 내용 주소화 메모리 및 이를 위한 매치라인 센스 앰프 |
KR20230162331A (ko) | 2022-05-20 | 2023-11-28 | 연세대학교 산학협력단 | 강유전체 트랜지스터 기반 내용 주소화 메모리 셀 및 이를 포함하는 내용 주소화 메모리 |
US12001719B2 (en) * | 2022-06-27 | 2024-06-04 | Western Digital Technologies, Inc. | Storage media based search function for key value data storage devices |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044005A (en) | 1999-02-03 | 2000-03-28 | Sibercore Technologies Incorporated | Content addressable memory storage device |
US6574702B2 (en) | 1999-02-23 | 2003-06-03 | Netlogic Microsystems, Inc. | Method and apparatus for determining an exact match in a content addressable memory device |
US6411538B1 (en) | 2000-11-28 | 2002-06-25 | Silicon Access Networks | Compact load-less static ternary CAM |
US6400593B1 (en) | 2001-02-08 | 2002-06-04 | Intregrated Device Technology, Inc. | Ternary CAM cell with DRAM mask circuit |
US6385070B1 (en) | 2001-03-13 | 2002-05-07 | Tality, L.P. | Content Addressable Memory array, cell, and method using 5-transistor compare circuit and avoiding crowbar current |
US6768659B2 (en) * | 2001-12-31 | 2004-07-27 | Mosaid Technologies Incorporated | Circuit and method for reducing power usage in a content addressable memory |
US6760242B1 (en) | 2002-04-10 | 2004-07-06 | Integrated Device Technology, Inc. | Content addressable memory (CAM) devices having speed adjustable match line signal repeaters therein |
JP2003272386A (ja) * | 2002-03-20 | 2003-09-26 | Mitsubishi Electric Corp | Tcamセル、tcamセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置 |
KR100435804B1 (ko) * | 2002-06-28 | 2004-06-10 | 삼성전자주식회사 | 터너리 내용 주소화 메모리 장치 |
US6906937B1 (en) | 2003-03-21 | 2005-06-14 | Netlogic Microsystems, Inc. | Bit line control circuit for a content addressable memory |
US6900999B1 (en) | 2003-06-30 | 2005-05-31 | Integrated Device Technology, Inc. | Ternary content addressable memory (TCAM) cells with small footprint size and efficient layout aspect ratio |
JP4541077B2 (ja) * | 2004-01-13 | 2010-09-08 | 株式会社日立超エル・エス・アイ・システムズ | 半導体記憶装置 |
US7120040B2 (en) | 2004-06-01 | 2006-10-10 | Mosaid Technologies Incorporation | Ternary CAM cell for reduced matchline capacitance |
US7555594B2 (en) | 2004-07-22 | 2009-06-30 | Netlogic Microsystems, Inc. | Range representation in a content addressable memory (CAM) using an improved encoding scheme |
US7050318B1 (en) | 2004-10-01 | 2006-05-23 | Netlogic Microsystems, Inc. | Selective match line pre-charging in a CAM device using pre-compare operations |
US7286379B1 (en) | 2005-09-08 | 2007-10-23 | Lsi Corporation | Content addressable memory (CAM) architecture and method of operating the same |
US7355890B1 (en) | 2006-10-26 | 2008-04-08 | Integrated Device Technology, Inc. | Content addressable memory (CAM) devices having NAND-type compare circuits |
JP2008171494A (ja) * | 2007-01-10 | 2008-07-24 | Kawasaki Microelectronics Kk | 連想メモリ装置 |
US8125810B2 (en) | 2007-08-01 | 2012-02-28 | Texas Instruments Incorporated | Low power ternary content-addressable memory (TCAM) |
US7633830B2 (en) | 2007-11-29 | 2009-12-15 | Agere Systems Inc. | Reduced leakage driver circuit and memory device employing same |
US8169808B2 (en) | 2008-01-25 | 2012-05-01 | Micron Technology, Inc. | NAND flash content addressable memory |
US7940541B2 (en) | 2008-05-21 | 2011-05-10 | Texas Instruments Incorporated | Bit cell designs for ternary content addressable memory |
TWI369683B (en) | 2008-06-11 | 2012-08-01 | Realtek Semiconductor Corp | Content addressable memory |
US8717793B2 (en) | 2009-05-26 | 2014-05-06 | Arizona Board Of Regents, For And On Behalf Of Arizona State University | Longest prefix match internet protocol content addressable memories and related methods |
US8582338B1 (en) * | 2010-08-31 | 2013-11-12 | Netlogic Microsystems, Inc. | Ternary content addressable memory cell having single transistor pull-down stack |
US8958226B2 (en) | 2012-12-28 | 2015-02-17 | Qualcomm Incorporated | Static NAND cell for ternary content addressable memory (TCAM) |
US8934278B2 (en) | 2012-12-28 | 2015-01-13 | Qualcomm Incorporated | Hybrid ternary content addressable memory |
-
2012
- 2012-12-26 US US13/727,494 patent/US8891273B2/en not_active Expired - Fee Related
-
2013
- 2013-12-20 KR KR1020157020101A patent/KR101557926B1/ko active IP Right Grant
- 2013-12-20 EP EP13821582.7A patent/EP2939242B1/en not_active Not-in-force
- 2013-12-20 WO PCT/US2013/076835 patent/WO2014105680A1/en active Application Filing
- 2013-12-20 CN CN201380060697.5A patent/CN104813405B/zh active Active
- 2013-12-20 JP JP2015550687A patent/JP2016505191A/ja not_active Withdrawn
- 2013-12-24 TW TW102148001A patent/TW201435873A/zh unknown
-
2016
- 2016-09-26 JP JP2016186797A patent/JP6325044B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP6325044B2 (ja) | 2018-05-16 |
JP2016505191A (ja) | 2016-02-18 |
EP2939242A1 (en) | 2015-11-04 |
CN104813405A (zh) | 2015-07-29 |
JP2017037700A (ja) | 2017-02-16 |
WO2014105680A1 (en) | 2014-07-03 |
KR101557926B1 (ko) | 2015-10-06 |
EP2939242B1 (en) | 2016-09-07 |
US20140177310A1 (en) | 2014-06-26 |
US8891273B2 (en) | 2014-11-18 |
TW201435873A (zh) | 2014-09-16 |
KR20150091530A (ko) | 2015-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104813405B (zh) | 用于三元内容可寻址存储器的伪nor单元 | |
CN104823243B (zh) | 混合三元内容可寻址存储器 | |
CN104885159B (zh) | 用于三态内容可寻址存储器(tcam)的静态nand单元 | |
CN103875038B (zh) | 减少多端口sram存储器单元中的泄漏功率的方法和设备 | |
US8971096B2 (en) | Wide range multiport bitcell | |
US9007858B2 (en) | SRAM global precharge, discharge, and sense | |
JP2017532710A5 (zh) | ||
TWI570726B (zh) | 低功率內容可定址記憶體系統 | |
US9087563B2 (en) | SRAM local evaluation and write logic for column selection | |
US8773880B2 (en) | Content addressable memory array having virtual ground nodes | |
Immadisetti et al. | Low Power Pre-Charge Free DCAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |