[发明专利]一种NOR-FLASH数据存储方法、计算机设备及存储介质有效
申请号: | 201910445526.3 | 申请日: | 2019-05-27 |
公开(公告)号: | CN110175001B | 公开(公告)日: | 2022-06-14 |
发明(设计)人: | 姜勇;汪文俊;谢受浪 | 申请(专利权)人: | 牧星机器人(江苏)有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/14 |
代理公司: | 无锡松禾知识产权代理事务所(普通合伙) 32316 | 代理人: | 蔡赵 |
地址: | 211500 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 nor flash 数据 存储 方法 计算机 设备 介质 | ||
1.一种NOR-FLASH数据存储方法,其特征在于,NOR-FLASH被划分为控制区与用户区,所述方法包括:
根据脏位图从所述用户区申请空闲的映射扇区写入扇区数据;
更新脏位图、回收位图及动态映射表;
将逻辑扇区号与映射扇区号的映射关系写入日志区;其中,若写入前日志区已满,则先将动态映射表备份至静态映射表,并擦除日志区;
所述根据脏位图从所述用户区申请空闲的映射扇区写入扇区数据包括:
判断所述脏位图是否已满;
当所述脏位图未满,根据脏位图从用户区申请一个空闲的映射扇区;
当所述脏位图已满,利用回收位图重构脏位图,再根据重构后的脏位图从用户区申请一个空闲的映射扇区;
根据被申请的映射扇区的映射扇区号计算其物理扇区号,并根据其物理扇区号向NOR-FLASH中对应的扇区写入扇区数据;
所述更新脏位图、回收位图及动态映射表包括:
将被申请的映射扇区的映射扇区号在脏位图与回收位图中对应的BIT置1;
根据逻辑扇区号查询动态映射表,判断对应映射表项的历史映射扇区号是否有效;
当逻辑扇区号对应的历史映射扇区号有效,将该历史映射扇区号在回收位图中对应的BIT清零;
当逻辑扇区号对应的历史映射扇区号无效,不对回收位图执行任何操作;
将逻辑扇区号在动态映射表中所对应的映射表项更新为被申请的映射扇区号。
2.由权利要求1所述的NOR-FLASH数据存储方法,其特征在于,所述控制区包括第一静态映射表与第二静态映射表,所述将动态映射表备份至静态映射表包括:
对动态映射表中的序号执行加1操作,重新计算动态映射表的CRC;
将动态映射表写入至第二静态映射表中;
将动态映射表写入至第一静态映射表中。
3.由权利要求1所述的NOR-FLASH数据存储方法,其特征在于,所述方法还包括:
在设备上电后执行启动流程;
其中,所述启动流程包括:
校验静态映射表数据,并根据校验后的静态映射表数据更新所述脏位图、回收位图以及动态映射表的数据;
判断日志有效性并利用有效日志记录重构动态映射表。
4.由权利要求1所述的NOR-FLASH数据存储方法,其特征在于,所述校验静态映射表数据,并根据校验后的静态映射表数据更新所述脏位图、回收位图以及动态映射表的数据包括:
加载标签,并校验标签的有效性;
根据标签所提供的参数从NOR-FLASH中读取第一静态映射表与第二静态映射表的数据;
校验两个静态映射表的数据,若有静态映射表出现过期或校验不通过等问题,则使用另一静态映射表将其覆盖;
扫描静态映射表,根据静态映射表的所有表项判断各逻辑扇区是否为空闲扇区,是则将对应的映射扇区号在脏位图与回收位图中对应的BIT置1;
使用静态映射表的数据初始化动态映射表。
5.由权利要求3所述的NOR-FLASH数据存储方法,其特征在于,所述判断日志有效性并利用有效日志记录重构动态映射表包括:
判断日志区的序号和静态映射表的序号是否一致;
若不一致则判定日志过期,清空日志区,结束启动流程;
若一致则继续执行下述步骤;
逐条读取日志区的每条日志记录对应的逻辑扇区号与映射扇区号,丢弃损坏的日志记录;
根据日志记录中的逻辑扇区号查询动态映射表,对应映射表项的历史映射扇区号是否有效,若有效则该历史映射扇区号在回收位图中对应的BIT清零,若无效则不对回收位图执行任何操作;
将逻辑扇区号在在动态映射表中所对应的映射表项更新为日志记录中对应于该逻辑扇区号的映射扇区号;
将映射扇区号在脏位图与回收位图中对应的BIT置1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于牧星机器人(江苏)有限公司,未经牧星机器人(江苏)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910445526.3/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置