【技术实现步骤摘要】
数据存储方法及装置
本申请涉及计算机
,具体而言,涉及一种数据存储方法及装置。
技术介绍
在物联网智能水表、智能燃气表、智能热力表、智能电表等设备中,一般都会使用小容量的存储器对使用量、配置参数等信息进行掉电存储。在上述设备中使用的存储器需要具有以下特点:容量不大,一般为几十字节(Byte)的存储空间;擦写次数多,由于需要对累计使用量进行存储,通常一个计量单位需要存储一次(比如,累计使用量每变化0.1个单位(比如,L)就要存储一次),累计存储次数需要几十万甚至上百万。目前上述设备中使用的存储器一般为Flash,Flash通常不具有独立的、可以可靠擦写百万次以上的存储区域,并且仅支持页写。在仅支持页写的情况下,若向Flash的一个存储扇区写入一次数据后,再向该存储扇区写入数据则需要先执行擦除操作。
技术实现思路
本申请实施例的目的在于提供一种数据存储方法及装置,其能够通过设计特定的规则,实现数据的字节写入,从而能够在不执行擦除操作的情况下,向一个存储扇区多次写入目标数据,充分利用存储器的存储空间,避免每写入一次数据就需要对已写入过一次数据的存储扇区进行一次擦除操作,进而延长存储器的使用寿命,并大大提高存储器的可靠读写次数。第一方面,本申请实施例提供一种数据存储方法,应用于存储器,所述存储器包括多个存储扇区,每个存储扇区包括数据保存区域及用于保存该存储扇区的存储状态的状态保存区域,所述数据保存区域包括多个容量相同的子区域,所述子区域的数量与目标数据的字节数量相同,所述子区域包括多个用于存储一个单位字节数据的单位存储空间,所述方法包括:在接收到写入目标数据的指 ...
【技术保护点】
1.一种数据存储方法,其特征在于,应用于存储器,所述存储器包括多个存储扇区,每个存储扇区包括数据保存区域及用于保存该存储扇区的存储状态的状态保存区域,所述数据保存区域包括多个容量相同的子区域,所述子区域的数量与目标数据的字节数量相同,所述子区域包括多个用于存储一个单位字节数据的单位存储空间,所述方法包括:在接收到写入目标数据的指令时,根据各个存储扇区的状态保存区域中保存的存储状态选择一个未写满状态的存储扇区作为第一目标扇区;在所述第一目标扇区的各个子区域内确定一个单位存储空间作为第一目标单位存储空间;将所述目标数据的各个字节数据依次写入所述第一目标单位存储空间。
【技术特征摘要】
1.一种数据存储方法,其特征在于,应用于存储器,所述存储器包括多个存储扇区,每个存储扇区包括数据保存区域及用于保存该存储扇区的存储状态的状态保存区域,所述数据保存区域包括多个容量相同的子区域,所述子区域的数量与目标数据的字节数量相同,所述子区域包括多个用于存储一个单位字节数据的单位存储空间,所述方法包括:在接收到写入目标数据的指令时,根据各个存储扇区的状态保存区域中保存的存储状态选择一个未写满状态的存储扇区作为第一目标扇区;在所述第一目标扇区的各个子区域内确定一个单位存储空间作为第一目标单位存储空间;将所述目标数据的各个字节数据依次写入所述第一目标单位存储空间。2.根据权利要求1所述的方法,其特征在于,所述在所述第一目标扇区的各个子区域内确定一个单位存储空间作为第一目标单位存储空间,包括:在所述第一目标扇区的首个子区域内按照单位存储空间的位置顺序依次获取各个单位存储空间的数据写入状态;在查找到单位存储空间的数据写入状态为可写入状态时,将查找到的可写入状态的单位存储空间作为首个第一目标单位存储空间,并将其他各个子区域中与首个第一目标单位存储空间在首个子区域的位置相同的单位存储空间作为其他的第一目标单位存储空间。3.根据权利要求2所述的方法,其特征在于,所述将所述目标数据的各个字节数据依次写入所述第一目标单位存储空间,包括:根据所述第一目标扇区的起始物理地址、状态保存区域的容量计算得到首个第一目标单位存储空间的物理地址;根据首个第一目标单位存储空间的物理地址、目标数据的字节数量及每个子区域的容量计算得到其他的第一目标单位存储空间的物理地址;根据各个第一目标单位存储空间的物理地址,将所述目标数据的各个字节数据按照字节顺序依次写入所述第一目标单位存储空间。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:若所述第一目标扇区的首个子区域内各个单位存储空间均为不可写入状态,则将所述第一目标扇区的状态保存区域中的存储状态修改为已写满状态,并根据每个存储扇区的状态保存区域中保存的存储状态重新选择一个未写满状态的存储扇区作为第一目标扇区。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:若所有存储扇区均为已写满状态,则对其中一个存储扇区进行擦除操作,并将数据被擦除的存储扇区的存储状态修改为未写满状态,及将数据被擦除的存储扇区确定为所述第一目标扇区。6.根据权利要求5所述的方法,其特征在于,所述根据各个存储扇区的状态保存区域中保存的存储状态选择一个未写满状态的存储扇区作为第一目标扇区,包括:按照存储扇区的排列顺序依次获取各个存储扇区的状态保存区域中保存的存储状态;在查找到存储扇区的存储状态为未写满状态时,将查找到的未写满状态的存储扇区...
【专利技术属性】
技术研发人员:申永鹏,谢小品,李信波,王建,闫增伟,孔会举,王继光,温胜涛,
申请(专利权)人:河南卓正电子科技有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。