存储器匹配线动态锁存电路的制作方法

文档序号:11954866阅读:235来源:国知局
存储器匹配线动态锁存电路的制作方法与工艺

本发明涉及存储器技术领域,特别是涉及一种存储器匹配线动态锁存电路。



背景技术:

TCAM(ternary content addressable memory)是一种三态内容可寻址存储器,主要用于网络路由芯片的ACL(Access Control List,访问控制列表)查找。TCAM可以比较逻辑“1”和逻辑“0”外还可以有一种状态是“don’t care”不比较,因此称之为三态比较。

TCAM的存储单元组成一个阵列,在一行上的所有存储单元都挂在ml(match line,匹配线)上,当这一行的所有存储单元都匹配时ml=1,当有大于等于1个存储单元不匹配时就会mismatch(不匹配),ml被下拉到0。在一个TCAM存储阵列当中通常只会有少数存储单元行匹配,而其它的存储单元行都处在mismatch的状态,各存储单元行的状态通常是路由表的应用决定的,而路由表一般不会存相同的内容到不同行去。这样就会导致每一次搜索TCAM时,大部分行的ml需要充放电。

传统的TCAM都是将ml充电到电源电压vdd,然后mismatch时将ml放电到0电位。ml的电压总是在电源电压和地之间翻转,导致TCAM功耗非常大。



技术实现要素:

基于此,有必要针对上述问题,提供一种可降低存储器功耗的存储器匹配线动态锁存电路。

一种存储器匹配线动态锁存电路,包括电压控制电路、预充电保持电路和锁存电路,所述电压控制电路连接存储器的匹配线,所述预充电保持电路包括控制端和输出端,所述预充电保持电路的控制端用于接收控制信号,所述预充电保持电路的输出端连接所述电压控制电路和锁存电路,

所述电压控制电路用于接收使能信号,在所述使能信号为第一类型电平且所述匹配线对应的存储单元不进行搜索时,接收所述预充电保持电路输出的电源电压进行分压后对所述匹配线进行充电;

所述预充电保持电路在所述控制信号为第一类型电平时接入外部电源,并由所述预充电保持电路的输出端输出电源电压,以及在所述控制信号为第二类型电平时停止接入外部电源,并使所述预充电保持电路的输出端的电平保持为所述电源电压;

所述锁存电路用于接收采样时钟信号,所述锁存电路在所述采样时钟信号为第一类型电平,且所述预充电保持电路的输出端输出第二类型电平时处于保持状态;在所述采样时钟信号为第二类型电平,且所述预充电保持电路的输出端输出第一类型电平时输出第二类型电平;在所述采样时钟信号为第二类型电平,且所述预充电保持电路的输出端输出第二类型电平时输出第一类型电平。

上述存储器匹配线动态锁存电路,预充电保持电路在控制信号为第一类型电平时接入外部电源进行预充电,并在控制信号为第二类型电平时保持输出端电平为电源电压。电压控制电路在使能信号为第一类型电平且匹配线对应的存储单元不进行搜索时,对预充电保持电路的输出端的电源电压进行分压后对匹配线进行充电。通过电压控制电路对匹配线进行充电控制,使匹配线在充放电时在电源电压分压之后的电压与地之间翻转,降低了匹配线的翻转电压,能有效减少存储器所耗费的功耗。

附图说明

图1为一实施例中存储器匹配线动态锁存电路的结构示意图;

图2为一实施例中存储器匹配线动态锁存电路的原理图;

图3为一实施例中存储器匹配线动态锁存电路相关信号的波形图;

图4为另一实施例中存储器匹配线动态锁存电路相关信号的波形图。

具体实施方式

在一个实施例中,一种存储器匹配线动态锁存电路,适用于TCAM(ternary content addressable memory,三态内容寻址存储器)等存储器。如图1所示,该电路包括电压控制电路110、预充电保持电路120和锁存电路130,电压控制电路110连接存储器的匹配线ml,预充电保持电路120包括控制端和输出端,预充电保持电路120的控制端用于接收控制信号pch,预充电保持电路120的输出端连接电压控制电路110和锁存电路130。

电压控制电路110用于接收使能信号en_lp,在使能信号en_lp为第一类型电平且匹配线ml对应的存储单元不进行搜索时,接收预充电保持电路120输出的电源电压进行分压后对匹配线ml进行充电。

电平的类型具体包括高电平和低电平两种,本实施例中,第一类型电平为低电平,第二类型电平为高电平,可以理解,在其他实施例中,也可以是第一类型电平为高电平,第二类型电平为低电平。电压控制电路110在使能信号en_lp为低电平且匹配线ml对应的存储单元不进行搜索时,对预充电保持电路120输出的电源电压进行分压处理,利用分压后的电压对匹配线ml进行充电,使匹配线在充放电时在分压之后的电压与地之间翻转。此外,电压控制电路110还可在使能信号en_lp为高电平时处于导通状态,使预充电保持电路120与匹配线ml连接。

预充电保持电路120在控制信号pch为第一类型电平时接入外部电源(电源电压为vdd),并由预充电保持电路120的输出端输出电源电压vdd,以及在控制信号pch为第二类型电平时停止接入外部电源,并使预充电保持电路120的输出端的电平保持为电源电压vdd。

具体地,预充电保持电路120在控制信号pch为低电平时接入外部电源进行预充电,使其输出端的电平达到电源电压vdd。若匹配线ml对应的存储单元不进行搜索,预充电保持电路120输出的电压经降压后对匹配线ml进行充电。预充电保持电路120在控制信号pch为高电平时停止接入外部电源,使其输出端电平保持为电源电压VDD,即输出端为高电平。若匹配线ml对应的存储单元进行搜索,此时匹配线ml包括匹配和不匹配两种状态,匹配线ml处于不匹配状态时接地,预充电保持电路120的输出端电平降低至低电平;匹配线ml处于匹配状态时为高电平,预充电保持电路120的输出端电平继续保持为高电平。

锁存电路130用于接收采样时钟信号clk_s,锁存电路130在采样时钟信号clk_s为第一类型电平,且预充电保持电路120的输出端输出第二类型电平时处于保持状态;在采样时钟信号clk_s为第二类型电平,且预充电保持电路120的输出端输出第一类型电平时输出第二类型电平;在采样时钟信号clk_s为第二类型电平,且预充电保持电路120的输出端输出第二类型电平时输出第一类型电平。

具体地,锁存电路130根据采样时钟信号clk_s和预充电保持电路120的输出端电平的类型不同,由锁存电路130的输出端ml_o输出对应的电平信号。锁存电路130在采样时钟信号clk_s为低电平且预充电保持电路120的输出端为高电平时处于保持状态,锁存电路130的输出端ml_o保持上一次送出的值。本实施例中,控制信号pch和采样时钟信号clk_s为相同的时钟信号,同时为高电平或低电平。

上述存储器匹配线动态锁存电路,预充电保持电路120在控制信号pch为第一类型电平时接入外部电源进行预充电,并在控制信号pch为第二类型电平时保持输出端电平为电源电压vdd。电压控制电路110在使能信号en_lp为第一类型电平且匹配线ml对应的存储单元不进行搜索时,对预充电保持电路120的输出端的电源电压进行分压后对匹配线ml进行充电。通过电压控制电路110对匹配线ml进行充电控制,使匹配线ml在充放电时在电源电压vdd分压之后的电压与地之间翻转,降低了匹配线ml的翻转电压,能有效减少存储器所耗费的功耗。

在一个实施例中,如图2所示,电压控制电路110包括第一开关管PM0、第二开关管NM2和第一反相器I7。第一反相器I7的输入端用于接收使能信号en_lp,第一反相器I7的输出端连接第一开关管PM0的控制端。第一开关管PM0的第一端连接匹配线ml,第一开关管PM0的第二端连接预充电保持电路120的输出端。第二开关管NM2的控制端接入外部电源vdd,第二开关管NM2的第一端连接预充电保持电路120的输出端,第二开关管NM2的第二端连接匹配线ml。

