[发明专利]基于集中式目录的嵌入式多核缓存一致性方法无效

专利信息
申请号: 200910049194.3 申请日: 2009-04-13
公开(公告)号: CN101859281A 公开(公告)日: 2010-10-13
发明(设计)人: 廖鑫 申请(专利权)人: 廖鑫
主分类号: G06F12/08 分类号: G06F12/08
代理公司: 暂无信息 代理人: 暂无信息
地址: 200431 上海市宝山*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于集中式目录的嵌入式多核缓存一致性方法。本发明根据硬件实现的细节内容优化了部分状态转换,用写回法和写分配两种策略实现了基于集中式目录的缓存一致性,其主要功能是实现多个处理器核在二级缓存进行共享并保证同一数据块在多个处理器核私有缓存中的副本一致。本发明采用定向消息发送降低了广播机制给带宽的压力,避免了对无关处理器正常运行的干扰,具有较好的可扩展性,适用于嵌入式多核体系处理器。
搜索关键词: 基于 集中 目录 嵌入式 多核 缓存 一致性 方法
【主权项】:
一种基于集中式目录的嵌入式多核缓存一致性方法,其特征在于:1)缓存块的状态划分在目录一致性协议中,每个数据缓存控制器接收两方面输入:处理器发出的读写请求和目录控制器发来的消息。作为这些输入的响应,高速缓存控制器可能根据相应高速缓存块的当前状态及状态转换图来更新该块的状态,并且也可能要执行一些动作。比如,作为对处理器发出的读请求的响应,高速缓存控制器可能要产生一个发给目录控制器的消息来获得数据,并返回给处理器。本发明中数据缓存块的状态分为三种,即无效状态、有效状态和修正状态。若某个数据缓存块处于无效状态,则本地处理器对该块的读请求或写请求都不命中。若某个数据缓存块处于有效状态,表明可能还有其他的处理器持有该块的有效副本。若某个缓存块处于修正状态,表明该块是对应共享缓存块的唯一有效副本,本地处理器对该块的读请求或写请求均在数据缓存命中。2)目录项的状态划分本发明采用全映射目录,每个共享缓存块有三种目录状态,即无效状态、有效状态和修正状态。若某个目录处于无效状态,表明共享缓存没有该缓存块的有效副本。若某个目录处于有效状态,表明一个或多个处理器的数据缓存具有该缓存块的副本,并且共享缓存的数据也是最新的(与所有数据缓存中的副本一致),只要处理器的数据缓存中含有该块的副本,共享者集合中的对应位就置1。若某个目录处于专有状态,表明只有一个处理器的数据缓存拥有该缓存块的副本并且对该块执行过写操作,因此该副本与共享缓存中的缓存块是不一致的,由共享者集合来指示拥有该块副本的处理器。处理器核访问数据缓存的缓存块引起缓存块和目录项在三个状态间的变化,触发状态变换的事件分为读操作和写操作:1)当处理器向数据缓存发出读数请求RDP,若命中则数据缓存把数据发回处理器并发回应RDPR和修改LRU位,否则向目录控制器发送读缺失请求RDMS,目录控制器收到读缺失请求后查找数据块对应的目录,根据不同状态采取以下操作:I.如果目录控制器中访问块对应的目录状态为有效,目录控制器向共享缓存发出WTS请求,收到响应后向数据缓存发RDD请求,并把请求读的处理器加入共享者集合。II.如果目录控制器中访问块对应的目录状态为修正,则目录控制器向共享者集合中的处理器发出CBS请求,目录项转入忙状态,收到共享者集合中的处理器响应后,向共享缓存发出RDS请求,收到响应后把请求读的处理器加入共享者集合,同时设置访问块的目录状态为有效。III.如果目录控制器中访问块对应的目录状态是无效,目录控制器将检查访问块同一组中的待替换块的目录状态。2)当处理器向数据缓存发出写操作请求WTP时,数据缓存检查数据所在缓存块的状态。若为修正则向处理器发WTPR回应,接收处理器写过来的数据。若为有效,数据缓存向目录控制器发WTHT消息,目录控制器检查该块的共享者集合,若只有访问者共享此块则向其发WTM命令并把该块的目录状态改为修正,若有多个处理器共享该缓存块则向非访问者发INV命令并把其从共享者集合中清除。若为无效,数据缓存向目录控制器发WTMS信号,目录控制器查找与数据块的目录状态,作如下不同操作:I.如果目录控制器中访问块对应的目录状态是有效,目录控制器向共享者集合中的非访问者发INV信号并把其从共享者集合中清除,同时向共享缓存发WTS命令。当共享者集合为全0时,目录控制器向共享缓存发WTS命令,收到回应后向数据缓存发RDM命令,同时把访问者加入共享者集合中并把该块的目录状态改为修正。II.如果目录控制器中访问块对应的目录状态是修正,如果是当前访问者在访问该块,则目录控制器不动作,否则目录控制器向该缓存块的所有者发CBI命令,向共享缓存发RDS命令,收到回应后把共享者集合清0,置该块修改位为1并把该块的目录状态改为有效。III.如果目录控制器中访问块对应的目录状态是无效,目录控制器将检查访问块同一组中的待替换块的目录状态。若为修正状态,目录控制器向待替换块所在的数据缓存发CBI请求,收到响应后向共享缓存发RDS请求并置该块修改位为1,同时把该块的目录状态改为无效。若为有效状态,目录控制器向待替换块所在的处理器发INV命令,同时把该块的目录状态改为无效。若为无效状态,目录控制器检查修改位的状态,如为1则向共享缓存发WTM命令,收到回应后把修改位复位,向共享缓存发RDM命令通知其从主存读入访问块,把访问块的标识写入替换块,完成替换并把访问块的目录状态改为有效。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于廖鑫,未经廖鑫许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/200910049194.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top