发明名称 一种NAND闪存的转换层读写方法
摘要 本发明公开了一种NAND闪存的转换层读写方法,包括以下步骤:(1)系统启动还原掉电前NAND闪存的转换层的数据链;(2)检查数据链并修复;(3)检查当前可用块的数目;(4)等待系统调用;(5)根据系统调用命令进行相应的读写操作。其中,所述系统调用的读或者写操作如果符合多平面读或写操作,则使用这种方式读或写,如果系统调用的读命令为单平面读或写操作,则直接读出或写入相应页数据。本发明方法能够实现NAND闪存的均衡擦写,提高NAND闪存的寿命,使用NAND闪存的MULTIPLANE方式写,从而为整体写文件提速,从而提高读写的性能,实现NAND闪存的逆序写,提升跳写、回头写的性能。
申请公布号 CN101923448B 申请公布日期 2012.12.05
申请号 CN201010111726.4 申请日期 2010.02.08
申请人 安凯(广州)微电子技术有限公司 发明人 艾骏;易若翔;胡胜发
分类号 G06F3/06(2006.01)I;G06F12/02(2006.01)I;G06F11/00(2006.01)I 主分类号 G06F3/06(2006.01)I
代理机构 广州知友专利商标代理有限公司 44104 代理人 宣国华
主权项 一种NAND闪存的转换层读写方法,其特征在于包括以下步骤:(1)、系统启动,从NAND闪存中读出所有物理块中的数据链的信息,还原掉电前NAND闪存的转换层的数据链;(2)、检查数据链是否因坏块或者掉电而被损坏,并对所述数据链进行修复;(3)、检查当前可用块的数目,如果可用块的数目小于系统给定的一个阀值时,则进行垃圾块回收过程;(4)、等待系统调用;(5)、根据系统调用命令中所要求的NAND闪存的转换层的逻辑地址找到与所述逻辑地址对应的数据链;如果系统调用命令为读命令将转向第(6)步,如果为写命令将转向第(8)步;(6)、查找读命令所要求的当前数据链的逻辑页,如果所述逻辑页中的所有物理页都是空页,将直接返回0Xff数据;否则,读出逻辑页中的最靠近数据链表头的非空物理页中的数据,并返回;(7)、读完操作后,返回第(4)步继续等待;(8)、查找写命令所要求的当前数据链的逻辑页,如果所述逻辑页的物理页中存在可用的物理页,则对该物理页进行写操作,如果写成功,则返回到第(4)步等待系统调用;如果不存在可用的物理页,则执行第(9)步;(9)、从系统可用块中分配一组新的物理块,并将数据写入所述新的物理块中;所述一组新的物理块优先地为两个使用多平面方式的物理块,当可用块中不存在使用多平面方式的物理块时,所述一组新的物理块就为一个普通的物理块;(10)、如果写成功,则将新的物理块加入到当前数据链中,并返回到第(4)步等待系统调用,如果写失败,则将该新的物理块标记为坏块,退回到第(9)步;所述逻辑页是指某个数据链中所有物理块的同一页面号的所有物理页的组合;所述数据链是由多个物理块组成的数据链,每个数据链对应一个逻辑地址,所述数据链表示逻辑地址到物理地址的映射关系,所述映射关系为一对多的映射 关系。
地址 510663 广东省广州市高新技术开发区科学城科学大道182号C1区301-303,401-402