CN109637571A - 三态内容可寻址存储器搜索线分割控制装置、系统和方法 - Google Patents

三态内容可寻址存储器搜索线分割控制装置、系统和方法 Download PDF

Info

Publication number
CN109637571A
CN109637571A CN201811573673.0A CN201811573673A CN109637571A CN 109637571 A CN109637571 A CN 109637571A CN 201811573673 A CN201811573673 A CN 201811573673A CN 109637571 A CN109637571 A CN 109637571A
Authority
CN
China
Prior art keywords
line
scounting line
scounting
tcam
sub
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
Application number
CN201811573673.0A
Other languages
English (en)
Other versions
CN109637571B (zh
Inventor
杨昌楷
王建龙
黄瑞锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Haiguang Integrated Circuit Design Co Ltd
Original Assignee
Chengdu Haiguang Integrated Circuit Design Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Haiguang Integrated Circuit Design Co Ltd filed Critical Chengdu Haiguang Integrated Circuit Design Co Ltd
Priority to CN201811573673.0A priority Critical patent/CN109637571B/zh
Publication of CN109637571A publication Critical patent/CN109637571A/zh
Application granted granted Critical
Publication of CN109637571B publication Critical patent/CN109637571B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital 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/04Digital 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)

Abstract

一种用于三态内容可寻址存储器的搜索线分割控制装置,所述三态内容可寻址存储器中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,沿每条子搜索线设置多个TCAM单元,所述搜索线分割控制装置用于控制所述子搜索线翻转,其特征在于,所述搜索线分割控制装置包括:读取单元,用于对沿每条子搜索线设置所述多个TCAM单元的输出进行读取;及控制单元,根据所述读取单元的读取结果,所有TCAM单元的输出均为表示“不关心”状态的值,则禁止该子搜索线翻转,否则允许该子搜索线翻转。本发明提供了一种能够采用分割搜索线并加以硬件控制的方式使路由表中冗余的比较节点的搜索线不参与翻转从而达到省功耗的目的,同时提高了门控值配置过程的效率。

Description

三态内容可寻址存储器搜索线分割控制装置、系统和方法
技术领域
本发明涉及一种搜索线分割控制系统、装置和方法,更具体地说,涉及一种低功耗三态内容可寻址存储器搜索线分割控制装置、系统和方法。
背景技术
TCAM(Ternary Content Addressable Memory)是一种三态内容寻址存储器,它是从CAM(Content Addressable Memory,内容寻址存储器)的基础上发展而来的。一般的CAM存储器中每个bit位的状态只有两个,“0”或“1”,而TCAM中每个bit位有三种状态,除掉“0”和“1”外,还有一个“不关心”(“don’t care”)状态,所以称为“三态”,它是通过掩码来实现的,正是TCAM的这个第三种状态特征使其既能进行精确匹配查找,又能进行模糊匹配查找,所以主要用于快速查找ACL(Access Control List,访问控制列表)、路由等表项。
大型网络是靠路由器将各个网络连接起来,各网络之间或者内网的机器之间的通信都是靠路由器完成,包在网络间的转发都需要通过路由查找来寻找下一转发的地址,随着路由表越来越大导致以往的软件查找算法完全不能满足路由查找的需求,三态内容可寻址存储器(TCAM)是一种在一个周期内就能完成查找操作的硬件查找,因此它就被广泛应用于大型的路由器。
此外,随着应用的扩展,对更宽字的TCAM的需求越来越大,这意味着与每一个匹配线相连的单元的数量会增加,这导致匹配线的电容相应地增加,其结果是,在搜索匹配期间,需要增加对匹配线进行充电和放电的电流,这无疑进一步导致了功耗的增加。传统的方式由于没有考虑到各条目存储数据的规律性,所有的子块中的所有子搜索线必须都是参与翻转,因此功耗将会比较大。
发明内容
发明要解决的课题
TCAM虽然速度快,但是在一个周期内完成整个路由表的查找是靠每个比较节点都工作才完成的,因此功耗问题就日益严重。
现有技术虽然也是分块方式来提高了搜索线的速度,但是所有的子搜索线都同时进行翻转即充放电,浪费了可以不翻转的搜索线功耗。
本发明是鉴于现有技术存在的上述问题而做出的,其目的在于提供一种能够采用分割搜索线并加以硬件控制的方式把路由表中冗余的比较节点的搜索线不参与翻转从而达到了省功耗的目的,同时本发明提出的硬件方式计算找出搜索线门控模板值大大提高了门控值配置过程的效率。
用于解决课题的手段
为了解决上述问题,本发明的一方面提供了一种用于三态内容可寻址存储器的搜索线分割控制装置,所述三态内容可寻址存储器中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,沿每条子搜索线设置多个TCAM单元,所述搜索线分割控制装置用于控制所述子搜索线的翻转,其特征在于,所述搜索线分割控制装置包括:读取单元,用于对沿每条子搜索线设置所述多个TCAM单元的输出进行读取;以及控制单元,根据所述读取单元的读取结果,所有TCAM单元的输出均为表示“不关心”状态的值,则禁止该子搜索线的翻转,否则允许该子搜索线的翻转。
优选地,根据前述的搜索线分割控制装置,其特征在于,沿每条子搜索线设置所述多个TCAM单元连接到相同的位线,每个所述TCAM单元包括两个6管静态随机存储器(6-TSRAM)和比较单元,所述6管静态随机存储器均连接到上述位线,所述比较单元包括四个晶体管,其中一对的栅极分别连接到上述两个6管静态随机存储器中的存储节点,另一对的栅极连接到所述子搜索线。
优选地,根据前述的搜索线分割控制装置,其特征在于,所述读取单元包括:灵敏放大器,其输入端连接到上述位线,读取所述多个TCAM单元的输出。
优选地,根据前述的搜索线分割控制装置,其特征在于,所述控制单元包括:触发器,其Q端的输出被输入到所述子搜索线以控制其翻转,并且与所述灵敏放大器的输出一同被输入到“或”门的两个输入端,该“或”门的输出被输入到所述触发器的D端。
优选地,根据前述的搜索线分割控制装置,其特征在于,还包括寄存器,用于采样所述“或”门的输出信号并进行寄存数据或控制关闭搜索线。
优选地,根据前述的搜索线分割控制装置,其特征在于,所述三态内容可寻址存储器中还包括全局搜索线,所述控制单元还包括“与”门,上述触发器的Q端的输出与上述全局搜索线连接到上述“与”门的两个输入端,且该“与”门的输出被输入到所述子搜索线以控制器翻转。
优选地,根据前述的搜索线分割控制装置,其特征在于,所述触发单元还包括时钟门控以及复位端。
本发明的另一方面提供了一种三态内容可寻址存储器搜索线分割控制系统,所述三态内容可寻址存储器搜索线分割控制系统中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,所述子搜索线连接有上述任一所述的搜索线分割控制装置用于控制所述子搜索线的翻转,其特征在于,所述三态内容可寻址存储器搜索线分割控制系统包括:多个扫描单元,对应于所述多个子阵列,用于对所对应的子阵列中的字线进行扫描;
地址控制单元,用于控制所述扫描单元逐一地搜索字线的地址。
优选地,根据前述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元包括:地址自增器,用于控制各个子阵列所述读取单元的搜索地址的搜索范围逐拍增加。
优选地,根据前述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元还包括:地址判断单元,用于在所述读取步骤进行中判断并控制所述搜索线是否开启或关闭,实现对所有所述子阵列同时扫描读取。
优选地,根据前述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元还包括:块译码器,用于扩充各个子阵列所述读取单元的搜索地址的搜索范围;
优选地,根据前述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述扫描单元包括:预扫描单元,用于将接收到的地址进行初步扩大;二层扫描单元,用于将所述预扫描单元初步扩大的地址进行二次扩大至所有位线。
本发明的另一方面提供了一种用于三态内容可寻址存储器搜索线分割控制系统的搜索线分割控制方法,所述三态内容可寻址存储器搜索线分割控制系统中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,沿每条搜索线设置多个TCAM单元,所述搜索线分割控制方法用于控制所述子搜索线的翻转,其特征在于,所述搜索线分割控制方法包括:读取步骤,对沿每条子搜索线设置所述多个TCAM单元的输出进行读取;以及控制步骤,在所述读取步骤中的读取结果,所有TCAM单元的输出均为表示“不关心”状态的值,则禁止该子搜索线的翻转,否则允许该子搜索线的翻转。
本发明提供了一种能够采用分割搜索线并加以硬件控制的方式把路由表中冗余的比较节点的搜索线不参与翻转从而达到了省功耗的目的,同时本发明提出的硬件方式计算找出搜索线门控模板值大大提高了门控值配置过程的效率。
附图说明
图1是现有技术中的TCAM单元的示意图。
图2是示出了现有技术中TCAM单元阵列的示意图。
图3是本发明的搜索线分割控制装置的一个实施例的示意图。
图4是本发明的搜索线分割控制系统的一个实施例的示意图。
图5是本发明的一个实施例的搜索线分割控制系统的控制时序图。
具体实施方式
下面将结合附图具体说明本发明的示例性实施方式,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
下面参考图1和图2,对现有技术中的TCAM单元的实现方式及其构成进行说明。
如图1所示是一种TCAM单元的实现方式,TCAM由两个6-T SRAM加一组比较单元组成,一个单元称为KeyValue,另一个单元称为
KeyMask,两个SRAM单元的存储节点Q分别控制M9、M10,搜索线对SL、SLN控制M7、M8,比较结果输出到匹配线ML。
TCAM单元比较有三种状态:
1){QX,QY}=01,{SL,SLN}=01或10,比较结果为分别为MISS(失靶)和Match(匹配);
2){QX,QY}=10,{SL,SLN}=01或10,比较结果为分别为Match(匹配)和MISS(失靶);
3){QX,QY}=00,{SL,SLN}=01或10,不进行比较为不关心X状态;
4){QX,QY}=11,禁止配置状态。
如图2所示,TCAM由以包括多行和多列的矩阵形式排列的TCAM单元构成。一行上的TCAM单元组成一个字,它可以是32、64、128位或更高。在进行搜索时,匹配线首先设置低电平,使TCAM阵列的所有匹配线ML预充电为高电平,逻辑上表示为1,待搜索的数据字按照各个位从各个搜索线对SL和SLN输入,搜索线对SL和SLN与TCAM单元的比较单元相连,这样,待搜索的数据字的各个位在各个TCAM单元的比较单元中与KeyValue单元和KeyMask单元所存储的数据位进行比较,如果匹配,相应的匹配线保持高电平,如果不匹配,相应的匹配线放电到低电平或地。这种结果输出给匹配线,匹配线对指示的结果进行灵敏放大和输出。可见,在搜索匹配期间,针对每一个搜索操作,都需要先将所有的匹配线预充电到高电平,然后对于不匹配的情况,通过放电到低电平或地来指示。进一步还已知,在大多数TCAM应用中,“不匹配”的情况比“匹配”的情况发生得更为频繁。在这种情况下,将所有的匹配线预充电到高电平“1”,然后将占大多数情况的不发生匹配的匹配线放电到低电平“0”,会导致较高的能量消耗。
如图2所示表示TCAM单元,此处总共有256x128的阵列,总共分为4个子块,每块有64条条目,由于没有考虑到各条目存储数据的规律性,传统的方式所有的子块中的所有子搜索线必须都是参与翻转,因此功耗将会比较大。
下面,对本发明的一个实施例进行说明。
[搜索线分割控制装置]
如图3所示,本发明的搜索线分割控制装置的一个实施例,其中读取单元包括全局搜索线对SL和SLN和经过一个“与”门门控后接到的局部搜索线对L_SL和L_SLN以及位线对BL和BLN和灵敏放大器SenseAMP,用于对沿每条子搜索线设置的所述多个TCAM单元的输出进行读取;控制单元为逻辑收集模块,逻辑收集模块包括了“或”门I3、和带时钟门控CLK的和复位端rstn的触发器DQ,控制单元用于根据读取单元的读取结果,当所有TCAM单元的输出均为表示“不关心”状态的值时,禁止该子搜索线的翻转,否则允许该子搜索线的翻转。
在本实施例中,包含有多个TCAM单元,沿每条子搜索线设置所述多个TCAM单元连接到相同的位线,每个所述TCAM单元包括两个6管静态随机存储器和比较单元,所述6管静态随机存储器均连接到上述位线,所述比较单元包括四个晶体管,其中一对的栅极分别连接到上述两个6管静态随机存储器中的存储节点,另一对的栅极连接到所述子搜索线。
其中全局搜索线对SL和SLN在TCAM单元阵列外部,并在TCAM单元阵列的列方向上延伸,并且由在列方向上布置的多个TCAM单元共享,用于接收搜索信号从而控制对整体TCAM阵列进行搜索。
全局搜索线对SL和SLN连接至TCAM单元阵列内部为局部搜索线对LSL和LSLN,局部搜索线对LSL和LSLN与每个TCAM阵列连接,用于对单个TCAM阵列进行搜索。
在全局搜索线对SL和SLN连接至TCAM单元阵列的入口处分别有I0和I1两个逻辑判断“与”门作为搜索控制单元,I0和I1并联与下述触发器DQ的Q端连接,触发器的Q端的输出与全局搜索线对SL和SLN连接到I0和I1两个“与”门,I0和I1“与”门的输出被输入到子搜索线中以控制器翻转。
在每个局部搜索线对LSL和LSLN连接的每个TCAM单元连接有位线对BL和BLN,在如图3所示TCAM单元阵列的列方向上延伸,并且由在列方向上布置的多个TCAM单元共享,用于输出所述局部搜索单元对单个TCAM阵列的搜索结果。
位线对BL和BLN接入灵敏放大器SenseAMP,由位线对BL和BLN将搜索线在搜索过程中产生的小信号搜索结果传输进灵敏放大器SenseAMP进行放大并输出放大信号S0,放大信号S0可以为“1”或“0”或“不关心”等搜索结果。
放大信号S0进入“或”门I3,I3作为用于将灵敏放大器SenseAMP输出的放大信号S0与触发器DQ的ENQ输出信号值进行逻辑或判断后送入触发器DQ的D端即寄存器I4,寄存器I4采样“或”门I3的输出信号并进行寄存数据,以用于控制关闭搜索线,当S0为1的时候被触发器DQ采样到就会一直寄存在寄存器I4中使ENQ=1。
在本实施例中,触发器DQ作为触发单元是控制本发明的搜索线分割控制装置的核心模块,用于采样“或”门I3的输出信号并进行锁存数据或控制关闭搜索线,子阵列中只要有一个TCAM单元读出S0为1的时候被触发器DQ采样到就会一直寄存在触发器DQ里的寄存器I4中使ENQ=1,只有整列的所有TCAM单元都为0的时候ENQ=0,也就是说所有{QX,QY}=00的列ENQ就会维持在0来关闭子搜索线。触发器DQ的Q端I4用于输出触发器DQ的ENQ值,与放大信号S0进入“或”门I3进行逻辑或的判断,子阵列中的TCAM单元读出S0为0的时则ENQ=0进入I0和I1与全局搜索线对SL和SLN进行逻辑与判断后继续搜索过程。
在本实施例中,其中,触发器DQ中还包括时钟门控CLK作为计时单元用于确定搜索的周期和复位端rstn用于在系统启动后,将所述触发单元的数据进行清零,其中还包括I5为收集“与”门,用于收集启动数据,关闭时钟门控。
由于路由表中的有效Entry长度通常是不固定的,最长前缀的路由表会把相同长度的归类到邻近的条目,如表1所示的TCAM单元简化8x8的TCAM存储表,0代表{QX,QY}=01,1代表{QX,QY}=10,X代表{QX,QY}=00,在全是X的列的情况下子搜索线可以不需要翻转,因此本发明在子搜索线入口加上了门控,并由触发器DQ进行控制,触发器DQ的值由一个“或”门组成的逻辑收集电路来确定,只需要将每个子阵列中的所有条目数据读取出来就可以确定控制触发器DQ的值,这样就避免了通过软件对数据分析找出路由表的规律然后将控制逻辑写入到寄存器,大大提高了配置效率。
表1 8x8TCAM存储表
[搜索线分割控制系统]
如图4所示为本发明的搜索线分割控制系统的一个实施例的示意图。
本发明的搜索线分割控制系统包括上述搜索线分割控制装置、地址控制单元模块,地址控制单元模块包括地址自增器Address inc、地址判断单元BK和块译码器2to4dec。
其中,地址自增器Address inc包括外部自增端口A[7:0]和内部自增端口AI[7:0],在SL_scanen=0时,AI[7:0]=A[7:0];在SL_scanen=1时,AI[7:0]由地址自增器内部计数器控制实现AI[7:0]=AI[7:0]+1,从0x00->0xFF。
其中,块译码器2to4dec具有端口A[9:8],用于扩充对各个子阵列的搜索地址的搜索范围。
地址判断单元为“或”门BK,对块译码器2to4dec和搜索端口SL_scanen的数据进行或逻辑判断,当SL_scanen=0时,按照正常扫描读取顺序,从BK0读取至BK3,当SL_scanen=1时控制所有子阵列同时工作,对应的字线同时有效,对各个子阵列的所有字线都扫描读取一遍,然后由逻辑收集模块收集到的逻辑值自动控制门控是否开启或关闭。
本发明的搜索线分割控制系统包括多个TCAM阵列,参见图4,每个子阵列包括多个TCAM单元阵列、位线对BL和BLN、和每对位线对BL和BLN对应的搜索线分割控制装置以及字线WL0~WL127。
其中,与图4中所示的每个TCAM单元阵列每列对应,提供了位线对BL和BLN。与每个TCAM单元阵列的每行对应,提供了WL0~WL127共128个字线。
其中,本发明的三态内容可寻址存储器搜索线分割控制系统包括地址扫描单元模块对,其中预扫描单元为字线预译码器Predec,用于将接收到的数据进行初步扩大,如在本实施例中将A[7:0]扩大至搜索20条字线。
二层扫描单元为字线译码器Xdec,用于将字线预译码器Predec初步扩大的20条字线扩充至128条字线。
如图4所示,本发明的三态内容可寻址存储器搜索线分割控制系统将TCAM的译码器稍作修改同时遍历子阵列,在子阵列的使能端加入一个地址判断单元“或”门BK,当SL_scanen=1时候所有子阵列同时工作对应的字线同时有效,各个子阵列的所有字线都扫描读取一遍,然后由逻辑收集模块收集到的逻辑值自动控制门控是否开启或关闭。对于使用TCAM的上层配置系统来说,由于所有的子阵列都是并行扫描的所以只需要在配置完TCAM表后使能SL_scanen=1,然后等待固定的周期即128个周期后关闭SL_scanen=0,门控的值就已经配置正确了,这样的配置速度是软件的方式去搜索每一列的存储规律无法比拟的。
[搜索线分割控制方法]
当正常读取SL_scanen=0时,
计时步骤,在系统启动后,时钟门控CLK确定搜索周期;
复位步骤,时钟门控CLK稳定后,配置TCAM表,将数据写入到TCAM阵列,将所述触发单元的数据进行清零;
读取步骤,启动信号SL_scanen=0,对沿每条子搜索线设置的多个TCAM单元的输出开始进行读取;
地址自增步骤,所有子阵列的译码器开始工作,数据通过地址自增器AI[7:0]=A[7:0];
地址扩充步骤,块译码器2to4dec通过端口A[9:8],扩充对各个子阵列的搜索地址的搜索范围;
扫描步骤,地址自增器和块译码器2to4dec的地址进入字线预译码器
Predec,字线预译码器Predec将接收到的数据进行初步扩大,如在本实施例中将A[7:0]扩大至搜索20条字线后进入二层扫描单元即字线译码器Xdec,将字线预译码器Predec初步扩大的20条字线扩充至128条字线;
全局搜索步骤,全局搜索线对SL和SLN接收到搜索信号后对整体TCAM阵列进行搜索,同时ENQ从触发器的Q端输出与全局搜索线对SL和SLN连接到I0和I1两个“与”门,逻辑判断与后输入到子搜索线中以控制器翻转;
局部搜索步骤,局部搜索线对LSL和LSLN与每个TCAM阵列连接,在接收到搜索数据后对单个TCAM阵列进行搜索;
信号放大步骤,位线对BL和BLN将搜索线在搜索过程中产生的小信号搜索结果传输进灵敏放大器SenseAMP进行放大并输出放大信号S0,放大信号S0可以为“1”或“0”或“不关心”等搜索结果。
放大信号S0进入“或”门I3,I3作为用于将灵敏放大器SenseAMP输出的放大信号S0与触发器DQ的ENQ输出信号值进行逻辑或判断后送入触发器DQ的D端即寄存器I4。
控制步骤,触发器DQ采样“或”门I3的输出信号并进行锁存数据或控制关闭搜索线,只有整列的所有TCAM单元都为0的时候ENQ=0,也就是说所有{QX,QY}=00的列ENQ就会维持在0来关闭子搜索线。触发器DQ的Q端I4用于输出触发器DQ的ENQ值,与放大信号S0进入“或”门I3进行逻辑或的判断,子阵列中的TCAM单元读出S0为0的时则ENQ=0进入I0和I1与全局搜索线对SL和SLN进行逻辑与判断后继续搜索过程。
地址判断步骤,SL_scanen=0时,按照正常扫描读取顺序,从BK0读取至BK3。
当快速读取SL_scanen=1时,
计时步骤,在系统启动后,时钟门控CLK确定搜索周期;
复位步骤,时钟门控CLK稳定后,配置TCAM表,将数据写入到TCAM阵列,将所述触发单元的数据进行清零;
读取步骤,启动信号SL_scanen=1,对沿每条子搜索线设置的多个TCAM单元的输出开始进行读取;
地址自增步骤,所有子阵列的译码器开始工作,数据通过地址自增器AI[7:0]由地址自增器内部计数器控制实现AI[7:0]=AI[7:0]+1,从0x00->0xFF;
地址扩充步骤,块译码器2to4dec通过端口A[9:8],扩充对各个子阵列的搜索地址的搜索范围;
扫描步骤,地址自增器和块译码器2to4dec的地址进入字线预译码器Predec,字线预译码器Predec将接收到的数据进行初步扩大,如在本实施例中将A[7:0]扩大至搜索20条字线后进入二层扫描单元即字线译码器Xdec,将字线预译码器Predec初步扩大的20条字线扩充至128条字线,自增地址扫描完后,SL_scanen=0,读使能RDEN=0,配置完毕;
全局搜索步骤,全局搜索线对SL和SLN接收到搜索信号后对整体TCAM阵列进行搜索,同时ENQ从触发器的Q端输出与全局搜索线对SL和SLN连接到I0和I1两个“与”门,逻辑判断与后输入到子搜索线中以控制器翻转;
局部搜索步骤,局部搜索线对LSL和LSLN与每个TCAM阵列连接,在接收到搜索数据后对单个TCAM阵列进行搜索;
信号放大步骤,位线对BL和BLN将搜索线在搜索过程中产生的小信号搜索结果传输进灵敏放大器SenseAMP进行放大并输出放大信号S0,放大信号S0可以为“1”或“0”或“不关心”等搜索结果。
放大信号S0进入“或”门I3,I3作为用于将灵敏放大器SenseAMP输出的放大信号S0与触发器DQ的ENQ输出信号值进行逻辑或判断后送入触发器DQ的D端即寄存器I4。
控制步骤,触发器DQ采样“或”门I3的输出信号并进行锁存数据或控制关闭搜索线,用于采样“或”门I3的输出信号并进行锁存数据或控制关闭搜索线,子阵列中只要有一个TCAM单元读出S0为1的时候被触发器DQ采样到就会一直寄存在触发器DQ里的寄存器I4中使ENQ=1。
地址判断步骤,当SL_scanen=1时控制所有子阵列同时工作,对应的字线同时有效,对各个子阵列的所有字线都扫描读取一遍,然后由逻辑收集模块收集到的逻辑值自动控制门控是否开启或关闭。
如图5所示为本发明的一个实施例的搜索线分割控制系统的控制时序的示意图。
1)复位端rstn将控制触发器DQ清零产生低电平脉冲,主要是把图3中的寄存器I4复位使其输出ENQ=0
2)响应于该复位命令,RDEN读使能信号置为1,灵敏放大器的SAEN间接被RDEN控制,所以在后续的每个时钟灵敏放大器都会工作一次。
3)在RDEN=1的同时SL_scanen=1,Fig3中的I5“与”门开启,CLK时钟可以控制I4触发器;所有子阵列的译码器开始工作,灵敏放大器的输出SO就被I4、I3、I5组成的脉冲收集器收集。
4)响应于读取命令,地址自增器(address inc)输出AI[7:0]从地址0逐拍增加,在每个时钟clock的下降沿自增一次,没个时钟周期都执行一次读操作和脉冲收集操作,直到地址到达0xFF。
5)同时分割搜索线控制触发器DQ门控打开逐拍采样从子阵列中读取出来的数据,由于灵敏放大器的输出S0和触发器DQ的输出ENQ做或逻辑后送入到触发器DQ的D端,所以子阵列中只要有一个存储单元读出S0为1的时候被触发器DQ采样到就会一直锁存在触发器DQ里ENQ=1。一旦收集到SO高电平状态,那么ENQ就始终等于1,表示门控I0I1开启,I0I1所对应的L_SL L_SLN参与比较。反之不参与比较,就不翻转省去功耗。
以上参考附图,基于实施方式的实施例和变形例说明了本发明,但本发明并非限定于上述的实施方式,根据实际需要等将各实施方式的部分构成适当组合或置换后的方案,也包含在本发明的范围内。另外,还可以基于本领域技术人员的知识适当重组各实施方式的组合和处理顺序,或者对各实施方式施加各种设计变更等变形,被施加了这样的变形的实施方式也可能包含在本发明的范围内。