第一开关管PM0、第二开关管NM2和第一反相器I7控制匹配线ml预充电的电压。第一开关管PM0和第二开关管NM2的具体类型并不唯一,本实施例中,第一开关管PM0为P沟道MOS管,栅极作为第一开关管PM0的控制端,源极作为第一开关管PM0的第一端,漏极作为第一开关管PM0的第二端。第二开关管NM2为N沟道MOS管,栅极作为第二开关管NM2的控制端,漏极作为第二开关管NM2的第一端,源极作为第二开关管NM2的第二端。

在一个实施例中,充电保持电路120包括第三开关管PM1、第四开关管PM2、第五开关管NM1、第六开关管NM0和第二反相器I4。第三开关管PM1的控制端和第五开关管NM1的控制端作为预充电保持电路120的控制端,接收控制信号pch;第三开关管PM1的输入端接入外部电源vdd,第三开关管PM1的输出端连接预充电保持电路120的输出端lm_int。第四开关管PM2的输入端接入外部电源vdd,第四开开关管PM2的输出端连接预充电保持电路120的输出端lm_int。第二反相器I4的输入端连接预充电保持电路120的输出端lm_int,第二反相器I4的输出端连接第四开关管PM2的控制端。

第五开关管NM1的输入端连接预充电保持电路120的输出端lm_int,第五开关管NM1的输出端连接第六开关管NM0的输入端,第六开关管NM0的输出端连接接地端gnd,第六开关管NM0的控制端连接预充电保持电路120的输出端lm_int。

其中,第三开关管PM1为预充电管,第四开关管PM2为高电平保持管,用于保持预充电保持电路120的输出端lm_int的高电平,第六开关管NM0为低电平保持管,第三开关管PM1、第四开关管PM2、第五开关管NM1、第六开关管NM0和第二反相器I4共同组成预充电和保持功能电路。第三开关管PM1、第四开关管PM2、第五开关管NM1和第六开关管NM0的具体类型并不唯一,本实施例中,第三开关管PM1和第四开关管PM2为P沟道MOS管,第五开关管NM1和第六开关管NM0为N沟道MOS管。

在一个实施例中,锁存电路130包括第一与非门器件I0、第二与非门器件I1和第三与非门器件I2。第一与非门器件I0的第一输入端接收采样时钟信号clk_s,第一与非门I0的第二输入端连接预充电保持电路120的输出端,第一与非门器件I0的输出端连接第二与非门器件I1的第一输入端,第二与非门器件I1的第二输入端连接第三与非门器件I2的输出端,第二与非门器件I1的输出端连接第三与非门器件I2的第一输入端,第三与非门器件I2的第二输入端连接预充电保持电路120的输出端,第三与非门器件I2的输出端作为锁存电路130的输出端ml_o。

下面结合具体实施例对存储器匹配线动态锁存电路的工作原理进行详细的解释说明。

继续参照图2,用“0”表示低电平,“1”表示高电平,控制信号pch和采样时钟信号clk_s为相同的时钟信号。以TCAM为例,TCAM阵列通常根据数据搜索的需求确定搜索的字长和同时搜索的条目,把大阵列分为小阵列如128x88,128行和88列,88个TCAM存储单元组成一行,这样的行会有128条,每一列的所有比较管子的栅极都接到同一条搜索线(search line),这样就会有88列的搜索线。

其中一存储单元的比较电路220包括MOS管NM8、MOS管NM9、MOS管NM10和MOS管NM11四个动态比较管。MOS管NM8和MOS管NM9的栅极是两个TCAM存储单元的存储节点qx和qy,MOS管NM9的栅极qx=1,NM8的栅极qy=0。存储单元匹配时,MOS管NM9和MOS管NM11不同时导通,MOS管NM8和MOS管NM10不同时导通。存储单元不匹配时,MOS管NM9和MOS管NM11同时导通,或者MOS管NM8和MOS管NM10同时导通。sl0、slb0为一列的搜索线,不搜索的时候sl0=0,slb0=0,搜索的时候sl0或slb0其中一根被驱动到逻辑“1”,哪一根变为“1”取决于搜索的数据。

