[发明专利]一种TCAM查找方法及装置在审
申请号: | 201711486018.7 | 申请日: | 2017-12-30 |
公开(公告)号: | CN108287946A | 公开(公告)日: | 2018-07-17 |
发明(设计)人: | 王晶;许俊;夏杰 | 申请(专利权)人: | 盛科网络(苏州)有限公司 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 苏州集律知识产权代理事务所(普通合伙) 32269 | 代理人: | 安纪平 |
地址: | 215000 江苏省苏州市工业园区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据片段 第一数据 匹配 数据位宽 表项数据 表项 数据分割 验证 分割 | ||
本发明揭示了一种TCAM查找方法及装置,方法包括将TCAM中每一个表项数据均分割成N个第一数据片段;将待查找数据分割成N个第二数据片段,且N个第二数据片段的数据位宽与N个第一数据片段的数据位宽一一对应;N个第二数据片段与TCAM中第一个表项的N个第一数据片段一一进行匹配,若当前第二数据片段与第一数据片段不匹配,则以后的第二数据片段停止匹配并进行下一个表项数据片段的匹配。本发明能够提高TCAM查找效率,适用于数据位宽较大、表项数量较多的TCAM的验证。
技术领域
本发明涉及一种集成电路设计技术领域,尤其是涉及一种提高TCAM验证效率的TCAM查找方法及装置。
背景技术
TCAM(Ternary content addressable memory,三态内容寻址存储器),能够满足高速实时通信的极速查找需求,查找速度快,每个周期即可完成一次查找,常用于快速查找ACL、路由等表项。
在集成电路设计过程中,对于高速实时通信的应用要求,通常选择TCAM查找技术。若TCAM查找模块出现缺陷会导致查找结果错误,从而影响芯片的功能,因此,对带有TCAM模块的芯片进行验证非常重要。
现有的TCAM验证技术中,常使用真值表直接对TCAM中每个表项中的每个比特位进行查找。随着集成电路的快速发展,TCAM的查找数据位宽越来越大,表项数量越来越多,采用上述方式验证时消耗大量的时间成本,验证效率低,因此该验证方式不适用于数据位宽较大、表项数据量较多的TCAM模块。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种查找效率高、适用于验证数据位宽较大、表项数量较多的TCAM模块的TCAM查找方法及装置。
为实现上述目的,本发明提出如下技术方案:一种TCAM查找方法,包括如下步骤:
S1,将TCAM中每一个表项数据均分割成N个第一数据片段;
S2,将待查找数据分割成N个第二数据片段:Slice(0)~Slice(n-1),且N个第二数据片段的数据位宽与N个第一数据片段的数据位宽一一对应;
S3,将N个第二数据片段与TCAM中第一个表项的N个第一数据片段按照Slice(0)~Slice(n-1)的顺序一一进行匹配,若第m个第二数据片段与第一数据片段不匹配,则Slice(m)~Slice(n-1)的数据片段停止匹配并进行下一个表项中数据片段的匹配。
优选地,每个第一数据片段的数据位宽均相同。
优选地,在步骤S3中,还通过设置标志位用于标识的查找表项中第m个第二数据片段与第一数据片段是否匹配。
优选地,所述查找的表项中第m+1个第二数据片段与第一数据片段匹配之前先查看标志位的值。
优选地,所述标志位的值为0时,表示查找的表项中第m个第二数据片段与第一数据片段匹配,为1时,表示表示查找的表项中第m个第二数据片段与第一数据片段不匹配。
一种TCAM查找装置,包括
第一数据分段模块,用于将TCAM中每一个表项数据均分割成N个第一数据片段;
第二数据分段模块,用于将待查找数据分割成N个第二数据片段:Slice(0)~Slice(n-1),且N个第二数据片段的数据位宽与N个第一数据片段的数据位宽一一对应;以及
数据匹配模块,用于将N个第二数据片段与TCAM中第一个表项的N个第一数据片段按照Slice(0)~Slice(n-1)的顺序一一进行匹配,若第m个第二数据片段与第一数据片段不匹配,则Slice(m)~Slice(n-1)的数据片段停止匹配并进行下一个表项中数据片段的匹配。
优选地,每个第一数据片段的数据位宽均相同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛科网络(苏州)有限公司,未经盛科网络(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711486018.7/2.html,转载请声明来源钻瓜专利网。