[发明专利]一种内容可寻址存储器及其检索数据的方法无效
| 申请号: | 201110081052.2 | 申请日: | 2011-03-31 |
| 公开(公告)号: | CN102736986A | 公开(公告)日: | 2012-10-17 |
| 发明(设计)人: | 潘永锋;李宇飞;范博;陈亮 | 申请(专利权)人: | 国际商业机器公司 |
| 主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F17/30 |
| 代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 高青 |
| 地址: | 美国*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 内容 寻址 存储器 及其 检索 数据 方法 | ||
技术领域
本发明一般涉及存储器结构,更具体地,涉及一种内容可寻址存储器及其检索数据的方法。
背景技术
内容可寻址存储器CAM(Content-Addressable Memory)是一种硬件模块,可以作为一个单独的集成电路模块,也可以嵌入到其它集成电路,例如CPU中,主要用于检索强度很高的领域,例如,网络应用中的MAC地址表,路由表,高速缓存器中搜索数据等等。
CAM是以内容进行寻址的存储器,它的主要工作机制就是将一个输入数据项与存储在CAM中的所有数据项自动同时进行比较,判别该输入数据项与CAM中存储的数据项是否相同,如果存在相同的数据项,CAM返回由一个或者多个地址组成的列表,这些地址中都存储着这个输入数据项。
在CAM中,输入数据项的位与存储各个数据项的位的比较有各自单独的比较电路,比较的速度非常快,但是由于各个数据项与CAM的连线为数据项的位数,例如,如果数据项为64位(bit),如果输入一个数据项,并且在CAM存储着7个数据项,则与CAM的连线为8×64根,但是这样的设计电路面积会比较大。并且,诸多的比较电路造成的另一个缺点是功耗比较大。整个CAM的成本较高。
大部分集成电路设计工具都提供使用上述原理设计的传统的CAM模块,设计人员只要输入数据项位数以及数据项个数,设计工具就可以给出要求的CAM模块。
为了达到速度、电路面积、功耗以及成本的平衡,研究人员提出了一些改进方案。改进方案中,常常使用标准的树搜索或者硬件哈西(Hash)索引。图1示意性地示出了一种改进的CAM设计结构,被称为CA-RAM(Sangyeun Cho et.Al,CA-RAM:AHigh-Performance Memory Substrate for Serach-Intensive Applications,2007 IEEE International Symposium on Performance Analysis of Systems and Software),在该设计中,RAM以规整化存储结构(即阵列)的方式存储将要与输入数据项比对的RAM数据项,通过硬件哈西索引生成装置从N位的输入数据项生成R位的索引数据项,哈西索引后可以快速查找,并定位RAM中与输入数据项相近的第一行,定位到该行后,多个比较器将输入数据项与RAM中的该行的多个数据据项进行比较,相应的比较器就输出比较结果,然后通过图1中未示出的处理器合并比较结果,获得相应的地址项,并通过输出装置输出地址项结果。
索引数据项与RAM中规整化存储结构中的RAM数据项首先是按照索引比对的,这样可以快速定位RAM中与输入数据项可能相同的第一RAM数据行,然后再将该行的RAM数据项与输入数据项比对,以减少比对的工作量。虽然,RAM中可能某一RAM数据行的RAM数据项的哈西索引是与输入数据项的哈西索引相同的,但是该数据行中并不存在该输入数据项,本领域技术人员称之为冲突。上述改进的现有技术中解决冲突的方法是扩展RAM中一个RAM数据行的存储结构,在每一RAM数据行的最后加入一个标志位,标志位指向RAM中规整化存储结构的按照索引需要检索的下一RAM数据行,该下一RAM数据行的RAM数据项的哈西索引,与该某一RAM数据行的RAM数据项的哈西索引,是相同的,这样,如果发生冲突,就继续比较标志位指向的下一RAM数据行,直到找到输入数据项,或者RAM数据行的标志位为空,即已经到达该索引的结束,也没有找到输入数据项,就输出未找到结果。
上述改进方案中,冲突仍然广泛存在,因此,也使得CAM的检索速度降低。
发明内容
因此,需要一种内容可寻址存储器(CAM)及其检索数据的方法,能够减少CAM检索数据过程中的冲突,提高检索数据的速度。
根据本发明的一个方面,提供了一种内容可寻址存储器中检索数据的方法,其中,所述内容可寻址存储器包括RAM和高速缓存器,所述RAM中使用阵列存储多个RAM数据项,所述阵列的每一RAM数据行包括一个行标记,所述高速缓存器中存储检索到的哈西索引数据项与RAM数据行行标记的对应关系,该方法包括:
将接收的输入数据项生成哈西索引数据项;
在所述高速缓存器中查找是否存在与所述哈西索引数据项对应的RAM数据行的行标记;
响应于所述高速缓存器中存在与所述哈西索引数据项对应的RAM数据行的行标记,根据对应的RAM数据行的行标记从所述RAM中查找与所述输入数据项对应的RAM数据项;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110081052.2/2.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法





