一种高速缓冲存储器中数据块的替换方法和装置制造方法及图纸

技术编号:12099619 阅读:120 留言:0更新日期:2015-09-23 17:23
本发明专利技术公开了一种Cache中数据块的替换方法和装置,属于存储技术领域。所述替换方法包括:每隔设定时间从第一模式的可用way中选择一个可用way,作为第一模式的待替换way,且第一模式的各个可用way作为第一模式的待替换的way的概率均等,第一模式为多个模式中的一个,第一模式的可用way为配置给第一模式使用的way;接收第一数据访问请求,第一数据访问请求包括第一模式的标识;当Cache中没有存储第一数据访问请求访问的数据块时,将第一数据访问请求访问的数据块存储在第一模式的待替换way中。本发明专利技术采用第一模式的各个可用way实现第一模式的数据块替换的概率均等。

【技术实现步骤摘要】

本专利技术涉及存储
,特别涉及一种高速缓冲存储器中数据块的替换方法和 目.0
技术介绍
高速缓冲存储器(Cache)是存在于主存储器(Main memory)与中央处理器(Central Processing Unit,简称CPU)之间的存储器。Cache的存储空间分为若干组(set),各set均包括若干路(way)且各set包括的way的数量相同,way为Cache中存储数据的最小单位。与set相对的,主存储器的存储空间划分为若干区,各区均包括若干块且各区包括的块的数量均等于Cache中set的数量,每个区包括的各块均与各set存在地址映射,每个区的某块存储的数据均可以存储到与该块存在地址映射的set包括的任意一个way 中 ο目前的Cache可以支持多模隔离,多模隔离是多个模式(网络制式或虚拟机(Virtual Machine,简称VM))的数据可以存储在一个Cache中。当主存储器中的数据块存储到配置给某个模式的way中时,由于一般配置给各个模式的way不是Cache中的所有way,因此通常采用如下方式实现:先根据主存储器中存储该数据块的块,将Cache中与该块存在地址映射的set,确定为存储该数据块的set ;若确定的set包括的所有way中均存储有数据,则从所有way中,随机选择一个way ;再从配置给该模式的way中,将距离选择的way最近的一个way,确定为存储该数据块的way ;将该数据块替换确定的way中原先存储的数据。在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题:若配置给该模式的way未均勾分布在所有way时,则会造成配置给该模式的各个way进行数据块替换的概率不均等,影响系统性能;而若要将配置给各个模式的way均匀分布在所有way中,则实现难度较大。
技术实现思路
为了解决现有技术各个way进行数据替换的概率不均等的问题,本专利技术实施例提供了一种Cache中数据块的替换方法和装置。所述技术方案如下:一方面,本专利技术实施例提供了一种Cache中数据块的替换方法,所述Cache包括若干路way,所述若干way配置给多个模式使用,所述模式为网络制式或虚拟机VM,所述替换方法包括:每隔设定时间从第一模式的可用way中选择一个可用ray,作为所述第一模式的待替换way,且所述第一模式的各个可用way作为所述第一模式的待替换的way的概率均等,所述第一模式为所述多个模式中的一个,所述第一模式的可用way为配置给所述第一模式使用的way ;接收第一数据访问请求,所述第一数据访问请求包括所述第一模式的标识;当所述Cache中没有存储所述第一数据访问请求访问的数据块时,将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中。在本专利技术实施例一种可能的实现方式中,每隔设定时间选择的可用way周期性循环变化或随机变化。在本专利技术实施例另一种可能的实现方式中,所述每隔设定时间从第一模式的可用way中选择一个可用way,作为所述第一模式的待替换way,包括:采用一个掩码替换路产生器MRWG确定所述第一模式的待替换way,所述MRWG的输入为表示所述第一模式的可用way的掩码,所述MRWG的输出为表示所述第一模式的待替换way的指示信号。可选地,所述当所述Cache中没有存储所述第一数据访问请求访问的数据块时,将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中,包括:根据第一模式的标识与MRWG的标识的对应关系,选择与所述第一模式对应的MRffG ;将选择的MRWG的输出表示的way作为所述第一模式的待替换way ;将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中。在本专利技术实施例又一种可能的实现方式中,所述替换方法还包括:当所述从第一模式的可用way中选择一个可用way,作为所述第一模式的待替换way时,从第二模式的可用way中选择一个可用way,作为所述第二模式的待替换way,且所述第二模式的各个可用way作为所述第二模式的待替换的way的概率均等,所述第二模式为所述多个模式中的一个,所述第二模式的可用way为配置给所述第二模式使用的way。在本专利技术实施例又一种可能的实现方式中,所述替换方法还包括:接收第二数据访问请求,所述第二数据访问请求包括第三模式的标识,所述第三模式为所述多个模式中的一个;当所述Cache中没有存储所述第二数据访问请求访问的数据块时,采用预设的规贝1J,从设定的way中选择一个way,作为所述第三模式的待替换way ;将所述第二数据访问请求访问的数据块存储在所述第三模式的待替换way中。另一方面,本专利技术实施例提供了一种Cache中数据块的替换装置,所述Cache包括若干路way,所述若干way配置给多个模式使用,所述模式为网络制式或虚拟机VM,所述替换装置包括:第一确定模块,用于每隔设定时间从第一模式的可用way中选择一个可用way,作为所述第一模式的待替换way,且所述第一模式的各个可用way作为所述第一模式的待替换的way的概率均等,所述第一模式为所述多个模式中的一个,所述第一模式的可用way为配置给所述第一模式使用的way ;第一接收模块,用于接收第一数据访问请求,所述第一数据访问请求包括所述第一模式的标识;第一存储模块,用于当所述Cache中没有存储所述第一数据访问请求访问的数据块时,将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中。在本专利技术实施例一种可能的实现方式中,每隔设定时间选择的可用way周期性循环变化或随机变化。在本专利技术实施例另一种可能的实现方式中,所述第一确定模块用于,采用一个掩码替换路产生器MRWG确定所述第一模式的待替换way,所述MRWG的输入为表示所述第一模式的可用way的掩码,所述MRWG的输出为表示所述第一模式的待替换way的指示信号。 可选地,所述第一存储模块用于,选择单元,用于根据第一模式的标识与MRWG的标识的对应关系,选择与所述第一模式对应的MRWG ;确定单元,用于将选择的MRWG的输出表示的way作为所述第一模式的待替换way ;存储单元,用于将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中。在本专利技术实施例又一种可能的实现方式中,所述替换装置还包括:第二确定模块,用于当所述从第一模式的可用way中选择一个可用way,作为所述第一模式的待替换way时,从第二模式的可用way中选择一个可用way,作为所述第二模式的待替换way,且所述第二模式的各个可用way作为所述第二模式的待替换的way的概率均等,所述第二模式为所述多个模式中的一个,所述第二模式的可用way为配置给所述第二模式使用的way。在本专利技术实施例又一种可能的实现方式中,所述替换装置还包括:第二接收模块,用于接收第二数据访问请求,所述第二数据访问请求包括第三模式的标识,所述第三模式为所述多个模式中的一个;选择模块,用于当所述Cache中没有存储所述第二数据访问请求访问的数据块时,采用预设的规则,从设定的way中选择一个way,作为所述第三模式的待替换way ;第二存储模块,用于将所述第二数据访问请求访问的数据块存储在所述第三模式的待替换way中。本专利技术实施例提供本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/CN104932990.html" title="一种高速缓冲存储器中数据块的替换方法和装置原文来自X技术">高速缓冲存储器中数据块的替换方法和装置</a>

【技术保护点】
一种高速缓冲存储器Cache中数据块的替换方法,所述Cache包括若干路way,所述若干way配置给多个模式使用,所述模式为网络制式或虚拟机VM,其特征在于,所述替换方法包括:每隔设定时间从第一模式的可用way中选择一个可用way,作为所述第一模式的待替换way,且所述第一模式的各个可用way作为所述第一模式的待替换的way的概率均等,所述第一模式为所述多个模式中的一个,所述第一模式的可用way为配置给所述第一模式使用的way;接收第一数据访问请求,所述第一数据访问请求包括所述第一模式的标识;当所述Cache中没有存储所述第一数据访问请求访问的数据块时,将所述第一数据访问请求访问的数据块存储在所述第一模式的待替换way中。

【技术特征摘要】

【专利技术属性】
技术研发人员:信恒超
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1