当前位置: 首页 > 专利查询>重庆大学专利>正文

一种基于动态访问的DRAM-NVM混合内存预测器制造技术

技术编号:34012355 阅读:11 留言:0更新日期:2022-07-02 14:54
本发明专利技术提供了一种基于动态访问的DRAM

【技术实现步骤摘要】
一种基于动态访问的DRAM

NVM混合内存预测器


[0001]本专利技术涉及内存访问
,尤其涉及一种基于动态访问的DRAM

NVM混合内存预测器。

技术介绍

[0002]目前,DRAM(Dynamic Random Access Memory,动态随机存取存储器)和NVM(Non

Volatile Memory,非易失存储器)正被考虑结合起来构建DRAM

NVM混合内存系统,以提供与NVM一样的大内存容量和与DRAM相当的高内存访问速度。其中,层次架构是混合DRAM

NVM内存最具代表性的架构之一,它以NVM为主存,通过DRAM缓存NVM内容。在这种架构中,DRAM和NVM通常工作在串行访问模式下。串行访问模式的优点是在DRAM命中时提供非常快速的数据访问。但是,当DRAM发生未命中时,同时访问DRAM和NVM会导致更长的访问延迟,从而无法达到与DRAM相当的性能。此外,现有方法无法很好地解决如此长的未命中延迟。而并行访问模式是解决长未命中延迟问题的好方法。在服务内存访问请求时,它会同时检查DRAM和NVM。当DRAM未命中时,DRAM访问的延迟会被NVM访问隐藏,从而避免串行访问模式下的长时间未命中延迟。虽然使用并行模式可以缩短DRAM未命中的访问延迟,但并行访问模式也存在带宽和长尾延迟问题。
[0003]在混合内存系统的层次架构中,串行访问方式和并行访问方式各有优劣,因此,单独使用任何一种访问模式都会严重影响内存访问性能。

技术实现思路

[0004]本专利技术提供一种基于动态访问的DRAM

NVM混合内存预测器,能够将串行访问模式与并行访问模式结合进行动态访问,解决分层混合存储系统中的访问延迟问题。
[0005]为实现上述目的,本专利技术实施例提供了一种基于动态访问的DRAM

NVM混合内存预测器,预测器位于最后一级缓存与DRAM缓存之间,包括:预测模块和自适应更新模块;
[0006]所述预测模块,用于从所述最后一级缓存获取内存访问读请求,并将所述内存访问请求的内存地址映射到对应的过滤器单元;
[0007]所述自适应更新模块,用于在检测到预设时间段内的内存访问行为发生预设变化时,基于预设数量的更新规则对该预设时间段内的历史访问信息进行重放,并根据更新规则的准确率大小得到最新的更新规则,以根据所述最新的更新规则对所述过滤器单元内的预测状态值进行更新;
[0008]所述预测模块,还用于根据所述过滤器单元内的预测状态值对DRAM缓存的命中状态进行预测。
[0009]作为其中一种可选的实施例,所述预测模块从所述最后一级缓存获取内存访问读请求,并将所述内存访问请求的内存地址映射到对应的过滤器单元,具体包括:
[0010]所述预测模块从所述最后一级缓存获取内存访问读请求;
[0011]根据所述内存访问请求的内存地址生成哈希值,并根据所述哈希值找到对应的过
滤器单元。
[0012]作为其中一种可选的实施例,所述预测模块根据所述内存访问请求的内存地址生成哈希值,具体包括:
[0013]所述预测模块获取所述内存访问读请求的内存地址;
[0014]所述预测模块将所述内存地址拆分为三部分,将第一部分与第二部分的按位或运算结果与第三部分进行按位与运算,并将按位与运算结果作为哈希值。
[0015]作为其中一种可选的实施例,其特征在于,所述自适应更新模块用于存储历史访问行为信息和历史预测结果信息;
[0016]则,所述自适应更新模块通过以下方式检测预设时间段内的内存访问行为发生预设变化:
[0017]所述自适应更新模块根据获取到的所述存储历史访问行为信息和所述历史预测结果信息,得到预设时间段内的内存访问行为的误预测率;
[0018]当所述误预测率大于预设阈值时,判定预设时间段内的内存访问行为发生预设变化。
[0019]作为其中一种可选的实施例,所述基于预设数量的更新规则对该预设时间段内的历史访问信息进行重放,并根据更新规则的准确率大小得到最新的更新规则,具体包括:
[0020]基于预设数量的更新规则对该预设时间段内的历史访问信息进行重放,并将准确率最高的更新规则作为最新的更新规则。
[0021]作为其中一种可选的实施例,所述预测模块根据所述过滤器单元内的预测状态值对DRAM缓存的命中状态进行预测,具体包括:
[0022]所述预测模块根据所述过滤器单元内的预测状态值,得到对应的预测状态;
[0023]所述预测模块根据所述预测状态对DRAM缓存的命中状态进行预测。
[0024]作为其中一种可选的实施例,其特征在于,所述过滤器单元内的预测状态值包括00、01、10、11。
[0025]作为其中一种可选的实施例,所述预测模块根据所述过滤器单元内的预测状态值,得到对应的预测状态,具体包括:
[0026]当检测到所述过滤器单元内的预测状态值为00时,所述预测模块得到强命中的预测状态;
[0027]当检测到所述过滤器单元内的预测状态值为01时,所述预测模块得到弱命中的预测状态;
[0028]当检测到所述过滤器单元内的预测状态值为10时,所述预测模块得到弱未命中的预测状态;
[0029]当检测到所述过滤器单元内的预测状态值为11时,所述预测模块得到强未命中的预测状态。
[0030]作为其中一种可选的实施例,所述预测模块根据所述预测状态对DRAM缓存的命中状态进行预测,具体包括:
[0031]当检测到所述预测状态为强命中或弱命中时,所述预测模块预测所述DRAM缓存命中;
[0032]当检测到所述预测状态为强未命中或弱未命中时,所述预测模块预测所述DRAM缓
存未命中。
[0033]与现有技术相比,本专利技术实施例提供的一种基于动态访问的DRAM

NVM混合内存预测器,通过使用过滤器单元的空间结构,并根据实际内存访问行为更新每个过滤器单元的预测状态,从而以极低的时间和空间成本进行准确预测,动态适应内存访问行为的变化,及时更新预测逻辑,提高了未来预测的预测精度。另外,通过适应不同的访问行为,动态选择串行访问模式或并行访问模式,有效解决了分层混合存储系统中的访问延迟问题,从而提高整体内存的访问性能。
附图说明
[0034]图1是本专利技术实施例提供的一种基于动态访问的DRAM

NVM混合内存预测器的结构示意图;
[0035]图2是现有技术中层次性混合内存的两种访问模式的结构示意图;
[0036]图3是本专利技术实施例提供的一种基于动态访问的DRAM

NVM混合内存预测器的更新规则的结构示意图;
[0037]图4是本专利技术提供的一种基于动态访问的DRAM

NVM混合内存预测器与现有访问模式的带宽本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于动态访问的DRAM

NVM混合内存预测器,其特征在于,预测器位于最后一级缓存与DRAM缓存之间,包括:预测模块和自适应更新模块;所述预测模块,用于从所述最后一级缓存获取内存访问读请求,并将所述内存访问请求的内存地址映射到对应的过滤器单元;所述自适应更新模块,用于在检测到预设时间段内的内存访问行为发生预设变化时,基于预设数量的更新规则对该预设时间段内的历史访问信息进行重放,并根据更新规则的准确率大小得到最新的更新规则,以根据所述最新的更新规则对所述过滤器单元内的预测状态值进行更新;所述预测模块,还用于根据所述过滤器单元内的预测状态值对DRAM缓存的命中状态进行预测。2.根据权利要求1所述的基于动态访问的DRAM

NVM混合内存预测器,其特征在于,所述预测模块从所述最后一级缓存获取内存访问读请求,并将所述内存访问请求的内存地址映射到对应的过滤器单元,具体包括:所述预测模块从所述最后一级缓存获取内存访问读请求;根据所述内存访问请求的内存地址生成哈希值,并根据所述哈希值找到对应的过滤器单元。3.根据权利要求2所述的基于动态访问的DRAM

NVM混合内存预测器,其特征在于,所述预测模块根据所述内存访问请求的内存地址生成哈希值,具体包括:所述预测模块获取所述内存访问读请求的内存地址;所述预测模块将所述内存地址拆分为三部分,将第一部分与第二部分的按位或运算结果与第三部分进行按位与运算,并将按位与运算结果作为哈希值。4.根据权利要求1所述的基于动态访问的DRAM

NVM混合内存预测器,其特征在于,所述自适应更新模块用于存储历史访问行为信息和历史预测结果信息;则,所述自适应更新模块通过以下方式检测预设时间段内的内存访问行为发生预设变化:所述自适应更新模块根据获取到的所述存储历史访问行为信息和所述历史预测结果信息,得到预设时间段内的内存访问行为的误预测率;当所述误预测率大于预设阈值时,判定预设时间段内的内...

【专利技术属性】
技术研发人员:谭玉娟陈伟肖丹晏志超刘铎
申请(专利权)人:重庆大学
类型:发明
国别省市:

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

1