一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种对抗阻变对称存储器硬失效错误的方法与流程

2021-09-29 03:53:00 来源:中国专利 TAG:存储器 对称 失效 对抗 错误


1.本发明涉及基于新型材料的非易失存储器领域,尤其涉及一种对抗阻变对称存储器硬失效错误的方法。


背景技术:

2.现阶段针对阻变存储器硬失效错误的应对措施主要有两种,一种是页移除,即操作系统直接将出现硬失效器件的页作废;另一种是重映射,即保留硬失效器件所在页,只是将出现硬失效的数据块重新映射到别的地址中。然而这两种方法并不适用于阻变对称存储器。
3.对于页移除的方法,主要问题在于代价过高且效果很差,因为阻变对称存储器通常采用“巨型页”技术以求可以显示地控制数据在存储阵列中的物理布局,而一整张“巨型页”的移除不仅会使存储器寿命迅速衰减,并且会导致实际存储器空间的大幅下降,进而严重影响主存的性能。此外,移除的“巨型页”中可能只出现了少量的硬失效单元,大部分的存储单元依然是可用的,这也造成了很大程度的浪费。
4.对于重映射的方法,主要问题在于数据重映射的方向性。目前的重映射技术都是针对传统的单向访问阻变存储器,数据的重映射不需要考虑方向性,然而,对于阻变存储器,数据的存取包括行列两个方向,单个方向数据块的重映射会对另一个方向的数据块产生影响,导致在存储器访问时出现数据缺失的问题。
5.因此,本领域的技术人员致力于开发一种对抗阻变对称存储器硬失效错误的方法,以提高阻变对称存储器的使用寿命,增强存储器可靠性。


技术实现要素:

6.有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是如何提高阻变对称存储器的使用寿命,并增强存储器可靠性。
7.为实现上述目的,本发明提供了一种对抗阻变对称存储器硬失效错误的方法,包括以下步骤:混合粒度重映射、失效字平移优化和重映射信息记录优化;
8.所述对抗阻变对称存储器硬失效错误的方法基于两种与数据存储方向无关的粒度,所述两种与数据存储方向无关的粒度包括一个粗粒度和一个细粒度;所述细粒度为最小的失效数据块粒度,所述粗粒度为rc块粒度,所述最小的失效数据块为失效字,所述rc块为由存储阵列上行列两个方向缓存行所围成的数据块,所述失效字为位于存储阵列行列交叉点上的数据,其大小为一个字(8字节);
9.在所述混合粒度重映射步骤中,一个rc块内的所有失效字必须被映射到同一个重映射rc块中,所有失效字必须保持在所述rc块和所述重映射rc块中相同的相对位置,多个rc块被映射到一个重映射rc块中;
10.在所述失效字平移优化步骤中,若一个原始rc块内的失效字相对位置与拟重映射rc块内的失效字相对位置冲突,则采用一个平移尺度,将所述原始rc块内的所有失效字同
时向右平移所述平移尺度后,再映射到所述拟重映射rc块中;
11.在所述重映射信息记录优化步骤中,在将数据载入缓存时,额外记录该数据是否存在重映射或者记录该数据的重映射地址信息。
12.进一步地,所述混合粒度重映射步骤包括:硬失效错误检测、重映射地址恢复和硬失效错误纠正;
13.所述硬失效错误检测包括:对于64比特的字,设置8比特存储颗粒位宽,包括7比特的sec纠错码及一个比特的“重映射标志位”;在读操作中,如果所述“重映射标志位”是“0”,直接使用所述7比特的sec纠错码来恢复数据,否则,存储器从相应的重映射位置来获取正确的数据。
14.进一步地,所述重映射地址恢复包括:在一个最小的失效数据块中提取重映射地址时,仅存储其重映射rc块地址,将失效字的相对地址采用原始地址数据代表其在重映射rc块中的相对位置;所述重映射地址由一个粗粒度的重映射rc块地址和一个细粒度的失效字的相对地址两者共同确定。
15.进一步地,所述硬失效错误纠正包括:
16.在读数据的过程中,首先从存储器中读取行向或列向的缓存行的数据,并检查所有字的“重映射标志位”,如果缓存行中存在被重映射的字,则从失效字中恢复其重映射地址并向所述重映射地址执行另一次读操作,将两次读操作中获得的正确数据拼接在一起形成完整的行向或列向的缓存行数据并传递给处理器;
17.在写数据过程中,首先检查“重映射标志位”,并判断是否需要一次额外的向重映射地址的写操作,如果不需要额外的向重映射地址的写操作,将数据写入目的地址即可;否则根据“重映射标志位”构造掩码并将对应的失效单元的数据写入所述重映射地址中。
18.进一步地,所述失效字平移优化包括:平移尺度的衡量、平移尺度的存储、平移尺度的确定。
19.进一步地,所述平移尺度的衡量包括:采用64种字的平移尺度表示一个包含8
×
8个字的rc块中存在的64个可被移动的位置,其中包括自身原始的位置,并以0

63的数字来表示所述64种字的平移尺度,其中0表示不平移。
20.进一步地,所述平移尺度的存储包括:将平移尺度和重映射地址存放在同一个失效字中,所述存放的方法为:将平移尺度放入所述失效字的一个无损的段中,避开存放所述重映射地址的段;为存放所述平移尺度的段设置一个奇偶校验位,使其所在的段能通过奇偶校验;
21.其中,获取带有平移尺度的失效字的重映射地址包括:首先从失效字中通过奇偶校验提取重映射地址,再通过奇偶校验提取平移尺度,利用所述平移尺度计算出新的相对位置,最后将所述重映射地址和所述新的相对位置合并,确定所述失效字的精确位置。
22.进一步地,所述重映射信息记录优化包括“重映射已知”的记录模式和“重映射地址已知”的记录模式;
23.所述“重映射已知”的记录模式,为缓存中的每个缓存行设置额外的1比特的标志位,所述标志位的数据标志所述缓存行的数据是否来自两个物理地址,所述两个物理地址包括目的地址和重映射地址;若所述标志位为“0”,则在数据写回时直接访问目的地址而无需预读操作;若所述标志位为“1”,则在数据写回时先执行预读操作并确定重映射地址;
24.所述“重映射地址已知”的记录模式,将缓存行数据中失效字的位置索引以及相应的重映射地址一并存入到缓存中;在数据写回时,处理器根据具体的重映射情况向目的地址及重映射地址分别下达写指令。
25.进一步地,所述重映射地址恢复包括:重映射信息的分布及重映射信息的恢复;
26.所述重映射信息的分布采用一个最小的失效数据块空间来存储它的重映射地址,仅存储其重映射rc块地址,包括:
27.从完整的重映射地址中取出表示重映射rc块地址的部分;
28.将提取的所述重映射rc块地址以7比特为单位划分为4片;
29.将所述重映射rc块地址划分的4片以预定规则放入失效字中;其中,所述预定规则包括:
30.将所述失效字的8字节存储空间分为8段,每段为8比特;
31.将所述重映射rc块地址划分的4片分别存储至所述失效字的4个段中,避开至多可能出现两个的失效的段;
32.在存储了重映射rc地址的段中设置一个比特的奇偶校验位,使其与7比特片组合在一起可以通过奇偶校验;
33.在所述失效的段中设置一个比特的奇偶校验位,使所述失效的段的存储内容不能通过奇偶校验;
34.所述重映射信息的恢复包括:采用奇偶校验法获得重映射rc块的地址,并直接从原始地址中获取失效字的相对地址,将重映射rc块的地址和失效字的相对地址结合,最终获得重映射地址;
35.其中,所述采用奇偶校验法获得重映射rc块的地址包括:对于失效字中存储重映射地址的段,读取其奇偶校验位,奇偶校验通过后,读取该段中相应的7比特片;对于存在失效单元的段,读取其奇偶校验位,奇偶校验不通过不读取其数据。
36.进一步地,所述平移尺度的确定包括::
37.将一个重映射页划分为4个重映射rc块,所述重映射rc块有16个字的位置;
38.根据所述重映射页中字被分配的情况,计算重映射rc块中各个字的位置的分配数量,使更大的值表示所对应的位置已经被分配给其他rc块的失效字的数量,作为各重映射位置的权值;
39.当为一个rc块分配一个新的重映射rc块时,首先计算在所有平移尺度下的各重映射位置的加权和,并将所述加权和由低到高进行排序,赋予低加权值对应的平移尺度有更高的优先级,从高优先级开始遍历所有平移尺度,直到在某个平移尺度下搜寻到可用的重映射rc块,则确定选择此平移尺度。
40.利用自建仿真器及新型非易失存储器仿真工具nvmain对本发明所提技术方案进行测试,从存储器寿命和访存性能及能耗两方面体现本发明的有益技术效果:
41.(1)存储器寿命:相比于单一粒度重映射方法,混合粒度重映射下的存储器寿命提高了61.1%,通过失效字平移优化技术,可以进一步将存储器寿命提高5%;
42.(2)访存性能和能耗:基于混合粒度重映射的方法在显著提高存储器寿命的同时,还将访存性能的损失和能耗的增长分别控制在5%和7%以内,而重映射信息记录的优化技术可以进一步降低访存性能损失和能耗增长,对于“重映射已知”的记录模式,访存性能和
能耗分别改善8.6%和24.2%;对于“重映射地址已知”的记录模式,访存性能和能耗分别改善11.4%和30.5%。
43.在本发明的较佳实施方式中,本发明采用的基于混合粒度重映射对抗阻变对称存储器硬失效错误的解决方案,有效地提高了阻变对称存储器的使用寿命,极大地增强了存储器可靠性。
44.以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
45.图1是本发明的一个较佳实施例的两种与数据存储方向无关的重映射粒度示意图;
46.图2是本发明的一个较佳实施例的基于混合粒度的重映射方法示意图;
47.图3是本发明的一个较佳实施例的失效字平移的优化技术示意图;
48.图4是本发明的一个较佳实施例的重映射地址恢复示意图;
49.图5是本发明的一个较佳实施例的基于优先级的平移尺度选择策略示意图。
具体实施方式
50.以下参考说明书附图介绍本发明的一个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
51.在附图中,结构相同的部件以相同数字标号表示,各处结构或功能相似的组件以相似数字标号表示。附图所示的每一组件的尺寸和厚度是任意示出的,本发明并没有限定每个组件的尺寸和厚度。为了使图示更清晰,附图中有些地方适当夸大了部件的厚度。
52.如图1所示,是本发明的一个较佳实施例中,为解决阻变对称存储器硬失效错误,用到的两种比较实际的与数据存储方向无关的粒度。由于阻变对称存储器支持双向的数据访问,因此当采用重映射技术时需要考虑同时包含硬失效单元的两个方向上的数据块。在阻变对称存储器中,存在两种比较实际的与数据存储方向无关的粒度,一种是位于存储阵列行列交叉点上的数据,大小为一个字(8字节),该粒度是64位存储器总线的单次数据传输粒度,同时也是最小的失效数据块的粒度;另一种与数据方向无关的粒度是由存储阵列上行列两个方向缓存行所围成的数据块,大小为512字节,这种数据块为rc块。
53.如图2所示,描述了本发明的一个较佳实施例中的混合粒度重映射方法,该方法具备三个特点,第一,一个rc块内的所有失效字必须被映射到同一个重映射rc块中;第二,所有失效字必须保持在rc块和重映射rc块中相同的相对位置;第三,多个rc块可以被映射到一个重映射rc块中。混合粒度重映射结合了两种单一粒度重映射的优点。借助前两个特点,数据恢复时的读次数被限制在最多两次,而借助第三个特点,存储空间的利用率被极大地提升。
54.如图3所示,描述了本发明的一个较佳实施例中的失效字平移的优化技术。尽管基于混合粒度的重映射可以极大地改善重映射空间的利用率,然而失效字在rc块和重映射rc块中相对位置必须相同的要求限制了重映射空间利用率的进一步提升。图3中两个rc块由
于失效字的相对位置一致而无法映射到同一个重映射rc块中,但是只要将rc块2中所有的失效字向右平移两个单位,这两个rc块就仍然能够映射到同一个重映射rc块中。通过这种简单的平移,可以创造出更多重映射的可能性,提高重映射空间的利用率,从而进一步提高存储器的寿命。
55.如图4所示,描述了本发明的一个较佳实施例中的重映射地址恢复。以4gb存储器为例,由于地址的位宽(32比特)要小于最小失效数据块的位宽(64比特),因此一个最小的失效数据块依然有足够的空间来存储它的重映射地址。混合粒度重映射意味着需要两个地址来确定最终的重映射地址,一个是粗粒度的重映射rc块地址,另一个是细粒度的失效字的相对地址。由于混合粒度重映射要求失效字在rc块和重映射rc块中的相对位置一致,因此,可以直接从原始地址中获取失效字的相对地址而无需额外对它进行存储。一个最小的失效数据块,即一个失效字,至多存在两个失效单元,这是因为sec纠错码只能纠正一个错误,当检测出两个失效错误后就会启用重映射技术,图4说明了如何从失效字中恢复重映射地址。其中,图4(a)展示了一个完整的重映射地址,依照前面的分析,在失效字中只需要存储重映射rc块的地址。因此,首先从完整的重映射地址中取出表示重映射rc块地址的部分(加粗斜体表示);其次,将提取的重映射rc块地址以7比特为单位划分为4片,如图4(b)所示;最后,将该地址以一定规则放入失效字中,如图4(c)所示,8字节的失效字被分为8段,每段为8比特。这里假设最坏的情况,即两个硬失效的单元(下划线表示)分别位于两个分开的段(第2段和第4段),为了避开这两个失效的段,将重映射rc块的4个片分别放入失效字中的第1,3,5和6段中,为了区分失效字中哪些段用于恢复重映射地址,这里使用奇偶校验法。对于那些存储重映射地址的段,一个奇偶校验位会与相应的7比特片组合在一起,同时确保奇偶校验可以通过,而对于那些存在失效单元的段,存储内容将被设置位奇偶校验不能通过的形式。通过这种方法,就可以准确的从失效字中恢复重映射rc块的地址,并最终获得重映射地址。值得注意的是一个rc块内的所有失效字都具有相同的重映射rc地址。
56.如图5所示,描述了本发明的一个较佳实施例中的基于优先级的平移尺度选择策略。既然一个rc块中存在64种平移尺度,因此需要某种合理的策略从这些尺度中为失效字选出一个相对较优的平移尺度。选择策略的基本思想是尽可能最大化重映射空间的利用率。本发明技术方案中提出了一种基于优先级的平移尺度选择策略。在该策略中,需要记录重映射rc块中各个字的位置的分配情况。例如,在图5(a)中,一个重映射页中包含4个重映射rc块,并且重映射rc块有16个字的位置,根据图中字被分配的情况,重映射rc块中各个字的位置的分配数量如图5(b)所示,更大的值表示该位置已经被分配给更多的rc块,所以应当避免将失效字重映射到该位置。当为一个rc块分配一个新的重映射rc块时,首先需要计算在所有平移尺度下的所有重映射位置的加权和。例如,按照图5(c)中失效字的分布,平移尺度为0的所有重映射位置加权和为1 1 1=3,而平移尺度为1的加权和为3 1 1=5,其余平移尺度的加权和可以用同样的方式进行计算,如图5(d)所示;之后将这些加权和由低到高进行排序,排序结果如图5(e)所示。低加权值意味着对应的平移尺度具有更高的优先级,因为在该平移尺度下的重映射位置被最少的分配出去,因此具备更高的映射成功可能性;最后,从高优先级开始遍历这些平移尺度,直到在某个平移尺度下搜寻到可用的重映射rc块。在图5中,在6的平移尺度下,重映射rc块1满足映射要求。
57.以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创
造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