CN109933453B - 错误校正方法和使用其的半导体器件 - Google Patents

错误校正方法和使用其的半导体器件 Download PDF

Info

Publication number
CN109933453B
CN109933453B CN201811044479.3A CN201811044479A CN109933453B CN 109933453 B CN109933453 B CN 109933453B CN 201811044479 A CN201811044479 A CN 201811044479A CN 109933453 B CN109933453 B CN 109933453B
Authority
CN
China
Prior art keywords
data
read
signal
output
syndrome
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
CN201811044479.3A
Other languages
English (en)
Other versions
CN109933453A (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.)
SK Hynix Inc
Original Assignee
SK Hynix 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 SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN109933453A publication Critical patent/CN109933453A/zh
Application granted granted Critical
Publication of CN109933453B publication Critical patent/CN109933453B/zh
Active 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
    • 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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1069I/O lines read out arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1096Write circuits, e.g. I/O line write drivers
    • 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
    • G11C2029/0411Online error correction

Abstract

本申请涉及错误校正方法和使用其的半导体器件。半导体器件包括读取数据发生电路和校验子发生电路。读取数据发生电路从在第一读取操作期间产生的第一输出数据和第一输出奇偶校验码码来产生第一读取数据。此外,读取数据发生电路从在第二读取操作期间产生的第二输出数据和第二输出奇偶校验码码产生第二读取数据。校验子发生电路从第一读取数据和第二读取数据产生校验子信号。校验子发生电路产生校验子信号使得与第一读取数据相对应的第一半矩阵的列向量对称于与第二读取数据相对应的第二半矩阵的列向量。

Description

错误校正方法和使用其的半导体器件
相关申请的交叉引用
本申请要求2017年12月15日提交的第10-2017-0173258号韩国专利申请的优先权,其公开内容通过引用整体合并于此。
技术领域
本公开的实施例总体涉及一种能够校正或恢复数据错误的半导体器件。
背景技术
半导体可以根据各种方案设计,以在每一个时钟周期内输入或输出多比特位数据,以提高半导体器件的工作速度。然而,随着向或从半导体器件输入或输出数据的速度增大,数据错误的概率也会增大。因此,需要改进的方法和/或设备来增强对存储器设备的数据处理和来自存储器设备的数据处理。
在半导体器件的数据处理中,为了提高数据传输的可靠性,通常用错误代码来传输数据,这些错误代码用于检测和校正数据中的错误。因此,典型的错误码可以包括用于检测错误的错误检测码(EDC)和用于校正错误的错误校正码(ECC)。
发明内容
根据一个实施例,半导体器件可以包括读取数据发生电路和校验子发生电路。读取数据发生电路从在第一读取操作期间产生的第一输出数据和第一输出奇偶校验码来产生第一读取数据。此外,所述读取数据发生电路从在第二读取操作期间产生的第二输出数据和第二输出奇偶校验码来产生第二读取数据。所述校验子发生电路至少基于所述第一读取数据和所述第二读取数据来产生校验子信号。
根据另一实施例,提供了一种校正数据错误的方法。所述方法包括第一步骤、第二步骤和第三步骤。执行所述第一步骤以从在第一读取操作期间提供的第一输出数据和第一输出奇偶校验码来产生第一读取数据。执行所述第二步骤以产生包括关于所述第一读取数据的错误信息的第一预校验子组,并储存所述第一预校验子组。执行所述第三步骤以从在第二读取操作期间提供的第二输出数据和第二输出奇偶校验码来产生第二读取数据,产生包括关于所述第二读取数据的错误信息的第二预校验子组,以及通过对所述第一预校验子组和所述第二预校验子组执行逻辑运算来产生校验子信号。
根据另一实施例,半导体器件包括存储区域和校验子发生电路。所述存储区域在写入操作期间储存输入数据和奇偶校验码。在第一读取操作期间,所述存储区域将所述输入数据的第一输入数据输出为第一输出数据,并且将所述奇偶校验码输出为输出奇偶校验码。所述存储区域在第二读取操作期间将所述输入数据的第二输入数据输出为第二输出数据,并且将所述奇偶校验码输出为所述输出奇偶校验码。所述校验子发生电路在所述写入操作期间从所述输入数据产生所述奇偶校验码。所述校验子发生电路在所述第一读取操作期间通过对所述第一输出数据和所述输出奇偶校验码执行逻辑运算来产生奇偶校验码。所述校验子发生电路通过在所述第二读取操作期间对在所述第一读取操作期间产生的奇偶校验码、所述第二输出数据和输出奇偶校验码执行逻辑运算来产生校验子信号。所述校验子发生电路产生所述校验子信号,使得与所述第一输出数据相对应的第一半矩阵的列向量对称于与所述第二输出数据相对应的第二半矩阵的列向量。
结合附图通过对用于实施本发明的构思的优选实施例的以下描述,本公开的其他应用对于本领域技术人员将变得显而易见。
附图说明
本文的描述参考附图,其中在所有视图中相同的附图标记指示相同的部分,并且其中:
图1是示出根据本公开的一个示例的半导体器件的配置的框图;
图2是示出包括在图1的半导体器件中的读取数据发生电路的配置的框图;
图3是示出包括在图2的读取数据发生电路中的控制电路的配置的电路图;
图4是示出包括在图1的半导体器件中的校验子发生电路的配置的框图;
图5是示出包括在图4的校验子发生电路中的预校验子发生电路的配置的电路图;
图6是示出包括在图4的校验子发生电路中的逻辑电路的配置的电路图;
图7是示出图4所示的校验子发生电路的另一个示例的框图;
图8是示出包括在图7的校验子发生电路中的逻辑电路的配置的电路图;
图9示出在本公开的一个实施例中使用的矩阵;
图10是示出根据本公开的一个实施例的半导体器件的操作的时序图;
图11是示出根据本公开的一个实施例的错误校正方法的流程图;
图12是示出根据本公开的另一实施例的半导体器件的配置的框图;
图13是示出包括在图12的半导体器件中的列信号发生电路的配置的框图;
图14是示出包括在图13的列信号发生电路中的写入脉冲发生电路的配置的电路图;
图15是示出包括在图13的列信号发生电路中的读取脉冲发生电路的配置的电路图;
图16是示出包括在图13的列信号发生电路中的控制电路的配置的电路图;
图17是示出包括在图12的半导体器件中的校验子发生电路的配置的框图;
图18是示出包括在图17的校验子发生电路中的预校验子发生电路的配置的电路图;
图19是示出包括在图17的校验子发生电路中的逻辑电路的配置的电路图;
图20是示出采用参考图1至图19描述的半导体器件中的至少一个的电子系统的配置的框图。
图21是示出采用参考图1至图19描述的半导体器件中的至少一个的另一电子系统的配置的框图。
具体实施方式
本发明提供一种能够对称调整或控制矩阵的列向量的半导体器件,所述半导体器件用于在读取操作期间执行两次读取操作,以产生用于数据错误校正的校验子,并减小建立矩阵的电路的尺寸。
在描述本公开时,当确定对已知相关技术的详细描述可能掩盖本公开的要点时,将省略对其的详细描述。
尽管可以使用诸如第一和第二的术语来描述各种组件,但是这些组件不受这些术语的限制,并且这些术语仅用于区分组件与其他组件。
本文使用的术语仅用于描述特定的实施例的目的,并不意在限制本发明。如这里所使用的,单数形式旨在包括复数形式,除非上下文清楚地指示不是这样。
还将进一步理解,在本说明书中使用的术语“包括”、“包括有”、“包含”和“包含有”时,指定所陈述的元件的存在,而不排除存在或添加一个或更多个其他元件。如本文所使用的,术语“和/或”包括一个或更多个相关联的列出项目的任意的和所有的组合。
在下面的描述中,为了提供对本发明的透彻理解,阐述了许多具体细节。本发明可以在没有这些特定细节中的一些或全部的情况下实施。在其他情况下,为了免于不必要地混淆本发明,没有详细描述公知的工艺结构和/或工艺。
还注意到,在某些情况下,对于相关技术领域的技术人员来说明显的是,结合一个实施例描述的特征或元件可以单独使用或与另一实施例的其他特征或元件结合使用,除非另有具体说明。
现在参考图1,提供了半导体器件的示例性配置。半导体器件包括奇偶校验码发生电路10、存储区域20、读取数据发生电路30、校验子发生电路40和数据校正电路50。
在写入操作中,奇偶校验码发生电路10可以产生奇偶校验码PI<1:4>,所述奇偶校验码PI<1:4>包括关于输入数据DIN<1:6>的错误信息。在写入操作期间,奇偶校验码发生电路10可以响应于输入到奇偶校验码发生电路10的写入信号WT来产生包括关于输入数据DIN<1:6>的错误信息的奇偶校验码PI<1:4>。在写入操作期间,奇偶校验码发生电路10可以对包含在输入数据DIN<1:6>中的数据比特位执行逻辑运算以产生奇偶校验码PI<1:4>。例如,奇偶校验码发生电路10可以使用汉明码(Hamming code)产生奇偶校验码P<1:4>。汉明码可以在矩阵中实施,用于校正数据(例如,输入数据DIN<1:6>)的错误。在一个实施例中,奇偶校验码发生电路10可以包括使用汉明码来产生奇偶校验码P<1:4>的错误校正码(ECC)电路(未示出)。
在写入操作期间,存储区域20可以储存输入数据DIN<1:6>和奇偶校验码PI<1:4>。在存储区域20中,响应于在写入操作期间输入到存储区域20的写入信号WT,输入数据DIN<1:6>和奇偶校验码PI<1:4>可以被储存。存储区域20可以响应于写入信号WT而将输入数据DIN<1:6>中的一些(例如输入数据DIN<1:3>)储存到存储区域20的第一存储区域。存储区域20可以响应于写入信号WT而将输入数据DIN<1:6>中的其他数据(例如输入数据DIN<4:6>)储存到存储区域20的第二存储区域。在存储区域20中,第一存储区域和第二存储区域可以是两个不同的存储空间。在存储区域20中,第一存储区域和第二存储区域可以是两个独立的存储空间。第一存储区域和第二存储区域可以被设置为其中储存输入数据DIN<1:6>的存储空间。存储区域20可以响应于写入信号WT而将奇偶校验码PI<1:4>的一些奇偶校验码(例如奇偶校验码PI<1:2>)储存到存储区域20中的第三存储区域中。存储区域20可以响应于写入信号WT而将奇偶校验码PI<1:4>的剩余奇偶校验码(例如<奇偶校验码PI<3:4>)储存到存储区域20的第四存储区域。第三存储区域和第四存储区域可以被建立为存储区域20中的两个不同的存储空间。第三存储区域和第四存储区域可以被设置为其中储存奇偶校验码PI<1:4>的存储空间。
在读取操作中,存储区域20可以在第一读取操作期间将储存在第一存储区域中的输入数据DIN<1:3>输出为第一输出数据DO1<1:3>。存储区域20可以响应于读取信号RD将储存在第一存储区域中的输入数据DIN<1:3>输出为第一输出数据DO1<1:3>。存储区域20可以在第一读取操作期间将储存在第三存储区域中的奇偶校验码PI<1:2>输出为第一输出奇偶校验码PO1<1:2>。存储区域20可以响应于读取信号RD将储存在第三存储区域中的奇偶校验码PI<1:2>输出为第一输出奇偶校验码PO1<1:2>。存储区域20可以在第二读取操作期间将储存在第二存储区域中的输入数据DIN<4:6>输出为第二输出数据DO2<1:3>。存储区域20可以响应于读取信号RD将储存在第二存储区域中的输入数据DIN<4:6>输出为第二输出数据DO2<1:3>。存储区域20可以在第二读取操作期间将储存在第四存储区域中的奇偶校验码PI<3:4>输出为第二输出奇偶校验码PO2<1:2>。存储区域20可以响应于读取信号RD将储存在第四存储区域中的奇偶校验码PI<3:4>输出为第二输出奇偶校验码PO2<1:2>。
在第一读取操作期间,读取数据发生电路30可以至少基于从存储区域20输出的第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>来产生第一读取数据RD1<1:5>。读取数据发生电路30可以将第一输出数据DO1<1:3>与第一输出奇偶校验码PO1<1:2>组合以产生(或合成)第一读取数据RD1<1:5>。在第二读取操作期间,读取数据发生电路30可以至少基于从存储区域20输出的第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>来产生第二读取数据RD2<1:5>。在第二读取操作期间,读取数据发生电路30可以通过将从存储区域20输出的第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>组合来输出第二读取数据RD2<1:5>。读取数据发生电路30可以产生选择信号SEL,选择信号SEL能够响应于读取信号RD而在预定时段期间被使能。读取数据发生电路30可以产生复位信号RST,复位信号RST能够响应于读取信号RD和选择信号SEL而在预定时段期间被使能。
校验子发生电路40可以至少基于第一读取数据RD1<1:5>和第二读取数据RD2<1:5>来产生校验子信号SYN<1:4>。校验子信号SYN<1:4>可以从由第一读取数据RD1<1:5>和第二读取数据RD2<1:5>实施的矩阵(图9所示)获得。校验子发生电路40可以通过响应于选择信号SEL和复位信号RST而对第一读取数据RD1<1:5>和第二读取数据RD2<1:5>中所包含的数据比特位执行逻辑运算来产生校验子信号SYN<1:4>。例如,校验子信号SYN<1:4>可以通过错误校正码(ECC)电路使用汉明码来产生。在一个实施例中,校验子发生电路40可以包括使用汉明码的错误校正码(ECC)电路以用于产生错误校正码。汉明码可以由矩阵来实施(参见图9),用于校正数据的错误。校验子信号SYN<1:4>可以包括关于第一输出数据DO1<1:3>和第二输出数据DO2<1:3>中的数据比特位之中错误比特位的位置信息。稍后将参考附图详细描述产生图9所示的矩阵的方法。
在第二读取操作期间,数据校正电路50可以利用校验子信号SYN<1:4>来校正第一输出数据DO1<1:3>和第二输出数据DO2<1:3>的错误数据。数据校正电路50可以将在第二读取操作期间被校正的第一输出数据DO1<1:3>和第二输出数据DO2<1:3>组合,并可以将组合数据输出为校正数据DC<1:6>。
参考图2,读取数据发生电路30可以包括控制电路31和数据合成电路32。
控制电路31可以响应于读取信号RD和列延迟信号(图3的YID)而产生选择信号SEL。选择信号SEL可以响应于读取信号RD而被使能,并且可以响应于列延迟信号YID而被禁止。控制电路31可以响应于读取信号RD和选择信号SEL而产生复位信号RST。例如,复位信号RST可以响应于读取信号RD而被使能,并且响应于选择信号SEL而被禁止。控制电路31可以产生列信号YI,该列信号YI包括响应于读取信号RD而产生的第一脉冲和第二脉冲。
数据合成电路32可以响应于列信号YI至少基于第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>来产生第一读取数据RD1<1:5>,以及可以响应于列信号YI至少基于第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>来产生第二读取数据RD2<1:5>。数据合成电路32可以响应于列信号YI的第一脉冲而将第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>组合(或合成),以输出第一读取数据RD1<1:5>。数据合成电路32可以通过响应于列信号YI的第一脉冲而将第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>组合来产生第一读取数据RD1<1:5>。数据合成电路32可以响应于列信号YI的第二脉冲而从第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>产生第二读取数据RD2<1:5>。数据合成电路32可以通过响应于列信号YI的第二脉冲而将第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>组合(或合成)来产生第二读取数据RD2<1:5>。
参考图3,控制电路31可以包括选择信号发生电路310、复位信号发生电路320和列信号发生电路330。
选择信号发生电路310可以响应于读取信号RD和列延迟信号YID来产生选择信号SEL。选择信号发生电路310可以在具有逻辑“高”电平的读取信号RD被输入到选择信号发生电路310的时间产生具有逻辑“低”电平的选择信号SEL。选择信号发生电路310可以在具有逻辑“高”电平的列延迟信号YID被输入到选择信号发生电路310的时间产生具有逻辑“高”电平的选择信号SEL。
复位信号发生电路320可以响应于选择信号SEL和读取信号RD而产生复位信号RST。复位信号发生电路320可以在选择信号SEL具有逻辑“低”电平以及读取信号RD具有逻辑“高”电平时产生具有逻辑“高”电平的复位信号RST。
列信号发生电路330可以包括脉冲信号发生电路331、列信号输出电路332和延迟电路333。
脉冲信号发生电路331可以响应于读取信号RD来产生依次被使能的第一脉冲信号YIP1和第二脉冲信号YIP2,当具有逻辑“高”电平的读取信号RD被输入到脉冲信号发生电路331时,脉冲信号发生电路331可以输出在预定时段期间具有逻辑“高”电平的第一脉冲信号YIP1,以及在输出第一脉冲信号YIP1之后的预定时段期间具有逻辑“高”电平的第二脉冲信号YIP2。
列信号输出电路332可以输出包括第一脉冲和第二脉冲的列信号YI,所述第一脉冲和第二脉冲响应于第一脉冲信号YIP1和第二脉冲信号YIP2而产生。列信号输出电路332可以对第一脉冲信号YIP1和第二脉冲信号YIP2执行逻辑或(OR)运算,以产生列信号YI。当第一脉冲信号YIP1和第二脉冲信号YIP2中的一个具有逻辑“高”电平时,列信号输出电路332可以产生具有逻辑“高”电平的列信号YI。列信号输出电路332可以将第一脉冲信号YIP1输出为列信号YI的第一脉冲。列信号输出电路332可以将第二脉冲信号YIP2输出为列信号YI的第二脉冲。
延迟电路333可以将列信号YI延迟以产生列延迟信号YID。延迟电路333将列信号YI延迟多久,即延迟时间,可以根据各种实施例被不同地确定。
如上所述,当读取信号RD具有逻辑“高”电平时,控制电路31可以产生具有逻辑“低”电平的选择信号SEL,并且当列延迟信号YID具有逻辑“高”电平时,控制电路31可以产生具有逻辑“高”电平的选择信号SEL。当选择信号SEL具有逻辑“低”电平并且读取信号RD具有逻辑“高”电平时,控制电路31可以产生具有逻辑“高”电平的复位信号RST。当读取信号RD具有逻辑“高”电平时,控制电路31可以输出包括依次产生的第一脉冲和第二脉冲的列信号YI。
参考图4,校验子发生电路40可以包括预校验子发生电路41和逻辑电路42。
预校验子发生电路41可以对在第一读取操作期间产生的第一读取数据RD1<1:5>中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。预校验子发生电路41可以对在第二读取操作期间产生的第二读取数据RD2<1:5>中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。第一预校验子至第四预校验子PS<1:4>可以包括关于第一读数据RD1<1:5>和第二读数据RD2<1:5>的错误信息。在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被建立为第一预校验子组。在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第二预校验子组。第一预校验子至第四预校验子PS<1:4>可以被看作矩阵的列向量。通过示例而非限制的方式,矩阵可以由预校验子发生电路41提供以产生在半导体器件中使用的校验子。稍后将参考图9来描述该矩阵。
逻辑电路42可以响应于选择信号SEL而将在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>储存为校验子信号SYN<1:4>,即第一校验子至第四校验子SYN<1:4>。当选择信号SEL具有逻辑“低”电平时,逻辑电路42可以将在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>分配为第一校验子至第四校验子SYN<1:4>。为了产生第一校验子至第四校验子SYN<1:4>,逻辑电路42可以响应于选择信号SEL来改变在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>的阵列顺序,并对根据已改变的阵列顺序重新排列的第一预校验子至第四预校验子PS<1:4>以及在第一读取操作期间产生的第一校验子至第四校验子SYN<1:4>执行逻辑运算。逻辑电路42可以响应于复位信号RST产生初始化的第一校验子至第四校验子SYN<1:4>。
下文将参考图5描述预校验子发生电路41的配置和操作。
预校验子发生电路41可以以包括多个异或(exclusive OR)门EXOR41、EXOR42、EXOR43、EXOR44、EXOR45和多个反相器IV41、IV42的形式来实施。
如下,根据一个示例可以在第一读取操作期间产生第一预校验子至第四预校验子PS<1:4>。
预校验子发生电路41可以通过经由异或门EXOR41、EXOR42对第一读数据RD1<1:5>中包含的第一比特位数据RD1<1>、第三比特位数据RD1<3>和第四比特位数据RD1<4>执行逻辑异或运算来产生第一预校验子PS<1>。
预校验子发生电路41可以通过经由异或门EXOR43、EXOR44对第一读取数据RD1<1:5>中包含的第二比特位数据RD1<2>、第三比特位数据RD1<3>和第五比特位数据RD1<5>执行逻辑异或运算来产生第二预校验子PS<2>。
预校验子发生电路41可以通过经由异或门EXOR45对第一读取数据RD1<1:5>中包含的第四比特位数据RD1<4>和第五比特位数据RD1<5>执行逻辑异或运算来产生第三预校验子PS<3>。
预校验子发生电路41可以通过经由偶数个反相器(如反相器IV41和IV42)对第一读取数据RD1<1:5>的第五比特位数据RD1<5>进行缓冲来产生第四预校验子PS<4>。
如下,第一预校验子至第四预校验子PS<1:4>可以在第二读取操作期间产生。
预校验子发生电路41可以通过经由异或门EXOR41、EXOR42对第二读数据RD2<1:5>中包含的第一比特位数据RD2<1>、第三比特位数据RD2<3>和第四比特位数据RD2<4>执行逻辑异或运算来产生第一预校验子PS<1>。
为了产生第二预校验子PS<2>,预校验子发生电路41可以经由异或门EXOR43、EXOR44对第二读数据RD2<1:5>中包含的第二比特位数据RD2<2>、第三比特位数据RD2<3>和第五比特位数据RD2<5>执行逻辑异或运算。
预校验子发生电路41可以通过经由异或门EXO45对第二读取数据RD2<1:5>中包含的第四比特位数据RD2<4>和第五比特位数据RD2<5>执行逻辑异或运算来产生第三预校验子PS<3>。
预校验子发生电路41可以通过经由偶数个反相器(如反相器IV41和IV42)对第二读取数据RD2<1:5>的第五比特位数据RD2<5>进行缓冲来产生第四预校验子PS<4>。
下面将参考图6描述逻辑电路42的配置和操作。
逻辑电路42可以包括选择校验子发生电路421和校验子储存电路422。
响应于选择信号SEL,选择校验子发生电路421可以将第一至第四预校验子PS<1:4>分别输出为第一选择校验子至第四选择校验子SS<1:4>,或可以改变第一预校验子至第四预校验子PS<1:4>的阵列顺序,以分别将按已改变的阵列顺序重新排列的第一预校验子至第四预校验子PS<1:4>输出为第一选择校验子至第四选择校验子SS<1:4>。
更具体地,当选择信号SEL具有逻辑“低”电平时,选择校验子发生电路421可以将第一预校验子PS<1>输出为第一选择校验子SS<1>,将第二预校验子PS<2>输出为第二选择校验子SS<2>,将第三预校验子PS<3>输出为第三选择校验子SS<3>,以及将第四预校验子PS<4>输出为第四选择校验子SS<4>。此外,当选择信号SEL具有逻辑“高”电平时,选择校验子发生电路421可以将第一预校验子PS<1>输出为第四选择校验子SS<4>,将第二预校验子PS<2>输出为第三选择校验子SS<3>,将第三预校验子PS<3>输出为第二选择校验子SS<2>,将第四预校验子PS<4>输出为第一选择校验子SS<1>。
校验子储存电路422可以响应于复位信号RST而产生初始化的第一校验子至第四校验子SYN<1:4>。当复位信号RST被使能为具有逻辑“高”电平时,第一校验子至第四校验子SYN<1:4>可以被初始化为具有逻辑“低”电平。校验子储存电路422可以响应于列延迟信号YID而将在第一读取操作期间产生的第一选择校验子至第四选择校验子SS<1:4>储存为第一校验子至第四校验子SYN<1:4>。校验子储存电路422可以通过对响应于列延迟信号YID在第一读取操作期间储存的第一校验子至第四校验子SYN<1:4>以及在第二读取操作期间产生的第一选择校验子至第四选择校验子SS<1:4>执行逻辑运算来产生第一校验子至第四校验子SYN<1:4>。
更具体地,当在第一读取操作期间列延迟信号YID被产生为具有逻辑“高”电平时,校验子储存电路422可以将第一选择校验子SS<1>储存为第一校验子SYN<1>,将第二选择校验子SS<2>储存为第二校验子SYN<2>,将第三选择校验子SS<3>储存为第三校验子SYN<3>,将第四选择校验子SS<4>储存为第四校验子SYN<4>。
当在第二读取操作期间列延迟信号YID被产生为具有逻辑“高”电平时,校验子储存电路422可以通过对第一选择校验子SS<1>与在第一读取操作期间储存的第一校验子SYN<1>执行逻辑异或运算来产生第一校验子SYN<1>,通过对第二选择校验子SS<2>与在第一读操作期间储存的第二校验子SYN<2>执行逻辑异或运算来产生第二校验子SYN<2>,通过对第三选择校验子SS<3>与在第一读取操作期间储存的第三校验子SYN<3>执行逻辑异或运算来产生第三校验子SYN<3>,以及通过对第四选择校验子SS<4>与在第一读取操作期间储存的第四校验子SYN<4>执行逻辑异或运算来产生第四校验子SYN<4>。
参考图7,提供了校验子发生电路40a的另一个示例。校验子发生电路40a可以包括预校验子发生电路43和逻辑电路44。
预校验子发生电路43可以对在第一读取操作期间产生的第一读取数据RD1<1:5>中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。预校验子发生电路43可以对在第二读取操作期间产生的第二读取数据RD2<1:5>中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第一预校验子组。在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第二预校验子组。预校验子发生电路43可以使用与图5所示的预校验子发生电路41相同的电路来实施。因此,下文将省略对预校验子发生电路43的详细描述。
逻辑电路44可以将在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>储存为第一校验子至第四校验子SYN<1:4>。为了产生第一校验子至第四校验子SYN<1:4>,逻辑电路44可以改变在第一读取操作期间储存的第一校验子至第四校验子SYN<1:4>的阵列顺序,并对根据已改变的阵列顺序重新排列的第一校验子至第四校验子SYN<1:4>与在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>执行逻辑运算。逻辑电路44可以响应于复位信号RST而产生初始化的第一校验子至第四校验子SYN<1:4>。
更具体地,参考图8,当在第一读取操作期间列延迟信号YID被输出为具有逻辑“高”电平时,逻辑电路44可以将第一预校验子PS<1>储存为第一校验子SYN<1>,将第二预校验子PS<2>储存为第二校验子SYN<2>,将第三预校验子PS<3>储存为第三校验子SYN<3>,将第四预校验子PS<4>储存为第四校验子SYN<4>。
当在第二读取操作期间列延迟信号YID被产生为具有逻辑“高”电平时,逻辑电路44可以通过对第一预校验子与在第一读取操作期间储存的第四校验子SYN<4>PS<1>执行逻辑异或运算来产生第一校验子SYN<1>,通过对第二预校验子PS<2>与在第一读取操作期间储存的第三校验子SYN<3>执行逻辑异或运算来产生第二校验子SYN<2>,通过对第三预校验子PS<3>与在第一读取操作期间储存的第二校验子SYN<2>执行逻辑异或运算来产生第三校验子SYN<3>,以及通过对第四预校验子PS<4>与在第一读取操作期间储存的第一校验子SYN<1>执行逻辑异或运算来产生第四校验子SYN<4>。
下面将参考图9描述通过在根据一个实施例的半导体器件中执行的两次读取操作来减小用于提取矩阵的电路的面积的方法。图9所示的矩阵可以通过预校验子发生电路41建立。
首先,图9所示的全矩阵是用于产生第一校验子至第四校验子SYN<1:4>的矩阵,所述第一校验子至第四校验子SYN<1:4>用于校正六比特位的第一数据至第六数据D1~D6的错误。在图9所示的全矩阵中,第一至第三数据D1~D3可以被看作第一输出数据DO1<1:3>,而第四至第六数据D4~D6可以被看作第二输出数据DO2<1:3>。此外,全矩阵中的奇偶校验码P1和P2可以分别对应于第一输出奇偶校验码PO1<1:2>的第一比特位和第二比特位。此外,全矩阵中的奇偶校验码P3和P4可以分别对应于第二输出奇偶校验码PO2<1:2>的第一比特位和第二比特位。
用于产生第一校验子SYN<1>的行向量可以被确定为对第一奇偶校验码P1、第一数据D1、第二数据D2和第六数据D6执行逻辑异或运算。
用于产生第二校验子SYN<2>的行向量可以被确定为对第二奇偶校验码P2、第一数据D1、第三数据D3、第五数据D5和第六数据D6执行逻辑异或运算。
用于产生第三校验子SYN<3>的行向量可以被确定为对第三奇偶校验码P3、第二数据D2、第三数据D3、第四数据D4和第六数据D6执行逻辑异或运算。
用于产生第四校验子SYN<4>的行向量可以被确定为对第四奇偶校验码P4、第三数据D3、第四数据D4和第五数据D5执行逻辑异或运算。
第一校验子至第四校验子SYN<1:4>的逻辑电平组合可以包括关于第一至第六数据D1~D6和第一至第四奇偶校验码P1~P4中是否包含错误比特位的信息。通过示例而非限制的方式,当第一校验子至第四校验子SYN<1:4>被产生为具有与全矩阵的第五列向量的逻辑电平组合对应的逻辑电平组合“1,1,0,0”时,可以确定第一数据D1是错误数据。
接着,在图9中还示出了用于以两次读取操作产生用于校正六比特位数据D1~D6的错误的第一校验子到第四校验子SYN<1:4>的第一半矩阵和第二半矩阵。
用于产生第一校验子SYN<1>的行向量可以包括第一奇偶校验码P1、第一数据D1、第二数据D2和第六数据D6。用于产生第一校验子SYN<1>的行向量可以包括与第一读取操作有关的第一半矩阵的第一行向量和与第二读取操作有关的第二半矩阵的第一行向量。在这种情况下,第二半矩阵的第一行向量可以与第一半矩阵的第四行向量相同。
用于产生第二校验子SYN<2>的行向量可以包括第二奇偶校验码P2、第一数据D1、第三数据D3、第五数据D5和第六数据D6。用于产生第二校验子SYN<2>的行向量可以包括与第一读取操作有关的第一半矩阵的第二行向量和与第二读取操作有关的第二半矩阵的第二行向量。在这种情况下,第二半矩阵的第二行向量可以与第一半矩阵的第三行向量相同。
用于产生第三校验子SYN<3>的行向量可以包括第三奇偶校验码P3、第二数据D2、第三数据D3、第四数据D4和第六数据D6。用于产生第三校验子SYN<3>的行向量可以包括与第一读取操作有关的第一半矩阵的第三行向量和与第二读取操作相关的第二半矩阵的第三行向量。在这种情况下,第二半矩阵的第三行向量可以与第一半矩阵的第二行向量相同。
用于产生第四校验子SYN<4>的行向量可以包括第四奇偶校验码P4、第三数据D3、第四数据D4和第五数据D5。用于产生第四校验子SYN<4>的行向量可以包括与第一读取操作有关的第一半矩阵的第四行向量和与第二读取操作有关的第二半矩阵的第四行向量。在这种情况下,第二半矩阵的第四行向量可以与第一半矩阵的第一行向量相同。
根据描述,第一半矩阵的列向量可以相对于第二半矩阵的列向量具有对称配置。这可能导致用于设置矩阵的电路面积减少,所述矩阵用于在两次读取操作期间产生在数据错误校正中使用的校验子。
下文将参考图10结合一个示例来描述半导体器件的读取操作,所述示例其中使用两次读取操作(即,第一操作和第二操作)来产生校验子以校正错误数据。
根据一个实施例的读取操作如下。
当读取信号RD在时间点“T1”被输入到存储区域20时,响应于读取信号RD,存储区域20可以将储存在其中的输入数据DIN<1:6>中的一些(例如输入数据DIN<1:3>)输出为第一输出数据DO1<1:3>,以及可以将储存在其中的奇偶校验码PI<1:4>中的一些(例如奇偶校验码PI<1:2>)输出为第一输出奇偶校验码PO1<1:2>。
控制电路31的选择信号发生电路310可以响应于读取信号RD产生被使能为具有逻辑“低”电平的选择信号SEL。
在第二时间T2,控制电路31的复位信号发生电路320可以响应于在第一时间T1输入的读取信号RD和选择信号SEL来产生具有逻辑“高”电平的复位信号RST。
逻辑电路42可以响应于具有逻辑“高”电平的复位信号RST来产生被初始化为具有逻辑“低”电平的第一校验子至第四校验子SYN<1:4>。
在第三时间T3,控制电路31的列信号发生电路330可以响应于在第一时间T1输入的读取信号RD来产生列信号YI的第一脉冲。
数据合成电路32可以响应于列信号YI的第一脉冲而从第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>产生第一读取数据RD1<1:5>。
在第四时间T4,预校验子发生电路41可以对包含在第一读取数据RD1<1:5>中的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第一预校验子组。
在第五时间T5,控制电路31的列信号发生电路330可以将在第三时间T3产生的列信号YI的脉冲延迟,以产生列延迟信号YID的第一脉冲。
逻辑电路42可以响应于具有逻辑“低”电平的选择信号SEL和列延迟信号YID的第一脉冲,将第一预校验子至第四预校验子PS<1:4>储存为第一校验子至第四校验子SYN<1:4>。
在第六时间T6,控制电路31的选择信号发生电路310可以响应于在第五时间T5产生的列延迟信号YID的第一脉冲,产生被禁止为具有逻辑“高”电平的选择信号SEL。
在第七时间T7,控制电路31的列信号发生电路330可以响应于在时间点“T1”输入的读取信号RD产生列信号YI的第二脉冲。
数据合成电路32可以响应于列信号YI的第二脉冲而从第二输出数据DO2<1:3>和第二输出奇偶校验码PO2<1:2>产生第二读取数据RD2<1:5>。
在第八时间T8,预校验子发生电路41可以对包括在第二读取数据RD2<1:5>中的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第二预校验子组。
逻辑电路42可以响应于具有逻辑“高”电平的选择信号SEL来改变第一预校验子至第四预校验子PS<1:4>的阵列顺序。
在第九时间T9,控制电路31的列信号发生电路330可以将在第七时间T7产生的列信号YI的第二脉冲延迟,以产生列延迟信号YID的第二脉冲。
响应于列延迟信号YID的第二脉冲,逻辑电路42可以通过对在第八时间T8按已改变的阵列顺序重新排列的第一预校验子至第四预校验子PS<1:4>和在第五时间T5储存的第一校验子至第四校验子SYN<1:4>执行逻辑运算来产生第一校验子至第四校验子SYN<1:4>。
如上所述,半导体器件可以在两次读取操作期间调整产生用于校正数据错误的校验子的两个半矩阵,使得两个半矩阵的第一半矩阵的列向量相对于两个半矩阵的第二半矩阵的列向量是对称的。结果,可以减少为被配置为建立矩阵的电路分配的面积。
下面将参考图11描述根据一个实施例的错误校正方法。
错误校正方法可以包括第一步骤S1、第二步骤S2、第三步骤S3和第四步骤S4。
错误校正方法的第一步骤S1可以包括输入读取信号RD的步骤S11和执行第一读取操作的步骤S12。
步骤S11可以是读取信号RD被输入以产生列信号YI的第一脉冲的步骤。
步骤S12可以是在第一读取操作期间通过列信号YI的第一脉冲从自存储区域20输出的第一输出数据DO1<1:3>和第一输出奇偶校验码PO1<1:2>来产生第一读取数据RD1<1:5>的步骤。
第二步骤S2可以包括产生第一预校验子组的步骤S21和储存第一预校验子组的步骤S22。
步骤S21可以是产生包括关于第一读取数据RD1<1:5>的故障信息的第一预校验子至第四预校验子PS<1:4>的步骤。在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第一预校验子组。
步骤S22可以是将第一预校验子至第四预校验子PS<1:4>储存为第一校验子至第四校验子SYN<1:4>的步骤。
第三步骤S3可以包括执行第二读取操作的步骤S31、产生第二预校验子组的步骤S32、以及产生校验子的步骤S33。
步骤S31可以是在第二读取操作期间通过列信号YI的第二脉冲从自存储区域20输出的第二输出数据DO2<1:3>以及第二输出奇偶校验码PO2<1:2>来产生第二读取数据RD2<1:5>的步骤。
步骤S32可以包括:产生包括关于第二读取数据RD2<1:5>的故障信息的第一预校验子至第四预校验子PS<1:4>,以及调整第一预校验子至第四预校验子PS<1:4>的阵列顺序使得矩阵中的列向量彼此对称。在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第二预校验子组。
步骤S33可以包括对在步骤S22储存的第一校验子至第四校验子SYN<1:4>和根据已调整的阵列顺序重新排列的第一预校验子至第四预校验子PS<1:4>执行逻辑运算,以产生第一校验子至第四校验子SYN<1:4>。
第四步骤S4可以包括产生校正数据的步骤S41和输出校正数据的步骤S42。
步骤S41可以是根据第一校验子至第四校验子SYN<1:4>来校正第一输出数据DO1<1:3>和第二输出数据DO2<1:3>的错误数据以及合成校正后的第一输出数据DO1<1:3>和校正后的第二输出数据DO2<1:3>从而产生校正数据DC<1:6>的步骤。
步骤S42可以是输出校正数据DC<1:6>的步骤。
如上所述,根据一个实施例的错误校正方法可以调整在第二读取操作期间被确定用以产生用于校正数据错误的校验子的矩阵中的列向量的阵列顺序,使得在第一读取操作期间确定的矩阵中的列向量与在第二读取操作期间确定的矩阵中的列向量对称。结果,可以减小用于建立矩阵的电路所需的面积。
如图12所示,半导体器件可以包括存储区域60、列信号发生电路70、校验子发生电路80和数据校正电路90。
在写入操作期间,存储区域60可以储存输入数据DIN<1:6>和奇偶校验码PI<1:4>。在写入操作期间,响应于被输入到存储区域60的写入信号WT,存储区域60可以储存输入数据DIN<1:6>和奇偶校验码PI<1:4>。存储区域60可以响应于写入信号WT将输入数据DIN<1:6>中的输入数据DIN<1:3>储存到存储区域60的第一存储区域中。存储区域60可以响应于写入信号WT将输入数据DIN<1:6>中的输入数据DIN<4:6>储存到存储区域60的第二存储区域中。输入数据DIN<1:3>可以被确定为第一输入数据,以及输入数据DIN<4:6>可以被确定为第二输入数据。在存储区域60中第一存储区域和第二存储区域可以被布置为两个不同的存储空间。第一存储区域和第二存储区域可以被视为储存数据的存储区域。存储区域60可以响应于写入信号WT将奇偶校验码PI<1:4>中的奇偶校验码PI<1:2>储存到存储区域60的第三存储区域中。存储区域60可以响应于写入信号WT将奇偶校验码PI<1:4>中的奇偶校验码PI<3:4>储存到存储区域60的第四存储区域中。第三存储区域和第四存储区域可以在存储区域60中占据两个不同且独立的存储空间。第三存储区域和第四存储区域可以被确定为储存奇偶校验码的存储区域。
存储区域60可以在第一读取操作期间将储存在第一存储区域中的第一输入数据DIN<1:3>输出为第一输出数据DO1<1:3>。存储区域60可以响应于读取信号RD将储存在第一存储区域中的第一输入数据DIN<1:3>输出为第一输出数据DO1<1:3>。存储区域60可以在第二读取操作期间将储存在第二存储区域中的第二输入数据DIN<4:6>输出为第二输出数据DO2<1:3>。存储区域60可以响应于读取信号RD将储存在第二存储区域中的第二输入数据DIN<4:6>输出为第二输出数据DO2<1:3>。存储区域60可以响应于读取信号RD将储存在其中的奇偶校验码PI<1:4>输出为输出奇偶校验码PO<1:4>。两次读取操作,即,第一读取操作和第二读取操作,可以通过仅被激活或被使能一次的单个控制信号(即,输入到存储区域60的读取信号RD)来被依次执行。
列信号发生电路70可以产生包括第一脉冲和第二脉冲的列信号YI,该第一脉冲和第二脉冲响应于写入信号WT或读取信号RD而依次产生。列信号发生电路70可以产生响应于写入信号WT或读取信号RD而被使能的选择信号SEL。列信号发生电路70可以产生响应于写入信号WT或读取信号RD而被使能的复位信号RST。
在写入操作期间,校验子发生电路80可以从输入数据DIN<1:6>产生奇偶校验码PI<1:4>。校验子发生电路80可以在读取操作期间从第一输出数据DO1<1:3>、第二输出数据DO2<1:3>和输出奇偶校验码PO<1:4>产生包括第一校验子至第四校验子SYN<1:4>的校验子信号。校验子发生电路80可以利用图9所示的第一半矩阵和第二半矩阵从第一输出数据DO1<1:3>、第二输出数据DO2<1:3>和输出奇偶校验码PO<1:4>产生校验子信号SYN<1:4>。响应于选择信号SEL和复位信号RST,校验子发生电路80可以通过对第一输出数据DO1<1:3>的比特位数据、第二输出数据DO2<1:3>的比特位数据和输出奇偶校验码PO<1:4>的比特位数据执行逻辑运算来产生校验子信号SYN<1:4>。校验子信号SYN<1:4>可以通过错误校正码(ECC)电路使用汉明码来产生。汉明码可以通过矩阵来实施,用于校正数据错误。校验子信号SYN<1:4>可以包括关于第一输出数据DO1<1:3>和第二输出数据DO2<1:3>中的错误比特位的位置信息。
在第二读取操作期间,数据校正电路90可以利用校验子信号SYN<1:4>校正第一输出数据DO1<1:3>和第二输出数据DO2<1:3>的错误。数据校正电路90可以合并之前校正过的第一输出数据DO1<1:3>和第二输出数据DO2<1:3>,从而将合成的数据输出为校正数据DC<1:6>。
参考图13,列信号发生电路70可以包括写入脉冲发生电路71、读取脉冲发生电路72和控制电路73。
写入脉冲发生电路71可以产生包括第一脉冲和第二脉冲的写入列信号WT_YI,这两个脉冲响应于写入信号WT而依次产生。写入脉冲发生电路71可以产生响应于写入信号WT而被使能的写入选择信号WT_SEL和写入复位信号WT_RST。写入脉冲发生电路71可以响应于写入信号WT和写入列延迟信号(图14的WT_YID)来产生写入选择信号WT_SEL。写入脉冲发生电路71可以产生响应于写入信号WT而被使能以及响应于写入列延迟信号WT_YID而被禁止的写入选择信号WT_SEL。写入脉冲发生电路71可以响应于写入信号WT和写入选择信号WT_SEL来产生写入复位信号WT_RST。
读取脉冲发生电路72可以产生读取列信号RD_YI,其包括响应于读取信号RD而依次产生的第一脉冲和第二脉冲。读取脉冲发生电路72可以产生响应于读取信号RD而被使能的读取选择信号RD_SEL和读取复位信号RD_RST。读取脉冲发生电路72可以响应于读取信号RD和读取列延迟信号(图15的RD_YID)来产生读取选择信号RD_SEL。读取脉冲发生电路72可以产生响应于读取信号RD而被使能以及响应于读取列延迟信号RD_YID而被禁止的读取选择信号RD_SEL。读取脉冲发生电路72可以响应于读取信号RD和读取选择信号RD_SEL来产生读取复位信号RD_RST。
控制电路73可以响应于写入信号WT和读取信号RD而将写入列信号WT_YI和读取列信号RD_Y1中的一个输出为列信号YI。控制电路73可以响应于写入信号WT和读取信号RD将写入选择信号WT_SEL或读取选择信号RD_SEL输出为选择信号SEL。控制电路73可以响应于写入复位信号WT_RST或读取复位信号RD_RST而产生被使能的复位信号RST。当写入复位信号WT_RST或读取复位信号RD_RST被使能时,控制电路73可以产生被使能的复位信号RST。
参考图14,写入脉冲发生电路71可以包括写入选择信号发生电路710、写入复位信号发生电路720和写入列信号发生电路730。
写入选择信号发生电路710可以响应于写入信号WT和写入列延迟信号WT_YID来产生写入选择信号WT_SEL。写入选择信号发生电路710可以在具有逻辑“高”电平的写入信号WT被输入到写入选择信号发生电路710的时间产生具有逻辑“低”电平的写入选择信号WT_SEL。写入选择信号发生电路710可以在具有逻辑“高”电平的写入列延迟信号WT_YID被输入写入选择信号发生电路710的时间产生具有逻辑“高”电平的写入选择信号WT_SEL。
写入复位信号发生电路720可以响应于写入选择信号WT_SEL和写入信号WT而产生写入复位信号WT_RST。当写入选择信号WT_SEL具有逻辑“低”电平并且写入信号WT具有逻辑“高”电平时,写入复位信号发生电路720可以产生具有逻辑“高”电平的写入复位信号WT_RST。
写入列信号发生电路730可以包括第一脉冲信号发生电路731、写入列信号输出电路732和第一延迟电路733。
第一脉冲信号发生电路731可以产生响应于写入信号WT而被依次使能的第一写入脉冲信号WT_YIP1和第二写入脉冲信号WT_YIP2。当具有逻辑“高”电平的写入信号WT被输入到第一脉冲信号发生电路731时,第一脉冲信号发生电路731可以产生第一写入脉冲信号WT_YIP1以及第二写入脉冲信号WT_YIP2,所述第一写入脉冲信号WT_YIP1在预定时段期间被使能为具有逻辑“高”电平,第二写入脉冲信号WT_YIP2在第一写入脉冲信号WT_YIP1产生之后的另一预定时段期间被使能为具有逻辑“高”电平。
写入列信号输出电路732可以产生写入列信号WT_YI,其包括响应于第一写入脉冲信号WT_YIP1和第二写入脉冲信号WT_YIP2而产生的第一脉冲和第二脉冲。写入列信号输出电路732可以对第一写入脉冲信号WT_YIP1和第二写入脉冲信号WT_YIP2执行逻辑或运算,以产生写入列信号WT_YI。当第一写入脉冲信号WT_YIP1或第二写入脉冲信号WT_YIP2被产生为具有逻辑“高”电平时,写入列信号输出电路732可以产生具有逻辑“高”电平的写入列信号WT_YI。写入列信号输出电路732可以将第一写入脉冲信号WT_YIP1输出为写入列信号WT_YI的第一脉冲。写入列信号输出电路732可以将第二写入脉冲信号WT_YIP2输出为写入列信号WT_YI的第二脉冲。
第一延迟电路733可以将写入列信号WT_YI延迟以产生写入列延迟信号WT_YID。第一延迟电路733将写入列信号WT_YI延迟的延迟时间可以根据示例性的半导体器件来不同地确定。
如上所述,当写入信号WT具有逻辑“高”电平时,写入脉冲发生电路71可以产生具有逻辑“低”电平的写入选择信号WT_SEL,以及写入脉冲发生电路71可以在写入列延迟信号WT_YID具有逻辑“高”电平的时间产生具有逻辑“高”电平的写入选择信号WT_SEL。当写入选择信号WT_SEL具有逻辑“低”电平并且写入信号WT具有逻辑“高”电平时,写入脉冲发生电路71可以产生具有逻辑“高”电平的写入复位信号WT_RST。写入脉冲发生电路71可以产生写入列信号WT_YI,其包括当写入信号WT具有逻辑“高”电平时而被依次产生的第一脉冲和第二脉冲。
参考图15,读取脉冲发生电路72可以包括读取选择信号发生电路740、读取复位信号发生电路750和读取列信号发生电路760。
读取选择信号发生电路740可以响应于读取信号RD和读取列延迟信号RD_YID来产生读取选择信号RD_SEL。读取选择信号发生电路740可以在具有逻辑“高”电平的读取信号RD被输入到读取选择信号发生电路740的时间产生具有逻辑“低”电平的读取选择信号RD_SEL。读取选择信号发生电路740可以在具有逻辑“高”电平的读取列延迟信号RD_YID被输入到读取选择信号发生电路740的时间产生具有逻辑“高”电平的读取选择信号RD_SEL。
读取复位信号发生电路750可以响应于读取选择信号RD_SEL和读取信号RD来产生读取复位信号RD_RST。当读取选择信号RD_SEL具有逻辑“低”电平而读取信号RD具有逻辑“高”电平,读取复位信号发生电路750可以产生具有逻辑“高”电平的读取复位信号RD_RST。
读取列信号发生电路760可以包括第二脉冲信号发生电路761、读取列信号输出电路762和第二延迟电路763。
第二脉冲信号发生电路761可以产生响应于读取信号RD而被依次使能的第一读取脉冲信号RD_YIP1和第二读取脉冲信号RD_YIP2。当具有逻辑“高”电平的读取信号RD被输入到第二脉冲信号发生电路761时,第二脉冲信号发生电路761可以产生第一读取脉冲信号RD_YIP1和第二读取脉冲信号RD_YIP2,所述第一读取脉冲信号RD_YIP1在预定时段期间被使能为具有逻辑“高”电平,所述第二读取脉冲信号RD_YIP2在第一读取脉冲信号RD_YIP1产生之后在另一预定时段期间被使能为具有逻辑“高”电平。
读取列信号输出电路762可以产生读取列信号RD_YI,其包括响应于第一读取脉冲信号RD_YIP1和第二读取脉冲信号RD_YIP2而产生的第一脉冲和第二脉冲。读取列信号输出电路762可以对第一读取脉冲信号RD_YIP1和第二读取脉冲信号RD_YIP2执行逻辑或操作,以产生读取列信号RD_YI。当第一读取脉冲信号RD_YIP1或第二读取脉冲信号RD_YIP2处于逻辑“高”电平时,读取列信号输出电路762可以产生具有逻辑“高”电平的读取列信号RD_YI。读取列信号输出电路762可以将第一读取脉冲信号RD_YIP1输出为读取列信号RD_YI的第一脉冲。读取列信号输出电路762可以将第二读取脉冲信号RD_YIP2输出为读取列信号RD_YI的第二脉冲。
第二延迟电路763可以将读取列信号RD_YI延迟以产生读取列延迟信号RD_YID。第二延迟电路763将读取列信号RD_YI延迟的延迟时间可以根据示例性的半导体器件来不同地确定。
如上所述,当读取信号RD具有逻辑“高”电平时,读取脉冲发生电路72可以产生具有逻辑“低”电平的读取选择信号RD_SEL,以及读取脉冲发生电路72可以在读取列延迟信号RD_YID具有逻辑“高”电平的时间产生具有逻辑“高”电平的读取选择信号RD_SEL。当读取选择信号RD_SEL具有逻辑“低”电平并且读取信号RD具有逻辑“高”电平时,读取脉冲发生电路72可以产生具有逻辑“高”电平的读取复位信号RD_RST。读取脉冲发生电路72可以产生读取列信号RD_YI,其包括当读取信号RD具有逻辑“高”电平时被依次产生的第一脉冲和第二脉冲。
参考图16,控制电路73可以包括控制信号发生电路770、选择传输电路780和复位信号发生电路790。
控制信号发生电路770可以产生响应于写入信号WT和读取信号RD而被使能的控制信号CON。控制信号发生电路770可以在具有逻辑“高”电平的写入信号WT被输入到控制信号发生电路770的时间产生具有逻辑“高”电平的控制信号CON。控制信号发生电路770可以在具有逻辑“高”电平的读取信号RD被输入到控制信号发生电路770的时间,产生具有逻辑“低”电平的控制信号CON。
选择传输电路780可以响应于控制信号CON而将写入列信号WT_YI或读取列信号RD_YI输出为列信号YI。当控制信号CON具有逻辑“高”电平时,选择传输电路780可以将写入列信号WT_YI输出为列信号YI。当控制信号CON具有逻辑“低”电平时,选择传输电路780可以将读取列信号RD_YI输出为列信号YI。选择传输电路780可以响应于控制信号CON而将写入选择信号WT_SEL或读取选择信号RD_SEL输出为选择信号SEL。当控制信号CON具有逻辑“高”电平时,选择传输电路780可以将写入选择信号WT_SEL输出为选择信号SEL。当控制信号CON具有逻辑“低”电平时,选择传输电路780可以将读取选择信号RD_SEL输出为选择信号SEL。
复位信号发生电路790可以响应于写入复位信号WT_RST或读取复位信号RD_RST而产生被使能的复位信号RST。当写入复位信号WT_RST或读取复位信号RD_RST中的任何一个具有逻辑“高”电平时,复位信号发生电路790可以产生被使能为具有逻辑“高”电平的复位信号RST。
参考图17,校验子发生电路80可以包括预校验子发生电路81和逻辑电路82。
预校验子发生电路81可以对在第一读取操作期间产生的第一输出数据DO1<1:3>中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。预校验子发生电路81可以对在第二读取操作期间产生的第二输出数据DO2<1:3>中的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子PS<1:4>。在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第一预校验子组。在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>可以被确定为第二预校验子组。第一预校验子至第四预校验子PS<1:4>可以被认为是矩阵的列向量。预校验子发生电路81可以提供矩阵以产生在示例性半导体器件中使用的校验子。由于本实施例中使用的矩阵与图9中所示的矩阵相同,因此下文将省略在本实施例中使用的矩阵的详细描述。
逻辑电路82可以响应于选择信号SEL而将在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>储存为第一校验子至第四校验子SYN<1:4>。当选择信号SEL具有逻辑“低”电平时,逻辑电路82可以将在第一读取操作期间产生的第一预校验子至第四预校验子PS<1:4>储存为第一校验子至第四校验子SYN<1:4>。逻辑电路82可以响应于选择信号SEL改变在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>的阵列顺序。当选择信号SEL具有逻辑“高”电平时,逻辑电路82可以改变在第二读取操作期间产生的第一预校验子至第四预校验子PS<1:4>的阵列顺序。为了产生第一校验子至第四校验子SYN<1:4>,逻辑电路82可以对在第一读取操作期间产生的奇偶校验码PI<1:4>(包括第一至第四奇偶校验码PI<1:4>)和在第二读取操作期间产生的输出奇偶校验码PO<1:4>(包括第一至第四输出奇偶校验码PO<1:4>)执行逻辑运算。逻辑电路82可以产生响应于复位信号RST而被初始化的第一校验子至第四校验子SYN<1:4>。
下文将参考图18描述预校验子发生电路81的配置和操作。
预校验子发生电路81可以以多个异或门EXOR1、EXOR82、EXOR83以及多个反相器IV81、VI82的形成来实施。
如下,在第一读取操作期间,可以产生第一预校验子至第四预校验子PS<1:4>。
预校验子发生电路81可以通过异或门EXOR81对第一输出数据DO1<1:3>中的第一比特位数据DO1<1>和第二比特位数据DO1<2>执行逻辑异或运算,以产生第一预校验子PS<1>。
预校验子发生电路81可以通过异或门EXOR82对第一输出数据DO1<1:3>中的第一比特位数据DO1<1>和第三比特位数据DO1<3>执行逻辑异或运算,以产生第二预校验子PS<2>。
预校验子发生电路81可以通过异或门EXOR83对第一输出数据DO1<1:3>中的第二比特位数据DO1<2>和第三比特位数据DO1<3>执行逻辑异或运算,以产生第三预校验子PS<3>。
预校验子发生电路81可以通过使用反相器IV81、IV82对第一输出数据DO1<1:3>中包含的第三比特位数据DO1<3>进行缓冲,来产生第四预校验子PS<4>。
如下,在第二读取操作期间,可以产生第一预校验子至第四预校验子PS<1:4>。
预校验子发生电路81可以通过经由异或门EXOR81对第二输出数据DO2<1:3>中的第一比特位数据DO2<1>和第二比特位数据DO2<2>执行逻辑异或运算,来产生第一预校验子PS<1>。
预校验子发生电路81可以通过经由异或门EXOR82对第二输出数据DO2<1:3>中的第一比特位数据DO2<1>和第三比特位数据DO2<3>执行逻辑异或运算来产生第二预校验子PS<2>。
预校验子发生电路81可以使用异或门EXOR83对第二输出数据DO2<1:3>中的第二比特位数据DO2<2>和第三比特位数据DO2<3>执行逻辑异或运算,以产生第三预校验子PS<3>。
预校验子发生电路81可以通过使用反相器IV81、IV82对第二输出数据DO2<1:3>中包含的第三比特位数据DO2<3>进行缓冲来产生预校验子PS<4>。
下面将参考图19描述逻辑电路82的配置和操作。
逻辑电路82可以包括选择校验子发生电路821、奇偶校验码储存电路822和校验子输出电路823。
选择校验子发生电路821可以响应于选择信号SEL而分别将第一预校验子至第四预校验子PS<1:4>输出为第一选择校验子至第四选择校验子SS<1:4>,或者改变第一预校验子至第四预校验子PS<1:4>的阵列顺序,从而将按已改变的阵列顺序重新排列的第一预校验子至第四预校验子PS<1:4>分别输出为第一选择校验子至第四选择校验子SS<1:4>。
更具体地,当选择信号SEL被产生为具有逻辑“低”电平,选择校验子发生电路821可以将第一预校验子PS<1>输出为第一选择校验子SS<1>,将第二预校验子PS<2>输出为第二选择校验子SS<2>,将第三预校验子PS<3>输出为第三选择校验子SS<3>,将第四预校验子PS<4>输出为第四选择校验子SS<4>。此外,当选择信号SEL被产生为具有逻辑“高”电平时,选择校验子发生电路821可以将第一预校验子PS<1>输出为第四选择校验子SS<4>,将第二预校验子PS<2>输出为第三选择校验子SS>3>,将第三预校验子PS<3>输出为第二选择校验子SS<2>,将第四预校验子PS<4>输出为第一选择校验子SS<1>。
奇偶校验码储存电路822可以产生响应于复位信号RST而被初始化的第一奇偶校验码至第四奇偶校验码PI<1:4>。当复位信号RST具有逻辑“高”电平时,奇偶校验码储存电路822可以产生被初始化为具有逻辑“低”电平的第一奇偶校验码至第四奇偶校验码PI<1:4>。响应于列信号YI,奇偶校验码储存电路822可以将在第一读取操作期间产生的第一选择校验子至第四选择校验子SS<1:4>储存为第一奇偶校验码至第四奇偶校验码PI<1:4>。奇偶校验码储存电路822可以通过对响应于列信号YI在第一读取操作期间储存的第一奇偶校验码至第四奇偶校验码PI<1:4>和在第二读取操作期间产生的第一选择校验子至第四选择校验子SS<1:4>执行逻辑运算来产生第一奇偶校验码至第四奇偶校验码PI<1:4>。
更具体地,当列信号YI在第一读操作期间具有逻辑“高”电平时,奇偶校验码储存电路822可以将第一选择校验子SS<1>分配为第一奇偶校验码PI<1>,将第二选择校验子SS<2>分配为第二奇偶校验码PI<2>,将第三选择校验子SS<3>分配为第三奇偶校验码PI<3>,以及将第四选择校验子SS<4>分配为第四奇偶校验码PI<4>。
当在第二读取操作期间列信号YI被产生为具有逻辑“高”电平时,奇偶校验码储存电路822可以通过对第一选择校验子SS<1>和在第一读取操作期间储存的第一奇偶校验码PI<1>和执行逻辑异或运算来产生第一奇偶校验码PI<1>,可以通过对第二选择校验子SS<2>和在第一读取操作期间储存的第二奇偶校验码PI<2>执行逻辑异或运算来产生第二奇偶校验码PI<2>,可以通过对第三选择校验子SS<3>和在第一读取操作期间储存的第三奇偶校验码PI<3>执行逻辑异或运算来产生第三奇偶校验码PI<3>,以及可以通过对第四选择校验子SS<4>和在第一读取操作期间储存的第四奇偶校验码PI<4>执行逻辑异或运算来产生第四奇偶校验码PI<4>。
校验子输出电路823可以对第一奇偶校验码PI<1>和第一输出奇偶校验码PO<1>执行逻辑异或运算,以产生第一校验子SYN<1>。校验子输出电路823可以通过对第二奇偶校验码PI<2>和第二输出奇偶校验码PO<2>执行逻辑异或运算来产生第二校验子SYN<2>。校验子输出电路823可以对第三奇偶校验码PI<3>和第三输出奇偶校验码PO<3>执行逻辑异或运算,以产生第三校验子SYN<3>。此外,校验子输出电路823可以通过对第四奇偶校验码PI<4>和第四输出奇偶校验码PO<4>执行逻辑异或运算来产生第四校验子SYN<4>。
如上所述,根据另一实施例的半导体器件可以在两次读取操作期间调整产生用于校正的数据错误的校验子的两个半矩阵,使得两个半矩阵的第一半矩阵的列向量与两个半矩阵的第二半矩阵的列向量对称。结果,可以减小为建立矩阵的电路分配的面积。
参考图1至图19所描述的半导体器件中的至少一个可以被应用于包括存储系统、图形系统、计算系统或移动系统等的电子设备。通过示例而非限制的方式,如图20所示,电子系统1000可以包括数据储存电路1001、存储器控制器1002、缓冲存储器1003和输入/输出(I/O)接口1004。
数据储存电路1001可以响应于从存储器控制器1002输出的控制信号储存从存储器控制器1002传递的数据,或读取并提供储存的数据到存储器控制器1002。数据储存电路1001可以包括图1和图12中所示的半导体器件中的至少一个。同时,数据储存电路1001可以包括非易失性存储器,非易失性存储器即使在其电源中断或不提供电源时也可以保留其储存的数据。非易失性存储器可以是闪存,例如NOR型闪存或NAND型闪存、相变随机存取存储器(PRAM)、电阻随机存取存储器(RRAM)、自旋转移转矩随机存取存储器(STRAM)或磁性随机存取存储器(MRAM)等。
存储器控制器1002可以通过I/O接口1004接收从外部设备(例如主机)传送的命令,并对从主机输出的命令进行解码,以控制将数据输入到数据储存电路1001或缓冲存储器1003中的操作、或者将储存在数据储存电路1001或缓冲存储器1003中的数据输出的操作。虽然图20示出了具有单个单元或模块的存储器控制器1002,但是存储器控制器1002可以包括多个控制器,例如,用于控制包括非易失性存储器的数据储存电路1001的一个控制器和用于控制包括易失性存储器的缓冲存储器1003的另一控制器。
缓冲存储器1003可以暂时储存由存储器控制器1002处理的数据。也就是说,缓冲存储器1003可以暂时储存从数据储存电路1001输出的数据或传送到数据储存电路1001中的数据。缓冲存储器1003可以根据控制信号储存从存储器控制器1002传送的数据。缓冲存储器1003可以读取储存的数据并将其输出到存储器控制器1002。缓冲存储器1003可以包括易失性存储器,例如动态随机存取存储器(DRAM)、移动DRAM或静态随机存取存储器(SRAM)等。
I/O接口1004可以将存储器控制器1002物理地和电气地连接到外部设备(即主机)。因此,存储器控制器1002可以通过I/O接口1004从外部设备(即主机)接收控制信号和/或数据,并通过I/O接口1004将由存储器控制器1002产生的数据输出到外部设备(即主机)。也就是说,电子系统1000可以通过I/O接口1004与主机通信。I/O接口1004可以被设计或用于各种接口协议中的任何一种,例如通用串行总线(USB)驱动器、多媒体卡(MMC)、外围组件互连快件(PCI-E)、串行附加SCSI(SAS)、串行AT附件(SATA)、并行AT附件(PATA)、小型计算机系统接口(SCSI)、增强型小设备接口(ESDI)和集成驱动电子器件(IDE)。
电子系统1000可以用作主机的辅助储存设备或外部储存设备。电子系统1000可以包括固态盘(SSD)、USB驱动器、安全数字(SD)卡、迷你安全数字(mSD)卡、微型安全数字(MicroSD)卡、安全数字高容量(SDHC)卡、存储棒卡、智能媒体(SM)卡、多媒体卡(MMC)、嵌入式多媒体卡(EMMC)或紧凑型闪存(CF)卡等。
参考图21,根据另一实施例的电子系统2000可以包括主机2001、存储器控制器2002和数据储存电路2003。
主机2001可以向存储器控制器2002输出请求信号和数据,以访问或退出数据储存电路2003。存储器控制器2002可以响应于请求信号向数据储存电路2003提供数据、数据选通信号、命令、地址和时钟信号,并且数据储存电路2003可以响应于命令执行写入操作或读取操作。主机2001可以将数据传送到存储器控制器2002,以在数据储存电路2003中写入数据。此外,主机2001可以通过存储器控制器2002从数据储存电路2003接收数据。主机2001可以包括被配置为使用错误校正码(ECC)方案来校正数据的错误的电路。
存储器控制器2002可以作为将主机2001连接到数据储存电路2003的接口,用于主机2001与数据储存电路2003之间的通信。存储器控制器2002可以接收来自主机2001的请求信号和数据,以及产生数据、数据选通信号、命令、地址和时钟信号并将其提供给数据储存电路2003,以便控制数据储存电路2003的操作。此外,存储器控制器2002可以将从数据储存电路2003输出的数据提供给主机2001。
数据储存电路2003可以包括多个存储器。数据储存电路2003可以从存储器控制器2002接收数据、数据选通信号、命令、地址和时钟信号以执行写入操作或读取操作。包括在数据储存电路2003中的每个存储器可以包括使用错误校正码(ECC)方案来校正数据的错误的电路。数据储存电路2003可以包括图1至图12中所示的半导体器件中的至少一个。
在一些实施例中,电子系统2000可以被实施为选择性地操作包括在主机2001和数据储存电路2003中的ECC电路中的一个。或者,电子系统2000可以被实施为同时操作包括在主机2001和数据储存电路2003中的所有ECC电路。通过示例而非限制的方式,主机2001和存储器控制器2002可以在单个芯片中实施。存储器控制器2002和数据储存电路2003可以在单个芯片中实施。
虽然已经结合目前被认为是最实际和最优选的示例描述了本公开,但是应当理解,本发明不限于所公开的示例,而是相反,旨在涵盖包括在所附权利要求的精神和范围内的各种修改以及等同的部置,所附权利要求的范围应与最广泛的解释一致,以便包括法律允许的所有此类修改和等同结构。

