基于NANDflash的映射表数据更新方法和装置制造方法及图纸

技术编号:19098299 阅读:220 留言:0更新日期:2018-10-03 02:34
本发明专利技术实施例公开了一种基于NAND flash的映射表数据更新方法和装置,其中,基于NAND flash的映射表数据更新方法包括:建立更新起始标志和更新结束标志,并在存储设备重启后,根据更新结束标志的存在与否,完善数据更新的相关操作。本发明专利技术实施例通过在NAND flash的映射表数据更新过程中建立更新起始标志和更新结束标志,进而在更新中断后,仅需对更新起始标志和更新结束标志进行查找,即可判断更新操作是否完成,进而及时完善更新操作。解决现有技术中由于设备掉电或其他故障造成映射表数据更新不及时从而与用户数据不一致的问题,提高了更新效率,进而保证用户数据与表数据的一致性,从而避免了因数据不一致引发的其他错误。

【技术实现步骤摘要】
基于NANDflash的映射表数据更新方法和装置
本专利技术实施例涉及存储器技术,尤其涉及一种基于NANDflash的映射表数据更新方法和装置。
技术介绍
NANDflash是Flash内存的一种,属于非易失性存储设备。NANDflash存储设备中包含很多存储单元,每个存储单元包含很多数据块,用于保存用户数据,此外,存储设备中还需要保存管理这些数据块和用户数据的管理数据,如映射表、索引表、数据块状态、数据块擦除次数等数据,其中,映射表是记载用户数据的逻辑地址与物理地址映射关系的表。使用时,可以将这些管理数据称作表数据,将存储这些表数据的数据块称作表块。为了确保存储设备读取数据的正确性,存储设备中的固件程序需要保证用户数据与表数据的一致性。但是,由于用户数据和表数据的更新不能同时进行,而且表数据中的映射表通常包含好几页数据,因此,在映射表数据更新时一旦设备掉电或发生其他故障,则无法继续进行更新,从而造成映射表数据与用户数据不一致的问题。
技术实现思路
本专利技术实施例提供一种基于NANDflash的映射表数据更新方法和装置,以解决现有技术中由于设备掉电或其他故障造成映射表数据更新不及时从而与用户数据不一致的问题。第一方面,本专利技术实施例提供了一种基于NANDflash的映射表数据更新方法,应用于NANDflash存储设备,所述存储设备包括数据块和表块,所述表块中存储所述映射表数据,该包括:在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到所述映射表数据在所述表块中的更新起始位置;在所述映射表数据更新结束时,建立更新结束标志,并将更新结束标志保存到所述映射表数据在所述表块中的更新结束位置;在所述存储设备重启后,查找所述表块中最后写入的数据是否是所述更新结束标志;若不是所述更新结束标志,则重新建立所述更新起始标志,获取当前操作数据块,对所述当前操作数据块对应的映射表数据进行更新,并在更新结束时,建立所述更新结束标志。第二方面,本专利技术实施例还提供了一种基于NANDflash的映射表数据更新装置,应用于NANDflash存储设备,所述存储设备包括数据块和表块,所述表块中存储所述映射表数据,该装置包括:起始标志建立模块,用于在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到所述映射表数据在所述表块中的更新起始位置;结束标志建立模块,用于在所述映射表数据更新结束时,建立更新结束标志,并将更新结束标志保存到所述映射表数据在所述表块中的更新结束位置;结束标志查找模块,用于在所述存储设备重启后,查找所述表块中最后写入的数据是否是所述更新结束标志;所述起始标志建立模块,还用于若所述结束标志查找模块确定所述表块中最后写入的数据不是所述更新结束标志,则重新建立所述更新起始标志,获取当前操作数据块;数据更新模块,用于对所述当前操作数据块对应的映射表数据进行更新。本专利技术实施例通过在NANDflash的映射表数据更新过程中建立更新起始标志和更新结束标志,进而在更新中断后,仅需对更新起始标志和更新结束标志进行查找,即可判断更新操作是否完成,进而及时完善更新操作,解决现有技术中由于设备掉电或其他故障造成映射表数据更新不及时从而与用户数据不一致的问题,提高了更新效率,进而保证用户数据与表数据的一致性,从而避免了因数据不一致引发的其他错误。附图说明图1是本专利技术实施例一中的一种基于NANDflash的映射表数据更新方法的流程图;图2是本专利技术实施例二中的一种基于NANDflash的映射表数据更新装置的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1是本专利技术实施例一中的一种基于NANDflash的映射表数据更新方法的流程图,本实施例可适用于NANDflash的数据更新操作,应用于NANDflash存储设备,该存储设备包括数据块和表块,表块中存储映射表数据,该方法可以由基于NANDflash的映射表数据更新装置来执行,该装置可以配置于存储设备的固件中。本专利技术实施例一的基于NANDflash的映射表数据更新方法该方法具体包括:S110、在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到映射表数据在表块中的更新起始位置。表块中的表数据包括映射表数据,映射表数据是记载用户数据的逻辑地址与物理地址映射关系的表。当用户数据发生改变时,需要同时更新映射表数据,从而保证用户数据与映射表数据的一致性。具体的,当固件接收到映射表数据更新指令后,会开始更新操作。在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到映射表数据在表块中的更新起始位置。S120、在映射表数据更新结束时,建立更新结束标志,并将更新结束标志保存到映射表数据在表块中的更新结束位置。S130、在存储设备重启后,查找表块中最后写入的数据是否是所述更新结束标志。在更新过程中,设备会发生掉电或其他故障,使更新操作无法继续进行。由于方法中更新起始标志和更新结束标志在正常运行下会成对的建立,因此在设备重启后,查找表块中最后写入的数据是否是更新结束标志,即可判断故障是否影响到映射表数据更新过程。因此,需要在存储设备重启后查找最后写入的数据是否是更新结束标志。具体判断过程为:查找的数据包括表块中最新数据,由于每次更新都是一个完整的过程,那么每次正常更新之后,表块中存储的最新数据必然是更新结束标志,若不是,则表示上一次更新未完成。具体实施过程中,该步骤会发生在设备重启之后,此时,固件软件会初始化,在初始化阶段,就可以执行该步骤。S140、若不是更新结束标志,则重新建立更新起始标志,获取当前操作数据块。设备按照一定的顺序对数据块进行写入操作,因此,设备发生故障重启后,固件会利用现有算法得知更新操作中断时正在执行写入操作的数据块,进而从当前操作数据块的数据开始更新。S150、对当前操作数据块对应的映射表数据进行更新,并在更新结束时,建立更新结束标志。更新结束后,会在映射表数据对应的位置建立更新结束标志,以防止对已更新的数据再次更新。本实施例通过在NANDflash的映射表数据更新过程中建立更新起始标志和更新结束标志,进而在更新中断后,仅需对更新结束标志进行查找,即可判断更新操作是否完成,进而及时完善更新操作,解决现有技术中由于设备掉电或其他故障造成映射表数据更新不及时从而与用户数据不一致的问题,提高了更新效率,进而保证用户数据与表数据的一致性,从而避免了因数据不一致引发的其他错误。实施例二图2是本专利技术实施例二中的一种基于NANDflash的映射表数据更新装置的结构示意图,应用于NANDflash存储设备,该存储设备包括数据块和表块,该表块中存储映射表数据。如图2所示,该装置包括起始标志建立模块210、结束标志建立模块220、结束标志查找模块230和数据更新模块240,其中,起始标志建立模块210,用于在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到所述映射表数据在所述表块中的更新起始位置;结束标志建立模块220,用于在所述映射表数据更新结束时,建立更新结束标志,本文档来自技高网...

