本发明专利技术提供了一种配置数据存储的方法和装置及设备,所述方法包括:获取待存储的配置项数据,并确定其预期占用空间;在将配置存储空间划分得到的多个子空间中,若上次存储配置项数据的第一子空间的空闲空间大于预期占用空间,确定第一子空间为目标子空间;否则,确定存在下一个子空间且未被占用时,将第一子空间中的有效数据复制到下一个子空间,将下一个子空间更新为目标子空间;确定不存在下一个子空间或被占用时,擦除最先存储配置项数据的子空间,将第一子空间中有效数据复制到擦除后的子空间,将该子空间更新为目标子空间;将配置项数据顺序存储到目标子空间。利用本发明专利技术的方法,可以减少NOR Flash存储数据时的擦除次数,提高性能。提高性能。提高性能。
【技术实现步骤摘要】
一种配置数据存储的方法和装置及设备
[0001]本专利技术涉及数据存储
,尤其涉及一种配置数据存储的方法和装置及设备。
技术介绍
[0002]NOR和NAND是现在市场上两种主要的非易失闪存技术。NOR的特点是应用程序可以直接在NOR Flash芯片内运行,不必再把代码读到系统RAM(Random Access Memory,随机存取存储器)中;而且NOR FLASH的传输效率很高,在1~4MB的小容量传输时,具有很高的成本效益。此外,NOR FLASH芯片还具有可靠性高、体积小、密度大、可擦除、可重写等优点,因此在嵌入式系统得到广泛的应用。
[0003]NOR Flash芯片中包括配置存储空间,嵌入式系统对配置存储空间的操作主要有读取配置数据、存储配置数据、擦除配置数据等。而在目前存储配置数据的方案中,NOR Flash通常以字节为单位写入,以块为单位擦除,且在进行写入操作前,必须先进行擦除操作。而且在NOR Flash进行擦除时,嵌入式系统无法读取、执行NOR Flash上的数据,而且NOR Flash的擦除时间一般要几十毫秒,严重影响嵌入式系统的性能,尤其是嵌入式系统的实时性。
技术实现思路
[0004]本专利技术提供一种配置数据存储的方法和装置及设备,解决NOR Flash存储配置数据时,频繁擦除数据,影响嵌入式系统的性能的问题。
[0005]第一方面,本专利技术提供一种配置数据存储的方法,该方法包括:
[0006]获取待存储的配置项数据,并确定所述配置项数据的预期占用空间;
[0007]在将配置存储空间划分得到的多个子空间中,若上次存储配置项数据的第一子空间的空闲空间大于所述预期占用空间,确定所述第一子空间为目标子空间;
[0008]否则,确定存在下一个子空间且未被占用时,将所述第一子空间中的有效数据复制到所述下一个子空间,将所述下一个子空间更新为目标子空间;
[0009]确定不存在下一个子空间或所述下一个子空间被占用时,擦除最先存储配置项数据的子空间,将所述第一子空间中有效数据复制到擦除后的子空间,将该子空间更新为目标子空间;
[0010]将所述配置项数据顺序存储到所述目标子空间。
[0011]可选地,将配置存储空间划分为两个子空间。
[0012]可选地,所述多个子空间中的任一子空间,包括多个大小为预设粒度的空间块。
[0013]可选地,将所述配置项数据顺序存储到所述目标子空间,包括:
[0014]根据所述配置项数据占用的空间块的数量,在所述目标子空间中,顺序查找空闲空间块;
[0015]将查找到的空闲空间块作为存储所述配置项数据的起始位置,顺序存储所述配置
项数据。
[0016]可选地,将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间,包括:
[0017]在所述第一子空间存储的配置项数据中,确定属于同一配置项的配置项数据中,最新存储的配置项数据为有效数据;
[0018]将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间。
[0019]可选地,将所述配置项数据顺序存储到所述目标子空间,包括:
[0020]将所述配置项数据顺序存储到所述目标子空间,并设置所述配置项数据的状态位的取值为第一状态位取值;
[0021]在所述目标子空间存储的配置项数据中,将与所述最新存储的配置项数据属于同一配置项的配置项数据的状态位的取值,更新为第二状态位取值。
[0022]可选地,所述方法还包括:
[0023]确定目标子空间存在配置项数据变化时,更新随机存取存储器RAM的搜索位图;
[0024]所述搜索位图包括与所述目标子空间中的空间块一一对应的比特位,每个比特位用于标识对应的空间块的数据存储状态。
[0025]可选地,对于目标子空间中的多个空间块,将同一配置项的最新配置项数据占用的起始空间块,采用第一比特值标识,其他空间块采用第二比特值标识。
[0026]可选地,所述配置项数据包括头数据和配置参数,所述配置参数包括配置项标识和配置数据,还包括:
[0027]接收配置参数读取指令,确定与所述配置参数相关的第一哈希值、第一配置项标识;
[0028]根据所述搜索位图,确定第一比特值标识的起始空间块;
[0029]获取所述起始空间块中的配置项数据中的头数据,将所述第一哈希值、第一配置项标识,分别对应与所述头数据中的第二哈希值、第二配置项标识进行匹配;
[0030]根据匹配结果,确定待读取的配置参数所在的起始空间块,并从所述起始空间块开始读取所述配置参数。
[0031]可选地,读取所述配置参数后,还包括:
[0032]计算读取的配置参数的第二循环冗余校验位CRC,并与所述头数据中的第一循环冗余校验位CRC进行对比;
[0033]若所述第二循环冗余校验位CRC与所述第一循环冗余校验位CRC不一致,返回错误信息。
[0034]第二方面,本专利技术提供一种配置数据存储的设备,包括存储器和处理器,其中:
[0035]所述存储器用于存储计算机程序;
[0036]所述处理器用于读取所述存储器中的程序并执行如下步骤:
[0037]获取待存储的配置项数据,并确定所述配置项数据的预期占用空间;
[0038]在将配置存储空间划分得到的多个子空间中,若上次存储配置项数据的第一子空间的空闲空间大于所述预期占用空间,确定所述第一子空间为目标子空间;
[0039]否则,确定存在下一个子空间且未被占用时,将所述第一子空间中的有效数据复制到所述下一个子空间,将所述下一个子空间更新为目标子空间;
[0040]确定不存在下一个子空间或所述下一个子空间被占用时,擦除最先存储配置项数据的子空间,将所述第一子空间中有效数据复制到擦除后的子空间,将该子空间更新为目标子空间;
[0041]将所述配置项数据顺序存储到所述目标子空间。
[0042]可选地,将配置存储空间划分为两个子空间。
[0043]可选地,所述多个子空间中的任一子空间,包括多个大小为预设粒度的空间块。
[0044]可选地,所述处理器将所述配置项数据顺序存储到所述目标子空间,包括:
[0045]根据所述配置项数据占用的空间块的数量,在所述目标子空间中,顺序查找空闲空间块;
[0046]将查找到的空闲空间块作为存储所述配置项数据的起始位置,顺序存储所述配置项数据。
[0047]可选地,所述处理器将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间,包括:
[0048]在所述第一子空间存储的配置项数据中,确定属于同一配置项的配置项数据中,最新存储的配置项数据为有效数据;
[0049]将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间。
[0050]可选地,所述处理器将所述配置项数据顺序存储到所述目标子空间,包本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种配置数据存储的方法,其特征在于,包括:获取待存储的配置项数据,并确定所述配置项数据的预期占用空间;在将配置存储空间划分得到的多个子空间中,若上次存储配置项数据的第一子空间的空闲空间大于所述预期占用空间,确定所述第一子空间为目标子空间;否则,确定存在下一个子空间且未被占用时,将所述第一子空间中的有效数据复制到所述下一个子空间,将所述下一个子空间更新为目标子空间;确定不存在下一个子空间或所述下一个子空间被占用时,擦除最先存储配置项数据的子空间,将所述第一子空间中有效数据复制到擦除后的子空间,将该子空间更新为目标子空间;将所述配置项数据顺序存储到所述目标子空间。2.根据权利要求1所述的方法,其特征在于,将配置存储空间划分为两个子空间。3.根据权利要求1所述的方法,其特征在于,所述多个子空间中的任一子空间,包括多个大小为预设粒度的空间块。4.根据权利要求3所述的方法,其特征在于,将所述配置项数据顺序存储到所述目标子空间,包括:根据所述配置项数据占用的空间块的数量,在所述目标子空间中,顺序查找空闲空间块;将查找到的空闲空间块作为存储所述配置项数据的起始位置,顺序存储所述配置项数据。5.根据权利要求1所述的方法,其特征在于,将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间,包括:在所述第一子空间存储的配置项数据中,确定属于同一配置项的配置项数据中,最新存储的配置项数据为有效数据;将所述第一子空间中的有效数据复制到所述下一个子空间/擦除后的子空间。6.根据权利要求1所述的方法,其特征在于,将所述配置项数据顺序存储到所述目标子空间,包括:将所述配置项数据顺序存储到所述目标子空间,并设置所述配置项数据的状态位的取值为第一状态位取值;在所述目标子空间存储的配置项数据中,将与所述最新存储的配置项数据属于同一配置项的配置项数据的状态位的取值,更新为第二状态位取值。7.根据权利要求3所述的方法,其特征在于,还包括:确定目标子空间存在配置项数据变化时,更新随机存取存储器RAM的搜索位图;所述搜索位图包括与所述目标子空间中的空间块一一对应的比特位,每个比特位用于标识对应的空间块的数据存储状态。8.根据权利要求7所述的方法,其特征在于,对于目...
【专利技术属性】
技术研发人员:刘炜,
申请(专利权)人:炬芯科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。