CN1716443B - 半导体存储装置及其误码修正方法 - Google Patents

半导体存储装置及其误码修正方法 Download PDF

Info

Publication number
CN1716443B
CN1716443B CN200510078607.2A CN200510078607A CN1716443B CN 1716443 B CN1716443 B CN 1716443B CN 200510078607 A CN200510078607 A CN 200510078607A CN 1716443 B CN1716443 B CN 1716443B
Authority
CN
China
Prior art keywords
mentioned
error code
correction
control
coding
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.)
Expired - Fee Related
Application number
CN200510078607.2A
Other languages
English (en)
Other versions
CN1716443A (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.)
Micron Memory Japan Ltd
Original Assignee
Elpida Memory Inc
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 Elpida Memory Inc filed Critical Elpida Memory Inc
Publication of CN1716443A publication Critical patent/CN1716443A/zh
Application granted granted Critical
Publication of CN1716443B publication Critical patent/CN1716443B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Error Detection And Correction (AREA)

Abstract

一种半导体存储装置,其具备:具有数据区域和检验码区域的存储器阵列;在数据保持状态中,控制刷新动作的刷新控制机构;将数据区域规定位列作为处理单元,进行编码运算生成检验码,并使用检验码进行译码运算,对数据进行误码检测修正的运算机构;作为转移到数据保持状态时的编码处理,控制对存储器阵列相互垂直的第1方向和第2方向,根据第1方向位列生成第1编码,根据第2方向位列生成的第2编码,分别可以区别地写入检验码区域的编码控制机构;作为结束数据保持状态时的译码处理,第1编码的第1位误码修正,第2编码的第2位误码修正,在运算机构交替执行,至少分别执行第1位误码修正和第2位误码修正2次以上的译码控制机构。

Description

半导体存储装置及其误码修正方法
技术领域
本发明是涉及DRAM(Dynamic Random Access Memory)等半导体存储装置,特别是,涉及对存储区域的行方向和列方向分别生成、存储检验码,并使用检验码进行误码检测修正而构成的半导体存储装置及其误码修正方法。
背景技术
以往,为了实现在DRAM数据保持状态中的更进一步的低电能消耗,力求以比通常动作时更长的周期控制刷新动作。因此,在DRAM中装载由ECC电路等实现的误码修正功能,通过刷新动作长周期化,可以修正增加的位误码的结构被提出。例如,特开2002-56671号公报所公开的半导体集成电路装置是典型的结构。
特开2002-56671号公报所公开的半导体集成电路装置,具有保持误码检测修正用检验位的机构,由多个数据生成检验位的机构和使用检验位修正错误位的机构,具备在转换为数据保持状态时生成并存储检验位的结构。通过这样的构成,可以使刷新动作长周期化,能够力图实现数据保持状态中低电能消耗化。
但是,通过上述以往的构成,位误码增加超过容许范围时,误码修正成为困难的错误模式的情况也不少。例如,通过在DRAM中采用的通常的误码修正电路,能够修正行方向或者列方向位列中只发生一位错误的情况,但是,不能修正在行方向或者列方向中发生2位以上错误的情况。一方面,对于误码修正电路而言,可以在位列中存在2位以上错误的情况,采用可以修正的误码修正电路的结构。但是,这样的误码修正电路增大了电路规模,导致成本上升。因此,在上述以往的结构中,存在必须将错误发生率抑制在可以修正的范围内,必须限制刷新周期,妨碍低电能消耗化的问题。
发明内容
本发明的目的在于,提供在安装了通常的误码修正电路的DRAM中,增大位误码增加时的容许范围,实现刷新周期长期化,可以力图实现低电能消耗化的半导体存储装置等。
本发明的半导体存储装置具备:具有存储数据的数据区域和存储上述数据误码检测修正用的检验码的检验码区域的存储器阵列;在数据保持状态中,控制对上述存储器阵列的规定周期的刷新动作的刷新控制机构;将上述数据区域的规定的位列作为处理单元,进行编码运算,生成上述检验码的同时,进行使用上述检验码进行译码运算,对上述数据进行误码检测修正的运算机构;编码控制机构,其作为过渡到上述数据保持状态时的编码处理,进行控制,对于上述存储器阵列相互垂直的第1方向和第2方向,将基于上述第1方向的位列由上述运算机构生成的第1编码和基于上述第2方向的位列由上述运算机构生成的第2编码,分别写入上述检验码区域的第1编码区域和第2编码区域;译码控制机构,作为在结束上述数据保持状态时的译码处理进行以下控制:在上述运算机构中,将基于针对上述第1方向的上述第1编码的第1位误码修正与基于针对上述第2方向的上述第2编码的第2位误码修正,交替地分别执行2次以上。
通过如上所述构成的本发明的半导体存储装置,在转移到伴随着刷新动作的数据保持状态时,执行编码处理,同时,在结束数据保持状态时执行译码处理。并且,在编码处理中,以方向相互垂直的位列作为编码运算单元,在译码处理中,对垂直的2方向而言,由于交替进行误码修正,即使是可以修正只有1位的编码算法,通过增加运算次数也能逐步修正位误码。因此,由于不采用复杂的编码算法就能降低位误码,能加长刷新周期,从而能够力图降低半导体存储装置消费的电能。
在本发明的半导体存储装置中,上述运算机构也可以分别输出表示在作为上述译码运算对象的位列中发生1位以上误码的第1信号,表示在上述位列中只发生1位误码的位位置的第2信号。
在本发明的半导体存储装置中,上述译码控制机构在进行上述第2位误码修正时,在由上述运算机构输出上述第1信号,同时不输出上述第2信号的情况下,可以判定译码对象的位列中存在不能修正的位误码。另外,上述译码控制机构判定上述译码对象的位列中存在不能修正的位误码时,保持该位列的位置信息,可以控制在后续的上述第2位误码修正时只对上述保持的位置信息的位列进行上述第2位误码修正。另外,上述译码控制机构对于上述第1位误码修正和上述第2位误码修正,可以控制分别重复执行事先设定的次数。
在本发明的半导体装置中,也可以将上述第1方向作为上述存储器阵列的行方向,将上述第2方向作为上述存储器阵列的列方向。
在本发明的半导体装置中,还具备在控制通常时动作的通常动作模式和为了降低上述数据保持状态时的电能消耗动作的低电能消耗模式的动作之间进行转换控制的控制机构,上述刷新控制机构也可以控制上述低电能消耗模式中长周期的刷新动作。
本发明的半导体存储装置的误码修正方法是具有由存储数据的数据区域和存储上述数据误码检测修正用检验码的检验码区域构成的存储区域的半导体存储装置的误码修正方法,包括将上述数据规定的位列作为处理单元进行编码运算,生成上述检验码,并使用上述检验码进行译码运算,进行上述数据误码检测修正的运算步骤;对上述存储区域相互垂直的第1方向和第2方向,将根据上述第1方向位列由运算机构生成的第1编码,和根据上述第2方向位列由上述运算机构生成的第2编码,分别写入上述检验码区域的第1编码区域和第2编码区域,进行编码处理的步骤;使得基于对上述第1方向的上述第1编码的第1位误码修正和基于对上述第2方向的上述第2编码的第2位误码修正,在上述运算机构中交替地分别执行2次以上,而进行译码处理的步骤。
在本发明半导体存储装置的误码修正方法中,在上述译码对象的位列中存在不能修正的位误码时,可以保持该位列的位置信息,在后续的上述第2位误码修正时只对上述保持的位置信息的位列进行上述第2位误码修正。
在本发明的半导体存储装置的误码修正方法中,上述第1位误码修正和上述第2位误码修正可以分别重复执行事先设定的次数。
如上所述,通过本发明,在编码处理时,对存储器阵列2个方向生成第1编码和第2编码,在译码处理时,由于交替进行使用第1编码和第2编码的误码修正,通过采用通常的误码修正功能进行处理过程的方法,扩大增加误码时的容许范围,实现刷新周期的更长期化,可以力图实现半导体存储装置的低电能消耗化。
附图说明:
图1是表示本实施方式的DRAM整体结构的框图。
图2是表示存储器阵列的组结构和片结构的图。
图3是表示在本实施方式的DRAM中使用的主要存储控制指令的种类的图。
图4是表示在DRAM中的多个动作状态的关系和功能的状态转变图。
图5是对应图4状态转变图的概要时序图。
图6是表示控制电路的ECC控制部的结构的框图。
图7是表示在编码处理中生成的检验码的结构的图。
图8是表示编码译码器的电路结构的一个例子的图。
图9是对具备图8结构的编码译码器中的运算处理具体例子进行说明的图。
图10是表示用于编码译码器的动作控制的编码译码器控制指令种类的图。
图11是表示在编码处理中,基于第1编码体系的控制流程图。
图12是表示在编码处理中,基于第2编码体系的控制流程图。
图13A是表示在数据区域中,关于Y=N,Y1=N的任意一行,对应图11的控制流程的时间流程图。
图13B是表示在数据区域中,关于Y=N,Y1=N的任意一行,对应图12的控制流程的时间流程图。
图14是表示译码处理的概要控制流程图。
图15是表示对应图14译码顺序SQ1A的详细的控制流程图。
图16是表示在图15的步骤S115中执行的误码修正的控制流程图。
图17是表示对应图14译码顺序SQ1B的详细的控制流程图。
图18是表在示图17的步骤S165中执行的误码修正控制流程图。
图19是表示图14译码顺序SQ6的详细的控制流程图。
图20是表示对应图15控制流程的时间流程图。
图21是表示对应图17控制流程的时间流程图。
图22是表示只要控制译码处理的译码控制部的结构的框图。
图23A是用于说明本实施方式误码修正方法具体例子中第1状态的图。
图23B是用于说明本实施方式误码修正方法具体例子中第2状态的图。
图23C是用于说明本实施方式误码修正方法具体例子中第3状态的图。
图23D是用于说明本实施方式误码修正方法具体例子中第4状态的图。
具体实施方式
以下,参照附图,对本发明的最佳实施方式进行说明。在本实施方式中,为了实现低电能消耗化,内置了发挥误码修正功能的电路,控制长周期的刷新动作而构成的DRAM,对适用了本发明的情况进行说明。
图1是表示本实施方式的DRAM整体结构的框图。其中,举例说明了由4组构成的,存储容量64M位的DRAM。如图1所示的DRAM具备对应4个组0~组3的4个存储器阵列10,设置在每个存储器阵列10周围的行译码器11,字驱动器12,读写放大器13,I/O栅极14,列译码器15,编码译码器16,还具备控制电路20,I/O缓存器21。
在以上结构中,每个存储器阵列10都具备在行方向和列方向矩阵配置,存储数据的数据区域和存储对应数据区域的检验位列(检验码)的检验码区域。并且,根据检验码进行误码修正功能在后面进行叙述。并且,对应4个组0~3的4个存储器阵列10中任意一个都具有同一的结构,其周围的行译码器11,字驱动器12,读写放大器13,I/O栅极14,列译码器15,编码译码器16,以及4个组0~3都是同样的结构。
对于存储器阵列10,根据指令动作的存储控制指令指定应该访问的要求的行地址和列地址。行译码器11选择对应指定的行地址的1根字线(图中没有表示)。并且,字驱动器11驱动由行译码器11所选择的字线为选择电平。
另一方面,读写放大器13使驱动为选择电平的字线和从与其连接的存储器阵列10读出的数据对应,放大在辅助数据线上产生的电位差,输出到I/O栅极14。列译码器15,如上所述,选择与指定的列地址相对应的列,I/O栅极14的数据中被选择的行数据被送到I/O缓存器21。I/O缓存器21在对存储器阵列10进行访问时,在外部和I/O栅极14之间,发挥进行输入或者输出16位数据D<0:15>的缓存器的功能。
其中,如图2所示,对应4个组0~3的存储器阵列10分别由16个片100构成。也就是说,在图2深度方向上,重叠那样表示,由16个片从100(0)到100(15)构成。而且,在访问规定的存储器阵列10时,对16个片100(0)~100(15)同时进行读出或者写入。每个片100由1024×1024位构成的数据区域和32×1024位构成的检验码区域构成。该检验码区域存储作为误码修正符号的检验码,作为和数据区域不同的地址空间进行识别。
并且,存储在检验码区域的检验码由编码译码器16生成以及进行使用其的误码修正,具体的动作在后面进行叙述。
在图2的结构中,由于4个组0~3任意一个都具备共通的结构,关于数据区域,各组具有1M×16=16M位的存储容量,整个DRAM具有16M位×4=64M位的存储容量。并且,图2中4个组0~3根据2位的组选择信号,可以选择任意一个。
下面,返回图1,控制电路20控制本实施方式DRAM的各种动作,控制图1各构成要素中的内部定时。该控制电路20含有判断对DRAM的存储控制指令的指令控制部31,进行切换DRAM动作状态控制的状态控制部32,对存储器阵列10控制使用上述检验码的误码修正功能ECC(ErrorCorrecting Code)控制部33。
作为来自外部的控制信号,对控制电路20供给行地址选通信号(/RAS),列地址选通信号(/CAS),写使能信号(/WE),时钟使能信号CKE,时钟信号CLK(并且,符号/表示低电平时信号有效)。另外,对控制电路20输入10位的地址信号A<0:9>和2位的组选择信号B<0:1>。
控制电路20的指令控制部31判别由从外部输入的控制信号组合模式决定的存储控制指令,输出必要的控制信号。图3是表示本实施方式DRAM中使用的主要的存储控制指令的种类的图。并且,在如图3所示的控制指令中,登录指令和退出指令由后述状态控制部32判別。
ACT指令由组选择信号选择指定的规定组,并且,根据地址信号选择规定的行地址达到激活状态。RD指令在选择的行地址中,根据地址信号选择规定列地址,读出存储在存储器阵列10中的数据。WT指令在选择的行地址中,根据地址信号选择规定的列地址,对存储单元10写入数据。REF指令是为了保持存储单元10电容器中蓄积的电荷而执行的刷新动作。PRE指令是在读出选择的行地址的数据后,对选择的组进行预充电。
下面,控制电路20的状态控制部32在本实施方式中设置的2个模式之间切换之前,根据图3的控制信号组合模式判别上述登录指令和退出指令。也就是说,在本实施方式中设置了控制通常时动作的通常动作模式和控制为了降低DRAM数据保持状态中电能消耗的动作的低电能消耗模式2种模式。如图3所示,登录指令将通常动作模式中动作的DRAM的动作状态转换为低电能消耗模式,退出指令将在低电能消耗模式中动作的DRAM的动作状态转换到通常动作模式。该低电能消耗模式对本实施方式的DRAM能够一边进行误码修正,一边进行长周期的刷新动作,实现低电能消耗。
其中,使用图4和图5对上述DRAM中的动作状态进行说明。图4是说明DRAM多个动作状态关系和功能的图,图5是与图4状态转换图相对应的概要时间流向图。在图4中,DRAM的动作状态分为通常动作模式和低电能消耗模式2种,在低电能消耗模式中包含编码码处理,电源关闭状态,突发刷新处理,译码处理4个状态(处理)。
在通常动作模式时,一输入上述登录指令就转换到低电能消耗模式中的编码处理。此时,如图5所示,在通常动作模式中,根据图3的登录指令的组合模式,改变控制信号,由其定时切换到低电能消耗模式。在图5的例子中,最初进行编码处理(Enc)后,交替重复电源关闭状态(Poff)和突发刷新(Bref),最后进行译码处理(Dec)。另外,详细的省略了,突发刷新(Bref)和译码处理(Dec)是在电源接通之后进行的。
编码处理根据存储器阵列10中各行的位列的行方向的检验码(第1编码)和各列的位列,执行生成列方向检验码(第2编码)的编码运算,写入检验码区域。由编码处理生成检验码一结束,就转换到电源关闭状态,供给DRAM各部的電源中不需要的電源全部停止。并且,在经过规定时间后,转换为突发刷新处理。
在该突发刷新处理中,对存储单元10的全部数据区域和检验码区域进行连续的刷新动作。在进行刷新动作时,刷新计数器(图中没有表示)产生存储单元10行地址,并依次累计计数。
接着突发刷新处理,再次转换到电源关闭状态,在经过规定时间后,再次转换到突发刷新处理。并且,此后突发刷新处理和电源关闭状态交替重复。此时,在低电能消耗模式中,事先设定相邻的突发刷新处理的间隔(周期),例如,1秒左右设定为长周期。
另一方面,在电源关闭状态或者突发刷新处理时,一输入上述退出指令就转换到译码处理。此时,根据图3的退出指令的组合模式改变控制信号,由在定时内开始译码处理。该译码处理根据编码处理生成的检验码,执行使用存储器阵列10的数据和检验码的译码运算,修正存储单元10的行方向或者列方向上产生的1位的错误。
译码处理一结束,就自动转换到通常动作模式,再次输入登录指令之前,持续通常动作模式。并且,持续低电能消耗模式的时间能够设定为适应DRAM控制的任意时间。在低电能消耗模式中,相对而言,由于电源关闭状态的时间比突发刷新处理需要的时间长,与通常动作模式相比能大幅度降低电能消耗。
下面,图6是表示控制电路20的ECC控制部33的结构的框图。如图6所示,控制电路20包含:整体控制在低电能消耗模式中的动作的低电能消耗模式控制部41,控制编码处理的编码控制部42,控制译码处理的译码控制部43,控制突发刷新处理的BREF控制部44,控制突发刷新处理周期的BREF周期控制部45,和选择性的切换应该向外部输出的信号的多路转换器46,47。
从上述状态控制部32输入登录指令和退出指令的判別信号到低电能消耗模式控制部41中,根据这些每个指令,进行控制。低电能消耗模式控制部41对编码控制部42,译码控制部43,BREF控制部43,在其控制开始定时时,分别供给信号enc_start,dec_start,bref_start,控制结束定时时,由各自接受输出的信号enc_end,dec_end,bef_end。另外,在结束低电能消耗模式时,信号end_of_exit输出到外部。
编码控制部42在执行编码处理时由各存储单元10附带的编码译码器16控制编码运算。另外,译码控制部43在执行译码处理时,由上述编码译码器16控制译码运算。另一方面,BREF控制部44在控制突发刷新处理时,控制各存储单元10的动作。此时,在突发刷新处理中,由事先设定的周期作为计时的BREF周期控制部45进行控制。
分别从编码控制部42,译码控制部43,BREF控制部43输出的控制信号输入到2个多路转换器46,47。控制存储单元10动作的信号被输入到多路转换器46中,选择地切换它们,作为存储控制信号输出。控制编码译码器16动作的信号被输入到多路转换器47中,选择地切换它们,作为编码译码器控制信号输出。
下面,图7是表示在编码处理中生成的检验码的结构的图。在图7中,表示构成存储器阵列10的一个片100。在片100的数据区域中,由(X,Y)指定位位置,构成X,Y任意一个在0~1023的范围内变化的1024×1024位的矩阵状。另外,片100的检验码被划分为分割X方向的1024位作为处理单元的第1编码体系,分割Y方向的1024位作为处理单元的第2编码体系表示。
根据第1编码体系生成的检验码(第1编码)被写入第1编码区域。另一方面,根据第2编码体系生成的检验码(第2编码)被写入第2编码区域。这些第1编码区域和第2编码区域,如图7所示,对于任意一个片100具有16×1024位的存储容量,将其两者合在一起,构成32×1024位的检验码区域。但是,尽量保持上述第1编码和第2编码可以区别两者,在检验码区域的配置是自由的。
并且,数据区域用(X,Y)表示位位置,但是,为了区别它,第1编码区域用(X1,Y1)表示位位置,第2编码区域用(X2,Y2)表示位位置。
如图7所示,在片100的数据区域,沿X方向定义第1逻辑单元B1。该第1逻辑单元B1由通过第1编码体系分割的1024位的位列构成,成为相对于片100的数据区域的X方向的编码处理单元。在图7中,表示在Y=0位置的1个第1逻辑单元B1,但是,实际上,根据编码处理,依次设定从Y=0到Y=1023的1024个第1逻辑单元B1。并且,对于Y=n位置的第1逻辑单元B1生成的检验码被写入第1编码区域中Y1=n位置的16位(X1=0~15)中。
另外,如图7所示,对片100数据区域,沿Y方向定义第2逻辑单元B2。该第2逻辑单元B2是由通过第2编码体系分割的1024位构成,成为相对于片100数据区域的Y方向的编码处理单元。在图7中,表示X=0位置的1个第2逻辑单元B2,但是,实际上,根据编码处理,依次设定从X=O到X=1023的1024个第2逻辑单元B2。此时,X=n位置的对第2逻辑单元B2生成的检验码被写入第2编码区域中X2=n位置的16位(Y2=0~15)中。
接着,对起本发明运算机构发挥作用的编码译码器16(图1)的结构和动作进行说明。图8是表示编码译码器16电路构成的一个例子的图。在图8中,表示根据循环汉明码运算生成多项式G(X)=X16+X12+X5+1的编码译码器16的例子。在编码译码器16中,包含16段移位寄存器和周边的逻辑电路。16段移位寄存器附带正向·反向功能,一输入正向用时钟fwd_clk,就从图8右侧向左侧(正方向)依次传送数据,一输入逆向用时钟bwd_clk,就从图8左向右(逆方向)依次传送数据。
其中,在具备图8结构的编码译码器16中运算处理的具体例子用图9来说明。图9的上段表示在编码译码器16的编码处理中,检验码生成的具体例子。在生成检验码时,1024位的数据被一位一位地写入移位寄存器。移位寄存器正方向移位,全部位写入结束时,在16段的移位寄存器中生成检验码。在图9编码处理的例子中,表示开头是1,其后输入全部是0的数据时的检验码。并且,这样,生成的检验码在上述存储器阵列10的检验码区域中,根据第1编码体系或者第2编码体系写入规定位置。
另外,图9中段表示编码译码器16的译码处理中没有位误码情况的具体例子。在此时的译码处理时,1024位和检验码的16位共计1040位每次1位的写入移位寄存器。移位寄存器正方向移位,写入结束时,16段移位寄存器全部变为零。此时,从编码译码器16输出的错误(error)信号变为0。
另外,图9下段表示在编码译码器16译码处理中产生位误码情况的具体例子。在此时的译码处理时,和没有位误码的情况一样,数据和检验码共计1040位1位1位地写入移位寄存器。此时,在写入结束时,16段的移位寄存器不仅包含零,还有变为1的位。此时,从编码译码器16输出的错误信号变为1。而且,产生1位的位误码的情况下,通过将编码译码器16的移位寄存器转变为逆方向,在有错误位的位置,位置(location)信号变为1。
图9右下表示反向编码译码16时输出模式变化的一个例子。在对应位位置1023的移位寄存器输出产生变为1的位,判断在位1023存在错误。但是,只能检测1024位中存在1位错误的情况下,存在2位以上错误时,移位寄存器即使转换到逆方向,也不能检测到错误位的位置。
接着,对用于编码译码器16的动作控制的编码译码器控制指令进行说明。图10是表示编码译码器控制指令种类的图。这些编码译码器控制指令由编码译码器16输入的控制信号组合模式决定,主要从ECC控制部33的编码控制部42和译码控制部43输出到编码译码器16。
在图10中,GEN_CODE指令是将从数据区域读出的位作为编码运算的对象,输入到编码译码器16的指令。WT_CODE指令是将由编码译码器16生成的检验码,每次1位地传送到存储单元10的指令。REVERSE指令是将反向用时钟bwd_clk作为1,开始转换到编码译码器16的移位寄存器的逆方向的指令。CORRECT指令是在编码译码器16中翻转产生错误的位,修正错误,并输出的指令。
以下,对本实施方式DRAM中编码处理和译码处理的具体控制步骤进行说明。首先,对编码处理的控制步骤进行说明。该编码处理是主要由编码控制部42(图6)控制的处理。图11和图12是表示编码处理的控制流程图,图13A是表示对应图11和图12控制流程的时间流程图的图。
图11是表示在编码处理中,根据第1编码体系进行处理的控制流程。图11所示的控制一开始,最初,将数据区域列地址Y和第1编码区域列地址Y1分别设置为0(步骤S11)。接着,将数据区域行地址X设置为0(步骤S12)。并且,在本实施方式中,由于假定1024×1024位的片100,如后面所述,通过X和Y在0~1023范围内上升计数,能够访问全部数据区域的位位置。
接下来,执行存储控制指令ACT(X)(步骤S13),选择行地址X,变为激活状态。接着,执行存储控制指令RD(Y)(步骤S14),读出数据区域位置(X,Y)的位。另一方面,在RD(Y)执行的同时,执行编码译码器控制指令GEN_CODE(步骤S15)。由此,数据区域位置(X,Y)的位作为运算对象输入到编码译码器16。
而且,增加X(步骤S16),在X值达到1024之前的期间(步骤S17),反复进行步骤S13~S17的控制。其结果,完成使用包含在第1逻辑单元B1中的1024位的编码运算。在该时刻,编码译码器16的移位寄存器变为生成对应第1逻辑单元B1的16位的检验码的状态。
接着,第1编码区域的行地址X1设置为0(步骤S18)。并且,执行存储控制指令ACT(X1)(步骤S19),选择行地址X1,变为激活状态。接着,执行编码译码器控制指令WT_CODE(步骤S20),将由编码译码器16生成的规定的检验位传送到存储单元10。并且,执行控制指令WT(Y1)(步骤S21),根据第1编码体系在第1编码区域位置(X1,Y1)写入检验位。
并且,增加X1(步骤S22),在X值达到16之前的期间(步骤S23),反复进行步骤S19~S23的控制。其结果,完成向根据第1编码体系的16位检验码的第1编码区域的写入。
接着,增加数据区域和第1编码区域中应该更新列地址的Y和Y1(步骤S24)。并且,在Y值达到1024之前的期间(步骤S25)反复进行步骤S12~S25的控制。并且,步骤S25对Y1的判断是同样的。由此,Y值在0~1023范围内,对1024行的第1逻辑单元B1反复进行同样的编码处理。在该时刻,数据区域全部数据完成根据第1编码体系的检验码的生成·写入。
其中,图13A时间流程图是在数据区域中Y=N,Y1=N的任意一行对应图11控制流程图。在图13A中,第1逻辑单元B1的读出动作对应上述步骤S12~S17,依次对数据区域的行地址X进行累计,重复执行上述各指令1024次。另外,检验码的写入动作对应上述步骤S18~S23,依次对第1编码区域的行地址X1进行累计,重复执行上述各指令16次。
接着,图12是表示在编码处理中根据第2编码体系的处理的控制流程图。在本实施方式的编码处理中,接着根据第1编码体系的处理,转移到根据第2编码体系的处理。如图12所示的控制一开始,最初数据区域的行地址X和第2编码区域行地址X2分别设置为0(步骤S31)。
接下来,执行存储控制指令ACT(X)(步骤S32),选择行地址X,变为激活状态。接着,将数据区域列地址Y设置为0(步骤S33)。这样,在第2编码体系的控制流程中,在列地址Y设置之前执行ACT(X)方面,与图11第1编码体系的控制流程的步骤不同。
在该状态中,执行存储控制指令RD(Y)(步骤S34),读出数据区域位置(X,Y)的位。另一方面,在执行RD(Y)的同时,执行编码译码器控制指令GEN_CODE(步骤S35),将数据区域的位置(X,Y)的位作为运算对象输入到编码译码器16。
并且,增加Y(步骤S36),在Y值达到1024之前的期间(步骤S37),重复步骤S34~S37的控制。其结果,完成使用包含在第2逻辑单元B2中1024位的编码运算。在该时刻,在编码译码器16的移位寄存器中,对应第2逻辑单元B2的16位检验码变为生成状态。
接下来,执行存储控制指令ACT(X2)(步骤S38),选择行地址X2,变为激活状态。接着,将第2编码区域列地址Y2设置为0(步骤S39)。并且,执行存储控制指令WT_CODE(步骤S40),此外,执行存储控制指令WT(Y2)(步骤S41)。由此,由编码译码器16生成的规定检验位传送到存储单元10之后,将根据第2编码体系的检验位写入第2编码区域的位置(X2,Y2)。
并且,增加Y2(步骤S42),在Y2值达到16之前的期间(步骤S43),重复步骤S40~S43的控制。其结果,完成将根据第2编码体系的16位检验码向第2编码区域的写入。
接下来,必须更新在数据区域和第2编码区域的行地址,增加X和X2(步骤S44)。并且,在X值达到1024之前的期间(步骤S45),重复步骤S32~S45的控制。并且,步骤S45对X2的判断也是同样的。由此,X值在0~1023范围,对1024列第2逻辑单元B2,重复进行同样的编码处理。在该时刻,对于数据区域的全部数据,完成根据第2编码体系检验码的生成·写入。
其中,图13B的时间流程图是在数据区域X=N,X2=N的任意一列,对应图12的控制流程图。在图13B中,第2逻辑单元B2的读出动作对应上述步骤S32~S37,依次累加数据区域列地址Y,上述各指令重复执行1024次。另外,检验码的写入动作对应上述步骤S38~S43,依次累加第2编码区域列地址Y2,上述各指令重复执行16次。
接着,参照图14~图22,对本实施方式的译码处理的控制步骤进行说明。图14是表示译码处理概要控制流程图,图15~图19是表示对应图14的详细的控制流程图。另外,图20和图21是表示对应图15和图17各控制流程的时间流程的图。另外,图22是表示主要控制译码处理的译码控制部43的结构的框图。
如图14概要控制流程图所示,本实施方式的译码处理由根据控制内容不同的多个译码顺序SQ1~SQ7构成。进行位误码修正的译码顺序SQ1包含根据第1编码体系控制第1逻辑单元B1的位误码修正的译码顺序SQ1A和根据第2编码体系控制第2逻辑单元B2位误码修正的译码顺序SQ1B。
图14的整个控制流程由包含在ECC控制电路33中的译码控制部43控制。如图22所示,译码控制部43构成包含:控制整个译码顺序SQ1~SQ7的逻辑单元控制部51;在进行作为处理对象的1个第1逻辑单元B1或者第2逻辑单元B2(以下,称为对象逻辑单元)的译码处理时,控制存储单元10和编码译码器16的存储器·编码译码器控制部52;计数对象逻辑单元译码处理级(执行周期)的级状态计数器53;计数后述的译码顺序SQ3中的重复次数的重复计数器54;计数必须处理的对象逻辑单元号码的逻辑单元地址计数器55;保持存在不能修正的位误码的第2逻辑单元B2号码的逻辑单元地址寄存器56;和选择必须处理的对象逻辑单元号码的选择器57。
图15是表示译码顺序SQ1A详细控制的流程图。图15所示的控制一开始,最初数据区域的列地址Y和第1编码区域的列地址Y1分别设置为0(步骤S101)。接着,数据区域的行地址X设置为0(步骤S102)。
接下来,执行存储控制指令ACT(X)(步骤S103),接着,执行存储控制指令RD(Y)(步骤S104)。由此,读出数据区域位置(X,Y)的位。另一方面,在位读出的同时,执行编码译码器控制指令GEN_CODE(步骤S105),将读出的位输入到编码译码器16。
并且,增加X(步骤S106),在X值达到1024之前的期间(步骤S107),重复步骤S103~S107的控制。其结果,使用包含在第1逻辑单元B1中的1024位执行编码译码器16的译码运算。
在接下来的步骤S108~S113中,用与对上述步骤S102~S107的数据区域控制同样的步骤,执行对第1编码区域的控制。此时,将行地址X置换为X1,列地址Y置换为Y1,并且,可以考虑将其变化范围置换为0~15。
在步骤S113的判断结果变为NO时,在编码译码器16中,使用规定的第1逻辑单元B1和与其对应的检验码共计1040位的译码运算变为完成状态。因此,根据错误信号判别编码译码器16的运算结果是否产生位误码(步骤S114)。
从编码译码器16输出的错误信号变为1,产生位误码时,执行针对运算对象的第1逻辑单元B1的位误码修正(步骤S115)。其中,在步骤S115中执行的误码修正控制流程图如图16所示。首先,如图16所示,在处理对象第1逻辑单元B1和第1编码区域列地址Y和Y1已经被设置的状态下,第1编码区域的行地址X1设置为15(步骤S201)。
接着,执行编码译码器控制指令REVERSE(步骤S202),在反向16段的移位寄存器的状态下,根据从编码译码器16输出的位置信号,判断产生位误码的位置(步骤S203)。其结果,位置信号变为1时,执行存储控制指令ACT(X1)(步骤S204),接着,执行存储控制指令RD(Y1)(步骤S205),读出第1编码区域位置(X1,Y1)的检验位。
接着,执行控制指令CORRECT(步骤S206),修正产生错误的位。也就是说,如图8所知,在编码译码器16中,由选择器选择的输出rd_data(由步骤S205读出的位)和位置信号的EOR运算输出,翻转产生错误的位,作为信号wt_data输出。
并且,执行存储控制指令WT(Y1)(步骤S207),将由编码译码器16修正错误后的位写入第1编码区域的位置(X1,Y1)。接下来,X1减1(步骤S208),在X1值达到0之前的期间(步骤S209),重复步骤S203~S209的控制。步骤S209的判断结果为NO时,转移到对数据区域的控制。
首先,数据区域的行地址X设置为1023(步骤S210)。接着,在步骤S211~S218中,用与对上述步骤S201~S209第1编码区域进行的控制同样的步骤,对数据区域执行控制。此时,行地址X1置换为X,列地址Y1置换为Y,并且,其变化范围只要置换为1023~0就可以。
并且,在步骤S203,S212中,location=1,是在片100的一例中只限于存在1位错误的情况,存在2位以上错误的情况,在编码译码器16电路构成中,位置信号不成立。这样的情况下必须进行的控制在后面进行叙述。
步骤S218判断结果变为NO时,变为修正错误检测位状态,图16的控制流程结束。
返回图15,继续对应图16的控制流程的步骤S115,增加必须更新在数据区域和第1编码区域的列地址Y和Y1(步骤S116)。并且,在Y值达到1024之前的期间(步骤S117),重复步骤S102~S117的控制。步骤S117的判断结果为NO时,结束译码顺序SQ1A。
其中,在图20表示在数据区域和第1编码区域,Y=N,Y1=N的任意一例子,对应译码顺序SQ1A控制流程的时间顺序图。在图20中,根据第1编码体系的检验码的读出动作对应上述步骤S102~S107,依次增加数据区域行地址X。上述各指令重复执行1024次。检验码的读出动作对应上述步骤S108~S113,依次增加第1编码区域行地址X1,上述各指令重复执行16次。另外,根据第1编码体系的检验码和对应第1逻辑单元B1的位误码检测·修正动作随错误信号和位置信号不同,进行不同的控制。
接着,图17是表示译码顺序SQ1B(图14)的详细的控制流程图。如图17所示的控制一开始,最初数据区域的行地址X和第2编码区域的行地址X2分别设置为0(步骤S151)。
接着,执行存储控制指令ACT(X)(步骤S152)。接下来,数据区域列地址Y设置为0(步骤S153)。在该状态下,执行存储控制指令RD(Y)(步骤S154),读出数据区域位置(X,Y)位。另一方面,读出位的同时,执行编码译码器控制指令GEN_CODE(步骤S155),读出的位输入编码译码器16。
接着,Y加1(步骤S156),在Y值达到1024之前的期间(步骤S157),重复进行步骤S154~157的控制。其结果,完成使用包含在第2逻辑单元B2中的1024位,执行编码译码器16的译码运算。
接下来,在步骤S158~S163中,采用与对上述步骤S152~S157的数据区域的控制同样的步骤,执行对第2编码区域的控制。此时,行地址X置换为X2,列地址Y置换为Y2,并且只要将其变化范围置换为0~15就可以。
步骤S163的判断结果为NO时,在编码译码器16中,变为使用对应规定的第2逻辑单元B2和与其对应的检验码共计1040位的译码运算结束状态。因此,根据错误信号,判断编码译码器16的运算结果是否产生位误码(步骤S164)。
从编码译码器16输出错误信号变为1,产生位误码时,执行对运算对象第2逻辑单元B2的位误码修正(步骤S165)。其中,步骤S165中执行的位误码修正的控制流程如图18所示。
在图18的步骤S251~S268所示的控制流程中,作为基本的控制步骤,与如图16步骤S201~S218所示的控制流程通用,只要将图16的X1,X分别置换为图18的Y2,Y就可以。最后步骤S268的判断结果变为NO时,变为修正检测到错误的位的状态,图18的控制流程结束。
回到图17,继续对应图18控制流程的步骤S165,必须更新数据区域和第1编码区域中的行地址,X和X2加1(步骤S166)。并且,在X值达到1024之前的期间(步骤S167),重复步骤S152~S167的控制。步骤S167的判断结果为NO时,结束译码顺序SQ1B。
其中,图21是表示在数据区域和第2编码区域中,X=N,X2=N的任意一行,对应译码顺序SQ1B的控制流程的时间顺序图。在图21中,根据第2编码体系的检验码读出动作,对应上述步骤S152~S157,数据区域列地址Y依次加1,上述各指令重复执行1024次。检验码的读出动作,对应上述步骤S158~S163,第2编码区域列地址Y2依次加1,上述各指令重复执行16次。另外,在根据第2编码体系的检验码和对第2逻辑单元B2的位误码检测·修正动作根据错误信号和位置信号,进行不同的控制这点上,与图20情况一样。
在以上2个译码顺序SQ1A,SQ1B中,图22译码控制部43中,逻辑单元控制部51识别每个对象逻辑单元的处理定时。并且,将对象逻辑单元的处理开始定时表示的逻辑单元开始信号sg1,表示对象逻辑单元号码(地址)逻辑单元地址信号sg2输出到存储、编码译码器控制部52。该存储、编码译码器控制部52生成,输出对象逻辑单元译码处理需要的存储控制信号和编码译码器控制信号。并且,将表示对象逻辑单元处理完成定时的逻辑单元结束信号sg3输出到逻辑单元控制部51。
另外,对象逻辑单元号码由逻辑单元地址计数器55生成。逻辑单元控制部51由控制信号sg8控制逻辑单元地址计数器55,由逻辑单元地址计数器55将其计数器值作为逻辑单元号码计数信号sg9输出。
此外,在对象逻辑单元处理时,存储、编码译码器控制部52对级状态计数器53供给计数器控制信号sg4,进行根据编码译码器16移位寄存器的正向·逆向的控制。级状态计数器53在编码译码器16的正向运算时增加,在编码译码器16的逆向运算时减少,进行控制。存储、编码译码器控制部52接受级状态计数器53显示的计数值信号sg5,由此,识别应该执行的周期。
接着,如图14所示,在接着译码顺序SQ1A,SQ1B的译码顺序SQ2中,判断在译码顺序SQ1A或者译码顺序SQ1B中,是否存在不能修正的位误码。也就是说,在本实施方式误码修正方式中,在对象逻辑单元中,只存在1位错误的情况,可以修正,存在2位以上错误的情况不能修正。在编码译码器16电路构成中,即使在变为error=1的情况下,存在2位以上错误时,由于不能变为location=1,在译码顺序SQ2中,检测这样的状态。
在图22中,从编码译码器16输出的错误信号和位置信号被输入到逻辑单元控制部51和存储、编码译码器控制部52。逻辑单元控制部51,在error=1,location=1的情况下,识别位误码的存在和修正该位,执行由存储、编码译码器部52控制的位误码修正。另一方面,逻辑单元控制部51,不是error=1,location=1的情况,识别不能修正的位误码的发生。
在本实施方式中,识别第2逻辑单元B2中存在不能修正的位的情况,保持此第2逻辑单元B2的号码(行地址X)。具体的说,由逻辑单元控制部51将保持信号sg13作为1供给逻辑单元地址寄存器56的状态下,由逻辑单元地址计数器55,将该第2逻辑单元B2的号码作为逻辑单元地址信号sg9,输送到逻辑单元地址寄存器56。并且,在逻辑单元地址寄存器56中,不能修正的第2组B2存在N个的情况,累计它们的号码,保持个数N。
并且,逻辑单元地址寄存器56的读出信号sg10输送到选择器57。该选择器57选择地切换来自逻辑单元地址计数器55的逻辑单元号码计数信号sg9和来自逻辑单元寄存器56的读出信号sg10,将选择信号sg11输出到逻辑单元控制部51。
在图14中,在译码顺序SQ2中判断不存在不能修正的位误码的情况,由于不需要其后的误码修正,结束图14的译码处理。另一方面,判断在译码顺序SQ2中存在不能修正的位误码的情况,接着执行译码顺序SQ3。
在译码顺序SQ3中,判断是否将译码顺序SQ1只完成事先设定的重复次数。也就是说,在本实施方式中,由于通过反复交替行方向和列方向的误码修正,减少位误码,增加重复次数,修正那些位误码的可能性增大。因此,实现能够设定适当的重复次数。
在图22的译码控制部43中,由重复计数器54计数译码顺序SQ1,SQ2的重复次数。逻辑单元控制部51在执行译码顺序SQ1,SQ2时,将递减信号输送到重复计数器54,其计数值作为计数信号sg6输出到逻辑单元控制部51。由此,能够识别逻辑单元控制部51达到事先设定的重复次数。
在译码顺序SQ3中,判断重复了规定次数,接着,转移到译码顺序SQ4。在该译码顺序SQ4中,和译码顺序SQ1A一样,进行第1逻辑单元B1的位误码修正,此时,作为多次重复情况的最终处理。并且,在接下来的译码顺序SQ5中,进行与译码顺序SQ2同样的判断。
另外,判断译码顺序SQ5中存在不能修正的位误码时,接着,转移到译码顺序SQ6。在该译码顺序SQ6中进行第2逻辑单元B2的位误码修正,此时,作为多次重复情况的最终处理。其中,译码顺序SQ6处理由于与译码顺序SQ1B处理存在不同点,在下面进行说明。
图19是表示译码顺序SQ6详细的控制流程图。该译码顺序SQ6的基本控制与图17的译码顺序SQ1B通用,但行地址X的设定步骤不同。也就是说,如图19所示,首先计数器i设置为0(步骤S301),设置上述逻辑单元地址寄存器56所保持的第i号值BOX_ADR_REG(i)作为X值(步骤S302)。同样,设置BOX_ADR_REG(i)作为X2值(步骤S309),并且,其X,X2,在执行步骤S303~S317的控制之后,i增加(步骤S318),i在达到逻辑单元地址寄存器保持的值N之前(步骤S319),重复执行步骤S303~S319的处理。
这样,在译码顺序SQ6中,在第2逻辑单元B2已经执行结束的位误码修正时,只在存在不能修正的位的第2逻辑单元B2,进行新的位误码修正。由此,回避了不必要的处理,力图降低整个处理的执行时间。并且,在译码顺序SQ3中,在规定次数设定为1次时,第1逻辑单元B1和第2逻辑单元B2各交替执行至少2次进行位误码修正。
最后,在译码顺序SQ7中,进行与译码顺序SQ2,SQ5同样的判断。并且,在判断译码顺序SQ7中存在不能修正的位误码时,结束图14的译码处理。另一方面,判断译码顺序SQ7中存在不能修正的位误码时,产生规定的不可修正信号。能够通过参照该不可修正信号,检测DRAM的异常。
接着,使用图23A~23D对本实施方式误码修正方法具体例子进行说明。在以下,为了简单起见,考虑取10×10大小的数据区域为例。如图23A所示,在数据区域中存在6位错误状态(图中用X印表示)在,对X方向位列执行译码顺序SQ1A。此时,在存在位误码的3列中,由于存在任意2位错误,位误码不能修正。
接着,如图23B所示,对Y方向位列执行译码顺序SQ1B。此时,不能修正存在2位的错误的2行错误,但能修正存在1位错误的其他2行的错误。此时,保持表示不能修正的行位置信息Xe(1),Xe(2)。
接着,如图23C所示,对X方向位列执行译码顺序SQ4(译码顺序SQ3的重复数取1)。此时,由于图23A错误模式发生变化,能修正存在1位错误的2列的错误。并且,达到剩下存在2位错误的1列的状态。
最后,如图23D所示,对Y方向位列执行译码顺序SQ6。此时,只对保持的位置信息Xe(1),Xe(2),执行误码修正,能修正在其2行中剩下的错误位eb1,eb2中的任一个。其结果,变为修正了在数据区域的全部位误码的状态。即使是更复杂的错误模式,通过增加重复次数,能够提供修正全部位误码的可能性。
并且,存在即使增加上述重复次数也不能通过错误模式修正位误码的情况。例如,存在在方形状的2×2的区域中含有4位错误的情况。此时,即使对X方向,Y方向重复进行误码修正,总是变回残留错误的状态。在回避这样的状态时,在规定形状的区域中总是持续不能修正位误码的状态时,判定在其区域内全部位错误,可以按照翻转这些位进行控制。
通过以上说明的本实施方式的DRAM,可以修正以往不可能修正的错误模式中的错误,提高了容许的位误码率。具体的说,通过采用上述误码修正方法,可以将以往容许误码率从0.01%提高到0.02%程度。另外,由于能够提高容许误码率,能够设定刷新周期增长,由此,能够降低数据保持状态下的电能消耗。具体的说,在温度85℃,刷新周期可以延长到以往的约2倍。
以上,对根据本实施方式的本发明进行了具体的说明,但本发明不局限于上述实施方式,在不脱离其概要的范围内,能够实施各种变化。例如,存储器阵列10的结构和容量不局限于上述的具体例子,对多种多样的存储机构,本发明都能广泛适用。

