固态硬盘的数据处理方法及固态硬盘技术

技术编号:8022338 阅读:182 留言:0更新日期:2012-11-29 04:35
本发明专利技术提供了一种固态硬盘的数据处理方法,所述方法包括:设置逻辑页地址的活跃度分级策略;将每个所述逻辑页地址对应的活跃度等级各关联至少一个Flash块,用于储存相同活跃度地址等级的数据;当所述固态硬盘有数据写入时,判断数据的逻辑页地址对应的活跃度等级;选择垃圾回收策略。本发明专利技术还相应的提供一种固态硬盘。借此,本发明专利技术对固态硬盘写入数据进行分级,提高垃圾回收效率,降低写入放大率,提高固态硬盘使用寿命。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种固态硬盘的数据处理方法及固态硬盘
技术介绍
随着计算机技术的发展,固态硬盘已在该领域得到了较为广泛的应用。一般的固态硬盘是以Flash作为存储介质,其Flash介质具有以下特性写入最小单位为页,擦除的最小单位为块;Flash块的擦写次数是有限的,决定了其寿命相对机械硬盘要短。显而易见的,相同数据的情况下,固态硬盘中实际写入数据量越少,则写入放大率越小,其寿命越长。 在传统固态硬盘写入方法中,FTL(Flash translation layer,闪存转换层)地址映射表以页(或小于Flash块)大小进行映射时,Flash块中的数据活跃度不同,垃圾回收时难以保证Flash块中数据全部为无效数据,将存在部分有效页需要搬移写入到另一块新的Flash块中。如图I所示,对数据未分级情况下,对活跃数据的修改过程中,可能有小部分次活跃,或少量不活跃数据,一段时间后,当较活跃数据被再次修改时,该Flash块将残留部分较不活跃数据,垃圾回收时则需要搬移该Flash块中的有效页中的数据,增加了固态硬盘的写入放大率,且这种有效页的搬移写入操作,也大大降低了垃圾回收效率。综上可知,现有的固态硬盘的数据写入的处理技术,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
技术实现思路
针对上述的缺陷,本专利技术的目的在于提供一种固态硬盘的数据处理方法及固态硬盘,其可以降低数据的写放大率,提高垃圾回收效率。为了实现上述目的,本专利技术提供一种固态硬盘的数据处理方法,所述方法包括设置逻辑页地址的活跃度分级策略;将每个所述逻辑页地址对应的活跃度等级各关联至少一个Flash块,用于储存相同活跃度地址等级的数据;当所述固态硬盘有数据写入时,判断所述数据的逻辑页地址的对应的活跃度等级;选择垃圾回收策略。根据本专利技术的固态硬盘的数据处理方法,所述活跃度分级策略包括对所述固态硬盘进行分区,将各个分区按照应用确定为不同活跃度等级,并将所述各个分区的地址换算为逻辑页地址,当有数据写入时,记录该逻辑页地址数据的活跃度等级。根据本专利技术的固态硬盘的数据处理方法,所述活跃度分级策略包括设置所述逻辑页地址的活跃度等级个数,以及每一个活跃度等级对应的逻辑页地址的数据修改计数范围。根据本专利技术的固态硬盘的数据处理方法,所述判断所述数据的逻辑页地址的对应的活跃度等级步骤包括记录所述逻辑页地址的数据修改计数,当所述修改计数在设定的某活跃度等级对应的修改计数范围内时,将所述逻辑页地址数据确定为该活跃度等级。根据本专利技术的固态硬盘的数据处理方法,所述逻辑页地址数据每修改一次,则所述逻辑页地址的数据修改计数作加I处理。根据本专利技术的固态硬盘的数据处理方法,所述方法还包括记录所述逻辑页地址数据的每一次修改时间,若所述逻辑页地址数据的下一次的修改时间与上次的修改时间间隔超过预设值,则对所述逻辑页地址的活跃度等级进行降级处理。根据本专利技术的固态硬盘的数据处理方法,所述方法还包括 所述每个活跃度等级对应的Flash块排成一个队列,当某活跃度等级的数据被修改时,将所述数据写入所述队列中的最后一个Flash块中,若所述最后一个Flash块已被写满,则获取一空闲的Flash块,并将所述空闲的Flash块加入到所述队列。根据本专利技术的固态硬盘的数据处理方法,当所述Flash块被垃圾回收清空时,将所述Flash块从当前队列中删除。根据本专利技术的固态硬盘的数据处理方法,所述垃圾回收策略包括全块垃圾回收策略和部分垃圾回收策略。根据本专利技术的固态硬盘的数据处理方法,所述选择垃圾回收策略步骤包括设置全块垃圾回收策略和部分垃圾回收策略对应的无效数据占有率阈值;分时检测每个活跃度等级对应Flash块的无效数据占有率;根据所述无效数据占有率选择所述垃圾回收策略。本专利技术还提供一种固态硬盘,包括分级设置模块,用于设置逻辑页地址的活跃度分级策略;判断模块,用于当所述固态硬盘有数据写入时,判断所述逻辑页地址的数据对应的活跃度等级;Flash关联模块,用于将每个所述逻辑页地址对应的活跃度等级各关联至少一个Flash块,用于储存相同活跃度等级的数据;垃圾回收管理模块,用于选择垃圾回收策略。根据本专利技术的固态硬盘,所述分级设置模块包括分区处理子模块,用于对所述固态硬盘进行分区,将各个分区按照应用确定为不同活跃度等级,并将所述各个分区的地址换算为逻辑页地址,当有数据写入时,记录该逻辑页地址数据的活跃度等级。根据本专利技术的固态硬盘,所述分级设置模块包括分级子模块,用于设置所述活跃度等级个数,以及每一个活跃度等级对应的逻辑页地址的数据修改计数范围;所述分级子模块还用于记录所述逻辑页地址数据的修改计数,当所述修改计数在设定的某活跃度等级对应的修改计数范围内时,将所述逻辑页地址数据确定为该活跃度等级。根据本专利技术的固态硬盘,所述固态硬盘内设有时间戳,用于记录所述逻辑页地址数据的每一次修改时间;若所述逻辑页地址数据的下一次的修改时间与上次的修改时间间隔超过预设值,则对所述逻辑页地址的活跃度等级进行降级处理。本专利技术通过对固态硬盘数据逻辑页地址的活跃度设置分级策略,并将固态硬盘中的Flash块按级别关联,当固态硬盘有数据写入时,判断数据的逻辑页地址对应的活跃度等级,并写入与其活跃度等级关联的Flash块中,借此使每个Flash块中只储存相同活跃度等级的数据。更好的,在垃圾回收时,可以根据不同等级的Flash块指定垃圾回收时机和策略,借此可以减少Flash块中有效数据迁移,提高垃圾回收效率,降低数据写入放大率,提高固态硬盘使用效率,延长使用寿命。附图说明图I是现有技术的固态硬盘Flash块中页数据的活跃度等级示意图;图2是本专利技术的固态硬盘的结构示意图;图3是本专利技术一实施例的Flash块中页数据的活跃度等级示意图;图4是本专利技术一实施例的固态硬盘的数据处理方法流程图。 具体实施例方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。参见图2,本专利技术提供了一种固态硬盘,该固态硬盘100至少包括分级设置模块10, Flash关联模块20、判断模块30以及垃圾回收管理模块40,其中分级设置模块10用于设置固态硬盘100内部逻辑页地址的活跃度分级策略,具体分级策略包括固定分级和活跃度统计分级。具体的,分级设置模块10包括分区处理子模块11和分级子模块12。其中,分区处理子模块11用于对所述固态硬盘100进行分区,将各个分区按照应用确定为不同活跃度等级,并将各个分区的地址换算为逻辑页地址(LPA),当有数据写入该LPA时,记录该LPA的数据对应的活跃度等级,借此完成固定分级策略。分级子模块12用于设置所述活跃度等级个数,以及每一个活跃度等级对应的逻辑页地址的数据修改计数范围。比如,某LPA的修改计数(被修改的次数)范围为I 10,则规定其活跃度等级为0级,修改计数范围在11 100为I级,100以上为2级。同时,分级子模块12还用于记录所述LPA数据的修改计数,假定该计数为R,当R在设定的某活跃度等级对应的修改计数范围内时,将所述LPA数据确定为该活跃度等级,比如统计获取某LPA数据的R值为12,则确定该LP本文档来自技高网...

【技术保护点】
一种固态硬盘的数据处理方法,其特征在于,所述方法包括:设置逻辑页地址的活跃度分级策略;将每个所述逻辑页地址对应的活跃度等级各关联至少一个Flash块,用于储存相同活跃度地址等级的数据;当所述固态硬盘有数据写入时,判断数据的逻辑页地址对应的活跃度等级;选择垃圾回收策略。

【技术特征摘要】

【专利技术属性】
技术研发人员:李明星
申请(专利权)人:记忆科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1