CN104112479A - 编码器、译码器和包括其的半导体器件 - Google Patents
编码器、译码器和包括其的半导体器件 Download PDFInfo
- Publication number
- CN104112479A CN104112479A CN201410128445.8A CN201410128445A CN104112479A CN 104112479 A CN104112479 A CN 104112479A CN 201410128445 A CN201410128445 A CN 201410128445A CN 104112479 A CN104112479 A CN 104112479A
- Authority
- CN
- China
- Prior art keywords
- code
- drift
- parity information
- data
- drift code
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1012—Adding 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 codes or arrangements adapted for a specific type of error
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Error Detection And Correction (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
一种半导体器件可以包括:第一编码单元,被配置成将第一数据编码成抗漂移码;以及第二编码单元,被配置成将奇偶校验信息添加至抗漂移码。
Description
相关申请的交叉引用
本申请要求于2013年4月22日提交的申请号为10-2013-0043886的韩国专利申请的优先权,其全部内容通过引用合并于此,如同全文阐述。
技术领域
各种实施例总体而言涉及编码器、译码器和包括其的半导体器件,更具体地涉及能够处理数据,使得数据可以被恢复的编码器、译码器和包括其的半导体器件。
背景技术
在诸如PCRAM的存储器件中,随着时间流逝可能发生漂移。漂移可以表示存储器单元的信息(例如,电阻值)变化的现象。
当发生漂移时,在读取信息时从存储器单元读取的信息会与原始信息不同。因而,不容易恢复原始数据。具体地,在存储多比特数据的存储器件的情况下,漂移可能使得更难以恢复数据。此外,在漂移发生的同时在相邻电平之间出现交叉时,变得更难以恢复数据。
发明内容
在一个实施例中,一种半导体器件可以包括:第一编码单元,被配置成将第一数据编码成抗漂移码;以及第二编码单元,被配置成将奇偶校验信息添加至抗漂移码。
在一个实施例中,可以提供一种半导体器件,其对通过将第一数据、抗漂移码的奇偶校验信息以及包括漂移噪声的输入数据编码获得的抗漂移码进行译码。所述半导体器件可以包括:第一译码单元,被配置成从输入数据中恢复抗漂移码,并且通过参照恢复信息来恢复奇偶校验信息;第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及第三译码单元,被配置成将纠错的抗漂移码译码,并且输出第一数据。
在一个实施例中,一种半导体器件可以包括:编码器,被配置成将从主机提供的数据编码成抗漂移码,将奇偶校验信息添加至抗漂移码,以及输出抗漂移码和奇偶校验信息;以及译码器,可以被配置成从半导体存储器件输出的信息中恢复抗漂移码和奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将抗漂移码译码并输出。
在一个实施例中,一种半导体存储器件可以包括:存储器单元阵列;编码器,被配置成将从存储器控制器件提供的数据编码成抗漂移码,将奇偶校验信息添加至抗漂移码,以及将抗漂移码提供至存储器单元阵列;以及译码器,可以被配置成从存储器单元阵列输出的信息中恢复抗漂移码和奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将抗漂移码译码并输出。
附图说明
图1是说明由漂移引起的PCRAM单元的电阻变化的图;
图2是用于解释根据实施例的半导体器件中的数据和码字之间关系的表;
图3说明由于交叉而发生错误的实例;
图4是根据实施例的编码器的框图;
图5和6是根据其他实施例的编码器的框图。
图7是根据实施例的译码器的框图;
图8和图9是根据其他实施例的译码器的框图;
图10是根据实施例的存储器控制器的框图;
图11是根据实施例的半导体存储器件的框图;
图12说明示出实施例的效果的仿真结果。
具体实施方式
以下将参照附图更详细地描述各种实施例。然而,各种实施例可以采用不同的形式来实施,而不应被解释为局限于本文所列的实施例。确切地说,提供这些实施例使得本公开充分与完整,并向本领域技术人员充分地传达本申请的范围。在本公开中,相同的附图标记在各种附图和实施例中表示相同的部分。
本公开提供了一种可以用于克服诸如PCRAM的存储器件中的漂移的编码和译码技术。然而,存储器件不局限于PCRAM,本公开也可以应用于发生漂移的其他易失性或非易失性存储器件。
图1是说明由漂移引起的PCRAM单元的电阻变化的图。
在图1中,PCRAM单元是能够存储2比特数据的多电平单元,且可以存储四种信息,诸如电平0(00)、电平1(01)、电平2(10)和电平3(11)。与电平0相对应的电阻值可以最大,与电平3相对应的电阻值可以最小。
如图1所示,当发生漂移时,单元的电阻沿着其增加方向变化。然而,尽管每个单元的电阻值增加,但是与各个电平相对应的电阻值不彼此重叠,而保持预定的顺序。因而,可以通过将测量的单元电阻值与边界值进行比较来恢复单元的电平。
在一个实施例中,测量电阻值之间的相对量值可以用来恢复电平,来代替将测量的电阻值与边界值进行比较。
在一个实施例中,要输入至存储器件的数据可以被编码成包括M个不同的符号的码字,然后被存储在存储器单元中,每个所述符号包括Nm个符号,其中,M、m和Nm是自然数,1≤m≤M,且Nm表示在M个符号按照量值顺序排列时第m符号的数目。然后,从存储器件中读取的单元的电阻值可以按照量值顺序排列,可以根据量值顺序来将电平分配电阻值,然后电阻值可以重新排列成原来的顺序。然后,可以恢复写入至存储器件中的数据。
上述的码字是抗漂移码的实例,且可以存在各种类型的抗漂移码。
当发生漂移时,电阻的量值可以在相邻电平之间交换,即会发生交叉(crossover)。当发生交叉时,仅通过执行抗漂移编码不可以可靠地恢复原始数据。
当随着存储器单元阵列的漂移而发生交叉时,符号的顺序会变化。因而,在实施例中,可以额外地应用纠错编码来恢复符号的顺序。
在以下公开中,将描述使用上述码字作为抗漂移码的实例。然而,保护的内容不局限于使用上述码字作为抗漂移码的情况。
图2是用于解释数据和码字之间关系的表。
在图2中,数据是二进制码数据,且具有64比特的宽度。
如上所述,码字可以包括M个不同的符号,每个所述符号包括Nm个所述符号。在图2中所示的码字中,M=4,Nm=9(1≤m≤M),且四个符号是0、1、2、3。
符号的类型可以对应于存储在一个存储器单元中的电平的类型。因而,符号的类型M可以通过存储在每个单元中的比特数目n来确定,如等式1所示。
[等式1]
M=2n
在一个实施例中,数据和码字之间的关系可以通过数据的尺寸和码字的尺寸来设定。即,如图2中所示,数据可以按照从最小值到最大值的量值顺序来排列,且码字可以按照从最小值到最大值的量值顺序来排列。在图2中,可以通过索引来表示量值顺序。
在一个实施例中,将数据编码成码字的处理可以对应于查找具有与数据相同索引的码字的处理,并且将码字译码成数据的处理可以对应于查找具有与码字相同的索引的数据的处理。
因而,在一个实施例中,数据的宽度L和码字的长度,即单元的数目必须满足以下等式。
[等式2]
图3说明当使用图2中所示的抗漂移编码时由于交叉而发生错误的实例。
如上所述,交叉表示两个相邻符号的位置交换的现象。如图3中所示,尽管在码字中仅两个符号交换,但在通过将码字译码获得的数据中可能发生对应于更多数目个比特的错误。因而,在将码字译码成数据之前必须解决码字的符号交换时发生的问题。
为了解决这种问题,可以在将数据编码成码字之后额外地将纠错码施加至码字。
此后,将公开如下的编码器和译码器,编码器根据上述顺序来编码信息并且将编码信息提供至存储器单元阵列,译码器将从存储器单元阵列读取的信息译码并输出译码信息。
在以下公开中,假设存储器单元阵列中的每个单元是存储2比特的多电平单元,且每个单元中存储四种符号即0、1、2和3。
在一个实施例中,每个符号和单元数据可以具有以下关系。
表1
符号 | 单元数据 |
0 | 00 |
1 | 01 |
2 | 10 |
3 | 11 |
在一个实施例中,每个符号和单元数据可以具有以下关系。
表2
符号 | 单元数据 |
0 | 00 |
1 | 01 |
2 | 11 |
3 | 10 |
表2说明采用格雷码的单元数据与符号相关的实例。
在表1中,当在两个相邻的符号1和2之间发生交叉时,发生四比特错误。在另一方面,在表2中,当在两个相邻符号1和2之间发生交叉时,发生二比特错误,且等于发生错误的符号数目,即2。
当如表2中所示使用格雷码映射时,可以增加防止由交叉引起的比特错误的延伸的可能性。
图4是根据实施例的编码器100的框图。
根据一个实施例的编码器100可以包括第一编码单元(ENC1)110和第二编码单元(ENC2)120。第一编码单元110可以对输入数据执行抗漂移编码并输出码字,且第二编码单元120可以将纠错编码应用于码字。
第一编码单元110可以根据图2所示的规则来将输入数据编码。对于此操作,第一编码单元110可以搜索具有与输入数据相同索引的码字。当使用与上述码字不同的抗漂移码时,第一编码单元110可以根据相应的编码方法来执行编码操作。
第二编码单元120可以接收码字,将奇偶校验信息添加至接收的码字,以及将码字和奇偶校验信息提供至存储器单元阵列10。
第二编码单元120可以使用诸如BCH编码和RS编码的各种方法作为纠错编码。根据BCH编码,第二编码单元120可以采用比特为单位来分析码字并添加奇偶校验比特。根据RS编码,第二编码单元120可以采用符号为单位来分析码字并添加奇偶校验符号。当添加的奇偶校验信息的比特数目是奇数时,第二编码单元120可以添加一个任意比特,使得奇偶校验信息的比特数目变成偶数。
图5说明根据实施例的编码器100。
图5中所示的编码器100可以采用与图4中所示的编码器100大体相同的方式来操作。
图5中所示的第一编码单元110可以接收J个数据,并且产生用于各个数据的J个码字,其中,J是自然数。
第二编码单元120可以对J个码字产生奇偶校验信息,将产生的奇偶校验信息添加至J个码字,以及将J个码字和奇偶校验信息提供给存储器单元阵列10。
在一个实施例中,可以通过考虑码字的长度、奇偶校验信息的比特数目等来选择J数目个码字,其是产生奇偶校验信息的单位。
根据纠错码的类型,第二编码单元120可以将奇偶校验信息添加至多个码字,如图5中所示。然后,可以减少每个码字所需的奇偶校验信息的比特数目。可以节省存储器单元阵列10的存储空间。
图6说明根据实施例的编码器100。
图6中所示的编码器100可以采用与图4中所示的编码器100大体相同的方式来操作。
图6中所示的第一编码单元110可以接收J个数据,并且产生用于各个数据的J个码字。
第二编码单元120可以对J个码字和未被编码成码字的P个数据产生奇偶校验信息,将产生的奇偶校验信息添加至J个码字和P个数据,以及将J个码字、P个数据和奇偶校验信息提供至存储器单元阵列10。
尽管如以下所述,码字是必需的,以即使在编码过程期间发生漂移也可以恢复数据。然而,所有的数据也可以不被编码成码字,而是一部分数据在这部分数据未被编码成码字的状态下被存储在存储器单元阵列10中。在译码处理期间,码字可以被恢复成数据,并且可以使用恢复信息来恢复未被编码成码字的数据。
图6的实施例可以节省在编码处理期间数据被转换成码字所需的时间。此外,如在一个实施例中,当码字的长度(72比特)大于数据的长度(64比特)时,可以节省存储器单元阵列10的存储空间。
图7是根据实施例的译码器200的框图。
在图7的实施例中,假设存储器单元阵列10存储由图4中所示的编码器100编码的信息。
根据实施例的译码器200可以包括第一译码单元(DEC1)210、第二译码单元(DEC2)220和第三译码单元(DEC3)230。第一译码单元210可以从存储器单元阵列10输出的数据中恢复码字和奇偶校验信息。第二译码单元220可以从恢复的码字和奇偶校验信息中输出纠错的码字。第三译码单元230可以将码字转换成数据。
在图7和以下附图中,由灰色框所示的数据对应于具有漂移产生的噪声的数据。
由于漂移,从存储器单元阵列10输出的电阻值可以具有与数据被写入存储器单元阵列10时不同的值。如上所述,即使在发生漂移时,也可以容易地恢复存储有码字的单元数据的原始信息。
然而,通过采用比特或符号为单位分析码字来添加奇偶校验信息,且不将抗漂移码施加至奇偶校验信息。因而,需要附加操作来从由于漂移添加有噪声的奇偶校验信息中恢复原始奇偶校验信息。
首先,可以如下地恢复码字。在图7中,码字是包括四种符号(0、1、2和3)的数据,每个符号包括9个符号。如上所述,与每个符号相对应的电阻值由于漂移而增加。因而,从与码字相对应的36个单元中输出的电阻值可以按照量值顺序来排列,以便设定与各个单元的电阻值相对应的符号。因此,可以恢复码字。然后,当符号信息被转换成比特信息时,在表1或2中所示的编码处理中使用的转换处理可以按照相反方式来应用。
接着,可以如下地恢复奇偶校验信息。在上述码字恢复处理期间,可以收集从存储码字的单元中输出的电阻值和与单元相对应的符号值之间的关系,即恢复信息。存储奇偶校验信息的单元的电阻值可以被测量并与上述恢复信息进行比较。然后,可以得出存储奇偶校验信息的单元的符号值。
可以使用各种方法来得出存储奇偶校验信息的单元的符号值。
例如,存储奇偶校验信息的单元的电阻值可以与存储码字的单元的电阻值进行比较,并且具有最接近电阻值的单元的符号值可以被确定为存储奇偶校验信息的单元的符号值(最小距离方法)。
此外,可以针对来自上述恢复信息的每个符号来分析统计数据,诸如电阻值的平均值和离散值。然后,可以参照分析的统计数据来选择最可能包括存储奇偶校验信息的单元的电阻值的符号,并将其确定为存储奇偶校验信息的单元的符号值(最大似然法)。
用于恢复奇偶校验信息的具体方法可以根据实施例以各种方式来改变,且本领域技术人可以容易地进行设计和改变。
第二译码单元220可以从恢复的码字和奇偶校验信息中输出纠错的码字。如上所述,当随着漂移发生交叉时,符号会被交换,且可能发生以比特或符号为单位的错误。这种错误可以通过第二译码单元220来纠正。
第二译码单元220纠正错误的操作是公知的,可以使用如以比特为单位来纠正错误的BCH编码方法或以符号为单位来纠正错误的RS编码方法。第二译码单元220的译码方法可以根据第二编码单元120的编码方法来确定。这样,第二译码单元220可以纠正由于交叉而发生错误的比特或符号,并输出纠错的码字。
第三译码单元230可以将纠错的码字转换成通常的数据。针对此操作,第三译码单元230可以检查码字的索引并搜索具有与码字相同索引的数据,如参照图2所述。当使用其他类型的抗漂移码时,可以采用不同的方式来执行特定的译码操作。
图8说明根据实施例的译码器200。
图8中的译码器200可以对应于图5中的编码器100。图8中的译码器200可以采用与图7中的译码器200大体相同的方式来操作。
在图8中所示的译码器200中,第一译码单元210可以通过参照码字1至J的恢复信息来恢复奇偶校验信息,第二译码单元220可以通过参照恢复信息来产生纠错的码字1至J,以及第三译码单元230可以将码字1至J译码并输出数据1至J。
图9说明根据实施例的译码器200。
图9中的译码器200对应于图6中的编码器100。图9中的译码器200可以采用与图7中的译码器200大体相同的方式来操作。
在图9中所示的译码器200中,第一译码单元210可以通过参照码字1至J的恢复信息来恢复奇偶校验信息。如同奇偶校验信息,数据J+1至J+P处于未通过抗漂移码来编码的状态。因而,第一译码单元210通过参照码字1至J的恢复信息来恢复数据J+1至J+P。
第二译码单元220可以从恢复的码字1至J和数据J+1至J+P以及奇偶校验信息中来产生纠错的码字1至J和数据J+1至J+P。
第三译码单元230可以将码字1至J译码并输出数据1至J。
图10是根据实施例的存储器控制器的框图。
图10中的存储器控制器1000可以被单独提供或嵌入在诸如处理器的其他半导体器件中。
根据实施例的存储器控制器1000可以包括编码器100和译码器200。编码器100可以将从主机请求的数据编码,并将编码的数据提供至半导体存储器件(未示出),而译码器200可以对从半导体存储器件提供的信息译码,并输出译码的信息。已经参照图4至图6详细地描述了编码器100的配置,并且参照图7至图9详细描述了译码器200的配置。因而,本文中省略其详细描述。
根据实施例的存储器控制器1000还可以包括:请求缓冲器10、地址映射块20、仲裁块30、命令发生器40、刷新控制器50和数据缓冲器60。由于各个部件的操作是公知的,所以本文中省略其详细描述。
根据实施例的存储器控制器1000还可以包括在数据缓冲器60与编码器100和译码器200之间的ECC块70,以执行错误纠正编码。然而,ECC块70是通常包括在现有的存储器控制器中的部件,且与上述的用于交叉的纠错功能无关。因而,当利用编码器100和译码器200来执行纠错功能时,可以省略ECC块70。
之前可以通过测试来设定编码器100和译码器200执行编码和译码操作所需的时间。因而,根据实施例的存储器控制器1000在确定调度定时时可以考虑编码和译码时间。
图11是根据实施例的半导体存储器件的框图。
根据实施例的半导体存储器件2000可以包括编码器100和译码器200。编码器100可以将从存储器控制器(未示出)提供的数据编码,并将编码的数据提供至存储器单元阵列10,而译码器200可以将从存储器单元阵列10中读取的信息进行译码,并将译码信息提供至存储器控制器。
已经参照图4至图6详细地描述了编码器100的配置,并且参照图7至图9详细地描述了译码器200的配置。因而,省略其详细描述。
根据实施例的半导体存储器件2000还可以包括外围逻辑电路20,被配置成分析从存储器控制器提供的地址和命令,并且控制单元阵列10。由于外围逻辑电路20是公知的部件,所以本文中可以省略其详细描述。
半导体存储器件2000的工作原理可以采用大体相同的方式来保持,除了编码器100和译码器200额外地执行数据和码字之间的转换之外。
图12说明示出实施例的效果的仿真结果。
本仿真在编码器100和译码器200被包括在存储器控制器以控制PCRAM的假设下通过“MATLAB”来执行。在本仿真中,测量用于满足BER=10-15所需的冗余,并且测量结果以百分比(%)来显示。随着冗余减少,存储相同数据所需的附加信息(单元)的数目减少。因而,当冗余小时,可以表示结果良好。
实例1对应于未使用抗漂移编码的情况。即,编码器100和译码器200未包括在图10的配置中,而在数据路径中仅提供ECC块70。
实例2对应于在图10的编码器100和译码器200中仅执行抗漂移编码而不单独执行纠错编码的情况。即,ECC块70、编码器100和译码器200包括在图10的数据路径中,但是编码器100和译码器200不分别包括第二编码单元120和第二译码单元220。
参见图12,可以看出在给出相同刷新周期的假设下,所讨论的实施例具有最低冗余率。此外,使用抗漂移编码的现有技术2比未使用抗漂移编码的现有技术1呈现出更高的冗余率。如参照图3所示,由于交叉,在通过将码字译码获得的数据中错误比特数目会显著增加。
根据实施例,可以通过编码器、译码器和包括其的半导体器件来正常地恢复数据。
尽管出于说明目的描述了各种实施例,但是对于本领域技术人员显然的是,在不脱离所附权利要求所限定的实施例的精神和范围的情况下,可以进行各种变化和修改。
通过以上实施例可以看出,本申请提供了以下的技术方案。
技术方案1.一种半导体器件,包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
技术方案2.根据技术方案1所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括N个符号,
其中,M和N是自然数。
技术方案3.根据技术方案2所述的半导体器件,其中,与所述符号相对应的二进制数据包括格雷码。
技术方案4.根据技术方案1所述的半导体器件,其中,所述第二编码单元以比特为单位来分析所述抗漂移码,以添加所述奇偶校验信息。
技术方案5.根据技术方案4所述的半导体器件,其中,当添加的奇偶校验信息的比特数目是奇数目个比特时,所述第二编码单元将一个任意比特添加至所述奇偶校验信息,使得所述奇偶校验信息的比特数目变成偶数目个比特。
技术方案6.根据技术方案2所述的半导体器件,其中,所述第二编码单元以符号为单位来分析所述抗漂移码,以添加所述奇偶校验信息。
技术方案7.根据技术方案1所述的半导体器件,其中,所述半导体器件还接收未被转换成抗漂移码的第二数据,并且所述第二编码单元将所述奇偶校验信息添加至所述第二数据和所述抗漂移码。
技术方案8.一种半导体器件,其对通过将第一数据编码获得的抗漂移码、所述抗漂移码的奇偶校验信息以及包括漂移噪声的输入数据进行译码,包括:
第一译码单元,被配置成从所述输入数据中恢复所述抗漂移码,并且通过参照恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将所述纠错的抗漂移码译码,并且输出所述第一数据。
技术方案9.根据技术方案8所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括N个符号,
其中,M和N是自然数。
技术方案10.根据技术方案9所述的半导体器件,其中,与所述符号相对应的二进制数据包括格雷码。
技术方案11.根据技术方案8所述的半导体器件,其中,所述奇偶校验信息通过以比特为单位来分析所述抗漂移码而获得。
技术方案12.根据技术方案9所述的半导体器件,其中,所述奇偶校验信息通过以符号为单位来分析所述抗漂移码而获得。
技术方案13.根据技术方案8所述的半导体器件,其中,所述输入数据还包括未被编码成抗漂移码的第二数据和所述第二数据的漂移噪声。
技术方案14.根据技术方案13所述的半导体器件,其中,所述第一译码单元通过参照所述恢复信息来恢复所述第二数据,而所述第二译码单元通过参照所述奇偶校验信息来输出纠错的抗漂移码和纠错的第二数据。
技术方案15.一种半导体器件,包括:
编码器,被配置成将从主机提供的数据编码成抗漂移码,将奇偶校验信息添加至所述抗漂移码,以及输出所述抗漂移码和所述奇偶校验信息;以及
译码器,被配置成从半导体存储器件输出的信息中恢复所述抗漂移码和所述奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将所述抗漂移码译码并输出。
技术方案16.根据技术方案15所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括Nk个符号,
其中,M、k和Nk是自然数,以及
其中,k大于或等于1且M大于或等于k,1≤k≤M。
技术方案17.根据技术方案16所述的半导体器件,其中,与所述符号相对应的二进制数据包括格雷码。
技术方案18.根据技术方案15所述的半导体器件,其中,所述编码器包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
技术方案19.根据技术方案18所述的半导体器件,其中,所述译码器包括:
第一译码单元,被配置成从所述输出信息中恢复所述抗漂移码,并且通过参照所述恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将纠错的抗漂移码译码,并且输出所述第一数据。
技术方案20.根据技术方案18所述的半导体器件,其中,所述第二编码单元将所述奇偶校验信息添加至所述抗漂移码和未被编码成抗漂移码的第二数据,以及
所述第一译码单元还通过参照所述恢复信息来恢复所述第二数据,并且所述第二译码单元还从所述奇偶校验信息中输出纠错的第二数据。
技术方案21.根据技术方案18所述的半导体器件,其中,当添加的奇偶校验信息的比特数目是奇数目个比特时,所述第二编码单元将一个任意比特添加至所述奇偶校验信息,使得所述奇偶校验信息的比特数目变成偶数目个比特。
技术方案22.一种半导体存储器件,包括:
存储器单元阵列;
编码器,被配置成将从存储器控制器件提供的数据编码成抗漂移码,将奇偶校验信息添加至所述抗漂移码,以及将所述抗漂移码提供至所述存储器单元阵列;以及
译码器,被配置成从所述存储器单元阵列输出的信息中恢复所述抗漂移码和所述奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将所述抗漂移码译码并输出。
技术方案23.根据技术方案22所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括Nk个符号,
其中,M、k和Nk是自然数,以及
其中,k大于或等于1且M大于或等于k,1≤k≤M。
技术方案24.根据技术方案23所述的半导体器件,其中,与所述符号相对应的二进制数据包括格雷码。
技术方案25.根据技术方案22所述的半导体器件,其中,所述编码器包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
技术方案26.根据技术方案25所述的半导体器件,其中,所述译码器包括:
第一译码单元,被配置成从所述输出信息中恢复所述抗漂移码,并且通过参照所述恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将纠错的抗漂移码译码,并且输出所述第一数据。
技术方案27.根据技术方案26所述的半导体器件,其中,所述第二编码单元将所述奇偶校验信息添加至所述抗漂移码和未被编码成抗漂移码的第二数据,以及
所述第一译码单元还通过参照所述恢复信息来恢复所述第二数据,而所述第二译码单元还从所述奇偶校验信息中输出所述纠错的第二数据。
Claims (10)
1.一种半导体器件,包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
2.根据权利要求1所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括N个符号,
其中,M和N是自然数。
3.一种半导体器件,其对通过将第一数据编码获得的抗漂移码、所述抗漂移码的奇偶校验信息以及包括漂移噪声的输入数据进行译码,包括:
第一译码单元,被配置成从所述输入数据中恢复所述抗漂移码,并且通过参照所述恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将所述纠错的抗漂移码译码,并且输出所述第一数据。
4.根据权利要求3所述的半导体器件,其中,所述抗漂移码包括M个不同的符号,所述符号中的每个包括N个符号,
其中,M和N是自然数。
5.一种半导体器件,包括:
编码器,被配置成将从主机提供的数据编码成抗漂移码,将奇偶校验信息添加至所述抗漂移码,以及输出所述抗漂移码和所述奇偶校验信息;以及
译码器,被配置成从半导体存储器件输出的信息中恢复所述抗漂移码和所述奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将所述抗漂移码译码并输出。
6.根据权利要求5所述的半导体器件,其中,所述编码器包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
7.根据权利要求6所述的半导体器件,其中,所述译码器包括:
第一译码单元,被配置成从所述输出信息中恢复所述抗漂移码,并且通过参照所述恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将纠错的抗漂移码译码,并且输出所述第一数据。
8.一种半导体存储器件,包括:
存储器单元阵列;
编码器,被配置成将从存储器控制器件提供的数据编码成抗漂移码,将奇偶校验信息添加至所述抗漂移码,以及将所述抗漂移码提供至所述存储器单元阵列;以及
译码器,被配置成从所述存储器单元阵列输出的信息中恢复所述抗漂移码和所述奇偶校验信息,使用恢复的奇偶校验信息来产生纠错的抗漂移码,以及将所述抗漂移码译码并输出。
9.根据权利要求8所述的半导体器件,其中,所述编码器包括:
第一编码单元,被配置成将第一数据编码成抗漂移码;以及
第二编码单元,被配置成将奇偶校验信息添加至所述抗漂移码。
10.根据权利要求9所述的半导体器件,其中,所述译码器包括:
第一译码单元,被配置成从所述输出信息中恢复所述抗漂移码,并且通过参照所述恢复信息来恢复所述奇偶校验信息;
第二译码单元,被配置成从恢复的奇偶校验信息和恢复的抗漂移码中输出纠错的抗漂移码;以及
第三译码单元,被配置成将纠错的抗漂移码译码,并且输出所述第一数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2013-0043886 | 2013-04-22 | ||
KR1020130043886A KR102007163B1 (ko) | 2013-04-22 | 2013-04-22 | 인코더, 디코더 및 이를 포함하는 반도체 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104112479A true CN104112479A (zh) | 2014-10-22 |
CN104112479B CN104112479B (zh) | 2018-11-02 |
Family
ID=51709234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410128445.8A Active CN104112479B (zh) | 2013-04-22 | 2014-04-01 | 编码器、译码器和包括其的半导体器件 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9350390B2 (zh) |
KR (1) | KR102007163B1 (zh) |
CN (1) | CN104112479B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073469A (zh) * | 2016-11-18 | 2018-05-25 | 爱思开海力士有限公司 | 用于通用产品代码的数据映射方案 |
CN110537192A (zh) * | 2017-04-28 | 2019-12-03 | 阿诺特尔布莱恩公司 | 利用最大似然对消息/标签关联以及标签/消息关联进行非易失性存储、检索和管理的自动化方法和关联装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102178340B1 (ko) * | 2019-02-15 | 2020-11-12 | 성균관대학교산학협력단 | 멀티 레벨 셀의 데이터 입출력 장치와 그의 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677563A (zh) * | 2004-03-30 | 2005-10-05 | 尔必达存储器股份有限公司 | 半导体设备及其测试方法 |
US8228728B1 (en) * | 2009-09-14 | 2012-07-24 | Marvell International Ltd. | Programming method for multi-level cell flash for minimizing inter-cell interference |
CN102843234A (zh) * | 2011-06-20 | 2012-12-26 | 瑞萨电子株式会社 | 半导体装置以及将数据写入到半导体装置的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7984360B2 (en) | 2006-12-31 | 2011-07-19 | Ramot At Tel Aviv University Ltd. | Avoiding errors in a flash memory by using substitution transformations |
WO2009067624A1 (en) | 2007-11-20 | 2009-05-28 | California Institute Of Technology | Error correcting codes for rank modulation |
US8880977B2 (en) * | 2011-07-22 | 2014-11-04 | Sandisk Technologies Inc. | Systems and methods of storing data |
-
2013
- 2013-04-22 KR KR1020130043886A patent/KR102007163B1/ko active IP Right Grant
-
2014
- 2014-04-01 CN CN201410128445.8A patent/CN104112479B/zh active Active
- 2014-04-16 US US14/254,060 patent/US9350390B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1677563A (zh) * | 2004-03-30 | 2005-10-05 | 尔必达存储器股份有限公司 | 半导体设备及其测试方法 |
US8228728B1 (en) * | 2009-09-14 | 2012-07-24 | Marvell International Ltd. | Programming method for multi-level cell flash for minimizing inter-cell interference |
CN102843234A (zh) * | 2011-06-20 | 2012-12-26 | 瑞萨电子株式会社 | 半导体装置以及将数据写入到半导体装置的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108073469A (zh) * | 2016-11-18 | 2018-05-25 | 爱思开海力士有限公司 | 用于通用产品代码的数据映射方案 |
CN108073469B (zh) * | 2016-11-18 | 2021-06-25 | 爱思开海力士有限公司 | 用于通用产品代码的数据映射方案 |
CN110537192A (zh) * | 2017-04-28 | 2019-12-03 | 阿诺特尔布莱恩公司 | 利用最大似然对消息/标签关联以及标签/消息关联进行非易失性存储、检索和管理的自动化方法和关联装置 |
CN110537192B (zh) * | 2017-04-28 | 2023-05-26 | 阿诺特尔布莱恩公司 | 关联存储器存储单元、装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104112479B (zh) | 2018-11-02 |
US9350390B2 (en) | 2016-05-24 |
US20140317468A1 (en) | 2014-10-23 |
KR20140125987A (ko) | 2014-10-30 |
KR102007163B1 (ko) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10771091B2 (en) | Flash memory apparatus and storage management method for flash memory | |
US9910772B2 (en) | Flash memory apparatus and storage management method for flash memory | |
CN103544073B (zh) | 读取闪存中区块的数据的方法及相关的记忆装置 | |
CN102741819B (zh) | 用于解码码字的方法和设备 | |
CN102110481A (zh) | 具有ecc电路的半导体存储系统及其控制方法 | |
KR102275717B1 (ko) | 플래시 메모리 시스템 및 그의 동작 방법 | |
US20200090761A1 (en) | Memory system and method of controlling nonvolatile memory | |
CN107179961A (zh) | 存储系统中错误校正编码数据的冗余 | |
CN105513638B (zh) | 数据储存装置及其数据存取方法 | |
CN103839594A (zh) | 固态储存装置及其联合编解码方法 | |
CN105023613B (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
CN111710358B (zh) | 闪存装置、闪存控制器及闪存存储管理方法 | |
US10423484B2 (en) | Memory controller, memory system, and control method | |
US20160266972A1 (en) | Memory controller, storage device and decoding method | |
CN102236585A (zh) | 提升错误更正能力的方法以及相关的记忆装置及其控制器 | |
US20150222291A1 (en) | Memory controller, storage device and memory control method | |
CN104112479A (zh) | 编码器、译码器和包括其的半导体器件 | |
US20240154624A1 (en) | Flash memory apparatus and storage management method for flash memory | |
CN103137213B (zh) | 具有低密度奇偶校验码译码能力的存储器控制装置及方法 | |
CN106158046B (zh) | 用于turbo乘积码的误校正避免 | |
US11150813B2 (en) | Memory system | |
CN108170554B (zh) | 一种nand的数据编码方法和装置 | |
CN105068882A (zh) | 基于二维检错纠错编码的sram抗辐射加固方法 | |
CN112306733B (zh) | 存储器装置、存储器控制器及其数据存取方法 | |
RU2421786C1 (ru) | Устройство хранения информации повышенной достоверности функционирования |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |