发明内容
有鉴于上述情况,本发明提供了一种具有可变容量的存储装置的电子设备及其数据备份恢复方法,其通过使用可以在SLC模式与MLC或TLC模式之间实现转换的NAND闪存单元作为存储装置之一,在需要更大的备份空间时执行NAND闪存单元的模式转换,从而实现在电子设备内部执行不同存储装置之间数据的备份和恢复,而无需借助其它外部设备。
根据本发明的一个实施例,提供了一种数据备份和恢复方法,应用于一电子设备,所述电子设备具有第一存储装置、第二存储装置和控制单元,所述第一存储装置由多个存储单元构成,所述多个存储单元中的每个处于第一存储状态,处于所述第一存储状态的存储单元用于存储1比特数据,所述数据备份和恢复方法包括:所述控制单元接收对于第二存储装置的数据备份指令;所述控制单元判断所述第一存储装置的空闲存储空间是否大于所述第二存储装置中备份数据的数据量;如果所述第一存储装置的空闲存储空间大于等于所述第二存储装置中备份数据的数据量,则所述控制单元控制将所述第二存储装置中备份数据复制到所述第一存储装置;如果所述第一存储装置的空闲存储空间小于所述第二存储装置中备份数据的数据量,则所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第二存储状态,并且所述控制单元控制将所述第二存储装置中备份数据复制到转换后的所述第一存储装置,其中,处于所述第二存储状态的存储单元用于存储X比特数据,X为大于1的自然数。
此外,根据本发明的一个实施例的数据备份和恢复方法,所述数据备份和恢复方法进一步包括:在所述控制单元控制将所述第二存储装置中备份数据复制到所述第一存储装置之后,所述控制单元接收对于第二存储装置的数据恢复指令;以及所述控制单元控制将复制到所述第一存储装置中的备份数据复制回所述第二存储装置,并且删除所述第一存储装置中的备份数据。
此外,根据本发明的一个实施例的数据备份和恢复方法,所述数据备份和恢复方法进一步包括:在所述控制单元控制将所述第二存储装置中备份数据复制到转换后的所述第一存储装置之后,所述控制单元接收对于第二存储装置的数据恢复指令;所述控制单元控制将复制到所述第一存储装置中的备份数据复制回所述第二存储装置,并且删除所述第一存储装置中的备份数据;以及所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第一存储状态。
此外,根据本发明的一个实施例的数据备份和恢复方法,其中所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第二存储状态包括:所述控制单元基于所述第一存储装置的空闲存储空间和所述第二存储装置中备份数据的数据量确定X值,并且所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为对应于所述X值的第二存储状态。
此外,根据本发明的一个实施例的数据备份和恢复方法,其中所述第一存储装置还包括缓冲存储区域,所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为对应于所述X值的第二存储状态包括:所述控制单元控制将所述第一存储装置中的所述多个存储单元中的一个存储单元内存储的数据复制到所述缓冲存储区域,将所述一个存储单元转变为第二存储状态,将复制到所述缓冲存储区域的数据恢复回转变后处于第二存储状态的所述一个存储单元,此后重复直到处于第一存储状态的存储单元全部转变为处于第二存储状态的存储单元。
根据本发明的另一实施例,提供了一种电子设备,包括:第一存储装置,由多个存储单元构成,所述多个存储单元中的每个处于第一存储状态,处于所述第一存储状态的存储单元用于存储1比特数据;第二存储装置;以及控制单元,其中,所述控制单元接收对于第二存储装置的数据备份指令;所述控制单元判断所述第一存储装置的空闲存储空间是否大于所述第二存储装置中备份数据的数据量;如果所述第一存储装置的空闲存储空间大于等于所述第二存储装置中备份数据的数据量,则所述控制单元控制将所述第二存储装置中备份数据复制到所述第一存储装置;如果所述第一存储装置的空闲存储空间小于所述第二存储装置中备份数据的数据量,则所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第二存储状态,并且所述控制单元控制将所述第二存储装置中备份数据复制到转换后的所述第一存储装置,其中,处于所述第二存储状态的存储单元用于存储X比特数据,X为大于1的自然数。
此外,根据本发明的另一实施例的电子设备,其中在所述控制单元控制将所述第二存储装置中备份数据复制到所述第一存储装置之后,所述控制单元接收对于第二存储装置的数据恢复指令;以及所述控制单元控制将复制到所述第一存储装置中的备份数据复制回所述第二存储装置,并且删除所述第一存储装置中的备份数据。
此外,根据本发明的另一实施例的电子设备,其中在所述控制单元控制将所述第二存储装置中备份数据复制到转换后的所述第一存储装置之后,所述控制单元接收对于第二存储装置的数据恢复指令;所述控制单元控制将复制到所述第一存储装置中的备份数据复制回所述第二存储装置,并且删除所述第一存储装置中的备份数据;以及所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第一存储状态。
此外,根据本发明的另一实施例的电子设备,其中所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为第二存储状态包括:所述控制单元基于所述第一存储装置的空闲存储空间和所述第二存储装置中备份数据的数据量确定X值,并且所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为对应于所述X值的第二存储状态。
此外,根据本发明的另一实施例的电子设备,其中所述第一存储装置还包括缓冲存储区域,所述控制单元控制将所述第一存储装置中的所述多个存储单元转换为对应于所述X值的第二存储状态包括:所述控制单元控制将所述第一存储装置中的所述多个存储单元中的一个存储单元内存储的数据复制到所述缓冲存储区域,将所述一个存储单元转变为第二存储状态,将复制到所述缓冲存储区域的数据恢复回转变后处于第二存储状态的所述一个存储单元,此后重复直到处于第一存储状态的存储单元全部转变为处于第二存储状态的存储单元。
根据本发明实施例的具有可变容量的存储装置的电子设备及其数据备份恢复方法,其通过使用可以在SLC模式与MLC或TLC模式之间实现转换的NAND闪存单元作为存储装置之一,在需要更大的备份空间时执行NAND闪存单元的模式转换,从而实现在电子设备内部执行不同存储装置之间数据的备份和恢复,而无需借助其它外部设备。
要理解的是,前面的一般描述和下面的详细描述两者都是示例性的,并且意图在于提供要求保护的技术的进一步说明。
具体实施方式
下文中,将参照附图描述多个实施例、应用和修改。此外,下面描述的实施例是优选的特定示例,并且设置了技术上优选的各种限制,但是在以下描述中,本发明不限于这些实施例。
首先,将参照图1描述根据本发明实施例的电子设备。所述电子设备优选地例如是个人计算机、智能手机、个人数字助理、掌上电脑等。
图1是图示根据本发明实施例的电子设备的框图。如图1所示,根据本发明实施例的电子设备1具有第一存储装置10、第二存储装置20和控制单元30。一般地,第一存储装置10为内部存储器,第二存储装置20为外部存储器。第二存储装置20的存储容量大于第一存储装置10的存储容量。在本发明的一个优选实施例中,第一存储装置10由多个存储单元构成,所述多个存储单元中的每个处于第一存储状态和第二存储状态之一,处于所述第一存储状态的存储单元与处于所述第二存储状态的存储单元具有不同的存储容量。例如,处于所述第一存储状态的存储单元是用于存储1比特数据的单层单元(SLC),并且处于所述第二存储状态的存储单元是用于存储2或3比特数据的多层单元(MLC)或三层单元(TLC)。因此,第一存储装置10具有可动态改变的存储容量。稍后将参照图2进一步详细描述第一存储装置10的具体结构配置。
以下,将参照图2进一步具体描述根据本发明实施例的电子设备1中的第一存储装置10。
图2是图示根据本发明实施例的存储装置的框图。如图2所示,根据本发明实施例的第一存储装置10包括第一存储区域110、第二存储区域120、第三存储区域130。
具体地,第一存储区域110包括处于第一存储状态的多个存储单元1、存储单元2、…存储单元m。在本发明的一个实施例中,处于所述第一存储状态的m个存储单元1到存储单元m是用于存储1比特数据的单层单元(SLC),其利用正、负两种电荷、一个浮动栅存储1比特的信息,并且具有约10万次擦写寿命。
第二存储区域120包括处于第二存储状态的多个存储单元m+1、存储单元m+2、…存储单元m+n。在本发明的一个实施例中,处于所述第二存储状态的n个存储单元m+1到存储单元m+n是用于存储2比特数据的多层单元(MLC)或用于存储3比特数据的三层单元(TLC)。多层单元(MLC)利用不同电位的电荷、一个浮动栅存储2比特的信息,并且具有约一万次擦写寿命。三层单元(TLC)利用不同电位的电荷、一个浮动栅存储3比特的信息,并且具有约500-1000次擦写寿命。
由此可见,处于第一存储状态的存储单元比处于第二存储状态的存储单元具有更快的读写速度和更长的使用寿命,但是其存储容量为后者的1/2或1/3。
此外,第三存储区域130由处于第一存储状态或第二存储状态的存储单元构成。第三存储区域130为第一存储装置10的过配区。稍后将参照图7描述由第三存储区域130参与的第一存储装置10的状态转换过程。
在本发明的一个优选实施例中,控制单元30可以控制所有存储单元为处于第一存储状态的SLC,从而实现高速读写性能和最长的使用寿命。在本发明的另一个优选实施例中,控制单元30可以控制所有存储单元为处于第二存储状态的MLC或TLC,从而实现最大的存储容量。在本发明的又一个优选实施例中,预先配置预定比例的存储单元处于第一存储状态,该预定比例可以但不限于为15%-20%。同时,第一存储装置10报告给其所属电子设备1的存储容量可以仍然为全部存储单元为TLC状态下的存储容量。
以上,参照图1和图2描述了根据本发明实施例的电子设备和存储装置。以下,将参照图3到图7进一步描述用于根据本发明实施例的数据备份方法。在以下的描述中,将在开始实施数据备份方法时第一存储装置10的所有存储单元为处于第一存储状态的SLC的假设下进行说明。然而,容易理解的是,本发明不限于此,开始实施数据备份方法时,第一存储装置10的存储单元可以一部分处于第一存储状态,而另一部分处于第二存储状态。
图3是图示根据本发明实施例的数据备份方法的流程图。如图3所示,根据本发明实施例的数据备份方法包括以下步骤。
在步骤S301中,所述控制单元30接收对于第二存储装置20的数据备份指令。该数据备份指令指示第二存储装置20中要备份的数据及其大小。此后,处理进到步骤S302。
在步骤S302中,所述控制单元30判断所述第一存储装置10的空闲存储空间是否大于所述第二存储装置20中备份数据的数据量。
如果在步骤S302中获得肯定结果,即所述第一存储装置10的空闲存储空间大于等于所述第二存储装置20中备份数据的数据量,则处理进到步骤S303。
在步骤S303中,所述控制单元30控制将所述第二存储装置20中备份数据复制到所述第一存储装置10。
相反地,如果在步骤S302中获得否定结果,即所述第一存储装置10的空闲存储空间小于所述第二存储装置20中备份数据的数据量,则处理进到步骤S304。
在步骤S304中,所述控制单元30控制将所述第一存储装置10中的所述多个存储单元转换为第二存储状态。稍后将参照图4详细描述所述控制单元30如何确定将所述第一存储装置10中的所述多个存储单元转换为第二存储状态。此后,处理进到步骤S305。
在步骤S305中,所述控制单元30控制将所述第二存储装置20中备份数据复制到转换后的所述第一存储装置10。
根据如图3所示的数据备份方法,可以动态实现第二存储装置20中的数据备份。具体地,在第一存储装置10中的剩余空闲空间能够满足第二存储装置20中的数据备份需要时,直接将需要备份的数据复制备份到第一存储装置10。而当在第一存储装置10中的剩余空闲空间不能够满足第二存储装置20中的数据备份需要时,动态地将所述第一存储装置10中的所述多个存储单元转换为第二存储状态,即由每个单元存储1比特数据的第一存储状态转换为每个单元存储2比特数据或3比特数据的第二存储状态,从而扩大第一存储装置10的存储空间,以便满足第二存储装置20中的数据备份需要。以下,将参照图4进一步描述如何确定将多个存储单元转换为存储2比特数据或3比特数据的哪一种。
图4是图示根据本发明实施例的数据备份方法中存储装置的转换确定过程的流程图。
如图4所示,在步骤S3041中,所述控制单元30基于第一存储装置10的空闲存储空间和第二存储装置20中备份数据的数据量确定转换方式,即确定转换为MLC单元还是TLC单元。此后,处理进到步骤S3042。
在步骤S3042中,判断转换后的第一存储装置10的空闲存储空间是否大于等于第二存储装置20中备份数据的数据量。
如果在步骤S3042中获得肯定结果,即转换后的第一存储装置10的空闲存储空间大于等于第二存储装置20中备份数据的数据量,则处理进到步骤S3043。
在步骤S3043中,所述控制单元30控制将第一存储装置10中的多个存储单元转换为对应的第二存储状态。
如果在步骤S3044中获得否定结果,即转换后的第一存储装置10的空闲存储空间小于第二存储装置20中备份数据的数据量,则处理进到步骤S3044。
在步骤S3044中,所述控制单元30提示用户内部备份空间不足。
以上,参照图3和图4描述了根据本发明实施例的数据备份处理。以下,将参照图5和图6描述根据本发明实施例的数据恢复处理。
图5是图示根据本发明一个实施例的数据恢复方法的流程图。图5所示的数据恢复方法续接于图3所示的数据备份方法中的步骤S303。如图5所示,根据本发明一个实施例的数据恢复方法包括以下步骤。
在步骤S501中,所述控制单元30接收对于第二存储装置20的数据恢复指令。此后,处理进到步骤S502。
在步骤S502中,所述控制单元30控制将复制到所述第一存储装置10中的备份数据复制回所述第二存储装置20。此后,处理进到步骤S503。
在步骤S503中,所述控制单元30控制删除所述第一存储装置10中的备份数据。
图6是图示根据本发明另一个实施例的数据恢复方法的流程图。图6所示的数据恢复方法续接于图3所示的数据备份方法中的步骤S305。如图6所示,根据本发明另一个实施例的数据恢复方法包括以下步骤。
在步骤S601中,所述控制单元30接收对于第二存储装置20的数据恢复指令。此后,处理进到步骤S602。
在步骤S602中,所述控制单元30控制将复制到所述第一存储装置10中的备份数据复制回所述第二存储装置20。此后,处理进到步骤S603。
在步骤S603中,所述控制单元30控制删除所述第一存储装置10中的备份数据。此后,处理进到步骤S604。
在步骤S604中,将第一存储装置10中的多个存储单元转换为第一存储状态。
上述图5和图6分别描述了对应于第一存储装置10的多个存储单元不存在和存在状态转换的数据恢复方法。以下,将参照图7详细描述第一存储装置10的多个存储单元的状态转换过程。
图7是图示根据本发明实施例的存储装置的状态转换过程的流程图。如图7所示,根据本发明实施例的存储装置的状态转换过程包括以下步骤。
在步骤S701中,控制单元30将第一存储装置10中的多个存储单元中的一个存储单元内存储的数据复制到缓冲存储区域。此后,处理进到步骤S702。
在步骤S702中,控制单元30将该处于第一存储状态的一个存储单元转变为处于第二存储状态的存储单元。此后,处理进到步骤S703。
在步骤S703中,控制单元30将复制到缓冲存储区域的数据恢复回转变后处于第二存储状态的所述一个存储单元。此后,处理进到步骤S704。
在步骤S704中,控制单元30判断处于第一存储状态的存储单元是否全部转变为处于第二存储状态的存储单元。
如果在步骤S704中获得肯定结果,则存储装置的状态转换过程结束。
相反地,如果在步骤S704中获得否定结果,则处理返回步骤S701中,重复上述转换过程直到处于第一存储状态的存储单元全部转变为处于第二存储状态的存储单元。
根据本发明实施例的存储装置的状态转换过程,实现以边转换边复制的机制将数据复制到转换后的存储单元中,从而使得可以根据需要动态转换存储装置10中的每个存储单元的状态。
以上参照图1到图7描述了根据本发明实施例的具有可变容量的存储装置的电子设备及其数据备份恢复方法,其通过使用可以在SLC模式与MLC或TLC模式之间实现转换的NAND闪存单元作为存储装置之一,在需要更大的备份空间时执行NAND闪存单元的模式转换,从而实现在电子设备内部执行不同存储装置之间数据的备份和恢复,而无需借助其它外部设备。
需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后,还需要说明的是,上述一系列处理不仅包括以这里所述的顺序按时间序列执行的处理,而且包括并行或分别地、而不是按时间顺序执行的处理。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。