[发明专利]基于多级缓存的数据读/写方法、装置和计算机系统有效
申请号: | 201310331344.6 | 申请日: | 2013-07-31 |
公开(公告)号: | CN104346294B | 公开(公告)日: | 2017-08-25 |
发明(设计)人: | 李晔;张立新;侯锐;张科 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F12/0871 | 分类号: | G06F12/0871 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 多级 缓存 数据 方法 装置 计算机系统 | ||
1.一种基于多级缓存的数据读/写方法,其特征在于,包括:
获取读/写数据所针对的第一物理内存数据块的第一查询地址;
获取所述第一物理内存数据块的第一缓存位置属性;所述第一缓存位置属性用于指示第一物理内存数据块所能进入缓存的级别;
根据所述第一查询地址,按照所述第一缓存位置属性所指示的第一物理内存数据块所能进入的缓存级别从高到低的顺序依次查询缓存是否命中,直至一个缓存命中或所有缓存均未命中为止;
若一个缓存命中,则针对所命中缓存中的第一物理内存数据块的第一查询地址读/写数据;或,若所有缓存均未命中,则针对内存中的第一物理内存数据块的第一查询地址读/写数据。
2.根据权利要求1所述的方法,其特征在于,
所述第一缓存位置属性为根据第一物理内存数据块的被访问情况,在页表缓存TLB中为所述第一物理内存数据块所设定的;
所述获取所述第一物理内存数据块的第一缓存位置属性包括:
根据页表缓存TLB中存储的物理内存数据块的属性信息,查询所述第一查询地址对应的第一缓存位置属性;所述TLB中存储有物理内存数据块的属性信息,其中包括:物理内存数据块的查询地址、物理内存数据块的缓存位置属性的对应关系。
3.根据权利要求1所述的方法,其特征在于,
所述第一缓存位置属性为根据第一物理内存数据块的被访问情况,在系统寄存器中为所述第一物理内存数据块所设定的;
所述获取所述第一物理内存数据块的第一缓存位置属性包括:
读取当前系统寄存器中存储的缓存位置属性,并其作为所述第一物理内存数据块的第一缓存位置属性;所述系统寄存器用于存储缓存位置属性。
4.根据权利要求1所述的方法,其特征在于,所述针对所命中缓存中的第一物理内存数据块的第一查询地址读/写数据包括:
通过与所命中缓存间的直接数据通路,针对所命中缓存中的第一物理内存数据块的第一查询进行读/写数据;
或者,所述针对内存中的第一物理内存数据块的第一查询地址读/写数据包括:
通过与内存间的直接数据通路,针对内存中的第一物理内存数据块的第一查询地址读/写数据。
5.根据权利要求1-4任一项所述的方法,其特征在于,在读数据时,
若所命中缓存的级别是所述第一缓存位置属性指示的所能进入缓存级别中的非最高级别,则所述方法还包括:在所述第一缓存位置属性指示的所能进入的缓存级别中,将需要读的数据回填到级别高于所命中缓存的级别的缓存;或者,
若所命中缓存的级别是所述第一缓存位置属性指示的所能进入缓存级别中的最高级别,则不向其他缓存回填数据;或者,
若所有缓存均未命中,则所述方法还包括:将需要读的数据回填到所述第一缓存位置属性指示的所能进入的缓存中。
6.根据权利要求1-4任一项所述的方法,其特征在于,在写数据时,针对所命中缓存中的第一物理内存数据块写数据之后,所述方法还包括:
若所写的数据为共享数据,则在所述第一缓存位置属性指示的所能进入的缓存级别中,向级别等于和/或低于所命中缓存的级别的其他缓存发起共享数据一致性请求。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述第一缓存位置属性标识第一物理内存数据块所能进入缓存级别中的最高级别,或者标识第一物理内存数据块不能进入的缓存级别。
8.一种基于多级缓存的数据读/写装置,所述装置为包括多级缓存的中央处理器CPU,其特征在于,包括:
第一获取单元,用于获取读/写数据所针对的第一物理内存数据块的第一查询地址;
第二获取单元,用于获取所述第一物理内存数据块的第一缓存位置属性;所述第一缓存位置属性用于指示第一物理内存数据块所能进入缓存的级别;
查询单元,根据所述第一获取单元得到的所述第一查询地址,按照第二获取单元得到的所述第一缓存位置属性所指示的所述第一物理内存数据块所能进入的缓存级别从高到低的顺序依次查询缓存是否命中,直至一个缓存命中或所有缓存均未命中为止;
读写单元,用于若一个缓存命中,则针对所述查询单元所命中缓存中的第一物理内存数据块的第一查询地址读/写数据;或,若所述查询单元的查询结果为所有缓存均未命中,则针对内存中的第一物理内存数据块的第一查询地址读/写数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310331344.6/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置