用于三元内容可寻址存储器的伪nor单元的制作方法

文档序号:8491810阅读:307来源:国知局
用于三元内容可寻址存储器的伪nor单元的制作方法
【技术领域】
[0001 ] 本公开一般涉及三元内容可寻址存储器(TCAM)。具体而言,本公开涉及TCAM的伪 NOR架构。
[0002] 背景
[0003] TCAM通常被用于路由器和以太网交换机中以用于网际协议(IP)地址转发。存储 元件通常使用动态N0R/NAND(或非/与非)类型单元来设计。
[0004] 内容可寻址存储器(CAM)支持读取操作、写入操作、以及比较操作。与CAM中条目 的宽度(例如,每字比特)相同的比较总线在时钟边沿处输入。比较总线的数据与CAM中 的每个条目同时进行比较。也就是说,比较是并行发生的,因此总线可在一个时钟循环期间 与CAM中的每个条目进行比较。当条目中的每个比特与比较总线中的对应比特相匹配时, 条目是匹配。替换地,当条目中的任何比特与比较总线中的对应比特不相匹配时,条目是失 配。CAM中的条目的比特或为0,或为1。
[0005] TCAM类似于CAM,外加可存储于单元中的掩码值。该掩码值可被称为本地掩码。掩 码值不与比较比特进行比较,由此比较结果将总是匹配。
[0006] 图1解说常规TCAM100的架构。如图1中所解说的,搜索字(诸如,"1101")被 输入到TCAM100的寄存器150。该搜索字与TCAM单元110中所存储的值进行比较。TCAM 通常每级具有16个TCAM单元。搜索跨TCAM单元110同时进行。TCAM单元110的内容可 以是高比特(1)、低比特(0)、或掩码值(X)。在搜索之前,每组TCAM单元120-126的匹配 线130-136被设置为高。匹配线130-136被输入到优先级编码器140。TCAM100输出(ML fl5a)与搜索字线相匹配的那组TCAM单元的地址。由于该搜索是并行搜索,所以该搜索可在 一个时钟循环中完成。应注意,掩码值可以是〇或1,此外,在本公开中,掩码值可被称为X。
[0007] 作为示例,如图1中所解说的,第一组TCAM单元120被设置成"IX01",第二组 TCAM单元122被设置成"10X1",第三组TCAM单元124被设置成"1IXX",并且第四组 TCAM单元126被设置成"IXIX"。在将TCAM单元的内容与搜索比特进行比较时,在TCAM 单元的内容为掩码值X的情况下,该比较将产生匹配。因此,根据图1中所解说的示例,第 一组TCAM单元120和第三组TACM单元124与寄存器150中的搜索字相匹配。相应地,第 一组TCAM单元120和第三组TCAM单元124的匹配线130、134将指示匹配,并且优先级编 码器140输出第一组TCAM单元120和第三组TCAM单元124的地址。
[0008] 常规TCAM架构是动态电路并且具有高动态功率耗散。在一些情形中,TCAM可具 有动态NAND架构。在其他情形中,TCAM可具有动态NOR架构。
[0009] 图2解说了常规动态NANDTCAM200。如图2中所解说的,动态NAND架构200包 括从上拉晶体管210通过预充电线PRE#充电的匹配线MLNAND。匹配线MLNAm被连接至一连 串中间匹配线MU-MLm。中间匹配线MU-MLm中的每一条中间匹配线经由传输门被耦合至 掩码单元Maskd-MasU和键单元Key「KeyM。传输门包括親合至键单元Keyd-KeyM的键 NM0S晶体管202以及耦合至掩码单元Mash-Mask^的掩码NM0S晶体管204。
[0010] 掩码单元Mask^-Mask^的内容在展开掩码单元222中解说。如展开掩码单元222 中所示,掩码单元Mash-Mask^是SRAM单元,其包括掩码值M、掩码值逆(bar)M#、掩码字线WLM、掩码比特线BLM、以及掩码比特线逆BLM#。键单元Key^KeyM的内容在展开键单元220 中解说。如展开键单元220中所示,键单元Key^KeyM是具有XNOR逻辑的SRAM单元。键 单元Key^KeyM还包括搜索线SL、搜索线逆SL#、键比特线BLK、键比特线逆BLK#、键值K、 键逆值K#、以及键写入线WLK。
[0011] 在动态NANDTCAM架构中,匹配线被预充电为高并在评估为低时指示匹配。即,预 充电信号在每个循环期间被用于每条匹配线以将匹配线设置为高。取决于掩码单元或键单 元的状态,匹配线可被拉低或保持为高。每条中间匹配线与掩码单元及键单元相关联。此 外,每个键单元进一步包括XNOR逻辑。动态NANDTCAM使用串行操作。因此,当先前的中 间匹配线(n-2)被拉低以指示匹配时,中间匹配线(n-1)可放电(例如,与搜索线的值进 行比较)。也就是说,当存在匹配时操作从一条中间匹配线(n-2)继续到后续中间匹配线 (n-1),而当存在失配时,停止穿过中间匹配线前进。
[0012] 在动态NORTCAM架构中,匹配线被预充电为高并在评估为低时指示失配。大多数 比较产生失配,因此动态NOR由于从高向低切换以指示失配而具有增加的功耗。此外,动态 NOR具有复杂的定时控制,这是因为预充电信号在每个时钟循环中被每个匹配线使用。
[0013] 图3解说常规动态NORTCAM300。如图3中所解说的,动态NORTCAM300包括键 单元Keya-Key^和掩码单元Maska-Mask^。通常,NORTCAM(诸如图3的NORTCAM300)可 具有16个键单元和掩码单元。数据是经由搜索线(SI^-SLm和SL^-SLm#)输入的。数据 与键单元KeyfKeyM和掩码单元Maskd-Maskj^中所存储的值进行比较。匹配线MLNQK和搜索 线(SU-SU和SLW-SLj)从上拉晶体管303通过预充电线PRE#预充电为高。当经由搜索 线(SLa-SI^和SLaft-SI^#)之一输入的数据与单元Keya-Keyj^Maska-Maskj^之一中所存 储的数据之间存在失配时,匹配线MLN〇K将评估为低。当所有单元Keyd-Key^Maskd-Maslvi 的值匹配于输入数据时,匹配线保持为高。
[0014] 键单元Keyd-Key^的结构在展开键单元330中解说,而掩码单元MaskfMask^的 结构在展开掩码单元333中解说。如展开键单元330中所解说的,键单元KeyfKeyM是通过 SRAM单元来实现的。在比较操作期间,键逆K#与搜索线SL进行与操作。键单元Keyd-KeyM 包括比特线BLK、比特线逆BLK#、以及字线WLK。
[0015] 如展开掩码单元333中所解说的,掩码单元Mask^-Mask^是通过SRAM单元来实现 的。在比较操作期间,掩码逆K#与搜索线逆SL#进行与操作。掩码单元Maskd-Mask^包括 比特线BLM、比特线逆BLM#、以及字线WLM。
[0016] 表1是动态NORTCAM的真值表。表1示出基于掩码单元(M)、键单元(K)、以及搜 索线(SL和SL#)的值的匹配线的值。应注意,状态是指存储元件(键单元和掩码单元)的 状态。当键比特具有值0时状态为0,当键比特具有值1时状态为1,并且当掩码比特和键 比特均为1时状态为X。状态X是指既不存在匹配又不存在失配的掩码状态,更确切地,在 搜索线的值与掩码单元及键单元的值之间不存在比较的掩码状态。因此,匹配线常常指示 匹配。
[0017]
【主权项】
1. 一种三元内容可寻址存储器(TCAM)内的方法,所述方法包括: 在当前TCAM级的上拉晶体管的栅极处接收来自先前TCAM级的第一匹配线输出; 在所述当前TCAM级的下拉晶体管的栅极处接收所述第一匹配线输出; 当所述第一匹配线输出指示失配时,经由所述下拉晶体管将所述当前TCAM级处的匹 配线逆设置为低值;以及 当所述第一匹配线输出指示匹配时,经由所述上拉晶体管将所述当前TCAM级处的匹 配线逆设置为高值。
2. 如权利要求1所述的方法,其特征在于,进一步包括: 当所述第一匹配线输出指示匹配时,将搜索值与所述当前TCAM级的单元的数据进行 比较。
3. 如权利要求2所述的方法,其特征在于,进一步包括:经由所述当前TCAM级的第二 匹配线输出将所述比较的结果输出给后续TCAM级。
4. 如权利要求2所述的方法,其特征在于,所述单元是静态随机存取存储器(SRAM)单 JL〇
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级处的所述匹配线逆设置为高值。
12. 如权利要求11所述的TCAM,其特征在于,进一步包括: 键单元,其配置成当所述第一匹配线输出指示匹配时,将搜索值与所述键单元的数据 进行比较;以及 掩码单元,其配置成当所述第一匹配线输出指示匹配时,将搜索逆值与所述掩码单元 的数据进行比较。
13. 如权利要求12所述的TCAM,其特征在于,进一步包括:第二匹配线输出,其配置成 将所述当前TCAM级的所述比较的结果输出给后续TCAM级。
14. 如权利要求12所述的TCAM,其特征在于,所述键单元和所述掩码单元是静态随机 存取存储器(SRAM)单元。
15. 如权利要求11所述的TCAM,其特征在于,每个TCAM级至少包括所述上拉晶体管堆 叠、所述下拉晶体管、搜索线、掩码单元、所述匹配线逆、第二匹配线输出、和键单元。
【专利摘要】三元内容可寻址存储器(TCAM)内的方法包括:在当前TCAM级的上拉晶体管的栅极处和在当前TCAM级的下拉晶体管的栅极处接收来自先前TCAM级的匹配线输出。当来自先前TCAM级的匹配线输出指示失配时,该方法经由下拉晶体管将当前TCAM级处的匹配线逆设置为低值。当来自先前TCAM级的匹配线输出指示匹配时,该方法还经由上拉晶体管将当前TCAM级处的匹配线逆设置为高值。
【IPC分类】G11C15-04
【公开号】CN104813405
【申请号】CN201380060697
【发明人】R·瓦蒂孔达, N·德塞, C·郑
【申请人】高通股份有限公司
【公开日】2015年7月29日
【申请日】2013年12月20日
【公告号】US8891273, US20140177310, WO2014105680A1
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1