非易失性存储器的管理方法和装置制造方法及图纸

技术编号:10506829 阅读:114 留言:0更新日期:2014-10-08 11:01
本发明专利技术涉及一种非易失性存储器的管理方法和装置。该非易失性存储器包括复数个物理页,物理页划分为数据页和空闲页,每个物理页包括页头和数据区,该方法包括:通过扫描全部物理页的页头信息在内存中建立数据页查找表和空闲页查找表,设置一个指向空闲页查找表中的一个物理页号的空闲页指针;当进行目标数据页的写操作时,根据空闲页查找表,对空闲页指针指向的物理页号对应的物理页依次进行擦除操作和写操作,将数据页查找表中目标数据页的物理页号与空闲页查找表中空闲页指针指向的空闲页的物理页号互换,配置空闲页指针指向空闲页查找表的另外一个物理页号。本发明专利技术可以提高写数据的效率,提高NVM的寿命。

【技术实现步骤摘要】
非易失性存储器的管理方法和装置
本专利技术涉及存储器领域,尤其涉及一种非易失性存储器的管理方法和装置。
技术介绍
在社会高速发展的今天,非易失性存储器(Nonvolatile memory,简称:NVM) 的使用已经随处可见,并跟生活息息相关,常见的NVM有电可擦可编程只读存储器 (Electrically Erasable Programmable Read-Only Memory,简称:EEPR0M)和闪存(Flash Memory,简称:FLASH)。比如,公交、社保、银行、电力、身份识别等各个领域都用到的智能卡 都广泛使用了 NVM。因此,保证NVM中数据高效安全存储就显得尤为重要。智能卡在工作过 程中,如果发生断电或其他不可预知的错误,导致智能卡擦除或者写入数据过程异常终止, 将会使写入数据不正确,这样就严重威胁数据完整性和安全性。因此需要有一种解决方案 来完成数据的断电保护问题。 当前,解决断电保护问题一般是采用备份区来完成,S卩,在存储区申请一块备份 区,用户更新数据的流程如下: 步骤1、擦除备份区; 步骤2、写旧数据到备份区; 步骤3、写备份区标识; 步骤4、擦除原数据区; 步骤5、写新数据到原数据区; 步骤6、写备份区清空标识。 通过上述这种方法来完成数据安全写入,这样,可以保证数据要么就全部写对,要 么就没有写数据,不会出现其他情况,从而保证了数据的完整性。但是利用这种方法,安全 更新一次数据需要写4次和擦两次,导致写数据的效率较低。而且,每写一次数据就需要写 一次备份区和擦一次备份区,擦写备份区的次数就会很多,将大大减少NVM的寿命。
技术实现思路
本专利技术提供一种非易失性存储器的管理方法和装置,用以实现提高写数据的效 率,提1? NVM的寿命。 本专利技术提供一种非易失性存储器的管理方法,所述非易失性存储器包括复数个物 理页,所述物理页划分为数据页和空闲页,每个物理页包括页头和数据区,所述方法包括: 通过扫描全部物理页的页头信息在内存中建立数据页查找表和空闲页查找表,其 中,所述数据页查找表用于建立从所述数据页的逻辑页号到所述数据页的物理页号的映 射,所述空闲页查找表用于存储所述空闲页的物理页号,设置一个指向所述空闲页查找表 中的一个物理页号的空闲页指针; 当进行目标数据页的写操作时,根据所述空闲页查找表,对所述空闲页指针指向 的物理页号对应的物理页依次进行擦除操作和写操作,将所述数据页查找表中所述目标数 据页的物理页号与所述空闲页查找表中所述空闲页指针指向的空闲页的物理页号互换,配 置所述空闲页指针指向所述空闲页查找表的另外一个物理页号。 本专利技术还提供一种非易失性存储器的管理装置,所述非易失性存储器包括复数个 物理页,所述物理页划分为数据页和空闲页,每个物理页包括页头和数据区,所述装置包 括: 查找表建立模块,用于通过扫描全部物理页的页头信息,在内存中建立数据页查 找表和空闲页查找表,其中,所述数据页查找表用于建立从所述数据页的逻辑页号到所述 数据页的物理页号的映射,所述空闲页查找表用于存储所述空闲页的物理页号; 指针设置模块,用于设置一个指向所述空闲页查找表中的一个物理页号的空闲页 指针; 第一数据写模块,用于当进行目标数据页的写操作时,根据所述空闲页查找表,对 所述空闲页指针指向的物理页号对应的物理页依次进行擦除操作和写操作,将所述数据页 查找表中所述目标数据页的物理页号与所述空闲页查找表中所述空闲页指针指向的空闲 页的物理页号互换,配置所述空闲页指针指向所述空闲页查找表的另外一个物理页号。 在本专利技术中,执行一次写操作只需要对NVM先后进行一次页擦除操作和一次页写 操作,相对于现有技术中执行一次写操作需要对NVM写4次和擦两次,极大地节省了操作时 间,提高了写数据的效率。由于对NVM的操作次数减少了,提高了 NVM的寿命。 【附图说明】 图1为本专利技术NVM的管理方法实施例的流程示意图; 图2为本专利技术NVM的管理方法实施例中一个写数据实例的原理示意图; 图3为本专利技术非易失性存储器的管理装置实施例的结构示意图。 【具体实施方式】 下面结合说明书附图和【具体实施方式】对本专利技术作进一步的描述。 NVM的管理方法第一实施例 在本实施例中,该NVM包括复数个物理页,复数个物理页划分为数据页和空闲页, 每个物理页包括页头和数据区。 如图1所示,为本专利技术NVM的管理方法实施例的流程示意图,该方法可以包括如下 步骤: 步骤11、通过扫描全部物理页的页头信息在内存中建立数据页查找表和空闲页查 找表; 其中,数据页查找表用于建立从数据页的逻辑页号到数据页的物理页号的映射, 空闲页查找表用于存储空闲页的物理页号;可选地,该步骤可以在系统上电时执行;内存 为易失性存储器;需要说明的是,该空闲页可以为写有旧数据的物理页,也可以为空白的物 理页。 步骤12、设置一个指向空闲页查找表中的一个物理页号的空闲页指针; 步骤13、当进行目标数据页的写操作时,根据空闲页查找表,对空闲页指针指向的 物理页号对应的物理页依次进行擦除操作和写操作,将数据页查找表中目标数据页的物理 页号与空闲页查找表中空闲页指针指向的空闲页的物理页号互换,配置空闲页指针指向空 闲页查找表的另外一个物理页号。 在步骤13中,写操作的输入为目标数据页的逻辑页号。写数据时,根据空闲页指 针查找空闲页查找表得到空闲页的物理页号,计算页头,然后根据空闲页的物理页号在NVM 中找到空闲页,先将空闲页中的数据擦除,再将数据和页头写入空闲页中。 在步骤13中,在内存中查找空闲页查找表和数据页查找表所花费的时间相对于 在NVM中写数据和擦数据所花费的时间可以忽略不计。 在本实施例中,执行一次写操作只需要对NVM先后进行一次页擦除操作和一次页 写操作,相对于现有技术中执行一次写操作需要对NVM写4次和擦两次,极大地节省了操作 时间,提高了写数据的效率。由于对NVM的操作次数减少了,提高了 NVM的寿命。 可选地,在步骤11中,数据页查找表的索引是数据页的逻辑页号,在数据页查找 表中存放了与该逻辑页号对应的数据页的物理页号。 进一步地,在步骤11中,当执行建立数据页查找表和空闲页查找表时,根据页头 信息判定上次写操作非正常结束时,执行异常处理程序。进一步地,异常处理程序可以包括 如下两种情况:情况1、根据页头信息判定在擦除操作的过程中或者在写操作的过程中掉 电,则将擦除了部分数据的物理页或写入了部分数据的物理页作为空闲页,然后将该空闲 页的物理页号存储到空闲页查找表中,从而保证数据的完整性。 情况2、根据页头信息判定在写操作之后掉电,则将保存有新数据的物理页作为数 据页,在数据页查找表中建立该数据页的逻辑页号到该数据页的物理页号的映射,将保存 有旧数据的物理页作为空闲页,将该空闲页的物理页号存储到空闲页查找表中。 可选地,在步骤11中,扫描NVM的全部物理页的页头信息时,可以采用顺序扫描的 方式读取全部物理页的页头信息或者采用随机无序扫描的方式读取全部物理页的页头信 息。当采用本文档来自技高网
...

