System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于组相连缓存的快速匹配查找系统、方法、设备及介质技术方案_技高网

基于组相连缓存的快速匹配查找系统、方法、设备及介质技术方案

技术编号:40275464 阅读:10 留言:0更新日期:2024-02-02 23:02
本发明专利技术公开了一种基于组相连缓存的快速匹配查找系统、方法、设备及介质:部署于FPGA中,主要包括哈希查表单元、组相连缓存单元、外存接口单元;哈希查表单元用于提供查表匹配服务;组相连缓存单元作为哈希查表单元与外存接口单元的中间衔接单元,由缓存匹配子单元、外存控制器接口子单元、脏表项更新子单元以及存储于缓存Block RAM单元内的主缓存表构成;外存接口单元用于连接组相连缓存单元和外部存储器;以及实现上述基于组相连缓存的快速匹配查找系统或方法的电子设备和计算机可读存储介质。本发明专利技术有效的降低外存的读取延迟,大幅提升在高查表负荷的情况下的哈希查找匹配速度。

【技术实现步骤摘要】

本专利技术属于计算机,更具体的说,是涉及一种基于组相连缓存的快速匹配查找系统、方法、设备及介质


技术介绍

1、目前网络防火墙或专用网关等设备对网络速度的要求越来越高,这导致在许多场合里需要对网络数据包进行五元组匹配或固定字段匹配的速率要求也越来越高。同时随着网络带宽的增加,单个链路上承载的业务也越来越多,这使得现在的网络防火墙或者专用网关等设备需要对更多的业务进行精确识别以区分不同业务和应用不同处理模型。这对目前以tcam和二分匹配查找为主的网络设备带来了较大的压力。并且随着可编程逻辑器件(fpga)在各种专业网络设备中的应用越来越广,使得能够运行在fpga上的大容量快速查找匹配技术变得极为重要。


技术实现思路

1、本专利技术的目的是为了克服现有技术中的不足,提出了一种基于组相连缓存的快速匹配查找系统、方法、设备及介质。本专利技术通过使用组相连缓存技术,对传统的哈希查找匹配技术进行改良,使得在使用psram、ddr、xram、hyperram等类型的外部存储器的哈希查表单元发生碰撞而转为链表查找时,有效的降低外存的读取延迟,大幅提升在高查表负荷的情况下的哈希查找匹配速度。

2、本专利技术的目的可通过以下技术方案实现。

3、一种基于组相连缓存的快速匹配查找系统,该快速匹配查找系统部署于fpga中,包括哈希查表单元、组相连缓存单元、外存接口单元,所述组相连缓存单元分别与哈希查表单元、外存接口单元相连,作为哈希查表单元与外存接口单元的中间衔接单元;

4、所述哈希查表单元用于提供查表匹配服务,当查表请求发送到哈希查表单元时,将查表请求中的数据经过摘要算法得出哈希值,取哈希值作为地址索引去组相连缓存单元中读取请求数据内容;所述组相连缓存单元由缓存匹配子单元、外存控制器接口子单元、脏表项更新子单元以及存储于缓存block ram单元内的主缓存表构成;所述外存接口单元用于连接组相连缓存单元和外部存储器;

5、在组相连缓存单元中,首先缓存匹配子单元将来自于哈希查表单元的读取请求的地址分为tag、group、block三个部分,由tag字段和block字段构成主缓存表的索引地址,从主缓存表中获取缓存条目数据,将group的值与缓存条目数据中数据头的addr进行对比,同时关注缓存条目数据中数据头的脏标志和有效标志;若group的值与缓存条目数据中数据头的addr字段值一致,且脏标志为无效,有效标志为有效,则认定缓存条目命中,向哈希查表单元返回该条目数据;否则认定为缓存条目未命中,则触发数据更新操作,此时外存控制器接口子单元产生外存读取指令,发送给外存接口单元,并将哈希查表单元的读取请求压入组相连缓存单元内的队列,以接收下一条来自哈希查表单元的读取请求;当外部存储器完成读取操作时,数据返回给组相连缓存单元,并从队列中读取出与之对应的读取请求指令,在更新主缓存表的同时将数据内容返回给哈希查表单元。

6、在上述快速匹配查找系统中,所述组相连缓存单元设计为m相连组相连缓存单元,其中主缓存表的存储空间被划分为n份,每份存储空间里又分为m个条目;当任何条目认定为缓存条目未命中,脏表项更新子单元发出表项更新请求,从外存储器中获取新的数据内容更新主缓存表,同时将数据内容返回给哈希查表单元;所述脏表项更新子单元的更新算法采用顺序覆盖算法或最不常用算法。

7、在上述快速匹配查找系统中,所述外存接口单元,对外连接外部存储器,对内不仅连接组相连缓存单元,还连接fpga内其他需要访问外部存储器的功能单元;当fpga内部总线速度与外部存储器速率或协议不匹配时使用外存接口单元进行适配。

8、一种基于组相连缓存的快速匹配查找方法,包括以下过程:

9、当查表请求发送到哈希查表单元时,将查表请求中的数据经过摘要算法得出哈希值,取哈希值作为地址索引去组相连缓存单元中读取请求数据内容;

10、在组相连缓存单元中,将来自于哈希查表单元的读取请求的地址分为tag、group、block三个部分,由tag字段和block字段构成主缓存表的索引地址;

