本发明涉及数字集成电路设计领域,具体涉及一种面向超长维度矢量排序的高性能全精确存内搜索方法和装置。
背景技术:
1、大数据驱动应用的迅猛发展和数据量的急剧增加,对传统的计算架构带来了存储墙问题,即存储单元和计算单元之间的数据传输瓶颈。为了克服这一问题,内存计算技术崭露头角。内存计算通过将计算操作直接融合到存储单元中,消除了数据传输的瓶颈,提高了计算效率和系统性能。这一技术解决了冯诺依曼架构下的存储墙问题,使存储和计算能够同步进行,极大地提升了数据处理速度。
2、然而,在应用存内计算设计执行分类任务时,对每段矢量进行精确匹配或阈值匹配时可能对整个电路的推理精度造成影响。特别是在分类数量增加时,传统的存内搜索设计方法可能难以准确区分汉明距离极低的输入数据。在传统的存内搜索设计中,对于精确匹配和阈值匹配存在问题,尤其在分类繁多的情况下,微小的向量差异可能被忽略。这可能导致分类错误或无法准确识别的结果。
3、这些挑战表明,在存内计算设计中,尤其是在处理大规模数据时,需要考虑如何有效区分多类超长维度矢量之间的微小差异,以确保准确的分类和推理结果,这将对系统的性能和准确性产生重要影响。
技术实现思路
1、本发明的目的是为了提供一种面向超长维度矢量排序的高性能全精确存内搜索方法和装置,可以计算出超长维度输入特征矢量数据和存储类别数据之间相比的匹配数量结果,实现低差异性超长维度矢量相似度排序。
2、为实现上述技术目的,本发明采取的技术方案为:
3、第一方面,本发明公开了一种面向超长维度矢量排序的高性能全精确存内搜索方法,所述高性能全精确存内搜索方法包括以下步骤:
4、在超长维度矢量的匹配数量统计过程中,当存内搜索长为m比特的输入特征数据时,对每段m比特输入特征数据进行第一次搜索操作,判断与相应段存储数据的汉明距离是否在可计算范围内;
5、若汉明距离在可区分范围内,判断匹配数量大于第二次搜索操作维持原输入特征数据;若汉明距离不在可区分范围内,判断匹配数量小于或等于第二次搜索操作将原输入特征数据按位取反,进而计算出当前段输入特征数据和段存储特征数据之间的汉明距离;
6、融合各段输入特征数据和相应段存储特征数据的汉明距离,计算出超长维度输入特征矢量数据和存储类别数据之间相比的匹配数量结果;其中,每段输入特征数据在任何一次搜索操作时,和相应段存储数据相比最大可计算汉明距离为
7、进一步地,采用阵列电路对输入特征数据进行存储和搜索,具体包括以下步骤:
8、构建n行m列的存储单元阵列,同一行各存储单元连接在同一字线上,同一列各存储单元连接在同一位线上,每列存储单元通过一个搜索电路连接在匹配线下;
9、当存内搜索输入特征数据时,每段输入特征数据在执行一次搜索操作后,匹配线呈现种情况;若输入特征数据未取反,则匹配线放电后维持电压由高到低对应的匹配个数取值范围为m至若输入特征数据取反,则匹配线放电后维持电压由高到低对应的匹配个数取值范围为0至
10、在得到第一次搜索操作的结果后,若匹配线放电后维持电压不是最低的情况,汉明距离在可区分范围内;若匹配线放电后维持电压是最低的情况,汉明距离不在可区分范围内。
11、进一步地,完成输入特征数据相比于相应段存储数据的匹配数量统计的过程包括以下步骤:
12、在第一次搜索后,通过个预充电读取放大电路根据匹配线维持的电压值进行采样,生成位编码信号;
13、根据位编码信号生成一个控制信号,用于和当前段输入特征数据进行逻辑运算,根据判断汉明距离是否在可计算范围内的判断结果,将输入特征数据按位取反或不变;
14、输出以位二进制数字信号的形式表示的输入特征数据的匹配数量,在每段输入特征数据的搜索结果数据有效期完成对该段输入特征数据匹配数量统计。
15、第二方面,本发明公开了一种面向超长维度矢量排序的高性能全精确存内搜索装置,其特征在于,所述高性能全精确存内搜索装置包括寄存器、n位译码器、阵列电路模块、编码控制输出模块和汇总模块;
16、所述寄存器和输入特征数据长相等位,用于存储外部每次输入段长为m比特的输入特征数据;
17、所述n位译码器用于产生行选信号;
18、所述阵列电路模块将n*m维度的存储长矢量按照n行m列进行存储;
19、所述编码控制输出模块接收分n个工作周期串行输出的m比特的输入特征数据,针对每段输入特征数据,通过连续两个搜索操作周期完成对输入特征数据的匹配数量统计;
20、所述汇总模块在2n个搜索操作周期后,对n*m维度的输入长矢量进行匹配数量的统计。
21、进一步地,所述阵列电路模块包括n行m列存储单元;其中,同一行各存储单元连接在同一字线上,同一列各存储单元连接在同一位线上,每列存储单元通过一个搜索电路连接在匹配线下;
22、当存内搜索输入特征数据时,每段输入特征数据在执行一次搜索操作后,匹配线呈现种情况;若输入特征数据未取反,则匹配线放电后维持电压由高到低对应的匹配个数取值范围为m至若输入特征数据取反,则匹配线放电后维持电压由高到低对应的匹配个数取值范围为0至
23、在得到第一次搜索操作的结果后,若匹配线放电后维持电压不是最低的情况,汉明距离在可区分范围内;若匹配线放电后维持电压是最低的情况,汉明距离不在可区分范围内
24、进一步地,所述编码控制输出模块包括编码模块、控制模块和输出模块
25、所述编码模块由个预充电读取放大电路和个d锁存器组成;在每个搜索周期中,搜索完成后,个预充电读取放大电路根据匹配线维持的电压值进行采样,生成位编码信号,经个d锁存器发送至控制模块;在第一次搜索完成后,若匹配数量为及以下,则位编码信号为全0,否则位编码信号中存在1;
26、所述控制模块根据第一个搜索后编码模块输出的位编码信号生成一个控制信号,用于和当前输入特征数据进行逻辑运算,根据判断汉明距离是否在可计算范围内的判断结果,将输入特征数据按位取反或不变;
27、所述输出模块接收编码模块输出的位编码信号和控制模块输出的控制信号,输出以位二进制数字信号的形式表示的当前段长为m比特输入特征数据的匹配数量。
28、与现有技术相比,本发明的有益效果如下:
29、本发明的面向超长维度矢量排序的高性能全精确存内搜索方法和装置,可以计算出超长维度输入特征矢量数据和存储类别数据之间相比的匹配数量结果,实现低差异性超长维度矢量相似度排序。
1.一种面向超长维度矢量排序的高性能全精确存内搜索方法,其特征在于,所述高性能全精确存内搜索方法包括以下步骤:
2.根据权利要求1所述的面向超长维度矢量排序的高性能全精确存内搜索方法,其特征在于,采用阵列电路对输入特征数据进行存储和搜索,具体包括以下步骤:
3.根据权利要求1所述的面向超长维度矢量排序的高性能全精确存内搜索方法,其特征在于,完成输入特征数据相比于相应段存储数据的匹配数量统计的过程包括以下步骤:
4.一种面向超长维度矢量排序的高性能全精确存内搜索装置,其特征在于,所述高性能全精确存内搜索装置包括寄存器、n位译码器、阵列电路模块、编码控制输出模块和汇总模块;
5.根据权利要求4所述的面向超长维度矢量排序的高性能全精确存内搜索装置,其特征在于,所述阵列电路模块包括n行m列存储单元;其中,同一行各存储单元连接在同一字线上,同一列各存储单元连接在同一位线上,每列存储单元通过一个搜索电路连接在匹配线下;
6.根据权利要求4所述的面向超长维度矢量排序的高性能全精确存内搜索装置,其特征在于,所述编码控制输出模块包括编码模块、控制模块和输出模块