CN107301881B - 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统 - Google Patents

一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统 Download PDF

Info

Publication number
CN107301881B
CN107301881B CN201710523101.0A CN201710523101A CN107301881B CN 107301881 B CN107301881 B CN 107301881B CN 201710523101 A CN201710523101 A CN 201710523101A CN 107301881 B CN107301881 B CN 107301881B
Authority
CN
China
Prior art keywords
matrix
bit
syndrome
columns
adjacent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710523101.0A
Other languages
English (en)
Other versions
CN107301881A (zh
Inventor
肖立伊
李家强
刘盟
陈诗琦
李林哲
李�杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201710523101.0A priority Critical patent/CN107301881B/zh
Publication of CN107301881A publication Critical patent/CN107301881A/zh
Application granted granted Critical
Publication of CN107301881B publication Critical patent/CN107301881B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Mram Or Spin Memory Techniques (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明涉及抗辐射加固电路领域,具体涉及一种基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固方法及存储器系统,本发明为了解决现有技术的编码电路复杂、难以保证存储器可靠性的缺点,而提出一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法及存储器系统。首先规定设计规则,然后基于传统的递归回溯算法,开发了具有权重限制功能和搜索状态记忆的新算法来查找符合这些规则的编码的矩阵。利用该算法找到了16、32和64位数据位的四位相邻纠错码的矩阵。最后根据提出的编码矩阵利用硬件描述语言实现编码器与解码器电路,完成对存储器的加固设计。本发明中的编码在实现纠正能力扩展的同时具有中等面积和延迟开销。本发明适用于SRAM存储器的加固。

Description

一种基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固 方法及存储器系统
技术领域
本发明涉及抗辐射加固电路领域,具体涉及一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法及存储器系统。
背景技术
电子器件可靠性是空间应用的重要指标之一。作为数据存储组件的存储器在电子系统中起着重要作用。它们广泛应用于片上系统(System on a Chip,SoC)和专用集成电路(ApplicationSpecificIntegrated Circuits,ASIC)中。在这些应用中,存储器面积是整个电路面积的主要组成部分。这使得存储器比其他组件遭受更多的空间辐射。因此,存储器的辐射敏感度已成为确保电子系统可靠性的关键问题。
在现代静态随机存取存储器(Static Random Access Memories,SRAM)中,单粒子翻转(Single Event Upset,SEU)和多位翻转(Multiple Bit Upset,MBU)是辐射诱导软错误发生的两个主要原因。对于具有大特征尺寸的晶体管,辐射事件只影响一个存储单元,这意味着只有SEU发生。这种情况下使用具有纠正一位错误检测两位错误(Single ErrorCorrection-Double Error Detection,SEC-DED)的编码足以保护存储器免受辐射。随着半导体技术进入深亚微米(deep submicron,DSM)时代,临界电荷持续下降,并且存储单元的面积持续缩小,这使得更多的内存单元受到空间辐射的影响,示意图如图1所示。具有纠正相邻位错误或多位突发错误的错误纠正码(Error Correction Codes,ECC)逐渐受到青睐。虽然多位错误纠错码可以纠正不限于相邻位的任何错误模式中的多位错误,但是解码的复杂性和编码矩阵纬度的大小限制了它们的使用。同时,从MBUs的生成原理来看,MBUs的发生取决于二级粒子的初始入射角和散射角,因此在MBUs中相邻位错误是主要错误模式。因此,具有相邻位错误纠正能力的ECC在存储器加固设计中成为主流。
很多具有相邻位校正能力的编码被提出,主要有:双相邻纠错(Double AdjacentError Correction,DAEC),三相邻纠错(Triple Adjacent Error Correction,TAEC)和3位突发纠错码(Burst ErrorCorrection,BEC)几种类型。如图1所示,特征尺寸由DSM进入UDSM范围,存储器单元面积进一步缩小,甚至存在具有原子尺寸晶体管的存储器。离子的离化范围可以包括在字线方向上三个以上的存储单元。这意味着SEC-DAEC-TAEC编码可能无法保证存储器的可靠性。需要具有更高纠正能力的编码。而且在一般情况下,纠正能力与校验位数量具有正相关性,这使得编解码电路复杂度大大增加。
发明内容
本发明的目的是为了解决现有技术的编码电路复杂、难以保证存储器可靠性的缺点,而提出一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法及存储器系统。
一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法,包括:
步骤一、构建维度(n-k)×(n-k)的单位矩阵作为初始矩阵H;
步骤二、从2n-k-1种待选列中选择列向量添加到初始矩阵H的右侧;
步骤三、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子;
步骤四、判断所述校正子是否在校正子集中;若否,则将初始矩阵H与新添加的列共同作为新的初始矩阵;若是,则从2n-k-1种待选列中重新选择一个未选择过的列向量进行添加;若从2n-k-1种待选列中所有的列都在校正子集中,则将上一次成功添加的列和与其对应的校正子分别从H矩阵和校正子集中出去,然后执行步骤二;直到满足预设的矩阵的维度。
一种基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,包括依次连接的输入端、编码器、SRAM存储器、译码器以及输出端;所述编码器与解码器中使用的奇偶校验矩阵通过权利要求3所述的基于4位相邻和3位突发纠错码的SRAM存储器加固方法得到。
一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法,包括:
步骤一、构建权重向量(A0,A1,……An-k-1),每个元素表示;列向量的权重为列向量中值为1的元素的个数;A1,……An-k-1的初值均为n-k;将权重向量中的元素记为Ai,其中i的初值为0,Ai的初值为2。
步骤二、,从2n-k-1种待选列中选择权重不大于Ai的列向量,作为备选列向量。
步骤三、将备选列向量加到维度为(n-k)×(n-k)的初始矩阵H的右侧;初始矩阵为单位矩阵。
步骤四、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子;
步骤五、判断所述校正子是否在校正子集中。
若否,则将初始矩阵H与新添加的列共同作为新的矩阵;并判断新的矩阵是否满足维度要求,如果满足,则将当前矩阵作为目标矩阵进行输出;如果不满足,则将Ai+1的权重设置为2,令i加1,存储当前的权重向量,并返回执行步骤二;当前的权重向量用于记忆当前的搜索状态。
若是,则从2n-k-1种待选列中重新选择一个未选择过且符合权重条件的列向量进行添加,直至判断结果为否。
若从2n-k-1种待选列中所有的列都在校正子集中,则将Ai的值加1,然后返回步骤二执行。
步骤六、将与SRAM存储器连接的编码器和译码器所基于的奇偶校验矩阵设置为目标矩阵,以实现加固。
本发明提出了一种在不增加额外的奇偶校验位的情况下将3位突发纠错(BEC)码扩展为四位相邻纠错(Quadruple Adjacent Error Correction,QAEC)码的技术并利用此技术对存储器进行加固的技术。首先,规定了设计规则,然后基于传统的递归回溯算法,开发了具有权重限制功能和搜索状态记忆的新算法来查找符合这些规则的编码的H矩阵。利用该算法找到了16、32和64位数据位的QAEC码的H矩阵。其中16位数据位的H矩阵是最优化的结果,32位数据位和64位数据位的H矩阵是基于一定计算时间内最优化的结果。最后根据提出的编码H矩阵利用Verilog硬件描述语言(HDL)实现编码器与解码器电路,完成对存储器的加固设计。本设计在65nm工艺库下进行综合,结果表明本发明中的编码在实现纠正能力扩展的同时具有中等面积和延迟开销。
本发明的有益效果为:1、能够在不增加额外的奇偶校验位的情况下,即不提高冗余度的情况下,更高纠正能力;2、从面积优化部分可以看出,本发明中编码的编码器面积增加的百分比为10%~20%,编码器面积增加的百分比为25%~34%。从延迟优化部分可以看出,本发明中编码的编码器延迟增加的百分比为18%~28%,解码器延迟增加百分比为6%~13%。
附图说明
图1为粒子影响单元随集成电路工艺变化的示意图;箭头方向代表演化顺序;方形区域代表存储单元,圆形区域代表粒子的影响范围;
图2为本发明具体实施方式一的流程图;
图3为本发明具体实施方式九的流程图;
图4为本发明具体实施方式四的基于4位相邻和3位突发纠错码的SRAM存储器系统的结构示意图。
具体实施方式
具体实施方式一:本实施方式的基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固方法,如图2所示,包括:
步骤一、构建维度(n-k)×(n-k)的单位矩阵作为初始矩阵H。
步骤二、从2n-k-1种待选列中选择列向量添加到初始矩阵H的右侧。
步骤三、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子。
步骤四、判断所述校正子是否在校正子集中;若否,则将初始矩阵H与新添加的列共同作为新的初始矩阵;若是,则从2n-k-1种待选列中重新选择一个未选择过的列向量进行添加;若从2n-k-1种待选列中所有的列都在校正子集中,则将上一次成功添加的列和与其对应的校正子分别从H矩阵和校正子集中除去,然后执行步骤二;直到矩阵H满足预设的维度,并将满足预设维度的矩阵作为目标矩阵进行输出。
步骤五、将与SRAM存储器连接的编码器和译码器所基于的奇偶校验矩阵设置为目标矩阵,以实现加固。
下面针对编码设计对本发明做进一步的解释。
编码设计是本发明的核心部分,基于编码加固存储器技术的核心就是对所用编码的设计,编码的设计是否优化决定了编码纠正能力的高低和硬件开销的多少。本发明中,通过提出的搜索算法,得到了具有4位相邻和3位突发错误纠正能力的编码。
目标编码是二进制线性编码,遵循二进制线性编码规则。奇偶校验矩阵H与校正子S有以下关系:如果接收到的编码第i位发生错误,则校正子等于H矩阵对应第i列。如果接受到的编码中有多位错误,则校正子S等于这几位对应的H矩阵中几列的异或。所以如果一个编码可以被纠正或者发现,它遵循以下规则:
1)可纠正的限制:相应的校正子矢量在校正子集合中是唯一的。
2)可检测的限制:相应的校正子矢量不为零。本发明中的编码设计技术如下:
具有低冗余性的QAEC编码设计技术从两个方面进行了说明:第一个部分为错误空间的可满足性问题。另一个部分为校正子唯一性可满足性问题。
1)错误空间的可满足性问题
对于具有K个数据位和C个校验位的编码,其输入取值有2k种二进制值。如果发生一位错误,有K+C种位置,一位单个错误的输出空间有(K+C)*2k种取值。如果发生相邻的错误,有K+C-1种位置,一位相邻错误的输出空间有(K+C-1)*2k种取值。如果连续发生N位错误,有K+C-(N-1)种位置,一位相邻错误的输出空间有(K+C-(N-1))*2k种取值。为了获得能够纠正这些错误类型的编码,各种错误类型的输出空间总和要小于等于总的输出空间值2k +c。本发明中的编码,要纠正3位突发和四位相邻的错误,总体错误类型的输出空间为((K+C-3)+(K+C-2)+(K+C-1)+(K+C)+(K+C-2))*2k,分别对应错误模式(…,1111,…)、(…,111,…)、(…,11,…)、(…,1,…)、和(…,101,…)的错误类型输出空间。基于错误空间满足定理,总体错误类型的输出空间与该编码总的输出空间之间的关系满足方程(1)。
2k(5(k+c)-8+1)≤2k+c (1)
本发明中所需的奇偶校验位数量与3位BEC编码的相同。16个数据位的编码,校验位的数量为7,32个数据位的编码为8,64个数据位的编码为9。选择的奇偶校验位的数量符合方程(1)的要求。
2)校正子唯一性可满足性问题
从二进制线性码的角度来看,如果一种类型的错误模式可以通过使用ECC方法校正,则在该错误模式的校正子集合中,每个错误对应的校正子应该是唯一的。在本发明中可以纠正的错误模式有:(…,1,…)、(…,11,…)、(…,111,…)、(…,1111,…)和(…,101,…)几种类型。因此校正子唯一性的可满足性可以用以下公式表示:
S0i≠S0j S1i≠S1j S2i≠S2j S3i≠S3j S4i≠S4j (2)
S0i≠S1j≠S2k≠S3l≠S4m (3)
其中S0i代表一位错误的校正子,S1i代表相邻错误的校正子,S2i代表相邻三位错误的校正子,S3i代表突发三位错误的校正子,S4i代表相邻四位错误的校正子,校正子变量S0i,S1i,S2i,S3i,S4i是符合以下等式中的规则的H矩阵列的线性组合:
S0i=hi (4)
Figure GDA0002408510250000051
Figure GDA0002408510250000052
Figure GDA0002408510250000053
Figure GDA0002408510250000054
i,j∈[1,n],i≠j,等式(4)-(8)表示校正子和H矩阵列之间的具体关系。它也是用于设计校正子计算电路的依据。
从集成电路设计的角度考虑,优化ECC的解码器复杂度和解码延迟可以使用以下两个方案:1)最小化H的汉明重量:该方案通常可以通过在编码器和解码器的合成过程中使用最低数量的逻辑门来完成。2)最小化H最重行的汉明重量:编码和解码过程中的逻辑深度取决于具有最大延迟的逻辑路径。最小化最重行的汉明重量可以减少编码器和解码器的延迟。
递归回溯算法:首先,构建n-k维的单位矩阵作为初始矩阵。然后将相应错误模式的校正子添加到校正子集,具体过程为从具有2n-k-1种待选列中选择列向量添加到初始矩阵的右侧。此过程定义为添加操作,作为新添加列的校正子与目前H矩阵中所有列向量进行相应错误模式的计算,如果计算所得的校正子与校正子集中的校正子没有重合,则该列添加成功,否则重新选择一列进行添加。如果进行列添加操作时所有的待选列均失败,先前的一列和相应的校正子分别从H矩阵和校正子集中除去,继续进行列添加操作,直到生成完整的H矩阵,编码的设计过程如图2所示。通常,递归回溯算法需要大量的计算资源和计算时间。为了加快算法运算速度,首先我们采用十进制运算而不是二进制矩阵运算,将列向量转换成一个十进制数。一般来说,如果我们预期的代码存在,很容易获得第一个解决方案,但不一定是最优的。通过不同的优化标准,可以得到更好的解决方案。但是,搜索最佳解决方案需要整个搜索过程的完整结果,这在当前的计算条件下需要很长的时间。在本发明中由于16位数据位QAEC编码位数较少,其H矩阵是用该遍历方法搜索。当编码位数增加时,可以使用在合理的计算时间内的最佳结果代替最佳方案,比如说本发明中后续给出的32位与64位数据位QAEC编码的H矩阵。为了尽可能找到最优化的H矩阵,可以规定一些限定条件,比如说通过列权重限制方法减少添加到基础矩阵的列的数量,从而计算操作可以迅速覆盖整个周期列表,该查找过程的性能对于具有位数少的编码是非常有效的。但当数据位数达到32位或64位时,计算时间仍然很大。因此开发了基于搜索状态记忆的列权重限制算法来缩短搜索目标编码的时间成本。详细的算法流程如图3所示。如果解决方案存在,记录和更新被限制位的状态,进行下一位对应列重的设置。否则将列重Ai设置为Ai+1,随着程序约束的增加,目标编码将会生成。
根据以上优化规则利用基于搜索状态记忆的算法计算得到16位数据位、32位数据位和64位数据位的H矩阵。其中16个数据位的QAEC编码(23,16)计算中遍历了所有情况,得到了符合要求的H矩阵集合,从集合中选出密度最低的H矩阵,分别为:
Figure GDA0002408510250000061
以及
Figure GDA0002408510250000062
在本发明中提到的针对16位的编码矩阵是最优的结果。但是对于32位与64位数据位的QAEC编码,遍历所有情况所需的时间过长,所以本发明中所给出的矩阵是在一段合理的计算时间内所给出的最优化的结果。32个数据位的QAEC编码(40,32)的奇偶校验矩阵分别为
Figure GDA0002408510250000071
以及
Figure GDA0002408510250000072
其中前一个32个数据位的矩阵是最小化H矩阵汉明重量的优化结果,后一个32个数据位的矩阵是最小化最大行重的优化结果。64个数据位的QAEC编码(73,64)的奇偶校验矩阵为:
Figure GDA0002408510250000073
下面对本发明中的编码与3位BEC编码从冗余和复杂度两方面进行比较。
在冗余和复杂度方面,本发明中所提出的编码与现有技术中的编码保持相同数量的校验位。虽然新编码被优化以具有更高级的校正能力,但是冗余保持不变,并且存储器中校验位的区域仍然与之前相同。
具体实施方式二:本实施方式与具体实施方式一不同的是:初始矩阵H的列向量与列向量对应的校正子的关系为:如果接收到的编码第i位发生错误,则校正子等于H矩阵对应第i列;如果接受到的编码中有多位错误,则校正子S等于矩阵H中这几位对应的H矩阵中对应列向量的异或。
其它步骤及参数与具体实施方式一相同。
具体实施方式三:本实施方式与具体实施方式一或二不同的是:步骤三中,能够得到的校正子包括S0i,S1i,S2i,S3i,S4i,其中i表示矩阵H的第i列:校正子与矩阵H的列向量的关系为:
S0i=hi
Figure GDA0002408510250000081
Figure GDA0002408510250000082
Figure GDA0002408510250000083
Figure GDA0002408510250000084
其中S0i代表一位错误的校正子,S1i代表相邻错误的校正子,S2i代表相邻三位错误的校正子,S3i代表突发三位错误的校正子,S4i代表相邻四位错误的校正子,hi为H矩阵的第i列的列向量;⊕为异或运算。校正子在校正子集中的形式应当为S01或S23等将i带入为具体数值的形式。
其它步骤及参数与具体实施方式一或二相同。
具体实施方式四:本实施方式提供一种基于4位相邻和3位突发纠错码的SRAM存储器系统,如图4所示,包括依次连接的输入端、编码器、SRAM存储器、译码器以及输出端,编码器与解码器中使用的奇偶校验矩阵通过权利要求3所述的基于4位相邻和3位突发纠错码的SRAM存储器加固方法得到。
本实施方式利用编码设计部分得到的编码进行编码器和译码器设计,输入信息在编码器中进行编码,存储器接收并存储编码器对输入信息编码的结果,完成编码部分。在译码过程中,译码器对从存储器中读出的码字进行译码,并对存储器中的错误进行纠正。
根据具体实施方式一中的优化方案,递归回溯算法,分别找到了16位、32位和64位数据位的QAEC码的H矩阵。需要注意的是本发明中所需的奇偶校验位数量与3位BEC编码的相同。16个数据位的编码,校验位的数量为7,32个数据位的编码为8,64个数据位的编码为9。
使用时,在译码过程中,首先计算校正子,如果它为零,则说明码字正确,如果不等于零,等于某几列的异或,那么错误就发生在这几列对应的数据位和冗余位。发现错误位之后,将这些位取反,即得到正确的码字。
具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:
编码器与解码器中使用的奇偶校验矩阵为:
Figure GDA0002408510250000085
其它步骤及参数与具体实施方式一至四之一相同。
具体实施方式六:本实施方式与具体实施方式一至五之一不同的是:
编码器与解码器中使用的奇偶校验矩阵为:
Figure GDA0002408510250000091
其它步骤及参数与具体实施方式一至五之一相同。
具体实施方式七:本实施方式与具体实施方式一至六之一不同的是:
编码器与解码器中使用的奇偶校验矩阵为:
Figure GDA0002408510250000092
其它步骤及参数与具体实施方式一至六之一相同。
具体实施方式八:本实施方式与具体实施方式一至七之一不同的是:
编码器与解码器中使用的奇偶校验矩阵为:
Figure GDA0002408510250000093
其它步骤及参数与具体实施方式一至七之一相同。
具体实施方式九:本实施方式与具体实施方式一至八之一不同的是:
编码器与解码器中使用的奇偶校验矩阵为:
Figure GDA0002408510250000094
其它步骤及参数与具体实施方式一至八之一相同。
具体实施方式五和六是16位数据位数据位的QAEC码的H矩阵,类似地,具体实施方式七和八对应32位数据位的QAEC码的H矩阵,具体实施方式九对应64位数据位的QAEC码的H矩阵。
具体实施方式十:本实施方式提供一种基于4位相邻和3位突发纠错码的SRAM存储器加固方法,包括:
步骤一、构建权重向量(A0,A1,……An-k-1),每个元素表示;列向量的权重为列向量中值为1的元素的个数;A1,……An-k-1的初值均为n-k;将权重向量中的元素记为Ai,其中i的初值为0,Ai的初值为2。
步骤二、,从2n-k-1种待选列中选择权重大于Ai的列向量,作为备选列向量。
步骤三、将备选列向量加到维度为(n-k)×(n-k)的初始矩阵H的右侧;初始矩阵为单位矩阵。
步骤四、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子。
步骤五、判断所述校正子是否在校正子集中。
若否,则将初始矩阵H与新添加的列共同作为新的矩阵;并判断新的矩阵是否满足维度要求,如果满足,则将当前矩阵作为目标矩阵进行输出;如果不满足,则将Ai+1的权重设置为2,令i加1,存储当前的权重向量,并返回执行步骤二;当前的权重向量用于记忆当前的搜索状态。
若是,则从2n-k-1种待选列中重新选择一个未选择过且符合权重条件的列向量进行添加,直至判断结果为否。
若从2n-k-1种待选列中所有的列都在校正子集中,则将Ai的值加1,然后返回步骤二执行。
步骤六、将与SRAM存储器连接的编码器和译码器所基于的奇偶校验矩阵设置为目标矩阵,以实现加固。
本实施方式在具体实施方式一中有相应的记载,其区别是从2n-k-1种待选列中选择列向量时不再是随意选取,而是设置列权重,优先选择权重较低的列向量,这样能够使得矩阵的汉明重量较小,并缩短搜索目标编码的时间成本。并且本实施方式的方法具有搜索记忆功能,步骤五中记录的权重向量能够记录当前的搜索状态。
<效果对比>
下面对本发明中的编码与3位BEC编码进行比较。比较从面积和延迟的实际开销进行比较。
面积和延迟的实现开销方面,随着校正能力的提高,H矩阵的汉明重量和最重行的重量也增加。这使得编码和解码过程更加复杂。编码器和解码器在Verilog中进行了建模,并在65nm的库下进行了综合。为了获得更好的比较,每种编码在面积和延迟的不同优化约束下综合两次分别进行比较。从面积优化部分可以看出,本发明中编码的编码器面积增加的百分比为10%~20%,编码器面积增加的百分比为25%~34%。从延迟优化部分可以看出,本发明中编码的编码器延迟增加的百分比为18%~28%,解码器延迟增加百分比为6%~13%。可以看到扩展校正能力带来的复杂性的提高引起的面积和延迟的增加的开销是适度的。这表明设计人员可以有效地使用所提出的具有QAEC功能的3位BEC在最多四位相邻错误的情况下来保护SRAM存储器免受辐射影响和减轻对MCU影响。
本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (9)

