数据恢复方法、存储器存储装置及存储器控制器与流程
- 国知局
- 2024-07-31 19:43:09
本发明涉及一种存储器管理技术,尤其涉及一种数据恢复方法、存储器存储装置及存储器控制器。背景技术:::1、可复写式非易失性存储器(rewritable non-volatile memory)具有数据非易失性、省电、体积小与无机械结构等特性,故被广泛地应用于各种电子装置。可复写式非易失性存储器具有多个实体区块(physical block),且每一实体区块具有多个实体页面(physical page)。其中,实体区块为数据抹除的最小单位,而实体页面则是数据写入的最小单位。2、nand flash闪存被广泛的应用于手机、笔记本电脑、云存储等存储领域,闪存的基本功能是保存数据,保证写入的数据和读出的数据的一致性是存储系统的基本要求。错误校正码(ecc,error correcting code)可以纠正读出数据的错误,是保证写入数据和读出数据的一致性,提高存储系统可靠性的重要手段。但错误校正码也有一定的纠错范围,如果读出数据的原始误码率较高,将会超出错误校正码的纠错能力,无法正确的恢复出写入的数据。此类实体区块(physical block)中可能是由于block中有坏页(physical page)的出现,而导致出现存储于block中的数据不能被读取出来。3、因此,如何进行数据恢复是目前本领域技术人员亟待解决的问题。技术实现思路1、本发明的实施例提供一种数据恢复方法、存储器存储装置及存储器控制器,可利用元数据重建映射表,进而完成异常ssd的数据恢复。2、本发明的实施例提供一种数据恢复方法,用于存储器模块,其中存储器模块包括多个存储器晶粒,每一个存储器晶粒具有多个实体抹除单元,每一个实体抹除单元具有多个实体程序化单元,该方法包括:获取第一映射表,其中第一映射表至少包括多个实体抹除单元中的第一类实体抹除单元的物理地址映射至逻辑地址的映射关系;依据第一映射表产生第二映射表,其中第二映射表至少包括逻辑地址映射至第一类实体抹除单元的物理地址的映射关系;以及依据第二映射表读取存储于第一类实体抹除单元中的多个实体程序化单元的数据,并且将数据写入第二类实体抹除单元的多个实体程序化单元中。3、进一步,在一实施例中,所述获取第一映射表的步骤包括:根据所述第一类实体抹除单元的编号从预设映射表存储区获取所述第一映射表;其中,所述第一类实体抹除单元和所述预设映射表存储区归属不同的存储器晶粒或不同的实体抹除单元。4、进一步,在一实施例中,所述获取第一映射表的步骤包括:若不能从所述预设映射表存储区中获取所述第一映射表,则扫描所述第一类实体抹除单元中的每一所述实体程序化单元,得到所述第一类实体抹除单元中的每一所述实体程序化单元中存储的元数据信息;基于所述元数据信息得到所述第一映射表。5、进一步,在一实施例中,所述基于所述元数据信息得到所述第一映射表的步骤包括:按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高;按照先扫描抹除次数大的所述实体抹除单元再扫描抹除次数小的所述实体抹除单元的方式获取到所述元数据信息。6、进一步,在一实施例中,所述基于所述元数据信息得到所述第一映射表的步骤包括:按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高;按照先扫描错误比特值大的所述实体程序化单元再扫描错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。7、进一步,在一实施例中,所述基于所述元数据信息得到所述第一映射表的步骤包括:按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高;按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高;按照先扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值大的所述实体程序化单元再扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。8、本发明的实施例还提供一种存储器存储装置,包括连接接口、存储器模块以及存储器控制器。连接接口用以连接主机系统。存储器模块包括多个存储器晶粒,每一个存储器晶粒具有多个实体抹除单元,每一个实体抹除单元具有多个实体程序化单元。存储器控制器连接连接接口与存储器模块,其中存储器控制器用以获取第一映射表,其中第一映射表至少包括多个实体抹除单元中的第一类实体抹除单元的物理地址映射至逻辑地址的映射关系,存储器控制器还用以依据第一映射表产生第二映射表,其中第二映射表至少包括逻辑地址映射至第一类实体抹除单元的物理地址的映射关系,以及存储器控制器还用以依据第二映射表读取存储于第一类实体抹除单元中的多个实体程序化单元的数据,并且将数据写入第二类实体抹除单元的多个实体程序化单元中。9、进一步,在一实施例中,所述存储器控制器用以获取所述第一映射表的操作中还包括:所述存储器控制器还用以根据所述第一类实体抹除单元的编号从预设映射表存储区获取所述第一映射表;其中,所述第一类实体抹除单元和所述预设映射表存储区归属不同的存储器晶粒或不同的实体抹除单元。10、进一步,在一实施例中,所述存储器控制器用以获取所述第一映射表的操作中还包括:若不能从所述预设映射表存储区中获取所述第一映射表,则所述存储器控制器还用以扫描所述第一类实体抹除单元中的每一所述实体程序化单元,得到所述第一类实体抹除单元中的每一所述实体程序化单元中存储的元数据信息,所述存储器控制器还用以基于所述元数据信息得到所述第一映射表。11、进一步,在一实施例中,所述存储器控制器还用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制器还用以按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高,以及所述存储器控制器还用以按照先扫描抹除次数大的所述实体抹除单元再扫描抹除次数小的所述实体抹除单元的方式获取到所述元数据信息。12、进一步,在一实施例中,所述存储器控制器还用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制器还用以按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高,所述存储器控制器还用以按照先扫描错误比特值大的所述实体程序化单元再扫描错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。13、进一步,在一实施例中,所述存储器控制器还用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制器还用以按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高,所述存储器控制器还用以按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高,以及所述存储器控制器还用以按照先扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值大的所述实体程序化单元再扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。14、本发明的实施例还提供一种存储器控制器,包括主机接口、存储器接口、错误检查与校正电路以及存储器控制电路。其中,主机接口用以连接主机系统。存储器接口用以连接存储器模块,其中存储器模块包括多个存储器晶粒,每一个存储器晶粒具有多个实体抹除单元,每一个实体抹除单元包括多个实体程序化单元。存储器控制电路连接主机接口、存储器接口与错误检查与校正电路,其中存储器控制电路用以获取第一映射表,其中第一映射表至少包括多个实体抹除单元中的第一类实体抹除单元的物理地址映射至逻辑地址的映射关系,存储器控制电路还用以依据第一映射表产生第二映射表,其中第二映射表至少包括逻辑地址映射至第一类实体抹除单元的物理地址的映射关系,以及存储器控制电路还用以依据第二映射表读取存储于第一类实体抹除单元中的多个实体程序化单元的数据,并且将数据写入第二类实体抹除单元的多个实体程序化单元中。15、进一步,在一实施例中,所述存储器控制电路用以获取所述第一映射表的操作中还包括:所述存储器控制电路还用以根据所述第一类实体抹除单元的编号从预设映射表存储区获取所述第一映射表;其中,所述第一类实体抹除单元和所述预设映射表存储区归属不同的存储器晶粒或不同的实体抹除单元。16、进一步,在一实施例中,所述存储器控制电路用以获取所述第一映射表的操作中还包括:若不能从所述预设映射表存储区中获取所述第一映射表,则所述存储器控制电路还用以扫描所述第一类实体抹除单元中的每一所述实体程序化单元,得到所述第一类实体抹除单元中的每一所述实体程序化单元中存储的元数据信息,所述存储器控制电路还用以基于所述元数据信息得到所述第一映射表。17、进一步,在一实施例中,所述存储器控制电路用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制电路还用以按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高,所述存储器控制电路还用以按照先扫描抹除次数大的所述实体抹除单元再扫描抹除次数小的所述实体抹除单元的方式获取到所述元数据信息。18、进一步,在一实施例中,所述存储器控制电路用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制电路还用以按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高,所述存储器控制电路还用以按照先扫描错误比特值大的所述实体程序化单元再扫描错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。19、进一步,在一实施例中,所述存储器控制电路用以基于所述元数据信息得到所述第一映射表的操作中还包括:所述存储器控制电路还用以按照抹除次数对所述第一类实体抹除单元中的实体抹除单元进行排序,其中所述抹除次数越大,所述实体抹除单元的排序越高,所述存储器控制电路还用以按照错误比特值对所述第一类实体抹除单元中的实体程序化单元进行排序,其中所述错误比特值越大,所述实体程序化单元的排序越高,以及所述存储器控制电路还用以按照先扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值大的所述实体程序化单元再扫描所述抹除次数越大的所述实体抹除单元中所述错误比特值小的所述实体程序化单元的方式获取到所述元数据信息。20、基于此,本发明提供的一种数据恢复方法、存储器存储装置及存储器控制器,可利用元数据重建映射表,进而完成异常ssd的数据恢复,且减少扫描实体抹除单元的数量,节省扫描时间,提高数据恢复的速度。当前第1页12当前第1页12
本文地址:https://www.jishuxx.com/zhuanli/20240731/183651.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表