【技术保护点】
1.一种基于NAND flash的映射表数据更新方法,应用于NAND flash存储设备,所述存储设备包括数据块和表块,所述表块中存储所述映射表数据,其特征在于,所述方法包括:在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到所述映射表数据在所述表块中的更新起始位置;在所述映射表数据更新结束时,建立更新结束标志,并将更新结束标志保存到所述映射表数据在所述表块中的更新结束位置;在所述存储设备重启后,查找所述表块中最后写入的数据是否是所述更新结束标志;若不是所述更新结束标志,则重新建立所述更新起始标志,获取当前操作数据块;对所述当前操作数据块对应的映射表数据进行更新,并在更新结束时,建立所述更新结束标志。

【技术特征摘要】
1.一种基于NANDflash的映射表数据更新方法,应用于NANDflash存储设备,所述存储设备包括数据块和表块,所述表块中存储所述映射表数据,其特征在于,所述方法包括:在映射表数据更新开始时,建立更新起始标志,并将更新起始标志保存到所述映射表数据在所述表块中的更新起始位置;在所述映射表数据更新结束时,建立更新结束标志,并将更新结束标志保存到所述映射表数据在所述表块中的更新结束位置;在所述存储设备重启后,查找所述表块中最后写入的数据是否是所述更新结束标志;若不是所述更新结束标志,则重新建立所述更新起始标志,获取当前操作数据块;对所述当前操作数据块对应的映射表数据进行更新,并在更新结束时,建立所述更新结束标志。2.一种基于NANDflash的映射表数据更新装置,应用于N...

【专利技术属性】
技术研发人员:陈诚
申请(专利权)人:北京京存技术有限公司
类型:发明
国别省市:北京,11

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

1