含有隐刷新的动态随机存取存储器内容可寻址存储器单元的制作方法

文档序号:6778017阅读:206来源:国知局
专利名称:含有隐刷新的动态随机存取存储器内容可寻址存储器单元的制作方法
技术领域
本发明总体上涉及半导体存储器器件,具体地涉及一种动态的内容可寻址的存储器(DCAM)单元。
背景技术
现代电信网络包括以包含地址字段的包或块为单位,高速传输数据的数字数据网络,其中地址字段用于通过网络,动态路由传送数据包或数据块(例如,到目标地址)。最快速地搜索所存储的数据可以利用内容可寻址存储器(CAM)来完成。
随着网络(例如,内联网和因特网)规模不断扩大,对较大CAM阵列的需求随之增加,因此,将更多的CAM单元连接到公用位线的需要也随之增加。现有技术中内容可寻址存储器(CAM)阵列通常是利用传统静态随机存取存储器(SRAM)或传统破坏性读出动态随机存取存储器(DRAM)的硬件设计实现的,因此,存在着这样的一种硬件设计或另外一种硬件设计的所有缺点和限制。
现有技术中的典型三进制(ternary)静态CAM(SCAM)包含2个六晶体管SRAM存储单元,加上一个XNOR(异或非)功能组,该组含有4个额外的晶体管,因此,每个SCAM单元总共有16个晶体管。通常,SCAM比DCAM更易遭受存储数据由软错误(soft-error)(例如,由于电路暴露在环境辐射中导致的存储数据错误)引起的讹误。
现有技术中的典型三进制动态CAM(DCAM)可以包含比SCAM少的晶体管,但是,可能存在包括破坏性读出和操作慢在内的缺点。除了包含4个晶体管的XNOR比较电路之外,现有技术中的典型三进制DCAM还包括2个必须周期性读出和经由通行晶体管(pass-transistor)通过电荷转移进行刷新的数据存储电容器,通行晶体管还用于通过电荷转移读出和写入数据。存储在DCAM单元的数据存储电容器中的电荷由于单元内的漏电而逐渐消耗掉。由于这个原因,必须周期性地“刷新”存储在泄漏电容器中的信息,即,从存储单元中读出电荷,然后,将其重新写回到存储单元中。现有技术提供的各种DCAM单元结构有以下的局限通过电荷转移进行刷新-读出会损坏存储在数据存储电容器中的数据,使得在通过刷新-写入将数据写回到DCAM单元之前,DCAM单元暂时不能用于CAM搜索。其整个刷新读出-写入期间占用了时间,其间不能进行CAM搜索。此外,感测从存储电容器到与之耦合的电容性位线的相对小电荷转移的能力的限制也限制了在这样的位线上的最大阵列数量,和/或要求更大的存储电容器。
颁发给Threewitt的美国专利第5,949,696号公开了这样的破坏性读出DCAM的实例。为CAM入口的每个数据存储电容器提供独立搜索线和独立位线的、Threewitt公开的三进制CAM单元的一种变型描绘在图1中,它同样受到固有破坏性读出的限制。刷新图1所描绘的现有技术的DCAM电路用的读出操作是经由通行晶体管(例如,分别是T0R或T1R)和经由位线(例如,分别是NBIT或BIT),通过电荷转移存储在数据存储电容器(例如,SB0或SB1)中的电荷完成的。
在实现CAM时,最好减小晶体管数量和/或CAM单元尺寸,和提高阵列利用率。在实现DCAM时,最好进行延迟最小的或对CAM查询操作的干扰最小的存储数据刷新。

发明内容
因此,本发明特别提供了改进的动态内容可寻址存储器(DCAM)单元拓扑结构,这种动态内容可寻址存储器(DCAM)单元拓扑结构包含比现有技术典型静态内容可寻址存储器(SCAM)的16个晶体管少的晶体管,但却能进行既不会延迟又不会中断CAM搜索周期的存储数据“隐”刷新,从而提供了类似SCAM的性能。本发明的DCAM通过同时将存储在存储器中的所有入口与外部供应的“比较数”相比较,实现它的搜索性能。存储在CAM的入口中的各个字与比较数相“匹配”的结果是,维持了防止它们各自的匹配线与地线之间的电荷转移的非导电壁垒。反之,存储在入口中的所有字中即使只有一位与比较数的相应位失配(即,不匹配),也会形成它们匹配线的每一条与地线之间的导电路径。本发明的实施例提供了非破坏性读出操作,使得存储数据不用由于刷新-读出操作而非要回写不可;并且在读出操作之后,和在回写刷新数据之前或甚至同时,可以进行可靠的CAM搜索。无需延迟或中断CAM搜索操作,可以在刷新周期期间(或与刷新周期无关地),对每个CAM入口进行本领域普通技术人员所熟知的软错误检测处理。本发明的实施例提供了这样的CAM单元电路拓扑结构,这种CAM单元电路拓扑结构能够使连接到CAM阵列的读出位线(read-bit-line)的CAM单元比可以连接到现有技术中DCAM阵列的读出位线的CAM单元多,从而导致了更大的阵列利用率。
本发明的第一方面提供了一个实现网络路由器(router)功能的数字系统、和含有CAM单元的CAM阵列,其中CAM单元包括数据存储器件;通行门,其包括第一和第二通行开关的层叠,第一通行开关在节点上与第二通行开关串联;可操作地控制第二通行开关的数据存储器件;和与节点相连接的第三通行开关,用于检测数据存储器件的逻辑状态。
本发明的第二方面提供了在含有CAM入口的CAM阵列中进行多个CAM搜索的方法,其中CAM入口含有存储在多个存储电容器中的可搜索数据的字,所述方法包括进行字的非破坏性确定,和随后进行CAM搜索的步骤。
通过结合附图,对本发明的实施例进行如下更详细的描述,本发明的前述和其它特征将更加清楚。


