一种降低TLC闪存的固态硬盘写放大的方法技术

技术编号:14844292 阅读:56 留言:0更新日期:2017-03-17 11:23
本发明专利技术公开了一种降低使用TLC闪存的固态硬盘写放大的方法,其特征在于一个Word Line处于Incomplete状态时,当系统触发对该Word Line所在的数据进行Read操作时或系统需要掉电时,先查询预先建立的待回收数据查询表,查找到合适的存在待回收数据block,将该待回收数据作为填充数据填充到对应的存储区域,完成数据垃圾回收工作,Word Line进入Complete状态,再触发对该Word Line的Read数据操作或系统掉电操作。通过使用待垃圾回收块中的有效数据代替无效数据,推动Word Line进入Complete状态,达到降低写放大,提高系统性能,增加使用寿命的目的。

【技术实现步骤摘要】

本专利技术涉及信息存储领域,尤其涉及一种降低TLC闪存的固态硬盘写放大的方法
技术介绍
TLCNANDflash是一种每个存储单元(memorycell)中存储有3个bit的flash类型,其较高的存储密度在固态硬盘及存储器领域有着愈来愈广泛的应用。在TLCNANDflash每个存储单元的3个bit信息中,分别属于不同的分组,相对于MLC及SLC中page的概念,TLC中的三个数据分组称为sub-page,其中存储低位bit的叫做lowpage,存储中间bit的叫做middlepage,存储高位bit的叫做uppage。而三个sub-page所属的同一个WordLine(WL)即是相对于MLC及SLC中page的存在。在TLC的Program写过程中,需要遵循一定的写序列programorder,这个programorder根据颗粒的不同而有所差异,但总体来说都需要遵循每个存储单元需要被program3次,并且3次program并非连续进行。在对TLC颗粒的block进行program操作时,需要将整个block进行依照programorder进行program操作,当所写数据量不足以将整个block写满时,需要将后面的WL写dummy数据(无效数据)以将整个block填满,否则会出现较多的bit出错。在写操作时,将未能写满的block称为unclosedBlock,将未能写满的WL称为Incompleter>状态。使用无效数据写操作的方式推动有效数据所在WordLine进入Complete状态,这种做法会增加SSD内部无效数据的写入,增加写放大,减少SSD使用寿命。
技术实现思路
针对以上缺陷,本专利技术目的在于提出了如何降低由于待读出数据所在的WordLine处于非UWL状态,通过填充无效数据引起的写放大问题。为了实现上述目的,本专利技术提供了一种降低使用TLC闪存的固态硬盘写放大的方法,其特征在于一个WordLine的完成一个Program操作后,该WordLine处于Incomplete状态时,如果系统触发对该WordLine所在的数据进行Read操作时或系统需要掉电时,先查询预先建立的待回收数据查询表,查找到合适的存在待回收数据block,将该待回收数据作为填充数据填充到当前处于Incomplete状态所在的WordLine对应的存储区域,完成数据垃圾回收工作,同时将处于Incomplete状态的WordLine进入Complete状态,再触发对该WordLine的Read数据操作或系统掉电操作。所述的降低使用TLC闪存的固态硬盘写放大的方法,其特征在于所述的待回收数据查询表包括待回收block列表,并建立各个待回收block中有效数据地址信息子表;待回收block列表由系统动态更新,实时记录当前存在需垃圾回收的所有block信息;各个待回收block中有效数据地址信息子表详细记录本block中存在的有效数据的地址。所述的降低使用TLC闪存的固态硬盘写放大的方法,其特征在于选取当前待回收block中有效数据最少的block,当该block中有效数据量不足以满足所需填充数据量时,则继续选取下一个待回收block,直到有足够的有效数据填充到当前处于Incomplete状态所在的WordLine对应的存储区域。本专利技术通过使用待垃圾回收块中的有效数据代替无效数据,推动Incomplete的有效数据所在WordLine进入Complete状态,达到降低写放大,提高系统性能,增加使用寿命的目的。附图说明图1是一种TLCNANDFlash数据写入序列示意图;图2是存在Incomplete状态的TLC数据页示意图;图3是TLC填入无效数据推动数据页进入Complete示意图;图4是TLC填入搬移的有效数据推动数据页进入Complete示意图;图5是有效数据被搬移,实现垃圾回收块示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1是一种TLCNANDFlash数据写入序列示意图;现行TLCNANDFlash的读写特性是:一个WordLine需要Program3次才进入Complete状态才可读出数据,但block内WordLine的program又有特定的顺序,并不是按顺序同一个WordLine完成3个program后再执行下一个WordLine操作。如WordLine0的3次Program操作,是要在完成WordLine1的WL11st和WL12nd的2次Program操作完成WordLine2的WL21st的1次Program操作后才执行到WordLine0的WL03rd的Program操作,WordLine0才完成3次Program操作进入Complete状态,假设刚完成WL03rd的Program操作时,出发读操作,该时刻WordLine1和WordLine2就处于Incomplete状态。图2是存在Incomplete状态的TLC数据页示意图;假设TLCNANDFlash的Program执行到某个时刻触发了读操作,该时刻WordLine0、WordLine1、WordLine2和WordLine3处于Complete状态设为CompleteDataWordLine,该时刻WordLine4、WordLine5处于Incomplete状态设为IncompleteDataWordLine。在正常使用TLCblock时,会造成有效数据完成写入,但是暂时无法读出的情况(IncompleteWordLine),此时如遇到主机端需要对该数据进行访问,则无法直接读出该数据。并且,在此期间若发生异常掉电,再次上电后也会出现完成写入的数据丢失的情况。图3是TLC填入无效数据推动数据页进入Complete示意图;为了正常读出WordLine4和WordLine5上处于Incomplete状态的数据,常见的方法就是通过填写入无效数据DummyData将WordLine4和WordLine5推进到Complete状态,为了实现该目的,就必须至少完成对WordLine6和WordLine7填入无效数据才可实现该目的。人为在该TLCblock后填入无效数据DummyData,使得之前Inc本文档来自技高网...

【技术保护点】
一种降低使用TLC闪存的固态硬盘写放大的方法,其特征在于一个Word Line的完成一个Program操作后,该Word Line处于Incomplete状态时,当系统触发对该Word Line所在的数据进行Read操作或系统需要掉电时,先查询预先建立的待回收数据查询表,查找到合适的存在待回收数据block,将该待回收数据作为填充数据填充到当前处于Incomplete状态所在的Word Line对应的存储区域,完成数据垃圾回收工作,同时将处于Incomplete状态的Word Line进入Complete状态,再触发对该Word Line的Read数据操作或系统掉电操作。

【技术特征摘要】
1.一种降低使用TLC闪存的固态硬盘写放大的方法,其特征在于一个Word
Line的完成一个Program操作后,该WordLine处于Incomplete状态时,当
系统触发对该WordLine所在的数据进行Read操作或系统需要掉电时,先查询
预先建立的待回收数据查询表,查找到合适的存在待回收数据block,将该待回
收数据作为填充数据填充到当前处于Incomplete状态所在的WordLine对应的
存储区域,完成数据垃圾回收工作,同时将处于Incomplete状态的WordLine进
入Complete状态,再触发对该WordLine的Read数据操作或系统掉电操作。
2.根据权利要求1所述的降低使用TLC闪存的固态硬盘写...

【专利技术属性】
技术研发人员:华荣李建秦龙华杨学森
申请(专利权)人:记忆科技深圳有限公司
类型:发明
国别省市:广东;44

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

1