Claims (13)

1.一种用于三态内容可寻址存储器的搜索线分割控制装置,所述三态内容可寻址存储器中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,沿每条子搜索线设置多个TCAM单元,所述搜索线分割控制装置用于控制所述子搜索线的翻转,其特征在于,所述搜索线分割控制装置包括:
读取单元,用于对沿每条子搜索线设置所述多个TCAM单元的输出进行读取;以及
控制单元,根据所述读取单元的读取结果,所有TCAM单元的输出均为表示“不关心”状态的值,则禁止该子搜索线的翻转,否则允许该子搜索线的翻转。
2.根据权利要求1所述的搜索线分割控制装置,其特征在于,
沿每条子搜索线设置所述多个TCAM单元连接到相同的位线,
每个所述TCAM单元包括两个6管静态随机存储器和比较单元,
所述6管静态随机存储器均连接到上述位线,
所述比较单元包括四个晶体管,其中一对的栅极分别连接到上述两个6管静态随机存储器中的存储节点,另一对的栅极连接到所述子搜索线。
3.根据权利要求2所述的搜索线分割控制装置,其特征在于,所述读取单元包括:
灵敏放大器,其输入端连接到上述位线,读取所述多个TCAM单元的输出。
4.根据权利要求3所述的搜索线分割控制装置,其特征在于,所述控制单元包括:
触发器,其Q端的输出被输入到所述子搜索线以控制其翻转,并且与所述灵敏放大器的输出一同被输入到“或”门的两个输入端,该“或”门的输出被输入到所述触发器的D端。
5.根据权利要求4所述的搜索线分割控制装置,其特征在于,所述触发器在所述D端还包括寄存器,用于采样所述“或”门的输出信号并进行寄存数据,以用于控制关闭搜索线。
6.根据权利要求5所述的搜索线分割控制装置,其特征在于,
所述三态内容可寻址存储器中还包括全局搜索线,
所述控制单元还包括“与”门,上述触发器的Q端的输出与上述全局搜索线连接到上述“与”门的两个输入端,且该“与”门的输出被输入到所述子搜索线以控制其翻转。
7.根据权利要求6所述的搜索线分割控制装置,其特征在于,所述触发器还包括时钟门控以及复位端。
8.一种三态内容可寻址存储器搜索线分割控制系统,所述三态内容可寻址存储器搜索线分割控制系统中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,所述子搜索线连接有权利要求1~6任一所述的搜索线分割控制装置用于控制所述子搜索线的翻转,其特征在于,所述三态内容可寻址存储器搜索线分割控制系统包括:
多个扫描单元,对应于所述多个子阵列,用于对所对应的子阵列中的字线进行扫描;
地址控制单元,用于控制所述扫描单元逐一地搜索字线的地址。
9.根据权利要求8所述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元包括:
地址自增器,用于控制各个子阵列所述读取单元的搜索地址的搜索范围逐拍增加。
10.根据权利要求9所述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元还包括:
地址判断单元,用于在所述读取单元的读取进行中判断是否开启或关闭所述搜索线,实现对所有所述子阵列同时扫描读取。
11.根据权利要求10所述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述地址控制单元还包括:
块译码器,用于在所述读取单元的正常读取过程中扩充各个子阵列的搜索地址范围。
12.根据权利要求8所述的三态内容可寻址存储器搜索线分割控制系统,其特征在于,所述扫描单元包括:
预扫描单元,用于将接收到的地址进行初步扩大;
二层扫描单元,用于将所述预扫描单元初步扩大的地址进行二次扩大至所有位线。
13.一种用于三态内容可寻址存储器搜索线分割控制系统的搜索线分割控制方法,所述三态内容可寻址存储器搜索线分割控制系统中包括被分为多个子阵列的TCAM阵列,在所述子阵列中包括多条子搜索线,沿每条搜索线设置多个TCAM单元,所述搜索线分割控制方法用于控制所述子搜索线的翻转,其特征在于,所述搜索线分割控制方法包括:
读取步骤,对沿每条子搜索线设置所述多个TCAM单元的输出进行读取;以及
控制步骤,在所述读取步骤中的读取结果,所有TCAM单元的输出均为表示“不关心”状态的值,则禁止该子搜索线的翻转,否则允许该子搜索线的翻转。
CN201811573673.0A 2018-12-21 2018-12-21 三态内容可寻址存储器搜索线分割控制装置、系统和方法 Active CN109637571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811573673.0A CN109637571B (zh) 2018-12-21 2018-12-21 三态内容可寻址存储器搜索线分割控制装置、系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811573673.0A CN109637571B (zh) 2018-12-21 2018-12-21 三态内容可寻址存储器搜索线分割控制装置、系统和方法

Publications (2)

Publication Number Publication Date
CN109637571A true CN109637571A (zh) 2019-04-16
CN109637571B CN109637571B (zh) 2020-11-20

Family

ID=66076439

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811573673.0A Active CN109637571B (zh) 2018-12-21 2018-12-21 三态内容可寻址存储器搜索线分割控制装置、系统和方法

Country Status (1)

Country Link
CN (1) CN109637571B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111341365A (zh) * 2020-03-05 2020-06-26 北京大学 三态内容可寻址存储器及其操作方法
CN111128262B (zh) * 2019-12-17 2021-02-23 海光信息技术股份有限公司 存储器电路、电路控制方法、集成电路器件及处理器
US20210327508A1 (en) * 2020-01-15 2021-10-21 Hewlett Packard Enterprise Development Lp Methods and systems for an analog cam with fuzzy search
CN114095215A (zh) * 2021-11-01 2022-02-25 锐捷网络股份有限公司 处理访问控制列表的方法、装置、设备及介质
US11615827B2 (en) 2020-10-15 2023-03-28 Hewlett Packard Enterprise Development Lp Hardware accelerator with analog-content addressable memory (a-CAM) for decision tree computation

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291261A (zh) * 2011-08-16 2011-12-21 神州数码网络(北京)有限公司 一种大容量mac地址存在时二层环网协议加快收敛的方法
CN103325416A (zh) * 2013-07-11 2013-09-25 平湖凌云信息科技有限公司 一种减少内容可寻址存储器功耗的装置和方法
CN103380463A (zh) * 2010-12-22 2013-10-30 超威半导体公司 内容可寻址存储器的条件性预充电的匹配线
CN103531231A (zh) * 2013-10-28 2014-01-22 平湖凌云信息科技有限公司 三态内容寻址存储器
WO2014038340A1 (ja) * 2012-09-06 2014-03-13 日本電気株式会社 不揮発性連想メモリ及びその動作方法
US20160342662A1 (en) * 2010-08-01 2016-11-24 Gsi Technology Israel Ltd. Multi-stage tcam search
CN106486159A (zh) * 2015-08-28 2017-03-08 瑞萨电子株式会社 半导体器件

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160342662A1 (en) * 2010-08-01 2016-11-24 Gsi Technology Israel Ltd. Multi-stage tcam search
CN103380463A (zh) * 2010-12-22 2013-10-30 超威半导体公司 内容可寻址存储器的条件性预充电的匹配线
CN102291261A (zh) * 2011-08-16 2011-12-21 神州数码网络(北京)有限公司 一种大容量mac地址存在时二层环网协议加快收敛的方法
WO2014038340A1 (ja) * 2012-09-06 2014-03-13 日本電気株式会社 不揮発性連想メモリ及びその動作方法
CN103325416A (zh) * 2013-07-11 2013-09-25 平湖凌云信息科技有限公司 一种减少内容可寻址存储器功耗的装置和方法
CN103531231A (zh) * 2013-10-28 2014-01-22 平湖凌云信息科技有限公司 三态内容寻址存储器
CN106486159A (zh) * 2015-08-28 2017-03-08 瑞萨电子株式会社 半导体器件

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHEOL KIM 等: "Low Power Search Engine using Non-volatile Memory based TCAM with Priority Encoding and Selective Activation of Search Line and Match Line", 《2018 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111128262B (zh) * 2019-12-17 2021-02-23 海光信息技术股份有限公司 存储器电路、电路控制方法、集成电路器件及处理器
US20210327508A1 (en) * 2020-01-15 2021-10-21 Hewlett Packard Enterprise Development Lp Methods and systems for an analog cam with fuzzy search
US11694749B2 (en) * 2020-01-15 2023-07-04 Hewlett Packard Enterprise Development Lp Methods and systems for an analog CAM with fuzzy search
CN111341365A (zh) * 2020-03-05 2020-06-26 北京大学 三态内容可寻址存储器及其操作方法
CN111341365B (zh) * 2020-03-05 2022-02-15 北京大学 三态内容可寻址存储器及其操作方法
US11615827B2 (en) 2020-10-15 2023-03-28 Hewlett Packard Enterprise Development Lp Hardware accelerator with analog-content addressable memory (a-CAM) for decision tree computation
CN114095215A (zh) * 2021-11-01 2022-02-25 锐捷网络股份有限公司 处理访问控制列表的方法、装置、设备及介质

