实施方式提供即使在多个数据存在错误的情况下也能够使用XOR运算来恢复原始数据的数据恢复电路、半导体存储装置及数据恢复方法。在实施方式中,XOR运算部15进行从复用器14输出的数据的各位彼此间的XOR运算,错误要因推定部19基于NAND存储器2特有的错误要因,推定错误位的反转方向,错误位位置推定部20基于XOR运算部15的XOR运算结果来推定错误位位置,错误临时判定部21向与由错误要因推定部19推定的反转方向相反的方向进行由错误位位置推定部20推定的错误位位置处的位反转。
【技术实现步骤摘要】
本专利技术的实施方式涉及数据恢复电路、半导体存储装置及数据恢复方法。
技术介绍
为了纠正数据恢复时的数据错误,存在对成为恢复对象的数据附加冗余数据的方法。作为该冗余数据的代表例,例如有通过多个数据的XOR(异或)运算而获得的码字。在附加通过XOR运算获得的码字的方法中,在多个数据中的2个以上的数据存在错误的情况下无法恢复原始数据。
技术实现思路
本专利技术的一个实施方式的目的是提供即使在多个数据存在错误的情况下也能够使用XOR运算来恢复原始数据的数据恢复电路、半导体存储装置及数据恢复方法。实施方式的数据恢复电路具备XOR运算部、错误位位置推定部、错误要因推定部和错误临时判定部。XOR运算部进行包括N位的M个数据的各位彼此间的XOR运算,所述N、M为2以上的整数。错误位位置推定部基于上述XOR运算结果来推定错误位位置。错误要因推定部推定上述错误位的反转方向。错误临时判定部向与上述反转方向相反的方向进行上述错误位位置处的位反转。附图说明图1是表示第1实施方式所涉及的使用了一个数据存在错误时的XOR运算的数据恢复方法的图。图2是表示第1实施方式所涉及的使用了多个数据存在错误时的XOR运算的数据恢复方法的图。图3(a)及图3(b)是表示第1实施方式所涉及的使用了多个数据存在错误时的XOR运算的数据恢复方法的图。图4(a)~图4(d)是表示第1实施方式所涉及的使用了多个数据存在错误时的XOR运算的数据恢复方法的图。图5是表示存储单元的存储状态被4值化时的阈值分布的一例的图。图6是表示第2实施方式所涉及的数据恢复电路的概略构成的框图。图7是表示第2实施方式所涉及的数据恢复电路的工作的流程图。图8是表示第3实施方式所涉及的半导体存储装置的概略构成的框图。图9是表示图6的数据管理信息的一例的图。具体实施方式以下参照附图来详细说明实施方式所涉及的数据恢复电路、半导体存储装置及数据恢复方法。另外,并非通过这些实施方式限定本专利技术。另外,以下的实施方式中,作为记录数据的半导体存储装置,以将NAND闪速存储器适用于SSD(SolidStateDrive:固态硬盘)的情况为例,但也可以是将NAND闪速存储器适用于存储卡、USB存储器等便携存储介质的情况,还可以是将NAND闪速存储器适用于智能手机、平板型终端等电子设备的情况。另外,也适用于取代NAND闪速存储器而使用MRAM(MagnetoresistiveRandomAccessMemory:磁阻随机存取存储器)、FRAM(注册商标)(FerroelectricRandomAccessMemory:铁电随机存取存储器)、ReRAM(ResistiveRandomAccessMemory:电阻随机存取存储器)或PCRAM(PhaseChangeRandomAccessMemory:相变随机存取存储器)等非易失性半导体存储装置的情况,也适用于使用DRAM、SRAM等易失性半导体存储装置的情况。(第1实施方式)图1是表示第1实施方式所涉及的使用了一个数据存在错误时的XOR运算的数据恢复方法的图。另外,以下的实施方式中,以存在成为恢复对象的6个数据C0~C5的情况为例。图1中,设为对成为恢复对象的数据C0~C5在记录时附加有数据X0。各数据C0~C5例如可以按扇区单位来提供。1个扇区的大小例如可以设定成512字节或4k字节。此时,数据X0可以通过数据C0~C5的XOR运算来生成,可以以X0=C0^C1^C2^C3^C4^C5的式来提供。这里,^表示各数据中处于相同位置的位彼此间的XOR运算。并且,设为数据C0、C1、C3~C5能够正常再现,但数据C2无法纠错而无法正常再现。另外,数据C2′是无法纠错的C2的纠错前的数据。纠错例如可以使用RS码或LDPC码等纠错码。此时,可以用这样的纠错码对数据C0~C5、X0编码后进行记录。这里,若能够正常再现数据X0,则通过数据C0、C1、C3~C5、X0的XOR运算,能够正常再现数据C2。此时,数据C2可以以C2=C0^C1^C3^C4^C5^(C0^C1^C2^C3^C4^C5)的式来提供。这样,在将通过XOR运算获得的码字作为冗余数据进行附加的方法中,在多个数据中的一个数据存在错误的情况下,能够通过XOR运算来恢复原始数据。图2、图3(a)及图3(b)及图4(a)~图4(d)是表示第1实施方式所涉及的使用了多个数据存在错误时的XOR运算的数据恢复方法的图。另外,以下的实施方式中,以各数据C0~C5为8位(bit)的情况为例。图2中,设为数据C0、C3、C5、X0能够正常再现,但数据C1、C2、C4纠错失败而无法正常再现。另外,数据C1′、C2′、C4′分别是无法纠错的C1、C2、C4的纠错前的数据。在存在无法纠错的多个数据的情况下,对于错误位位置的推定,使用XOR运算。即,图3(a)中,将各数据C1′、C2′、C4′的存在错误的位位置b0~b7的一例用×表示。即,设为数据C1′在位位置b4、b5、b7存在错误,数据C2′在位位置b0、b2、b6、b7存在错误,数据C4′在位位置b1、b3、b6、b7存在错误。然后,通过数据C0、C1′、C2′、C3、C4′、C5、X0的XOR运算来生成数据E。该XOR运算中,对于数据C1′、C2′、C4′,使用纠错前的数据C1′、C2′、C4′。此时,数据C1′、C2′、C4′的存在错误的位位置b0~b7反映到数据E,在数据C1′、C2′、C4′的错误位位置候选,设1。即,如图3(b)所示,若将数据E的设1的位位置b0~b5、b7设为错误位位置e0~e6,则表示在错误位位置e0~e6处某一个数据C1′、C2′、C4′存在错误。另外,如数据E的b6所示,当多个数据在相同位位置存在错误、且存在错误的数据数为偶数的情况下,XOR运算结果成为零,错误位位置的信息消失。这里,在通过XOR运算来生成数据E时使用纠错前的数据C1′、C2′、C4′,是因为:对于无法纠错的码字,很多情况下纠错前的数据C1′、C2′、C4′比纠错后的数据离正确的码字的汉明距离更近。仅通过观察数据E的设1的错误位位置e0~e6,并不知道在哪个数据C1′、C2′、C4′的各错误位位置e0~e6存在错误。因而,假定在各错误位位置e0~e6处数据C1′、C2′、C4′中的仅任一个存在错误,能够推定该一个数据。此时,能够在预定条件下假定错误位的有预见性的反转方向。例如,若设为数据C0~C5、X0记录在NAND闪速存储器中,则基于NAND闪速存储器特有的错误要因,能够假定错误位位置e0~e6的错误位的反转方向。作为NAND闪速存储器特有的错误要因,可以例举数据滞留、读出干扰、写入干扰、读出时的单元间耦合效应或写入时的单元间耦合效应。数据滞留是存储器所保持的电荷随着时间经过而减少的现象。读出干扰、写入干扰及单元间耦合效应是存储器所保持的电荷在读出时或写入时增大的现象。对于NAND闪速存储器,由于读出及写入按页面单位来进行,所以读出干扰及写入干扰按页面单位而发生。例如,在记录2值数据的单电平单元中,若发生数据滞留,则存储单元存储的数据有时从0变为1。另外,在单电平单元中,若发生读出干扰、写入干扰或单元间耦合效应,则存储单元存储本文档来自技高网...
【技术保护点】
一种数据恢复电路,具备:XOR运算部,其进行包括N位的M个数据的各位彼此间的XOR运算,所述N、M为2以上的整数;错误位位置推定部,其基于上述XOR运算结果来推定错误位位置;错误要因推定部,其推定上述错误位的反转方向;错误临时判定部,其向与上述反转方向相反的方向进行上述错误位位置处的位反转。
【技术特征摘要】
2015.09.09 JP 2015-1776701.一种数据恢复电路,具备:XOR运算部,其进行包括N位的M个数据的各位彼此间的XOR运算,所述N、M为2以上的整数;错误位位置推定部,其基于上述XOR运算结果来推定错误位位置;错误要因推定部,其推定上述错误位的反转方向;错误临时判定部,其向与上述反转方向相反的方向进行上述错误位位置处的位反转。2.根据权利要求1所述的数据恢复电路,其中,上述数据恢复电路具备纠错部,该纠错部进行上述M个数据的纠错,并特定无法进行上述纠错的K个数据,所述K为2以上且M以下的整数。3.根据权利要求2所述的数据恢复电路,其中,上述错误位位置推定部将通过上述XOR运算而判定为存在错误的P个位位置中的、无法进行上述纠错的K个数据中的任一个取上述反转方向的值的位位置推定为上述错误位位置,所述P为2以上且N以下的整数。4.根据权利要求2或3所述的数据恢复电路,其中,上述XOR运算部在存在无法进行上述纠错的K个数据的情况下,进行上述纠错前的K个数据和没有错误的(M-K)个数据的各位彼此间的XOR运算。5.根据权利要求2或3所述的数据恢复电路,其中,上述纠错部再次进行由上述错误临时判定部进行了位反转之后的数据的纠错。6.根据权利要求5所述的数据恢复电路,...
【专利技术属性】
技术研发人员:近藤阳介,吉田贤治,
申请(专利权)人:株式会社东芝,
类型:发明
国别省市:日本;JP
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。