本申请公开一种数据查询方法、控制器和处理器,该方法应用于内容寻址存储器的控制器,包括:通过预先设定的编码算法、编码提取规则和补位规则,执行一系列操作,根据查询数据获得第一地址信息,之后查询内容寻址存储器中由第一地址信息标识的存储空间是否存储有数据,如果第一地址信息标识的存储空间存储有数据,则根据补位规则对第一地址信息中的补位数据进行更新,获得至少一个第二地址信息,最后根据第一地址信息和第二地址信息,确定内容寻址存储器中存储查询数据的存储空间的目标地址信息。本申请通过相对于哈希查找法能够节省资源,同时相对于顺序查找法,由于只需查询第一地址信息和第二地址信息标识的存储空间,因此有更高的查询效率。
背景技术
现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)中存在一些内部存储块,用以存储数据。随着数字信息化发展,对存储容量的需求逐渐增加,然而,FPGA中主流的内部存储块随机存取存储器(Random Access Memory,RAM),由于使用顺序搜索,在数据量较大时,RAM会导致查询数据时出现明显的延迟。
目前,通常使用内容寻址存储器(content-addressable memory,CAM)代替RAM,其查询速度相对于RAM具有较大的提升。
然而,CAM的容量较低,为了综合CAM与RAM的优缺点,通常采用高速缓冲存储器(Cache)平衡性能和资源,但使用在CAM与RAM中常用的数据查询方法对Cache进行数据查询的效率并不理想。
实现思路