数据备份装置及方法

文档序号:10577286阅读:1048来源:国知局
数据备份装置及方法
【专利摘要】本发明提供一种的数据备份装置及方法。该数据备份方法在数据备份装置上电时,统计数据备份装置在上电时刻的顺序访问标识对应的死亡块与生存块的数量,在数据备份装置掉电后,根据所统计的数据备份装置在上电时刻的顺序访问标识对应的死亡块与生存块的数量计算上电时刻的每个顺序访问标识对应的死亡块占每个顺序访问标识对应所采样的缓存块总数的比值,并将所计算的比值与一预设阈值比较,根据比较结果预测易失存储单元中的死亡块,在备份时,不对预测为死亡块的缓存块进行备份,从而减少了数据备份量,提高备份效率。
【专利说明】
数据备份装置及方法
技术领域
[0001]本发明涉及数据备份技术领域,特别涉及存储器的数据备份装置及方法。
【背景技术】
[0002]近年来,随着大型多核计算系统(如多核GPU)的发展,高密度、高性能片上缓存的需求日益增加。传统的基于静态随机存储器(static random access memory,SRAM)的缓存结构由于具有较大的泄露电流和较低的集成度,已经成为限制高性能处理系统发展的瓶颈。而新型的非易失存储单元(NonvolatiIe Memory,NVM)通过器件的阻值来存储数据,理论上可以达到更高的集成度,同时具有极低的泄露电流,因此被认为是替代传统的SRAM的理想材料。
[0003]但是,直接使用NVM作为缓存材料,则会出现写功耗、写延时和写容限的问题,限制了其在高速缓存中的应用。非易失SRAM是一种同时包括SRAM和NVM的存储结构,在工作模式下采用SRAM进行数据的存储,在掉电时能够将数据备份到NVM单元中。然而,在掉电后,非易失SRAM需要一个较大的片上储能电容供电以进行数据的备份,所述电容会引入较大的芯片面积开销和成本开销。另外,随着存储容量的增大,并行备份的过程会产生大的峰值电流,从而降低系统的稳定性,而串行备份方式的备份时间会随着备份数据量的增长而增大,影响系统性能,且备份过程是有较大的数据冗余。
[0004]现有的一种备份方法为分段并行压缩架构(SPaC),如图1所示,为将SRAM中的数据分为多段,然后通过压缩模块对每段数据通过游程编码进行压缩,再将压缩后的数据存储在NVM单元中。在这种压缩备份方法中,会对SRAM中的所有数据进行压缩,所以具有较高的数据冗余度;另外,采用这种方法需要在备份和恢复数据前分别进行压缩、解压缩的操作,随着数据量的增大,会需要较长的压缩和解压缩时间,从而对系统性能造成影响。

【发明内容】

[0005]本发明实施例提供数据备份装置及方法,减少数据备份量,提高备份效率。
[0006]本发明实施例第一方面提供一种数据备份装置,所述数据备份装置包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源;
[0007]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M>= 1,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样;
[0008]所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应;
[0009]在所述数据备份装置上电后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;所述处理器还用于对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,并在任何一次对计数器计数之后将所述当前数据操作的缓存块的状态标识变更为已采样;
[0010]在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,以及读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值,将每个To时刻的初始访问顺序标识对应的比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。
[0011]所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括:
[0012]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述预设阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为死亡态;或
[0013]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述预设阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。
[0014]进一步地,在本发明实施例的第一方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0015]所述微处理器预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0016]所述微处理器预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0017]进一步地,在本发明实施例的第一方面中,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0018]进一步地,在本发明实施例的第一方面中,所述预设阈值为0.5。
[0019]本发明实施例的第二方面提供一种数据备份装置,所述数据备份装置包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源;
[0020]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中M> = I,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样;
[0021 ]所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应;
[0022]在所述数据备份装置上电后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;所述处理器还用于对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,并在任何一次对计数器计数之后将所述当前数据操作的缓存块的状态标识变更为已采样;
[0023]在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,以及读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值,根据所述N个TO时刻的初始访问顺序标识各自对应的所述比值确定所述比值为I比2时对应的一访问顺序标识阈值,将每个To时刻的初始访问顺序标识与所述访问顺序标识阈值比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。
[0024]进一步地,在本发明实施例的第二方面中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括:
[0025]当所述N个Tο时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述访问顺序标识阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为死亡态;
[0026]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述访问顺序标识阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。
[0027]进一步地,在本发明实施例的第二方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;所述微处理器预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0028]所述微处理器预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0029]进一步地,在本发明实施例的第二方面中,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0030]本发明实施例的第三方面提供一种数据备份装置,所述数据备份装置包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源;
[0031 ]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = I,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新,每个缓存块包括最近使用位RUB及状态位,所述最近使用位RUB用来存储每个缓存块的所述访问顺序标识,所述状态位存储状态标识,所述状态标识标识每个缓存块是否被米样;
[0032]所述存储器还包括:
[0033]第一寻址器及第二寻址器,所述第一寻址器与第二寻址器的输入端分别与每个缓存块相连;
[0034]计数单元,所述计数单元包含N个计数器组,所述N个计数器组与所述N个访问顺序标识一一对应,每个计数器组包含一个第一计数器和一个第二计数器,所述第一计数器的输入端与所述第一寻址器的输出端连接,所述第二计数器的输入端与所述第二寻址器的输出端连接;
[0035]在所述数据备份装置上电后:
[0036]所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识至每个缓存块的最近使用位RUB中,并将所述易失存储单元中的每个缓存块的状态位设置为无效,所述To时刻为所述数据备份装置上电的时刻;
[0037]所述处理器还用于对所述易失存储单元进行数据操作;
[0038]当所述处理器确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态,则控制所述第一寻址器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取所找到的缓存块在To时刻的访问顺序标识,然后根据所获取的所述To时刻的访问顺序标识,获取所述T0时刻的顺序访问标识对应的第一计数器,然后对所述第一计数器进行计数,所述处理器将所述缓存块的状态标识变更为已采样;
[0039]当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,所述第二寻址器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取找到的缓存块在To时刻的访问顺序标识,根据所获取的To时刻的访问顺序标识,获取所述To时刻的顺序访问标识对应的第二计数器,然后对所述第二计数器进行计数,所述处理器将所述缓存块的状态标识变更为已采样;
[0040]所述存储器还包括:
[0041]N个移位器,分别与所述N个计数器组中的第一计数器的输出端连接;
[0042]N个比较器,每个比较器具有两个输入端,分别连接一计数器组中的第二计数器的输出端,及第一计数器所连接的移位器的输出端;
[0043]在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,每个移位器根据预设阈值对与其连接的第一计数器进行移位,每个比较器对与其连接的第二计数器的输入与移位器的输入进行比较,所述微处理器根据每个访问顺序标识对应的比较器的输出结果分别预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。
[0044]本发明实施例的第三方面中,所述所述第一寻址器包括第一数据选择器与第一解码器,所述第二寻址器包括第二数据选择器与第二解码器,所述第一数据选择器与第二选择单元的输入端同时连接至每个缓存块;所述第一解码器及第二解码器的输入端分别与第一数据选择器及第二数据选择器的输出端连接,所述第一解码器及第二解码器的输出端分别与每个计数器组的第一计数器的输入端及第二计数器组的输入端相连;
[0045]当所述处理器确定所述当前数据操作对应的缓存块为生存态时,所述第一数据选择器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取所找到的缓存块在T0时刻的访问顺序标识,所述第一解码器对所获取的访问顺序标识进行解码,获取所述顺序访问标识对应的第一计数器;
[0046]当所述处理器确定所述当前数据操作对应的缓存块为死亡态,所述第二数据选择器根据当前数据操作对应的缓存块的地址找到对应的缓存块,并获取找到的缓存块在To时刻的访问顺序标识,所述第二解码器对所获取的To时刻的访问顺序标识进行解码以获取所述顺序访问标识对应的第二计数器,然后对所述第二计数器进行计数。
[0047]本发明实施例的第四方面提供一种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源;
[0048]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,其中M>=I,N〉I,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样;
[0049]所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应;
[0050]所述方法包括:
[0051 ]在所述数据备份装置上电后:
[0052]将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;
[0053]对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样;
[0054]当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样;
[0055]在所述数据备份装置掉电后:
[0056]启动所述备用电源为所述存储器供电;
[0057]读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值;
[0058]将每个To时刻的初始访问顺序标识对应的比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块为生存态还是死亡态,所述Tl时刻为所述数据备份装置掉电的时刻;
[0059]将预测为生存态的缓存块的数据备份到所述非易失存储单元。
[0060]进一步地,在本发明实施例的第四方面中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括:
[0061]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述预设阈值时,预测具有所述访问顺序标识的缓存块为死亡态;或
[0062]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述预设阈值时,预测具有所述访问顺序标识的缓存块为生存态。
[0063]进一步地,在本发明实施例的第四方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0064]在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0065]在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0066]进一步地,在本发明实施例的第四方面中,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:
[0067]将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块;
[0068]如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份;
[0069]如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0070]进一步地,在本发明实施例的第四方面中,所述预设阈值为0.5。
[0071]本发明实施例的第五方面提供一种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源;
[0072]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,其中M>=I,N〉I,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样;
[0073]所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应;
[0074]所述方法包括:
[0075]在所述数据备份装置上电后:
[0076]将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;
[0077]对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样;
[0078]当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样;
[0079]在所述数据备份装置掉电后:
[0080]启动所述备用电源为所述存储器供电;
[0081]读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值;
[0082]根据所述N个To时刻的初始访问顺序标识各自对应的所述比值确定所述比值为I比2时对应的一访问顺序标识阈值,将每个To时刻的初始访问顺序标识与所述访问顺序标识阈值比较;
[0083]根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块为生存态还是死亡态;所述Tl时刻为所述数据备份装置掉电的时刻;
[0084]将预测为生存态的缓存块的数据备份到所述非易失存储单元。
[0085]进一步地,在本发明实施例的第五方面中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括:
[0086]当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述访问顺序标识阈值时,预测具有所述访问顺序标识的缓存块为死亡态;
[0087 ]当所述N个T ο时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述访问顺序标识阈值时,预测具有所述访问顺序标识的缓存块为生存态。
[0088]进一步地,在本发明实施例的第五方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0089]在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0090]在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0091]进一步地,在本发明实施例的第五方面中,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:
[0092]将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块;
[0093]如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份;
[0094]如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0095]本发明实施例的第六方面提供一种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源;
[0096]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M>= I,N〉I,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识;
[0097]在所述数据备份装置上电的To时刻后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数,当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数;
[0098]在所述数据备份装置掉电的Tl时刻后,所述微处理器用于启动所述备用电源为所述存储器供电,以及根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值,将每个To时刻的初始访问顺序标识对应的缓存块状态比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块,将预测为生存态缓存块的数据备份到所述非易失存储单元。
[0099]进一步地,在本发明实施例的第六方面中,所述每个缓存块设置有状态标识,在将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,所述处理器还用于将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样;
[0100]所述处理器还用于在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问,在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。
[0101 ]进一步地,在本发明实施例的第六方面中,在根据To时刻的每个初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块时,所述微处理器具体用于:
[0102]当所述To时刻的N个初始访问顺序标识中的第一访问顺序标识对应的比较结果不小于所述预设阈值时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;或
[0103]当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所述预设阈值时,所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态。
[0104]进一步地,在本发明实施例的第六方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0105]所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态之后,进一步判断具有所述第一访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0106]所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态之后,进一步判断具有所述第二访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡
??τ O
[0107]进一步地,在本发明实施例的第六方面中,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0108]进一步地,在本发明实施例的第六方面中,所述预设阈值为0.5。
[0109]本发明实施例的第七方面提供一种数据备份装置,一种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源;
[0110]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,Μ>= I,N〉I,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识;
[0111]在所述数据备份装置上电的To时刻后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数,当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数;
[0112]在所述数据备份装置掉电的Tl时刻后,所述微处理器用于启动所述备用电源为所述存储器供电,以及根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值,根据所述N个TO时刻的初始访问顺序标识与所计算的所述N个TO时刻的初始访问顺序标识各自的所述比值建立通用访问顺序标识与通用比值的通用关系,根据所述通用关系确定所述通用比值为I比2时对应的通用访问顺序标识,将每个To时刻的初始访问顺序标识分别与所述确定的通用访问顺序标识比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。
[0113]进一步地,在本发明实施例的第七方面中,所述每个缓存块设置有状态标识,在将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,所述处理器还用于将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样;
[0114]所述处理器还用于在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问,在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。
[0115]进一步地,在本发明实施例的第七方面中,在根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态时,所述微处理器具体用于:
[0116]当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果为不小于所确定的通用访问顺序标识时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;
[0117]当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所确定的通用访问顺序标识时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。
[0118]进一步地,在本发明实施例的第七方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0119]所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态之后,进一步判断具有所述第一访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0120]所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态之后,进一步判断具有所述第二访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡
??τ O
[0121]进一步地,在本发明实施例的第七方面中,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0122]本发明实施例的第八方面提供一种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源;
[0123]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,Μ>= I,N〉I,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识;
[0124]所述方法包括:
[0125]在所述数据备份装置上电的To时刻后:
[0126]将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作;
[0127]当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数;
[0128]当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数;
[0129]在所述数据备份装置掉电的的1\时刻后:
[0130]启动所述备用电源为所述存储器供电;
[0131 ]分别计算每个To时刻的初始访问顺序标识对应的缓存块状态比值;
[0132]根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值;
[0133]根据To时刻的每个初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块,将预测为生存态缓存块的数据备份到所述非易失存储单元。
[0134]进一步地,在本发明实施例的第八方面中,所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括:
[0135]将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样;
[0136]所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0137]在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问;
[0138]所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0139]在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。
[0140]进一步地,在本发明实施例的第八方面中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括:
[0141]当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果不小于所述预设阈值时,预测具有所述第一访问顺序标识的缓存块为死亡态;或
[0142]当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所述预设阈值时,预测具有所述第一访问顺序标识的缓存块为生存态。
[0143]进一步地,在本发明实施例的第八方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0144]在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0145]在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0146]进一步地,在本发明实施例的第八方面中,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:
[0147]将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块;
[0148]如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份;
[0149]如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0150]进一步地,在本发明实施例的第八方面中,所述预设阈值为0.5。
[0151]本发明实施例的第九方面提供一种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源;
[0152]所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M>= I,N〉I,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识;
[0153]所述方法包括:
[0154]在所述数据备份装置上电的To时刻后:
[0155]将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作;
[0156]当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数;
[0157]当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数;
[0158]启动所述备用电源为所述存储器供电;
[0159]根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值;
[0? 60]根据所述N个TO时刻的初始访问顺序标识与所计算的所述N个TO时刻的初始访问顺序标识各自的所述比值建立通用访问顺序标识与通用比值的通用关系,根据所述通用关系确定所述通用比值为I比2时对应的通用访问顺序标识;
[0161]每个To时刻的初始访问顺序标识分别与所确定的通用访问顺序标识比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。
[0162]进一步地,在本发明实施例的第九方面中,所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括:
[0163]将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样;
[0164]所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0165]在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问;
[0166]所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0167]在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。
[0168]进一步地,在本发明实施例的第九方面中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,具体包括:
[0169]当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果为不小于所确定的通用访问顺序标识时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;
[0170]当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所确定的通用访问顺序标识时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。
[0171]进一步地,在本发明实施例的第九方面中,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0172]在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0173]在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0174]所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括:
[0175]将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样;
[0176]所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0177]在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问;
[0178]所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为:
[0179]在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。
[0180]进一步地,在本发明实施例的第九方面中,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:
[0181]将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块;
[0182]如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份;
[0183]如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0184]可见本发明实施例的数据备份装置及方法,在数据备份装置上电时,统计数据备份装置在上电时刻的顺序访问标识对应的死亡块与生存块的数量,在数据备份装置掉电后,根据所统计的数据备份装置在上电时刻的顺序访问标识对应的死亡块与生存块的数量计算上电时刻的每个顺序访问标识对应的死亡块占每个顺序访问标识对应所采样的缓存块总数的比值,并将所计算的比值与一预设阈值比较,根据比较结果预测易失存储单元中的死亡块,在备份时,不对预测为死亡块的缓存块进行备份,从而减少了数据备份量,提高备份效率。
【附图说明】
[0185]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0186]图1为现有技术中将非易失静态随机存储器中的易失存储单元中的数据备份至非易失存储单元中的方法的示意图。
[0187]图2为四路组相联的存储器中的顺序访问标识的示意图。
[0188]图3为四路组相联的存储器中的顺序访问标识在缓存块被访问后变更的示意图。
[0189]图4为本发明第一实施例中提供的数据备份装置的结构图。
[0190]图5为本发明第一实施例中所述数据备份装置在上电时所统计的每个访问顺序标识对应的以比率表示的比值的示意图。
[0191]图6为本发明第二实施例中通过所统计的各个访问顺序标识对应的比率的分布确定一访问顺序标识阈值的示意图。
[0192]图7为本发明第三实施例中提供的数据备份装置的结构图。
[0193]图8为本发明第三实施例中提供的数据备份装置的预测模块的结构图。
[0194]图9为本发明第四实施例中提供的数据备份方法中进行数据统计的方法的流程图。
[0195]图10为本发明第四实施例中提供的数据备份方法中进行数据备份的方法的流程图。
[0196]图11为本发明第五实施例中提供的数据备份方法中进行数据备份的方法的流程图。
【具体实施方式】
[0197]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0198]本发明实施例所提供的技术方案主要应用于同时具有非易失存储单元与易失存储单元的存储器,如非易失静态随机存储器(Nonvolati Ie Static Random AccessMem0ry,NV-SRAM),在采用这种结构的存储器作为内存的电子装置掉电后,可通过存储器上的备用电源给存储器供电,以将易失存储单元中的数据备份至非易失存储单元中。为了方便描述,在以下实施例中以NV-SRAM为例对本发明进行说明,但需要说明的是,本发明所应用的存储器并不限于NV-SRAM,其他具有相同结构的存储器也包含在本发明所揭露的范围内。
[0199]NV-SRAM中的易失存储单元为静态随机存储器(Static Random Access Memory,SRAM),非易失存储单元为相变存储器(Phase-change Random Access memory,PCM),备用电源为片上储能电容。
[0200]如图2所示,为本发明实施例中的一种易失存储单元的结构图,所述易失存储单元为N路组相联的存储器,N路组相联即为所述易失存储单元的缓存块被划分为N路及M组,每组具有N个缓存块,其中N大于I,M大于等于I。为方便描述,在此以4路组相联的易失存储单元为例进行说明,即每组具有4个缓存块。一般,N路组相联的存储单元采用的是最近最少使用(Least Recent Used,LRU)的替换算法,即在每组中的各缓存块都写满数据时,当有新的数据需要写入易失存储单元时,则将最近最少使用的缓存块中的数据替换至低级存储器,数据被替换至低级存储器的缓存块可以被认为是被回收(Evicted)的缓存块,本实施例中,被回收的缓存块被认为是处于死亡态的缓存块,即死亡块(Dead block),另外一些被标记为无效块的缓存块,其中未存储有效数据,这些缓存块也可以被当做死亡块,而当对数据进行读写操作时,对存储器中的缓存块进行访问(reference)时,则可认为被访问的缓存块是处于生存态的缓存块,即生存块(Live block)。
[0201 ]在LRU算法中,一般通过访问顺序标识来标识每组中的缓存块的访问顺序。所述访问顺序标识可通过每个缓存块的最近使用位(recent used bit,RUB)设置。若所述存储器为N路组相联存储器,则每组缓存块中访问顺序相同的缓存块具有相同的访问顺序标识,,每个缓存块的访问顺序标识随着每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新。访问顺序标识的值越大表示缓存块上一次的访问时刻离当前时刻距离越远,但在不同的实施例中,也可以是相反的顺序,即访问顺序标识的值越大表示缓存块上一次的访问时刻离当前时刻距离越近,具体可根据实际情况进行设定。如图1所示,每个缓存块上的数字即表示所述缓存块在每组中的访问顺序,所述访问顺序标识的值可根据每个缓存块的访问情况动态变化。如图3所示,以第一组中的缓存块的访问顺序为例,在访问前,各缓存块的访问顺序标识按1-4路的顺序分别为:O、1、2、3,当第三路的缓存块被访问时,则各路缓存块的访问顺序标识变化为1、2、O、3。
[0202]本发明的实施例中的易失存储单元也可为全相联结构的存储器,即易失存储单元中的所有的缓存块可以当做一组缓存块。
[0203]—般,在电子装置掉电后,易失存储单元中的死亡块中的数据是没有必要进行备份的,如果能提前识别出这些死亡块,则在电子装置掉电后,可以减少需要备份的数据量,从而提高备份效率。本发明的实施例所提供的技术方案即可在电子装置掉电后,根据电子装置上电期间的统计值预测出易失存储单元中的死亡块,在数据备份时,不对死亡块中的数据备份,从而减少备份数据量,提高备份效率。
[0204]下面将通过不同的实施例对本发明所提供的技术方案从不同的方面进行描述。
[0205]第一实施例
[0206]第一实施例提供如图4所示的一种数据备份装置30,所述数据备份装置30包括存储器11及处理器32,所述存储器31包括易失存储单元310、非易失存储单元311、备用电源312、微处理器315、及计数单元316。在所述数据备份装置30掉电后,所述备用电源312启动为所述存储器30供电,以将所述易失存储单元310中的数据备份至非易失存储单元311中。
[0207]所述易失存储单元310包括M(M> = I)个缓存块组313,每个缓存块组313包括N(N>I)个缓存块314。所述每个缓存块组313中访问顺序相同的缓存块314具有相同的访问顺序标识,所述每个缓存块314的访问顺序标识随着所述每个缓存块314所在的缓存块组313的缓存块314被访问的顺序的变化而更新。每个缓存块的访问顺序标识可存储在缓存块314的RUB中,也可记录在表中。
[0208]所述每个缓存块314还设置有状态标识,每个状态标识用于标识所述缓存块314是否被采样。本实施例中需要对易失存储单元310中的缓存块314进行采样统计,且每个缓存块314只能采样一次,所以通过设置状态标识来标识该缓存块314是否被采样,已经被采样的缓存块,可将所述缓存块的状态标识更改为已采样,对状态标识为已采样的缓存块314不再进行采样。
[0209]所述计数单元316包含N个计数器组317,每个计数器组317包含一个第一计数器318和一个第二计数器319,所述N个计数器组317与所述N个访问顺序标识一一对应。关于计数单元316所执行的功能将在下文做详细描述。
[0210]在所述数据备份装置30上电后,所述处理器32将备份在所述非易失存储单元311中的数据恢复到所述易失存储单元310中,获取并记录所述每个缓存块组313中的每个缓存块314在To时刻的访问顺序标识,并将所述易失存储单元310中的每个缓存块314的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻。
[0211]在本实施例中,每个缓存块314在To时刻的访问顺序标识即为数据备份装置30在上次掉电时各个缓存块314的访问顺序标识,即所述数据备份装置30在每次上电后,将备份在所述非易失存储单元311中的数据恢复到所述易失存储单元310中的同时,还会将数据备份装置30在上次掉电时的每个缓存块314的访问顺序标识进行恢复。另外,所述数据备份装置30在每次上电后,还会初始化每个缓存块314的状态标识设置为未采样。
[0212]所述处理器32还用于对所述易失存储单元310进行数据操作。所述数据操作即为对易失存储单元310中各缓存块314中存储的数据进行读、写、删除、替换等操作。在进行数据操作时,所述处理器32根据数据操作对应的数据操作请求中的地址信息获取数据操作对应的缓存块314。在确定数据操作对应的缓存块314后,即可确定该缓存块的状态标识。
[0213]当确定当前数据操作对应的缓存块314的状态标识为未采样且本次数据操作对应的缓存块314被访问时,确定所述当前数据操作对应的缓存块314为生存态,并对所述当前数据操作对应的缓存块314在To时刻的初始访问顺序标识所对应的第一计数器318进行计数,并将所述缓存块314的状态标识更新为已采样。当确定所述当前数据操作对应的缓存块314的状态标识为未采样且本次数据操作对应的缓存块314被回收时,确定所述当前数据操作对应的缓存块314为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数319进行计数,所述当前数据操作的缓存块314的状态标识变更为已采样。
[0214]本实施例中,处于生存态的缓存块314即为生存块,处于死亡态的缓存块314即为死亡块,关于生存块与死亡块的定义请参照前文描述,在此不再赘述。另外,本实施例中所采样的缓存块314为在所述数据备份装置30上电后,第一次被访问的缓存块314及第一次被回收的缓存块314。
[0215]本实施例中,如图2所示,由于每个缓存块314都具有一个访问顺序标识,用来标识所述缓存块314在一缓存块组313中被访问的顺序,如此在多个缓存块组中,多个缓存块314则具有相同的访问顺序标识。每个访问顺序标识对应的第一计数器318即用于统计所采样的具有所述访问顺序标识的缓存块314中生存块的数量,每个访问顺序标识对应的第二计数器即用于统计所采样的具有所述访问顺序标识的缓存块314中的死亡块的数量。
[0216]由图2的描述可知,若某一缓存块314被访问前的访问顺序标识为“3”,则在被访问后,其访问顺序标识会被更新为“O”。被采样的缓存块314由于还没有被访问过,所以在第一次被访问时,其访问顺序标识仍然为To时刻的访问顺序标识,假设为“3”,在被访问后,其访问顺序标识会被变更为“O”。再此,处理器32所获取的是未被变更的To时刻的访问顺序标识,即是“3”,而不是“O”。
[0217]在本实施例中,所述第一计数器318及第二计数器319所统计的数据在所述数据备份装置30掉电后不会清零,如此,所述数据备份装置30在下次上电之后,可在本次统计的数据的基础上进行统计,如此,可以增加所采样的缓存块314的数量,从而获得更准确的预测结果。
[0218]在所述数据备份装置30掉电后,所述微处理器315启动所述备用电源312为所述存储器31供电,并读取所述N个计数器组317的计数,分别计算每个访问顺序标识对应的计数器组317中的第二计数器319与每个访问顺序标识对应的计数器组317中的第一计数器318和第二计数器319之和的比值,将每个访问顺序标识对应的比值分别与预设阈值进行比较,根据每个访问顺序标识对应的比较结果分别预测具有所述比较结果对应的访问顺序标识的缓存块314为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元311中。
[0219]本实施例中,所述第一计数器318和第二计数器319之和即为所统计的每个访问顺序标识对应死亡块及生存块之和,即所采样的具有所述顺序访问标识的缓存块314的总的数量,如此,微处理器315所计算的为在所采样的具有同样访问顺序标识的缓存块中,死亡块所占的比例。
[0220]如图5所示,为所统计的每个访问顺序标识对应的以比率表示的比值的示意图,访问顺序标识O对应的死亡块所占的比例5%,访问顺序标识I对应死亡块所占的比例为25%,访问顺序标识2对应的死亡块所占的比例为45%,访问顺序标识3对应的死亡块所占的比例为 95%。
[0221]除了计算每个访问顺序标识对应的计数器组317中的第二计数器319与每个访问顺序标识对应的计数器组317中的第一计数器318和第二计数器319之和的比值外,还可以计算每个访问顺序标识对应的计数器组317中的第二计数器319与第一计数器318的比值,即死亡块与生存块的比值,或者还可以计算每个访问顺序标识对应的计数器组317中的第一计数器318与每个访问顺序标识对应的计数器组317中的第一计数器318和第二计数器319之和的比值,即在所采样的具有同样访问顺序标识的缓存块中,生存块所占的比例。根据不同的比值的计算方式,可以选择不同的预设阈值。即在本实施例中,可以根据每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算每个初始访问顺序标识对应的缓存块状态比值,所述缓存块状态比值可以是死亡块与生存块的比值、死亡块所占的比例、或生存块所占的比例。
[0222]在图5所示的例子中,若所计算的为在所采样的具有同样访问顺序标识的缓存块中,死亡块所占的比例,且所述预设阈值为80%时,则在将每个访问顺序标识对应的比率与所述预设阈值进行比较后可知,访问顺序标识1、2、及3对应的比较结果都为小于所述预设阈值,而访问顺序标识4对应的比较结果为不小于所述预设阈值。
[0223]根据每个访问顺序标识对应的比较结果分别预测具有所述比较结果对应的访问顺序标识的缓存块314为生存态还是死亡态的一种方式为:
[0224]当所述N个访问顺序标识中的访问顺序标识对应的比较结果不小于所述预设阈值时,所述微处理器315预测具有所述访问顺序标识的缓存块314为死亡态,当所述N个访问顺序标识中的访问顺序标识对应的比较结果小于所述预设阈值时,所述微处理器315预测具有所述访问顺序标识的缓存块为生存态。
[0225]在图5所示的例子中,由于访问顺序标识4对应的比较结果为不小于预设阈值,则可以预测出易失存储单元310中具有所述访问顺序标识4的缓存块314都是死亡块。
[0226]由于上面实施例中的技术方案为对死亡块的预测,则必然存在误差,一般误差可以分为两类,即误报误差和虚警误差,误报误差为将死亡块判断为生存块,这种错误会造成不必要的电能消耗,在电源电能受限的情况下,会浪费备份生存块的电能,而丢失生存块会造成数据的丢失,影响系统性能。而虚警误差为将生存块判断为死亡块,这种错误会造成生存块中的数据被丢弃,影响系统性能。所以用户可以根据不同的需求选择预设阈值,具体可根据如下需求进行设置:
[0227]如果备用电源的电能足够支持数据的备份,而系统性能需求较高时,可以选择较高的预设阈值,以控制误报误差,备份更多的缓存块,减少数据的丢失。
[0228]如果备用电源的电能不够大时,可能无法支持数据的完全备份,而系统实时性需求较低,则选择较低的预设阈值,以控制虚警误差,尽可能多地丢弃死亡块,防止备用电源的电能无法支持数据的备份,造成备份失败。
[0229]最小化整体误差,即最小化误报误差和虚警误差的和。理论分析表明,死亡块所占的比率为50 %时,整体误差最小。
[0230]为了进一步减少误差,提供另外一种根据每个访问顺序标识对应的比较结果分别预测具有所述比较结果对应的访问顺序标识的缓存块314为生存态还是死亡态的方式,SP:
[0231]每个缓存块314还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0232]当所述N个访问顺序标识中的访问顺序标识对应的比较结果为死亡块所占的比率不小于所述预设阈值时,所述微处理器315获取具有所述访问顺序标识的缓存块314,并预测具有所述访问顺序标识的缓存块314中所述脏块标识有效的缓存块为生存态,所述脏块标识无效的缓存块为死亡态;
[0233]当所述N个访问顺序标识中的访问顺序标识对应的比较结果为所述死亡块所占的比率小于所述预设阈值时,所述微处理器315获取具有所述访问顺序标识的缓存块314,并预测具有所述访问顺序标识的缓存块314中所述有效块标识有效的缓存块314为生存态,所述有效块标识无效的缓存块314为死亡态。
[0234]如此,通过在被初步判定为生存块的缓存块中,通过无效块标识找出一些死亡块,而在被初步判定为死亡块的缓存块中,通过脏块标识找出一些生存块,如此可进一步减少预测误差。
[0235]另外所述微处理器315将预测为生存态的缓存块314的数据备份到所述非易失存储单元311包括:所述微处理器315将预测为死亡态的缓存块314的信息记录在一死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块314是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块314是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块314是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
[0236]第二实施例
[0237]第二实施例提供一种数据备份装置,第二实施例所提供的数据备份装置与第一实施例中的数据备份装置相似,区别在于,在所微处理器315计算每个访问顺序标识对应的计数器组317中的第二计数器319与每个访问顺序标识对应的计数器组317中的第一计数器318和第二计数器319之和的比值后,根据所述N个TO时刻的访问顺序标识与所计算的所述N个TO时刻的访问顺序标识各自的所述比值建立通用访问顺序标识与通用比值的通用关系,如图6所示,首先以通用访问顺序标识为X轴,以通用比值(百分比)为Y轴建立坐标系,所述通用访问顺序标识包括所述访问顺序标识O、1、2、3,但也包括其他任意值,所述通用比值包括所计算的所述访问顺序标识O、1、2、3各自对应的比值,例如5 %、25 %、为45 %及95 %为Y轴,但也包括其他任意值。在所述坐标系中取点(0,5%)、(1,25%)、(2,45%)及(3,95%),连接上述各点则形成通用顺序标识与通用比值的通用关系曲线601,如此,通过所述关系曲线601,即可确定所述通用比值为I比2 (50 %,在所述比值为50 %时,总体误差最小)时对应的通用访问顺序标识TH,将每个访问顺序标识与所述确定的通用访问顺序标识TH比较,然后根据每个访问顺序标识对应的比较结果判断具有所述比较结果对应的访问顺序标识的缓存块生存状态的缓存块还是死亡状态的缓存块。具体地,当所述访问顺序标识中的第一访问顺序标识不小于所述通用访问顺序标识TH时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;当所述访问顺序标识中的第二访问顺序标识小于对所述通用访问顺序标识TH时,所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态,其他元件的功能与第一实施例中的相同,在此不再赘述。
[0238]第三实施例
[0239]第三实施例提供一种数据备份装置70,如图7所示,所述数据备份装置70包括存储器71及处理器72,所述处理器72控制所述存储器71中数据的存取。所述存储器70包括易失存储单元710、非易失存储单元711、备用电源712及预测模块713。在数据备份装置70上电后,恢复备份在非易失存储单元711中的数据,所述备用电源712在数据备份装置70掉电后启动,给所述存储器70供电。所述预测模块713用于预测易失存储单元710中的死亡块。
[0240]所述易失存储单元710与实施例1中的易失存储单元310的结构相同,在此不再赘述。
[0241 ] 如图8所示,每个缓存块714包括RUB715、有效位716、脏块位717、状态位718及tag标记719。所述RUB715用于存储访问顺序标识,所述有效位716用于存储所述缓存块的有效标识,所述脏块位717用于存储脏块标识,所述状态位718用于存储状态标识。所述tag标记719为缓存块的标记,在有数据访问请求时,可根据访问请求中的数据地址与所述tag标记匹配找到相应的缓存块714。
[0242]所述预测模块713与所述易失存储单元710相连,用于预测易失存储单元710中的死亡块。所述预测模块713包括第一寻址器721及第二寻址器720,所述第一寻址器721与第二寻址器720的输入端分别与每个缓存块714相连。
[0243]所述预测模块713还包括计数单元(图未示),所述技术单元包含N个计数器组(图未示),所述N个计数器组与所述N个访问顺序标识一一对应,每个计数器组包含一个第一计数器7136和一个第二计数器7135,所述第一计数器7136的输入端与所述第一寻址器721的输出端连接,所述第二计数器7135的输入端与所述第二寻址器720的输出端连接;
[0244]在所述数据备份装置70上电后:
[0245]所述处理器71用于将备份在所述非易失存储单元711中的数据恢复到所述易失存储单元710中,获取并记录所述每个缓存块组中的每个缓存块714在To时刻的初始访问顺序标识至每个缓存块714的最近使用位RUB中,并将所述易失存储单元710中的每个缓存块714的状态位设置为无效,所述To时刻为所述数据备份装置70上电的时刻;
[0246]所述处理器71还用于对所述易失存储单元进行数据操作;
[0247]当所述处理器71确定当前数据操作对应的缓存块714的状态标识为未采样且本次数据操作对应的缓存块714被访问时,则确定所述当前数据操作对应的缓存块714为生存态,则控制所述第一寻址器721根据当前数据操作对应的缓存块714的地址找到对应的缓存块714,获取所找到的缓存块714在To时刻的访问顺序标识,并根据所获取的To时刻的访问顺序标识获取所述顺序访问标识对应的第一计数器7136,然后对所述第一计数器7136进行计数,所述处理器71将所述缓存块714的状态标识变更为已采样;
[0248]当确定所述当前数据操作对应的缓存块714的状态标识为未采样且本次数据操作对应的缓存块714被回收时,确定所述当前数据操作对应的缓存块714为死亡态,所述第二寻址器720根据当前数据操作对应的缓存块714的地址找到对应的缓存块714,获取找到的缓存块714在To时刻的访问顺序标识,并根据所获取的To时刻的访问顺序标识获取所述顺序访问标识对应的第二计数器7135,然后对所述第二计数器7135进行计数,所述处理器71将所述缓存块714的状态标识变更为已采样。
[0249]所述预测模块713还包括N个移位器7137及N个比较器7138,所述N个移位器7137分别与所述第一计数器7136的输出端连接。所述N个比较器7138中的每个比较器7138具有两个输入端,分别连接一计数器组中的第二计数器7135的输出端,及第一计数器7136所连接的移位器7137的输出端。
[0250]在所述数据备份装置70掉电后,所述微处理器7139启动所述备用电源712为所述存储器71供电,每个移位器7137根据预设阈值对与其连接的第一计数器7136进行移位,每个比较器7138对与其连接的第二计数器7135的输入与移位器7138的输入进行比较,所述微处理器7139根据每个访问顺序标识对应的比较器7138的输出结果分别预测具有所述比较器7138对应的访问顺序标识的缓存块714为生存态还是死亡态,将预测为生存态的缓存块714的数据备份到所述非易失存储单元711中。
[0251]本实施例中,所述第一寻址器721包括第一数据选择器7132与第一解码器7134,所述第二寻址器720包括第二数据选择器7131与第二解码器7133,所述第一数据选择器7132与第二数据选择器7131的输入端同时连接至每个缓存块714;所述第一解码器7134及第二解码器7133的输入端分别与第一数据选择器7132及第二数据选择器7131的输出端连接,所述第一解码器7134及第二解码器7133的输出端分别与每个计数器组的第一计数器7136的输入端及第二计数器组7135的输入端相连;
[0252]当所述处理器71确定所述当前数据操作对应的缓存块714为生存态时,所述第一数据选择器7132根据当前数据操作对应的缓存块的地址找到对应的缓存块714,获取所找到的缓存块714在To时刻的访问顺序标识,所述第一解码器7134对所获取的访问顺序标识进行解码,获取所述顺序访问标识对应的第一计数器7136;
[0253]当所述处理器71确定所述当前数据操作对应的缓存块714为死亡态,所述第二数据选择器7131根据当前数据操作对应的缓存块的地址找到对应的缓存块714,并获取找到的缓存块在To时刻的访问顺序标识,所述第二解码器对所获取的To时刻的访问顺序标识进行解码以获取所述顺序访问标识对应的第二计数器7135,然后对所述第二计数器7135进行计数。
[0254]第四实施例
[0255]第四实施例提供一种应用于数据备份装置的数据备份方法。所述数据备份装置的结构与第一实施例的数据备份装置的结构相同,在此不再赘述。
[0256]所述数据备份方法包括两部分,一部分为数据统计方法,一部分为数据备份方法。所述数据统计方法在所述数据备份装置上电时执行,所述数据备份方法在在所述数据备份装置掉电时执行。
[0257]如图9所示,为所述数据备份装置上电时,所执行的数据统计方法的流程图。所述数据统计方法包括:
[0258]步骤S901,将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;
[0259]步骤S902,对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样;
[0260]步骤S903,当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样。
[0261]如图10所示,为所述数据备份装置掉电时,所执行的数据备份方法的流程图。所述数据备份方法包括:
[0262]步骤S1001,启动所述备用电源为所述存储器供电;
[0263]步骤S1002,读取所述N个计数器组的计数,根据每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算每个TO时刻的初始访问顺序初始访问顺序标识对应的缓存块状态比值,所述缓存块状态比值可以是死亡块与生存块的比值、死亡块所占的比例、或生存块所占的比例;
[0264]步骤S1003,将每个To时刻的初始访问顺序标识对应的比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,所述Tl时刻为所述数据备份装置掉电的时刻;
[0265]步骤S1004,将预测为生存态的缓存块的数据备份到所述非易失存储单元。
[0266]进一步地,在所述步骤S1003中,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块为生存态还是死亡态,包括:
[0267]当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果为所述死亡块所占的比率不小于所述预设阈值时,预测具有所述访问顺序标识的缓存块为死亡态;或
[0268]当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果为所述死亡块所占的比率小于所述预设阈值时,预测具有所述访问顺序标识的缓存块为生存
??τ O
[0269]进一步地,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块;
[0270]在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态;
[0271]在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。
[0272]第五实施例
[0273]第五实施例提供一种应用于数据备份装置的数据备份方法。所述数据备份装置的结构与所述第二实施例的数据备份装置的结构相同,在此不再赘述。
[0274]所述数据备份方法包括两部分,一部分为数据统计方法,一部分为数据备份方法。所述数据统计方法在所述数据备份装置上电时执行,与第四实施例中描述的数据统计方法相同,在此不再赘述。
[0275]所述数据备份方法在在所述数据备份装置掉电时执行。
[0276]如图11所示,为所述数据备份装置掉电时,所执行的数据备份方法的流程图。本实施例中的数据备份方法中的步骤SI 101、S1102、及SI 104与第四实施例中的数据备份方法中的步骤S1001、S1002、及S1004相同,区别仅在于步骤S1103,本实施例中,在步骤S1103中,根据所述N个TO时刻的访问顺序标识与所计算的所述N个TO时刻的访问顺序标识各自的所述比值建立的通用访问顺序标识与通用比值的通用关系,通过所述通用关系确定所述通用比值为I比2(50%,在所述比值为50 %时,总体误差最小)时对应的通用访问顺序标识TH,所述通用关系的确定,请参考第二实施例中图6相关的描述,在此不再赘述。将每个To时刻的初始访问顺序标识与所述通用访问顺序标识TH比较,然后根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态;所述Tl时刻为所述数据备份装置掉电的时刻,具体地,当所述访问顺序标识中的第一访问顺序标识不小于所述通用访问顺序标识TH时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;当所述访问顺序标识中的第二访问顺序标识小于对所述通用访问顺序标识TH时,所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态。其他部分与第四实施例相同,在此不再赘述。
[0277]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述程序可以存储于一计算机可读存储介质中,存储介质可以包括:R0M、RAM、磁盘或光盘等。
[0278]以上对本发明实施例所提供的数据备份装置及方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样; 所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应; 在所述数据备份装置上电后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;所述处理器还用于对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,并在任何一次对计数器计数之后将所述当前数据操作的缓存块的状态标识变更为已采样; 在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,以及读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值,将每个To时刻的初始访问顺序标识对应的比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。2.如权利要求1所述的数据备份装置,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括: 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述预设阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为死亡态;或 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述预设阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。3.一种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中M> = I,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样; 所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应; 在所述数据备份装置上电后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻;所述处理器还用于对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,并在任何一次对计数器计数之后将所述当前数据操作的缓存块的状态标识变更为已采样; 在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,以及读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值,根据所述N个TO时刻的初始访问顺序标识各自对应的所述比值确定所述比值为I比2时对应的一访问顺序标识阈值,将每个To时刻的初始访问顺序标识与所述访问顺序标识阈值比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。4.如权利要求3所述的数据备份装置,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括: 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述访问顺序标识阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为死亡态; 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述访问顺序标识阈值时,所述微处理器预测具有所述访问顺序标识的缓存块为生存态。5.一种数据备份装置,包括:存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新,每个缓存块包括最近使用位RUB及状态位,所述最近使用位RUB用来存储每个缓存块的所述访问顺序标识,所述状态位存储状态标识,所述状态标识标识每个缓存块是否被米样; 所述存储器还包括: 第一寻址器及第二寻址器,所述第一寻址器与第二寻址器的输入端分别与每个缓存块相连; 计数单元,所述计数单元包含N个计数器组,所述N个计数器组与所述N个访问顺序标识一一对应,每个计数器组包含一个第一计数器和一个第二计数器,所述第一计数器的输入端与所述第一寻址器的输出端连接,所述第二计数器的输入端与所述第二寻址器的输出端连接; 在所述数据备份装置上电后: 所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识至每个缓存块的最近使用位RUB中,并将所述易失存储单元中的每个缓存块的状态位设置为无效,所述To时刻为所述数据备份装置上电的时刻; 所述处理器还用于对所述易失存储单元进行数据操作; 当所述处理器确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态,则控制所述第一寻址器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取所找到的缓存块在To时刻的访问顺序标识,然后根据所获取的所述To时刻的访问顺序标识,获取所述To时刻的顺序访问标识对应的第一计数器,然后对所述第一计数器进行计数,所述处理器将所述缓存块的状态标识变更为已采样; 当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,所述第二寻址器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取找到的缓存块在To时刻的访问顺序标识,根据所获取的To时刻的访问顺序标识,获取所述To时刻的顺序访问标识对应的第二计数器,然后对所述第二计数器进行计数,所述处理器将所述缓存块的状态标识变更为已米样; 所述存储器还包括: N个移位器,分别与所述N个计数器组中的第一计数器的输出端连接; N个比较器,每个比较器具有两个输入端,分别连接一计数器组中的第二计数器的输出端,及第一计数器所连接的移位器的输出端; 在所述数据备份装置掉电后,所述微处理器用于启动所述备用电源为所述存储器供电,每个移位器根据预设阈值对与其连接的第一计数器进行移位,每个比较器对与其连接的第二计数器的输入与移位器的输入进行比较,所述微处理器根据每个访问顺序标识对应的比较器的输出结果分别预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。6.如权利要求5所述的数据备份装置,其特征在于,所述第一寻址器包括第一数据选择器与第一解码器,所述第二寻址器包括第二数据选择器与第二解码器,所述第一数据选择器与第二选择单元的输入端同时连接至每个缓存块;所述第一解码器及第二解码器的输入端分别与第一数据选择器及第二数据选择器的输出端连接,所述第一解码器及第二解码器的输出端分别与每个计数器组的第一计数器的输入端及第二计数器组的输入端相连;当所述处理器确定所述当前数据操作对应的缓存块为生存态时,所述第一数据选择器根据当前数据操作对应的缓存块的地址找到对应的缓存块,获取所找到的缓存块在To时刻的访问顺序标识,所述第一解码器对所获取的访问顺序标识进行解码,获取所述顺序访问标识对应的第一计数器; 当所述处理器确定所述当前数据操作对应的缓存块为死亡态,所述第二数据选择器根据当前数据操作对应的缓存块的地址找到对应的缓存块,并获取找到的缓存块在To时刻的访问顺序标识,所述第二解码器对所获取的To时刻的访问顺序标识进行解码以获取所述顺序访问标识对应的第二计数器,然后对所述第二计数器进行计数。7.—种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,其中M> = I,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样; 所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应; 所述方法包括: 在所述数据备份装置上电后: 将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻; 对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样; 当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样; 在所述数据备份装置掉电后: 启动所述备用电源为所述存储器供电; 读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值; 将每个To时刻的初始访问顺序标识对应的比值分别与预设阈值进行比较,根据每个T0时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块为生存态还是死亡态,所述Tl时刻为所述数据备份装置掉电的时刻; 将预测为生存态的缓存块的数据备份到所述非易失存储单元。8.如权利要求7所述的数据备份方法,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括: 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述预设阈值时,预测具有所述访问顺序标识的缓存块为死亡态;或 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述预设阈值时,预测具有所述访问顺序标识的缓存块为生存态。9.一种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,其中M> = I,N>1,所述每个缓存块组采用相同的一组N个访问顺序标识来表示所述每个缓存块组中的每个缓存块的被访问的顺序,所述每个缓存块的访问顺序标识随着所述每个缓存块所在的缓存块组的缓存块被访问的顺序的变化而更新;所述每个缓存块还设置有状态标识,每个状态标识用于标识所述每个缓存块是否被采样; 所述数据备份装置还包括计数单元,所述计数单元包含N个计数器组,每个计数器组包含一个第一计数器和一个第二计数器,所述N个计数器组与所述N个访问顺序标识一一对应; 所述方法包括: 在所述数据备份装置上电后: 将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,获取并记录所述每个缓存块组中的每个缓存块在To时刻的初始访问顺序标识,并将所述易失存储单元中的每个缓存块的状态标识设置为未采样,所述To时刻为所述数据备份装置上电的时刻; 对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被访问时,确定所述当前数据操作对应的缓存块为生存态并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第一计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样; 当确定所述当前数据操作对应的缓存块的状态标识为未采样且本次数据操作对应的缓存块被回收时,确定所述当前数据操作对应的缓存块为死亡态,并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的第二计数器进行计数,将当前数据操作对应的缓存块的状态标识更新为已采样; 在所述数据备份装置掉电后: 启动所述备用电源为所述存储器供电; 读取所述N个计数器组的计数,分别计算每个To时刻的初始访问顺序标识对应的计数器组中的第二计数器与每个To时刻的初始访问顺序标识对应的计数器组中的第一计数器和第二计数器之和的比值; 根据所述N个To时刻的初始访问顺序标识各自对应的所述比值确定所述比值为I比2时对应的一访问顺序标识阈值,将每个T O时刻的初始访问顺序标识与所述访问顺序标识阈值比较; 根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块为生存态还是死亡态;所述Tl时刻为所述数据备份装置掉电的时刻; 将预测为生存态的缓存块的数据备份到所述非易失存储单元。10.如权利要求9所述的数据备份方法,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括: 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不小于所述访问顺序标识阈值时,预测具有所述访问顺序标识的缓存块为死亡态; 当所述N个To时刻的初始访问顺序标识中的访问顺序标识对应的比较结果不大于所述访问顺序标识阈值时,预测具有所述访问顺序标识的缓存块为生存态。11.一种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识; 在所述数据备份装置上电的To时刻后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数,当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数; 在所述数据备份装置掉电的Tl时刻后,所述微处理器用于启动所述备用电源为所述存储器供电,以及根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值,将每个To时刻的初始访问顺序标识对应的缓存块状态比值分别与预设阈值进行比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块,将预测为生存态缓存块的数据备份到所述非易失存储单元。12.如权利要求11所述的数据备份装置,其特征在于,所述每个缓存块设置有状态标识,在将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,所述处理器还用于将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样; 所述处理器还用于在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问,在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。13.如权利要求11或12所述的数据备份装置,其特征在于,在根据To时刻的每个初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块时,所述微处理器具体用于: 当所述To时刻的N个初始访问顺序标识中的第一访问顺序标识对应的比较结果不小于所述预设阈值时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态;或 当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所述预设阈值时,所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态。14.如权利要求13所述的数据备份装置,其特征在于,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块; 所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态之后,进一步判断具有所述第一访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态; 所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态之后,进一步判断具有所述第二访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。15.如权利要求11至14中任一项所述的数据备份装置,其特征在于,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。16.如权利要求1所述的数据备份装置,其特征在于,所述预设阈值为0.5。17.—种数据备份装置,包括存储器和处理器,所述存储器包括易失存储单元、非易失存储单元、微处理器及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识; 在所述数据备份装置上电的To时刻后,所述处理器用于将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作,当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数,当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数; 在所述数据备份装置掉电的Tl时刻后,所述微处理器用于启动所述备用电源为所述存储器供电,以及根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值,根据所述N个TO时刻的初始访问顺序标识与所计算的所述N个TO时刻的初始访问顺序标识各自的所述比值建立通用访问顺序标识与通用比值的通用关系,根据所述通用关系确定所述通用比值为I比2时对应的通用访问顺序标识,将每个To时刻的初始访问顺序标识分别与所述确定的通用访问顺序标识比较,根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。18.如权利要求17所述的数据备份装置,其特征在于,所述每个缓存块设置有状态标识,在将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,所述处理器还用于将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样; 所述处理器还用于在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问,在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。19.如权利要求17或18所述的数据备份装置,其特征在于,在根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态时,所述微处理器具体用于: 当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果为不小于所确定的通用访问顺序标识时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态; 当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所确定的通用访问顺序标识时,所述微处理器预测具有所述访问顺序标识的缓存块为生存??τ O20.如权利要求19所述的数据备份装置,其特征在于,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块; 所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态之后,进一步判断具有所述第一访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态; 所述微处理器预测具有所述第二访问顺序标识的缓存块为生存态之后,进一步判断具有所述第二访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。21.如权利要求17至20中任一项所述的数据备份装置,其特征在于,所述微处理器将预测为生存态的缓存块的数据备份到所述非易失存储单元包括:所述微处理器将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块,如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份,如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。22.—种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识; 所述方法包括: 在所述数据备份装置上电的To时刻后: 将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作; 当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数; 当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数; 在所述数据备份装置掉电的的!^时刻后: 启动所述备用电源为所述存储器供电; 分别计算每个To时刻的初始访问顺序标识对应的缓存块状态比值; 根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值; 根据To时刻的每个初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态缓存块还是死亡态缓存块,将预测为生存态缓存块的数据备份到所述非易失存储单元。23.如权利要求22所述的数据备份方法,其特征在于,所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括: 将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样; 所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问; 所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。24.如权利要求22或23所述的数据备份方法,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,包括: 当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果不小于所述预设阈值时,预测具有所述第一访问顺序标识的缓存块为死亡态;或 当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所述预设阈值时,预测具有所述第一访问顺序标识的缓存块为生存态。25.如权利要求24所述的数据备份方法,其特征在于,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块; 在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态; 在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。26.如权利要求22至25中任一项所述的数据备份方法,其特征在于,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括: 将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块; 如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份; 如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。27.如权利要求22至26所述的数据备份方法,其特征在于,所述预设阈值为0.5。28.—种应用于数据备份装置的数据备份方法,所述数据备份装置包括存储器,所述存储器包括易失存储单元、非易失存储单元、及备用电源; 所述易失存储单元包括M个缓存块组,每个缓存块组包括N个缓存块,其中,M> = 1,N>1,每个缓存块具有访问顺序标识,所述访问顺序标识用于表示每个缓存块在所述每个缓存块组中被访问的顺序,所述M个缓存块组中的每个缓存块组中访问顺序相同的缓存块具有相同的访问顺序标识; 所述方法包括: 在所述数据备份装置上电的To时刻后: 将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中,对所述易失存储单元进行数据操作; 当确定当前数据操作对应的缓存块在上电后第一次被访问时,确定所述当前数据操作对应的缓存块为生存态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的生存态缓存块计数; 当确定所述当前数据操作对应的缓存块在上电后第一次被回收时,确定所述当前数据操作对应的缓存块为死亡态缓存块并对所述当前数据操作对应的缓存块在To时刻的初始访问顺序标识所对应的死亡态缓存块进行计数; 启动所述备用电源为所述存储器供电; 根据To时刻的每个初始访问顺序所对应的所述死亡态缓存块的数量与所述生存态缓存块的数量分别计算To时刻的每个初始访问顺序标识对应的缓存块状态比值; 根据所述N个TO时刻的初始访问顺序标识与所计算的所述N个TO时刻的初始访问顺序标识各自的所述比值建立通用访问顺序标识与通用比值的通用关系,根据所述通用关系确定所述通用比值为I比2时对应的通用访问顺序标识; 每个To时刻的初始访问顺序标识分别与所确定的通用访问顺序标识比较,根据每个T0时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,将预测为生存态的缓存块的数据备份到所述非易失存储单元,所述Tl时刻为所述数据备份装置掉电的时刻。29.如权利要求28所述的数据备份方法,其特征在于,所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括: 将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样; 所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问; 所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。30.如权利要求28或29所述的数据备份方法,其特征在于,所述根据每个To时刻的初始访问顺序标识对应的比较结果预测所述非易失存储单元中的缓存块在Tl时刻为生存态还是死亡态,具体包括: 当所述N个To时刻的初始访问顺序标识中的第一访问顺序标识对应的比较结果为不小于所确定的通用访问顺序标识时,所述微处理器预测具有所述第一访问顺序标识的缓存块为死亡态; 当所述N个To时刻的初始访问顺序标识中的第二访问顺序标识对应的比较结果小于所确定的通用访问顺序标识时,所述微处理器预测具有所述访问顺序标识的缓存块为生存??τ O31.如权利要求30所述的数据备份方法,其特征在于,每个缓存块还包括有效块标识及脏块标识,所述有效块标识用于标识所述缓存块是否有效,所述脏块标识用于标识所述缓存块是否为脏块; 在所述预测具有所述访问顺序标识的缓存块为死亡态之后,进一步判断具有所述访问顺序标识的预测为死亡态的缓存块的脏块标识有效的缓存块为生存态; 在所述预测具有所述访问顺序标识的缓存块为生存态之后,进一步判断具有所述访问顺序标识的预测为生存态的缓存块的有效标识无效的缓存块为死亡态。 所述每个缓存块设置有状态标识,在所述将备份在所述非易失存储单元中的数据恢复到所述易失存储单元中之后,还包括: 将所述易失存储单元中的每个缓存块的状态标识设置为未采样,在对任何一次计数之后,将所述当前数据操作的缓存块的状态标识变更为已采样; 所述确定所述当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被访问,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被访问; 所述确定当前数据操作对应的缓存块在上电后第一次被回收具体为: 在当前数据操作对应的缓存块被回收,且当前数据操作对应的缓存块的状态标识为未采样时,则确定当前数据操作对应的缓存块在上电后第一次被回收。32.如权利要求28至31中任一项所述的数据备份方法,其特征在于,所述将预测为生存态的缓存块的数据备份到所述非易失存储单元包括: 将预测为死亡态的缓存块的信息记录在死亡态缓存块记录表中,根据所述死亡态缓存块记录表中记录的所述预测为死亡态的缓存块信息确定当前待备份的缓存块是预测为死亡态的缓存块还是为预测为生存态的缓存块; 如果确定当前待备份的缓存块是被预测为生存态的缓存块,则对当前待备份的缓存块中的数据进行备份; 如果确定当前待备份的缓存块是被预测为死亡态的缓存块,则不对当前待备份的缓存块中的数据进行备份。
【文档编号】G06F11/14GK105938447SQ201610099237
【公开日】2016年9月14日
【申请日】2016年2月23日
【发明人】李和和, 刘勇攀, 赵庆行, 罗嵘, 杨华中
【申请人】华为技术有限公司, 清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1