Claims (28)

1.一种半导体器件,包括:
读取数据发生电路,其被配置为:从在第一读取操作期间产生的第一输出数据和第一输出奇偶校验码来产生第一读取数据,以及从在第二读取操作期间产生的第二输出数据和第二输出奇偶校验码来产生第二读取数据;
校验子发生电路,其被配置为至少基于所述第一读取数据和所述第二读取数据来产生校验子信号,
其中,所述校验子发生电路产生所述校验子信号使得与所述第一读取数据相对应的第一半矩阵的列向量对称于与所述第二读取数据相对应的第二半矩阵的列向量,以及
其中所述第一读取操作和所述第二读取操作通过输入所述半导体器件的具有单个激活脉冲的单个读取信号来被依次执行。
2.根据权利要求1所述的半导体器件,
其中,所述第一输出数据从第一存储区域输出,
所述第二输出数据从第二存储区域输出,
所述第一输出奇偶校验码从第三存储区域输出,以及
所述第二输出奇偶校验码从第四存储区域输出,以及
其中,所述第一存储区域、所述第二存储区域、所述第三存储区域和所述第四存储区域是独立的。
3.根据权利要求1所述的半导体器件,其中,所述读取数据发生电路包括:
控制电路,其被配置为产生列信号,所述列信号包括响应于读取信号而依次产生的第一脉冲和第二脉冲;以及被配置为产生选择信号,所述选择信号响应于所述读取信号而被使能并且响应于列延迟信号而被禁止;
数据合成电路,其被配置为响应于所述列信号的所述第一脉冲而从所述第一输出数据和所述第一输出奇偶校验码产生所述第一读取数据,以及被配置为响应于所述列信号的所述第二脉冲而从所述第二输出数据和所述第二输出奇偶校验码产生所述第二读取数据。
4.根据权利要求3所述的半导体器件,其中,所述控制电路包括:
选择信号发生电路,其被配置为产生响应于所述读取信号而被使能并且响应于所述列延迟信号而被禁止的所述选择信号;
复位信号发生电路,其被配置为:当选择信号被使能时响应于所述读取信号而产生在预定时段期间被使能的复位信号;
列信号发生电路,其被配置为产生包括响应于所述读取信号而依次产生的所述第一脉冲和所述第二脉冲的所述列信号。
5.根据权利要求2所述的半导体器件,
其中,所述校验子信号包括第一校验子至第四校验子;以及
其中,所述校验子发生电路包括:
预校验子发生电路,其被配置为对在所述第一读取操作期间产生的所述第一读取数据中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子;以及被配置为对在所述第二读取操作期间产生的所述第二读取数据中的数据比特位执行逻辑运算,以产生第一预校验子到第四预校验子;
逻辑电路,其被配置为响应于选择信号而将在所述第一读取操作期间产生的第一预校验子至第四预校验子储存为所述第一校验子至第四校验子,以及被配置为:通过响应于选择信号而改变在所述第二读取操作期间产生的第一预校验子至第四预校验子的阵列顺序、并通过对根据已改变的阵列顺序而重新排列的第一预校验子至第四预校验子和在第一读取操作期间产生的第一校验子至第四校验子执行逻辑运算来产生第一校验子至第四校验子。
6.根据权利要求5所述的半导体器件,其中,第一校验子至第四校验子通过所述第一半矩阵或所述第二半矩阵的列向量来确定。
7.根据权利要求5所述的半导体器件,其中,所述逻辑电路通过对在所述第一读取操作期间产生的第一预校验子以及在所述第二读取操作期间产生的第四预校验子执行逻辑运算来产生所述第一校验子,通过对在所述第一读取操作期间产生的第二预校验子以及在所述第二读取操作期间产生的第三预校验子执行逻辑运算来产生第二校验子,通过对在所述第一读取操作期间产生的第三预校验子以及在所述第二读取操作期间产生的第二预校验子执行逻辑运算来产生第三校验子,以及通过对在所述第一读取操作期间产生的第四预校验子以及在所述第二读取操作期间产生的第一预校验子执行逻辑运算来产生所述第四校验子。
8.根据权利要求5所述的半导体器件,其中,所述逻辑电路包括:
选择校验子发生电路,其被配置为当所述选择信号被使能时将第一预校验子至第四预校验子输出为第一选择校验子至第四选择校验子;以及被配置为当所述选择信号被禁止时改变第一预校验子至第四预校验子的阵列顺序,以将根据已改变的阵列顺序而重新排列的第一预校验子至第四预校验子输出为第一选择校验子至第四选择校验子;以及
校验子储存电路,其被配置为响应于列延迟信号而将在所述第一读取操作期间产生的第一选择校验子至第四选择校验子储存为第一校验子至第四校验子,以及被配置为通过对在所述第二读取操作期间产生的第一选择校验子至第四选择校验子和响应于所述列延迟信号而储存的第一校验子至第四校验子执行逻辑运算来产生第一校验子至第四校验子。
9.根据权利要求1所述的半导体器件,
其中,所述校验子信号包括第一校验子至第四校验子;以及
其中,所述校验子发生电路包括:
预校验子发生电路,其被配置为对在所述第一读取操作期间产生的所述第一读取数据中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子;以及被配置为对在所述第二读取操作期间产生的所述第二读取数据中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子;
逻辑电路,其被配置为将在所述第一读取操作期间产生的第一预校验子至第四预校验子储存为第一校验子至第四校验子,以及被配置为通过对在所述第二读取操作期间产生的第一预校验子至第四预校验子和在所述第一读取操作期间产生的第一校验子至第四校验子执行逻辑运算来产生第一校验子至第四校验子。
10.根据权利要求9所述的半导体器件,其中,所述逻辑电路被配置为通过改变在所述第一读取操作期间储存的第一校验子至第四校验子的阵列顺序并对根据已改变的阵列顺序而重新排列的第一校验子至第四校验子和在所述第二读取操作期间产生的第一预校验子至第四预校验子执行逻辑运算来产第一校验子至第四校验子。
11.根据权利要求1所述的半导体器件,还包括:
奇偶校验码发生电路,其被配置为在写入操作期间产生包括与输入数据有关的错误信息的奇偶校验码;
存储区域,其被配置为在所述写入操作期间储存所述输入数据和所述奇偶校验码。
12.根据权利要求11所述的半导体器件,
其中,所述存储区域被配置为:在所述第一读取操作期间,将储存的输入数据的一部分输出为所述第一输出数据,以及将储存的奇偶校验码的一部分输出为所述第一输出奇偶校验码;以及
其中,所述存储区域被配置为:在所述第二读取操作期间,将所述储存的输入数据的剩余部分输出为所述第二输出数据,以及将所述储存的奇偶校验码的剩余部分输出为所述第二输出奇偶校验码。
13.根据权利要求1所述的半导体器件,还包括数据校正电路,所述数据校正电路被配置为在所述第二读取操作期间利用所述校验子信号来校正所述第一输出数据和所述第二输出数据的错误;以及被配置为将校正后的第一输出数据和第二输出数据合成,以将合成的数据输出为校正数据。
14.一种校正半导体器件的数据错误的方法,所述方法包括:
第一步骤:从在第一读取操作期间提供的第一输出数据和第一输出奇偶校验码产生第一读取数据;
第二步骤:产生包括关于所述第一读取数据的错误信息的第一预校验子组以储存所述第一预校验子组;以及
第三步骤:从在第二读取操作期间提供的第二输出数据和第二输出奇偶校验码产生第二读取数据,产生包括关于所述第二读取数据的错误信息的第二预校验子组,以及通过对所述第一预校验子组和所述第二预校验子组执行逻辑运算来产生校验子信号,
其中,所述第一预校验子组和所述第二预校验子组被产生为对称的,以及
其中,所述第一读取操作和所述第二读取操作通过输入到所述半导体器件的具有单个激活脉冲的单个读取信号来被依次执行。
15.根据权利要求14所述的方法,
其中,所述第一输出数据从第一存储区域输出,
所述第二输出数据从第二存储区域输出,
所述第一输出奇偶校验码从第三存储区域输出,以及
所述第二输出奇偶校验码从第四存储区域输出,以及
其中,所述第一存储区域、所述第二存储区域、所述第三存储区域和所述第四存储区域是独立的。
16.根据权利要求14所述的方法,
其中,所述第一预校验子组包括在所述第一读取操作期间产生的第一预校验子至第四预校验子,所述第二预校验子组包括在所述第二读取操作期间产生的第一预校验子至第四预校验子,以及所述校验子信号包括第一校验子至第四校验子;
其中,所述第三步骤包括:
通过对在所述第一读取操作期间从所述第一读取数据产生的第一预校验子以及在所述第二读取操作期间从所述第二读取数据产生的第四预校验子执行逻辑运算来产生所述第一校验子的步骤;
通过对在所述第一读取操作期间从所述第一读取数据产生的第二预校验子以及在所述第二读取操作期间从所述第二读取数据产生的第三预校验子执行逻辑运算来产生第二校验子的步骤;
通过对在所述第一读取操作期间从所述第一读取数据产生的第三预校验子以及在所述第二读取操作期间从所述第二读取数据产生的第二预校验子来产生第三校验子的步骤;以及
通过对在所述第一读取操作期间从所述第一读取数据产生的第四预校验子以及在所述第二读取操作期间从所述第二读取数据产生的第一预校验子来产生所述第四校验子的步骤。
17.根据权利要求16所述的方法,其中,所述第一校验子至第四校验子通过矩阵的列向量来设置,所述矩阵用于对包含在所述第一读取数据和所述第二读取数据中的数据比特位执行逻辑运算。
18.根据权利要求14所述的方法,还包括:
在写入操作期间产生包括关于输入数据的错误信息的奇偶校验码以储存所述输入数据和所述奇偶校验码的步骤;
利用所述校验子信号校正从所述输入数据产生的输出数据的错误以将校正后的输出数据输出为校正数据的步骤。
19.根据权利要求18所述的方法,
其中,在执行所述第一读取操作的同时,在所述写入操作期间储存的所述输入数据的一部分被输出为所述第一输出数据,以及在所述写入操作期间储存的所述奇偶校验码的一部分被输出为所述第一输出奇偶校验码;以及
其中,在执行所述第二读取操作的同时,在所述写入操作期间储存的所述输入数据的剩余部分被输出为所述第二输出数据,以及在所述写入操作期间储存的所述奇偶校验码的剩余部分被输出为所述第二输出奇偶校验码。
20.一种半导体器件,包括:
存储区域,其被配置为在写入操作期间储存输入数据和奇偶校验码,被配置为在第一读取操作期间将所述输入数据的第一输入数据输出为第一输出数据并将所述奇偶校验码输出为输出奇偶校验码,以及被配置为在第二读取操作期间将所述输入数据的第二输入数据输出为第二输出数据并将所述奇偶校验码输出为输出奇偶校验码;以及
校验子发生电路,其被配置为在所述写入操作期间从所述输入数据产生所述奇偶校验码,被配置为通过在所述第一读取操作期间对所述第一输出数据和所述输出奇偶校验码执行逻辑运算来产生奇偶校验码,以及被配置为通过在所述第二读取操作期间对在所述第一读取操作期间产生的奇偶校验码、所述第二输出数据和输出奇偶校验码执行逻辑运算来产生校验子信号;
其中,所述校验子发生电路产生所述校验子信号使得与所述第一输出数据相对应的第一半矩阵的列向量对称于与所述第二输出数据相对应的第二半矩阵的列向量,
其中,所述第一读取操作和所述第二读取操作通过输入所述半导体器件的具有单个激活脉冲的单个读取信号来被依次执行。
21.根据权利要求20所述的半导体器件,其中,所述奇偶校验码是包括关于所述输入数据的错误信息的信号。
22.根据权利要求20所述的半导体器件,其中,所述第一输出数据和所述第二输出数据分别从第一存储区域和第二存储区域输出。
23.根据权利要求20所述的半导体器件,
其中,所述存储区域被配置为:在执行所述写入操作的同时,将所述输入数据的一部分储存为所述第一输入数据,将所述输入数据的剩余部分储存为所述第二输入数据,以及储存所述奇偶校验码;
其中,所述存储区域被配置为:在执行所述第一读取操作的同时,将储存的第一输入数据输出为所述第一输出数据,以及将储存的奇偶校验码输出为输出奇偶校验码;以及
其中,所述存储区域被配置为:在执行所述第二读取操作的同时,将储存的第二输入数据输出为所述第二输出数据,以及将储存的奇偶校验码输出为输出奇偶校验码。
24.根据权利要求20所述的半导体器件,还包括:
列信号发生电路,其被配置为产生列信号,所述列信号包括响应于写入信号或读取信号而被依次产生的第一脉冲和第二脉冲;以及被配置为产生选择信号和复位信号,所述选择信号和复位信号响应于所述写入信号或所述读取信号而被使能;以及
数据校正电路,其被配置为在所述第二读取操作期间利用所述校验子信号来校正所述第一输出数据和所述第二输出数据的错误;以及被配置为将校正后的第一输出数据和第二输出数据合成,以将合成的数据输出为校正数据。
25.根据权利要求24所述的半导体器件,其中,所述列信号发生电路包括:
写入脉冲发生电路,其被配置为产生写入列信号,所述写入列信号包括响应于所述写入信号而被依次产生的第一脉冲和第二脉冲;以及被配置为产生写入选择信号和写入复位信号,所述写入选择信号和写入复位信号响应于所述写入信号而被使能;
读取脉冲发生电路,其被配置为产生读取列信号,所述读取列信号包括响应于所述读取信号而被依次产生的第一脉冲和第二脉冲;以及被配置为产生读取选择信号和读取复位信号,所述读取选择信号和读取复位信号响应于所述读取信号而被使能;
控制电路,其被配置为:响应于所述写入信号和所述读取信号而将所述写入列信号和所述读取列信号中的一个输出为所述列信号以及将所述写入选择信号和所述读取选择信号中的一个输出为所述选择信号;以及被配置为产生响应于所述写入复位信号或所述读取复位信号而被使能的所述复位信号。
26.根据权利要求20所述的半导体器件,
其中,所述校验子信号包括第一校验子至第四校验子;
其中,所述输出奇偶校验码包括第一输出奇偶校验码至第四输出奇偶校验码;以及
其中,所述校验子发生电路包括:
预校验子发生电路,其被配置为对在所述第一读取操作期间产生的所述第一输出数据中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子;以及被配置为对在所述第二读取操作期间产生的所述第二输出数据中包含的数据比特位执行逻辑运算,以产生第一预校验子至第四预校验子;以及
逻辑电路,其被配置为响应于选择信号而将在所述第一读取操作期间产生的第一预校验子至第四预校验子储存为在奇偶校验码中包含的第一奇偶校验码至第四奇偶校验码;被配置为改变在所述第二读取操作期间产生的第一预校验子至第四预校验子的阵列顺序,以将按已改变的阵列顺序而重新安排的第一预校验子至第四预校验子储存为第一奇偶校验码至第四奇偶校验码;以及被配置为通过对所述第一奇偶校验码至第四奇偶校验码和所述第一输出奇偶校验码至第四输出奇偶校验码执行逻辑运算来产生所述第一校验子至第四校验子。
27.根据权利要求26所述的半导体器件,其中,所述第一校验子至第四校验子通过所述第一半矩阵或所述第二半矩阵的列向量来设置。
28.根据权利要求26所述的半导体器件,其中,所述逻辑电路包括:
选择校验子发生电路,其被配置为当所述选择信号被使能时将所述第一预校验子至第四预校验子输出为第一选择校验子至第四选择校验子;以及当所述选择信号被禁止时,改变所述第一预校验子至第四预校验子的阵列顺序以将根据已改变的阵列顺序而重新排列的第一预校验子至第四预校验子输出为第一选择校验子至第四选择校验子;
奇偶校验码储存电路,其被配置为响应于列信号而将在所述第一读取操作期间产生的第一选择校验子至第四选择校验子储存为所述第一奇偶校验码至第四奇偶校验码,以及被配置为对在所述第二读取操作期间产生的第一选择校验子至第四选择校验子和响应于所述列信号而储存的第一奇偶校验码至第四奇偶校验码执行逻辑运算以产生并储存所述第一奇偶校验码至第四奇偶校验码;以及
校验子输出电路,其被配置为对所述第一输出奇偶校验码至第四输出奇偶校验码和储存在所述奇偶校验码储存电路中的第一奇偶校验码至第四奇偶校验码执行逻辑运算以产生所述第一校验子至第四校验子。
CN201811044479.3A 2017-12-15 2018-09-07 错误校正方法和使用其的半导体器件 Active CN109933453B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0173258 2017-12-15
KR1020170173258A KR102420641B1 (ko) 2017-12-15 2017-12-15 에러정정방법 및 이를 이용한 반도체장치

Publications (2)

Publication Number Publication Date
CN109933453A CN109933453A (zh) 2019-06-25
CN109933453B true CN109933453B (zh) 2023-03-10

Family

ID=66816078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811044479.3A Active CN109933453B (zh) 2017-12-15 2018-09-07 错误校正方法和使用其的半导体器件

Country Status (4)

Country Link
US (1) US10698764B2 (zh)
KR (1) KR102420641B1 (zh)
CN (1) CN109933453B (zh)
TW (1) TWI798250B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112289365B (zh) * 2019-07-24 2024-02-23 华邦电子股份有限公司 半导体存储器装置
KR20210019676A (ko) * 2019-08-13 2021-02-23 삼성전자주식회사 메모리 컨트롤러의 구동방법, 스토리지 장치 및 그 구동방법
KR20220021695A (ko) 2020-08-14 2022-02-22 에스케이하이닉스 주식회사 에러정정동작을 수행하기 위한 전자시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4736376A (en) * 1985-10-25 1988-04-05 Sequoia Systems, Inc. Self-checking error correcting encoder/decoder
EP0974976A1 (en) * 1998-07-20 2000-01-26 STMicroelectronics S.r.l. Circuit and method for reading a non-volatile memory
CN1421871A (zh) * 2001-11-22 2003-06-04 富士通株式会社 具有奇偶校验单元阵列的存储电路
CN106941011A (zh) * 2016-01-05 2017-07-11 爱思开海力士有限公司 半导体系统
CN107103934A (zh) * 2016-02-22 2017-08-29 爱思开海力士有限公司 半导体器件及其驱动方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028248B2 (en) * 2001-02-28 2006-04-11 International Business Machines Corporation Multi-cycle symbol level error correction and memory system
JP4864395B2 (ja) * 2005-09-13 2012-02-01 株式会社東芝 半導体記憶装置
US8230305B2 (en) * 2009-04-02 2012-07-24 Micron Technology, Inc. Extended single-bit error correction and multiple-bit error detection
KR20120063329A (ko) * 2010-12-07 2012-06-15 삼성전자주식회사 에러 체크 및 정정기 및 그것을 포함하는 메모리 시스템
US8635514B2 (en) * 2011-02-28 2014-01-21 Micron Technology, Inc. Error control in memory storage systems
CN103744744B (zh) * 2014-02-08 2017-08-25 威盛电子股份有限公司 数据储存装置以及易失性存储器的数据校验方法
KR102469809B1 (ko) * 2016-05-18 2022-11-24 에스케이하이닉스 주식회사 반도체장치
US10388394B2 (en) * 2017-07-25 2019-08-20 Apple Inc. Syndrome weight based evaluation of memory cells performance using multiple sense operations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4736376A (en) * 1985-10-25 1988-04-05 Sequoia Systems, Inc. Self-checking error correcting encoder/decoder
EP0974976A1 (en) * 1998-07-20 2000-01-26 STMicroelectronics S.r.l. Circuit and method for reading a non-volatile memory
CN1421871A (zh) * 2001-11-22 2003-06-04 富士通株式会社 具有奇偶校验单元阵列的存储电路
CN106941011A (zh) * 2016-01-05 2017-07-11 爱思开海力士有限公司 半导体系统
CN107103934A (zh) * 2016-02-22 2017-08-29 爱思开海力士有限公司 半导体器件及其驱动方法

