CN104409103A - 一种新颖的宇航用存储器二维编码加固方法及电路装置 - Google Patents
一种新颖的宇航用存储器二维编码加固方法及电路装置 Download PDFInfo
- Publication number
- CN104409103A CN104409103A CN201410484659.9A CN201410484659A CN104409103A CN 104409103 A CN104409103 A CN 104409103A CN 201410484659 A CN201410484659 A CN 201410484659A CN 104409103 A CN104409103 A CN 104409103A
- Authority
- CN
- China
- Prior art keywords
- bits
- bit
- memory
- code
- detection
- 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.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 102
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000003014 reinforcing effect Effects 0.000 title claims abstract description 24
- 238000001514 detection method Methods 0.000 claims abstract description 97
- 238000012937 correction Methods 0.000 claims abstract description 78
- 239000011159 matrix material Substances 0.000 claims abstract description 21
- 238000012360 testing method Methods 0.000 claims description 21
- 230000005855 radiation Effects 0.000 claims description 13
- 238000013461 design Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 208000011580 syndromic disease Diseases 0.000 claims description 6
- 230000002787 reinforcement Effects 0.000 claims description 4
- 239000000872 buffer Substances 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims 2
- 230000002708 enhancing effect Effects 0.000 claims 1
- 238000005510 radiation hardening Methods 0.000 claims 1
- 238000004148 unit process Methods 0.000 claims 1
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
一种宇航用存储器二维编码加固方法,所述加固方法引入了一种低复杂度的多位错误探测和修正方法,所述多位错误探测和修正方法可以对任意多位错误进行探测和修正。所述加固方法步骤如下:步骤1,读入存储器字的宽度,在逻辑连接上把一个位宽为 N 的字转化为一个( k1 , k2 )的二维矩阵形式。步骤2,确定二维矩阵的行数 k1 和列数 k2 。步骤3,每一行加入水平错误探测码,每一列加入垂直奇偶效验码;步骤4,当存储器的一个字发生多位翻转后,所述水平错误探测码和垂直奇偶校验码分别指示错误出现的行和列,当不连续多位错误的间隔小于 L 时,所述水平错误探测码仍然可以给出一个错误信号。步骤5,根据修正的信息位修正所在的信息位,修正完毕。
Description
技术领域
本发明涉及一种宇航用存储器二维编码加固方法及电路装置。
背景技术
随着集成电路工艺尺寸和供电电压的降低,存储器对空间辐射环境和地面噪声环境产生的软错误比以往更加的敏感。存储器占据了集成电路***60%以上的芯片面积,并且***中绝大部分的失效是由存储器引起的,因此对存储器加固技术的研究是提高集成电路***可靠性最为重要的途径之一。空间环境中的带电高能粒子、质子和中子,以及地面环境中的α粒子可能对存储器产生单粒子翻转(single event upsets)和多位翻转(multiple bit upsets),从而影响存储数据的正确性]。当集成电路工艺尺寸降低到深亚微米以下时(<0.18μm),存储器受单粒子翻转的影响不会明显地增加,而是趋向于饱和。然而当工艺尺寸降低后,在同一半导体晶圆上可以放置更多的存储单元,相邻单元之间的距离不断地降低。因此存储器受到多位翻转的概率大大地增加了。
汉明码是存储器中最为常用的一种加固技术。但是汉明码只能修正一位、探测两位错误,无法修正存储器中出现的多位翻转。
版图位交错技术可以降低存储器中的多位翻转,它是把不同字上的位单元分配成在物理版图结构上相临的单元,从而避免一个字上的多个位单元同时发生翻转。但是版图位交错技术存在一定的限制和缺陷:位交错技术使得存储器的字和列选择布线变长,对面积、数据存取时间和功耗造成消极的影响,并且当交错的位数增加时,上述问题会更加明显。
另一种可以抑制多位翻转的方法是多位错误修正码技术。BCH码、RS码和混合码等,都可以修正存储器中出现的多位翻转。这些方法的通常缺陷是需要大量的延迟、功耗和面积开销。此外,他们的编码和译码电路更加复杂,需要以查找表的方式处理高阶域的乘法运算。
内建电流探测器(Built in current sensors)配合汉明码或奇偶校验码的方法也可以修正存储器中的多位翻转。但是,这种方法需要对存储器的每一列都加入一个内建电流探测器,并且内建电流探测器本身对软错误也是敏感的,可能引入额外的错误。此外,该方法还需要多个周期来完成错误的定位和修正,并不适合高速存储器的实际应用。
二维修正码可以有效地抑制存储器中的多位翻转,从而提高存储器的可靠性。二维修正码通过对存储器的每一行加入水平的错误码,同时对存储器的每一列加入垂直的错误码的方式进行构造。现有技术中,当一个字需要写入存储阵列时,必须先从每一行中读出相应的位,来更新垂直的错误码,这明显地增加了存取延迟和功耗。现有技术中,提出的方案只能对两位错误进行修正。当辐射能量进一步增加时,他们将无法对更多的错误进行修正。
发明内容
为了克服现有技术的不足,本发明提出了一种新颖的二维修正码,并设计了有效的存储器多位翻转加固方案,它通过较低的硬件开销,实现了对任意给定宽度多位翻转的修正。
本发明的技术解决方案是:
一种宇航用存储器二维编码加固方法,所述加固方法引入了一种低复杂度的多位错误探测和修正方法,所述多位错误探测和修正方法可以对任意多位错误进行探测和修正。
所述加固方法步骤如下:
步骤1,读入存储器字的宽度,在逻辑连接上把一个位宽为N的字转化为一个(k1, k2)的二维矩阵形式,k1代表行数,k2代表列数。
步骤2,确定二维矩阵的行数k1和列数k2。
步骤3,***水平错误探测码和垂直奇偶校验码。每一行加入水平错误探测码,每一列加入垂直奇偶效验码;
步骤4,当存储器的一个字发生多位翻转后,所述水平错误探测码和垂直奇偶校验码分别指示错误出现的行和列,当不连续多位错误的间隔小于L时,虽然所述水平错误探测码不能正确的判断出错误的个数,但是仍然可以给出一个错误信号。利用这一错误信号指示的行位置和奇偶校验码指示的列位置,不论是连续错误或不连续的错误都可以被定位,并通过翻转自身的值来进行修正。
步骤5,根据修正的信息位 修正所在的信息位,修正完毕。
本发明还提出了一种采用上述宇航用存储器二维编码加固方法的二维修正码加固存储器电路,如图6所示,其包括编码器、译码器、存储器以及MUX,
如图4所示,所述编码器通过所述各个检测位和校验位的存储的数据的计算式编写Verilog代码实现,在编码器中8组异或逻辑用于生成水平错误探测码的探测码, 16组buffer用于增强数据输入端到存储器模块的驱动能力,另外8组异或逻辑用于生成垂直奇偶校验码的校验位。
如图5所示,所述译码器通过编写Verilog代码实现,检测位D i ’和校验位C i ’分别由8组异或逻辑生成,经过判断逻辑,最后通过16组异或逻辑输出正确数据。
所述MUX具有16个数据测试端口和一个测试使能端口,通过所述MUX可以对二维修正码加固存储器电路进行修正测试,具体为:首先,在正常工作模式下对存储器写入数据;随后,测试使能端置为有效,进入测试模式,输入测试数据,对正常工作模式下存储的数据进行修改;最后,读出写入的数据,比较输出结果与正常工作模式下写入的数据是否一致。如果输出数据与写入数据一致,则表明所述二维修正码加固存储器电路有效。
所述存储器采用版图分割法进行设计,所述图分割法是考虑存储单元版图的物理顺序,在逻辑输入时避免有运算关系的数据位同冗余位过于靠近,对其进行分割摆放,如图2所示,具体为:利用信息位割水平错误探测码和垂直奇偶校验码;信息位和相应有运算关系的校验位和探测位距离需要大于L,以保证信息位和有运算关系的冗余位不会同时发生错误。
本发明与现有技术相比的有益效果是:
首先,为了避免垂直码持续更新的问题,本发明把存储器的字拆分成一个二维矩阵的形式。其次,为了降低加固方案的硬件开销,使用了低复杂度的多位错误探测和修正方法,它可以探测任意的连续错误。通过与垂直奇偶校验码相结合的方式,提出的二维修正码既可以修正连续的多位错误,又可以修正不连续的多位错误。随后,给出了存储器多位翻转的修正算法。最后,对提出的方案进行了电路和版图设计,并且提出了一种"版图分割法",利用存储单元的版图结构有效地抑制了二维修正码的冗余位中可能出现的多位翻转,进一步提高了存储器的可靠性。因此,相对于其它的多位错误纠正码,提出的存储器多位翻转加固电路明显具有更高的可靠性和更低的硬件开销。
附图说明
图1为数据宽度16位的二维修正码;
图2为存储器中出现的几种错误类型 ;
图3为 本申请的宇航用存储器二维编码加固方法流程图;
图4为二维修正码编码器电路设计;
图5为二维修正码译码器电路设计;
图6为带有测试功能的抗多位翻转存储器***;
图7为一个16位宽度字的版图结构。
具体实施方式
下面结合附图与实施例对本发明作进一步的说明。
本发明提出了一种宇航用存储器二维编码加固方法,所述加固方法引入了一种低复杂度的多位错误探测和修正方法,所述多位错误探测和修正方法可以对任意多位错误进行探测和修正。
所述多位错误探测和修正方法具体为:一次辐射事件引起的多位翻转的最大错误数为L,则存储器***中需要使用探测能力为L的垂直错误探测码。对于一个具有N位的字,水平错误探测码的探测位D i 可以通过下列探测位计算式得到:
其中,符号代表异或,i,L和K取正整数,且K的取值满足,b i 代表存储器中相应的信息位,编码过程是把信息位按照探测位计算式的关系输入到编码器中,探测能力为L的水平错误探测码需要L个探测位,每一个探测位执行相应的奇偶异或计算。
例如,对于一个L=4,N=8的存储器,水平错误探测码的探测位可以表示为, , 和。从D i 的关系中可以获知,如果1到L个连续错误发生后,只有一个探测位会受到影响。因此,通过监视探测位D i 变化的方式,可以实现对一个字中不多于L个连续的错误进行探测。在译码过程中,如果在接收到的码字中出现错误,则利用探测位D i 产生的奇偶校验计算结果,产生一个错误信号。
所述多位错误探测和修正方法只需要一级编码和译码的异或逻辑就可以实现多位错误的探测,因此具有很低的传输延迟和硬件开销。
所述加固方法步骤如下:
步骤1,读入存储器字的宽度,在逻辑连接上把一个位宽为N的字转化为一个(k1, k2)的二维矩阵形式,k1代表行数,k2代表列数。
传统的方法直接对整个存储阵列进行编码,每存取一个字的数据时,垂直校验码都需要计算整个存储阵列的数据,并且垂直校验码的冗余位数和存储器中的数据宽度相同,因此带来较大的硬件冗余。
步骤2,确定二维矩阵的行数k1和列数k2。
不同的k1和k2的取值会带来不同的冗余开销,以冗余位最少为目标,合理选择行数k1和列数k2的取值,
所述冗余位是指水平错误探测码的探测位的位数和垂直奇偶校验码的检验位的位数之和。
当存储器的一个字的位宽N=16,一次辐射事件引起的多位翻转的最大错误数L=4时,把一个16位宽的字转化为一个矩阵的形式,则相应的(k1, k2)取值为(1,16)、(4,4)、(2,8),即、或矩阵,根据所述多位错误探测和修正方法,每行具有L个探测位,而每列应当具有一个校验位,则可以得出矩阵的探测位和检验位的位数为4和16,则其冗余位为20,矩阵的探测位和检验位的位数为8和8,则其冗余位为16,矩阵的探测位和检验位的位数为16和4,则其冗余位为20,那么按照目标为冗余位最少,则选择k1=2,k2=8。
步骤3,***水平错误探测码和垂直奇偶校验码。每一行加入水平错误探测码,每一列加入垂直奇偶效验码;
根据上述步骤2确定的矩阵,***相应的检测位和校验位,其中D1,D2,D3和D4为第一行的水平错误探测码的检测位,D5,D6,D7和D8为第二行的水平错误探测码的检测位,各个检测位的存储的数据可以通过下列等式获得。
i=(1,2,3,4)
i=(5,6,7,8)
C1-C8是校验位,各个校验位的存储的数据可以通过下列等式获得。
i=(1,2,3,…,8) ;
本发明提出的二维修正码的编码器可以利用各个所述检测位和校验位的存储的数据的计算式通过异或逻辑实现。
步骤4,当存储器的一个字发生多位翻转后,所述水平错误探测码和垂直奇偶校验码分别指示错误出现的行和列,当不连续多位错误的间隔小于L时,虽然所述水平错误探测码不能正确的判断出错误的个数,但是仍然可以给出一个错误信号。利用这一错误信号指示的行位置和奇偶校验码指示的列位置,不论是连续错误或不连续的错误都可以被定位,并通过翻转自身的值来进行修正。
所述通过翻转自身的值来进行修正的具体步骤为:
步骤4.1,通过接收到的数据产生译码检测位D i ’和译码校验位C i ’;;
步骤4.2,计算水平校正子S Di 和垂直校正子S Ci :
i=(1,2,3,…,8)
i=(1,2,3,…,8)
步骤4.3,当任意一位的水平校正子S Di 有效,则表示出现错误,并通过下列等式进行修正,其中是译码信息位得出修正的信息位。
步骤5,根据修正的信息位修正所在的信息位,修正完毕。
本发明提出的二维修正码不但可以修正连续的错误,还可以修正不连续的错误。图2显示了不同类型的多位翻转,下面将分析二维修正码在不同错误类型下的纠错能力。在类型1和2中,无论错误发生在相同行或不同行,连续的错误都可以通过各自的水平错误探测码进行检测。一旦水平检测信号D i ’有效,错误就可以通过垂直的奇偶校验码进行修正。在类型3中,错误是不连续的,因而某些位的错误(b1和b5)不能被水平错误探测码辨别。但是在这种情况下,水平错误探测码会根据b3和b4的信息,声明D3’和D4’有效。因此结合垂直校验位C1’和C5’的结果,所有的错误都可以被修正。在类型4中,如果错误的间距大于L,那么这一类型的错误是无法修正。然而辐射试验的结果表明,一次辐射事件产生多位错误的间隔几乎不会超过3位。因此,类型4中出现的错误在一次辐射事件中是不会存在的,已经脱离了单次辐射事件失效的研究范围。上述错误只有在两次以上的辐射事件中才有可能出现,并且可以通过擦除技术对其进行修正。
如图3所示,所述加固方法,还可以对于存储器中通常使用的32、64和128位等数据宽度的字进行加固设计。
本发明还提出了一种采用上述宇航用存储器二维编码加固方法的二维修正码加固存储器电路,如图6所示,其包括编码器、译码器、存储器以及MUX,
如图4所示,所述编码器通过所述各个检测位和校验位的存储的数据的计算式编写Verilog代码实现,在编码器中8组异或逻辑用于生成水平错误探测码的探测码, 16组buffer用于增强数据输入端到存储器模块的驱动能力,另外8组异或逻辑用于生成垂直奇偶校验码的校验位。
如图5所示,所述译码器通过编写Verilog代码实现,检测位D i ’和校验位C i ’分别由8组异或逻辑生成,经过判断逻辑,最后通过16组异或逻辑输出正确数据。
所述MUX具有16个数据测试端口和一个测试使能端口,通过所述MUX可以对二维修正码加固存储器电路进行修正测试,具体为:首先,在正常工作模式下对存储器写入数据;随后,测试使能端置为有效,进入测试模式,输入测试数据,对正常工作模式下存储的数据进行修改;最后,读出写入的数据,比较输出结果与正常工作模式下写入的数据是否一致。如果输出数据与写入数据一致,则表明所述二维修正码加固存储器电路有效。
所述MUX的测试设置时使流片后的加固存储器***对故障具有可测性。
二维修正码可以有效地修正存储器中数据位出现的错误,但是二维修正码所引入的冗余位出现错误时,会影响修正数据的正确性,这一问题在以往的研究中是无法解决的。下面分析错误可能出现的位置,共有如下四种可能:第一,错误全部发生在水平错误探测码中;第二,错误全部发生在垂直奇偶校验码中;第三,错误同时发生在水平错误探测码(原文是多位错误码)和垂直奇偶校验码中;第四,错误发生在信息位和相应的校验位中。
所述存储器采用版图分割法进行设计,所述图分割法是考虑存储单元版图的物理顺序,在逻辑输入时避免有运算关系的数据位同冗余位过于靠近,对其进行分割摆放,如图2所示,具体为:利用信息位割水平错误探测码和垂直奇偶校验码;信息位和相应有运算关系的校验位和探测位距离需要大于L,以保证信息位和有运算关系的冗余位不会同时发生错误。
本发明的版图分割法,它充分利用了存储单元的版图布局结构,抑制冗余位上出现的错误。
所述存储器为一个数据宽度16位,字数4096,容量为64K的抗辐射加固存储器。所述二维修正码加固存储器电路及其版图的设计通过和舰(HJ)0.18μm标准单元工艺库实现。所述二维修正码加固存储器电路的功能使用ModelSim进行验证,性能参数和门级网表通过Synopsys Design Compiler获得,过Cadence SOC Encounter进行版图布局布线。
提出的二维修正电路与其他修正电路的面积,功耗和延迟参数如表1所示。以汉明码作为参考,从表1中的结果可知,二维修正电路的性能参数明显优于其他修正电路。纠错能力为4的二维修正电路的面积、延迟和功耗分别是汉明码的51%、50%和113%。从表1中可以发现,纠错能力为4的二维修正电路的延迟反而小于纠错能力为2的二维修正电路。这是因为纠错能力为4的修正电路编码逻辑深度更低,带来更小的延迟。因此,在使用本发明提出的二维修正方案后,纠错能力的增加几乎不会影响修正电路的性能,只需要增加相应的冗余位即可。
表1:修正电路的面积、功耗延迟参数列表
综上所述,本发明提出了一种有效的二维修正电路,它以较低的硬件开销达到抑制存储器多位翻转的目的。提出的二维修正方案可以修正任意给定宽度的错误,同时结合提出的版图分割法,可以确保存储器获得较高的可靠性。可靠性和性能分析的结果表明,本发明的抗辐射存储器可以很好的满足高能空间辐射环境下的应用要求,修正电路的性能优于目前已知的多位错误纠正码电路。
以上所述实施方式仅表达了本发明的实施方式,但并不能因此而理解为对本发明范围的限制。应当指出,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (10)
1.一种宇航用存储器二维编码加固方法,其特征在于:所述加固方法引入了一种低复杂度的多位错误探测和修正方法,所述多位错误探测和修正方法可以对任意多位错误进行探测和修正,所述加固方法步骤如下:
步骤1,读入存储器字的宽度,在逻辑连接上把一个位宽为N的字转化为一个(k1, k2)的二维矩阵形式,k1代表行数,k2代表列数;
步骤2,确定二维矩阵的行数k1和列数k2,
不同的k1和k2的取值会带来不同的冗余开销,以冗余位最少为目标,合理选择行数k1和列数k2的取值,
所述冗余位是指水平错误探测码的探测位的位数和垂直奇偶校验码的检验位的位数之和;
步骤3,***水平错误探测码和垂直奇偶校验码,每一行加入水平错误探测码,每一列加入垂直奇偶效验码;
步骤4,当存储器的一个字发生多位翻转后,所述水平错误探测码和垂直奇偶校验码分别指示错误出现的行和列,当不连续多位错误的间隔小于L时,虽然所述水平错误探测码不能正确的判断出错误的个数,但是仍然可以给出一个错误信号,利用这一错误信号指示的行位置和奇偶校验码指示的列位置,不论是连续错误或不连续的错误都可以被定位,并通过翻转自身的值来进行修正;
步骤5,根据修正的信息位 修正所在的信息位,修正完毕。
2.根据权利要求1所述的一种宇航用存储器二维编码加固方法,其特征在于:所述多位错误探测和修正方法具体为,一次辐射事件引起的多位翻转的最大错误数为L,则存储器***中需要使用探测能力为L的垂直错误探测码,对于一个具有N位的字,水平错误探测码的探测位D i 可以通过下列探测位计算式得到:
,
其中,符号代表异或,i,L和K取正整数,且K的取值满足,b i 代表存储器中相应的信息位,编码过程是把信息位按照探测位计算式的关系输入到编码器中,探测能力为L的水平错误探测码需要L个探测位,每一个探测位执行相应的奇偶异或计算;
所述多位错误探测和修正方法只需要一级编码和译码的异或逻辑就可以实现多位错误的探测,具有很低的传输延迟和硬件开销。
3.根据权利要求2所述的一种宇航用存储器二维编码加固方法,其特征在于:所述步骤2 中,
当存储器的一个字的位宽N=16,一次辐射事件引起的多位翻转的最大错误数L=4时,把一个16位宽的字转化为一个矩阵的形式,则相应的(k1, k2)取值为(1,16)、(4,4)、(2,8),即、或矩阵,根据所述多位错误探测和修正方法,每行具有L个探测位,而每列应当具有一个校验位,则可以得出矩阵的探测位和检验位的位数为4和16,则其冗余位为20,矩阵的探测位和检验位的位数为8和8,则其冗余位为16,矩阵的探测位和检验位的位数为16和4,则其冗余位为20,那么按照目标为冗余位最少,则选择k1=2,k2=8。
4.根据权利要求3所述的一种宇航用存储器二维编码加固方法,其特征在于:所述步骤3 中,
根据所述步骤2确定的矩阵,***相应的检测位和校验位,其中D1,D2,D3和D4为第一行的水平错误探测码的检测位,D5,D6,D7和D8为第二行的水平错误探测码的检测位,各个检测位的存储的数据可以通过下列等式获得:
,i=(1,2,3,4),
,i=(5,6,7,8) ,
C1-C8是校验位,各个校验位的存储的数据可以通过下列等式获得:
i=(1,2,3,…,8)。
5.根据权利要求4所述的一种宇航用存储器二维编码加固方法,其特征在于:所述步骤4中,所述通过翻转自身的值来进行修正的具体步骤为:
步骤4.1,通过接收到的数据产生译码检测位D i ’和译码校验位C i ’;
步骤4.2,计算水平校正子S Di 和垂直校正子S Ci :
, i=(1,2,3,…,8),
,i=(1,2,3,…,8) ;
步骤4.3,当任意一位的水平校正子S Di 有效,则表示出现错误,并通过下列等式进行修正,其中是译码信息位得出修正的信息位:
。
6.根据权利要求1-5任意一项所述的一种宇航用存储器二维编码加固方法,其特征在于:所述二维编码加固方法,还可以对于存储器中通常使用的32、64和128位等数据宽度的字进行加固设计。
7.一种采用上述权利要求1-6任意一项所述的一种宇航用存储器二维编码加固方法的二维修正码加固存储器电路,其特征在于:其包括编码器、译码器、存储器以及MUX,
所述编码器通过所述各个检测位和校验位的存储的数据的计算式编写Verilog代码实现,在编码器中8组异或逻辑用于生成水平错误探测码的探测码, 16组buffer用于增强数据输入端到存储器模块的驱动能力,另外8组异或逻辑用于生成垂直奇偶校验码的校验位;
所述译码器通过编写Verilog代码实现,检测位D i ’和校验位C i ’分别由8组异或逻辑生成,经过判断逻辑,最后通过16组异或逻辑输出正确数据;
所述MUX具有16个数据测试端口和一个测试使能端口,通过所述MUX可以对二维修正码加固存储器电路进行修正测试,所述MUX的测试设置时使流片后的加固存储器***对故障具有可测性;
所述存储器采用版图分割法进行设计,所述图分割法是考虑存储单元版图的物理顺序,在逻辑输入时避免有运算关系的数据位同冗余位过于靠近,对其进行分割摆放。
8.根据权利要求7所述的一种二维修正码加固存储器电,其特征在于,所述MUX的修正测试过程具体为:
首先,在正常工作模式下对存储器写入数据;
随后,测试使能端置为有效,进入测试模式,输入测试数据,对正常工作模式下存储的数据进行修改;
最后,读出写入的数据,比较输出结果与正常工作模式下写入的数据是否一致;
如果输出数据与写入数据一致,则表明所述二维修正码加固存储器电路有效。
9.根据权利要求7所述的一种二维修正码加固存储器电,其特征在于:
所述版图分割法具体为:利用信息位割水平错误探测码和垂直奇偶校验码;信息位和相应有运算关系的校验位和探测位距离需要大于L,以保证信息位和有运算关系的冗余位不会同时发生错误。
10.根据权利要求7所述的一种二维修正码加固存储器电,其特征在于,所述存储器为一个数据宽度16位,字数4096,容量为64K的抗辐射加固存储器;所述二维修正码加固存储器电路及其版图的设计通过和舰(HJ)0.18μm标准单元工艺库实现;所述二维修正码加固存储器电路的功能使用ModelSim进行验证,性能参数和门级网表通过Synopsys Design Compiler获得,过Cadence SOC Encounter进行版图布局布线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410484659.9A CN104409103A (zh) | 2014-09-22 | 2014-09-22 | 一种新颖的宇航用存储器二维编码加固方法及电路装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410484659.9A CN104409103A (zh) | 2014-09-22 | 2014-09-22 | 一种新颖的宇航用存储器二维编码加固方法及电路装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104409103A true CN104409103A (zh) | 2015-03-11 |
Family
ID=52646723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410484659.9A Pending CN104409103A (zh) | 2014-09-22 | 2014-09-22 | 一种新颖的宇航用存储器二维编码加固方法及电路装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104409103A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104796157A (zh) * | 2015-04-24 | 2015-07-22 | 哈尔滨工业大学 | 存储器抗多位翻转分块矩阵码加固方法 |
CN104851467A (zh) * | 2015-05-20 | 2015-08-19 | 中国空间技术研究院 | 一种宇航用带edac功能sram存储器功能验证方法 |
CN104932984A (zh) * | 2015-05-12 | 2015-09-23 | 工业和信息化部电子第五研究所 | 多位翻转检测方法和*** |
CN106169312A (zh) * | 2015-05-18 | 2016-11-30 | 爱思开海力士有限公司 | 用于快闪存储的广义乘积码 |
CN107680629A (zh) * | 2017-10-30 | 2018-02-09 | 中北大学 | 一种基于拉丁方矩阵构造的低冗余矩阵码对存储器进行加固方法 |
CN107845404A (zh) * | 2017-10-30 | 2018-03-27 | 中北大学 | 一种新型低冗余二维矩阵码对存储器进行加固方法 |
CN110931074A (zh) * | 2019-11-25 | 2020-03-27 | 北京时代民芯科技有限公司 | 一种用于抗单粒子翻转存储器的可选位宽纠检错电路 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252606A (zh) * | 2008-03-21 | 2008-08-27 | 哈尔滨工业大学深圳研究生院 | 深空通信中基于低密度奇偶校验码-喷泉码的编译方法 |
CN101833535A (zh) * | 2010-04-29 | 2010-09-15 | 哈尔滨工业大学 | 一种用于可重构星载计算机的具有抗辐射功能的有限状态机 |
CN103093809A (zh) * | 2013-01-09 | 2013-05-08 | 中国科学院微电子研究所 | 一种抗单粒子翻转的静态随机存储单元 |
-
2014
- 2014-09-22 CN CN201410484659.9A patent/CN104409103A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252606A (zh) * | 2008-03-21 | 2008-08-27 | 哈尔滨工业大学深圳研究生院 | 深空通信中基于低密度奇偶校验码-喷泉码的编译方法 |
CN101833535A (zh) * | 2010-04-29 | 2010-09-15 | 哈尔滨工业大学 | 一种用于可重构星载计算机的具有抗辐射功能的有限状态机 |
CN103093809A (zh) * | 2013-01-09 | 2013-05-08 | 中国科学院微电子研究所 | 一种抗单粒子翻转的静态随机存储单元 |
Non-Patent Citations (1)
Title |
---|
肖立伊 等: "一种新颖的二维纠错码加固存储器设计方法", 《宇航学报》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104796157A (zh) * | 2015-04-24 | 2015-07-22 | 哈尔滨工业大学 | 存储器抗多位翻转分块矩阵码加固方法 |
CN104932984A (zh) * | 2015-05-12 | 2015-09-23 | 工业和信息化部电子第五研究所 | 多位翻转检测方法和*** |
CN106169312A (zh) * | 2015-05-18 | 2016-11-30 | 爱思开海力士有限公司 | 用于快闪存储的广义乘积码 |
CN104851467A (zh) * | 2015-05-20 | 2015-08-19 | 中国空间技术研究院 | 一种宇航用带edac功能sram存储器功能验证方法 |
CN104851467B (zh) * | 2015-05-20 | 2017-12-22 | 中国空间技术研究院 | 一种宇航用带edac功能sram存储器功能验证方法 |
CN107680629A (zh) * | 2017-10-30 | 2018-02-09 | 中北大学 | 一种基于拉丁方矩阵构造的低冗余矩阵码对存储器进行加固方法 |
CN107845404A (zh) * | 2017-10-30 | 2018-03-27 | 中北大学 | 一种新型低冗余二维矩阵码对存储器进行加固方法 |
CN107680629B (zh) * | 2017-10-30 | 2020-08-25 | 中北大学 | 一种基于拉丁方矩阵构造的低冗余矩阵码对存储器进行加固方法 |
CN110931074A (zh) * | 2019-11-25 | 2020-03-27 | 北京时代民芯科技有限公司 | 一种用于抗单粒子翻转存储器的可选位宽纠检错电路 |
CN110931074B (zh) * | 2019-11-25 | 2021-09-28 | 北京时代民芯科技有限公司 | 一种用于抗单粒子翻转存储器的可选位宽纠检错电路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104409103A (zh) | 一种新颖的宇航用存储器二维编码加固方法及电路装置 | |
Argyrides et al. | Matrix codes for reliable and cost efficient memory chips | |
US7328377B1 (en) | Error correction for programmable logic integrated circuits | |
US7353438B2 (en) | Transparent error correcting memory | |
US9800271B2 (en) | Error correction and decoding | |
Ebrahimi et al. | Low-cost multiple bit upset correction in SRAM-based FPGA configuration frames | |
Rossi et al. | Error correcting code analysis for cache memory high reliability and performance | |
US20130262957A1 (en) | Method Of Correcting Adjacent Errors By Using BCH-Based Error Correction Coding | |
Sun et al. | Exploiting intracell bit-error characteristics to improve min-sum LDPC decoding for MLC NAND flash-based storage in mobile device | |
TWI808153B (zh) | 錯誤偵測及校正電路 | |
Cha et al. | Efficient implementation of single error correction and double error detection code with check bit pre-computation for memories | |
Zhu et al. | Efficient two-dimensional error codes for multiple bit upsets mitigation in memory | |
Liu et al. | Low redundancy matrix-based codes for adjacent error correction with parity sharing | |
Samanta et al. | Compact and power efficient SEC-DED codec for computer memory | |
US9891976B2 (en) | Error detection circuitry for use with memory | |
Chen et al. | Generalization of an enhanced ECC methodology for low power PSRAM | |
Pflanz et al. | On-line error detection and correction in storage elements with cross-parity check | |
Das et al. | A new class of single burst error correcting codes with parallel decoding | |
Athira et al. | FPGA implementation of an area efficient matrix code with encoder reuse method | |
Neelima et al. | Efficient adjacent 3D parity error detection and correction codes for embedded memories | |
Esmaeeli et al. | A multi-bit error tolerant register file for a high reliable embedded processor | |
Asuvaran et al. | Low delay error correction codes to correct stuck-at defects and soft errors | |
Sazeides et al. | A real-time error detection (rtd) architecture and its use for reliability and post-silicon validation for f/f based memory arrays | |
Ebrahimi et al. | Stepped parity: A low-cost multiple bit upset detection technique | |
Liu et al. | Fault secure encoder and decoder designs for matrix codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150311 |
|
RJ01 | Rejection of invention patent application after publication |