一种NANDFlash存储芯片的校验方法及装置制造方法

文档序号:6764165阅读:300来源:国知局
一种NAND Flash存储芯片的校验方法及装置制造方法
【专利摘要】本发明提供一种NAND?Flash存储芯片的校验方法,根据写入扩展区中每页数据的行列异或值、Hash值,比较数据区的数据内容和计算的数据区的Hash值,能够纠正一位及两位错误,并能发现多位错误,从而确保存放在NAND?Flash芯片内数据的完整性及准确性,起到减少文件系统崩溃的风险。
【专利说明】—种NAND Flash存储芯片的校验方法及装置
【技术领域】
[0001]本发明属于通信领域,尤其涉及一种NAND Flash存储芯片的校验方法及装置。
【背景技术】
[0002]现今,NAND Flash (存储型快闪记忆本)存储芯片作为嵌入式领域的一种常见存储介质,相比于NOR Flash存储芯片,NAND Flash存储芯片具有更快的读写速度和能够存储更多的数据的优点。因此,NAND Flash存储芯片一直以来广受嵌入式设备厂商的青睐,但由于NAND Flash存储芯片不能像NOR Flash (编码型快闪记忆本)存储芯片那样能保持存储数据的高可靠性,从而如何提高NAND Flash存储芯片内存储数据的可靠性,变成了所有使用者的难题。
[0003]NAND Flash芯片的基本构成,通常由多个块组成,每个块由多个页组成,每个页由数据区及Spare area区组成。块是作为NAND Flash擦除的最小单位,页一般作为读写的最小单位。对于每个页上的扩展区(Spare area区)及数据区(Data area区)而言,数据区主要负责存放用户数据信息,而Spare area区常用来存放纠错校验码。
[0004]常见NAND Flash存储芯片中存在有三种典型的情况会导致数据翻转从而使得数据错误:
[0005]1、漂移翻转
[0006]漂移翻转指的是,NAND Flash芯片中cell的电压值慢慢发生改变,变的和原始值不一样了。
[0007]2、编程效应引起的翻转
[0008]对于某个页面的编程操作(即擦或写操作),引起非相关的其他页面的某个位跳变了。
[0009]3、读翻转
[0010]此效应是,对一个页进行数据读取操作,却使得对应的某个位的数据,产生了永久性的变化,即NAND Flash上该位的值发生改变。
[0011]NAND Flash的工艺特点使其存储的数据在写入和读出的时会不一致,因此NANDFlash采用专门的ECC (Error Checking and Correction)校验算法保证读出数据的正确性。ECC校验算法能够针对NAND Flash的一个页进行一位纠错和两位查错,然而通过高压力的测试发现,NAND Flash每页出现两位错误的情况也时有发生,一旦发生两位错误时,会导致建立在NAND Flash上的文件系统崩溃,为此急需研究一种校验算法以减少文件系统崩溃的风险。

【发明内容】

[0012]本发明实施例的目的在于提供一种NAND Flash存储芯片的校验方法,解决现有技术中只能进行一位纠错及两位查错的缺陷。
[0013]一种NAND Flash存储芯片的校验方法,所述方法包括:[0014]将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NAND Flash存储芯片的扩展区;
[0015]将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区;
[0016]取出所述数据区的数据,并计算所述数据区的数据的Hash值;
[0017]取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值;
[0018]对比所述数据区的数据的Hash值和所述新的Hash是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对t匕,获取出现错误的行和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
[0019]一种NAND Flash存储芯片的校验装置,所述装置包括:
[0020]写入单元,用于将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NAND Flash存储芯片的扩展区;
[0021]第一运算单元,用于将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区;
[0022]计算单元,用于取出所述数据区的数据,并计算所述数据区的数据的Hash值;
[0023]第二运算单元,用于取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值;
[0024]纠错单元,用于对比所述数据区的数据的Hash值和所述新的Hash是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,获取出现错误的行和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
[0025]与现有技术相比,本发明提供一种NAND Flash存储芯片的校验方法,根据写入扩展区中每页数据的行列异或值、Hash值,比较数据区的数据内容和计算的数据区的Hash,能够纠正一位及两位错误,并能发现多位错误,从而确保存放在NAND Flash芯片内数据的完整性及准确性,起到减少文件系统崩溃的风险。
【专利附图】

【附图说明】
[0026]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0027]图1是本发明实施例一提供的一种NAND Flash存储芯片的校验方法流程图;
[0028]图2是本发明实施例一提供的一种NAND Flash存储芯片的校验方法示意图;
[0029]图3是本发明实施例一提供的一种NAND Flash存储芯片的校验方法示意图;
[0030]图4是本发明实施例一提供的一种NAND Flash存储芯片的校验方法示意图;
[0031]图5是本发明实施例二提供的一种NAND Flash存储芯片的校验装置结构图。【具体实施方式】
[0032]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0033]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
[0034]实施例一
[0035]参考图1,图1是本发明实施例一提供的一种NAND Flash存储芯片的校验方法流程图,所述方法包括如下步骤:
[0036]步骤101,将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NAND Flash存储芯片的扩展区;
[0037]具体的,参考图2,所述NAND Flash存储芯片每页2K Bytes,共16K bits,将其排列成128*128的矩阵,对同一行所有点进行异或运算,得到最终的异或值,因此记录所有行的异或值需要128bits ;按照相同的方式对列进行处理,最终行列都需要16Bytes,共32Bytes0
[0038]具体的,所述计算行异或值是指将同一行的第一位数据和第二位数据做异或运算,得到的第一个异或值和同一行的第三位数据做异或运算,得到的第二个异或值和同一行的第四位数据做异或运算,得到的第三个异或值和同一行的第五位数据做异或运算,依次类推,对同一行的128位数据做异或运算后,得到的异或值作为该行的异或值。所述128*128共有128个行异或值和128个列异或值,共需要32Bytes存储空间。
[0039]步骤102,将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区;
[0040]具体的,计算所述数据区的数据的Hash值共20Bytes ;写入数据时,将32Bytes的异或值写入扩展区(Spare area区),并将计算得到的Hash值的前12Bytes重复的写入Spare area区,具体的参考图3所示。其中,取前12Bytes主要是考虑存储芯片的存储容量,取Hash值的前12Bytes重复写入Spare area区。重复写入是考虑到存储芯片有可能存储时的不稳定性,需要双份Hash计算新的Hash值,以避免存储芯片的不稳定行造成的误差。
[0041]步骤103,取出所述数据区的数据,并计算所述数据区的数据的Hash值;
[0042]步骤104,取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值;
[0043]具体的,对比所述双份Hash值,若所述双份Hash在相同的行列位置Hash值同时为O,则取所述相同的行列位置的Hash值为I,否则Hash值为O,得到新的Hash值。
[0044]步骤105,对比所述数据区的数据的Hash值和所述新的Hash值是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,获取出现错误的行和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。[0045]具体的,当所述数据区的数据的Hash值和所述新的Hash值不同时,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,如,计算后的数据区的第一行数据的行异或值对比所述扩展区的存储的第一行数据的行异或值,当计算得到的第一行数据的行异或值和存储的第一行数据的异或值不同,则可获取该行出现错误,即获取第一行是出现错误的行;同理,可获取出现错误的列的数量和位置。若出现错误的行或者出现错误的列大于2时,则返回错误;若出现错误的行或者出现错误的列小于或者等于2时,则根据出现错误的列和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
[0046]作为一种可优选的实施例,对比所述数据区的数据的Hash值和所述新的Hash值,若相同,贝1J返回正确。
[0047]作为另一种可优选的实施例,当出现错误的行或者出现错误的列大于2时,则返回错误。
[0048]可优选一,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0049]当出现出现错误的列为O、出现错误的行为I时,根据所述错误行所在的坐标确定所述错误行所在的位置;
[0050]当对所述错误行的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据;
[0051]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的数据未进行取反的数据;
[0052]对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据;
[0053]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
[0054]基于所述可优选一的实施例的基础上,作为另一种可优选的实施例,所述方法还包括:
[0055]若对所述错误行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0056]可优选二,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0057]当出现错误的列为O、出现错误的行为2时,根据出现错误的两行所在的坐标确定所述出现错误的两行所在的位置;
[0058]对所述出现错误的两行的其中一列的两位数据同时异或运算时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一列的两位数据进行取反后的数据;[0059]若计算的Hash值和所述新的Hash值不同,则将所述其中一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的两位数据未进行取反的数据;
[0060]对所述出现错误的两行的其中一列的下一列的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一列的下一列的两位数据进行取反后的数据;
[0061]若计算的Hash值和所述新的Hash值不同,则将所述其中一列的下一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的下一列的两位数据未进行取反的数据,依次类推。
[0062]基于可优选二的实施例,作为另一种可优选的实施例,所述方法还包括:
[0063]若对所述出现错误的两行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0064]可优选三,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0065]当出现错误的列为1、出现错误的行为O时,根据所述错误列所在的坐标确定所述错误列所在的位置;
[0066]当对所述错误列的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据;
[0067]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据;
[0068]对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据;
[0069]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
[0070]基于可优选三的实施例,作为另一种可优选的实施例,所述方法还包括:
[0071]若对所述错误列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0072]可优选四,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0073]当出现错误的列为1、出现错误的行为I时,根据错误行和错误列所在的坐标确定所述错误行和错误列所在位置;
[0074]对所述所在的位置的数据进行取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;
[0075]若计算的Hash值和所述新的Hash值不同,否则返回错误。
[0076]可优选五,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0077]当出现错误列为1,错误行为2时,当出现在同一错误列的两个错误行的数据时,执行当出现错误的列为O、出现错误的行为2时的步骤;
[0078]当出现错误为1,错误行为2时,并且当所述错误行中的某一位数据错误,另一个错误行和所述错误列对应的点所在的位置的数据错误时,对所述出现错误的两行分别执行当出现错误的列为O、出现错误的行为I时的步骤。
[0079]可优选六,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0080]当出现错误的列为2、出现错误的行为O时,根据出现错误的两列所在的坐标确定所述出现错误的两列所在的位置;
[0081]对所述出现错误的两列的其中一行的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的两位数据进行取反后的数据;
[0082]若计算的Hash值和所述新的Hash值不同,则将所述其中一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的两位数据未进行取反的数据;
[0083]对所述出现错误的两列的其中一行的下一行的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的下一行的两位数据进行取反后的数据;
[0084]若计算的Hash值和所述新的Hash值不同,则将所述其中一行的下一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的下一行的两位数据未进行取反的数据,依次类推。
[0085]基于可优选六,作为另一种可优选的实施例,所述方法还包括:
[0086]若对所述出现错误的两列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0087]可优选七,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0088]当出现错误列为2,错误行为I时,当出现所述同一行的两个错误列的数据时,执行当出现错误的列为2、出现错误的行为O的步骤;
[0089]当出现错误列为2,错误行为I时,并且当所述错误列中的某一位数据错误,另一个错误列和所述错误行对应的点所在的位置的数据错误时,对所述出现错误的两列分别执行当出现错误的列为1、出现错误的行为O时的步骤。
[0090]可优选八,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:
[0091]当出现错误行为2,错误列为2时,当第一错误行和第一错误列、第二错误行和第二错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误;
[0092]当出现错误行为2,错误列为2时,当第一错误行和第二错误列、第二错误行和第一错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误。
[0093]具体的,参考图4所示的方法示意图。
[0094]作为另一种可优选的实施例,当执行完上述所有步骤后不能纠错时,则返回多位错误。
[0095]本发明提供一种NAND Flash存储芯片的校验方法,根据写入扩展区中每页数据的行列异或值、Hash值,比较数据区的数据内容和计算的数据区的Hash,能够纠正一位及两位错误,并能发现多位错误,从而确保存放在NAND Flash芯片内数据的完整性及准确性,起到减少文件系统崩溃的风险。
[0096]实施例二
[0097]参考图5,图5是本发明实施例一提供的一种NAND Flash存储芯片的校验装置结构图,所述装置包括如下单元:
[0098]写入单元501,用于将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NAND Flash存储芯片的扩展区;
[0099]具体的,参考图2,所述NAND Flash存储芯片每页2K Bytes,共16K bits,将其排列成128*128的矩阵,对同一行所有点进行异或运算,得到最终的异或值,因此记录所有行的异或值需要128bits ;按照相同的方式对列进行处理,最终行列都需要16Bytes,共32Bytes0
[0100]第一运算单元502,用于将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区;
[0101]具体的,计算所述数据区的数据的Hash值共20Bytes;写入数据时,将32Bytes的异或值写入扩展区(Spare area区),并将计算得到的Hash值的前12Bytes重复的写入Spare area区,具体的参考图3所示。其中,取前12Bytes主要是考虑存储芯片的存储容量,取Hash值的前12Bytes重复写入Spare area区。重复写入是考虑到存储芯片有可能存储时的不稳定性,需要双份Hash计算新的Hash值,以避免存储芯片的不稳定行造成的误差。
[0102]计算单元503,用于取出所述数据区的数据,并计算所述数据区的数据的Hash值;
[0103]第二运算单元504,用于取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值;
[0104]具体的,对比所述双份Hash值,若所述双份Hash在相同的行列位置Hash值同时为O,则取所述相同的行列位置的Hash值为I,否则Hash值为O,得到新的Hash值。
[0105]纠错单元505,用于对比所述数据区的数据的Hash值和所述新的Hash是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,获取出现错误的列和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
[0106]具体的,当所述数据区的数据的Hash值和所述新的Hash值不同时,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,如,计算后的数据区的第一行数据的行异或值对比所述扩展区的存储的第一行数据的行异或值,当计算得到的第一行数据的行异或值和存储的第一行数据的异或值不同,则可获取该行是出现错误的行;同理,可获取出现错误的列的数量和位置。若出现错误的行或者出现错误的列大于2时,则返回错误;若出现错误的行或者出现错误的列小于或者等于2时,则根据出现错误的列和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
[0107]作为一种可优选的实施例,所述装置还包括:
[0108]返回单元,用于当对比所述数据区的数据的Hash值和所述新的Hash值相同时,则返回正确。
[0109]作为另一种可优选的实施例,所述返回单元包括:
[0110]当出现错误的行或者出现错误的列大于2时,则返回错误。
[0111]可优选一,所述纠错单元505,包括:
[0112]当出现错误的列为O、出现错误的行为I时,根据所述错误行所在的坐标确定所述错误行所在的位置;
[0113]当对所述错误行的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据;
[0114]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据;
[0115]对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据;
[0116]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
[0117]基于所述可优选一的实施例的基础上,作为另一种可优选的实施例,所述装置还包括第一返回单元506,包括:
[0118]若对所述错误行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0119]可优选二,所述纠错单元505,包括:
[0120]当出现错误的列为O、出现错误的行为2时,根据出现错误的两行所在的坐标确定所述出现错误的两行所在的位置;
[0121]对所述出现错误的两行的其中一列的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,贝U返回正确,并保留所述其中一列的两位数据进行取反后的数据;
[0122]若计算的Hash值和所述新的Hash值不同,则将所述其中一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的两位数据未进行取反的数据;
[0123]对所述出现错误的两行的其中一列的下一列的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一列的下一列的两位数据进行取反后的数据;
[0124]若计算的Hash值和所述新的Hash值不同,则将所述其中一列的下一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的下一列的两位数据未进行取反的数据,依次类推。
[0125]基于可优选二的实施例,作为另一种可优选的实施例,所述装置还包括第二返回单元507,包括:
[0126]若对所述出现错误的两行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0127]可优选三,所述纠错单元505,包括:
[0128]当出现错误的列为1、出现错误的行为O时,根据所述错误列所在的坐标确定所述错误列所在的位置;
[0129]当对所述错误列的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据;
[0130]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据;
[0131]对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据;
[0132]若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
[0133]基于可优选三的实施例,作为另一种可优选的实施例,所述装置还包括第三返回单元508,包括:
[0134]若对所述错误列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0135]可优选四,所述纠错单元505,包括:
[0136]当出现错误的列为1、出现错误的行为I时,根据错误行和错误列所在的坐标确定所述错误行和错误列所在位置;
[0137]对所述所在的位置的数据进行取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;
[0138]若计算的Hash值和所述新的Hash值不同,否则返回错误。
[0139]可优选五,所述纠错单元505,包括:
[0140]当出现错误列为1,错误行为2时,当出现在同一错误列的两个错误行的数据时,执行当出现错误的列为O、出现错误的行为2时的步骤;
[0141]当出现错误为1,错误行为2时,并且当所述错误行中的某一位数据错误,另一个错误行和所述错误列对应的点所在的位置的数据错误时,对所述出现错误的两行分别执行当出现错误的列为O、出现错误的行为I时的步骤。
[0142]可优选六,所述纠错单元506,包括:
[0143]当出现错误的列为2、出现错误的行为O时,根据出现错误的两列所在的坐标确定所述出现错误的两列所在的位置;
[0144]对所述出现错误的两列的其中一行的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的两位数据进行取反后的数据;
[0145]若计算的Hash值和所述新的Hash值不同,则将所述其中一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的两位数据未进行取反的数据;
[0146]对所述出现错误的两列的其中一行的下一行的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的下一行的两位数据进行取反后的数据;
[0147]若计算的Hash值和所述新的Hash值不同,则将所述其中一行的下一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的下一行的两位数据未进行取反的数据,依次类推。
[0148]基于可优选六,作为另一种可优选的实施例,所述装置还包括第四返回单元509,包括:
[0149]若对所述出现错误的两列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
[0150]可优选七,所述纠错单元505,包括:
[0151]当出现错误列为2,错误行为I时,当出现所述同一行的两个错误列的数据时,执行当出现错误的列为2、出现错误的行为O的步骤;
[0152]当出现错误列为2,错误行为I时,并且当所述错误列中的某一位数据错误,另一个错误列和所述错误行对应的点所在的位置的数据错误时,对所述出现错误的两列分别执行当出现错误的列为1、出现错误的行为O时的步骤。
[0153]可优选八,所述纠错单元505,包括:
[0154]当出现错误行为2,错误列为2时,当第一错误行和第一错误列、第二错误行和第二错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误;
[0155]当出现错误行为2,错误列为2时,当第一错误行和第二错误列、第二错误行和第一错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误。
[0156]具体的,参考图4所示的方法示意图。
[0157]作为另一种可优选的实施例,当执行完上述所有单元后不能纠错时,则返回多位错误。
[0158]本发明提供一种NAND Flash存储芯片的校验装置,根据写入扩展区中每页数据的行列异或值、Hash值,比较数据区的数据内容和计算的数据区的Hash,能够纠正一位及两位错误,并能发现多位错误,从而确保存放在NAND Flash芯片内数据的完整性及准确性,起到减少文件系统崩溃的风险。
[0159]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种NAND Flash存储芯片的校验方法,所述方法包括: 将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NANDFlash存储芯片的扩展区; 将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区; 取出所述数据区的数据,并计算所述数据区的数据的Hash值; 取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值; 对比所述数据区的数据的Hash值和所述新的Hash值是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,获取出现错误的行和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括: 当对比所述数据区的数据的Hash值和所述新的Hash值相同时,则返回正确。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 当出现错误的行或者出现错误的列大于2时,则返回错误。
4.根据权利要求3所述的方法,其特征在于,所述对双份Hash值做运算得到新的Hash值,包括: 对比所述双份Hash值,若所述双份Hash在相同的行列位置Hash值同时为O,则取所述相同的行列位置的Hash值为I,否则Hash值为O,得到新的Hash值。
5.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误的列为O、出现错误的行为I时,根据所述错误行所在的坐标确定所述错误行所在的位置; 当对所述错误行按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据; 对所述按照预先设置的顺序对所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括: 若对所述错误行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
7.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误的列为O、出现错误的行为2时,根据出现错误的两行所在的坐标确定所述出现错误的两行所在的位置; 对所述出现错误的两行的其中一列的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,贝U返回正确,并保留所述其中一列的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的两位数据未进行取反的数据; 对所述出现错误的两行的其中一列的下一列的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一列的下一列的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一列的下一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的下一列的两位数据未进行取反的数据,依次类推。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括: 若对所述出现错误的两行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
9.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错·,包括: 当出现出现错误的列为1、出现错误的行为O时,根据所述错误列所在的坐标确定所述错误列所在的位置; 当对所述错误列的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据; 对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括: 若对所述错误列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
11.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括:当出现错误的列为1、出现错误的行为I时,根据错误行和错误列所在的坐标确定所述错误行和错误列所在位置; 对所述所在的位置的数据进行取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,否则返回错误。
12.根据权利要求11所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误列为1,错误行为2时,当出现在同一错误列的两个错误行的数据时,执行当出现错误的列为O、出现错误的行为2时的步骤; 当出 现错误为1,错误行为2时,并且当所述错误行中的某一位数据错误,另一个错误行和所述错误列对应的点所在的位置的数据错误时,对所述出现错误的两行分别执行当出现错误的列为O、出现错误的行为I时的步骤。
13.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误的列为2、出现错误的行为O时,根据出现错误的两列所在的坐标确定所述出现错误的两列所在的位置; 对所述出现错误的两列的其中一行的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,贝U返回正确,并保留所述其中一行的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的两位数据未进行取反的数据; 对所述出现错误的两列的其中一行的下一行的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的下一行的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一行的下一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的下一行的两位数据未进行取反的数据,依次类推。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括: 若对所述出现错误的两列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
15.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误列为2,错误行为I时,当出现所述同一行的两个错误列的数据时,执行当出现错误的列为2、出现错误的行为O的步骤; 当出现错误列为2,错误行为I时,并且当所述错误列中的某一位数据错误,另一个错误列和所述错误行对应的点所在的位置的数据错误时,对所述出现错误的两列分别执行当出现错误的列为1、出现错误的行为O时的步骤。
16.根据权利要求4所述的方法,其特征在于,所述根据出现错误的行和出现错误的列的数量和位置进行纠错,包括: 当出现错误行为2,错误列为2时,当第一错误行和第一错误列、第二错误行和第二错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误; 当出现错误行为2,错误列为2时,当第一错误行和第二错误列、第二错误行和第一错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误。
17.一种NAND Flash存储芯片的校验装置,所述装置包括: 写入单元,用于将NAND Flash存储芯片每页中数据区的数据,对同一行上所有数据进行异或运算得到异或值,并对同一列上所有数据进行异或运算得到异或值,将行列的异或值写入所述NAND Flash存储芯片的扩展区; 第一运算单元,用于将所述数据区的数据进行Hash运算,将运算的结果存储双份到所述扩展区; 计算单元,用于取出所述数据区的数据,并计算所述数据区的数据的Hash值; 第二运算单元,用于取出存放在所述扩展区的行列异或值和双份Hash值,并对双份Hash值做运算得到新的Hash值; 纠错单元,用于对比所述数据区的数据的Hash值和所述新的Hash是否相同,若否,则对所述数据区的数据做行列异或运算,并将运算后的行列异或值和所述扩展区的行列异或值进行对比,获取出现错误的行和出现错误的列的数量和位置,并根据出现错误的行和出现错误的列的数量和位置进行纠错。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括: 返回单元,用于当对比所述数据区的数据的Hash值和所述新的Hash值相同时,则返回正确。
19.根据权利要求17或18所述的装置,其特征在于,所述返回单元,包括: 当出现错误的行或者出现错误的列大于2时,则返回错误。
20.根据权利要求19所述的装置,其特征在于,所述第二运算单元,包括: 对比所述双份Hash值,若所述双份Hash在相同的行列位置Hash值同时为O,则取所述相同的行列位置的Hash值为I,否则Hash值为O,得到新的Hash值。
21.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误的列为O、出现错误的行为I时,根据所述错误行所在的坐标确定所述错误行所在的位置; 当对所述错误行的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据;对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
22.根据权利要求21所述的装置,其特征在于,所述装置还包括第一返回单元,所述第一返回单元包括: 若对所述错误行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
23.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误的列为O、出现错误的行为2时,根据出现错误的两行所在的坐标确定所述出现错误的两行所在的位置; 对所述出现错误的两行的其中一列的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,贝U返回正确,并保留所述其中一列的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的两位数据未进行取反的数据; 对所述出现错误的两行的其中一列的下一列的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一列的下一列的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一列的下一列的两位数据恢复到原先数据,所述原先数据是所述其中一列的下一列的两位数据未进行取反的数据,依次类推。
24.根据权利要求23所述的装置,其特征在于,所述装置还包括第二返回单元,包括: 若对所述出现错误的两行的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
25.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误的列为1、出现错误的行为O时,根据所述错误列所在的坐标确定所述错误列所在的位置; 当对所述错误列的按照预先设置的顺序从所述顺序的第一位数据做取反后,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据未进行取反的数据; 对所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述按照预先设置的顺序从所述顺序的第一位数据的下一位数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,则将所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据恢复到原先数据,所述原先数据是所述按照预先设置的顺序从所述顺序的第一位数据的下一位的数据未进行取反的数据,依次类推。
26.根据权利要求25所述的装置,其特征在于,所述装置还包括第三返回单元,所述第三返回单元包括: 若对所述错误列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
27.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误的列为1、出现错误的行为I时,根据错误行和错误列所在的坐标确定所述错误行和错误列所在位置; 对所述所在的位置的数据进行取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,否则返回错误。
28.根据权利要求27所述的装置,其特征在于,所述纠错单元,包括: 当出现错误列为1,错误行为2时,当出现在同一错误列的两个错误行的数据时,执行当出现错误的列为O、出现错误的行为2时的步骤; 当出现错误为1,错误行为2时,并且当所述错误行中的某一位数据错误,另一个错误行和所述错误列对应的点所在的位置的数据错误时,对所述出现错误的两行分别执行当出现错误的列为O、出现错误的行为I时的步骤。`
29.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误的列为2、出现错误的行为O时,根据出现错误的两列所在的坐标确定所述出现错误的两列所在的位置; 对所述出现错误的两列的其中一行的两位数据同时取反时,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,贝U返回正确,并保留所述其中一行的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的两位数据未进行取反的数据; 对所述出现错误的两列的其中一行的下一行的两位数据同时做取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述其中一行的下一行的两位数据进行取反后的数据; 若计算的Hash值和所述新的Hash值不同,则将所述其中一行的下一行的两位数据恢复到原先数据,所述原先数据是所述其中一行的下一行的两位数据未进行取反的数据,依次类推。
30.根据权利要求29所述的装置,其特征在于,所述装置还包括第四返回单元,所述第四返回单元包括: 若对所述出现错误的两列的所有位数据依次做取反后,当计算的Hash值和所述新的Hash值都不相同时,则返回错误。
31.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括:当出现错误列为2,错误行为I时,当出现所述同一行的两个错误列的数据时,执行当出现错误的列为2、出现错误的行为O的步骤; 当出现错误列为2,错误行为I时,并且当所述错误列中的某一位数据错误,另一个错误列和所述错误行对应的点所在的位置的数据错误时,对所述出现错误的两列分别执行当出现出现错误的列为1、出现错误的行为O时的步骤。
32.根据权利要求20所述的装置,其特征在于,所述纠错单元,包括: 当出现错误行为2,错误列为2时,当第一错误行和第一错误列、第二错误行和第二错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误; 当出现错误行为2,错误列为2时,当第一错误行和第二错误列、第二错误行和第一错误列坐标对应的数据进行取反,计算整个数据区的数据的Hash值,若计算的Hash值和所述新的Hash值相同,则 返回正确,并保留所述所述所在的位置的数据进行取反后的数据;若计算的Hash值和所述新的Hash值不同,否则返回错误。
【文档编号】G11C29/42GK103578565SQ201210468353
【公开日】2014年2月12日 申请日期:2012年11月19日 优先权日:2012年7月19日
【发明者】万籁民, 韦献康, 刘绍海 申请人:百富计算机技术(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1