Also Published As

Publication number Publication date
US10698764B2 (en) 2020-06-30
KR20190072144A (ko) 2019-06-25
US20190188075A1 (en) 2019-06-20
CN109933453A (zh) 2019-06-25
TW201937369A (zh) 2019-09-16
TWI798250B (zh) 2023-04-11
KR102420641B1 (ko) 2022-07-14

Similar Documents

Publication Publication Date Title
US10613928B2 (en) Semiconductor devices and semiconductor systems including the same
US10162703B2 (en) Methods of correcting data errors and semiconductor devices used therein
US20170286218A1 (en) Semiconductor devices, and semiconductor systems
CN109933453B (zh) 错误校正方法和使用其的半导体器件
US10579472B2 (en) Semiconductor devices
KR20180029803A (ko) 반도체장치 및 반도체시스템
US11461167B2 (en) Semiconductor devices
US10261860B2 (en) Semiconductor systems
US10319455B2 (en) Semiconductor device
US10153028B2 (en) Semiconductor devices
US10552277B2 (en) Electronic devices
US10379786B2 (en) Semiconductor devices
US11429477B2 (en) Semiconductor devices
CN108346444B (zh) 半导体器件
US10181863B2 (en) Semiconductor devices and semiconductor systems
US11048602B2 (en) Electronic devices
US10014073B2 (en) Semiconductor devices

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