一种EEPROM的存储方法技术

技术编号:8323357 阅读:403 留言:0更新日期:2013-02-14 00:35
本发明专利技术涉及一种EEPROM的存储方法,所述EEPROM划分成有效数据存储区和坏块数据存储区;所述坏块数据存储区用于存储坏块数据,所述坏块数据用于存储EEPROM中的坏块信息;所述有效数据包括工厂调试数据、人工操作数据以及无线接收数据;以数据块为单位将有效区划分成极少更新区、慢速更新区以及快速更新区;截取有效数据,并按照有效数据的类型组成数据包;将有更新的数据包作为待更新数据包写入至EEPROM中相应的数据存储区中,其中工厂调试数据的数据包采用静态存储方式写入,人工操作数据和无线接收数据的数据包采用动态存储方式写入。本发明专利技术增加了EEPROM的利用率、延长EEPROM的使用寿命缩短访问EEPROM的寻址时间以及提高写入的正确率。

【技术实现步骤摘要】

本专利技术涉及数据存储的
,具体涉及一种EEPROM的存储方法
技术介绍
目前EEPROM普遍使用静态存储方式存储数据,静态存储方式是将接收到的数据根据关联性分成若干个大小不大于EEPROM中数据块容量的数据包,将数据包分别写入 EEPROM的数据块中。在接收到新的数据包时,将新数据包写入到对应旧数据包所存储的数据块中,即新数据包覆盖其对应的旧数据包。这样每次更新数据包都擦写其对应的同一地址,更新频率快的数据包对应的数据块擦写频率也快,而数据块的擦写次数是有限的,目前数据块的擦写次数极限值为100万次,在擦写次数达到极限值后,该数据块作废,从而对应 EEPROM也因此作废。由此可见,EEPROM的静态存储方式使数据块的利用率低,而且使用寿命短。另外,在同一时间内,EEPROM中的数据包只存储一份,不利于数据保存,安全性低。例如,EEPROM中某些块的损坏,将 导致相对应的数据永远丢失。
技术实现思路
本专利技术的目的是克服现有技术静态存储方式数据块的利用率低以及使用寿命短的不足和缺陷,提供一种EEPROM的存储方法,提高EEPROM中数据块的利用率、延长EEPROM 的使用寿命。本专利技术的目的是通过以下技术方案来实现的一种EEPROM的存储方法,所述 EEPROM划分为有效数据存储区和坏块数据存储区,所述有效数据存储区用于存储有效数据,所述坏块数据存储区用于存储坏块数据,所述坏块数据用于存储EEPROM中的坏块信息;所述有效数据包括工厂调试数据、人工操作数据以及无线接收数据,对应地,有效数据存储区以数据块为单位划分成用于存放工厂调试数据的极少更新区,用于存放人工操作数据的慢速更新区以及用于存放无线接收数据的快速更新区;所述EEPROM上电运行时包括以下步骤步骤A、在预先设定的时间段内截取有效数据,每一类有效数据分别组成相应的一个或一个以上大小不大于数据块容量的数据包;步骤B、将有更新的数据包作为待更新数据包写入至EEPROM中相应的数据存储区中,若待更新数据包为工厂调试数据的数据包则以静态存储方式写入极少更新区,若待更新数据包为人工操作数据的数据包则以动态存储方式写入慢速更新区,若待更新数据包为无线接收数据的数据包则以动态存储方式写入快速更新区。优选地,根据数据包的多少、数据包中数据的重要性以及数据包更新频率的快慢划分对应数据存储区内数据块的多少。所述数据包包数越多、对应数据越重要、更新频率越快对应的数据存储区分配的数据块越多,反之数据包包数越少、对应数据越不重要、更新频率越慢对应的数据存储区分配的数据块越少。优选地,所述EEPROM的存储方法,还包括在截取有效数据前通过读取EEPROM的信息,在RAM中建立索引表的步骤。优选地,所述索引表包括EEPROM中各个数据包的标识符组成的数组和各数据包的时间戳组成的数组。优选地,所述EEPROM的存储方法,还包括建立索引表后的坏块检测步骤。优选地,所述坏块检测的步骤具体如下aOl、获取待检测数据块的地址;a02、在获取地址对应的数据块中写入全为“I”的数据;a03、读取步骤a02写入的数据;a04、判断步骤a03读取的数据与步骤a02写入的数据是否完全一致;若两者完全一致,则执行步骤a05,否则执行a08 ;a05、在步骤aOl获取的地址对应的标记坏块中写入全为“O”的数据;a06、读取步骤a05写入的数据;a07、判断步骤a06读取的数据与步骤a05写入的数据是否完全一致;若两者不完全一致,则执行步骤a08,否则执行a09 ;a08、判定该数据块为坏块,更新坏块数据,并执行步骤alO ;a09、判定数据块为完好数据块,释放相应坏块标记,并执行步骤alO ;alO、判断是否还有待检测数据块,若有待检测数据块则执行步骤all,否则执行步骤 al2 ;all、获取下一个待检测数据块地址,并执行步骤a02 ;al2、更新索引表。优选地,所述步骤B中通过查询RAM中的索引表获取写入地址。优选地,所述步骤B中的动态存储方式具体如下b01、判断待写入数据包对应的数据存储区是否有空块,若有空块则执行步骤b02, 否则执行步骤b03;b02、获取地址最低的空块地址作为写入地址;b03、获取待写入数据包相应数据存储区内块的总量;b04、获取待写入数据包相应数据存储区内数据包类型的总量;b05、获取待写入数据包相应数据存储区内坏块的总量;b06、取平均数的整数部分作为平均备份数,所述平均数=(块的总量_坏块的总量)/数据包类型的总量;b07、获取对应数据存储区各类型数据包的备份数;b08、查询是否有数据包的备份数大于平均备份数,若相应数据存储区内数据包的备份数均不大于平均备份数,则执行步骤b09,否则执行blO ;b09、获取待写入数据包本身最早备份的地址作为写入地址;blO、获取备份数大于平均备份数且地址最低的数据包最早备份的地址作为写入地址;bll、将待写入数据包写入上述步骤获取的写入地址。优选地,还包括写入数据包后,校验数据包是否成功写入的校验步骤。优选地,所述校验步骤包括cOl、读取新写入数据包与写入前数据包比较;c02、判断新写入数据包与写入前数据包是否完全一致,若完全一致则执行步骤 c03,否则执行c04 ;c03、数据包写入成功;c04、判断不一致次数是否超过三次,若不一致次数超过三次,则执行步骤c06,否则执行步骤c05 ;c05、重新写入数据包,并执行cOl ;c06、在缓冲区中标记坏块;c07、判断数据包是否以静态存储方式写入,是则执行步骤c08,否则执行步骤 c09 ;c08、停止写入,并执行步骤ClO ;c09、重新获取写入地址写入待写入数据包,并执行步骤ClO ;c 10、执行坏块检测。本专利技术相比现有技术具有以下优点及有益效果I、本专利技术一种EEPROM的存储方法通过将EEPROM分成极少更新区、慢速更新区、 快速更新区以及坏块数据存储区,并通过动态存储方式与静态存储方式相结合,增加了 EEPROM的利用率、延长EEPROM的使用寿命以及缩短访问EEPROM的寻址时间。2、本专利技术动态存储方式使数据包多次备份,增加了数据存储的安全性。3、本专利技术通过在RAM中建立索引表,方便写入与读取时寻址,不需要访问EEPROM ; 减少访问EEPROM的次数,提高访问效率。4、本专利技术在建立索引表后检测标记坏块,释放错误标记的完好块,减少EEPROM存储空间的浪费。5、本专利技术通过坏块数据对坏块进行标示,从而在读写寻址算法中屏蔽掉坏块地址,减少寻址时间,从而缩短访问时间。6、本专利技术将数据包写入后进行校验,提高了写入的正确率,防止偶然写入失败或将数据包写入坏块而将数据丢失。附图说明图I为本专利技术EEPROM存储区域划分示意图2为本专利技术一种EEPROM的存储方法实施例流程图3为坏块检测流程图4为动态存储方式流程图5为校验数据包是否成功写入的流程图。具体实施方式下面结合实施例及附图对本专利技术作进一步详细的描述,但本专利技术的实施方式不限于此。如图I所示,一种EEPROM的存储方法,所述EEPROM划分为有效数据存储区和坏块数据存储区,所述有效数据存储区用于存储有效数据,所述坏块数据存储区用于存储坏块数据,所述坏块数据用于存储EEPROM中的坏块信息;所述有效数据包括工厂调试数据本文档来自技高网...