【技术保护点】
一种非易失性存储器的管理方法,其特征在于,所述非易失性存储器包括复数个物理页,所述物理页划分为数据页和空闲页,每个物理页包括页头和数据区,所述方法包括:通过扫描全部物理页的页头信息在内存中建立数据页查找表和空闲页查找表,其中,所述数据页查找表用于建立从所述数据页的逻辑页号到所述数据页的物理页号的映射,所述空闲页查找表用于存储所述空闲页的物理页号,设置一个指向所述空闲页查找表中的一个物理页号的空闲页指针;当进行目标数据页的写操作时,根据所述空闲页查找表,对所述空闲页指针指向的物理页号对应的物理页依次进行擦除操作和写操作,将所述数据页查找表中所述目标数据页的物理页号与所述空闲页查找表中所述空闲页指针指向的空闲页的物理页号互换,配置所述空闲页指针指向所述空闲页查找表的另外一个物理页号。

【技术特征摘要】
1. 一种非易失性存储器的管理方法,其特征在于,所述非易失性存储器包括复数个物 理页,所述物理页划分为数据页和空闲页,每个物理页包括页头和数据区,所述方法包括: 通过扫描全部物理页的页头信息在内存中建立数据页查找表和空闲页查找表,其中, 所述数据页查找表用于建立从所述数据页的逻辑页号到所述数据页的物理页号的映射,所 述空闲页查找表用于存储所述空闲页的物理页号,设置一个指向所述空闲页查找表中的一 个物理页号的空闲页指针; 当进行目标数据页的写操作时,根据所述空闲页查找表,对所述空闲页指针指向的物 理页号对应的物理页依次进行擦除操作和写操作,将所述数据页查找表中所述目标数据页 的物理页号与所述空闲页查找表中所述空闲页指针指向的空闲页的物理页号互换,配置所 述空闲页指针指向所述空闲页查找表的另外一个物理页号。2. 根据权利要求1所述的方法,其特征在于,还包括: 执行所述建立数据页查找表和空闲页查找表时,根据所述页头信息判定上次写操作非 正常结束时,执行异常处理程序。3. 根据权利要求2所述的方法,其特征在于,所述异常处理程序包括: 根据页头信息判定在擦除操作的过程中或者在写操作的过程中掉电,则将擦除了部分 数据的物理页或写入了部分数据的物理页作为空闲页; 根据页头信息判定在写操作之后掉电,则将保存有新数据的物理页作为数据页,将保 存有旧数据的物理页作为空闲页。4. 根据权利要求1所述的方法,其特征在于,所述空闲页查找表中包括与所述逻辑页 号 对应的单向链表,所述单向链表的每一表项保存逻辑页号和与所述逻辑页号对应的 物理页号,所述单向链表中保存的物理页号对应的物理页中的数据的历史从表头到表尾依 次递减。5. 根据权利要求4所述的方法,其特征在于,所述配置所述空闲页指针指向所述空闲 页查找表的另外一个物理页号具体为: 在所述空闲页查找表中寻找与所述目标数据页的逻辑页号对应的单向链表,如果与所 述目标数据页的逻辑页号对应的单向链表存在,则将所述空闲页指针指向所述目标数据页 的逻辑页号对应的单向链表的表头;如果与所述目标数据页的逻辑页号对应的单向链表不 存在,则将所述空闲页指针指向任意单向链表的表头。6. 根据权利要求1所述的方法,其特征在于,所述页头信息包括逻辑页号、空闲标志、 计数位、第一检错码和第二检错码,其中,所述第一检错码用于对所述页头除所述第二检错 码外的数据进行检错,第二检错码用于对所述数据区的数据进行检错。7. -种非易失性存储器的管理装置,其特征在于,所述非易失...

【专利技术属性】
技术研发人员:刘忠志
申请(专利权)人:昆腾微电子股份有限公司
类型:发明
国别省市:北京;11

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

1