数据存储装置及使用不可用页表或不可用块表的读写方法_4

文档序号:9865426阅读:来源:国知局
,能够保证读写性能,又能够减少擦除NAND的次数,延长固态硬盘的寿命;由于不使用DDR DRAM,无需使用昂贵又占体积的断电保护设备,降低了固态硬盘的成本,同时降低了固态硬盘的功耗;维护每个块(block)的擦除次数表与不可用页表,不再采用异地写入的NAND管理技术,无需保存占用大量空间的逻辑地址与物理地址对照表,不仅节省了存储空间,而且无需复杂的处理,进一步提高了读写性能;不以牺牲随机读取的性能为代价,且无需消耗较多的系统内存;采用不可用块表代替不可用页表,进一步减少内存消耗。
[0151]以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
【主权项】
1.一种数据存储装置,包括主机接口、主控芯片、用于存储数据的一个或多个NAND芯片以及MRAM,所述NAND芯片、所述MRAM分别与所述主控芯片连接,所述MRAM包括写缓存或读写缓存,其特征在于,所述MRAM还包括擦除次数表与不可用页表,擦除次数表用于存储所述NAND芯片中每个块的擦除次数,所述不可用页表包括所述NAND芯片中出厂时的坏块中的页、后续读写使用过程中出现的坏块中的页以及它们的替换页。2.如权利要求1所述的数据存储装置,其特征在于,所述不可用页表还包括危险页以及所述危险页的替换页,所述危险页是所述NAND芯片中擦除次数大于擦除警戒值的块中的页。3.一种如权利要求1-2所述的数据存储装置的使用不可用页表的写方法,包括以下步骤: (1)收到写NAND页指令; (2)所述NAND页是否在写缓存或读写缓存中,如果在所述写缓存或所述读写缓存中,执行步骤(5);如果不在所述写缓存或所述读写缓存中,执行步骤(3); (3)从缓存中选择一个空闲页,写入所述NAND页的内容; (4)如果所述写缓存或所述读写缓存的空闲页少于第一警戒值,清理所述写缓存或所述读写缓存; (5)将写NAND页指令中的数据写入在写缓存或读写缓存的相应页中。4.如权利要求3所述的数据存储装置的使用不可用页表的写方法,其特征在于,步骤(4)中清理所述写缓存或所述读写缓存的方法包括以下步骤: (41)选择需要清理的缓存页; (42)如果所述缓存页对应的NAND页在不可用页表中且有替换页,执行步骤(43);否则执行步骤(44); (43)获取替换页的地址; (44)将所述NAND页的地址直接对应到物理地址,找到所述写缓存或所述读写缓存中所有属于同一个块且更新的缓存页; (45)读取所述NAND页对应的块的数据,用找到的所有属于同一个块且更新的缓存页的数据更新所述NAND页对应的块的数据; (46)将所述NAND页对应的块的数据写回NAND芯片; (47)如果写回NAND芯片成功,执行步骤(49);如果写回NAND芯片失败,所述NAND对应的块成为坏块,执行步骤(48); (48)根据擦除次数表,按照写均衡原则分配空闲的NAND块,作为所述NAND对应的块的替换块,更新所述不可用页表,执行步骤(43); (49)更新擦除次数表中所述NAND页的对应的块的擦除次数; (50)释放所述缓存页; (51)如果所述写缓存或所述读写缓存的空闲页多于第二警戒值,停止清理所述写缓存或所述读写缓存;否则执行步骤(41)。5.如权利要求4所述的数据存储装置的使用不可用页表的写方法,其特征在于,步骤(43)获取替换页的物理地址之后还包括以下步骤: (431)根据所述物理地址,从擦除次数表中获取所述NAND页对应的块的擦除次数;如果所述NAND页对应的块的擦除次数加I等于或大于擦除警戒值,所述NAND页对应的块中的页成为危险页,执行步骤(48);否则执行步骤(42)。6.如权利要求3所述数据存储装置的使用不可用页表的写方法,其特征在于,所述不可用页表在开机时上传到主机中的文件系统,并且在运行过程中所述不可用页表的更新信息上传所述文件系统,以避免所述文件系统把不可用页分配给文件。7.一种数据存储装置,包括主控芯片、用于存储数据的一组NAND芯片以及MRAM,所述NAND芯片、所述MRAM分别与所述主控芯片连接,所述MRAM包括写缓存或读写缓存,其特征在于,所述MRAM还包括擦除次数表与不可用块表,擦除次数表用于存储所述NAND芯片中每个块的擦除次数,所述不可用块表包括所述NAND芯片中出厂时的坏块、后续读写使用过程中出现的坏块以及它们的替换块。8.如权利要求7所述的数据存储装置,其特征在于,所述不可用块表还包括擦除次数大于擦除警戒值的危险块以及它们的替换块。9.一种如权利要求7或8所述的数据存储装置的使用不可用块表的写方法,包括以下步骤: (1)收到写NAND页指令; (2)所述NAND页是否在写缓存或读写缓存中,如果在所述写缓存或所述读写缓存中,执行步骤(5);如果不在所述写缓存或所述读写缓存中,执行步骤(3); (3)从缓存中选择一个空闲页,写入所述NAND页的内容; (4)如果所述写缓存或所述读写缓存的空闲页少于第一警戒值,清理所述写缓存或所述读写缓存; (5)将写NAND页指令中的数据写入在写缓存或读写缓存的相应页中。10.如权利要求9所述的数据存储装置的使用不可用块表的写方法,其特征在于,步骤(4)中清理所述写缓存或所述读写缓存的方法包括以下步骤: (41)选择需要清理的缓存页; (42)如果所述缓存页对应的NAND页对应的块在不可用块表中且有替换块,执行步骤(43);否则执行步骤(44); (43)获取替换块的地址,将所述NAND页的地址直接对应到所述替换块中相应NAND页的物理地址; (44)根据所述NAND页的物理地址,找到所述写缓存或所述读写缓存中所有属于同一个块且更新的缓存页; (45)读取所述NAND页对应的块的数据,用找到的所有属于同一个块且更新的缓存页的数据更新所述NAND页对应的块的数据; (46)将所述NAND页对应的块的数据写回NAND芯片; (47)如果写回NAND芯片成功,执行步骤(49);如果写回NAND芯片失败,所述NAND页对应的块成为坏块,执行步骤(48); (48)根据擦除次数表,按照写均衡原则分配空闲的NAND块,作为所述坏块的替换块,更新所述不可用块表,执行步骤(43); (49)更新擦除次数表中所述NAND页对应的块的擦除次数; (50)释放所述缓存页; (51)如果所述写缓存或所述读写缓存的空闲页多于第二警戒值,停止清理所述写缓存或所述读写缓存;否则执行步骤(41)。11.如权利要求10所述的数据存储装置的使用不可用块表的写方法,其特征在于,步骤(43)获取替换页的物理地址之后还包括以下步骤: (431)根据所述物理地址,从擦除次数表中获取所述NAND页对应的块的擦除次数;如果所述NAND页对应的块的擦除次数加I等于或大于擦除警戒值,所述NAND页对应的块成为危险块,执行步骤(48)。12.如权利要求9所述数据存储装置的使用不可用块表的写方法,其特征在于,所述不可用块表在开机时上传到主机中的文件系统,并且在运行过程中所述不可用块表的更新信息上传所述文件系统,以避免所述文件系统把不可用块分配给文件。
【专利摘要】本发明提供一种数据存储装置,包括主机接口、主控芯片、用于存储数据的一个或多个NAND芯片以及MRAM,NAND芯片、MRAM分别与主控芯片连接,MRAM包括写缓存或读写缓存,MRAM还包括擦除次数表与不可用页表,擦除次数表用于存储NAND芯片中每个块的擦除次数,不可用页表包括NAND芯片中出厂时的坏块中的页、后续读写使用过程中出现的坏块中的页以及它们的替换页。本发明提供的数据存储装置及使用不可用页表/不可用块表的读写方法,MRAM包括写缓存或读写缓存,既保证读写性能,又减少擦除NAND的次数,延长数据存储装置的寿命;维护每个块的擦除次数表与不可用页表/不可用块表,不再采用异地写入的NAND管理技术,无需保存占用大量空间的逻辑地址与物理地址对照表,不仅节省了存储空间,而且无需复杂的处理,进一步提高了读写性能。
【IPC分类】G06F12/08
【公开号】CN105630701
【申请号】CN201510288489
【发明人】戴瑾, 郭一民
【申请人】上海磁宇信息科技有限公司
【公开日】2016年6月1日
【申请日】2015年5月29日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1