一种数据管理方法及装置的制造方法_2

文档序号:9616086阅读:来源:国知局
所存储的数据的冷热程度;所述第二状态参数用于表示距离上一次写入当前存储单元数据的时间间隔。
[0059]步骤102:基于状态参数确定所述N个存储单元的损耗值。
[0060]优选地,所述基于状态参数确定所述N个存储单元的损耗值,包括:
[0061]获取各个存储单元的第一状态参数所对应的第一权重参数;
[0062]获取各个存储单元的第二状态参数所对应的第二权重参数;
[0063]根据第一状态参数、第一权重参数、第二状态参数、第二权重参数确定每个存储单元的损耗值;
[0064]其中,损耗值的计算公式为:
[0065]损耗值=第一权重参数*第一状态参数+第二权重参数*第二状态参数。
[0066]现有技术中的损耗均衡(WL,Wear Leveling)算法考虑的因素仅仅是每个块的擦写次数及整个块的擦写次数,这里,块是指存储单元,而未考虑距离上次写入数据到现在的时间,本发明在选择存储单元进行数据交换时考虑了时间因素。
[0067]具体的,损耗值的计算公式为:
[0068]w;= α
[0069]其中,α ;表不第一权重参数,β ;表不第二权重参数;EC ;表不第一状态参数,t ;表示第二状态参数;α i+β ;=固定值。
[0070]具体的,当距离上一次写入当前存储单元数据的时间间隔较小时,权重β i较小,此时,擦除次数对选择存储单元起重要作用。
[0071]具体的,当距离上一次写入当前存储单元数据的时间间隔较大时,权重较大,而a i较小,此时,时间因素对选择存储单元起更为重要的决定作用。
[0072]步骤103:基于所述损耗值对所述存储单元中的数据进行处理。
[0073]优选地,所述基于所述损耗值对所述存储单元中的数据进行处理,可以包括:
[0074]满足第一预设条件时,在数据存储单元间进行数据交换操作;或者,
[0075]满足第二预设条件时,将数据存储单元中的数据搬移至空闲存储单元中。
[0076]上述方案中,优选地,所述满足第一预设条件时,在数据存储单元间进行数据交换操作,可以包括:
[0077]当数据存储单元中的最大损耗值与数据存储单元中的最小损耗值之间的差值大于等于第一阈值时,将损耗值最大的数据存储单元中的数据与损耗值最小的数据存储单元中的数据进行交换。
[0078]上述方案中,优选地,所述满足第二预设条件时,将数据存储单元中的数据搬移至空闲存储单元中,可以包括:
[0079]当数据存储单元中的最大损耗值与空闲存储单元中的最小损耗值之间的差值大于等于第二阈值,且数据存储单元中的最小损耗值与空闲存储单元中的最大损耗值之间的差值大于等于第三阈值时,将损耗值最大的数据存储单元中的数据搬移至损耗值最小的空闲存储单元中。
[0080]本实施例所述数据管理方法,检测存储器中N个存储单元的状态参数,其中,所述状态参数包括与所述存储器使用程度相关的第一状态参数,以及与所述N个存储单元数据存储时间相关的第二状态参数;基于状态参数确定所述N个存储单元的损耗值;基于所述损耗值对所述存储单元中的数据进行处理;如此,在计算损耗值时考虑了时间因素,能减少刷新的数量,并保证读取速度,提高用户的使用体验。
[0081]实施例二
[0082]图2为本发明实施例数据管理方法的实现流程示意图二,应用于SSD中,在本发明一个优选实施例中,所述数据管理方法主要包括以下步骤:
[0083]步骤201:检测存储器中N个存储单元的状态参数,其中,所述状态参数包括与所述存储器使用程度相关的第一状态参数,以及与所述N个存储单元数据存储时间相关的第二状态参数。
[0084]优选地,所述第一状态参数用于表征当前存储单元的擦除次数和/或所存储的数据的冷热程度;所述第二状态参数用于表示距离上一次写入当前存储单元数据的时间间隔。
[0085]步骤202:基于状态参数确定所述N个存储单元的损耗值。
[0086]优选地,所述基于状态参数确定所述N个存储单元的损耗值,包括:
[0087]获取各个存储单元的第一状态参数所对应的第一权重参数;
[0088]获取各个存储单元的第二状态参数所对应的第二权重参数;
[0089]根据第一状态参数、第一权重参数、第二状态参数、第二权重参数确定每个存储单元的损耗值;
[0090]其中,损耗值的计算公式为:
[0091]损耗值=第一权重参数*第一状态参数+第二权重参数*第二状态参数。
[0092]其中,第一权重参数+第二权重参数=固定值,例如,所述固定值为1。
[0093]这里,所述固定值可以根据实际需要进行设定。
[0094]步骤203:基于所述损耗值对所述存储单元中的数据进行处理。
[0095]这里,所述的处理是指进行均衡操作。
[0096]具体地,基于所述损耗值对所述存储单元中的数据进行处理,可以包括:
[0097]满足第一预设条件时,在数据存储单元间进行数据交换操作;或者,
[0098]满足第二预设条件时,将数据存储单元中的数据搬移至空闲存储单元中。
[0099]也就是说,在进行均衡操作时,可以在数据存储单元与数据存储单元之间进行数据交换,也可以将数据存储单元中的数据搬移至空闲存储单元中。
[0100]步骤204:若在预定时间阈值范围内未对第一数据存储单元中的数据进行均衡操作,则将所述第一数据存储单元的数据写入当前损耗值最小的空闲存储单元或与当前损耗值最小的数据存储单元进行数据交换。
[0101]其中,所述第一数据存储单元是指在预定时间阈值范围内,损耗值均小于数据存储单元中的最大损耗值但平均损耗值大于第四阈值的数据存储单元。
[0102]本实施例所述数据管理方法,如果在预定时间阈值内(比如限定一个月)数据仍没被均衡操作进行数据交换,则强制刷新,进行数据搬移操作,以保证数据的读取速度。
[0103]实施例三
[0104]图3为本发明实施例数据管理装置的结构示意图一,如图3所示,所述数据管理装置包括:
[0105]传感器31,用于检测存储器中N个存储单元的状态参数,其中,所述状态参数包括与所述存储器使用程度相关的第一状态参数,以及与所述N个存储单元数据存储时间相关的第二状态参数;
[0106]第一处理器32,用于基于状态参数确定所述N个存储单元的损耗值;
[0107]第二处理器33,用于基于所述损耗值对所述存储单元中的数据进行处理。
[0108]优选地,所述第一状态参数用于表示当前存储单元的擦除次数和/或所存储的数据的冷热程度;所述第二状态参数用于表示距离上一次写入当前存储单元数据的时间间隔。
[0109]具体地,所述传感器31可设置于所述数据管理装置或所述数据管理装置所在设备的外表面,或者可设置于所述数据管理装置或所述数据管理装置所在设备的内部。
[0110]优选地,所述第一处理器32,还用于:
[0111]获取各个存储单元的第一状态参数所对应的第一权重参数;
[0112]获取各个存储单元的第二状态参数所对应的第二权重参数;
[0113]根据第一状态参数、第一权重参数、第二状态参数、第二权重参数确定每个存储单元的损耗值;
[0114]其中,损耗值的计算公式为:
[0115]损耗值=第一权重参数*第一状态参数+第二权重参数*第二状态参数。
[0116]其中,第一权重参数+第二权重参数=固定值,例如,所述固定值为1。
[0117]优选地,所述第二处理器33,还用于:
[0118]满足第一预设条件时,在数据存储单元间进行数据交换操作;或者,
[0119]满足第二预设条件时,将数据存储单元中的数据搬移至空闲存储单元中。
[0120]在一具体子实施例中,所述第二处理器33,还用于:
[0121]当数据存储单元中的最大损耗值与数据存储单元中的最小损耗值之间的差值大于等于第一阈值时,将损耗值最大的数据存储单元中的数据与损耗值最小的数据存储单元中的数据进行交换。
[0122]在一具体子实施例中,所述第二处理器33,还用于:
[0123]当数据存储单元中的最大损耗值与空闲存储单元中的最小损耗值之间的差值大于等于第二阈值,且数据存储单元
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1