[发明专利]一种单片机片内置Flash数据快速检索方法有效
申请号: | 201210015157.2 | 申请日: | 2012-01-18 |
公开(公告)号: | CN102629234A | 公开(公告)日: | 2012-08-08 |
发明(设计)人: | 陈万;刘和兴 | 申请(专利权)人: | 物联微电子(常熟)有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215500 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 单片机 内置 flash 数据 快速 检索 方法 | ||
技术领域
本发明涉及数据检索技术领域,特别涉及一种单片机片内置Flash数据快速检索方法。
背景技术
在嵌入式产品设计中,通常需要存储一些配置参数、运行结果等数据。而且这些数据需要能长期保存,不能在掉电时丢失。检索存储数据的效率,将直接影响产品的性能,甚至决定产品设计的成败。
目前在嵌入式产品设计中主要采用以下三种方法:
方法一:嵌入式系统增加可擦写存储器,如DRAM,EEPROM等。单片机将产品的配置参数、运行数据等存储到可擦写存储器中。
这种方法可以高效读写数据,但有三方面的缺点,一是需要增加对片外存储器的驱动的支持,二是额外的片外存储器增加产品的成本,三是增加嵌入式产品单板的面积,同时也会占用单片机的有限的管脚来对片外存储器的读写。
方法二:针对方法一的缺点,例如公开号为CN101645014A的中国专利,提出一种用单片机内置FLASH程序存贮器模拟EEPROM的数据存储方法,但该方案仍然借助外部存储器来实现。同时需要增加掉电检测电路和增加电路在掉电时电力续航能力。如果电路在掉电后续航能力不足,将导致数据不能完整写入,导致数据丢失。同时上电时需从Flash中读取数据,将导致系统上电时间较长。
方法三:针对方法二的缺点,公开号为CN102156668A的中国专利,提出一种利用单片机内置FLASH程序存贮器进行实时数据记忆的方法。但在检索指定数据时需要花费大量的时间,在嵌入式系统中,不能满足实时性的要求,将严重影响产品的性能。特别在数据量较大时,该缺点将越明显。
发明内容
本发明主要解决的技术问题是提供一种单片机片内置Flash数据快速检索方法,该快速检索方法可以避免单片机增加外置存储器时增加嵌入式产品单板的面积,降低控制电路的设计难度和成本;同时也可以避免用单片机内置FLASH程序存贮器模拟EEPROM的数据存储时,检索配置参数和运行数据时间长,提高系统实时性。
为了解决上述问题,本发明提供一种单片机片内置Flash数据快速检索方法,该单片机片内置Flash数据快速检索方法包括:
建立数据信息编号对应的索引值与存储地址的映射表,将数据信息按索引值的大小依次存储;
检索存储的数据信息时,先根据该数据信息编号对应的索引值,在映射表中找到与该索引值对应的存储地址,再从该存储地址起向后查询与该编号相同的数据信息。
进一步地说,赋予每个数据信息唯一的编号,建立数据信息编号对应的索引值与存储地址的映射表,将数据信息按索引值的大小依次存储的步骤包括:
定义2字节的变量作为起始存储地址;
通过哈希算法获得每个待存储的数据信息编号的1字节的哈希值,并将该哈希值作为索引值,确定该索引值在映射表中对应的存储地址是否为0XFFFF;当存储地址为0XFFFF时,检索与该索引值对应的存储地址并赋值给起始存储地址;
从数据信息编号的索引值开始向后遍历,确定是否存在有效的存储地址,当存在有效存储地址时查找最近的具有有效存储地址的数据信息编号的索引值,并将最后存储地址后一位赋值给起始存储地址,并将最后存储地址长度增加为数据信息的长度;
计算本次请求存储的数据存储的起始存储地址所在页的序号;
从数据信息存储的起始存储地址所在页序号开始增加存储数据信息,将请求插入存储的数据信息编号的索引值对应的存储地址设置为起始存储地址,该起始存储地址之后的数据信息依次向后偏移插入存储的数据信息的长度;
更新映射表。
进一步地说,所述哈希算法包括MD2、MD4、MD5和SHA-1。
进一步地说,计算本次请求数据信息存储的起始存储地址所在页序号的步骤包括:所述页序号为起始存储地址/每页大小,其中每页大小表示单片机片内Flash每页的大小。
进一步地说,从数据信息存储的起始存储地址所在页序号开始增加存储数据信息,将请求存储的数据信息插入到起始存储地址,该起始存储地址之后的数据依次向后偏移插入存储的数据信息的长度的步骤包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于物联微电子(常熟)有限公司,未经物联微电子(常熟)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210015157.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置