CN113220508B - 存储器块的管理方法、存储器的写操作方法以及存储器 - Google Patents
存储器块的管理方法、存储器的写操作方法以及存储器 Download PDFInfo
- Publication number
- CN113220508B CN113220508B CN202110500480.8A CN202110500480A CN113220508B CN 113220508 B CN113220508 B CN 113220508B CN 202110500480 A CN202110500480 A CN 202110500480A CN 113220508 B CN113220508 B CN 113220508B
- Authority
- CN
- China
- Prior art keywords
- block
- bad
- blocks
- super
- good
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- 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
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本公开提供存储器块的管理方法、存储器的写操作方法以及存储器,存储器的数据存储区域包括用户区域和预留区域,用户区域内各个超级块并行写数据,所述管理方法包括:从用户区域中确定第一超级块,第一超级块为在至少一个通道内的所有块皆为坏块的超级块且该通道为目标通道;通过预留区域内的好块对第一超级块在目标通道上的至少一个坏块进行替换,其中,用户区域内未被替换的坏块为第一坏块且在写数据过程中略过该类型坏块以便写下一个块,被替换的坏块为第二坏块且在写数据过程中将数据写到该类型坏块的替换块上;生成第一坏块的位置信息以及第二坏块被好块替换的替换关联信息。本公开能够有效避免多通道间性能严重失衡以及存储器作废。
Description
技术领域
本公开涉及存储技术领域,具体涉及一种存储器块的管理方法、存储器的写操作方法以及存储器。
背景技术
存储器的坏块按来源划分主要包括:(1)出厂坏块(Factory Bad Block),即生产过程中产生的坏块,一般生产商会在存储器出厂时将坏块第一个page的备用区域(sparearea)的第6个字节(byte)赋予不等于0xff的值来标记坏块;(2)增长坏块(Grown BadBlock),即使用过程中因擦写磨损等原因而使出厂好块变成的坏块,ECC纠错恢复无法完成、擦除失败、写失败等现象都可以作为增长坏块出现的表现形式。
图1所示为一种示例性存储器的数据存储区域。参照图1,数据存储区域(dataarea)包括多个通道(channel),图中示出了Channel0、Channel1、Channel2和Channel3这四个通道;各个通道包括多个面(plane),图中示出了Plane0和Plane1这两个面;各个面包括多个块(Block),如图中所示同一面内常常既有好块又有坏块。在向数据存储区域写入数据的过程中,多个通道同时从上到下写数据,且具体是各个通道的多个面内位于同一位置的块同时写数据。图中示例性地通过点线框框出了多个面内的一组位于同一位置的块,这样的一组块称为超级块(superblock)。图中示出了点线框所框住的Superblock0至Superblock9这10个超级块。
目前可采用略过(Skip)策略和替换(Replace)策略中的一种策略管理坏块,从而在数据存储区域内写入数据的过程中避免使用到坏块。
上述略过策略的实现方式是写数据的过程中一旦遇到坏块表中记录的坏块,则跨过该坏块并继续写下一个块。例如,写到SuperBlock2时,由于Channel2的Plane1上有一个坏块,则只在SuperBlock2的七个好块上并行写入数据,然后写SuperBlock3。又例如,写到SuperBlock4时,由于Channel0上的Plane0和Plane1都是坏块,则只在Channel1至Channel3这三个通道的六个块上并行写入数据。
需要注意的是,SuperBlock0和SuperBlock1上没有坏块,所以可以同时读写的块各为一个完整的超级块,这样一次并行写数据的过程是满负荷运行的。SuperBlock2在Channel2的Plane1上有坏块,但是因为所有的通道上都有块写入了数据,所以多个通道的性能失衡现象并不明显。SuperBlock4在channel0的所有面上都有坏块,因而channel0会空转,从而多个通道的性能严重失衡。
上述替换策略的实现方式是写数据的过程中一旦遇到坏块表中记录的坏块,则把数据写到与该坏块位于同一面的目标块上,所述目标块为预先配置的替换该坏块的好块。此策略中,数据存储区域上各个面划分为用户区域和预留区域,预留区域内的好块用于替换用户区域内的坏块。示例性地,图1所示的Superblock0至Superblock7这8个超级块位于用户区域,Superblock8至Superblock9位于预留区域,则Channel0的Plane0中属于SuperBlock4的坏块可以被属于Superblock8或Superblock9的好块替换。
需要注意的是,替换策略不同于略过策略,替换策略中写数据不会跨过遇到的坏块来写下一个块。对于图1所示数据存储区域,Channel0的Plane1中属于用户区域的坏块共有两个,而属于预留区域的好块只有一个,该情况下若Channel0的Plane1中属于Superblock4的坏块被同一面内属于Superblock9的好块替换,则Channel0的Plane1中属于Superblock7的坏块无法被替换,这样写到Superblock7则出现写保护现象,最后导致整个存储器作废。
发明内容
为了解决上述技术问题,本公开提供了一种存储器块的管理方法、存储器的写操作方法以及存储器,能够有效避免多通道间性能失衡以及存储器作废。
本公开的第一方面提供了一种存储器块的管理方法,所述存储器的数据存储区域包括用户区域和预留区域,所述用户区域内各个超级块通过并行方式写数据,所述管理方法包括:
从所述用户区域的多个超级块中确定第一超级块,所述第一超级块为在至少一个通道内的所有块皆为坏块的超级块且该通道为目标通道;
通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,其中,所述用户区域内未被替换的坏块为第一坏块且在写数据过程中略过所述第一坏块以便写下一个块,被替换的坏块为第二坏块且在写数据过程中将数据写到所述第二坏块的替换块上;
生成所述第一坏块在所述数据存储区域内的位置信息以及所述第二坏块被好块替换的替换关联信息。
可选地,从所述用户区域的多个超级块中确定第一超级块,包括:
获取所述存储器内通道所包括面的数量,以得到第一阈值;
将所述数据存储区域中各超级块的坏块数量与所述第一阈值进行比较,并将坏块数量不小于所述第一阈值的超级块确定为候选超级块;
从所述候选超级块中确定至少一个通道内的所有块皆为坏块的超级块为所述第一超级块。
可选地,所述用户区域和所述预留区域基于坏块数量预先配置,其中,所述预留区域包括所述数据存储区域中坏块数量不小于第二阈值的超级块,以及所述第二阈值大于所述第一阈值。
可选地,所述第一超级块为多个,通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,包括:优先对坏块数量较少的所述第一超级块进行替换。
可选地通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,还包括:将多个所述第一超级块按坏块数量进行排序,得到超级块序列;
以及,优先对坏块数量较少的所述第一超级块进行替换,是基于所述超级块序列进行的。
可选地所述第一超级块在所述目标通道上只有一个坏块为待替换块;
通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,包括:通过所述预留区域内的好块对所述第一超级块的所述待替换块进行替换。
可选地,通过所述预留区域内的好块对所述第一超级块的所述待替换块进行替换,包括:
判断所述数据存储区域中同一通道内属于所述预留区域的好块总数是否小于属于所述第一超级块的待替换坏块总数;
对任一通道,若所述好块总数不小于所述待替换坏块总数,则通过所述预留区域内的好块对同一通道内的所述待替换块进行替换。
可选地,所述管理方法还包括:
对任一通道,若所述好块总数小于所述待替换坏块总数,则从所述数据存储区域中无坏块的超级块内选择好块来进行坏块的替换。
本公开的第二方面提供了一种存储器的写操作方法,所述存储器的数据存储区域包括用户区域和预留区域,所述用户区域内各个超级块通过并行方式写数据,所述存储器的块经第一方面所述的任一种管理方法管理,所述写操作方法包括:
根据所述位置信息以及所述替换关联信息,向所述存储器内写入数据,其中,
若基于所述位置信息确定写所述第一坏块,则跨过该第一坏块以便继续写下一个块;
若基于所述替换关联信息确定写所述第二坏块,则根据所述替换关联信息将数据写入替换该第二坏块的好块中。
本公开的第三方面提供了一种存储器,包括:存储单元和处理单元,其中所述处理单元通过执行第二方面所述的写操作方法使所述存储单元内写入数据,所述存储器的块设置在所述存储单元内且所述存储单元内位于用户区域的各个超级块通过并行方式写数据。
本公开的有益效果是:
本公开实施例中,存储器的块经过管理生成了第一坏块在数据存储区域内的位置信息以及第二坏块被好块替换的替换关联信息,其中,第一坏块为未被替换的坏块且在写数据过程中略过该类型坏块以便写下一个块,第二坏块为被替换的坏块且在写数据过程中将数据写到该类型坏块的替换块上。该过程中,坏块的替换策略与坏块的略过策略相结合,能够有效避免多通道间性能失衡以及存储器作废。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚。
图1所示为一种示例性存储器的数据存储区域;
图2示出本公开实施例中存储器块的管理方法流程图;
图3示出本公开实施例中坏块管理方法管理的一种结果示意图;
图4示出本公开实施例中坏块管理方法管理的另一种结果示意图;
图5示出本公开另实施例中存储器的结构示意图。
具体实施方式
为了便于理解本公开,下面将参照相关附图对本公开进行更全面的描述。附图中给出了本公开的较佳实施例。但是,本公开可以通过不同的形式来实现,并不限于本文所描述的实施例。相反的,提供这些实施例的目的是使对本公开内容的理解更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。在本公开的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本公开。
本公开实施例提供了一种存储器块的管理方法,所述存储器的数据存储区域包括用户区域和预留区域,其中,预留区域内的好块供替换用户区域内的坏块时使用。用户区域内各个超级块通过并行方式写数据,用户区域内坏块分为第一坏块和第二坏块。
需要说明的是,以下描述中涉及第一坏块、第二坏块、第一好块和第二好块,其中,第一坏块为未匹配上好块来替换的坏块,第二坏块为已匹配上好块来替换的坏块,第一好块为无需替换坏块的好块,第二好块为替换坏块的好块。需要强调的是,如现有技术所限定的,本公开实施例中坏块也是只能通过同一通道的同一面内的好块替换,因而上述第二坏块也是通过同一通道的同一面内的好块进行替换。
图2所示为本公开实施例中存储器块的管理方法流程图。参照图2,该管理方法包括:
步骤S110,从用户区域的多个超级块中确定第一超级块,第一超级块为在至少一个通道内的所有块皆为坏块的超级块且该通道为目标通道;
步骤S120,通过预留区域内的好块对第一超级块在目标通道上的至少一个坏块进行替换,其中,用户区域内未被替换的坏块为第一坏块,被替换的坏块为第二坏块;
步骤S130,生成第一坏块在数据存储区域内的位置信息以及第二坏块被好块替换的替换关联信息。
具体地,上述第一坏块的位置信息可以形成坏块表,坏块表通常情况下包含不只一个位置信息,即坏块表通常包括多个第一坏块各自在数据存储区域内的位置信息。鉴于此,在写数据的过程中,若写到坏块表包含的任一个位置信息所描述的位置,则确定即将向第一坏块写数据,此情况下基于本公开的管理方法跨过该第一坏块以便继续写下一个块。应当理解的是,这里跨过该第一坏块以便继续写下一个块,是在该第一坏块非最后一个块的情况下继续进行下一个块的写数据过程,若该第一坏块是最后一个块则结束整个写数据过程。该过程中,由于第一坏块并不会如现有替换策略导致写保护,因而避免了存储器因个别第一坏块而作废的现象。
上述第二坏块被好块替换的替换关联信息可以形成替换对照表,替换关联信息为第二坏块与替换该第二坏块的好块(即第二好块)之间的替换关联信息,且任一个替换关联信息中包含了第二坏块的位置信息以及替换该第二坏块的好块的位置信息。通常情况下,替换对照表同样包含不只一个替换关联信息,即替换对照表通常包括多个第二坏块各自的替换关联信息。鉴于此,在写数据的过程中,若写到替换对照表包含的任一个替换关联信息所描述的第二坏块,则基于本公开的管理方法从替换对照表内查询替换该第二坏块的第二好块,并将本来准备写入第二坏块的数据写入到查询到的第二好块中。该过程中,由于第二好块的存在,现有略过策略导致的多通道间性能失衡的现象能够得以缓解,并且还提高了存储器容量的利用率。
应当理解的是,坏块表可以采用现有技术中坏块表的构建方式预先配置,不同的是本公开的坏块表并不是包含数据存储区域内所有坏块各自在数据存储区域内的位置信息,而是只包含第一坏块各自在数据存储区域内的位置信息,因而只要确定了第二坏块则可以确定所有坏块中的第一坏块,进而能够预先配置本公开的坏块表。并且,在确定了第二坏块以及替换各个第二坏块的第二好块后,上述替换对照表也可以被预先配置。因而,接下来结合图3和图4,着重说明存储器写数据之前第二坏块的确定过程以及替换过程。
在一个可选实施例中,步骤S110,从用户区域的多个超级块中确定第一超级块,包括:获取存储器内通道所包括面的数量,以得到第一阈值;将数据存储区域中各超级块的坏块数量与第一阈值进行比较,并将坏块数量不小于第一阈值的超级块确定为候选超级块;从候选超级块中确定至少一个通道内的所有块皆为坏块的超级块为第一超级块。该过程中,由于坏块数量小于第一阈值的超级块(如图3所示的SuperBlock0、SuperBlock1、SuperBlock2和SuperBlock3)不可能在同一通道内的坏块皆为坏块,即不可能为第一超级块,因而被剔除到候选超级块外以便减少候选超级块的数量,进而加快了第一超级块的确定速度。
在一个可选实施例中,上述用户区域和预留区域基于坏块数量预先配置,其中,预留区域包括数据存储区域中坏块数量不小于第二阈值的超级块(以下亦称预留区域内的超级块为第二超级块),以及,第二阈值大于第一阈值。
应当理解的是,本实施例中用户区域和预留区域的划分方式不同于现有技术。现有技术中采用替换策略的存储器,是将位置连通的一部分超级块划分在用户区域,并将位置连通的另一部分超级块划分在预留区域,即现有技术基于超级块的位置确定该超级块属于用户区域还是预留区域。本实施例中是根据超级块的坏块数量来确定该超级块属于用户区域和预留区域各自包括哪些超级块。
具体地,若数据存储区域内通道数量不小于第一阈值,则上述第二阈值可以设置为数据存储区域中通道数量加一得到的和,此情况下第二超级块不进行替换前确保会导致多个通道间性能严重失衡,并且即使采用好块替换也需要较多块的替换方可确保不会短时间内因使用磨损而出现多通道间性能严重失衡的现象,因而可用性较差,适合划分在预留区域。
本公开实施例中,数据存储区域中坏块数量不小于第二阈值的超级块划分到预留区域,这样预留区域内各个第二超级块的好块会较少,进一步在用于替换用户区域的坏块后整个第二超级块内没有利用的好块数量还会减少,从而有利于提高存储器的容量利用率。
鉴于用户区域和预留区域基于坏块数量预先配置,因而在配置这两个区域之前就可以先对数据存储区域内的多个超级块按坏块数量进行排序。
图3示出了超级块已按坏块数量排序后的一个示例性数据存储区域,其中,以上用到的两个阈值取值如下:第一阈值=2,第二阈值=5。参照图3,基于以上所述的方法,第二坏块以及第二好块的确定过程可以如下:
(1)超级块SuperBlock8和SuperBlock9皆为坏块数量等于5的超级块,因而先确定超级块SuperBlock9划分到预留区域,超级块SuperBlock0至SuperBlock8划分到用户区域;
(2)将超级块SuperBlock0至SuperBlock8各自坏块数量和第一阈值进行比较,将坏块数量不小于第一阈值的超级块SuperBlock4至SuperBlock8确定为候选超级块(即位于第一点线框和第二点线框之间的超级块为候选超级块,其中,所述第一点线框为框住超级块SuperBlock2和SuperBlock3的点线框,所述第二点线框为框住超级块SuperBlock9的点线框);
(3)从候选超级块SuperBlock4至SuperBlock8中,确定至少一个通道内的所有块皆为坏块的超级块为所述第一超级块SuperBlock4、SuperBlock6和SuperBlock8为第一超级块。
(4)第一超级块SuperBlock4的目标通道为Channel0,第一超级块SuperBlock4在Channel0上的两个坏块中至少一个为第二坏块;
第一超级块SuperBlock6的目标通道为Channel1,第一超级块SuperBlock6在Channel1上的两个坏块中至少一个为第二坏块;
第一超级块SuperBlock8的目标通道为Channel3,第一超级块SuperBlock8在Channel3上的两个坏块中至少一个为第二坏块。
(5)通过SuperBlock9中的好块替换上一步骤确定的第二坏块,在坏块只可以通过同一面内好块替换的限定下,第二好块为SuperBlock9中Channel0上位于Plane0的块、Channel1上位于Plane1的块、Channel3上位于Plane0的块。
需要说明的是,图3所示实例中,各个第一超级块的目标通道上只有一个坏块被替换,这样既使得第一超级块不会出现多个通道间性能严重失衡的现象,又使得第二超级块无需提供太多好块以供坏块替换使用。
一些实施例中,预留区域内的好块不足以供多个第一超级块内位于目标通道上的所有坏块替换,即使是各个第一超级块的目标通道上只有一个坏块被替换也会有一些坏块匹配不到替换其的好块。针对此情形,步骤S120,通过预留区域内的好块对第一超级块在目标通道上的至少一个坏块进行替换,包括:优先对坏块数量较少的第一超级块进行替换。由于坏块数量较少的第一超级块会对应较少的目标通道,因而通过使用较少的好块替换即可恢复多通道间的性能稍微失衡,从而,优先对坏块数量较少的第一超级块进行待替换块的替换,有利于使较多第一超级块恢复到多通道间的性能稍微失衡。
进一步,步骤S120,通过预留区域内的好块对第一超级块在目标通道上的至少一个坏块进行替换,还包括:将多个第一超级块按坏块数量进行排序,得到超级块序列;然后,上述优先对坏块数量较少的第一超级块进行替换,是基于超级块序列进行的,从而能够有利于替换的条理性乃至进一步的准确性。
应当理解的是,本公开实施例所述的待替换块为第一超级块中位于目标通道上的坏块,为了减少用于替换坏块的好块数量,第一超级块中目标通道上可以只有一个为待替换块。基于此,步骤S120中通过预留区域内的好块对第一超级块在目标通道上的至少一个坏块进行替换,包括:通过预留区域内的好块对第一超级块的待替换块进行替换,各个待替换块经替换后作为第二坏块。
另一些实施例中,通过预留区域内的好块对第一超级块的待替换块进行替换,包括:判断数据存储区域中同一通道内属于预留区域的好块总数GB是否小于属于第一超级块的待替换坏块总数BB;对任一通道,若好块总数GB不小于待替换坏块总数BB,则通过预留区域内的好块对同一通道内的待替换块进行替换,反之则数据存储区域中无坏块的超级块内选择好块来进行坏块的替换,从而尽可能使得所有第一超级块都能够从多通道间性能严重失衡恢复到性能稍微失衡。
应当理解的是,上述好块总数GB和待替换坏块总数BB都应该提前统计,如图3和图4所示,各个通道下面标示了属于预留区域的好块总数GB以及属于第一超级块的待替换坏块总数BB。图3中,所有通道的好块总数GB都不小于待替换坏块总数BB,因而第二超级块内的好块足够待替换坏块进行替换;图4中,Channel0的好块总数GB=0,待替换坏块总数BB=1,即Channel0的好块总数GB小于待替换坏块总数BB,因而从超级块SuperBlock0内选择好块来替换第一超级块SuperBlock4内Channel0中Plane0的坏块。
需要说明的是,超级块SuperBlock0的一个好块经替换后成为了第二好块,此情况下:若写超级块SuperBlock0,则超级块SuperBlock0内Channel0中Plane0的好块不与超级块SuperBlock0内其它好块并行;若写超级块SuperBlock4,则超级块SuperBlock0内Channel0中Plane0的好块与超级块SuperBlock4内好块并行。该过程中,超级块SuperBlock0类似于超级块SuperBlock2或SuperBlock3,都是无法满负荷运行的超级块,但由于超级块SuperBlock0内没有任何一个通道空转,因而不存在多通道间性能严重失衡的问题。
相应于上述存储器坏块的管理方法,本公开实施例还提供了一种存储器的写操作方法,所述存储器的数据存储区域包括用户区域和预留区域,所述用户区域内各个超级块通过并行方式写数据,所述存储器的块经过以上所述的任一种管理方法管理,所述写操作方法包括:根据位置信息以及替换关联信息向存储器内写入数据,其中,若基于位置信息确定写第一坏块,则跨过该第一坏块以便继续写下一个块;若基于替换关联信息确定写第二坏块,则根据替换关联信息将数据写入替换该第二坏块的好块中。
相应于上述存储器的写操作方法,本公开实施例还提供了一种存储器。图5所示为本公开所提供存储器的结构示意图,参照图5,存储器100包括存储单元110和处理单元120,所述处理单元120通过执行以上所述的写操作方法使存储单元110内写入数据,其中,所述存储器的块设置在存储单元110内且存储单元110内位于用户区域的各个超级块通过并行方式写数据。这样,存储单元110避免多通道间的性能严重失衡,并且也能够使得存储器避免因存储单元110内同一面坏块太多而作废。应当理解的是,这里对存储单元110内通道数量以及超级块数量不作限定。
此外,在本文中,所含术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后应说明的是:显然,上述实施例仅仅是为清楚地说明本公开所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本公开的保护范围之中。
Claims (10)
1.一种存储器块的管理方法,其特征在于,所述存储器的数据存储区域包括用户区域和预留区域,所述用户区域内各个超级块通过并行方式写数据,所述管理方法包括:
从所述用户区域的多个超级块中确定第一超级块,所述第一超级块为在至少一个通道内的所有块皆为坏块的超级块且该通道为目标通道;
通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,其中,所述用户区域内未被替换的坏块为第一坏块且在写数据过程中略过所述第一坏块以便写下一个块,被替换的坏块为第二坏块且在写数据过程中将数据写到所述第二坏块的替换块上;
生成所述第一坏块在所述数据存储区域内的位置信息以及所述第二坏块被好块替换的替换关联信息。
2.根据权利要求1所述的管理方法,其特征在于,从所述用户区域的多个超级块中确定第一超级块,包括:
获取所述存储器内各通道所包括面的数量,以得到第一阈值;
将所述用户区域中各超级块的坏块数量与所述第一阈值进行比较,并将坏块数量不小于所述第一阈值的超级块确定为候选超级块;
从所述候选超级块中,确定至少一个通道内的所有块皆为坏块的超级块为所述第一超级块。
3.根据权利要求2所述的管理方法,其特征在于,所述用户区域和所述预留区域基于坏块数量预先配置,其中,所述预留区域包括所述数据存储区域中坏块数量不小于第二阈值的超级块,以及所述第二阈值大于所述第一阈值。
4.根据权利要求1所述的管理方法,其特征在于,所述第一超级块为多个,通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,包括:优先对坏块数量较少的所述第一超级块进行替换。
5.根据权利要求4所述的管理方法,其特征在于,
通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,还包括:将多个所述第一超级块按坏块数量进行排序,得到超级块序列;
以及,优先对坏块数量较少的所述第一超级块进行替换,是基于所述超级块序列进行的。
6.根据权利要求1所述的管理方法,其特征在于,
所述第一超级块在所述目标通道上只有一个坏块为待替换块;
通过所述预留区域内的好块对所述第一超级块在所述目标通道上的至少一个坏块进行替换,包括:通过所述预留区域内的好块对所述第一超级块的所述待替换块进行替换。
7.根据权利要求6所述的管理方法,其特征在于,通过所述预留区域内的好块对所述第一超级块的所述待替换块进行替换,包括:
判断所述数据存储区域中同一通道内属于所述预留区域的好块总数是否小于属于所述第一超级块的待替换坏块总数;
对任一通道,若所述好块总数不小于所述待替换坏块总数,则通过所述预留区域内的好块对同一通道内的所述待替换块进行替换。
8.根据权利要求7所述的管理方法,其特征在于,还包括:
对任一通道,若所述好块总数小于所述待替换坏块总数,则从所述数据存储区域中无坏块的超级块内选择好块来进行坏块的替换。
9.一种存储器的写操作方法,其特征在于,所述存储器的数据存储区域包括用户区域和预留区域,所述用户区域内各个超级块通过并行方式写数据,所述存储器的块经过权利要求1-8中任一项所述的管理方法管理,所述写操作方法包括:
根据所述位置信息以及所述替换关联信息,向所述存储器内写入数据,其中,
若基于所述位置信息确定写所述第一坏块,则跨过该第一坏块以便继续写下一个块;
若基于所述替换关联信息确定写所述第二坏块,则根据所述替换关联信息将数据写入替换该第二坏块的好块中。
10.一种存储器,其特征在于,包括:存储单元和处理单元,其中,所述处理单元通过执行权利要求9所述的写操作方法使所述存储单元内写入数据,所述存储器的块设置在所述存储单元内且所述存储单元内位于用户区域的各个超级块通过并行方式写数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110500480.8A CN113220508B (zh) | 2021-05-08 | 2021-05-08 | 存储器块的管理方法、存储器的写操作方法以及存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110500480.8A CN113220508B (zh) | 2021-05-08 | 2021-05-08 | 存储器块的管理方法、存储器的写操作方法以及存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113220508A CN113220508A (zh) | 2021-08-06 |
CN113220508B true CN113220508B (zh) | 2022-09-23 |
Family
ID=77093987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110500480.8A Active CN113220508B (zh) | 2021-05-08 | 2021-05-08 | 存储器块的管理方法、存储器的写操作方法以及存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113220508B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024020929A1 (en) * | 2022-07-28 | 2024-02-01 | Micron Technology, Inc. | Short stripe repair in memory systems |
CN115687171B (zh) * | 2022-10-26 | 2023-06-06 | 深圳三地一芯电子股份有限公司 | 闪存块绑定方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200048978A (ko) * | 2018-10-31 | 2020-05-08 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104360958A (zh) * | 2014-12-09 | 2015-02-18 | 哈尔滨工业大学 | 基于块保留区替换的坏块管理系统及管理方法 |
KR102645572B1 (ko) * | 2016-11-29 | 2024-03-11 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작 방법 |
TWI617917B (zh) * | 2017-08-28 | 2018-03-11 | 慧榮科技股份有限公司 | 用以優化資料儲存裝置之資料儲存方法及其資料儲存裝置 |
KR20190073125A (ko) * | 2017-12-18 | 2019-06-26 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10672497B2 (en) * | 2018-04-03 | 2020-06-02 | SK Hynix Inc. | Memory system and method for bad block management |
TWI668575B (zh) * | 2018-07-26 | 2019-08-11 | 慧榮科技股份有限公司 | 資料儲存裝置以及非揮發式記憶體控制方法 |
KR20200038812A (ko) * | 2018-10-04 | 2020-04-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
CN111045603B (zh) * | 2019-11-29 | 2022-11-22 | 苏州浪潮智能科技有限公司 | 一种固态硬盘的坏块替换方法和装置 |
CN112527201B (zh) * | 2020-12-11 | 2022-08-09 | 成都佰维存储科技有限公司 | Ssd坏块替换方法、装置、可读存储介质及电子设备 |
-
2021
- 2021-05-08 CN CN202110500480.8A patent/CN113220508B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200048978A (ko) * | 2018-10-31 | 2020-05-08 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN113220508A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113220508B (zh) | 存储器块的管理方法、存储器的写操作方法以及存储器 | |
US9817588B2 (en) | Memory device and operating method of same | |
CN103577121B (zh) | 一种基于Nand Flash的高可靠线性文件存取方法 | |
US8924636B2 (en) | Management information generating method, logical block constructing method, and semiconductor memory device | |
CN101582052B (zh) | 存储器模组及于存储器模组中实现平均磨损的方法 | |
US8332576B2 (en) | Data reading method for flash memory and controller and storage system using the same | |
US7882300B2 (en) | Apparatus and method for managing nonvolatile memory | |
CN100578470C (zh) | 基于裸设备的音视频数据存取方法和装置 | |
CN102135942B (zh) | 一种存储设备中实现损耗均衡的方法及存储设备 | |
CN103577574B (zh) | 一种基于nand flash的高可靠线性文件系统 | |
US20130198437A1 (en) | Memory management device and memory management method | |
US20090307412A1 (en) | Memory management method for non-volatile memory and controller using the same | |
CN103440205B (zh) | 一种机顶盒数据存储方法及装置 | |
CN105159915A (zh) | 可动态适应的lsm树合并方法及系统 | |
JP4666080B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
TWI506422B (zh) | 用來管理具有多通道、多途徑的記憶裝置之方法以及相關之記憶裝置及其控制器 | |
JP2009510552A (ja) | フラッシュメモリメディアにおけるデータ管理方法 | |
CN1466060A (zh) | 闪速存储器文件系统 | |
JP2008152909A (ja) | 不揮発性データ保存装置の静的データ領域の検出方法、磨耗度平準化方法及びデータユニットの併合方法とその装置 | |
CN101241471A (zh) | 快闪存储器系统及其垃圾收集方法 | |
CN1516835A (zh) | 数据存储装置 | |
CN104360957A (zh) | 一种维持闪存损耗均衡的方法 | |
TWI459198B (zh) | 記憶體儲存裝置、其記憶體控制器與有效資料識別方法 | |
US20100205357A1 (en) | Memory controller, memory system with memory controller, and method of controlling flash memory | |
TW202328921A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310051 room c1-604, building C, No. 459, Qianmo Road, Xixing street, Binjiang District, Hangzhou, Zhejiang Province Applicant after: Lianyun Technology (Hangzhou) Co.,Ltd. Address before: 6 / F, block C1, spotlight center, 459 Qianmo Road, Binjiang District, Hangzhou City, Zhejiang Province, 310051 Applicant before: MAXIO TECHNOLOGY (HANGZHOU) Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |