固件存储方法、固件查找方法、设备及介质技术

技术编号:38322113 阅读:13 留言:0更新日期:2023-07-29 09:04
本申请实施例提供了固件存储方法、固件查找方法、设备及介质,其中固件存储方法包括:从每个闪存块的多个数据页中确定目标数据页,并使每个闪存块的目标数据页的页码均不相同;将待存储的目标固件从每个闪存块的目标数据页的初始位置开始存储,以将目标固件存储在每个闪存块中;若闪存块不稳定导致多个闪存块的相同页码的数据页所存储的数据丢失,也不会导致所有闪存块存储的固件的数据都丢失,能够保证部分闪存块的数据页依然保存有固件的数据。部分闪存块的数据页依然保存有固件的数据。部分闪存块的数据页依然保存有固件的数据。

【技术实现步骤摘要】
固件存储方法、固件查找方法、设备及介质


[0001]本申请实施例涉及但不限于存储器领域,尤其涉及固件存储方法、固件查找方法、设备及介质。

技术介绍

[0002]目前的闪存芯片设有多个闪存块,闪存块具有多个数据页。固件以二进制文件的形式存储在闪存块的连续的数据页中,并且存储在多个闪存块的相同页码的数据页中。但是限于闪存的特性,如果闪存块不稳定,那么多个闪存块的相同页码的数据页所存储的数据都会丢失,则虽然固件存储在多个闪存块中,但多个闪存块的相同页码的数据页所存储的固件也会丢失,导致该固件丢失且无法找回的情况。

技术实现思路