Also Published As

Publication number Publication date
CN109637571B (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
CN109637571A (zh) 三态内容可寻址存储器搜索线分割控制装置、系统和方法
CN1186782C (zh) 含有隐刷新的动态随机存取存储器内容可寻址存储器单元
US10776362B2 (en) Memory devices for pattern matching
CA2310295C (en) Multiple match detection circuit and method
US6262907B1 (en) Ternary CAM array
JP4343859B2 (ja) 半導体装置
USRE43359E1 (en) System and method for low power searching in content addressable memories using sampling search words to save power in compare lines
JP2003036679A (ja) 内容アドレス・メモリ
US7852653B2 (en) Content addressable memory
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
US7414873B2 (en) Low-power CAM cell
CN113053434B (zh) 基于FeFET结构的高能效TCAM及其操作方法
CN109119113A (zh) 半导体器件
CN100466103C (zh) 可寻址内容的存储单元
Jiang et al. A high speed and low power content-addressable memory (CAM) using pipelined scheme
US8023300B1 (en) Content addressable memory device capable of parallel state information transfers
US20060114706A1 (en) Content addressable memory with reduced search current and power
KR101136578B1 (ko) 터너리 내용 주소화 메모리
Zhou et al. Nonvolatile Crossbar 2D2R TCAM with Cell Size of 16.3 F 2 and K-means Clustering for Power Reduction
Mishra High Density Ternary Content Addressable Memory-Storage and Sensing
EP0805457A2 (en) Contents addressable memories
GB2312769A (en) Contents addressable memory
US20070297207A1 (en) Methods and apparatus for content addressable memory arrays including shared match lines

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