CN106227625A - 一种因掉电而损坏的闪存数据的恢复方法及系统 - Google Patents

一种因掉电而损坏的闪存数据的恢复方法及系统 Download PDF

Info

Publication number
CN106227625A
CN106227625A CN201610801826.7A CN201610801826A CN106227625A CN 106227625 A CN106227625 A CN 106227625A CN 201610801826 A CN201610801826 A CN 201610801826A CN 106227625 A CN106227625 A CN 106227625A
Authority
CN
China
Prior art keywords
data
district
erasable
block district
operation information
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
Application number
CN201610801826.7A
Other languages
English (en)
Other versions
CN106227625B (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.)
Shenzhen Zhenyou Software Technology Co.,Ltd.
Original Assignee
Shenzhen Genew Technologies Co Ltd
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 Shenzhen Genew Technologies Co Ltd filed Critical Shenzhen Genew Technologies Co Ltd
Priority to CN201610801826.7A priority Critical patent/CN106227625B/zh
Publication of CN106227625A publication Critical patent/CN106227625A/zh
Application granted granted Critical
Publication of CN106227625B publication Critical patent/CN106227625B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及数据存储技术领域,公开了一种因掉电而损坏的闪存数据的恢复方法及系统,方法包括:预先将闪存的存储空间按照访问地址由小到大编号为1‑N个可擦写的块区,将第N‑1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N‑2块区为进行擦写操作的目标块区;记录正在擦写的目标块区的操作信息到所述第N‑1块区,并且将所述目标块区的原始数据备份到所述第N块区;擦写完成后,当系统启动闪存初始化时,当因掉电中断了数据擦写流程并且损坏数据时,读取第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。本发明不依赖其它器件,仅额外占用闪存两个块区,就能在系统重启时检测到掉电损坏的数据并恢复出原有数据。

Description

一种因掉电而损坏的闪存数据的恢复方法及系统
技术领域
本发明涉及数据存储技术领域,公开了一种因掉电而损坏的闪存数据的恢复方法及系统。
背景技术
存储器是当前电子信息领域相当重要的元件,主要用于保存系统中的数据信息,闪存(Flash Memory)是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位,区块大小一般为256KB到20MB。闪存是电子可擦除只读存储器(EEPROM)的变种,闪存与EEPROM不同的是,EEPROM能在字节水平上进行删除和重写而不是整个芯片擦写,而闪存的大部分芯片需要块擦除。由于其断电时仍能保存数据,闪存通常被用来保存设置信息,如在电脑的BIOS(基本程序)、PDA(个人数字助理)、数码相机中保存资料等,目前闪存技术高速发展,闪存存取比较快速,无噪音,散热小,但其基本读写方式却未改变,以块为单位擦除,而且必须经擦除之后才能写入数据,因为闪存的这个特性,一般是以块为单位进行闪存的数据存储。
嵌入式计算机系统中,一般都会采用闪存(Flash Memory)芯片来保存配置数据,这些配置数据或高或低频度需要擦写,闪存的存储空间是由N个块区组成,最小擦写单位是一个块区;在执行擦写块区数据的过程中突发设备掉电,会导致正在擦写的块区数据损坏而又无法恢复的问题。
因此,针对上述缺陷,现有技术还有待于改进和发展。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种因掉电而损坏的闪存数据的恢复方法及系统,旨在通过当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据,方便用户对数据的写入和存储。
本发明解决技术问题所采用的技术方案如下:
一种因掉电而损坏的闪存数据的恢复方法,其中,包括:
步骤A,预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;
步骤B,当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;
步骤C,擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。
所述因掉电而损坏的闪存数据的恢复方法,其中,所述目标块区的操作信息包括:目标块区的位置编号i、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值。
所述因掉电而损坏的闪存数据的恢复方法,其中,所述目标块区的位置编号i包括第1块区至第N-2块区中的任意块区,所述校验值采用MD5算法计算得到,用来校验数据的正确性。
所述因掉电而损坏的闪存数据的恢复方法,其中,所述步骤C还包括:
当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程。
所述因掉电而损坏的闪存数据的恢复方法,其中,所述步骤C具体包括:
C1,根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程;
C2,根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程;
C3,当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息。
一种因掉电而损坏的闪存数据的恢复系统,其中,包括:
预先设置模块,用于预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;
记录备份模块,用于当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;
数据恢复模块,用于擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述记录备份模块中目标块区的操作信息包括:目标块区的位置编号i、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述目标块区的位置编号i包括第1块区至第N-2块区中的任意块区,所述校验值采用MD5算法计算得到,用来校验数据的正确性。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述数据恢复模块还包括:
第一判断单元,用于当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述数据恢复模块具体包括:
第二判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程;
第三判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程;
恢复清空单元,用于当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息。
本发明公开了一种因掉电而损坏的闪存数据的恢复方法及系统,方法包括:预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。本发明不依赖其它器件,通过额外占用闪存两个块区,就能在系统重启时检测到掉电损坏的数据并恢复出原有数据,方便用户对数据的写入和存储。
附图说明
图1是本发明因掉电而损坏的闪存数据的恢复方法的较佳实施例的流程图。
图2是本发明因掉电而损坏的闪存数据的恢复系统的较佳实施例的功能原理框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1是本发明因掉电而损坏的闪存数据的恢复方法的较佳实施例的流程图。
如图1所示,本发明实施例提供的一种因掉电而损坏的闪存数据的恢复方法,包括以下步骤:
步骤S100,预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区。
本发明中,闪存的存储空间是由N个块区组成,最小擦写单位是一个块区,所以需要预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,而一般的闪存在实际使用中会对所有的N个块区进行擦写操作,而本发明会提前将第N-1块区和第N块区预先分别设置为记录和备份的额外固定块区,而用来记录操作信息和备份原始数据,即这两个块区是不当做擦写来存储数据的,然后将剩下的第1块区至第N-2块区为进行擦写操作的目标块区。
步骤S200,当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区。
本发明中,如上述所说,将第N-1块区和第N块区预先分别设置为记录和备份的额外固定块区,将所述第N-1块区用来记录正在擦写的目标块区的操作信息,将所述第N块区用来备份所述目标块区的原始数据,意思就是在目标块区上进行擦写操作的同时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区,可以当掉电中断了数据擦写流程并且损坏数据后来进行相关恢复闪存数据的操作。
另外,所述目标块区的操作信息包括:目标块区的位置编号i(所述位置编号i的大小为1-N-2,即目标块区在第1块区至第N-2块区的人一个块区)、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值。
所述校验值采用MD5(Message Digest Algorithm MD5:消息摘要算法第五版)算法计算得到,用来校验数据的正确性;MD5算法为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护,MD5算法具有以下特点:
1、压缩性:任意长度的数据,算出的MD5值长度都是固定的;
2、容易计算:从原数据计算出MD5值很容易;
3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别;
4、强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。
本发明使用MD5算法根据块区数据计算得到校验值,使用该校验值与保存的校验值进行比较来判断该块区的数据擦写是否因掉电而损坏。
步骤S300,擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。
本发明中,所述步骤S300还包括:当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程。
所述步骤S300中当判断已经发生了掉电的情况,但是掉电后数据可能被损坏也可能没有被损坏,所以掉电后数据是否损坏也包括如下两种情况,具体包括:
情况一,当根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程,即发生了掉电的情况,但是数据擦写流程没有损坏数据,所以不需要进行数据恢复;
情况二,当根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程,即发生了掉电的情况,同时数据擦写流程损坏了数据,所以需要进行数据恢复;
情况三,当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,因为备份的数据就是擦写流程时写入的数据,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息使之无效。
基于上述实施例,本发明还提供一种因掉电而损坏的闪存数据的恢复系统,请参阅图2,图2是本发明因掉电而损坏的闪存数据的恢复系统的较佳实施例的功能原理框图。
如图2所示,所述系统包括:
预先设置模块210,用于预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;具体如上所述。
记录备份模块220,用于当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;具体如上所述。
数据恢复模块230,用于擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据;具体如上所述。
进一步地,所述因掉电而损坏的闪存数据的恢复系统,其中,所述记录备份模块中目标块区的操作信息包括:目标块区的位置编号i、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值;具体如上所述。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述目标块区的位置编号i包括第1块区至第N-2块区中的任意块区,所述校验值采用MD5算法计算得到,用来校验数据的正确性;具体如上所述。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述数据恢复模块还包括:
第一判断单元,用于当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程;具体如上所述。
所述因掉电而损坏的闪存数据的恢复系统,其中,所述数据恢复模块具体包括:
第二判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程;具体如上所述。
第三判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程;具体如上所述。
恢复清空单元,用于当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息;具体如上所述。
综上所述,本发明公开了一种因掉电而损坏的闪存数据的恢复方法及系统,方法包括:预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。本发明不依赖其它器件,通过额外占用闪存两个块区,就能在系统重启时检测到掉电损坏的数据并恢复出原有数据,方便用户对数据的写入和存储。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种因掉电而损坏的闪存数据的恢复方法,其特征在于,包括:
步骤A,预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;步骤B,当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;
步骤C,擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。
2.根据权利要求1所述因掉电而损坏的闪存数据的恢复方法,其特征在于,所述目标块区的操作信息包括:目标块区的位置编号i、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值。
3.根据权利要求2所述因掉电而损坏的闪存数据的恢复方法,其特征在于,所述目标块区的位置编号i包括第1块区至第N-2块区中的任意块区,所述校验值采用MD5算法计算得到,用来校验数据的正确性。
4.根据权利要求1所述因掉电而损坏的闪存数据的恢复方法,其特征在于,所述步骤C还包括:
当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程。
5.根据权利要求1或2所述因掉电而损坏的闪存数据的恢复方法,其特征在于,所述步骤C具体包括:
C1,根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程;
C2,根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程;
C3,当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息。
6.一种因掉电而损坏的闪存数据的恢复系统,其特征在于,包括:
预先设置模块,用于预先将闪存的存储空间按照访问地址由小到大编号为1-N个可擦写的块区,将第N-1块区和第N块区分别设置为记录和备份的额外固定块区,第1块区至第N-2块区为进行擦写操作的目标块区;
记录备份模块,用于当在擦写所述目标块区时,记录正在擦写的目标块区的操作信息到所述第N-1块区,并且将所述目标块区的原始数据备份到所述第N块区;
数据恢复模块,用于擦写完成后,当系统启动闪存初始化时,读取擦除操作信息判断擦写流程是否因掉电而中断,当因掉电中断了数据擦写流程并且损坏数据时,读取所述第N块区备份的原始数据写入数据损坏的块区来恢复因掉电而损坏的闪存数据。
7.根据权利要求6所述因掉电而损坏的闪存数据的恢复系统,其特征在于,所述记录备份模块中目标块区的操作信息包括:目标块区的位置编号i、目标块区的原始数据校验值、目标块区新写入数据的校验值以及操作信息的自身校验值。
8.根据权利要求7所述因掉电而损坏的闪存数据的恢复系统,其特征在于,所述目标块区的位置编号i包括第1块区至第N-2块区中的任意块区,所述校验值采用MD5算法计算得到,用来校验数据的正确性。
9.根据权利要求6所述因掉电而损坏的闪存数据的恢复系统,其特征在于,所述数据恢复模块还包括:
第一判断单元,用于当系统启动闪存初始化时,读取第N-1块区记录的擦写操作信息,计算擦写操作信息的校验值,如果所述校验值不等于擦写操作信息中的自身校验值,判断出擦写目标块区时没有发生掉电中断损坏数据,则退出数据恢复流程。
10.根据权利要求6所述因掉电而损坏的闪存数据的恢复系统,其特征在于,所述数据恢复模块具体包括:
第二判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程但没有损坏数据,则退出数据恢复流程;
第三判断单元,用于根据操作信息记录的目标块区位置编号i,读取第i块区的数据,计算所述数据的校验值,如果所述校验值不等于操作信息中记录的原始数据校验值或新写入数据的校验值,判断出掉电中断了数据擦写流程而且损坏了数据,则开启数据恢复流程;
恢复清空单元,用于当开启数据恢复流程后,读取所述第N块区备份的原始数据,将所述数据写入到第i块区,从而恢复损坏了的第i块区的数据,并且清空第N-1块区记录的目标块区的操作信息。
CN201610801826.7A 2016-09-05 2016-09-05 一种因掉电而损坏的闪存数据的恢复方法及系统 Active CN106227625B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610801826.7A CN106227625B (zh) 2016-09-05 2016-09-05 一种因掉电而损坏的闪存数据的恢复方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610801826.7A CN106227625B (zh) 2016-09-05 2016-09-05 一种因掉电而损坏的闪存数据的恢复方法及系统

Publications (2)

Publication Number Publication Date
CN106227625A true CN106227625A (zh) 2016-12-14
CN106227625B CN106227625B (zh) 2019-08-20

Family

ID=58074527

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610801826.7A Active CN106227625B (zh) 2016-09-05 2016-09-05 一种因掉电而损坏的闪存数据的恢复方法及系统

Country Status (1)

Country Link
CN (1) CN106227625B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038064A (zh) * 2017-12-20 2018-05-15 北京兆易创新科技股份有限公司 一种PairBlock擦除出错的处理方法及装置
CN111090542A (zh) * 2019-12-17 2020-05-01 深圳忆联信息系统有限公司 基于异常掉电的异常块识别方法、装置及计算机设备
CN112908390A (zh) * 2021-02-02 2021-06-04 深圳市显控科技股份有限公司 数据存储方法、装置、电子设备及存储介质
CN113538754A (zh) * 2021-06-08 2021-10-22 福建新大陆通信科技股份有限公司 一种ctid智能门锁授权数据管理方法及系统
CN114995747A (zh) * 2022-04-28 2022-09-02 宁波均胜新能源汽车技术有限公司 一种充电桩控制器电量数据的处理方法
CN117555725A (zh) * 2023-03-21 2024-02-13 北京星途探索科技有限公司 箭载计算机故障后的恢复方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473776A (en) * 1992-02-20 1995-12-05 Hitachi, Ltd. Data backup method and data processing system having data maintenance function
CN1831786A (zh) * 2005-12-14 2006-09-13 兆日科技(深圳)有限公司 闪速存储器数据完整性保护方法
CN101281493A (zh) * 2008-05-26 2008-10-08 中兴通讯股份有限公司 与非闪存器及其管理方法
CN103530242A (zh) * 2012-07-06 2014-01-22 河南思维自动化设备股份有限公司 NandFlash存储器写操作过程掉电防护方法
CN104216800A (zh) * 2014-08-27 2014-12-17 福建星网视易信息系统有限公司 一种基于数据冗余的系统故障自动恢复方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473776A (en) * 1992-02-20 1995-12-05 Hitachi, Ltd. Data backup method and data processing system having data maintenance function
CN1831786A (zh) * 2005-12-14 2006-09-13 兆日科技(深圳)有限公司 闪速存储器数据完整性保护方法
CN101281493A (zh) * 2008-05-26 2008-10-08 中兴通讯股份有限公司 与非闪存器及其管理方法
CN103530242A (zh) * 2012-07-06 2014-01-22 河南思维自动化设备股份有限公司 NandFlash存储器写操作过程掉电防护方法
CN104216800A (zh) * 2014-08-27 2014-12-17 福建星网视易信息系统有限公司 一种基于数据冗余的系统故障自动恢复方法及装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038064A (zh) * 2017-12-20 2018-05-15 北京兆易创新科技股份有限公司 一种PairBlock擦除出错的处理方法及装置
CN108038064B (zh) * 2017-12-20 2021-01-15 北京兆易创新科技股份有限公司 一种PairBlock擦除出错的处理方法及装置
CN111090542A (zh) * 2019-12-17 2020-05-01 深圳忆联信息系统有限公司 基于异常掉电的异常块识别方法、装置及计算机设备
CN112908390A (zh) * 2021-02-02 2021-06-04 深圳市显控科技股份有限公司 数据存储方法、装置、电子设备及存储介质
CN113538754A (zh) * 2021-06-08 2021-10-22 福建新大陆通信科技股份有限公司 一种ctid智能门锁授权数据管理方法及系统
CN113538754B (zh) * 2021-06-08 2023-04-07 福建新大陆通信科技股份有限公司 一种ctid智能门锁授权数据管理方法及系统
CN114995747A (zh) * 2022-04-28 2022-09-02 宁波均胜新能源汽车技术有限公司 一种充电桩控制器电量数据的处理方法
CN114995747B (zh) * 2022-04-28 2023-03-10 宁波均胜新能源汽车技术有限公司 一种充电桩控制器电量数据的处理方法
CN117555725A (zh) * 2023-03-21 2024-02-13 北京星途探索科技有限公司 箭载计算机故障后的恢复方法

Also Published As

Publication number Publication date
CN106227625B (zh) 2019-08-20

Similar Documents

Publication Publication Date Title
CN106227625A (zh) 一种因掉电而损坏的闪存数据的恢复方法及系统
CN101427323B (zh) 读取非易失性计算机存储器的系统和方法
US8046528B2 (en) Data writing method for flash memory, and flash memory controller and storage device thereof
US8271515B2 (en) System and method for providing copyback data integrity in a non-volatile memory system
JP5675954B2 (ja) メタデータタグを介した不規則なパリティ分布の検出
JP4901987B1 (ja) 記憶装置、電子機器及び誤りデータの訂正方法
US9146854B2 (en) Restoring storage devices based on flash memories and related circuit, system, and method
TWI300937B (en) Memory defect detection and self-repair technique
TWI512742B (zh) 非揮發性快閃記憶體擦除異常存儲塊修復方法和裝置
TWI389122B (zh) 用來存取一快閃記憶體之方法以及相關之記憶裝置及其控制器
KR20070047336A (ko) 전력 손실 회복 메커니즘용 방법, 장치 및 시스템
TW200921360A (en) Data preserving method and data accessing method for non-volatile memory
TWI633428B (zh) 資料儲存裝置與記憶體裝置之資料處理方法
CN110399247A (zh) 一种数据恢复方法、装置、设备及计算机可读存储介质
TW201217968A (en) Data writing method, memory controller and memory storage apparatus
US9524212B2 (en) Method, device and operating system for processing and using burn data of NAND flash
US9384125B2 (en) Method for accessing flash memory having pages used for data backup and associated memory device
WO2017143843A1 (zh) 元数据修复方法及装置
TWI470432B (zh) 電子系統及其快閃記憶體管理方法
TWI616807B (zh) 資料寫入方法以及儲存控制器
CN104598328A (zh) 一种文件系统修复方法、装置及系统
US7788550B2 (en) Redundant bit patterns for column defects coding
US20100169572A1 (en) Data storage method, apparatus and system for interrupted write recovery
CN109375869A (zh) 实现数据可靠读写的方法以及系统、存储介质
WO2017012507A1 (zh) 一种数据恢复方法及装置

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210414

Address after: 518052 area a, 5th floor, Caixun technology building, 3176 Keyuan South Road, Gaoxin community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Zhenyou Software Technology Co.,Ltd.

Address before: 518057 3rd floor, area C, Han's innovation building, 9018 Beihuan Avenue, high tech Zone, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: SHENZHEN GENEW TECHNOLOGY Co.,Ltd.