[发明专利]一种基于完美哈希算法的FPGA训练及查询电路实现方法有效
申请号: | 201710508277.9 | 申请日: | 2017-06-28 |
公开(公告)号: | CN107330047B | 公开(公告)日: | 2020-06-30 |
发明(设计)人: | 邓俊杰 | 申请(专利权)人: | 华信塞姆(成都)科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22 |
代理公司: | 成都君合集专利代理事务所(普通合伙) 51228 | 代理人: | 张鸣洁 |
地址: | 610041 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 完美 算法 fpga 训练 查询 电路 实现 方法 | ||
本发明公开了一种基于完美哈希算法的FPGA训练及查询电路实现方法,包括以下步骤:创建静态键值表;将静态键值与真随机数作一阶哈希计算映射到一阶哈希表;将一阶哈希表中冲突于同一槽位的静态键值组成一个冲突组复制到键值重排表中相邻位置;将冲突组进行二阶哈希计算,得到冲突组映射地址索引值互异的二阶哈希表;查询静态键值的序号时,在所述一阶哈希表和/或二阶哈希表,根据静态键值对应的地址索引值,读取静态键值的序号,通过序号查询可以输出哈希索引号。由于FPGA强大流水线计算能力,冲突组映射到二阶哈希表空间大小,初始设置为不小于冲突数的最小的2的整数次幂,通过尝试逐渐放宽,这将大大节约二阶哈希表的容量。
技术领域
本发明涉及大规模静态数据查询领域,尤其涉及FPGA查询电路设计领域,具体的说,是一种基于完美哈希算法的FPGA训练及查询电路实现方法。
背景技术
现有技术中,常见的查询方式是采用哈希算法根据键值查询索引值,对于静态数据结构,人们通常采用完美哈希以解决冲突问题,即采用两级哈希运算的方式:先进行第一级哈希,找出冲突至同一槽位的键值;针对每一组冲突至同一槽位的键值组,用全域哈希方式找到一个哈希函数,使得这些键值的哈希值没有冲突。这些被解决了一阶冲突的键值将组成二阶哈希。现有的完美哈希方法多针对软件实现,其计算基于实数域,需要用到素数的乘(或)除法,并且现有完美哈希方法,对于每一组冲突到同一槽位的键值(假设数量为N),需要设置对应的二级哈希表的大小为N的平方。这将造成二级的哈希表格规模过大,这在集成电路,特别是FPGA中实现是不经济且效率低下的。
发明内容
本发明的目的在于提供一种基于完美哈希算法的FPGA训练及查询电路实现方法,用于解决现有技术中采用FPGA实现二阶哈希规模较大且效率低下的问题,本发明中的FPGA模块实现了采用给定的静态键值表,生成完美哈希结构,对于任意给定的键值,可以查询到一个唯一的、用户预先设置的无冲突的索引号。
为了达到上述目的,本发明通过下述技术方案实现:
一种基于完美哈希算法的FPGA训练及查询电路实现方法,包括以下步骤:
S1)将静态键值和静态键值的哈希索引值输入静态键值表;
S2)将静态键值与输入的一个真随机数作一阶哈希计算得到一阶哈希表,所述一阶哈希表的表项包括:
地址/索引:在对静态键值重新排列阶段,表示静态键值在生成的键值重排表的基地址;在二阶哈希训练完成后即一阶哈希表中的冲突组解决后,如果vld=1,col=0,表示静态键值的序号;如果vld=1,col=1,表示静态键值的序号存放在二阶哈希训练生成的二阶哈希表中的基地址;
vld:1比特,有效指示,vld=1时表示至少有一个键值经过一阶哈希运算映射到这个表项上;
col:1比特,当vld=1,col=1的时候表示有几个键值冲突到此表项上;当vld=1,col=0时表示只有一个键值映射到这个表项上;
col_cnt:冲突组冲突计数,每当有一个键值被映射到这个槽位,则将此计数值加1,每当有一个冲突在此槽位上的键值被复制进入键值重排表,则计数值减1;
col_rec:冲突组冲突数记录,每当有一个键值被映射到这个冲突组的槽位,则将此计数值加1;
函数池索引:如果一阶哈希表中此槽位没有冲突,则为空,如果存在冲突则存放二阶哈希训练过程中的哈希函数的索引;
CRC size:映射到这个槽位的所有键值在进行二阶哈希时,采用CRC本原多项式的长度;
S3)读取静态键值表的每一个静态键值并查找一阶哈希表,将冲突于同一槽位的静态键值复制到键值重排表,使在一阶哈希表中冲突于同一槽位的静态键值在键值重排表中的位置相邻;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华信塞姆(成都)科技有限公司,未经华信塞姆(成都)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710508277.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智慧旅游综合服务系统
- 下一篇:一种共轴对转电吊扇