CN107783723A - 一种存储器块处理方法和装置 - Google Patents
一种存储器块处理方法和装置 Download PDFInfo
- Publication number
- CN107783723A CN107783723A CN201610754612.9A CN201610754612A CN107783723A CN 107783723 A CN107783723 A CN 107783723A CN 201610754612 A CN201610754612 A CN 201610754612A CN 107783723 A CN107783723 A CN 107783723A
- Authority
- CN
- China
- Prior art keywords
- memory
- block
- bad block
- bad
- nvr
- 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.)
- Pending
Links
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/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- 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]
Abstract
本发明公开了一种存储器块处理方法,将存储器分为数据区域和非易失性随机访问存储器(NVR);确定存储器中的坏块,将坏块信息存储到NVR区域;存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。本发明还公开了一种存储器块处理装置。
Description
技术领域
本发明涉及集成电路存储器领域,尤其涉及一种存储器块处理方法和装置。
背景技术
非易失性存储器如闪存(Flash)一般是由多个块(Block)组成,读写操作一般基于一个地址或一个块,擦除操作一般基于一个块,即擦除的最小范围是块,通常一次擦除一个块,即擦除多个地址;由此,存储器某个存储地址出现问题的时候,常用方法就是对该地址所在的块进行标注,坏块管理即基于此。
存储器某个地址可能会出现不可恢复的读写错误,即坏块;这种坏块可能是在生产过程中产生,也有可能是在使用过程中产生;坏块产生后,如果不做任何处理,那么,必然会造成数据和程序的错误;如果对出问题的芯片进行报废处理,则十分浪费;因此,可以采用坏块管理功能解决这个问题。
针对坏块的管理,目前的一种处理方法是,针对生产过程中产生的坏块,在存储器中预留出1~2块冗余块,在晶圆测试(CP,Circuit Probing)的时候找到存储器中存在的坏块,然后在使用的时候将产生坏块的块映射到冗余块中。但这种方法的缺陷是:只可以针对生产过程中产生的坏块进行处理,不可以对使用中产生的坏块进行处理;因为坏块通常是由生产厂家进行测试的,而且测试中发现坏块的数量不可以大于规定值,例如:如果冗余块为2,那么芯片中坏块数量不能大于2,如果大于规定值,只能将芯片作废。可见,这种方案不够灵活,并且一旦出现使用坏块或者生产坏块过多,只能将芯片作废,进而造成浪费。通常,在进行坏块替换的时候,都要求存储空间有若干个冗余块,用来做坏块的备用块,那么,在没有坏块的时候,冗余块不会被用到,这样就造成存储空间的浪费。
另一种处理方法是,将存储器地址分为两段区域,一段正常的数据区域,一段是存储器的状态位区域,状态位区域用来存储存储器的坏块信息、错误检查和纠正(ECC,ErrorCorrecting Code)信息等。这种方法利用一些存储器状态位的对比,来判断当前块是否为坏块。但此种方法要求,在擦除块之前,一定要将所有的坏块状态信息读出来,否则状态信息也会与数据区域一同被擦除;而如果用户一旦出现误操作,那么坏块信息将不复存在;因此,该方法存在操作复杂的问题。
因此,如何在生产和使用过程中都能便捷地进行坏块管理,提升块管理效率,是亟待解决的问题。
发明内容
有鉴于此,本发明实施例期望提供一种存储器块处理方法和装置,在生产和使用过程中都能便捷地进行坏块管理,提升块管理效率。
为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例提供了一种存储器块处理方法,将存储器分为数据区域和非易失性随机访问存储器(NVR,Non-Volatile Random access memory);所述方法还包括:
确定存储器中的坏块,将坏块信息存储到NVR区域;
存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。
上述方案中,所述方法还包括:将所述存储器可用空间大小存储到NVR区域。
上述方案中,所述确定存储器中的坏块,包括:在所述存储器写入预设信息,读取所述存储器中的信息与所述预设信息进行对比,将不匹配信息对应地址所在块确定为坏块;和/或,
读取所述存储器擦除后各地址的信息,将不等于初始信息内容对应地址所在块确定为坏块。
上述方案中,所述方法还包括:将所述坏块地址映射到所述存储器中指定位置。
上述方案中,所述将坏块地址映射到存储器中指定位置,包括:从所述存储器的数据区域末尾开始向头的方向依次映射所述坏块。
本发明实施例还提供了一种存储器块处理装置,所述装置包括:划分模块、块信息确定模块和坏块确认模块;其中,
所述划分模块,用于将存储器分为数据区域和NVR;
所述块信息确定模块,用于确定存储器中的坏块,将坏块信息存储到NVR区域;
所述坏块确认模块,用于存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。
上述方案中,所述块信息确定模块,还用于将所述存储器可用空间大小存储到NVR区域。
上述方案中,所述块信息确定模块,具体用于:在所述存储器写入预设信息,读取所述存储器中的信息与所述预设信息进行对比,将不匹配信息对应地址所在块确定为坏块;和/或,
读取所述存储器擦除后各地址的信息,将不等于初始信息内容对应地址所在块确定为坏块。
上述方案中,所述坏块确认模块,还用于:将所述坏块地址映射到所述存储器中指定位置。
上述方案中,所述坏块确认模块,具体用于:从所述存储器的数据区域末尾向头的方向开始依次映射所述坏块。
本发明实施例所提供的存储器块处理方法和装置,将存储器分为数据区域和NVR;确定存储器中的坏块,将坏块信息存储到NVR区域;存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。如此,在生产和使用过程中都可以将坏块信息存储到NVR区域,以便存储器后续使用中读取,并且由于信息存储在NVR区域,不易在数据区域擦除过程中受影响,简化了操作,提高块管理的便捷性,提升块管理效率。
附图说明
图1为本发明实施例存储器块处理方法的流程示意图;
图2为本发明实施例存储器整列结构示意图;
图3为本发明实施例存储器读写逻辑示意图;
图4为本发明实施例坏块映射结构示意图;
图5为本发明实施例存储器控制器结构示意图;
图6为本发明实施例存储器控制器工作流程示意图;
图7为本发明实施例坏块管理整体流程示意图;
图8为本发明实施例存储器块处理装置的组成结构示意图。
具体实施方式
本发明实施例中,将存储器分为数据区域和NVR;确定存储器中的坏块,将坏块信息存储到NVR区域;存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。
下面结合实施例对本发明再作进一步详细的说明。
本发明实施例提供的存储器块处理方法,如图1所示,所述方法包括:
步骤101:将存储器分为数据区域和NVR;
这里,所述存储器包括片上系统(SoC,System on Chip)等芯片的内部Flash和外部独立Flash等;可以由存储器控制器将存储器分为数据区域和NVR区域,如图2所示;其中,数据区域通常作为程序区,存放程序代码,NVR区域可以用来存放配置信息和坏块信息。图2中数据区域有N个块,NVR区域有一个以上的块,实际应用中的存储器块数量和大小可能都会不同。
这里,数据区域和NVR区域为两个独立的区域,二者不能同时访问,需要配置寄存器来选择哪个区域使能,这是生产厂家的存储器固有的功能,在此不再赘述;通常,存储器接口上会有一个NVR区域使能信号,如图3所示,存储器读写逻辑中的nvr_enable,如果nvr_enable=0,那么,选中数据区域;如果nvr_enable=1,那么选中NVR区域;
步骤102:确定存储器中的坏块,将坏块信息存储到NVR区域;
这里,所述坏块信息包括:坏块地址等;首先,确定存储器中的坏块;确定坏块的过程包括:在存储器生产过程中,生产厂家在CP阶段可以对存储器进行检测,看是否有坏块;在使用过程中,可以按照正确的配置流程和时序进行编程操作,将存储器擦除,擦除后每个位(bit)应全部为1,如果擦除后不能全部读出1,就可以判断有坏块;也可以对存储器写入预设信息,如写入全0,如果不能全部读出0,就可以判断有坏块;将出现读写错误地址所在的块确定为坏块,并将所述坏块地址写入NVR区域的指定区域。
进一步的,由于坏块的存在,必然使存储器的容量变小,所以要在坏块检测后,将可用空间的大小写入到NVR区域的指定区域,写入NVR区域的可用空间的大小用于在存储器读写过程中判断所述存储器存储空间是否满足需求;具体的,在存储器烧写数据的时候,可以先读取存储器可用空间的大小,再判断容量是否够用,然后进行烧写数据。例如,一个存储器有128个块,每块大小1MByte,总共128MByte空间;如果有4个坏块存在,那么,可用存储器可用空间应为124MByte,要将可用空间大小124MByte写入到NVR区域,供后续烧写时读取。
实际应用中,根据图3的存储器读写逻辑,可以采用的坏块信息存储流程如下:
A:检测存储器是否有坏块,并将所有的坏块地址记录下来,同时记录下存储器可用空间的大小;
B:配置nvr_enable=1,使能NVR区域;
C:将坏块地址和可用空间大小写入到NVR区域的指定位置;
步骤103:存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问;
这里,在存储器正常使用的过程中,存储器控制器可以在复位后先读取NVR区域中的坏块地址,并将坏块地址暂存在存储器控制器内部的寄存器中,供后续读写过程中进行坏块比较使用;在进行存储器访问时,比较访问地址属于的块地址与所述坏块地址进行比较,如两个地址相同,则确定访问块为坏块;同时,屏蔽对所述坏块的访问;
进一步的,存储器控制器确定存储器的坏块,对所述坏块进行屏蔽,防止访问坏块后,所述方法还包括:可以将所述坏块地址映射到存储器其他指定的位置,用其它工作正常的块来替代所述坏块;优选的,可以将所述坏块地址依次映射到存储器末尾的块;如此,可以使存储体内部不必设置冗余块,如果没有坏块的时候,存储器末尾的好块仍然也可以被用到,加大了存储空间的利用率。
更进一步的,可以读取在NVR区域中的存储器可用空间大小,向存储器烧写数据的时候,可以判断空间是否够用,再进行烧写数据。
实际应用中,首先由存储器控制器所属的主机发起访问存储器的操作;存储器控制器对比主机发起的访问块地址与所有保存在寄存器里的坏块地址;如果访问块地址与所有坏块地址不相同,则不进行块地址映射,进行正常的数据访问;如果访问块地址与某个坏块地址相同,则认为主机当前访问的存储器的块有坏块,将对应的坏块标记位置位,表示当前块是坏块,并且进行地址映射;存储器控制器根据坏块标记位将坏块地址映射到存储器末尾相应的块;如果当前被映射的块也是坏块,那就再映射到当前被映射块之前的块,直到映射到好块为止,这里之前是指从末尾向头的方向。这样,可以防止主机访问到坏块,从而使读出的数据错误。
其中,对坏块进行映射具体结构如图4所示,图4中,存储器中有m个坏块,如图4中的Bad Sector 1~Bad Sector m,映射块会是存储器末尾的m个块Sector n~Sector n-m+1。当主机访问Bad Sector 1的时候,将地址映射到Sector n上,即主机虽然发起访问的地址是Bad Sector 1的地址,但实际访问的是Sector n,当主机访问Bad Sector 2的时候,将地址映射到Sector n-1上,同理当访问Bad Sector m的时候将地址映射到Sector n-m+1上,从而形成图4右侧的新的访问阵列。
下面结合具体示例对本发明实施例产生的积极效果作进一步详细的描述。
如图5所述,本发明实施例存储器控制器主要包含以下单元:
寄存器单元:对控制器和存储器进行配置,主要是产生test_en和nvr_enable配置信号;test_en是主机对存储器进行坏块检测时候的使能信号,为1时表示进行快坏检测使能;nvr_enable是NVR区域选择信号,为1表示选择NVR区域;
坏块信息读取单元:上电复位后自动将bad_read_en拉高,即在数据选择器上选通访问访问NVR区域的路径,使本单元发出的读坏块地址请求可以穿过数据选择器,访问NVR区域,读取坏块地址,并将坏块地址暂存在内部的寄存器中,供坏块比较单元使用;
坏块号比较单元:根据坏块信息读取单元暂存的坏块号和主机发出的访问地址进行对比,输出坏块状态位,为1表示当前访问的是坏块,为0表示不是坏块;
地址映射单元:对坏块地址进行映射,非坏块地址可以直接穿过;根据坏块号比较单元产生的坏块状态,判断是否进行映射和映射到哪一个块,并将映射后的访问请求与坏块信息读取单元的访问请求进行数据选择,在坏块信息读取阶段bad_read_en=1,映射后的访问请求不会穿过数据选择器,坏块信息读取阶段结束后,bad_read_en=0,则映射后的访问请求可以穿过数据选择器访问存储器;
访问选择单元:对访问请求和配置寄存器进行选择。
基于上述单元,访问请求的工作流程包括:如果test_en=1,这种情况发生在检测坏块的阶段,那么使主机访问不经过地址映射,直接访问存储器;如果test_en=0&bad_read_en=1,这发生在坏块信息读取阶段,坏块信息读取单元发出的访问请求会穿过数据选择器,访问存储器;如果test_en=0&bad_read_en=0,这发生在正常的主机访问阶段,主机的访问请求会经过地址映射单元,穿过数据选择器访问存储器;
配置寄存器的过程包括:如果bad_read_en=1,这发生在坏块信息读取阶段,此阶段要访问NVR区域,所以会将nvr_enable强制为1;如果bad_read_en=0,这发生在正常的主机访问阶段,寄存器单元配置的nvr_enable会穿过数据选择器,配置存储器;以上所述,仅为本发明的最佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内;
从主机发起访问到对坏块进行映射的过程如图6所示,主机发起访问的操作地址是Sector 4,通过坏块比较单元将主机操作地址与坏块号寄存器组进行比较,与坏块号寄存器1相等,则坏块状态1被置为高电平,表示当前访问的是坏块。坏块状态经过地址映射单元的处理,将地址映射到Sector n-1。这样就完成了地址的映射。
基于上述单元,存储器处理的整体工作流程可以如图7所示,包括以下步骤:
步骤701:判断是否要进行坏块检测,如果需要,则进行坏块检测并将坏块地址和可用空间大小存储到NVR区域;
步骤702:判断是否需要烧写,如果需要进入步骤703;否则,执行步骤704;
步骤703:根据NVR区域中的可用空间大小判断存储器空间是否足够,如果不够,则需要换一块芯片或者缩小数据大小;如果空间足够,则进行烧写;
步骤704:烧写完以后,进行复位,并将NVR区域中的坏块地址暂存到坏块号寄存器,并开始接收主机的访问请求;
步骤705:比较主机访问地址所属的块地址和坏块号寄存器中的坏块地址是否一致,如果一致,则执行步骤706,否则执行步骤707;
步骤706:对坏块进行地址映射后访问,结束本次处理流程;
步骤707:直接访问块。
本发明实施例提供的存储器块处理装置,如图8所示,所述装置包括:划分模块81、块信息确定模块82和坏块确认模块83;其中,
所述划分模块81,用于将存储器分为数据区域和NVR;
这里,所述存储器包括SoC等芯片的内部Flash和外部独立Flash等;可以由存储器控制器将存储器分为数据区域和NVR区域,如图2所示;其中数据区域通常作为程序区,存放程序代码,NVR区域可以用来存放配置信息和坏块信息。图2中数据区域有N个块,NVR区域有一个以上的块,实际应用中的存储器块数量和大小可能都会不同。
这里,数据区域和NVR区域为两个独立的区域,二者不能同时访问,需要配置寄存器来选择哪个区域使能,这是生产厂家的存储器固有的功能,在此不再赘述;通常,存储器接口上会有一个NVR区域使能信号,如图3所示,存储器读写逻辑中的nvr_enable,如果nvr_enable=0,那么选中数据区域;如果nvr_enable=1,那么选中NVR区域。
所述块信息确定模块82,用于确定存储器中的坏块,将坏块信息存储到NVR区域;所述存储器被分为数据区域和NVR区域;.
这里,所述坏块信息包括:坏块地址等;首先,确定存储器中的坏块;确定坏块的过程包括:在存储器生产过程中,生产厂家在CP阶段可以对存储器进行检测,看是否有坏块;在使用过程中,可以按照正确的配置流程和时序进行编程操作,将存储器擦除,擦除后每个bit应全部为1,如果擦除后不能全部读出1,就可以判断有坏块;也可以对存储器写入预设信息,如写入全0,如果不能全部读出0,就可以判断有坏块;将出现读写错误地址所在的块确定为坏块,并将所述坏块地址写入NVR区域的指定区域。
进一步的,由于坏块的存在,必然使存储器的容量变小,所以要在坏块检测后,将可用空间的大小写入到NVR区域的指定区域,写入NVR区域的可用空间的大小用于在存储器读写过程中判断所述存储器存储空间是否满足需求;具体的,在存储器烧写数据的时候,可以先读取存储器可用空间的大小,再判断容量是否够用,然后进行烧写数据。例如,一个存储器有128个块,每块大小1MByte,总共128MByte空间;如果有4个坏块存在,那么,可用存储器可用空间应为124MByte,要将可用空间大小124MByte写入到NVR区域,供后续烧写时读取。
实际应用中,根据图3的存储器读写逻辑,可以此采用的坏块地址存储流程如下:
A:检测存储器是否有坏块,并将所有的坏块地址记录下来,同时记录下存储器可用空间的大小;
B:配置nvr_enable=1,使能NVR区域;
C:将坏块地址和可用空间大小写入到NVR区域的指定位置;
所述坏块确认模块83,用于存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问;
这里,在存储器正常使用的过程中,存储器控制器可以在复位后先读取NVR区域中的坏块地址,并将坏块地址暂存在存储器控制器内部的寄存器中,供后续读写过程中进行坏块比较使用;在进行存储器访问时,比较访问地址属于的块地址与所述坏块地址进行比较,如两个地址相同,则确定访问块为坏块,同时,屏蔽对所述坏块的访问;
进一步的,所述坏块确认模块83在确定存储器的坏块,对所述坏块进行屏蔽,防止访问坏块后,所述坏块确认模块83还用于:将所述坏块地址映射到存储器其他指定的位置,用其它工作正常的块来替代所述坏块;优选的,可以将所述坏块地址依次映射到存储器末尾的块;如此,可以使存储体内部不必设置冗余块,如果没有坏块的时候,存储器末尾的好块仍然也可以被用到,加大了存储空间的利用率。
更进一步的,可以读取在NVR区域中的存储器可用空间大小,向存储器烧写数据的时候,可以判断空间是否够用,再进行烧写数据。
实际应用中,首先由存储器控制器所属的主机发起访问存储器的操作;存储器控制器对比主机发起的访问块地址与所有保存在寄存器里的坏块地址;如果访问块地址与所有坏块地址不相同,则不进行块地址映射,进行正常的数据访问;如果访问块地址与某个坏块地址相同,则认为主机当前访问的存储器的块有坏块,将对应的坏块标记位置位,表示当前块是坏块,并且进行地址映射;存储器控制器根据坏块标记位将坏块地址映射到存储器末尾相应的块;如果当前被映射的块也是坏块,那就再映射到当前被映射块之前的块,直到映射到好块为止,这里之前是指从末尾向头的方向。这样,可以防止主机访问到坏块,从而使读出的数据错误。
其中,对坏块进行映射具体结构如图4所示,图4中,存储器中有m个坏块,如图4中的Bad Sector 1~Bad Sector m,映射块会是存储器末尾的m个块Sector n~Sector n-m+1。当主机访问Bad Sector 1的时候,将地址映射到Sector n上,即主机虽然发起访问的地址是Bad Sector 1的地址,但实际访问的是Sector n,当主机访问Bad Sector 2的时候,将地址映射到Sector n-1上,同理当访问Bad Sector m的时候将地址映射到Sector n-m+1上,从而形成图4右侧的新的访问阵列。
在实际应用中,所述划分模块81、块信息确定模块82和坏块确认模块83可以由存储器控制器的处理器或硬件逻辑等实现。
以上所述,仅为本发明的最佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种存储器块处理方法,其特征在于,将存储器分为数据区域和非易失性随机访问存储器NVR;所述方法还包括:
确定存储器中的坏块,将坏块信息存储到NVR区域;
存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述存储器可用空间大小存储到NVR区域。
3.根据权利要求1所述的方法,其特征在于,所述确定存储器中的坏块,包括:在所述存储器写入预设信息,读取所述存储器中的信息与所述预设信息进行对比,将不匹配信息对应地址所在块确定为坏块;和/或,
读取所述存储器擦除后各地址的信息,将不等于初始信息内容对应地址所在块确定为坏块。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:将所述坏块地址映射到所述存储器中指定位置。
5.根据权利要求4所述的方法,其特征在于,所述将坏块地址映射到存储器中指定位置,包括:从所述存储器的数据区域末尾开始向头的方向依次映射所述坏块。
6.一种存储器块处理装置,其特征在于,所述装置包括:划分模块、块信息确定模块和坏块确认模块;其中,
所述划分模块,用于将存储器分为数据区域和NVR;
所述块信息确定模块,用于确定存储器中的坏块,将坏块信息存储到NVR区域;
所述坏块确认模块,用于存储器使用过程中,根据所述NVR区域存储的所述坏块信息,确定存储器中的坏块,并屏蔽所述坏块的访问。
7.根据权利要求6所述的装置,其特征在于,所述块信息确定模块,还用于将所述存储器可用空间大小存储到NVR区域。
8.根据权利要求6所述的装置,其特征在于,所述块信息确定模块,具体用于:在所述存储器写入预设信息,读取所述存储器中的信息与所述预设信息进行对比,将不匹配信息对应地址所在块确定为坏块;和/或,
读取所述存储器擦除后各地址的信息,将不等于初始信息内容对应地址所在块确定为坏块。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述坏块确认模块,还用于:将所述坏块地址映射到所述存储器中指定位置。
10.根据权利要求9所述的装置,其特征在于,所述坏块确认模块,具体用于:从所述存储器的数据区域末尾向头的方向开始依次映射所述坏块。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610754612.9A CN107783723A (zh) | 2016-08-29 | 2016-08-29 | 一种存储器块处理方法和装置 |
PCT/CN2017/094295 WO2018040804A1 (zh) | 2016-08-29 | 2017-07-25 | 一种存储器块处理方法、装置和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610754612.9A CN107783723A (zh) | 2016-08-29 | 2016-08-29 | 一种存储器块处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107783723A true CN107783723A (zh) | 2018-03-09 |
Family
ID=61299961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610754612.9A Pending CN107783723A (zh) | 2016-08-29 | 2016-08-29 | 一种存储器块处理方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107783723A (zh) |
WO (1) | WO2018040804A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113253934A (zh) * | 2021-05-28 | 2021-08-13 | 深圳市汇春科技股份有限公司 | Flash坏块处理方法、装置、计算机设备和可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030167372A1 (en) * | 2002-03-04 | 2003-09-04 | Samsung Electronics Co., Ltd. | Semiconductor memory device with a flexible redundancy scheme |
CN101131870A (zh) * | 2006-08-24 | 2008-02-27 | 三星电子株式会社 | 包括块信息块的闪存设备及操作该闪存设备的方法 |
CN101944065A (zh) * | 2010-08-24 | 2011-01-12 | 苏州国芯科技有限公司 | 一种基于扇区的闪存坏块屏蔽方法 |
CN103544112A (zh) * | 2013-10-17 | 2014-01-29 | Tcl通讯(宁波)有限公司 | 一种移动终端的存储器坏块处理方法及移动终端 |
CN103778065A (zh) * | 2012-10-25 | 2014-05-07 | 北京兆易创新科技股份有限公司 | 一种闪速存储器及其进行坏块管理的方法 |
CN104317753A (zh) * | 2014-10-21 | 2015-01-28 | 中国科学院上海微系统与信息技术研究所 | 存储设备及其数据读写方法 |
CN104461750A (zh) * | 2013-09-25 | 2015-03-25 | 北京兆易创新科技股份有限公司 | 一种NAND flash的访问方法和装置 |
-
2016
- 2016-08-29 CN CN201610754612.9A patent/CN107783723A/zh active Pending
-
2017
- 2017-07-25 WO PCT/CN2017/094295 patent/WO2018040804A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030167372A1 (en) * | 2002-03-04 | 2003-09-04 | Samsung Electronics Co., Ltd. | Semiconductor memory device with a flexible redundancy scheme |
CN101131870A (zh) * | 2006-08-24 | 2008-02-27 | 三星电子株式会社 | 包括块信息块的闪存设备及操作该闪存设备的方法 |
CN101944065A (zh) * | 2010-08-24 | 2011-01-12 | 苏州国芯科技有限公司 | 一种基于扇区的闪存坏块屏蔽方法 |
CN103778065A (zh) * | 2012-10-25 | 2014-05-07 | 北京兆易创新科技股份有限公司 | 一种闪速存储器及其进行坏块管理的方法 |
CN104461750A (zh) * | 2013-09-25 | 2015-03-25 | 北京兆易创新科技股份有限公司 | 一种NAND flash的访问方法和装置 |
CN103544112A (zh) * | 2013-10-17 | 2014-01-29 | Tcl通讯(宁波)有限公司 | 一种移动终端的存储器坏块处理方法及移动终端 |
CN104317753A (zh) * | 2014-10-21 | 2015-01-28 | 中国科学院上海微系统与信息技术研究所 | 存储设备及其数据读写方法 |
Non-Patent Citations (4)
Title |
---|
刘桓中: "《计算机程序设计实践教程》", 30 June 2001 * |
张福祥: "《 C语言程序设计》", 31 January 2010 * |
郭荣佐 等: "《嵌入式系统原理》", 31 October 2008 * |
龚永罡 等: "《Linux系统管理》", 30 September 2000 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113253934A (zh) * | 2021-05-28 | 2021-08-13 | 深圳市汇春科技股份有限公司 | Flash坏块处理方法、装置、计算机设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2018040804A1 (zh) | 2018-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11347403B2 (en) | Extending the life of a solid state drive by using MLC flash blocks in SLC mode | |
KR101498009B1 (ko) | 비휘발성 메모리 시스템에서 결함 블록 분리 | |
US6388919B2 (en) | Memory controller for flash memory system and method for writing data to flash memory device | |
KR101095639B1 (ko) | 시험 장치 및 시험 방법 | |
US7149921B1 (en) | Apparatus, method, and system to allocate redundant components with subsets of the redundant components | |
US7277336B2 (en) | Method and apparatus for improving yield in semiconductor devices by guaranteeing health of redundancy information | |
US6795942B1 (en) | Built-in redundancy analysis for memories with row and column repair | |
US9177668B2 (en) | Method and apparatus for bit cell repair | |
US8667348B2 (en) | Data writing method for non-volatile memory module and memory controller and memory storage apparatus using the same | |
KR20040101222A (ko) | 섹터 포인터들을 활용하는 메모리 맵핑 장치 | |
US7859900B2 (en) | Built-in self-repair method for NAND flash memory and system thereof | |
CA1058324A (en) | Memory diagnostic arrangement | |
CN107608628A (zh) | 闪存控制器 | |
US8214698B2 (en) | Solid state storage system with improved data merging efficiency and control method thereof | |
US20120131262A1 (en) | Method and Apparatus for EEPROM Emulation for Preventing Data Loss in the Event of a Flash Block Failure | |
CN110008053A (zh) | 存储设备、非易失性存储设备以及存储设备的操作方法 | |
US20040221210A1 (en) | Method and apparatus for masking known fails during memory tests readouts | |
US6771549B1 (en) | Row-column repair technique for semiconductor memory arrays | |
CN108665941A (zh) | 基于nand闪存的列修复方法、装置和nand存储设备 | |
CN107783723A (zh) | 一种存储器块处理方法和装置 | |
CN106057246A (zh) | 一种非易失性存储器中坏点单元的替换方法 | |
JP5367357B2 (ja) | メモリシステムおよびコンピュータシステム | |
CN110471612A (zh) | 存储器管理方法以及存储控制器 | |
US7352638B2 (en) | Method and apparatus for testing a memory device | |
CN104756089B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180309 |