下面参照附图描述本发明的实施例,在附图中,相同的标号表示相同的元件,其中图1是现有技术中破坏性读出DCAM单元的电路方块图;图2A是根据本发明实施例的、支持非破坏性读出和“隐”刷新可搜索存储数据的DCAM单元的电路图;图2B是图2A所示的本发明DCAM单元的另一个可替换实施例的电路图,其中,为读出和写入提供了独立的位线;图2C是图2A所示的本发明DCAM单元的另一个可替换实施例的电路图,其中,为读出和写入提供了独立的位线,并且提供了独立的搜索线;图3是显示器件、数据和控制信号之间的时序关系,和显示操作图2A所示的本发明DCAM单元的方法的时序图;和图4描绘了包括CAM阵列的代表性数字系统,其中CAM阵列包含图2A、2B、或2C中描绘的DCAM单元。
具体实施例方式
图2A描绘了根据本发明实施例的三进制动态内容可寻址存储器(DCAM)单元200a的电路图。本发明的三进制DCAM单元200a包括二个起数据存储器件作用的电容器(SB0和SB1)。这些电容器的每一个被独立地充电成高电平,以存储逻辑一(“1”),或放电成低电平,以存储逻辑零(“0”)。三进制DCAM单元200a还包括二个存储器存储单元(CELL0=210a,CELL1=211a),它们的每一个与连接在MATCH LINE(匹配线)与地线之间的XNOR(异或非)比较电路202的两个晶体管组(分别为T2-T4和T3-T5)之一合并在一起。通过在两个存储器存储单元(例如,210a和211a)中存储“0”或“1”(最好是“0”),三进制DCAM单元200a存储使局部屏蔽逻辑值存储在给定字入口内的“屏蔽”状态。将每个DCAM单元(例如,200a)中的“屏蔽”逻辑状态存储在DCAM入口中的能力使存储在DCAM单元的CAM阵列中的数据得到位级(bit-level)屏蔽。位级屏蔽便于和/或允许利用本发明存储和比较地址范围,和尤其有利于网络地址过滤应用。
本发明的DCAM单元的实施例包含由XNOR门202(如图2A、2B、2C所示)实现的异或非(XNOR)逻辑功能,XNOR门202包括由各有二个叠加晶体管的二组并行排列而成的四(4)个晶体管。每个晶体管组包括第一通行开关(例如,NFET(N沟道场效应晶体管)晶体管T2、或T3)和第二通行开关(例如,NFET晶体管T4、或T5),第一通行开关在节点(例如,分别是N0或N1)与第二通行开关串联。因为XNOR门202的每个晶体管组(例如,T0-T2和T1-T3)在物理功能上相互独立,所以,就DCAM的固有逻辑操作来说,在集成电路(IC)芯片上,一个三进制DCAM单元200a的二个晶体管组(例如,T0-T2和T1-T3)没有必要在空间位置上相互邻近设置。因此,三进制DCAM单元200a可以“分成”“两半”(另一半DCAM单元置于每个这一半之间),只要所有这样的半DCAM单元都连接到CAM入口的同一匹配线上即可。例如,入口的DCAM单元的所有“真的一半”可以被分隔在入口匹配线的一端上,而入口的DCAM单元的所有“互补的一半”可以被分隔在入口匹配线相对的一端上。同样可以把搜索线和位线分隔开,接在DCAM单元的各个半体之后。
因为,在每次CAM搜索之前,在匹配线被预充电成高电平的同时,与匹配线导电耦合的XNOR晶体管(即,XNOR 202中的T4、T5)理论上处在OFF(关断)状态,所以,在CAM搜索之前,可以进行通过通行晶体管(例如,T2-T7、T3-T6)的非破坏性读出,同时与匹配线导电耦合的XNOR晶体管(T4、T5)处在OFF状态。因为非破坏性读出本来就使数据存储器件(例如,电容器SB0、SB1)的内容不会受到干扰,所以以后就可以进行CAM搜索操作,而没有必要先将从存储电容器读出的数据写回去。因此,在本发明的实施例中,从进行的刷新-读出没有延迟或并不妨碍随后CAM搜索的进行这一点上来说,非破坏性刷新-读出操作可以“隐含”在CAM搜索周期内。在这样的非破坏性刷新-读出之后,无论在进行CAM操作之前,期间、还是之后,都可以进行刷新-写入。
本领域的普通技术人员应该认识到,DCAM单元的XNOR组与地线的连接可以是图2A所示的直接连接,或者,这种连接也可以是通过“全局”位屏蔽(未示出)的通行开关(例如,通行晶体管)有选择地中断的。与XNOR电路耦合的“全局”位屏蔽起到这样的作用,当全局位屏蔽信号得到维持时,存储在CAM阵列中的每个字中的相应位位置从比较功能中被取消(即,对于CAM阵列中的每个字,它成为全局“不关心”(强制匹配)的逻辑值)。这样的全局屏蔽对存储在CAM入口中的数据值的范围进行比较或搜索是有用的。
CAM入口中所有CAM单元的所有XNOR比较电路的多个并行晶体管组(例如,T2-T4和T3-T5)形成匹配线通行门。匹配线通行门进行工作,使得预充电成高电平的匹配线在入口匹配的情况下,将保持高电平,但如果存储在CAM入口中任何一个或多个三进制位与比较数(comparand)的相应位失配,则放电到或接近地电平(表示失配)。另一种可替换的是,本发明的匹配线通行门和DCAM单元也支持匹配检测系统中的预充电成低电平的匹配线,这些公开于Towler等人在2000年_月_日提出的序号为__的美国专利申请,将它的相关部分合并在这里以供参考,其权利也属于作为本发明受让人的国际商用机器公司(IBM)。
当字线WL保持在高电平上时,可以经由位线(分别为BL0和BL1)和经由保持为ON(即,导通)的通行晶体管(分别为T0和T1),如在现有技术中的DCAM中那样,通过电荷转移将数据写入存储器存储单元(210a和211a)中或从中读出数据。本发明中通过电荷转移写入或读出数据的方法与在现有技术中的DCAM中所使用的通过电荷转移写入或读出数据的方法相同或相似。但是,因为本发明无需破坏性电荷转移存储在数据存储电容器(例如,SB0和SB1)中的电荷,就能读出存储的数据,所以,在本发明的实施例中,通过电荷转移的读出是不必要的。
通过将各条位线(例如,分别是BL0、BL1)预充电成高逻辑电平,接着,通过把其栅极维持在高逻辑电平上(例如,通过把读字线(RWL)维持在高逻辑电平上)使通行晶体管(例如,分别是T7、T6)变成ON(即,导通),然后,感测各条位线(例如,BL0、BL1)上代表各个数据存储器件(例如,分别是SB0和SB1)状态的电流和/或电压,在各条搜索线(例如,SLC或SLT)保持在低电平的同时,可以在DCAM单元200a的每个存储器存储单元(例如,210a、211a)上进行非破坏性读出。位线可以经由连接在电源电压与各条位线之间、受位线预充电信号BLPCHG可操作地控制的多个通行开关(例如,P型通行晶体管P0和P1)预充电成高电平。如果电容器SB0存储着高逻辑电压,那么,与通行晶体管(例如,T2和T7)可操作地耦合的预充电成高电平的位线(例如,BL0)在非破坏性读出操作期间,由于电荷经由ON(即,电流导通)通行晶体管(T2和T7)从预充电的位线(例如,BL0)转移到地线,将降到低电平或朝着低电平下降。如果电容器SB0存储着低逻辑电压,那么,与通行晶体管(例如,T2和T7)可操作地耦合的预充电成高电平的位线(例如,BL0)在非破坏性读出操作期间,由于电荷无法经由OFF(即,非导通)通行晶体管(T2和T7)从预充电的位线(例如,BL0)转移到地线,将保持在预充电的高电平上。
通过将所有位线(例如,BL0、BL1)预充电成高逻辑电平,接着,通过把读字线RWL维持在高逻辑电平使所有通行晶体管(例如,T7、T6)变成ON,然后,感测所有位线(BL0和BL1)上的电流和/或电压,在所有搜索线(例如,SLC或SLT)保持在低电平的同时,可以进行由多个本发明的DCAM单元(例如,200a)组成的整个入口的非破坏性读出。全部CAM入口的非破坏性读出可以是执行刷新读操作,此时全部与MATICH-LINE直接连接的XNOR晶体管(例如,T4、T5)处在OFF状态,其操作目的是为了最终刷新数据存储器件(例如,电容器SB0和SB1)的内容。在这种情况中,经由只读通行晶体管(例如,T7和T6)和经由位线(例如,BL0、BL1)从DCAM入口中确定(例如,反向读出)存储的数据字。然后,可以一直维持这样从数据存储器件读出的数据(也许首先必须进行再反向),并将它们存储在位线(例如,BL0和BL1)本身上,直到断定字线WL执行刷新-写入维持在位线上的存储数据为止。或者,CAM阵列外部的二进制缓冲器或寄存器可以用于临时存储一个存储数据字(可以是反向的,也可以是不反向的),或者存储已经从多个DCAM入口中读出的多个这样的存储数据字,直到写回到同一入口或相同的多个入口为止。
每当与正在读出的CAM入口的MATCH LINE直接耦合的所有XNOR晶体管(例如,分别为T4、T5)处在OFF状态(即,CAM阵列中的所有搜索线,例如,SLC、SLT,处在低电平)时,还可以象随机存取(RAM存储器存取)那样进行整个CAM入口的非破坏性读出。
CAM入口中任何存储电容器的非破坏性读出操作的进一步细节可以参照读出存储在图2A所示的存储电容器SB0中数据的实例加以说明。如果存储电容器(例如,SB0)正在存储由存储在电容器中的高逻辑电平所代表的逻辑ONE(“1”),那么,XNOR电路202的晶体管T2处在ON状态(因为它的栅极被电容器SB0保持在高电平状态),并且电流可以从预充电成高电平的位线(例如,BL0),经过T2,流入地线,具有把位线BL0的电平拉向地电平的效果。位线(例如,BL0)上的这种电流和/或伴随的电压降可以由与位线(BL0)耦合的、本领域普通技术人员熟知的任何适当的感测电路来感测,并且,可以将其寄存下来,用来指示逻辑ONE存储在数据存储器件(即,电容器SB0)中。反之,可以感测到BL0上没有这样的电流,或者没有这样的电压降,并且,将其寄存下来,用来指示逻辑ZERO(“0”)存储在数据存储器件(即,电容器SB0)中。
DCAM支持电路(未示出)使系统硬件能够读出存储在DCAM存储器存储单元(210a和211a)中的数据,和将数据写入DCAM存储器存储单元中。DCAM支持电路还提供刷新定时电路,以周期性地刷新DCAM入口的漏电的数据存储电容器。作为电荷存储在DCAM入口的任何电容器中的逻辑ONE都将逐渐放电变成逻辑ZERO,除非刷新电路对电容器周期性地重新充电。DCAM的支持电路可以包括感测放大器,通过位线(例如,BL0)检测数据存储器件(例如,存储电容器SB0)上的状态(例如,放大信号或存储的电荷);地址逻辑电路,用于选择行和列;行地址选择(RAS)和列地址选择(CAS)逻辑电路,用于锁存和分辨行和列地址,及开始和终止随机存取读写操作;读写电路,将信息写入(即,存储)存储器存储单元(例如,210a和211a)中,或读出存储在那里的信息;内部计数器或寄存器,用于时刻监视刷新序列,或需要时,开始刷新周期;和输出逻辑电路,当通过CAM搜索已找到时,声明匹配入口(例如,HIT)的地址。
甚至在位线(BL0)能够从一干线电压(rail)完全下降到另一干线电压(即,从预充电的高电平下降到地电平)之前,电压感测放大器(SA)就可以用于检测数据存储器件(例如,电容器SB0)的逻辑状态。如果使用了电压感测电路,那么,可以使用短暂的选通信号(例如,脉冲SETSA,参见图3)在相对短暂的时间间隔内使能电压感测电路(例如,SA),在这个相对短暂的时间间隔内,根据存储电容器(例如,SB0)的内容,能够得知位线上的任何可感测电压降是已经发生了,还是没有发生。感测选通信号(例如,SETSA)可以在适当时候,由在同一集成电路芯片上实现的、包括一个伪(dummy)位线作为定时模型的电路,或者通过本领域普通技术人员熟知的任何其它方法来产生脉冲。从而,可以在紧接DCAM入口的搜索线(例如,SLT和SLC)的两个中的任何之一已经完全上升到高电平以执行CAM搜索之前的短暂时间间隔内进行数据存储器件(例如,电容器SB0)状态的感测。本发明的DCAM单元的电路、信号和功能的示例性时序和关系的更进一步细节可以参照图3,连同图2A的DCAM单元200a的电路图加以说明。
图3是描绘在包括三个连续的CAM搜索周期(310、320、330)的时间跨度期间,与图2A所示的本发明三进制DCAM单元200a耦合的各条线上各种信号和功能的示例性时序关系的时序图。每个CAM搜索周期(例如,310、320、330)包括CAM搜索时段(即,将CAM阵列的每个入口中的存储数据与比较数相比较的时段)(例如,分别为313、323、333)和匹配线预充电时段(例如,分别为318、328、338),用于为CAM搜索(例如,分别为313、323、333)准备与DCAM入口的所有DCAM单元(例如,200a)连接的匹配线。
当在CAM入口的每个DCAM单元(例如,200a)的两条搜索线(例如,SLT和SLC)上分别维持比较数的一位和那个比较数的位的逻辑补码时,CAM搜索被执行。因此,在每个CAM搜索时段(例如,313)内,给定DCAM单元200a的一条搜索线(例如,SLC)将处在高电平,而另一条搜索线(例如,SLT)将处在低电平。
图3所描绘的第一CAM搜索周期310显示了在刷新-读出(在时段(318+312)内)和随后在CAM搜索时段(313)内进行的刷新-写入期间,本发明三进制DCAM单元200a中信号的示例性时序。尽管第一搜索周期(313)碰巧显示CAM单元200a处在CAM阵列的失配入口中的情况,但是,在CAM搜索周期(例如,310)内进行刷新-读出和/或刷新-写入的能力不依赖于存储在入口中的数据,也不依赖于CAM入口碰巧是失配入口,还是匹配入口。
在每次CAM搜索期间(例如310、320、330),根据存储在入口中的数据字与在此特定的CAM搜索期间维持的比较数的(未屏蔽)位相比较的比较结果,给定CAM入口将是失配入口,或者是匹配入口。因为在每个CAM搜索周期期间,可以对CAM阵列维持不同的比较数和/或不同的比较数屏蔽(例如,全局位屏蔽),所以给定CAM入口在一个CAM搜索周期期间可以是失配入口,而同一CAM入口在下一个或以后任何一个CAM搜索周期期间可以是匹配入口,反之亦然。失配的三进制CAM入口是碰巧正存储着与在特定CAM搜索期间维持的比较数的未屏蔽位逻辑不同的三进制数据字的CAM入口。反之,匹配的CAM入口是碰巧正存储着与在特定CAM搜索期间维持的比较数的未屏蔽位逻辑相同的三进制数据字的CAM入口。
本发明的DCAM单元的数据比较数的比较功能由排列在形成XNOR门202的两个并行组(T2-T4和T3-T5)中的四个通行开关(例如,N-沟道通行晶体管T2、T3、T4、T5)来完成。较低通行开关的每一个(即,晶体管T2和T3的每一个)完成双重功能,即支持存储在相关数据存储器件(即,分别是电容器SB0和SB1)中的数据值的非破坏性读出,加上使能本发明三进制DCAM单元(例如200a、200b、200c)中的XNOR比较功能。
在失配CAM入口的情况中,通过XNOR电路202的一个或多个通行晶体管组(例如,T2-T4、和/或T3-T5)建立起匹配线(MATCH LINE)与地线之间的电流导通连接,失配入口的出现由匹配线电压下降到低电平来指示。因此,在本发明的实施例中,失配入口的预充电成高电平的MATCH LINE电压将下降到低(例如,接近地的)电平,从而指示MISS(失配)。
在匹配入口的情况中,匹配入口的出现描绘在图3所示的第三CAM搜索周期(330)中,通过CAM入口的DCAM单元(例如,200a)中XNOR电路(例如,202)的任何晶体管组都不能(例如,T2-T4、T3-T5都不能)建立起MATCH LINE与地线之间的电流导通连接。因此,在本发明的实施例中,匹配入口的MATCH LINE电压将保持在预充电的高电平上,并且,可以检测到这种高电平的HIT(命中)事件电压,因此,MATCH或HIT可以与这样的匹配CAM入口的唯一地址相联系。
图3所描绘的第二搜索周期320显示了在DCAM单元200a碰巧处在CAM阵列的失配入口中的情况下,在非破坏性读出(发生在时段328和322内)和随后的CAM搜索323期间,本发明三进制DCAM单元200a中信号的时序。第二搜索周期320显示了,在本发明CAM入口(例如,包括CAM单元200a、200b和/或200c)的实施例中,无需将读出的数据刷新-写入回到曾经从中读出的CAM入口中的数据存储器件(例如,SB0和SB1)中,可以在完成非破坏性读出之后马上在CAM阵列中进行可靠的CAM搜索(323)。
图3所描绘的第三搜索周期330显示了在DCAM单元200a碰巧处在CAM阵列的匹配入口中的情况下,在刷新-读出(例如,发生在前一CAM搜索期间320内)之后的刷新-写入期间,本发明三进制DCAM单元200a中信号的时序。第三搜索周期330显示了,可以在刷新-读出之后延迟刷新-写入,允许处理时间能够在刷新-写入之前对刷新-读出的数据完成错误(例如,软错误)检测分析,而不会妨碍或延迟常规的周期性的CAM搜索周期和其中可靠的CAM搜索。
在本发明DCAM单元(例如,200a、200b、200c)的示例性实施例中,在每次CAM搜索(例如,313、323、333)之前,在每个匹配线预充电时段(例如,318、328、338、348)内,通过受匹配线预充电控制信号MLPCHG控制的与匹配线相连接的通行开关(例如,通行晶体管TPCHG),预充电匹配线(如前所述,按照匹配线控制器设计,预充电成高电平或低电平)。在本发明其中匹配线被预充电成高电平的示例性实施例(例如,200a)中,每个DCAM单元(例如,200a)的两条搜索线(即,SLT和SLC)将保持低电平(例如,在通常的匹配线预充电时段318、328、338内),从而使XNOR功能块202的两个通行晶体管(例如,T4和T5)都变成OFF(即,非导通),致使在匹配线与地线之间不存在导通路径,和致使匹配线保持在高电平上,直到对那个DCAM入口的CAM搜索是“失配”(即,存储数据与比较数不匹配)为止。
任何本发明DCAM入口中存储器存储器件的状态(即,存储在电容器中的数据的非破坏性读出)的检测可以通过位线(例如,BL0和BL1)和通过通行开关(例如,通行晶体管T6和T7),在DCAM入口的所有搜索线都保持在低电平上的时间期间内(例如,在匹配线预充电时段318、328、338、348内)进行。因此,在给定DCAM入口中每个DCAM单元(例如,200a)的每个存储器存储器件(例如,电容器SB0和SB1)的逻辑状态可以在DCAM单元(例如,200a、200b或200c)的每个匹配线预充电时段(例如,318、328、338、348)内检测到,而不会破坏存储器存储器件(例如,SB0和SB1)的状态(例如,改变包含在其中的电荷)。完全或充分地在这样普通而必要的匹配线预充电时段(例如,318)中进行的刷新-读出不会给任何CAM搜索周期(例如,310和320)增加太多的时间,可以认为是“隐含”的刷新-读出。
非破坏性读出可以按照如下的一系列步骤来执行首先,在匹配线预充电时段(例如,318)内或在匹配线预充电时段之前,将DCAM阵列的所有DCAM单元(例如,200a)的位线(例如,BL0和BL1)预充电成高电平;其次,维持要读出的CAM入口的读字线RWL(例如,高电平),以便在CAM搜索时段(例如,313)之外(例如,之前),使其中的通行晶体管(例如,T6和T7)变成ON(即,导通)(而与DCAM 200a中数据存储器件SB0和SB1耦合的通行晶体管T0和T1处于OFF状态);第三,在通行晶体管(例如,T6和T7)按如上所述处在ON状态的同时,通过各条位线(例如,BL0和BL1)检测存储器存储器件(例如,SB0和SB1)的状态。可以断定(assert)和/或存储(例如,在312之前,或者在314期间,或者在随后的CAM搜索314之后和直到下一位线预充电为止,存储在位线BL0和BL1上)每个存储器存储器件(例如,SB0和SB1)如此检测的状态,然后,(在316期间)将其写回到同一数据存储器件(例如,SB0和SB1)中。
位线可以通过与高逻辑电平电压(例如,电源电压)耦合的、受位线预充电控制信号BLPCHG控制的多个位线预充电通行开关(例如,图2A中的P-沟道通行晶体管P0和P1)预充电成高电平。控制信号BLPCHG将启动(即,变成ON=导通)通行开关(例如,P0和P1),以在匹配线预充电时段(例如,318)期间或之前预充电位线(例如,分别为BL0和BL1)。如果将位线(例如,BL0和或BL1)设计成既用于读出数据,又用于写入数据(如图2A所示的DCAM单元200a那样,但既不是图2B所示的DCAM单元200b那样,也不是图2C所示的DCAM单元200c那样),那么,位线(例如,BL0或BL1)的使用必须是时分复用的,使得读出操作和写入操作不会同时发生,不会相互干扰。因此,在图2A所示的DCAM 200a中,为了进行非破坏性读出,可以在执行写操作的写周期(例如,316和336)之外的匹配线预充电时段(例如,318、328、338和348)期间,将位线预充电成高电平。但是,在为了写入和为了读出而向每个存储器存储单元(例如,分别是图2B和2C所示的DCAM单元200b和200c中的210b和210c)提供分立的线路的情况下,可以在在CAM阵列中的同一个或另一个DCAM入口上进行写操作之前,或甚至同时,将非破坏性读出位线(例如,图2B和2C中的RBL0)预充电成高电平。在为了写入(例如,WBL0)和为了读出(RBL0)而向每个存储器存储单元(例如,图2C所示的DCAM单元200c中的210c)提供分立的线路(例如,RBL0、WBL0)的情况下,和在没有一条这样的线路又是与XNOR门202耦合的搜索线(例如,SLC)的情况下,可以同时,或者在CAM搜索周期内匹配线预充电时段期间的重叠时间间隔中进行刷新-读出操作和刷新-写入操作。
因此,如果在与CAM单元耦合的所有搜索线保持在低电平的CAM搜索周期(例如,3106)内的时间间隔,(例如,匹配线预充电时段318期间)进行整个CAM入口的非破坏性读出,那么,整个CAM入口的非破坏性读出可以是“隐含”的(即,执行时无需中断CAM入口的周期性搜索周期)。在本发明其中MATCH LINE在每次CAM搜索之前通常被预充电成高电平的实施例中,所有搜索线在每次CAM搜索之前通常保持在低电平,以便将匹配线预充电成高电平。在下一次CAM搜索(例如,323)之前的那个时间间隔(例如,318)期间,可以在整个CAM入口上进行“隐含”的读出。从而可以在搜索线(SLT和SLC)的每一条将上升到高电平进行CAM搜索(323)之前的短暂时间间隔(例如,304和/或312)内进行数据存储器件状态的感测。
因为如此实现的读出对存储在CAM入口的CAM单元(例如,200a)的存储器存储器件(例如,电容器SB0和SB1)中的数据是非破坏性的,所以此后马上(313)就可以进行CAM搜索,而无需先完成刷新-写入(例如,316)。可以在进行后读出CAM搜索(313)之前,同时(316),或者之后(336)刷新-写入非破坏性读出的数据(在时段318期间获得的)。
通过维持字线WL上的高电平,和通过维持各条写使能线(例如,DCAM 200a中的BL0、BL1;DCAM 200b中的WSL0和WSL1;DCAM 200c中的WBL0和WBL1)上代表数据字各位的逻辑电平,(例如,在200a中的RWL处在低电平的同时)将数据写入图2A、2B和2C所示的DCAM单元200a、200b和200c的数据存储器件(例如,电容器SB0和SB1)中。然后,如此维持在数据位线上的电压所代表的数据充电(或根据数据放电)DCAM单元(例如,200a、200b、和200c)的每个数据存储电容器(例如,SB0和SB1)。当使字线WL处在低电平时,写使能线然后可以用于其它用途(譬如,如图2B所示的200b那样,在CAM搜索期间维持比较数的各位;或者,如上面对图2A所示的DCAM单元200a所述的那样,进行非破坏性读出;或者,如现有技术的DCAM单元那样,进行破坏性读出)。除非按照本发明实施例制造的特定DCAM阵列在阵列使用过程中太大无法支持这样的破坏性电荷转移型读出,写使能线(例如,DCAM200a中的BL0、BL1;DCAM 200b中的WSL0和WSL1;DCAM 200c中的WBL0和WBL1)还可以按照现有技术的传统方法,用于进行存储数据的破坏性读出。
本发明DCAM单元的特征在于,刷新-写入可以在进行后读出CAM搜索(313)之前,同时(316),或者之后(336)开始,因此不会延迟后读出CAM搜索(313)。这样,本发明的实施例除了提供“隐含”的刷新-读出之外,还提供了“隐含”的刷新-写入。于是可以认为新发送明的DCAM单元提供了“隐刷新”。
通常在本发明CAM阵列的每个完整字(例如,入口)上不时地进行的DCAM存储器刷新周期,包括后面跟着刷新-写入操作(例如,在CAM搜索期间进行的)的刷新-读出操作(例如,在匹配线预充电时段(318)内进行的),两者都可以在同一CAM搜索周期(例如,310)内进行。因为通过通行晶体管(例如,T2-T7或者T3-T6)进行的读出操作是非破坏性的(即,不会改变分别由存储电容器SB0和SB1存储的电荷),所以读出操作本身致使没有必要立即将从存储电容器读出的数据马上写回去。因此,CAM搜索操作(例如,313),或甚至多个(即,N个,其中N是正整数)CAM搜索操作,可以在在CAM入口上已经完成了这样的非破坏性读出操作(例如,318或328)的时刻与以后在同一CAM入口上进行刷新-写入操作的时刻之间进行。换句话来说,本发明DCAM的刷新循环不需要在一个传统DCAM的刷新周期内完成,而是可以在跨越多(N)个CAM搜索周期的边界的时段内开始和完成。
这种灵活性提供了各种各样的机会,包括在与DCAM单元的其它活动不相干扰的时段内开始和完成刷新周期的机会。本发明DCAM单元的灵活性可以支持进行错误(例如,软错误)检测分析(例如,利用存储的奇偶校验位)的能力,也许,甚至还支持在回写数据之前纠正错误的算法。在数据刷新期间,无需干扰(例如,延迟)CAM搜索地进行错误检测的能力又可以使CAM电路密度得到提高,譬如,允许硬件和/或器件(例如,大槽式电容器(1argetrench capacitor))的尺寸缩小,这些反过来又被认为或许能防止这样的错误。如果在本发明的DCAM入口中检测的到存储数据的错误(例如,软错误),则可以纠正数据,并且马上写回,或者,可以暂停CAM搜索,直到错误得到纠正和将正确的数据写回入口为止,或者可以采取其它可替换的措施,以保证可靠的CAM搜索结果(譬如,将这样的数据,或不产生错误的CAM搜索结果的空数据写入该入口)。因为错误检测降低了软错误的风险,所以本发明的DCAM单元还可以利用寄生电容(例如,来自源极-基底)来代替显式(例如,槽式)电容器,降低存储元件的成本。晶体管(例如,T0-T2和T1-T3)中寄生电容的使用从总体上使存储元件(例如,SB0和SB1)的制造过程简单化,因此,便于使用成本相对低的像SCAM的工艺。较低的存储电容可以相对较高的刷新率和/或较高的错误检测取样率使用。最佳寄生电容(或总有效电容)和所需刷新间隔可能取决于用于做出本发明的DCAM的具体制造工艺。在现有技术中,平衡电路密度和刷新率的关联因素的优化技术是众所周知的。
每当没有进行CAM搜索和没有进行读出操作时,可以将随机数据(即,不是从同一入口读出的数据)写入入口中。将随机数据写入每个存储电容器(例如,SB0)中可以按照如上所述的方式,根据维持在各条写使能线(例如,BL0和BL1)上的电压,通过受字线(WL)可操作地控制的通行开关(例如,通行晶体管T0和T1)进行电荷转移来实现。
与包括本发明CAM单元(例如,200a、200b、200c)的CAM入口耦合的MATCH LINE可以通过把入口的所有搜索线(例如,SLC、SLT)保持在低电平,从而使其中的所有XNOR电路(例如,202)的所有晶体管组(例如,T2-T4和T3-T5)都变成OFF(即,非导通),然后,维持与MATCH LINE耦合的预充电晶体管TPCHG上的高逻辑电平,从而使MATCH LINE导通地连接到电源电平(例如,高逻辑电平)上,来预充电成高逻辑电平。
图2C是图2A所示的本发明DCAM单元的另一个可替换实施例的电路图,其中为读出和写入提供了独立的位线,并且提供了独立的搜索线。
图2B是图2A所示的本发明DCAM单元的另一个可替换实施例的电路图,其中为读出(例如,RBL0和RBL1)和写入(例如,WSL0和WSL1)提供了独立的位线。本发明的三进制DCAM单元(200b)使读出(例如,非破坏性刷新-读出)能够通过通行晶体管(例如,T2-T7、T3-T6)的操作和经由非破坏性读出位线(例如,RBL0、RBL1),在其中的每个存储器存储单元(例如,210b、211b)上进行。每当与通行晶体管(例如,分别为T7和T6)耦合的读出字线(RWL)维持在高电平上,同时控制与MATCH LINE耦合的XNOR叠式层叠晶体管(例如,分别为T4和T5)的所有搜索线(例如,分别为WSL0和WSL1)保持在低电平上时,可以通过读使能位线(例如,RWBL0、RWBL1)进行刷新-读出操作,读出整个入口(例如,包括多个DCAM单元200b)的内容。或者,由于在CAM搜索操作期间,两条互补的搜索线之一(例如,WSL0或WSL1)将处在低电平上,因此,在CAM搜索期间,可以可靠地读出存储在DCAM单元200b中的每个DCAM单元中两个独立位之一(例如,存储在DCAM单元200b的CELL0中的位)。
隐含的刷新-写入可以通过通行晶体管(例如,受字线WL控制的T0、T1)和通过也起DCAM搜索线作用的独立写入位线(例如,WSL0、WSL1)进行。因为写入位线(例如,WSL0、WSL1)也起DCAM搜索线的作用,所以在这个可替换实施例中,在进行CAM搜索的同时,又进行刷新-写入是不可行的。
图2C描绘了图2A和2B所示的本发明DCAM单元的另一个可替换实施例的电路图,其中为读出(例如,RBL0和RBL1)和写入(例如,WBL0和WBL1)提供了独立的位线,并且搜索线(SLC和SLT)与位线分开。图2C所示的本发明三进制DCAM单元200c允许以与图2B中的DCAM单元200b所述相同的方式进行非破坏性读出。
隐含的刷新-写入可以在图2C的DCAM单元200c中,以与图2B中的DCAM单元200b所述相同的方式进行,但是,因为写入位线(WBL0和WBL1)与搜索线(SLC和SLT)是分开的,所以,可以在CAM搜索正在进行的同时,在图2C的DCAM单元200c中进行刷新-写入(正如图2A中的DCAM单元200a一样)。
本发明的DCAM单元(例如,200a、200b和200c)可以只包括所公开的、如在图2A、2B和2C所示的实施例中所描绘的NFET(例如,N沟道MOSFET(金属氧化物半导体场效应晶体管))。如果控制信号等相应地是互补的,那么PFET可以替代NFET(例如,T0、T1、T2、T3、T4、T5、T6、或T7)。换句话来说,新本发明DCAM单元的所有P沟道的实施例也都在本发明的范围之内。
图4描绘了包括CAM阵列的代表性数字系统,其中CAM阵列包含图2A、2B、或2C中描绘的DCAM单元。数字系统可以是,例如,计算机或网络路由器,它们包括与CAM阵列可操作地耦合的数字处理器;这个CAM阵列包含这里上述公开的本发明的DCAM单元实施例。
虽然通过参照本发明的示例性实施例已经对本发明进行了具体图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对它们进行前述的和其它的改变,而不偏离本发明的精神和范围。本发明的实施例可以通过半导体基底上的集成电路来实现、或者通过用诸如开关之类的分立器件(例如,晶体管、机电继电器、或类似的光学部件)构成的电路来实现、或者通过这些电路的组合来实现。因此,所附权利要求书意欲涵盖本发明所有这样的可替换实施例。于是,在所附权利要求书中,术语“通行开关”用于描述在描绘本发明示例性实施例的附图中所描绘的通行晶体管提供的结构和功能。
权利要求
1.一种内容可寻址存储器(CAM)阵列,包含CAM单元,所述CAM单元包括数据存储器件;通行门,其包括第一和第二通行开关的层叠,第一通行开关在节点上与第二通行开关串联;可操作地控制第二通行开关的数据存储器件;和与节点相连接的第三通行开关,用于检测数据存储器件的逻辑状态。
2.根据权利要求1所述的阵列,其中第一通行开关受搜索线可操作地控制;和第三通行开关与第一位线连接,并受第一字线可操作地控制。
3.根据权利要求2所述的阵列,还包括连接在数据存储器件与第二位线之间的第四通行开关,第四通行开关受第二字线可操作地控制。
4.根据权利要求3所述的阵列,其中数据存储器件是电容器。
5.根据权利要求4所述的阵列,其中第一位线和第二位线是一条线。
6.根据权利要求4所述的阵列,其中搜索线和第二位线是一条线。
7.根据权利要求3所述的阵列,其中第一、第二、第三和第四通行开关的每一个都是场效应晶体管(FET)。
8.根据权利要求3所述的阵列,其中第一、第二、第三和第四通行开关的每一个都是N型器件。
9.根据权利要求3所述的阵列,其中通行门是匹配线通行门的一部分,并且连接在匹配线与地线之间。
10.根据权利要求3所述的阵列,其中数据存储器件存储二进制位,该位的逻辑值可以通过一个经过第三通行开关的读操作来确定,而不会破坏存储在数据存储器件中的位。
11.根据权利要求10所述的阵列,其中CAM搜索可以在读出存储在数据存储器件中的位之后和随后将其刷新-写入同一数据存储器件完成之前进行。
12.根据权利要求10所述的阵列,其中第二位线适于在CAM搜索操作期间存储位。
13.根据权利要求10所述的阵列,其中可以在CAM搜索操作期间,通过第四通行开关将位传输到数据存储器件,而不会干扰CAM搜索操作。
14.根据权利要求1所述的阵列,其中第一位线与适合于检测第二通行开关状态的感测放大器(SA)连接。
15.根据权利要求1所述的阵列,其中第一位线和第二位线与适于存储位的寄存器可操作地连接。
16.一种在含有CAM入口的CAM阵列中进行数种CAM搜索的方法,其中CAM入口含有存储在多个存储电容器中的可搜索数据的字,所述方法包括(a)进行字的非破坏性确定;和(b)在完成(a)之后进行CAM搜索。
17.根据权利要求16所述的方法,还包括(c)将字写回到多个存储电容器中,其中(b)是在完成(c)之前进行的。
18.根据权利要求16所述的方法,还包括(d)对在(a)中确定的字进行错误检测处理。
19.根据权利要求17所述的方法,还包括(d)对在(a)中确定的字进行错误检测处理,其中(d)是在(c)之前完成的。
20.一种数字系统,包括CAM单元,所述CAM单元包括数据存储器件;通行门,其包括第一和第二通行开关的层叠,第一通行开关在节点上与第二通行开关串联;可操作地控制第二通行开关的数据存储器件;和与节点相连接的第三通行开关,用于检测数据存储器件的逻辑状态。
全文摘要
一种动态内容可寻址存储器(DCAM)单元拓扑结构,包含能够进行既不会延迟又不会中断CAM搜索周期的存储数据“隐”刷新的较少晶体管,从而提供了类SCAM的性能。进行非破坏性读出操作使得存储数据不必由于刷新-读出操作而回写。在读出操作之后,和在回写刷新数据之前或甚至同时,可以进行可靠的CAM搜索。可以在刷新周期进行中对每个CAM入口进行软错误检测处理。DCAM单元可以用于诸如数字计算机和网络路由器之类的数字系统中。
文档编号G11C15/04GK1357892SQ0114298
公开日2002年7月10日 申请日期2001年12月6日 优先权日2000年12月6日
发明者凯文·A·巴特森, 罗伯特·E·布希, 加勒特·S·科克 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1