一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

norflash的擦除方法、装置、设备及介质与流程

2022-11-09 22:30:13 来源:中国专利 TAG:

nor flash的擦除方法、装置、设备及介质
技术领域
1.本技术涉及存储器技术领域,具体而言,涉及一种nor flash的擦除方法、装置、设备及介质。


背景技术:

2.理想的nor flash的擦除情况为:被擦除区域的所有存储单元的擦除特性完全一致,那么在条件合适的情况下,擦除时间会非常短,但这个理想情况在当前发展中flash制造技术中是不存在的。在同一擦除区域内,一旦所擦除的存储单元的擦除特性相差非常大,执行擦除操作的过程中容易产生部分存储单元过擦除,导致擦除时间长,甚至可能由于存储区域中不同区域(块或扇区)的存储单元擦除特性相差过大,导致整个存储区域进行擦除时无法将整个擦除区域中的存储单元擦除至擦除状态,从而导致擦除失败。
3.针对上述问题,目前尚未有有效的技术解决方案。


技术实现要素:

4.本技术的目的在于提供一种nor flash的擦除方法、装置、设备及介质,确保擦除操作顺利完成。
5.第一方面,本技术提供了一种nor flash的擦除方法,用于擦除nor flash的待擦除区域,所述方法包括以下步骤:获取所述待擦除区域中的各个分区的cycle次数,并计算获取不同分区之间的cycle次数差值;在存在大于预设阈值的cycle次数差值时,根据所述cycle次数大小对所有分区进行分组获取擦除组别;对每个所述擦除组别分别进行擦除操作。
6.本技术的nor flash的擦除方法,基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
7.所述的nor flash的擦除方法,其中,所述根据所述cycle次数大小对所有分区进行分组获取擦除组别的步骤包括:基于尚未分组的任一所述分区遍历其余尚未分组的分区,获取与之cycle次数差值小于所述预设阈值的分区,以组成一个擦除组别,并重复执行上述过程直至将所有分区完成分组。
8.在示例中,采用遍历的思维以从所有分区组成的分区池中提取分区组成擦除组别,能保证每个擦除组别中的分区均具有相近的擦除性能,且能有效避免分区被漏分漏选。
9.所述的nor flash的擦除方法,其中,所述根据所述cycle次数大小对所有分区进
行分组获取擦除组别的步骤包括:根据预设划分的多个cycle次数区间及每个所述分区的cycle次数进行分组获取擦除组别。
10.在该示例中,cycle次数区间为基于cycle次数进行划分的数值区间,每个cycle次数区间上限值和下限值之差应小于或等于预设阈值,从而使得基于cycle次数区间划分的擦除组别中的各个分区的擦除特性相近。
11.所述的nor flash的擦除方法,其中,每个所述分区的所述cycle次数基于对应的非易失计数器计数存储。
12.所述的nor flash的擦除方法,其中,当所述待擦除区域为整个存储阵列时,所述分区的划分单位为块、半块或扇区。
13.所述的nor flash的擦除方法,其中,所述分区的划分单位基于分区配置信息位进行确定。
14.所述的nor flash的擦除方法,其中,所述预设阈值为20000次。
15.第二方面,本技术还提供了一种nor flash的擦除装置,用于擦除nor flash的待擦除区域,所述装置包括:获取模块,用于获取所述待擦除区域中的各个分区的cycle次数,并计算获取不同分区之间的cycle次数差值;分组模块,用于在存在大于预设阈值的cycle次数差值时,根据所述cycle次数大小对所有分区进行分组获取擦除组别;擦除模块,用于对每个所述擦除组别分别进行擦除操作。
16.本技术的nor flash的擦除装置,基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
17.第三方面,本技术还提供了一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
18.第四方面,本技术还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
19.由上可知,本技术提供了一种nor flash的擦除方法、装置、设备及介质,其中,nor flash的擦除方法,基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
附图说明
20.图1为本技术实施例提供的nor flash的擦除方法的流程图。
21.图2为本技术实施例提供的nor flash的擦除装置的结构示意图。
22.图3为本技术实施例提供的电子设备的结构示意图。
23.附图标记:201、获取模块;202、分组模块;203、擦除模块;301、处理器;302、存储器;303、通信总线。
具体实施方式
24.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
25.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
26.当一个存储区域中的不同分区(块或扇区)的存储单元擦除特性相差过大时,对该存储区域进行整体性擦除操作,会导致分区内的部分存储单元出现过擦除现象,而针对出现过擦除现象的存储单元进行修复后也会导致部分擦除成功的存储单元转变为编程状态,重复多次擦除和过擦除修复均无法将存储区域中所有存储单元改变为擦除状态,则会导致擦除失败。
27.第一方面,请参照图1,本技术一些实施例提供了一种nor flash的擦除方法,用于擦除nor flash的待擦除区域,方法包括以下步骤:s1、获取待擦除区域中的各个分区的cycle次数,并计算获取不同分区之间的cycle次数差值;s2、在存在大于预设阈值的cycle次数差值时,根据cycle次数大小对所有分区进行分组获取擦除组别;s3、对每个擦除组别分别进行擦除操作。
28.具体地,在存储器技术领域中,cycle为编程擦除操作,指的是nor flash中某存储区域(存储阵列、块、扇区或存储单元)进行了一次编程和擦除的可循环操作,cycle中的编程和擦除操作可以是连续进行,也可以分开进行;cycle次数表征了对应存储区域的使用程度,也反映了对应存储区域的当前性能,一般情况下,存储区域的cycle次数越大,性能越差,即该存储区域的存储单元越难擦除、越容易编程。
29.更具体地,nor flash进行擦除操作一般是对存储区域整体进行擦除操作,如全片擦除(chip erase)、块擦除(block erase)及扇区擦除(sector erase)等,但编程操作则可以对存储区域中部分存储单元进行编程,如存储区域编程为10交替的数据,因此,本技术实施例的nor flash的擦除方法优选为采用擦除次数来表征cycle次数;在别的实施例中,可以综合编程次数和擦除次数来获取cycle次数。
30.更具体地,在本技术实施例中,分区可以是擦除操作的最小操作单位,也可以不是,在本技术实施例中,优选为以擦除操作的最小操作单位进行分区。
31.应当理解的是,在执行完步骤s1后,若所有cycle次数差值均小于或等于预设阈值,则对待擦除区域进行常规擦除操作,如待测擦除区域为整个存储阵列,则执行全片擦除(chip erase)。
32.更具体地,步骤s1计算获取的cycle次数差值反映了不同分区之间的使用程度的差异;cycle次数差值较小表明对应的两个分区之间的擦除特性较为相近,即采用相同的擦除电压进行擦除时耗费的时间接近,且同时进行擦除时出现过擦除现象的概率也更小;cycle次数差值较大表明对应的两个分区之间的擦除特性相距甚远,即采用相同的擦除电压进行擦除时耗费的时间差距较大,且同时进行擦除时更容易出现过擦除现象。
33.更具体地,步骤s2相当于计算获取所有cycle次数差值来判断待擦除区域中是否存在擦除特性差距大于预期的分区,若对存在擦除特性差距大的区域进行整体性擦除,会造成擦除时间过长的问题,且更容易出现的过擦除现象也会导致修复过擦除存储单元的时间延长;因此,本技术实施例的nor flash的擦除方法利用步骤s2判断出存在擦除特性差距大于预期的分区,并对分区进行分组,再利用步骤s3对区分的擦除组别进行擦除操作。
34.更具体地,步骤s3为对每个擦除组别独立进行擦除操作的过程,即通过同时选定对应擦除组别中所有可擦除单位施加擦除电压来实现擦除的过程,应当理解的是,避免电流串扰或降压问题,各个擦除组别需依次执行擦除操作,各个擦除组别施加的擦除电压互不干扰,使得本技术实施例的nor flash的擦除方法能针对擦除特性相近的分区进行批量擦除,有效避免过擦除的现象出现,并能确保擦除操作顺利完成。
35.更具体地,预设阈值为根据对应nor flash的使用特性进行设定的参数值,需结合具体nor flash存储单元阈值电压关于cycle次数变化的情况进行设定;应当理解的是,在本技术实施例中,当两个分区之间的cycle次数差值小于或等于预设阈值时,可认为两个分区的擦除特性相近,两个分区能同时进行擦除操作以节省擦除时间。
36.本技术实施例的nor flash的擦除方法,基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
37.在一些优选的实施方式中,本技术实施例的nor flash的擦除方法在实际应用时,可根据使用需求选择是否启动,或者是根据使用次数自行启动;nor flash在使用初期,各个存储区域的cycle次数均为较小的值,整个存储阵列的擦除难度较为相近,故本技术实施例的nor flash的擦除方法在nor flash使用初期对擦除效率的提升不明显。
38.具体地,当本技术实施例的方法设置为根据使用次数自动启动时,该nor flash的擦除方法还包括执行于步骤s1之前的步骤:s0、在nor flash的使用次数或启动次数或总擦除次数大于预设的启动阈值后,执行步骤s1。
39.应当理解的是,若使用次数或启动次数或总擦除次数小于或等于启动阈值,则对待擦除区域进行常规擦除操作,如待测擦除区域为整个存储阵列,则执行全片擦除(chip erase)。
40.具体地,启动阈值为根据对应nor flash的使用特性进行设定的参数值,需结合具
体nor flash存储单元阈值电压关于擦除次数变化的情况进行设定。
41.更具体地,在该实施方式中,基于启动阈值能快速判断nor flash的使用程度,可避免nor flash在使用初期因执行步骤s1而降低了整体运行效率。
42.在一些优选的实施方式中,根据cycle次数大小对所有分区进行分组获取擦除组别的步骤包括:s21、基于尚未分组的任一分区遍历其余尚未分组的分区,获取与之cycle次数差值小于预设阈值的分区,以组成一个擦除组别,并重复执行上述过程直至将所有分区完成分组。
43.具体地,在明确待擦除区域存在cycle次数差值大于预设阈值的分区后,需要合理性地将分区进行分组,以使每个擦除组别中的各个分区之间的cycle次数差值均小于预设阈值,以确保每个擦除组别中的各个分区能被顺利擦除。
44.更具体地,在该实施方式中,采用遍历的思维以从所有分区组成的分区池中提取分区组成擦除组别,能保证每个擦除组别中的分区均具有相近的擦除性能,且能有效避免分区被漏分漏选。
45.在另一些实施方式中,根据cycle次数大小对所有分区进行分组获取擦除组别的步骤还可以是包括:s21’、根据预设划分的多个cycle次数区间及每个分区的cycle次数进行分组获取擦除组别。
46.具体地,在该实施例方式中,采用区间划分的思维将所有分区划分在不同区间中,可便捷地完成分区分组。
47.更具体地,cycle次数区间为基于cycle次数进行划分的数值区间,每个cycle次数区间上限值和下限值之差应小于或等于预设阈值,从而使得基于cycle次数区间划分的擦除组别中的各个分区的擦除特性相近。
48.更具体地,上述划分方式可便捷地完成分组,因此,本技术实施例的nor flash的擦除方法优选为采用步骤s21’进行分区的分组。
49.在一些优选的实施方式中,每个分区的cycle次数基于对应的非易失计数器(counter)计数存储。
50.具体地,非易失计数器为存储器技术领域中常用的电路器件,用于针对数字相关数据进行计数;在本技术实施例中,待擦除区域的每个分区均配置有对应的非易失计数器,分别用于记录对应分区的cycle次数;本技术实施例的nor flash的擦除方法通过读取每个分区的非易失计数器中的数据便能便捷准确地获取cycle次数。
51.更具体地,每个分区对应配置计数器进行计数,可确保每个分区的计数数据准确、互不干扰。
52.在一些优选的实施方式中,当待擦除区域为整个存储阵列时,分区的划分单位为块、半块或扇区。
53.具体地,nor flash的擦除操作一般分为:全片擦除(chip erase)、阵列擦除(array erase)、块擦除(block erase)、半块擦除(half_block erase)及扇区擦除(sector erase),对于nor flash而言,待擦除区域越大,越难保持其内存储单元的擦除特性的一致性,因此,本技术实施例nor flash的擦除方法将分区的划分单位设置为块、半块或扇区。
54.在一些优选的实施方式中,分区的划分单位基于分区配置信息位进行确定。
55.具体地,本技术实施例的nor flash的擦除方法旨在对大范围的擦除方式进行改进,如全片擦除(chip erase)、阵列擦除(array erase)、块擦除(block erase),当改进的擦除方式对象为全片擦除(chip erase)、阵列擦除(array erase)时,分区的划分单位可以设置为块、半块或扇区,优选为块;当改进的擦除方式对象为块擦除(block erase)时,分区的划分单位可以设置为扇区,以合理地对待擦除区域进行分区,在保证擦除效率相对较高的同时确保擦除操作顺利完成。
56.更具体地,本技术实施例的nor flash的擦除方法优选为采用一个分区配置信息位记录分区配置信息,步骤s1包括:根据擦除操作命令读取对应的分区配置信息位的分区配置信息,并根据分区配置信息对待擦除区域进行分区;获取待擦除区域中的各个分区的cycle次数,并计算获取不同分区之间的cycle次数差值。
57.其中,擦除操作命令为全片擦除(chip erase)、阵列擦除(array erase)及块擦除(block erase)中的一种。
58.具体地,本技术实施例的nor flash的擦除方法能根据擦除操作的类型基于不同划分单位进行分区,合理调用nor flash的擦除资源。
59.在一些优选的实施方式中,预设阈值为20000次。
60.具体地,由于nor flash存储芯片的生命周期(cycle次数)一般为十万次,预设阈值设置为20000次,可有效区分具有不同擦除特性的分区。
61.第二方面,请参照图2,本技术一些实施例还提供了一种nor flash的擦除装置,用于擦除nor flash的待擦除区域,装置包括:获取模块201,用于获取待擦除区域中的各个分区的cycle次数,并计算获取不同分区之间的cycle次数差值;分组模块202,用于在存在大于预设阈值的cycle次数差值时,根据cycle次数大小对所有分区进行分组获取擦除组别;擦除模块203,用于对每个擦除组别分别进行擦除操作。
62.本技术实施例的nor flash的擦除装置,基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
63.在一些优选的实施方式中,本技术实施例的nor flash的擦除装置用于执行上述第一方面提供的nor flash的擦除方法。
64.第三方面,请参照图3,本技术一些实施例还提供了一种电子设备的结构示意图,本技术提供一种电子设备,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当电子设备运行时,处理器301执行该计算机程序,以执行时执行上述实施例的任一可选的实现方式中的方法。
65.第四方面,本技术实施例提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory, 简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable red-only memory, 简称prom),只读存储器(read-only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
66.综上,本技术实施例提供了一种nor flash的擦除方法、装置、设备及介质,其中,nor flash的擦除方法基于待擦除区域中各个分区的cycle次数判断待擦除区域中存储单元的擦除特性的差异程度,在cycle次数差值大于预设阈值时,根据cycle次数将分区进行分组并分别进行擦除操作,使得每个擦除组别中的擦除特性相近的分区能顺利地被擦除,从而确保整个待擦除区域能被成功擦除,有效避免待擦除区域因不同分区的擦除特性差异过大,而导致擦除失败的问题。
67.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
68.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
69.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
70.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
71.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献