一种数据处理方法及相关设备技术

技术编号:26342318 阅读:32 留言:0更新日期:2020-11-13 20:32
本申请提供了一种数据处理方法及相关设备,可以减少存储设备中物理块的擦写次数,增加存储设备的使用寿命。该方法包括:遍历第一映射表的所有数据项,以确定出第一映射表中满足预设条件的第一数据项;判断第一数据项的逻辑页地址与第二数据项的逻辑页地址的间隔是否大于第三预设值;当第一数据项的逻辑页地址与第二数据项的逻辑页地址间隔不大于第三预设值时,将第一数据项对应的数据页以及第一数据项对应的间隔页写入第一缓存块中的第一空闲页;根据第一空闲页对应的缓存页地址、第一逻辑页地址、第一缓存页地址以及第一项页数修改第一数据项对应的逻辑页地址、缓存页地址以及项页数。

【技术实现步骤摘要】
一种数据处理方法及相关设备
本申请涉及存储领域,尤其涉及一种数据处理方法及相关设备。
技术介绍
大数据在万物互联时代的普及应用对数据存储和处理的速度以及密度提出了更高的要求,具有更低成本和更高密度的3DNandFlash应运而生。越来越多的大容量U盘、EMMC(EmbeddedMultiMediaCard的简称,是MMC协会订立、主要针对手机或平板电脑等产品的内嵌式存储器标准规格)以及固态驱动器(SolidStateDisk或SolidStateDrive,SSD)等存储设备使用3DTLC/QLCNandFlash作为存储介质。为了提供与大容量更加匹配的读写性能和使用寿命,需要根据3DTLC/QLCNandFlash的新特点对FTL(FlashTranslationLayer的简称,为NandFlash上增加一个管理软件,主要就是进行映射管理)算法进行创新性改进。鉴于TLC/QLC模式编程时间达到毫秒级别,通常会采用SLC模式来缓存数据(但数据缓存块的容量仅为TLC/QLC模式的1/3或1/4,因此只能分配几组块来进行数据缓存,最终仍需将几个缓存块中的用户数据重新写入TLC/QLC模式的物理块),由于FLASH单块容量上升至几十MB,则用于进行Flash管理和数据缓存的块数不能过多,否则将直接影响到产品的容量。这样就导致了只要存储芯片的逻辑块内逻辑页地址到物理页地址的映射表MapTbl写满,就会导致SLC模式缓存块到TLC/QLC模式物理块频繁的搬家操作,增加物理块的擦写次数。专利技术内容本申请提供了一种数据处理方法及相关设备,可以尽量避免出现虽然缓存块没有写满但因MapTbl满而导致的SLC模式缓存块到TLC/QLC模式物理块的搬家操作,尽可能的减少物理块的擦写次数,增加存储设备的使用寿命。本申请第一方面提供了一种数据处理方法,包括:当第一映射表中数据项达到第一预设值,且所述第一映射表中数据项对应的数据页不连续,且第一缓存块中空闲页的数量达到第二预设值时,遍历所述第一映射表的所有数据项,以确定出所述第一映射表中满足预设条件的第一数据项,所述第一映射表为存储芯片中第一逻辑块内逻辑页地址与物理页地址的映射表,所述第一逻辑块为所述存储芯片对应的逻辑块中的任意一个逻辑块,所述第一缓存块为所述存储芯片中所述第一逻辑块对应的缓存块;判断所述第一数据项的逻辑页地址与第二数据项的逻辑页地址的间隔是否大于第三预设值,所述第二数据项为所述第一映射表中与所述第一数据项相邻的数据项;当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔不大于所述第三预设值时,将所述第一数据项对应的数据页以及所述第一数据项对应的间隔页写入所述第一缓存块中的第一空闲页,所述第一数据项对应的间隔页为所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址之间的逻辑页地址对应的数据页;根据所述第一空闲页对应的缓存页地址、第一逻辑页地址、第一缓存页地址以及第一项页数修改所述第一数据项对应的逻辑页地址、缓存页地址以及项页数,所述第一逻辑页地址、所述第一缓存页地址以及所述第一项页数均与所述第二数据项相对应。可选地,所述方法还包括:当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔大于所述第三预设值时,将所述第一数据项对应的数据页写入所述第一空闲页;根据所述第一空闲页对应的缓存页地址修改所述第一数据项对应的缓存页地址。可选地,所述方法还包括:当所述第一映射表中的空闲项达到第四预设值,且所述第一缓存块中的空闲页不小于第五预设值,且所述存储芯片中不存在未分配的扩展缓存块时,确定所述存储芯片的扩展缓存块中空闲时长最大的目标扩展缓存块对应的第二逻辑块;根据所述第二逻辑块对应的第二映射表中的页地址映射记录,将所述第二逻辑块对应的所有有效数据从第二缓存块中拷贝至所述存储芯片的第一物理块,所述第二缓存块为所述存储芯片中与所述第二逻辑块对应的缓存块:根据所述第一物理块的物理块地址修改所述存储芯片对应的物理块地址映射表。可选地,所述确定所述存储芯片的扩展缓存块中空闲时长最大的目标扩展缓存块对应的第二逻辑块包括:通过所述存储芯片的扩展缓存块对应的逻辑块的空闲计数器对所述存储芯片的扩展缓存块的空闲时长进行对比,得到所述目标缓存块对应的第二逻辑块。可选地,所述方法还包括:当所述第一缓存块中空闲页的数量未达到所述第二预设值时,判断所述存储芯片中是否存在可分配的扩展缓存块;当所述存储芯片中不存在可分配的扩展缓存块时,根据所述第一映射表中的页地址映射记录,将所述第一逻辑块对应的所有有效数据从所述第一缓存块中拷贝至所述存储芯片的第二物理块;根据所述存储芯片的第二物理块的物理块地址修改所述存储芯片对应的物理块地址映射表。本申请第二方面提供了一种数据处理装置,包括:确定单元,用于当第一映射表中数据项达到第一预设值,且所述第一映射表中数据项对应的数据页不连续,且第一缓存块中空闲页的数量达到第二预设值时,遍历所述第一映射表的所有数据项,以确定出所述第一映射表中满足预设条件的第一数据项,所述第一映射表为存储芯片中第一逻辑块内逻辑页地址与物理页地址的映射表,所述第一逻辑块为所述存储芯片对应的逻辑块中的任意一个逻辑块,所述第一缓存块为所述存储芯片中所述第一逻辑块对应的缓存块;判断单元,用于判断所述第一数据项的逻辑页地址与第二数据项的逻辑页地址的间隔是否大于第三预设值,所述第二数据项为所述第一映射表中与所述第一数据项相邻的数据项;写入单元,用于当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔不大于所述第三预设值时,将所述第一数据项对应的数据页以及所述第一数据项对应的间隔页写入所述第一缓存块中的第一空闲页,所述第一数据项对应的间隔页为所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址之间的逻辑页地址对应的数据页;根据所述第一空闲页对应的缓存页地址、第一逻辑页地址、第一缓存页地址以及第一项页数修改所述第一数据项对应的逻辑页地址、缓存页地址以及项页数,所述第一逻辑页地址、所述第一缓存页地址以及所述第一项页数均与所述第二数据项相对应。可选地,所述写入单元,还用于当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔大于所述第三预设值时,将所述第一数据项对应的数据页写入所述第一空闲页;所述修改单元,还用于根据所述第一空闲页对应的缓存页地址修改所述第一数据项对应的缓存页地址。可选地,所述确定单元,还用于当所述第一映射表中的空闲项达到第四预设值,且所述第一缓存块中的空闲页不小于第五预设值,且所述存储芯片中不存在未分配的扩展缓存块时,确定所述存储芯片的扩展缓存块中空闲时长最大的目标扩展缓存块对应的第二逻辑块;所述写入单元,还用于根据所述第二逻辑块对应的第二映射表中的页地址映射记录,将所述第二逻辑块对应的所有有效数据从第二缓存块中拷贝至所述存储芯片的第一物理块,所述第二缓存块为所本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,包括:/n当第一映射表中数据项达到第一预设值,且所述第一映射表中数据项对应的数据页不连续,且第一缓存块中空闲页的数量达到第二预设值时,遍历所述第一映射表的所有数据项,以确定出所述第一映射表中满足预设条件的第一数据项,所述第一映射表为存储芯片中第一逻辑块内逻辑页地址与物理页地址的映射表,所述第一逻辑块为所述存储芯片对应的逻辑块中的任意一个逻辑块,所述第一缓存块为所述存储芯片中所述第一逻辑块对应的缓存块;/n判断所述第一数据项的逻辑页地址与第二数据项的逻辑页地址的间隔是否大于第三预设值,所述第二数据项为所述第一映射表中与所述第一数据项相邻的数据项;/n当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔不大于所述第三预设值时,将所述第一数据项对应的数据页以及所述第一数据项对应的间隔页写入所述第一缓存块中的第一空闲页,所述第一数据项对应的间隔页为所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址之间的逻辑页地址对应的数据页;/n根据所述第一空闲页对应的缓存页地址、第一逻辑页地址、第一缓存页地址以及第一项页数修改所述第一数据项对应的逻辑页地址、缓存页地址以及项页数,所述第一逻辑页地址、所述第一缓存页地址以及所述第一项页数均与所述第二数据项相对应。/n...

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:
当第一映射表中数据项达到第一预设值,且所述第一映射表中数据项对应的数据页不连续,且第一缓存块中空闲页的数量达到第二预设值时,遍历所述第一映射表的所有数据项,以确定出所述第一映射表中满足预设条件的第一数据项,所述第一映射表为存储芯片中第一逻辑块内逻辑页地址与物理页地址的映射表,所述第一逻辑块为所述存储芯片对应的逻辑块中的任意一个逻辑块,所述第一缓存块为所述存储芯片中所述第一逻辑块对应的缓存块;
判断所述第一数据项的逻辑页地址与第二数据项的逻辑页地址的间隔是否大于第三预设值,所述第二数据项为所述第一映射表中与所述第一数据项相邻的数据项;
当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔不大于所述第三预设值时,将所述第一数据项对应的数据页以及所述第一数据项对应的间隔页写入所述第一缓存块中的第一空闲页,所述第一数据项对应的间隔页为所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址之间的逻辑页地址对应的数据页;
根据所述第一空闲页对应的缓存页地址、第一逻辑页地址、第一缓存页地址以及第一项页数修改所述第一数据项对应的逻辑页地址、缓存页地址以及项页数,所述第一逻辑页地址、所述第一缓存页地址以及所述第一项页数均与所述第二数据项相对应。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一数据项的逻辑页地址与所述第二数据项的逻辑页地址间隔大于所述第三预设值时,将所述第一数据项对应的数据页写入所述第一空闲页;
根据所述第一空闲页对应的缓存页地址修改所述第一数据项对应的缓存页地址。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述第一映射表中的空闲项达到第四预设值,且所述第一缓存块中的空闲页不小于第五预设值,且所述存储芯片中不存在未分配的扩展缓存块时,确定所述存储芯片的扩展缓存块中空闲时长最大的目标扩展缓存块对应的第二逻辑块;
根据所述第二逻辑块对应的第二映射表中的页地址映射记录,将所述第二逻辑块对应的所有有效数据从第二缓存块中拷贝至所述存储芯片的第一物理块,所述第二缓存块为所述存储芯片中与所述第二逻辑块对应的缓存块:
根据所述第一物理块的物理块地址修改所述存储芯片对应的物理块地址映射表。


4.根据权利要求3所述的方法,其特征在于,所述确定所述存储芯片的扩展缓存块中空闲时长最大的目标扩展缓存块对应的第二逻辑块包括:
通过所述存储芯片的扩展缓存块对应的逻辑块的空闲计数器对所述存储芯片的扩展缓存块的空闲时长进行对比,得到所述目标扩展缓存块对应的第二逻辑块。


5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
当所述第一缓存块中空闲页的数量未达到所述第二预设值时,判断所述存储芯片中是否存在可分配的扩展缓存块;
当所述存储芯片中不存在可分配的扩展缓存块时,根据所述第一映射表中的页地址映射记录,将所述第一逻辑块对应的所有有效数据从所述第一缓存块中拷贝至所述存储芯片的第二物理块;
根据所述存...

【专利技术属性】
技术研发人员:龙承东胡一凡
申请(专利权)人:深圳芯邦科技股份有限公司
类型:发明
国别省市:广东;44

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

1