【技术保护点】
一种EEPROM的存储方法,其特征在于,所述EEPROM划分为有效数据存储区和坏块数据存储区,所述有效数据存储区用于存储有效数据,所述坏块数据存储区用于存储坏块数据,所述坏块数据用于存储EEPROM中的坏块信息;所述有效数据包括工厂调试数据、人工操作数据以及无线接收数据,对应地,有效数据存储区以数据块为单位划分成用于存放工厂调试数据的极少更新区,用于存放人工操作数据的慢速更新区以及用于存放无线接收数据的快速更新区;所述EEPROM上电运行时包括以下步骤:步骤A、在预先设定的时间段内截取有效数据,每一类有效数据分别组成相应的一个或一个以上大小不大于数据块容量的数据包;步骤B、将有更新的数据包作为待更新数据包写入至EEPROM中相应的数据存储区中,若待更新数据包为工厂调试数据的数据包则以静态存储方式写入极少更新区,若待更新数据包为人工操作数据的数据包则以动态存储方式写入慢速更新区,若待更新数据包为无线接收数据的数据包则以动态存储方式写入快速更新区。

【技术特征摘要】
1.一种EEPROM的存储方法,其特征在于,所述EEPROM划分为有效数据存储区和坏块数据存储区,所述有效数据存储区用于存储有效数据,所述坏块数据存储区用于存储坏块数据,所述坏块数据用于存储EEPROM中的坏块信息;所述有效数据包括工厂调试数据、人工操作数据以及无线接收数据,对应地,有效数据存储区以数据块为单位划分成用于存放工厂调试数据的极少更新区,用于存放人工操作数据的慢速更新区以及用于存放无线接收数据的快速更新区; 所述EEPROM上电运行时包括以下步骤 步骤A、在预先设定的时间段内截取有效数据,每一类有效数据分别组成相应的一个或一个以上大小不大于数据块容量的数据包; 步骤B、将有更新的数据包作为待更新数据包写入至EEPROM中相应的数据存储区中,若待更新数据包为工厂调试数据的数据包则以静态存储方式写入极少更新区,若待更新数据包为人工操作数据的数据包则以动态存储方式写入慢速更新区,若待更新数据包为无线接收数据的数据包则以动态存储方式写入快速更新区。2.根据权利要求I所述EEPROM的存储方法,其特征在于根据数据包的多少、数据包中数据的重要性以及数据包更新频率的快慢划分对应数据存储区内数据块的多少。3.根据权利要求2所述EEPROM的存储方法,其特征在于还包括在截取有效数据前通过读取EEPROM的信息,在RAM中建立索引表。4.根据权利要求3所述存储器的动态存储方法,其特征在于所述索引表包括EEPROM中各个数据包的标识符组成的数组和各数据包的时间戳组成的数组。5.根据权利要求4所述EEPROM的存储方法,其特征在于还包括建立索引表后的坏块检测步骤。6.根据权利要求5所述EEPROM的存储方法,其特征在于,所述坏块检测的步骤具体如下 aOl、获取待检测数据块的地址; a02、在获取地址对应的数据块中写入全为“I”的数据; a03、读取步骤a02写入的数据; a04、判断步骤a03读取的数据与步骤a02写入的数据是否完全一致;若两者完全一致,则执行步骤a05,否则执行a08 ; a05、在步骤aOl获取的地址对应的标记坏块中写入全为“O”的数据; a06、读取步骤a05写入的数据; a07、判断步骤a06读取的数据与步骤a05写入的数据是否完全一致;若两者不完全一致,则执行步骤a08,否则执行a09 ; a08、判定该数据块为坏块,更新...

【专利技术属性】
技术研发人员:张羽萍
申请(专利权)人:惠州市德赛西威汽车电子有限公司
类型:发明
国别省市:

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

1