一种flash数据的修改方法、装置以及系统制造方法及图纸

技术编号:34376419 阅读:21 留言:0更新日期:2022-07-31 13:43
本发明专利技术公开了一种flash数据的修改方法、装置、计算机可读存储介质以及系统。该修改装置包括数据获取单元、索引判断单元以及数据修改单元。通过在修改数据前索引判断待修改的地址是否存在数据以灵活选择修改数据的方式,在按位擦除的前提下避免不必要的擦除,进而提升了读写效率;进一步地,本发明专利技术提供的一种flash数据的修改方法、装置、计算机可读存储介质以及系统还通过对损坏扇区进行标记并将第二flash数据写入下一个逻辑扇区,从而后续避免将修改数据写入损坏扇区中,进而进一步提升了读写效率。读写效率。读写效率。

A method, device and system for modifying flash data

【技术实现步骤摘要】
一种flash数据的修改方法、装置以及系统


[0001]本专利技术涉及flash数据的修改
,尤其涉及一种flash数据的修改方法、装置以及系统。

技术介绍

[0002]flash是存储芯片的一种,通过特定的程序可以修改里面的数据。FLASH在电子以及半导体领域内往往表示Flash Memory的意思,即平时所说的“闪存”。U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储Bootloader以及操作系统或者程序代码,或者直接当硬盘使用(U盘)。
[0003]在现有技术中,通常使用不带文件系统的传统片上存储管理,会按照实际物理地址进行整个片区的擦除再修改,不会校验片区内具体的数据是否需要擦除修改。
[0004]但是,现有技术仍存在如下缺陷:由于不进行检验,而是整片擦除写入,从而导致擦除次数增多,系统对数据读写的执行效率不高。
[0005]因此,当前需要一种flash数据的修改方法、装置、计算机可读存储介质以及系统,从而克服现有技术中存在的上述缺陷。

技术实现思路

[0006]本专利技术实施例提供一种flash数据的修改方法、装置、计算机可读存储介质以及系统,从而提升数据读写效率。
[0007]本专利技术一实施例提供一种flash数据的修改方法,所述修改方法包括:获取所述第一flash数据的第一地址以及修改后的第二flash数据;根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据;根据判断结果,选择对应修改方式;所述修改方式包括直接写入第二flash数据,或先擦除第一flash数据再写入第二flash数据。
[0008]作为上述方案的改进,所述修改方法还包括:根据期望的单元大小,将存储空间划分为若干个存储单元;根据所述单元大小计算索引区域大小,并根据存储空间的大小以及索引区域大小划分数据逻辑扇区个数和逻辑扇区索引。
[0009]作为上述方案的改进,根据判断结果,选择对应修改方式,具体包括:若是,则将当前逻辑扇区的索引位置0,并向下一个逻辑扇区中写入所述第二flash数据;若否,则直接写入第二flash数据。
[0010]作为上述方案的改进,根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据,具体包括:在存储空间中索引所述第一地址,从而判断所述第一地址处是否已有数据;当所述第一地址处已有数据时,需要擦除数据;当所述第一地址处无数据时,无需擦除数据。
[0011]作为上述方案的改进,所述修改方法还包括:将所述第二flash数据取出进行CRC校验,当所述CRC校验连续三次失败时,标记当前逻辑扇区损坏,将所述第二flash数据写入
下一个逻辑扇区。
[0012]本专利技术另一实施例对应提供了一种flash数据的修改装置,所述修改装置包括数据获取单元、索引判断单元以及数据修改单元,其中,所述数据获取单元用于获取所述第一flash数据的第一地址以及修改后的第二flash数据;所述索引判断单元用于根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据;所述数据修改单元用于根据判断结果,选择对应修改方式;所述修改方式包括直接写入第二flash数据,或先擦除第一flash数据再写入第二flash数据。
[0013]作为上述方案的改进,所述修改装置还包括划分计算单元,所述划分计算单元用于:根据期望的单元大小,将存储空间划分为若干个存储单元;根据所述单元大小计算索引区域大小,并根据存储空间的大小以及索引区域大小划分数据逻辑扇区个数和逻辑扇区索引。
[0014]作为上述方案的改进,数据修改单元还用于:若是,则将当前逻辑扇区的索引位置0,并向下一个逻辑扇区中写入所述第二flash数据;若否,则直接写入第二flash数据。
[0015]作为上述方案的改进,所述索引判断单元还用于:在存储空间中索引所述第一地址,从而判断所述第一地址处是否已有数据;当所述第一地址处已有数据时,需要擦除数据;当所述第一地址处无数据时,无需擦除数据。
[0016]作为上述方案的改进,所述修改装置还包括损坏标记单元,所述损坏标记单元用于:将所述第二flash数据取出进行CRC校验,当所述CRC校验连续三次失败时,标记当前逻辑扇区损坏,将所述第二flash数据写入下一个逻辑扇区。
[0017]本专利技术另一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如前所述的flash数据的修改方法。
[0018]本专利技术另一实施例提供了一种flash数据的修改系统,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如前所述的flash数据的修改方法。
[0019]与现有技术相比,本技术方案存在如下有益效果:
[0020]本专利技术提供了一种flash数据的修改方法、装置、计算机可读存储介质以及系统,通过在修改数据前索引判断待修改的地址是否存在数据以灵活选择修改数据的方式,从而在按位擦除的前提下避免不必要的擦除,进而提升了读写效率。
[0021]进一步地,本专利技术提供的一种flash数据的修改方法、装置、计算机可读存储介质以及系统还通过对损坏扇区进行标记并将第二flash数据写入下一个逻辑扇区,从而后续避免将修改数据写入损坏扇区中,进而进一步提升了读写效率。
附图说明
[0022]图1是本专利技术一实施例提供的一种flash数据的修改方法的流程示意图;
[0023]图2是本专利技术一实施例提供的一种flash数据的修改装置的结构示意图。
具体实施方式
[0024]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0025]具体实施例一
[0026]本专利技术实施例首先描述了一种flash数据的修改方法。参见图1,是本专利技术一实施例提供的一种flash数据的修改方法的流程示意图。
[0027]如图1所示,所述修改方法包括:
[0028]S1:获取所述第一flash数据的第一地址以及修改后的第二flash数据。
[0029]S2:根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据。
[0030]为了后续确定数据修改方式,在一个实施例中,本步骤具体包括:在存储空间中索引所述第一地址,从而判断所述第一地址处是否已有数据;当所述第一地址处已有数据时,需要擦除数据;当所述第一地址处无数据时,无需擦除数据。
[0031本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种flash数据的修改方法,其特征在于,所述修改方法包括:获取所述第一flash数据的第一地址以及修改后的第二flash数据;根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据;根据判断结果,选择对应修改方式;所述修改方式包括直接写入第二flash数据,或先擦除第一flash数据再写入第二flash数据。2.根据权利要求1所述的flash数据的修改方法,其特征在于,所述修改方法还包括:根据期望的单元大小,将存储空间划分为若干个存储单元;根据所述单元大小计算索引区域大小,并根据存储空间的大小以及索引区域大小划分数据逻辑扇区个数和逻辑扇区索引。3.根据权利要求2所述的flash数据的修改方法,其特征在于,根据判断结果,选择对应修改方式,具体包括:若是,则将当前逻辑扇区的索引位置0,并向下一个逻辑扇区中写入所述第二flash数据;若否,则直接写入第二flash数据。4.根据权利要求3所述的flash数据的修改方法,其特征在于,根据所述第一地址对存储空间进行索引,并根据索引结果判断是否需要擦除数据,具体包括:在存储空间中索引所述第一地址,从而判断所述第一地址处是否已有数据;当所述第一地址处已有数据时,需要擦除数据;当所述第一地址处无数据时,无需擦除数据。5.根据权利要求1

4任一项所述的flash数据的修改方法,其特征在于,所述修改方法还包括:将所述第二flash数据取出进行CRC校验,当所述CRC校验连续三次失败时,标记当前逻辑扇区损坏,将所述第二flash数据写入下一个逻辑扇区。6.一种f...

【专利技术属性】
技术研发人员:张琪王金保
申请(专利权)人:巨翊科技上海有限公司
类型:发明
国别省市:

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

1