[发明专利]一种高带宽的多尺度故障位图缓存结构有效
申请号: | 201710323737.0 | 申请日: | 2017-05-10 |
公开(公告)号: | CN107329906B | 公开(公告)日: | 2018-07-03 |
发明(设计)人: | 黄智濒;刘欣;王珏;满柯宇;许瀚元;周锋;桑燊 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F12/0802 | 分类号: | G06F12/0802 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 多尺度 高带宽 存储结构 存储开销 动态分配 故障位图 缓存结构 缓存子块 静态分配 逻辑结构 配置方式 位图空间 缓存行 缓存组 标示 架构 查询 | ||
1.一种高带宽的多尺度故障位图缓存结构,其特征是:包括静态分配模式下的故障位图缓存结构以及动态分配模式下的故障位图缓存结构,包括:
(1)所述静态分配模式下的故障位图缓存结构由缓存组及缓存行故障位图阵列和子块故障位图阵列两部分组成,其中所述缓存组及缓存行故障位图阵列包括缓存组故障位图域,缓存行故障位图域;所述子块故障位图阵列包括标志标示域和缓存子块故障位图域,其中:
所述缓存组故障位图域,由若干位构成,标示了该缓存组的故障程度,无故障,有故障且无法修复和有故障且可以修复这几种情况;
所述缓存行故障位图域由若干位构成,标示了缓存组中的缓存行的故障情况,各行故障情况由其对应位标示;
所述标志标示域,固定分配模式下由若干位构成,为同一缓存组对应的缓存行进行编号;
所述缓存子块故障位图域,由若干位构成,标示了缓存子块的故障情况;
(2)所述动态分配模式下的故障位图缓存结构由缓存组及缓存行故障位图阵列和子块故障位图阵列两部分组成,其中所述缓存组及缓存行故障位图阵列包括缓存组故障位图域,缓存行故障位图域以及指向缓存子块的指针域;所述子块故障位图阵列包括分区标示域和缓存子块故障位图域,其中:
所述缓存组故障位图域,由若干位构成,标示了该缓存组的故障程度,无故障,有故障且无法修复和有故障且可以修复这几种情况;
所述缓存行故障位图域,由若干位构成,标示了缓存组中的缓存行的故障情况,各行故障情况由其对应位标示;
所述指向缓存子块的指针域,动态分配模式下由若干位构成,指向所对应的缓存行的起始位置;
所述分区标示域,动态分配模式下由若干位构成,其组合分别表示缓存组起始缓存行,缓存组中间缓存行以及缓存组终止缓存行;
所述缓存子块故障位图域,由若干位构成,标示了缓存子块的故障情况。
2.根据权利要求1所述的高带宽的多尺度故障位图缓存结构,其特征是所述缓存结构具有两种初始化方式,分别为静态分配模式下的初始化和动态分配模式下的初始化,其中,
(1)在静态分配模式下的初始化包括如下步骤:
步骤1:将缓存组及缓存行故障位图阵列中的缓存组故障位图域设为无故障,将缓存行故障位图域各位设为无故障,将子块故障位图阵列中各位设为无故障状态;
步骤2:检查是否发生位故障,若发生转至步骤3,否则转至步骤2;
步骤3:在子块故障位图阵列中将发生位故障的缓存子块标记为故障状态;
步骤4:在缓存组及缓存行故障位图阵列中查找到故障位所在行,将该行的缓存行故障位图域中标示故障位所在缓存行的那位标记为故障;
步骤5:检查更新后的缓存行故障位图域,若没有两个连续的无故障缓存行,则将该行的缓存组故障位图域设置为禁用;若出现故障的缓存行数量超过静态分配预先设定的数量,则将该行的缓存组故障位图域设置为禁用;否则则将该行的缓存组故障位图域设置为有故障且可以被修复;
(2)在动态分配模式下的初始化包括如下步骤:
步骤1:将缓存组及缓存行故障位图阵列中的缓存组故障位图域设为无故障,将缓存行故障位图域各位设为无故障,将子块故障位图阵列中各位设为无故障状态;
步骤2:检查是否发生位故障,若发生转至步骤3,否则转至步骤2;
步骤3:根据故障位的物理地址在缓存组及缓存行故障位图阵列中查找其所对应的位置,并在该行的缓存行故障位图域中把标示其所在的缓存行的位设置为故障状态;
步骤4:检查更新后的缓存行故障位图域,若没有两个连续的无故障缓存行,则将该行的缓存组故障位图域设置为禁用,结束初始化;若出现故障的缓存行数量超过动态分配的限制,则将该行的缓存组故障位图域设置为禁用,结束初始化;否则将该行的缓存组故障位图域设置为有故障且可以被修复;
步骤5:根据该行的指向缓存子块的指针域在子块故障位图阵列中查找到对应起始的位置,若该行的指针域为空,则转至步骤7;
步骤6:从起始缓存行行开始查找,找到第一个未分配缓存行,在该缓存行中查找故障位所在的缓存子块,将其对应的位置标记为故障,将该行的分区标示域设为终止行,将该行上一行的分区标示域设为中间行,转至步骤2;
步骤7:将其赋值为子块故障位图阵列中未被分配的缓存行的最小序号值,在该缓存行中查找故障位所在的缓存子块,将其对应的位置标记为故障,转至步骤2。
3.根据权利要求1所述的高带宽的多尺度故障位图缓存结构,其特征是对所述缓存结构具有两种访问查询方式,分别为动态分配模式下的访问查询和静态分配模式下的访问查询,其中,
(1)当使用静态分配模式下的访问查询时,包含步骤为:
步骤1:根据物理地址的索引值同时在缓存组及缓存行故障位图阵列和子块故障位图阵列中查找,其位置为R1,R2;
步骤2:根据缓存组R1行的缓存组的故障位图域进行判断,若为无故障或故障无法修复,则退出并返回相应状态;
步骤3:检查R1的缓存行故障位图域,一个标有故障的位对应于子块故障位图阵列中的一行,该缓存行故障位图域共对应子块故障位图阵列中从R2开始到R2+K-1行;
步骤4:根据其对应的子块故障位图阵列中的故障位来进行具体的子块故障定位;
(2)当使用动态分配模式下的访问查询时,包含步骤为:
步骤1:根据物理地址的索引值同时在缓存组及缓存行故障位图阵列中查找,其位置为R1;
步骤2:根据缓存组R1行的缓存组的故障位图域进行判断,若为无故障或故障无法修复,则退出并返回相应状态;
步骤3:检查R1的缓存行故障位图域,一个标有故障的位对应于子块故障位图阵列中的一行;
步骤4:访问FM index域,查找对应的子块故障位图阵列中的起始行;
步骤5:从查找到的子块故障位图阵列中的起始行开始,依次检查其后各行的分区标示域并查询各行的子块故障位图,直到找到分区结束标志。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710323737.0/1.html,转载请声明来源钻瓜专利网。