Claims (9)

1.一种半导体存储装置,其特征在于,具备:
存储器阵列,其具有存储数据的数据区域和存储上述数据的误码检测修正用的检验码的检验码区域;
刷新控制机构,其在数据保持状态中,控制对上述存储器阵列的规定周期的刷新动作;
运算机构,其进行将上述数据区域的规定位列作为处理单元的编码运算,生成上述检验码,并且,进行使用上述检验码的译码运算,进行针对上述数据的误码检测修正;
编码控制机构,作为过渡到上述数据保持状态时的编码处理进行以下控制:对于上述存储器阵列相互垂直的第1方向和第2方向,将基于上述第1方向的位列由上述运算机构生成的第1编码和基于上述第2方向的位列由上述运算机构生成的第2编码,分别写入上述检验码区域的第1编码区域和第2编码区域;
译码控制机构,作为在结束上述数据保持状态时的译码处理进行以下控制:在上述运算机构中,交替执行基于针对上述第1方向的上述第1编码的第1位误码修正与基于针对上述第2方向的上述第2编码的第2位误码修正,且分别执行2次以上。
2.根据权利要求1所述的半导体存储装置,其特征在于,
上述运算机构,分别输出表示作为上述译码运算的对象的位列中产生1位以上的误码的第1信号,和表示在上述位列中只产生1位位误码的位位置的第2信号。
3.根据权利要求2所述的半导体存储装置,其特征在于,
上述译码控制机构进行以下控制:在上述第2位误码修正时,在从上述运算机构输出上述第1信号并且没有输出上述第2信号的情况下,判断为译码对象的位列中存在不能修正的位误码,保持该位列的位置信息,在后续的上述第2位误码修正时,只对上述保持的位置信息的位列进行上述第2位误码修正。
5.根据权利要求1所述的半导体存储装置,其特征在于,
上述译码控制机构,对上述第1位误码修正和上述第2位误码修正,按照分别执行预先设定的重复次数的方式进行控制。
6.根据权利要求1所述的半导体存储装置,其特征在于,
上述第1方向是上述存储器阵列的行方向,上述第2方向是上述存储器阵列的列方向。
7.根据权利要求1所述的半导体存储装置,其特征在于,
还具备动作控制机构,其对控制通常时动作的通常动作模式和按照降低在上述数据保持状态中的电能消耗的方式控制动作的低电能消耗模式进行切换控制,
上述刷新控制机构在上述低电能消耗模式中,控制刷新动作。
8.一种半导体存储装置误码修正方法,是具有由存储数据的数据区域和存储上述数据的误码检测修正用检验码的检验码区域构成的存储区域的半导体存储装置误码修正方法,其特征在于,包括:
将上述数据规定位列作为处理单元,进行编码运算,生成上述检验码,并进行使用上述检验码进行译码运算,进行上述数据误码检测修正的运算步骤,
对上述存储区域相互垂直的第1方向和第2方向,将根据上述第1方向位列由运算机构生成的第1编码,和根据上述第2方向位列由上述运算机构生成的第2编码,分别写入上述检验码区域的第1编码区域和第2编码区域,进行编码处理的步骤,和
使得基于对上述第1方向的上述第1编码的第1位误码修正和基于对上述第2方向的上述第2编码的第2位误码修正,在上述运算机构中交替执行,且分别执行2次以上,而进行译码处理的步骤。
9.根据权利要求8所述的半导体存储装置的误码修正方法,其特征在于,
在译码对象的位列中存在不能修正的位误码时,保持该位列位置信息,在后续的上述第2位误码修正时,只对上述保持的位置信息的位列进行上述第2位误码修正。
10.根据权利要求8所述的半导体存储装置的误码修正方法,其特征在于,
对于上述第1位误码修正和上述第2位误码修正分别重复执行预先设定的次数。
CN200510078607.2A 2004-06-18 2005-06-20 半导体存储装置及其误码修正方法 Expired - Fee Related CN1716443B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004-181905 2004-06-18
JP2004181905A JP2006004560A (ja) 2004-06-18 2004-06-18 半導体記憶装置及びその誤り訂正方法
JP2004181905 2004-06-18