[0003]以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
[0004]本申请的目的在于至少一定程度上解决相关技术中存在的技术问题之一,本申请实施例提供了固件存储方法、固件查找方法、设备及介质,通过将待存储的目标固件存储在多个闪存块的不同页码的数据页中,能减少固件丢失的风险。
[0005]本申请的第一方面的实施例,一种固件存储方法,应用于闪存芯片,所述闪存芯片设有多个闪存块,每个所述闪存块具有多个数据页;所述固件存储方法,包括:
[0006]从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同;
[0007]将待存储的目标固件从每个所述闪存块的所述目标数据页的初始位置开始存储,以将所述目标固件存储在每个所述闪存块中。
[0008]本申请的第一方面的某些实施例,所述从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同,包括:
[0009]根据目标固件的标识码和预设的固件引导表获取合法的数据页的全局数据页号;
[0010]根据所述全局数据页号从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同。
[0011]本申请的第一方面的某些实施例,所述全局数据页号为范围系数与自定义常数的乘积,同一所述闪存块的每个所述数据页对应的范围系数均不相同,每个所述闪存块对应的范围系数区间均不相同,每个所述闪存块对应的自定义常数均不相同。
[0012]本申请的第一方面的某些实施例,所述自定义常数表示为:A*bk+ck;其中,A为固定常数值;bk为第k个闪存块对应的b值,bk为预设阈值内的素数;ck为第k个闪存块对应的c值,ck为预设阈值内的素数。
[0013]本申请的第一方面的某些实施例,所述将待存储的目标固件从所述闪存块的目标数据页的初始位置开始存储,以将所述目标固件存储在每个所述闪存块中,包括:
[0014]将待存储的目标固件从所述闪存块的目标数据页的初始位置开始存储,并依次存储在所述闪存块的连续页面中,以将所述目标固件存储在每个所述闪存块中。
[0015]本申请的第二方面的实施例,一种固件查找方法,应用于闪存芯片,所述闪存芯片设有多个闪存块,每个所述闪存块具有多个数据页;所述固件按照如上所述的固件存储方法存储在所述闪存芯片中;所述固件查找方法包括:
[0016]根据待查找的目标固件的标识码和预设的固件引导表得到全局数据页号;
[0017]根据所述全局数据页号从所述闪存块的多个数据页确定目标数据页;
[0018]从所述目标数据页的初始位置开始读取,以查找得到目标固件。
[0019]本申请的第二方面的某些实施例,所述全局数据页号为范围系数与自定义常数的乘积,同一所述闪存块的每个所述数据页对应的范围系数均不相同,每个所述闪存块对应的范围系数区间均不相同,每个所述闪存块对应的自定义常数均不相同。
[0020]本申请的第二方面的某些实施例,所述自定义常数表示为:A*bk+ck;其中,A为固定常数值;bk为第k个闪存块对应的b值,bk为预设阈值内的素数;ck为第k个闪存块对应的c值,ck为预设阈值内的素数。
[0021]本申请的第三方面的实施例,一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的固件存储方法或者固件查找方法。
[0022]本申请的第四方面的实施例,一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如上所述的固件存储方法或者固件查找方法。
[0023]上述方案至少具有以下的有益效果:通过将待存储的目标固件存储在多个闪存块的不同页码的数据页中,则如果闪存块不稳定导致多个闪存块的相同页码的数据页所存储的数据丢失,也不会导致所有闪存块中所存储的固件的数据都丢失,能够保证部分闪存块的数据页依然保存有固件的数据,从而解决了将同一个固件从各个闪存块的相同页码的数据页开始存储,而导致的固件丢失且无法找回的情况。
附图说明
[0024]附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
[0025]图1是利用现有的固件存储方法存储固件的示意图;
[0026]图2是本申请的实施例所提供的固件存储方法的步骤图;
[0027]图3是本申请的实施例所提供的固件查找方法的步骤图;
[0028]图4是利用本申请的实施例所提供的固件存储方法存储固件的示意图。
具体实施方式
[0029]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
[0030]需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示
出或描述的步骤。说明书、权利要求书或上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
[0031]下面结合附图,对本申请实施例作进一步阐述。
[0032]本申请的实施例,提供了一种固件存储方法,应用于闪存芯片,闪存芯片设有多个闪存块,每个闪存块具有多个数据页。闪存块为bolck,数据页为page。
[0033]闪存芯片为嵌入式多媒体存储卡(Embedded Multi Media Card,eMMC)或者通用闪存存储器(Universal Flash Storage,UFS)。
[0034]其中,嵌入式多媒体存储卡包括控制接口(Control Interface)、存储芯片(Flash Memory Chip)、Boot区(Boot Partition)及嵌入式多媒体主控制器(eMMC Controller)。嵌入式多媒体主控制器控制着整个嵌入式多媒体存储卡的读写操作,包括命令解码、数据传输和错误检测等功能。存储芯片负责实际的数据存储和读取,可以使用单层或多层闪存。控制接口连接主板和eMMC芯片,用于数据传输和本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固件存储方法,其特征在于,应用于闪存芯片,所述闪存芯片设有多个闪存块,每个所述闪存块具有多个数据页;所述固件存储方法,包括:从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同;将待存储的目标固件从每个所述闪存块的所述目标数据页的初始位置开始存储,以将所述目标固件存储在每个所述闪存块中。2.根据权利要求1所述的一种固件存储方法,其特征在于,所述从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同,包括:根据目标固件的标识码和预设的固件引导表获取合法的数据页的全局数据页号;根据所述全局数据页号从每个所述闪存块的多个数据页中确定目标数据页,并使每个所述闪存块的目标数据页的页码均不相同。3.根据权利要求2所述的一种固件存储方法,其特征在于,所述全局数据页号为范围系数与自定义常数的乘积,同一所述闪存块的每个所述数据页对应的范围系数均不相同,每个所述闪存块对应的范围系数区间均不相同,每个所述闪存块对应的自定义常数均不相同。4.根据权利要求3所述的一种固件存储方法,其特征在于,所述自定义常数表示为:A*bk+ck;其中,A为固定常数值;bk为第k个闪存块对应的b值,bk为预设阈值内的素数;ck为第k个闪存块对应的c值,ck为预设阈值内的素数。5.根据权利要求1所述的一种固件存储方法,其特征在于,所述将待存储的目标固件从所述闪存块的目标数据页的初始位置开始存储,以将所述目标固件存储在每个所述闪存块中,包括:将待存储的目标固件从所述闪存块的目标数据页的初始位置开始存...

【专利技术属性】
技术研发人员:王东颖曾裕赖鼐龚晖
申请(专利权)人:珠海妙存科技有限公司
类型:发明
国别省市:

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

1