存储单元不进行搜索时,MOS管NM10和MOS管NM11均不导通,可对匹配线ml进行充电。当存储单元进行搜索时,匹配线ml包括匹配和不匹配两种状态,若所有存储单元都匹配,则匹配线ml处于匹配状态;若存在一个存储单元不匹配,则匹配线ml处于不匹配状态。考虑这一行上其余的所有存储单元都匹配,只有比较电路220所对应的存储单元不匹配或匹配的情况来说明匹配线动态锁存的过程。

考虑使能信号en_lp=“1”的情况,使能信号en_lp经过第一反向器I7接到第一开关管PM0的栅极,第一开关管PM0一直导通。

控制信号pch=“0”时,预充电保持电路120将其输出端lm_int预充电到电源电压vdd,因为第一开关管PM0一直导通,可以把预充电保持电路120的输出端ml_int的电源电压vdd完全传输到匹配线ml上,匹配线ml也会被充到电源电压vdd。此时采样时钟信号clk_s=“0”,而预充电保持电路120的输出端ml_int=“1”,第二与非门器件I1和第三与非门器件I2组成的RS触发器处在保持状态,其锁存电路130的输出端ml_o保持上一次送出的值。

控制信号pch=“1”时,第三开关管PM1关闭,充电保持电路120输出端端lm_int的电平靠第四开关管PM2导通来维持。采样时钟信号clk_s=“1”。这时搜索字可以送输入存储单元。

若比较电路220所对应的存储单元不匹配,则sl0=“1”,slb0=“0”,MOS管NM9和MOS管NM11同时导通,匹配线ml被下拉到了“0”。因为第二开关管MN2强导通,第四开关管PM2为弱管,经过一段时间预充电保持电路120的输出端lm_int被拉到了“0”,锁存电路130的输出端ml_o输出“1”。一段时间后采样时钟信号clk_s=“0”,sl0=“0”,控制信号pch又回到“0”,时间预充电保持电路120的输出端lm_int又回到了“1”,那么锁存电路130的输出端ml_o=“1”就被锁在了RS触发器里。

若比较电路220所对应的存储单元匹配,即整条匹配线ml处于匹配状态,sl0=“0”,slb0=“1”,MOS管NM9、MOS管NM11和MOS管NM8、MOS管NM10都不会同时导通,匹配线ml在搜索的时候处于匹配状态,一直等于“1”,预充电保持电路120的输出端ml_int由第四开关管PM2来维持在“1”,而采样时钟信号clk_s此时停在“1”,第一与非门器件I0的两个输入都是“1”,输出为“0”,经过第二与非门器件I1和第三与非门器件I2送出到锁存电路130的输出端ml_o=“0”。经过一段时间采样信号clk_s=“0”,slb0=“0”,控制信号pch又回到“0”,预充电保持电路120的输出端ml_int还是停在“1”,SR触发器就把锁存电路130的输出端ml_o=“0”的值一直锁住。

考虑使能信号en_lp=“0”的情况,跟使能信号en_lp=“1”的不同就在于第一开关管PM0不导通。在充电保持电路120的输出端ml_int被预充电到电源电压vdd时,只通过第二开关管MN2对匹配线ml进行充电,会损失一个阈值电压vth,所以匹配线ml只会被充电到vdd-vth。如果是不匹配的情况匹配线ml被拉到了“0”,锁存电路130的输出端ml_o=“1”;如果是匹配的情况匹配线ml维持在vdd-vth,而充电保持电路120的输出端ml_int还是维持在“1”,锁存电路130的输出端ml_o=“0”。匹配线ml只会在vdd-vth和地之间电压转换,而功耗跟电压成平方关系,并且匹配线ml的电容也非常大,不匹配行的数目非常多,因此可以大大减小不匹配行的功耗。

锁存电路130可以动态锁存住匹配线ml送出来的数据,便于数据很容易再被后级触发器锁存。如图3所示为使能信号en_lp=vdd(高电平)时,存储器匹配线动态锁存电路相关信号的波形图,匹配线ml会被预充电到1.2v。图4所示为使能信号en_lp=0时,存储器匹配线动态锁存电路相关信号的波形图,匹配线ml只会预充电到800mv左右。用户还可通过调节使能信号en_lp的高低电平,控制匹配线ml充放电时的翻转电压,可根据实际需求进行选择。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1