11、从主缓存表中获取缓存条目数据,将group的值与缓存条目数据中数据头的addr进行对比,同时关注缓存条目数据中数据头的脏标志和有效标志,判断缓存条目是否命中;

12、若group的值与缓存条目数据中数据头的addr字段值一致,且脏标志为无效,有效标志为有效,则认定缓存条目命中,向哈希查表单元返回该条目数据;否则认定为缓存条目未命中,则触发数据更新操作,此时外存控制器接口子单元产生外存读取指令,发送给外存接口单元,并将哈希查表单元的读取请求压入组相连缓存单元内的队列,以接收下一条来自哈希查表单元的读取请求;当外部存储器完成读取操作时,数据返回给组相连缓存单元,并从队列中读取出与之对应的读取请求指令,在更新主缓存表的同时将数据内容返回给哈希查表单元。

13、在上述快速匹配查找方法中,当任何条目认定为缓存条目未命中时,脏表项更新子单元发出表项更新请求,从外存储器中获取新的数据内容更新主缓存表,同时将数据内容返回给哈希查表单元。

14、一种电子设备,包括处理器和存储器,所述存储器上存储有可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述基于组相连缓存的快速匹配查找系统或基于组相连缓存的快速匹配查找方法。

15、一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现上述基于组相连缓存的快速匹配查找系统或基于组相连缓存的快速匹配查找方法。

16、与现有技术相比,本专利技术的技术方案所带来的有益效果是:

17、本专利技术提出的基于组相连缓存的快速匹配查找系统及方法,部署于fpga中,针对使用psram、ddr、xram、hyperram等类型的外部存储器进行快速查表。本专利技术通过使用组相连缓存技术,对传统的哈希查找匹配技术进行改良,使得在使用psram、ddr、xram、hyperram等类型的外部存储器的哈希查表单元发生碰撞而转为链表查找时,将能够在缓存中命中的读取请求直接返回值,有效降低了访问外部存储器的延迟时间,大幅提升在高查表负荷的情况下的哈希查找匹配速度。

本文档来自技高网...

【技术保护点】

1.一种基于组相连缓存的快速匹配查找系统,其特征在于,该快速匹配查找系统部署于FPGA中,包括哈希查表单元、组相连缓存单元、外存接口单元,所述组相连缓存单元分别与哈希查表单元、外存接口单元相连,作为哈希查表单元与外存接口单元的中间衔接单元;

2.根据权利要求1所述的基于组相连缓存的快速匹配查找系统,其特征在于,所述组相连缓存单元设计为M相连组相连缓存单元,其中主缓存表的存储空间被划分为N份,每份存储空间里又分为M个条目;当任何条目认定为缓存条目未命中,脏表项更新子单元发出表项更新请求,从外存储器中获取新的数据内容更新主缓存表,同时将数据内容返回给哈希查表单元;所述脏表项更新子单元的更新算法采用顺序覆盖算法或最不常用算法。

3.根据权利要求1所述的基于组相连缓存的快速匹配查找系统,其特征在于,所述外存接口单元,对外连接外部存储器,对内不仅连接组相连缓存单元,还连接FPGA内其他需要访问外部存储器的功能单元;当FPGA内部总线速度与外部存储器速率或协议不匹配时使用外存接口单元进行适配。

4.一种基于上述权利要求1至3中任一项所述基于组相连缓存的快速匹配查找系统的基于组相连缓存的快速匹配查找方法,其特征在于,包括以下过程:

5.根据权利要求4所述的基于组相连缓存的快速匹配查找方法,其特征在于,当任何条目认定为缓存条目未命中时,脏表项更新子单元发出表项更新请求,从外存储器中获取新的数据内容更新主缓存表,同时将数据内容返回给哈希查表单元。

6.一种电子设备,包括处理器和存储器,所述存储器上存储有可被所述处理器执行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至5中任一项所述的基于组相连缓存的快速匹配查找系统或基于组相连缓存的快速匹配查找方法。

7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序被处理器执行时,实现上述权利要求1至5中任一项所述的基于组相连缓存的快速匹配查找系统或基于组相连缓存的快速匹配查找方法。

...

【技术特征摘要】

1.一种基于组相连缓存的快速匹配查找系统,其特征在于,该快速匹配查找系统部署于fpga中,包括哈希查表单元、组相连缓存单元、外存接口单元,所述组相连缓存单元分别与哈希查表单元、外存接口单元相连,作为哈希查表单元与外存接口单元的中间衔接单元;

2.根据权利要求1所述的基于组相连缓存的快速匹配查找系统,其特征在于,所述组相连缓存单元设计为m相连组相连缓存单元,其中主缓存表的存储空间被划分为n份,每份存储空间里又分为m个条目;当任何条目认定为缓存条目未命中,脏表项更新子单元发出表项更新请求,从外存储器中获取新的数据内容更新主缓存表,同时将数据内容返回给哈希查表单元;所述脏表项更新子单元的更新算法采用顺序覆盖算法或最不常用算法。

3.根据权利要求1所述的基于组相连缓存的快速匹配查找系统,其特征在于,所述外存接口单元,对外连接外部存储器,对内不仅连接组相连缓存单元,还连接fpga内其他需要访问外部存储器的功能单元;当fpga内部总线速度与外部存储器速率...

【专利技术属性】
技术研发人员:石丛玮李子晨
申请(专利权)人:天津光电聚能通信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1