CN113253934A - Flash坏块处理方法、装置、计算机设备和可读存储介质 - Google Patents
Flash坏块处理方法、装置、计算机设备和可读存储介质 Download PDFInfo
- Publication number
- CN113253934A CN113253934A CN202110594283.7A CN202110594283A CN113253934A CN 113253934 A CN113253934 A CN 113253934A CN 202110594283 A CN202110594283 A CN 202110594283A CN 113253934 A CN113253934 A CN 113253934A
- Authority
- CN
- China
- Prior art keywords
- block address
- configuration
- bad block
- bad
- mapping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 238000013507 mapping Methods 0.000 claims abstract description 100
- 238000006243 chemical reaction Methods 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种Flash坏块处理方法、装置、计算机设备和可读存储介质,该Flash坏块处理方法应用于设置有映射配置模块的Flash存储器,包括:在检测到Flash存储器的编程区中产生坏块后,将坏块的编程数据转移至映射区的配置块;获取坏块的坏块地址以及配置块的配置块地址;根据坏块地址以及配置块地址利用预设规则更新映射配置模块中相应的映射信息。本发明的Flash坏块处理方法,通过在Flash存储器中设置有映射配置模块,在产生Flash存储器产生坏块并转移坏块上的编程数据至配置块后,可以更新映射配置模块上相应的映射关系,并且该映射配置模块可以通过用户进行灵活配置,使Flash存储器即使出现多次坏块仍能正常使用,从而提高Flash存储器的良品率以及使用寿命。
Description
技术领域
本发明涉及Flash管理领域,具体而言,涉及一种Flash坏块处理方法、装置、计算机设备和可读存储介质。
背景技术
现有的Flash存储器的坏块管理中,一般是设定编程区的块与映射区的配置块的一一对应的映射关系,在编程区的块变为坏块时,则转移坏块的数据至配置块,从而确保Flash存储器可以正常运行。可是一旦坏块相应的配置块也变为坏块时,该Flash存储器则无法继续正常使用的,从而使Flash存储器的良品率以及使用寿命较低。
发明内容
鉴于上述问题,本发明提供了一种Flash坏块处理方法、装置、计算机设备和可读存储介质,以使Flash存储器即使出现多次坏块仍能正常使用,从而提高Flash存储器的良品率以及使用寿命。
为了实现上述目的,本发明采用如下的技术方案:
一种Flash坏块处理方法,应用于设置有映射配置模块的Flash存储器,包括:
在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;
获取所述坏块的坏块地址以及所述配置块的配置块地址;
根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
优选地,所述的Flash坏块处理方法中,所述映射配置模块包括多个寄存器,以及与多个所述寄存器连接的数据选择器,所述寄存器包括标志位、坏块地址位以及配置块地址位。
优选地,所述的Flash坏块处理方法中,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息包括:
对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址;
根据所述第一坏块地址查找所述映射配置模块中相应的寄存器;
在查找到所述相应的寄存器后,利用所述数据选择器将所述第一配置块地址更新至所述相应的寄存器的配置块地址位。
优选地,所述的Flash坏块处理方法中,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息还包括:
在未查找到所述相应的寄存器时,查找标志位表征为未映射的寄存器;
将所述第一坏块地址以及所述第一配置块地址分别写入至未映射的寄存器的坏块地址位以及配置块地址位;
更新所述寄存器的标志位表征为已映射。
优选地,所述的Flash坏块处理方法中,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息包括:
对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址;
根据所述第一坏块地址查找所述映射配置模块中相应的寄存器;
在查找到所述相应的寄存器后,获取所述寄存器的配置块地址位的第二配置块地址;
查找标志位表征为未映射的寄存器;
将所述第二配置块地址以及所述第一配置块地址分别写入至所述未映射的寄存器的坏块地址位以及配置块地址位;
更新所述相应的寄存器的标志位表征为已映射。
优选地,所述的Flash坏块处理方法中,还包括:
接收到编程数据操作指令时,从所述编程数据操作指令中提取编程数据相应的块地址,并进行预设位宽转换,获得第一块地址;
利用所述第一块地址与所述映射配置模块中的所述寄存器的坏块地址位进行匹配;
匹配到相应的寄存器后,获取所述相应的寄存器中的配置块地址,并进行预设位宽逆转换,获得第二块地址;
利用所述第二块地址同步处理所述编程数据操作指令;
在未匹配到所述相应的寄存器时,利用所述第一块地址同步处理所述编程数据操作指令。
优选地,所述的Flash坏块处理方法中,所述预设位宽转换为将第一预设位宽的地址转换为第二预设位宽的地址,所述第一预设位宽大于所述第二预设位宽,所述第一预设位宽为坏块地址以及配置块地址各自的地址位宽。
本发明还提供一种Flash坏块处理装置,应用于设置有映射配置模块的Flash存储器,包括:
编程数据转移模块,用于在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;
块地址获取模块,用于获取所述坏块的坏块地址以及所述配置块的配置块地址;
配置模块更新模块,用于根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
本发明还提供一种计算机设备,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行所述的Flash坏块处理方法。
本发明还提供一种可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行所述的Flash坏块处理方法。
本发明提供一种Flash坏块处理方法,该Flash坏块处理方法应用于设置有映射配置模块的Flash存储器,包括:在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;获取所述坏块的坏块地址以及所述配置块的配置块地址;根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。本发明的Flash坏块处理方法,通过在Flash存储器中设置有映射配置模块,在产生Flash存储器产生坏块并转移坏块上的编程数据至配置块后,可以更新映射配置模块上相应的映射关系,并且该映射配置模块可以通过用户进行灵活配置,使Flash存储器即使出现多次坏块仍能正常使用,从而提高Flash存储器的良品率以及使用寿命。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1是本发明实施例1提供的一种Flash坏块处理方法的流程图;
图2是本发明实施例2提供的一种更新映射配置模块的流程图;
图3是本发明实施例2提供的另一种更新映射配置模块的流程图;
图4是本发明实施例3提供的一种更新映射配置模块的流程图;
图5是本发明实施例4提供的一种Flash坏块处理方法的流程图;
图6是本发明实施例5提供的一种Flash坏块处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
实施例1
图1是本发明实施例1提供的一种Flash坏块处理方法的流程图,该方法,应用于设置有映射配置模块的Flash存储器,包括如下步骤:
步骤S11:在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块。
本发明实施例中,Flash存储器作为非易失性存储器,一般用于存储设备的固件以及系统程序等,被广泛应用于各种芯片的设计中。当固件烧录进Flash存储器后一般是不能被改写的,这是如果Flash存储器某个位置出现坏块后,将会导致该块读写固件时出错,从而导致设备无法使用。因此在检测到Flash存储器的编程区中出现坏块后,Flash控制器可以将坏块的编程数据转移至Flash存储器的映射区的配置块。
本发明实施例中,上述将坏块的编程数据转移至映射区的配置块的过程可以由用户来进行操作,例如用户可以通过代码或指令控制Flash控制器将坏块的编程数据转移至指定的配置块,并在后续中更新映射配置模块中相应的映射关系。其中,该Flash控制器还可以对同一个坏块进行多次编程数据的转移,具体情况包括在配置块也变为坏块后,再次将变成数据转移至新的配置块,并更新映射配置模块中相应的映射关系,这里不做限定。
步骤S12:获取所述坏块的坏块地址以及所述配置块的配置块地址。
本发明实施例中,在将坏块的编程数据转移至配置块后,将获取坏块的坏块地址以及配置块的配置块地址,其中,该坏块地址以及配置块地址的位宽为32位。其中,上述获取坏块地址以及配置块地址的过程通过Flash控制器来实现,例如可以在Flash控制器中设置有地址查找应用程序,在转移编程数据后通过该查找应用程序获得相应的坏块地址以及配置块地址。
步骤S13:根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
本发明实施例中,所述映射配置模块包括多个寄存器,以及与多个所述寄存器连接的数据选择器,所述寄存器包括标志位、坏块地址位以及配置块地址位。也即,每个寄存器上可以存储有一个坏块地址与配置块地址的映射关系,通过数据选择器用户在转移坏块数据后可以自行进行更新,或者通过应用程序来进行更新,这里不做限定。在更新映射配置模块中相应的映射信息后,设备的处理器需要访问到坏块上的编程数据时,通过Flash控制器对映射配置模块进行查询后可以自动映射至相应的配置块地址。
本发明实施例中,通过在Flash存储器中设置有映射配置模块,在产生Flash存储器产生坏块并转移坏块上的编程数据至配置块后,可以更新映射配置模块上相应的映射关系,并且该映射配置模块可以通过用户进行灵活配置,使Flash存储器即使出现多次坏块仍能正常使用,从而提高Flash存储器的良品率以及使用寿命。
实施例2
图2是本发明实施例2提供的一种更新映射配置模块的流程图,包括如下步骤:
步骤S21:对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址。
本发明实施例中,上述坏块地址以及配置块地址的位宽一般为32位,而存储在映射配置模块的坏块地址以及配置块地址可以小于32位,从而节省映射配置模块的寄存器资源,以及节省逻辑资源。其中,上述预设位宽转换的过程可以利用算法或应用程序来实现,例如可以在Flash控制器中存储有用于预设位宽转换的应用程序,在获取到坏块地址以及配置块地址后,通过该应用程序进行地址转换,从而获得第一坏块地址以及第一配置块地址。
步骤S22:根据所述第一坏块地址查找所述映射配置模块中相应的寄存器。
本发明实施例中,在获得第一坏块地址后,可以通过该第一坏块地址与映射配置模块的寄存器的坏块地址位进行匹配,以确定是否为历史的坏块,从而查找到相应的寄存器。若为历史坏块,则说明该坏块的映射关系的配置块损坏为新的坏块,因此需要新的配置块来保存相应的编程数据。
本发明实施例中,上述的查找过程可以利用算法或应用程序来实现,例如可以在Flash控制器中存储有基于查找坏块相应的寄存器的应用程序,在获得第一坏块地址后可以输入至给应用程序中,从而找出相应的寄存器。
步骤S23:在查找到所述相应的寄存器后,利用所述数据选择器将所述第一配置块地址更新至所述相应的寄存器的配置块地址位。
本发明实施例中,在找出坏块相应的寄存器周,可以利用转移编程数据后的新的配置块的第一配置地址更新寄存器中相应的配置块地址位,从而更新坏块与配置块的映射关系。通过上述更新步骤,即使坏块映射的配置块多次出现坏块,但是仍可以不影响Flash存储器的正常使用,从而提高Flash存储器的使用寿命。
图3是本发明实施例2提供的另一种更新映射配置模块的流程图,还包括如下步骤:
步骤S24:在未查找到所述相应的寄存器时,查找标志位表征为未映射的寄存器。
步骤S25:将所述第一坏块地址以及所述第一配置块地址分别写入至未映射的寄存器的坏块地址位以及配置块地址位。
步骤S26:更新所述寄存器的标志位表征为已映射。
本发明实施例中,若未找到相应的寄存器,则说明该坏块为Flash存储器的编程区中新产生的坏块,因此可以查找未保存映射关系的存储器来写入相应的映射关系,也即查找标志位表征为未映射的寄存器,例如在一个17位的寄存器中,其首位可以作为标志位,在标志位为“1”时说明已经写入映射关系,否则在标志位为“0”,这里不做限定。在将第一坏块地址以及第一配置块地址写入至寄存器相应的位置并完成映射关系的建立后,可以将该寄存器的标志位更新为表征已映射。
实施例3
图4是本发明实施例3提供的一种更新映射配置模块的流程图,包括如下步骤:
步骤S41:对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址。
此步骤与上述步骤S21一致,在此不再赘述。
步骤S42:根据所述第一坏块地址查找所述映射配置模块中相应的寄存器。
此步骤与上述步骤S22一致,在此不再赘述。
步骤S43:在查找到所述相应的寄存器后,获取所述寄存器的配置块地址位的第二配置块地址。
步骤S44:查找标志位表征为未映射的寄存器。
步骤S45:将所述第二配置块地址以及所述第一配置块地址分别写入至所述未映射的寄存器的坏块地址位以及配置块地址位。
本发明实施例中,除了可以更新历史坏块的寄存器中的配置地址位,还可以直接提取出配置块地址位的第二配置块地址,作为新的坏块地址。利用第二配置块地址以及第一配置块地址建立映射关系同样可以做到将坏块映射至最终的配置块,并且通过这种方式还可以标记出映射区中为坏块的配置块。
步骤S46:更新所述相应的寄存器的标志位表征为已映射。
此步骤与上述步骤S26一致,在此不再赘述。
实施例4
图5是本发明实施例4提供的一种Flash坏块处理方法的流程图,该方法,包括如下步骤:
步骤S51:在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块。
此步骤与上述步骤S11一致,在此不再赘述。
步骤S52:获取所述坏块的坏块地址以及所述配置块的配置块地址。
此步骤与上述步骤S12一致,在此不再赘述。
步骤S53:根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
此步骤与上述步骤S13一致,在此不再赘述。
步骤S54:接收到编程数据操作指令时,从所述编程数据操作指令中提取编程数据相应的块地址,并进行预设位宽转换,获得第一块地址。
本发明实施例中,所述预设位宽转换为将第一预设位宽的地址转换为第二预设位宽的地址,所述第一预设位宽大于所述第二预设位宽,所述第一预设位宽为坏块地址以及配置块地址各自的地址位宽。
步骤S55:利用所述第一块地址与所述映射配置模块中的所述寄存器的坏块地址位进行匹配。
本发明实施例中,上述匹配过程可以利用算法或应用程序来实现,例如可以在Flash控制器中设置有匹配应用程序,在获取到第一块地址后可以输入至该匹配应用程序,以便该匹配应用程序找出相应坏块地址位的寄存器。
步骤S56:匹配到相应的寄存器后,获取所述相应的寄存器中的配置块地址,并进行预设位宽逆转换,获得第二块地址。
本发明实施例中,在找到相应的寄存器后,即可获取寄存器中的配置块地址。由于为了节省寄存器的存储,寄存器中的配置块地址位底位宽的地址,例如可以为8位宽的地址,因此可以对该配置块地址进行预设位宽逆转换,例如可以将8位宽的地址转换为32位宽的地址,以匹配总线处理。
本发明实施例中,上述进行预设位宽逆转换的过程可以利用算法或应用程序来实现,例如可以在Flash控制其中设置有逆转换应用程序,这里不做限定。
步骤S57:利用所述第二块地址同步处理所述编程数据操作指令。
步骤S58:在未匹配到所述相应的寄存器时,利用所述第一块地址同步处理所述编程数据操作指令。
本发明实施例中,若未匹配到相应的寄存器,则说明第一块地址对应的为正常块,因此可以直接操作块上的编程数据。
实施例5
图6是本发明实施例5提供的一种Flash坏块处理装置的结构示意图。
该Flash坏块处理装置600包括:
编程数据转移模块610,用于在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;
块地址获取模块620,用于获取所述坏块的坏块地址以及所述配置块的配置块地址;
配置模块更新模块630,用于根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
本发明实施例中,上述各个模块更加详细的功能描述可以参考前述实施例中相应部分的内容,在此不再赘述。
此外,本发明还提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器可用于存储计算机程序,处理器通过运行所述计算机程序,从而使计算机设备执行上述方法或者上述Flash坏块处理装置中的各个模块的功能。
存储器可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本实施例还提供了一种计算机存储介质,用于储存上述计算机设备中使用的计算机程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种Flash坏块处理方法,其特征在于,应用于设置有映射配置模块的Flash存储器,包括:
在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;
获取所述坏块的坏块地址以及所述配置块的配置块地址;
根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
2.根据权利要求1所述的Flash坏块处理方法,其特征在于,所述映射配置模块包括多个寄存器,以及与多个所述寄存器连接的数据选择器,所述寄存器包括标志位、坏块地址位以及配置块地址位。
3.根据权利要求2所述的Flash坏块处理方法,其特征在于,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息包括:
对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址;
根据所述第一坏块地址查找所述映射配置模块中相应的寄存器;
在查找到所述相应的寄存器后,利用所述数据选择器将所述第一配置块地址更新至所述相应的寄存器的配置块地址位。
4.根据权利要求3所述的Flash坏块处理方法,其特征在于,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息还包括:
在未查找到所述相应的寄存器时,查找标志位表征为未映射的寄存器;
将所述第一坏块地址以及所述第一配置块地址分别写入至未映射的寄存器的坏块地址位以及配置块地址位;
更新所述寄存器的标志位表征为已映射。
5.根据权利要求2所述的Flash坏块处理方法,其特征在于,所述根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息包括:
对所述坏块地址以及所述配置块地址进行预设位宽转换,获得第一坏块地址以及第一配置块地址;
根据所述第一坏块地址查找所述映射配置模块中相应的寄存器;
在查找到所述相应的寄存器后,获取所述寄存器的配置块地址位的第二配置块地址;
查找标志位表征为未映射的寄存器;
将所述第二配置块地址以及所述第一配置块地址分别写入至所述未映射的寄存器的坏块地址位以及配置块地址位;
更新所述相应的寄存器的标志位表征为已映射。
6.根据权利要求2所述的Flash坏块处理方法,其特征在于,还包括:
接收到编程数据操作指令时,从所述编程数据操作指令中提取编程数据相应的块地址,并进行预设位宽转换,获得第一块地址;
利用所述第一块地址与所述映射配置模块中的所述寄存器的坏块地址位进行匹配;
匹配到相应的寄存器后,获取所述相应的寄存器中的配置块地址,并进行预设位宽逆转换,获得第二块地址;
利用所述第二块地址同步处理所述编程数据操作指令;
在未匹配到所述相应的寄存器时,利用所述第一块地址同步处理所述编程数据操作指令。
7.根据权利要求3至6中任一项所述的Flash坏块处理方法,其特征在于,所述预设位宽转换为将第一预设位宽的地址转换为第二预设位宽的地址,所述第一预设位宽大于所述第二预设位宽,所述第一预设位宽为坏块地址以及配置块地址各自的地址位宽。
8.一种Flash坏块处理装置,其特征在于,应用于设置有映射配置模块的Flash存储器,包括:
编程数据转移模块,用于在检测到Flash存储器的编程区中产生坏块后,将所述坏块的编程数据转移至映射区的配置块;
块地址获取模块,用于获取所述坏块的坏块地址以及所述配置块的配置块地址;
配置模块更新模块,用于根据所述坏块地址以及所述配置块地址利用预设规则更新所述映射配置模块中相应的映射信息。
9.一种计算机设备,其特征在于,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行根据权利要求1至7中任一项所述的Flash坏块处理方法。
10.一种可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上运行时执行权利要求1至7中任一项所述的Flash坏块处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110594283.7A CN113253934B (zh) | 2021-05-28 | 2021-05-28 | Flash坏块处理方法、装置、计算机设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110594283.7A CN113253934B (zh) | 2021-05-28 | 2021-05-28 | Flash坏块处理方法、装置、计算机设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113253934A true CN113253934A (zh) | 2021-08-13 |
CN113253934B CN113253934B (zh) | 2024-07-19 |
Family
ID=77185271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110594283.7A Active CN113253934B (zh) | 2021-05-28 | 2021-05-28 | Flash坏块处理方法、装置、计算机设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113253934B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114546292A (zh) * | 2022-02-28 | 2022-05-27 | 深圳市风云实业有限公司 | 一种nand flash坏块管理方法及系统 |
CN115495025A (zh) * | 2022-11-18 | 2022-12-20 | 合肥康芯威存储技术有限公司 | 一种管理异常存储块的方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130346671A1 (en) * | 2012-06-22 | 2013-12-26 | Winbond Electronics Corporation | On-Chip Bad Block Management for NAND Flash Memory |
CN105740163A (zh) * | 2016-01-29 | 2016-07-06 | 山东鲁能智能技术有限公司 | 一种Nand Flash坏块管理方法 |
CN106649137A (zh) * | 2016-10-18 | 2017-05-10 | 凌云光技术集团有限责任公司 | 一种Nand Flash坏块管理方法、装置及存储器 |
CN106776359A (zh) * | 2016-11-11 | 2017-05-31 | 上海航天测控通信研究所 | 一种NAND Flash坏块管理方法及系统 |
CN107783723A (zh) * | 2016-08-29 | 2018-03-09 | 深圳市中兴微电子技术有限公司 | 一种存储器块处理方法和装置 |
CN112596668A (zh) * | 2020-11-25 | 2021-04-02 | 航天信息股份有限公司 | 一种存储器的坏块处理方法及系统 |
CN112612418A (zh) * | 2020-12-25 | 2021-04-06 | 航天信息股份有限公司 | 一种用于大容量NandFlash坏块管理的方法及系统 |
-
2021
- 2021-05-28 CN CN202110594283.7A patent/CN113253934B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130346671A1 (en) * | 2012-06-22 | 2013-12-26 | Winbond Electronics Corporation | On-Chip Bad Block Management for NAND Flash Memory |
CN105740163A (zh) * | 2016-01-29 | 2016-07-06 | 山东鲁能智能技术有限公司 | 一种Nand Flash坏块管理方法 |
CN107783723A (zh) * | 2016-08-29 | 2018-03-09 | 深圳市中兴微电子技术有限公司 | 一种存储器块处理方法和装置 |
CN106649137A (zh) * | 2016-10-18 | 2017-05-10 | 凌云光技术集团有限责任公司 | 一种Nand Flash坏块管理方法、装置及存储器 |
CN106776359A (zh) * | 2016-11-11 | 2017-05-31 | 上海航天测控通信研究所 | 一种NAND Flash坏块管理方法及系统 |
CN112596668A (zh) * | 2020-11-25 | 2021-04-02 | 航天信息股份有限公司 | 一种存储器的坏块处理方法及系统 |
CN112612418A (zh) * | 2020-12-25 | 2021-04-06 | 航天信息股份有限公司 | 一种用于大容量NandFlash坏块管理的方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114546292A (zh) * | 2022-02-28 | 2022-05-27 | 深圳市风云实业有限公司 | 一种nand flash坏块管理方法及系统 |
CN114546292B (zh) * | 2022-02-28 | 2023-12-15 | 深圳市风云实业有限公司 | 一种nand flash坏块管理方法及系统 |
CN115495025A (zh) * | 2022-11-18 | 2022-12-20 | 合肥康芯威存储技术有限公司 | 一种管理异常存储块的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113253934B (zh) | 2024-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7240178B2 (en) | Non-volatile memory and non-volatile memory data rewriting method | |
CN102707990B (zh) | 基于容器的处理方法和装置 | |
US7725646B2 (en) | Method of using a flash memory for a circular buffer | |
CN102841852B (zh) | 磨损均衡方法、存储装置及信息系统 | |
US8341386B2 (en) | Method for updating basic input/output system and method for repairing thereof | |
CN104750565B (zh) | Nand坏块处理方法及nand闪存设备 | |
US9015695B2 (en) | Information processing apparatus and information processing method | |
EP2051260A1 (en) | Method for writing data in a non volatile memory unit | |
US20120198137A1 (en) | Logical-to-Physical Address Translation for a Removable Data Storage Device | |
CN103279406B (zh) | 一种内存的隔离方法和装置 | |
US20180322013A1 (en) | Method for recovering basic input/output system image file of a computer system and the computer system | |
CN113253934A (zh) | Flash坏块处理方法、装置、计算机设备和可读存储介质 | |
CN107203331B (zh) | 写数据的方法及装置 | |
EP3306823B1 (en) | Encoding program, encoding apparatus and encoding method | |
CN110377276B (zh) | 源代码文件管理方法及设备 | |
JP4329937B2 (ja) | パーシスタントメモリに書き込む際のエラーを検出する方法および装置 | |
CN107451070A (zh) | 一种数据的处理方法和服务器 | |
US20080313451A1 (en) | Data recovery method | |
CN107908500B (zh) | 一种坏块识别方法及装置 | |
CN111381905B (zh) | 一种程序处理方法、装置及设备 | |
JP2014056381A (ja) | 車両の電子制御装置 | |
US10248339B2 (en) | Data storage device and data storage method for detecting currently-used logical pages | |
KR20100005036A (ko) | 비휘발성 메모리의 섹터 관리 방법 | |
CN109669628B (zh) | 基于flash设备的数据存储管理方法及装置 | |
CN110795297B (zh) | 一种电子设备的测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |