[发明专利]用于数据处理系统中的缓存一致性的探听过滤器有效
申请号: | 201611040746.0 | 申请日: | 2016-11-10 |
公开(公告)号: | CN107038123B | 公开(公告)日: | 2021-11-30 |
发明(设计)人: | 詹姆师德·加拉;马克·戴维·沃克海瑟 | 申请(专利权)人: | ARM有限公司 |
主分类号: | G06F12/0815 | 分类号: | G06F12/0815 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 林强 |
地址: | 英国*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 数据处理系统 中的 缓存 一致性 探听 过滤器 | ||
1.一种数据处理系统中的数据传输的方法,该数据处理系统具有共享数据资源和多个节点的网络,所述共享数据资源能由所述网络中的多个请求节点经由所述网络的归属节点来进行访问,其中所述归属节点用作与一组数据地址相关联的数据的归属点,其中所述多个节点经由所述归属节点访问所述共享数据资源,所述方法包括:
接收针对存储在所述共享数据资源中的系统地址处的数据的读请求,其中所述读请求由所述多个请求节点中的第一请求节点发送给所述归属节点,
响应于所述读请求,所述归属节点:
通过所述归属节点的探听过滤器控制器确定所请求的数据是被存储在所述归属节点的缓存中还是被存储在所述多个请求节点中一个或多个第二请求节点的本地缓存中;
当所请求的数据未被存储在所述归属节点的缓存中而是被存储在一个或多个第二请求节点的本地缓存中时:
通过所述归属节点的所述探听过滤器控制器向所述一个或多个第二请求节点发送探听以请求所请求的数据;
当响应于所述探听而所请求的数据被返回给所述归属节点时,用返回的所请求的数据填充所述归属节点的缓存,在所述缓存中把返回的所请求的数据标记为“脏”以指示返回的所请求的数据尚未响应于所述读请求而写回到所述共享数据资源,并且更新所述归属节点的探听过滤器以指示所述第一请求节点具有所请求的数据的复本;以及
向所述第一请求节点转发返回的所请求的数据;
当所请求的数据未被存储在所述归属节点的缓存中或者一个或多个第二请求节点的本地缓存中时:从所述共享数据资源取回所请求的数据;
更新所述归属节点的所述探听过滤器以指示所述第一请求节点具有所请求的数据的复本;以及
向所述第一请求节点转发所取回的所请求的数据;以及
当所请求的数据被存储在所述归属节点的缓存中时:
更新所述归属节点的所述探听过滤器以指示所述第一请求节点具有所请求的数据的复本;以及
向所述第一请求节点转发所取回的所请求的数据。
2.如权利要求1所述的方法,其中被转发至所述第一请求节点的所请求的数据被标记为处于“独有脏”状态。
3.如权利要求1所述的方法,其中存储在所述多个请求节点的本地缓存中的所请求的数据被标记为处于“独有脏”、“共享脏”、“独有干净”或者“无效”状态。
4.如权利要求3所述的方法,其中更新所述归属节点的所述探听过滤器以指示所述第一请求节点具有所请求的数据的复本包括:更新所述探听过滤器中的存在性向量,其中所述第一请求节点的本地缓存中的所取回的数据被标记为处于“共享脏”状态,并且其中所述探听过滤器不将所述第一请求节点标识为所请求的数据的拥有者。
5.如权利要求1所述的方法,其中更新所述归属节点的所述探听过滤器以指示所述第一请求节点具有所请求的数据的复本包括:更新所述探听过滤器中的存在性向量。
6.如权利要求3所述的方法,其中向所述一个或多个第二请求节点发送探听以请求所请求的数据使得第二请求节点把它的本地缓存中的所请求的数据的复本从“独有脏”状态更新为“共享脏”状态。
7.如权利要求1所述的方法,其中从所述共享数据资源取回所请求的数据包括:
所述探听过滤器的控制器经由互连电路向存储器控制器发送读请求;
所述存储器控制器访问存储器中所述系统地址处存储的数据;以及
所述存储器控制器经由所述互连电路向所述归属节点返回所访问的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611040746.0/1.html,转载请声明来源钻瓜专利网。