Publications (2)

Publication Number Publication Date
CN1716443A CN1716443A (zh) 2006-01-04
CN1716443B true CN1716443B (zh) 2010-06-09

Family

ID=35481994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200510078607.2A Expired - Fee Related CN1716443B (zh) 2004-06-18 2005-06-20 半导体存储装置及其误码修正方法

Country Status (4)

Country Link
US (2) US7373584B2 (zh)
JP (1) JP2006004560A (zh)
CN (1) CN1716443B (zh)
TW (1) TWI271741B (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4745169B2 (ja) * 2005-09-16 2011-08-10 株式会社東芝 半導体記憶装置
US7539926B1 (en) * 2006-02-14 2009-05-26 Xilinx, Inc. Method of correcting errors stored in a memory array
US7774684B2 (en) * 2006-06-30 2010-08-10 Intel Corporation Reliability, availability, and serviceability in a memory device
JP2008021390A (ja) * 2006-07-14 2008-01-31 Toshiba Corp 半導体記憶装置
KR100801083B1 (ko) * 2006-12-28 2008-02-05 삼성전자주식회사 싸이클릭 리던던시 체크 코드 발생회로, 반도체 메모리장치 및 이의 구동 방법
TW200834597A (en) * 2007-02-15 2008-08-16 Wedotek Technology Inc Data storage device
KR100852191B1 (ko) 2007-02-16 2008-08-13 삼성전자주식회사 에러 정정 기능을 가지는 반도체 메모리 장치 및 에러 정정방법
JP5216244B2 (ja) * 2007-05-31 2013-06-19 株式会社東芝 データリフレッシュ装置、及びデータリフレッシュ方法
US8005995B2 (en) 2007-08-16 2011-08-23 Micron Technology, Inc. Command interface systems and methods
US8117519B2 (en) * 2008-01-15 2012-02-14 Micron Technology, Inc. Memory apparatus and method using erasure error correction to reduce power consumption
US8627163B2 (en) 2008-03-25 2014-01-07 Micron Technology, Inc. Error-correction forced mode with M-sequence
US7973556B1 (en) * 2009-03-05 2011-07-05 Xilinx, Inc. System and method for using reconfiguration ports for power management in integrated circuits
US8327225B2 (en) 2010-01-04 2012-12-04 Micron Technology, Inc. Error correction in a stacked memory
KR101751506B1 (ko) * 2011-03-28 2017-06-29 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 배드 영역 관리 방법
US8615690B2 (en) * 2011-05-05 2013-12-24 Mediatek Inc. Controller of memory device and method for operating the same
US9823964B2 (en) 2015-12-08 2017-11-21 Nvidia Corporation Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation
US9880900B2 (en) 2015-12-08 2018-01-30 Nvidia Corporation Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state
US10049006B2 (en) 2015-12-08 2018-08-14 Nvidia Corporation Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands
CN109347490A (zh) * 2018-12-09 2019-02-15 江苏华存电子科技有限公司 一种用于数据纠错ecc译码核主控装置
KR102674591B1 (ko) * 2019-01-15 2024-06-12 에스케이하이닉스 주식회사 커맨드 생성 방법 및 이를 이용한 반도체장치
CN110309374A (zh) * 2019-05-22 2019-10-08 深圳市金泰克半导体有限公司 一种解析方法、系统、终端设备及计算机可读存储介质
CN112289365B (zh) * 2019-07-24 2024-02-23 华邦电子股份有限公司 半导体存储器装置
US11385962B2 (en) * 2020-11-05 2022-07-12 Sage Microelectronics Corporation Method and apparatus for error correction encoding compressed data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1256005A (zh) * 1998-01-21 2000-06-07 索尼株式会社 编码方法和存储装置
CN1402258A (zh) * 2001-08-27 2003-03-12 尔必达存储器股份有限公司 半导体存储器件的功率控制方法及半导体存储器件
US6704230B1 (en) * 2003-06-12 2004-03-09 International Business Machines Corporation Error detection and correction method and apparatus in a magnetoresistive random access memory

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6235708A (ja) 1985-08-08 1987-02-16 Nec Corp シユミツト回路
EP0392895B1 (en) * 1989-04-13 1995-12-13 Sundisk Corporation Flash EEprom system
JP3109087B2 (ja) * 1990-08-24 2000-11-13 ソニー株式会社 符号化装置及び復号化装置
AU700070B2 (en) * 1995-05-16 1998-12-17 Sony Corporation Data recording/reproducing apparatus and method corresponding to a plurality of data formats, and data recording medium
JP3562544B2 (ja) * 1996-08-13 2004-09-08 ソニー株式会社 復号化装置および復号化方法
JP3863252B2 (ja) * 1996-11-15 2006-12-27 富士通株式会社 誤り訂正方法、誤り訂正装置、データ読み出し装置、及び、データマッピング方法
JP3430193B2 (ja) * 1997-01-20 2003-07-28 株式会社日立製作所 ディジタル信号再生装置及びディジタル信号再生方法
CN1501248B (zh) * 1997-04-02 2010-05-26 松下电器产业株式会社 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置
JPH1198462A (ja) * 1997-09-19 1999-04-09 Hitachi Ltd データ再生装置
JP3813337B2 (ja) 1997-12-01 2006-08-23 日本テキサス・インスツルメンツ株式会社 消失誤り訂正方法とその装置
JP3177207B2 (ja) * 1998-01-27 2001-06-18 インターナショナル・ビジネス・マシーンズ・コーポレ−ション リフレッシュ間隔制御装置及び方法、並びにコンピュータ
CN1555061A (zh) * 1998-02-25 2004-12-15 松下电器产业株式会社 纠错装置
JP3450756B2 (ja) * 1999-09-08 2003-09-29 松下電器産業株式会社 誤り訂正方法および誤り訂正装置
JP2002056671A (ja) * 2000-08-14 2002-02-22 Hitachi Ltd ダイナミック型ramのデータ保持方法と半導体集積回路装置
US6792567B2 (en) * 2001-04-30 2004-09-14 Stmicroelectronics, Inc. System and method for correcting soft errors in random access memory devices
US7171605B2 (en) * 2002-02-01 2007-01-30 International Business Machines Corporation Check bit free error correction for sleep mode data retention
US7203886B2 (en) * 2002-03-27 2007-04-10 Intel Corporation Detecting and correcting corrupted memory cells in a memory
US7277368B2 (en) * 2002-11-11 2007-10-02 Matsushita Electric Industrial Co., Ltd. Playback method, playback control circuit and playback apparatus for a recording medium
JP4256198B2 (ja) * 2003-04-22 2009-04-22 株式会社東芝 データ記憶システム
JP4041076B2 (ja) * 2004-02-27 2008-01-30 株式会社東芝 データ記憶システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1256005A (zh) * 1998-01-21 2000-06-07 索尼株式会社 编码方法和存储装置
CN1402258A (zh) * 2001-08-27 2003-03-12 尔必达存储器股份有限公司 半导体存储器件的功率控制方法及半导体存储器件
US6704230B1 (en) * 2003-06-12 2004-03-09 International Business Machines Corporation Error detection and correction method and apparatus in a magnetoresistive random access memory

Also Published As

Publication number Publication date
CN1716443A (zh) 2006-01-04
TWI271741B (en) 2007-01-21
JP2006004560A (ja) 2006-01-05
US7373584B2 (en) 2008-05-13
US20080282098A1 (en) 2008-11-13
US8140938B2 (en) 2012-03-20
TW200601335A (en) 2006-01-01
US20050283704A1 (en) 2005-12-22

Similar Documents

Publication Publication Date Title
CN1716443B (zh) 半导体存储装置及其误码修正方法
CN101842847B (zh) 存储器单元中的分数位
US11093392B2 (en) Apparatuses and methods to perform continuous read operations
US9606864B2 (en) Non-volatile memory device having adjustable read voltage, memory system comprising same, and method of operating same
US10430090B2 (en) Method of controlling memory system and method of controlling information-processing device
KR101082650B1 (ko) 불휘발성 메모리 장치 및 그 동작 방법
TWI489483B (zh) 用於一快閃記憶體內資料之高速、低功率讀取的方法、記憶體、記憶體裝置、記憶體系統及電腦可讀儲存媒體
CN102737723B (zh) 半导体存储设备
CN102314949B (zh) 数据读取方法、控制电路与存储器控制器
KR101371516B1 (ko) 플래시 메모리 장치의 동작 방법 및 그것을 포함하는 메모리 시스템
US20070237006A1 (en) Method for generating soft bits in flash memories
CN108206041A (zh) 存储器读取操作方法、存储器控制器及存储系统操作方法
TW200912938A (en) Refresh of non-volatile memory cells based on fatigue conditions
CN102543196B (zh) 数据读取方法、存储器储存装置及其控制器
JP2009282923A (ja) 半導体記憶装置及び不揮発性メモリ
CN101930402B (zh) 具有检错/纠错电路的非挥发存储器及其读写方法
TWI693608B (zh) 資料儲存裝置及其操作方法
JP2008102693A (ja) メモリコントローラ及びフラッシュメモリシステム、並びにフラッシュメモリの制御方法
KR20000056995A (ko) 반도체장치
CN104810061A (zh) 存储器及其操作方法
US12019912B2 (en) Channelization of pseudo-random binary sequence generators
JP2011060415A (ja) 不揮発性半導体記憶装置及びデータ記憶システム
CN102750188B (zh) 进行存储器存取管理的方法以及存储装置及其控制器
JP2010165454A (ja) 不揮発性半導体記憶装置及びデータ記憶システム
CN102455975B (zh) 用来进行数据整形的方法以及其记忆装置及控制器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: PS4 LASCO CO., LTD.

Free format text: FORMER OWNER: ELPIDA MEMORY INC.

Effective date: 20130829

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130829

Address after: Luxemburg Luxemburg

Patentee after: ELPIDA MEMORY INC.

Address before: Tokyo, Japan

Patentee before: Elpida Memory Inc.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100609

Termination date: 20150620

EXPY Termination of patent right or utility model