[发明专利]实现对缓存中数据快速查找的系统和方法有效
申请号: | 200810056811.8 | 申请日: | 2008-01-24 |
公开(公告)号: | CN101221538A | 公开(公告)日: | 2008-07-16 |
发明(设计)人: | 胡微 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京德琦知识产权代理有限公司 | 代理人: | 宋志强;麻海明 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实现 缓存 数据 快速 查找 系统 方法 | ||
技术领域
本发明涉及缓存(Cache)中的数据查找技术,特别涉及一种实现对Cache中数据快速查找的系统、以及一种Cache中数据的快速查找方法。
背景技术
在存储系统或计算机、服务器系统中,大量的数据存储在磁盘中。为了提高整个系统的性能,一般会将常用的数据先从磁盘中读出并存放到Cache中。这样,只有需要访问的数据不在Cache中时,才会到磁盘中去取数据。
其中,Cache可以是各种静态存储器(SRAM)或动态存储器(SDRAM)。如果在Cache中查找到需要访问的数据,则称之为命中(hit);如果在Cache中未查找到需要访问的数据,则称之为非命中(miss),需要直接在磁盘中查找。
Cache的大小在一定程度上决定了系统的性能。Cache越大,可缓存的数据越多,hit的概率越大,对磁盘的访问次数就越少,因而系统性能越高;反之,Cache越小,可缓存的数据越少、miss的概率越大,对磁盘的访问次数就越多,因而系统性能越低。
因此,为了提供较大的Cache,现有技术中通常会利用系统中的部分内存作为Cache。图1为现有利用内存作为Cache的系统结构示意图。如图1所示,桥片中集成了内存控制器,处理器通过桥片中的内存控制器与作为Cache的内存相连。由处理器通过内存控制器在Cache中查找数据。当然,内存控制器也可以集成于处理器中,这样,处理器无需通过桥片而是直接与作为Cache的内存相连。
如图1所示的处理器所能够支持较大的内存,因而Cache也可以很大,以尽可能多地缓存数据从而提高系统性能。对需要更高性能的系统,现有内存的大小也无法满足对Cache容量的要求,因此如图1所示的系统中还可以设置扩展内存来用作Cache。
在上述系统中,数据以链表的形式存放在Cache中,每一链表项通常至少包含如下各字段:用于表示在Cache中位置的索引、用于表示链表项特征的特征值、以及用于存放数据的内容。处理器中运行了用于在Cache中查找数据的软件,并通过该软件所基于的某种算法对Cache中的数据进行查找。
其中,数据请求可以为读请求或写请求,以读请求为例,最简单最常用的一种算法如下:当接收到一个读请求时,处理器提取数据请求中的特征值,然后通过内存控制器并按照索引在Cache中遍历所有链表项,对提取的特征值和遍历到的链表项的特征值进行匹配,如果二者匹配,则认为hit并读出该链表项的内容字段中的数据,然后返回读取的数据;如果遍历了所有链表项后,均未能找到匹配的特征值,则认为miss,处理器会到该Cache的后级缓存或磁盘中查找数据。
由于上述查找过程均是通过处理器所运行的软件来实现的,因而或多或少地都需要占用处理器的处理能力。在Cache越来越大、链表项越来越多的情况下,查找所占用的处理器的处理能力也会越来越多,即便可以通过优化算法来简化查找的处理过程,但仍会由于处理器的负担较大而使得查找效率较低。而且,设计优化算法的难度较大,因而会增加系统的设计难度。
发明内容
有鉴于此,本发明提供了一种实现对Cache中数据快速查找的系统、以及一种Cache中数据的快速查找方法,能够提高查找效率。
本发明提供的一种实现对Cache中数据快速查找的系统,该系统包括:处理器、内存控制器、Cache,
该系统还包括:与所述处理器相连的逻辑器件、与所述逻辑器件相连的内容寻址存储器CAM,其中,
所述处理器提取出接收到的数据请求中的特征值并通过所述逻辑器件输出至所述CAM;按照所述CAM输出的索引,通过所述内存控制器在所述Cache中读出对应链表项内容字段中的数据;
所述CAM存储Cache中每一链表项的特征值,且每一链表项的特征值存储于CAM中的位置为该链表项的索引所表示的位置;接收所述处理器输出的特征值,并将该特征值在CAM中的位置所对应的索引,通过所述逻辑器件输出至所述处理器。
所述处理器在Cache中生成了新的链表项后,进一步将此链表项的特征值通过所述逻辑器件,写入所述CAM中由该链表项的索引所表示的位置;在Cache中的链表项被清除后,进一步通过所述逻辑器件将此链表项的特征值从所述CAM中清除。
所述内存控制器集成于所述处理器中。
所述逻辑器件与所述处理器的外设部件互连标准PCI接口、或PCI-X接口、或PCI-E接口、或串行快速输入输出SRIO接口、或Infinitband接口相连。
该系统进一步包括桥片,所述逻辑器件通过所述桥片与所述处理器相连。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810056811.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置