1.一种基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固方法,其特征在于,包括:
步骤一、构建维度(n-k)×(n-k)的单位矩阵作为初始矩阵H;
步骤二、从2n-k-1种待选列中选择列向量添加到初始矩阵H的右侧;
步骤三、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子;
能够得到的校正子包括S0i,S1i,S2i,S3i,S4i,其中i表示矩阵H的第i列:校正子与矩阵H的列向量的关系为:
S0i=hi
Figure FDA0002408510240000011
Figure FDA0002408510240000012
Figure FDA0002408510240000013
Figure FDA0002408510240000014
其中S0i代表一位错误的校正子,S1i代表相邻错误的校正子,S2i代表相邻三位错误的校正子,S3i代表突发三位错误的校正子,S4i代表相邻四位错误的校正子,hi为H矩阵的第i列的列向量;⊕为异或运算;
步骤四、判断所述校正子是否在校正子集中;若否,则将初始矩阵H与新添加的列共同作为新的初始矩阵;若是,则从2n-k-1种待选列中重新选择一个未选择过的列向量进行添加;若从2n-k-1种待选列中所有的列都在校正子集中,则将上一次成功添加的列和与其对应的校正子分别从H矩阵和校正子集中除去,然后执行步骤二;直到矩阵H满足预设的维度,并将满足预设维度的矩阵作为目标矩阵进行输出;
步骤五、将与SRAM存储器连接的编码器和译码器所基于的奇偶校验矩阵设置为目标矩阵,以实现加固。
2.根据权利要求1所述的基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固方法,其特征在于,初始矩阵H的列向量与列向量对应的校正子的关系为:
如果接收到的编码第i位发生错误,则校正子等于H矩阵对应第i列;如果接受到的编码中有多位错误,则校正子S等于矩阵H中这几位对应的H矩阵中对应列向量的异或。
3.一种基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,包括依次连接的输入端、编码器、SRAM存储器、译码器以及输出端;其特征在于,所述编码器与解码器中使用的奇偶校验矩阵通过权利要求1所述的基于4位相邻和3位突发纠错码的SRAM存储器加固方法得到。
4.根据权利要求3所述的基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,其特征在于,所述编码器与解码器中使用的奇偶校验矩阵为:
Figure FDA0002408510240000021
5.根据权利要求3所述的基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,其特征在于,所述编码器与解码器中使用的奇偶校验矩阵为:
Figure FDA0002408510240000022
6.根据权利要求3所述的基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,其特征在于,所述编码器与解码器中使用的奇偶校验矩阵为:
Figure FDA0002408510240000023
7.根据权利要求3所述的基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,其特征在于,所述编码器与解码器中使用的奇偶校验矩阵为:
Figure FDA0002408510240000024
8.根据权利要求3所述的基于4位相邻和3位突发纠错码的抗辐射加固SRAM存储器系统,其特征在于,所述编码器与解码器中使用的奇偶校验矩阵为:
Figure FDA0002408510240000031
9.一种基于4位相邻和3位突发纠错码的SRAM存储器抗辐射加固方法,其特征在于,包括:
步骤一、构建权重向量(A0,A1,……An-k-1),每个元素表示列向量的权重;列向量的权重为列向量中值为1的元素的个数;A1,……An-k-1的初值均为n-k;将权重向量中的元素记为Ai,其中i的初值为0,A0的初值为2;
步骤二、从2n-k-1种待选列中选择权重不大于Ai的列向量,作为备选列向量;
步骤三、将备选列向量加到维度为(n-k)×(n-k)的初始矩阵H的右侧;初始矩阵为单位矩阵;
步骤四、将新添加的列与初始矩阵H中所有列向量进行错误模式计算,得到校正子;
能够得到的校正子包括S0i,S1i,S2i,S3i,S4i,其中i表示矩阵H的第i列:校正子与矩阵H的列向量的关系为:
S0i=hi
Figure FDA0002408510240000032
Figure FDA0002408510240000033
Figure FDA0002408510240000034
Figure FDA0002408510240000035
其中S0i代表一位错误的校正子,S1i代表相邻错误的校正子,S2i代表相邻三位错误的校正子,S3i代表突发三位错误的校正子,S4i代表相邻四位错误的校正子,hi为H矩阵的第i列的列向量;⊕为异或运算;
步骤五、判断所述校正子是否在校正子集中;
若否,则将初始矩阵H与新添加的列共同作为新的矩阵;并判断新的矩阵是否满足维度要求,如果满足,则将当前矩阵作为目标矩阵进行输出;如果不满足,则将Ai+1的权重设置为2,令i加1,存储当前的权重向量,并返回执行步骤二;当前的权重向量用于记忆当前的搜索状态;
若是,则从2n-k-1种待选列中重新选择一个未选择过且符合权重条件的列向量进行添加,直至判断结果为否;
若从2n-k-1种待选列中所有的列都在校正子集中,则将Ai的值加1,然后返回步骤二执行;
步骤六、将与SRAM存储器连接的编码器和译码器所基于的奇偶校验矩阵设置为目标矩阵,以实现加固。
CN201710523101.0A 2017-06-30 2017-06-30 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统 Active CN107301881B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710523101.0A CN107301881B (zh) 2017-06-30 2017-06-30 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710523101.0A CN107301881B (zh) 2017-06-30 2017-06-30 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统

Publications (2)

Publication Number Publication Date
CN107301881A CN107301881A (zh) 2017-10-27
CN107301881B true CN107301881B (zh) 2020-06-09

Family

ID=60136075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710523101.0A Active CN107301881B (zh) 2017-06-30 2017-06-30 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统

Country Status (1)

Country Link
CN (1) CN107301881B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107680629B (zh) * 2017-10-30 2020-08-25 中北大学 一种基于拉丁方矩阵构造的低冗余矩阵码对存储器进行加固方法
CN110096384B (zh) * 2019-04-23 2021-06-25 西安电子科技大学 高可靠航天数据及中间变量的保护方法
CN111653306B (zh) * 2020-07-07 2022-08-26 中国人民解放军国防科技大学 用于单端口sram的微体系结构级通用加固装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067972A (zh) * 2007-04-23 2007-11-07 北京芯技佳易微电子科技有限公司 一种存储器检错纠错编码电路及利用其读写数据的方法
CN101621299A (zh) * 2008-07-04 2010-01-06 华为技术有限公司 一种突发纠错的方法、设备和装置
CN104575586A (zh) * 2013-10-15 2015-04-29 飞思卡尔半导体公司 基于错误信息的存储器设备保持模式

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104932951B (zh) * 2015-07-12 2017-09-05 符方晓 一种nand闪存出现ecc无法纠错时的数据恢复方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101067972A (zh) * 2007-04-23 2007-11-07 北京芯技佳易微电子科技有限公司 一种存储器检错纠错编码电路及利用其读写数据的方法
CN101621299A (zh) * 2008-07-04 2010-01-06 华为技术有限公司 一种突发纠错的方法、设备和装置
CN104575586A (zh) * 2013-10-15 2015-04-29 飞思卡尔半导体公司 基于错误信息的存储器设备保持模式

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种新颖的二维纠错码加固存储器设计方法;肖立伊等;《宇航学报》;20140228;第35卷(第2期);227-234 *

Also Published As

Publication number Publication date
CN107301881A (zh) 2017-10-27

Similar Documents

Publication Publication Date Title
US11740960B2 (en) Detection and correction of data bit errors using error correction codes
JP5043562B2 (ja) エラー訂正回路、その方法及び前記回路を備える半導体メモリ装置
US9213596B2 (en) Handling errors in ternary content addressable memories
CN107301881B (zh) 一种基于4位相邻和3位突发纠错码的sram存储器抗辐射加固方法及存储器系统
CN111338840B (zh) 航天数据保护方法、存储介质、计算机程序、系统、终端
JPH02278921A (ja) 2進データの符号化及び復号のための方法及び復号装置
Li et al. Efficient implementations of 4-bit burst error correction for memories
CN110941505A (zh) 产生错误校正电路的方法
Pae et al. Minimal aliasing single-error-correction codes for dram reliability improvement
CN103151078B (zh) 一种存储器检错纠错码生成方法
US20150128009A1 (en) Memory system and memory controller
CN110489268B (zh) 一种应用于星上恶劣环境中存储系统的两级纠错编码方法与系统
Karan et al. A Robust Code for MBU Correction Till 5-Bit Error
US9520899B2 (en) Method for generating a maximized linear correcting code, method and device for decoding such a code
KR101496052B1 (ko) 블록 단위 연접 bch 부호 성능 개선 및 오류마루 경감을 위해 순환 자리 이동을 활용하는 복호 기법 및 회로
CN113555056A (zh) 存储器系统及其操作方法
CN111782438B (zh) 一种改进的抗辐射加固矩阵码译码电路
US11652496B2 (en) Memory system and method for controlling non-volatile memory
Shirol et al. A FPGA Implementation of Hard Systematic Error Correcting codes based Matching of Data Encoded Architecture with Low-Complexity, Low-Latency
Cao et al. Studies of the Linear Block Codes for Memory Protection
JPS594741B2 (ja) ブロツク誤り検出訂正方式
Hou et al. Low Redundancy Two-Dimensional Matrix-Based HVDB Code for Double Error Correction
Pushpalatha et al. Error Detection and Correction using Decimal Matrix Algorithm
Penumutchi et al. Low Redundancy Matrix Code with Efficient PPA
CN116615718A (zh) 可编程纠错码编码和解码逻辑

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant