CN114385084B - 坏块表继承方法及其存储装置 - Google Patents
坏块表继承方法及其存储装置 Download PDFInfo
- Publication number
- CN114385084B CN114385084B CN202210034811.8A CN202210034811A CN114385084B CN 114385084 B CN114385084 B CN 114385084B CN 202210034811 A CN202210034811 A CN 202210034811A CN 114385084 B CN114385084 B CN 114385084B
- Authority
- CN
- China
- Prior art keywords
- bad block
- block table
- storage
- original
- storage module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000003044 adaptive effect Effects 0.000 claims description 10
- 238000001514 detection method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000005299 abrasion Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000013112 stability test Methods 0.000 description 1
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/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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]
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- 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/0653—Monitoring storage devices or 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7204—Capacity control, e.g. partitioning, end-of-life degradation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
Abstract
本申请公开了一种坏块表继承方法及其存储装置。坏块表继承方法应用于存储装置的主控芯片且包括以下步骤:对存储装置的存储模块进行扫描检测,以生成原始坏块表,并存储在存储模块的第一存储位置,其中,原始坏块表记录存储模块中每一个平面的坏块信息;以及对存储模块进行低级格式化操作时,读取原始坏块表,并基于存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在存储模块的第二存储位置,其中,系统坏块表记录多平面模式对应的坏块信息。因此,可保证存储装置损坏不认盘或更新固件时仍可获取原始坏块表,且存储装置更换操作的平面模式时,也可完整继承原始坏块表。
Description
技术领域
本申请涉及数据存储技术领域,尤其涉及一种坏块表继承方法及其存储装置。
背景技术
随着存储装置的应用领域日益广泛,对存储装置的数据可靠性和操作效率的要求也越来越高。因此,坏块管理成为至关重要的议题。
所述坏块是指存储装置的存储模块中不可用的块(block),可以分为两种:原厂坏块和新增坏块。其中,原厂坏块是指存储模块在出厂时就存在不符合厂商标准的块;新增坏块是指在存储模块使用过程中因为磨损而导致存在无法正常操作或无法达到厂商标准的块。所述坏块管理是通过记录存储模块的坏块信息的坏块表(Defect Block Table)进行管理,使得存储装置操作存储模块时可以跳过坏块,防止操作到坏块,进而避免影响存储装置可靠性和效率。
现有的存储装置会通过稳定性测试过程,以存储装置所操作的平面(plane)数为单元记录原厂坏块和新增坏块,生成坏块表。然而,上述生成坏块表的方式存在局限性,例如:当存储装置损坏不认盘或更新固件时,所述坏块表就会丢失;当存储装置更换操作的平面模式时,无法继承所述坏块表。因此,坏块表继承方法是存储装置研发过程中的重要环节。
发明内容
本申请实施例提供一种坏块表继承方法及其存储装置,可解决现有技术中,存储装置损坏不认盘或更新固件时,存在坏块表丢失的问题,以及存储装置更换操作的平面模式时,存在无法继承坏块表的问题。
为了解决上述技术问题,本申请是这样实现的:
本申请提供了一种坏块表继承方法,应用于存储装置的主控芯片。所述坏块表继承方法包括以下步骤:对存储装置的存储模块进行扫描检测,以生成原始坏块表,并存储在存储模块的第一存储位置,其中,原始坏块表记录存储模块中每一个平面的坏块信息;以及对存储模块进行低级格式化操作时,读取原始坏块表,并基于存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在存储模块的第二存储位置,其中,系统坏块表记录多平面(multi-plane)模式对应的坏块信息。
本申请提供了一种存储装置,其包括:存储模块和主控芯片,存储模块包括第一存储位置与第二存储位置,主控芯片包括微处理器,微处理器连接存储模块。微处理器用于对所述存储模块进行扫描检测,以生成原始坏块表,并存储在第一存储位置;以及对存储模块进行低级格式化操作时,读取原始坏块表,并基于存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在第二存储位置;其中,原始坏块表记录存储模块中每一个平面的坏块信息,系统坏块表记录多平面模式对应的坏块信息。
在本申请实施例中,坏块表继承方法及其存储装置通过以单平面数为单元所生成的原始坏块表存储在存储模块的第一存储位置,及对原始坏块表进行继承自适应机制所生成的系统坏块表存储在存储模块的第二存储位置,可保证在存储模块的第一存储位置没有损坏的前提下,原始坏块表不会因存储装置在整个系统(whole system)状态下损坏不认盘或更新固件而丢失,并且通过系统坏块表实现继承原始坏块表的功效。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为依据本申请的存储装置的一实施例框图;
图2为图1的主控芯片生成原始坏块表的一实施例示意图;
图3为图1的主控芯片生成系统坏块表的一实施例示意图;
图4为依据本申请坏块表继承方法的一实施例方法流程图;以及
图5为依据本申请坏块表继承方法的另一实施例方法流程图。
具体实施方式
以下将配合相关附图来说明本发明的实施例。在这些附图中,相同的标号表示相同或类似的组件或方法流程。
必须了解的是,使用在本说明书中的“包含”、“包括”等词,是用于表示存在特定的技术特征、数值、方法步骤、作业处理、组件和/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、组件、组件,或以上的任意组合。
必须了解的是,当组件描述为“连接”或“耦接”至另一组件时,可以是直接连结、或耦接至其他组件,可能出现中间组件。相反地,当组件描述为“直接连接”或“直接耦接”至另一组件时,其中不存在任何中间组件。
请参阅图1,其为依据本申请的存储装置的一实施例框图。如图1所示,存储装置100包括:存储模块110和主控芯片130,存储模块110包括第一存储位置与第二存储位置,主控芯片130包括微处理器132,微处理器132连接存储模块110。其中,存储装置100可为但不限于固态硬盘(solid state drive,SSD);存储模块110可包括多个闪存芯片(例如:8、16或32个与非型闪存(Nand Flash)芯片),每一片闪存芯片可包括一个或多个逻辑单元号(Logical Unit Number,LUN)(例如:4或8个逻辑单元号),一个逻辑单元号可包括多个平面(plane),每一个平面可包括多个块(block),每一个块可包括多个页(page);存储模块110中,最小写入的单元是页(例如:4千字节(kilobyte)或512字节(byte)),且不支持数据的覆盖,即写入操作只能在空闲或者已擦除的单元内进行,而最小擦除的单元为块;存储模块110具有存储装置100掉电时不会丢失存储数据的特性。
请参阅图1,微处理器132用于对存储模块110进行扫描检测,以生成原始坏块表,并存储在第一存储位置;以及对存储模块110进行低级格式化操作(low level format,LLF)时,读取原始坏块表,并基于存储装置100所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在第二存储位置。其中,原始坏块表记录存储模块110中每一个平面的坏块信息,系统坏块表记录多平面模式对应的坏块信息。其中,微处理器132需要先确认预留的第一存储位置不是坏块,并将第一存储位置擦除一遍,以供后续存储原始坏块表;第二存储位置由低级格式化时动态分配。
具体地,存储模块110所包括的与非型闪存芯片在出厂时已经存在的每一个平面中的坏块,可以通过NAND规范(NAND SPEC)规定的方式扫描原厂坏块标记,以此判断存储模块110中待测的块是否在出厂时即标记为坏块;若是,则不需进行检测,并直接判定待测的块为坏块;若否,则进行坏块检测,以判定待测的块是否为坏块。在对存储模块110的每一块进行扫描检测后,微处理器132结合原厂坏块标记与坏块检测的结果生成原始坏块表,并存储在第一存储位置。换言之,原厂坏块和新增坏块的坏块信息都被记录在原始坏块表,并一直被保留(保护)。在存储模块110的第一存储位置没有损坏的前提下,原始坏块表不会因存储装置100在whole system损坏不认盘或更新固件时而丢失。其中,原始坏块表为存储装置100以单平面为单位的坏块信息,坏块信息可包括坏块地址信息。然后,在低级格式化时,微处理器132会先读取原始坏块表,再根据存储装置100所操作的多平面模式(例如:二平面或四平面)生成对应的系统坏块表,并存储在第二存储位置,使得原始坏块表一直记录在存储模块110的第一存储位置,且无论经过多少次低级格式化都会保留,而系统坏块表实现继承原始坏块表。需注意的是,每一次低级格式化后所生成的系统坏块表可一直记录在存储模块110的第二存储位置(所述第二存储位置由低级格式化时动态分配);更详细地说,每一次低级格式化都会擦除第二存储位置,并重新将系统坏块表写到第二存储位置的第一份;在whole system状态下,如果有新增坏块(即存储模块110存在早衰的块),会更新第二存储位置记录的系统坏块表,并写到第二存储位置的第二份;当第二存储位置都被写完,又需要更新系统坏块表时,会自动将最旧的(即第一份)系统坏块表擦除,写入新的系统坏块表(即循环利用第二存储位置)。
在一示例中,存储装置100所操作的多平面模式为两平面(2-plane)模式(即存储装置100发送一次指令,对一个与非型闪存芯片的两个平面同时进行读-写-擦的操作),使得微处理器132在低级格式化时所生成对应的系统坏块表为两平面模式的坏块地址信息。
在另一示例中,存储装置100所操作的多平面模式为四平面(4-plane)模式(即存储装置100发送一次指令,对一个与非型闪存芯片的四个平面同时进行读-写-擦的操作),使得微处理器132在低级格式化时所生成对应的系统坏块表为四平面模式的坏块地址信息。
在一实施例中,微处理器132还可用于擦除第一存储位置所存储的原始坏块表之后,对存储模块110重新进行扫描检测时,生成新原始坏块表;将生成的新原始坏块表写入至第一存储位置。也就是说,只有需要重新对存储模块110进行扫描检测时,才会擦除原先的原始坏块表,并更新为新生成的原始坏块表。
在一实施例中,主控芯片130还可包括缓冲存储器134,连接微处理器132。其中,缓冲存储器134用于存储微处理器132上运行的操作指令所暂时需要的数据,缓冲存储器134可为动态随机存取存储器(dynamic random access memory,DRAM)或静态随机存取存储器(static random access memory,SRAM)之类的易失性存储器。
在一实施例中,请参阅图1与图2,图2为图1的主控芯片生成原始坏块表的一实施例示意图,微处理器132还可用于在缓冲存储器134申请一段存储空间50并初始化(即将存储空间50中的每一个比特位设置为0),其中,存储空间50的一位比特位对应存储模块110的一个块(即存储空间50的比特位的数量与存储模块110所包括的块数相同);以及扫描检测存储模块110的每一个块,以将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块(即可正常运作的块),并生成原始坏块表。具体地,微处理器132结合原厂坏块标记与坏块检测的结果,通过记录存储空间50的比特位的取值来区分存储模块110的每一个块为坏块或正常块,进而生成原始坏块表。
在一示例中,微处理器132将被标记为坏块或者检测到为坏块的块所对应的比特位设置为1;以及将被标示为正常块或者检测到为正常块的块所对应的比特位设置为0。
在另一示例中,微处理器132将被标记为坏块或者检测到为坏块的块所对应的比特位设置为0;以及将被标示为正常块或者检测到为正常块的块所对应的比特位设置为1。
以下内容系依据原始坏块表执行自适应继承程序以生成系统坏块表的说明。在一实施例中,请参阅图1与图3,图3为图1的主控芯片生成系统坏块表的一实施例示意图,微处理器132还可用于对存储模块110进行低级格式化操作时,在缓冲存储器134申请两段存储空间60、70并初始化(即将两段存储空间中的每一个比特位设置为0);读取原始坏块表,并存储在所述两段存储空间其中之一(即存储空间60);以存储装置100所操作的平面数为单位(例如:两个平面或四个平面),解析存储在所述两段存储空间其中之一的原始坏块表,以自适应生成系统坏块表,并存储于所述两段存储空间其中之另一(例如:所述两段存储空间其中之另一的一位比特位对应同时进行两个平面或四个平面操作的多个块)(即存储空间70);以及将存储于所述两段存储空间其中之另一(即存储空间70)的系统坏块表存储在存储模块110的第二存储位置。举例而言,微处理器132基于存储装置100单平面模式操作时对应的原始坏块表,以N个平面(例如:两个平面或四个平面)为单位进行解析,并基于解析结果将同时进行N个平面操作的多个块所对应的比特位设置为不同的取值来记录N平面模式的坏块地址信息(即生成系统坏块表),及将系统坏块表存储于存储模块110的第二存储位置。其中,存储系统坏块表的存储空间的大小小于存储原始坏块表的存储空间的大小。若以两个平面进行解析,则系统坏块表的存储空间为原始坏块表的存储空间的1/2;若以四个平面进行解析,则系统坏块表的存储空间为原始坏块表的存储空间的1/4。
请参阅图1和图4,图4为依据本申请坏块表继承方法的一实施例方法流程图。为了方便说明起见,图2的坏块表继承方法将配合图1的存储装置100进行说明,但不以此为限,任何所属技术领域中的技术人员,在不脱离本申请的精神和范围内,当可对作各种更动与润饰。如图2所示,坏块表继承方法包括以下步骤:对存储装置100的存储模块110进行扫描检测,以生成原始坏块表,并存储在存储模块110的第一存储位置,其中,原始坏块表记录存储模块中每一个平面的坏块信息(步骤210);以及对存储模块110进行低级格式化操作时,读取原始坏块表,并基于存储装置100所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在存储模块110的第二存储位置,其中,系统坏块表记录多平面模式对应的坏块信息(步骤220)。通过步骤210至步骤220,可在存储模块110的第一存储位置没有损坏的前提下,保证原始坏块表不会因存储装置100在whole system状态下损坏不认盘或更新固件而丢失,并且系统坏块表实现继承原始坏块表的功效。详细说明可以参考上述存储装置100的相关描述,在此不再赘述。
在一实施例中,步骤210所述对存储装置100的存储模块110进行扫描检测,以生成原始坏块表,包括:在缓冲存储器134申请一段存储空间并初始化,其中,存储空间的一位比特位对应存储模块的一个块;以及扫描检测存储模块的每一个块,以将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块,并生成原始坏块表。在一示例中,所述将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块包括:将被标记为坏块或者检测到为坏块的块所对应的比特位设置为1;以及将被标示为正常块或者检测到为正常块的块所对应的比特位设置为0。在另一示例中,所述将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块包括:将被标记为坏块或者检测到为坏块的块所对应的比特位设置为0;以及将被标示为正常块或者检测到为正常块的块所对应的比特位设置为1。详细说明可以参考上述存储装置100的相关描述,在此不再赘述。
在一实施例中,步骤220可包括:对存储模块110进行低级格式化操作时,在缓冲存储器134申请两段存储空间并初始化;读取原始坏块表,并存储在两段存储空间其中之一;以存储装置100所操作的平面数为单位,解析存储在两段存储空间其中之一的原始坏块表,以自适应生成系统坏块表,并存储于两段存储空间其中之另一;以及将存储于两段存储空间其中之另一的系统坏块表存储在存储模块110的第二存储位置。详细说明可以参考上述存储装置100的相关描述,在此不再赘述。
在一实施例中,步骤220所述的自适应继承程序可包括:以N平面为单位进行解析,并基于解析结果将同时进行N平面操作的多个块所对应的比特位设置为不同的取值来记录N平面模式的坏块信息,其中N大于1。详细说明可以参考上述存储装置100的相关描述,在此不再赘述。
在一实施例中,请参阅图1和图5,图5为依据本申请坏块表继承方法的另一实施例方法流程图。如图5所示,坏块表继承方法除了包括步骤210和步骤220之外,还可包括:擦除第一存储位置所存储的原始坏块表之后,对存储模块110重新进行扫描检测时,生成新的原始坏块表(步骤230);以及将生成的新的原始坏块表写入至第一存储位置(步骤240)。详细说明可以参考上述存储装置100的相关描述,在此不再赘述。
综上所述,本申请实施例中,坏块表继承方法及其存储装置通过以单平面数为单元所生成的原始坏块表存储在存储模块的第一存储位置,及对原始坏块表进行继承自适应机制所生成的系统坏块表存储在存储模块的第二存储位置,可保证在存储模块的第一存储位置没有损坏的前提下,原始坏块表不会因存储装置在whole system状态下损坏不认盘或更新固件而丢失,并且通过系统坏块表实现继承原始坏块表的功效。另外,只有需要重新对存储模块进行扫描检测时,才会擦除第一存储位置原先存储的原始坏块表,并将生成的新原始坏块表写入至第一存储位置。
虽然在本申请的图式中包含了以上描述的组件,但不排除在不违反发明的精神下,使用更多其他的附加组件,已达成更佳的技术效果。
虽然本发明使用以上实施例进行说明,但需要注意的是,这些描述并非用于限缩本发明。相反地,此发明涵盖了所属技术领域中的技术人员显而易见的修改与相似设置。所以,权利要求范围须以最宽广的方式解释来包含所有显而易见的修改与相似设置。
Claims (10)
1.一种坏块表继承方法,应用于存储装置的控制器,其特征在于,包括以下步骤:
对所述存储装置的存储模块进行扫描检测,以生成原始坏块表,并存储在所述存储模块的第一存储位置,其中,所述原始坏块表记录所述存储模块中每一个平面的坏块信息;以及
对所述存储模块进行低级格式化操作时,读取所述原始坏块表,并基于所述存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在所述存储模块的第二存储位置,其中,所述系统坏块表记录所述多平面模式对应的坏块信息;
其中,所述自适应继承程序包括:以N平面为单位进行解析,并基于解析结果将同时进行N平面操作的多个块所对应的比特位设置为不同的取值来记录N平面模式的坏块信息,其中N大于1。
2.根据权利要求1所述的坏块表继承方法,其特征在于,还包括:
擦除所述第一存储位置所存储的所述原始坏块表之后,对所述存储模块重新进行扫描检测,生成新的所述原始坏块表;以及
将生成的新的所述原始坏块表写入至所述第一存储位置。
3.根据权利要求1所述的坏块表继承方法,其特征在于,对所述存储装置的存储模块进行扫描检测,以生成原始坏块表的步骤包括:
在缓冲存储器申请一段存储空间并初始化,其中,所述存储空间的一位比特位对应所述存储模块的一个块;以及
扫描检测所述存储模块的每一个块,以将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块,并生成所述原始坏块表。
4.根据权利要求3所述的坏块表继承方法,其特征在于,所述将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块的步骤包括:
将被标记为所述坏块或者检测到为所述坏块的块所对应的比特位设置为1;以及
将被标示为所述正常块或者检测到为所述正常块的块所对应的比特位设置为0。
5.根据权利要求1所述的坏块表继承方法,其特征在于,所述对所述存储模块进行低级格式化操作时,读取所述原始坏块表,并基于所述存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在所述存储模块的第二存储位置的步骤包括:
对所述存储模块进行所述低级格式化操作时,在缓冲存储器申请两段存储空间并初始化;
读取所述原始坏块表,并存储在所述两段存储空间其中之一;
以所述存储装置所操作的平面数为单位,解析存储在所述两段存储空间其中之一的所述原始坏块表,以自适应生成所述系统坏块表,并存储于所述两段存储空间其中之另一;以及
将存储于所述两段存储空间其中之另一的所述系统坏块表存储在所述存储模块的所述第二存储位置。
6.一种存储装置,其特征在于,包括:
存储模块,包括第一存储位置与第二存储位置;以及
主控芯片,包括:
微处理器,连接所述存储模块,用于对所述存储模块进行扫描检测,以生成原始坏块表,并存储在所述第一存储位置;以及对所述存储模块进行低级格式化操作时,读取所述原始坏块表,并基于所述存储装置所操作的多平面模式执行自适应继承程序,以生成系统坏块表,并存储在所述第二存储位置;其中,所述原始坏块表记录所述存储模块中每一个平面的坏块信息,所述系统坏块表记录所述多平面模式对应的坏块信息,所述自适应继承程序包括:以N平面为单位进行解析,并基于解析结果将同时进行N平面操作的多个块所对应的比特位设置为不同的取值来记录N平面模式的坏块信息,其中N大于1。
7.根据权利要求6所述的存储装置,其特征在于,所述微处理器还用于擦除所述第一存储位置所存储的所述原始坏块表之后,对所述存储模块重新进行扫描检测,生成新的所述原始坏块表;将生成的新的所述原始坏块表写入至所述第一存储位置。
8.根据权利要求6所述的存储装置,其特征在于,所述主控芯片还包括缓冲存储器,连接所述微处理器;所述微处理器还用于在所述缓冲存储器申请一段存储空间并初始化,其中,所述存储空间的一位比特位对应所述存储模块的一个块;以及扫描检测所述存储模块的每一个块,以将每一个块所对应的比特位设置为不同的取值来表示坏块或正常块,并生成所述原始坏块表。
9.根据权利要求8所述的存储装置,其特征在于,所述微处理器将被标记为所述坏块或者检测到为所述坏块的块所对应的比特位设置为1;以及
将被标示为所述正常块或者检测到为所述正常块的块所对应的比特位设置为0。
10.根据权利要求6所述的存储装置,其特征在于,所述主控芯片还包括缓冲存储器,连接所述微处理器;所述微处理器还用于对所述存储模块进行所述低级格式化操作时,在所述缓冲存储器申请两段存储空间并初始化;读取所述原始坏块表,并存储在所述两段存储空间其中之一;以所述存储装置所操作的平面数为单位,解析存储在所述两段存储空间其中之一的所述原始坏块表,以自适应生成所述系统坏块表,并存储于所述两段存储空间其中之另一;以及将存储于所述两段存储空间其中之另一的所述系统坏块表存储在所述第二存储位置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210034811.8A CN114385084B (zh) | 2022-01-13 | 2022-01-13 | 坏块表继承方法及其存储装置 |
TW111113554A TWI788252B (zh) | 2022-01-13 | 2022-04-08 | 壞塊表繼承方法及其儲存裝置 |
US17/932,309 US20230221868A1 (en) | 2022-01-13 | 2022-09-15 | Method for inheriting defect block table and storage device thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210034811.8A CN114385084B (zh) | 2022-01-13 | 2022-01-13 | 坏块表继承方法及其存储装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114385084A CN114385084A (zh) | 2022-04-22 |
CN114385084B true CN114385084B (zh) | 2023-09-19 |
Family
ID=81201109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210034811.8A Active CN114385084B (zh) | 2022-01-13 | 2022-01-13 | 坏块表继承方法及其存储装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230221868A1 (zh) |
CN (1) | CN114385084B (zh) |
TW (1) | TWI788252B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923448A (zh) * | 2010-02-08 | 2010-12-22 | 安凯(广州)微电子技术有限公司 | 一种nand闪存的转换层读写方法 |
CN103593303A (zh) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | 一种坏块表存放方法、装置以及与非门型非易失存储器 |
CN111309638A (zh) * | 2018-12-12 | 2020-06-19 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN111354406A (zh) * | 2018-12-20 | 2020-06-30 | 爱思开海力士有限公司 | 存储器装置及其操作方法以及包括其的存储器系统 |
CN112114740A (zh) * | 2019-06-21 | 2020-12-22 | 爱思开海力士有限公司 | 存储装置及其操作方法 |
CN113377687A (zh) * | 2020-03-09 | 2021-09-10 | 爱思开海力士有限公司 | 存储器控制器及其操作方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9595352B2 (en) * | 2014-03-17 | 2017-03-14 | Seagate Technology Llc | Manufacturer self-test for solid-state drives |
US10289480B2 (en) * | 2015-03-12 | 2019-05-14 | Toshiba Memory Corporation | Memory system |
CN108231133A (zh) * | 2017-12-28 | 2018-06-29 | 东莞记忆存储科技有限公司 | 一种Nand Flash坏块的使用方法 |
TWI661299B (zh) * | 2018-04-30 | 2019-06-01 | 大陸商深圳大心電子科技有限公司 | 記憶體管理方法以及儲存控制器 |
CN109918022B (zh) * | 2019-02-22 | 2021-11-09 | 山东华芯半导体有限公司 | 一种ssd开卡坏块表继承方法 |
CN110517718B (zh) * | 2019-08-22 | 2021-06-08 | 深圳忆联信息系统有限公司 | 一种有效筛选颗粒新增坏块的方法及其系统 |
CN110837345A (zh) * | 2019-11-08 | 2020-02-25 | 杭州华澜微电子股份有限公司 | 一种坏块表的存放方法及装置 |
KR20210111390A (ko) * | 2020-03-02 | 2021-09-13 | 삼성전자주식회사 | 배드 블록 검출 시간을 단축하기 위한 메모리 장치 및 방법 |
KR20210123528A (ko) * | 2020-04-03 | 2021-10-14 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 이를 포함하는 저장장치 및 그 동작 방법 |
-
2022
- 2022-01-13 CN CN202210034811.8A patent/CN114385084B/zh active Active
- 2022-04-08 TW TW111113554A patent/TWI788252B/zh active
- 2022-09-15 US US17/932,309 patent/US20230221868A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923448A (zh) * | 2010-02-08 | 2010-12-22 | 安凯(广州)微电子技术有限公司 | 一种nand闪存的转换层读写方法 |
CN103593303A (zh) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | 一种坏块表存放方法、装置以及与非门型非易失存储器 |
CN111309638A (zh) * | 2018-12-12 | 2020-06-19 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN111354406A (zh) * | 2018-12-20 | 2020-06-30 | 爱思开海力士有限公司 | 存储器装置及其操作方法以及包括其的存储器系统 |
CN112114740A (zh) * | 2019-06-21 | 2020-12-22 | 爱思开海力士有限公司 | 存储装置及其操作方法 |
CN113377687A (zh) * | 2020-03-09 | 2021-09-10 | 爱思开海力士有限公司 | 存储器控制器及其操作方法 |
Non-Patent Citations (1)
Title |
---|
基于SOPC的固态硬盘控制器的系统设计;吴尚儒;《中国优秀硕士学位论文全文数据库 信息科技辑》;I137-30 * |
Also Published As
Publication number | Publication date |
---|---|
US20230221868A1 (en) | 2023-07-13 |
TWI788252B (zh) | 2022-12-21 |
TW202329138A (zh) | 2023-07-16 |
CN114385084A (zh) | 2022-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6388919B2 (en) | Memory controller for flash memory system and method for writing data to flash memory device | |
JP4361774B2 (ja) | 不揮発性メモリシステム内での使用不可能なブロック管理 | |
US7330995B2 (en) | Nonvolatile memory apparatus which prevents destruction of write data caused by power shutdown during a writing process | |
US8190811B2 (en) | Defragmentation of solid state memory | |
US7472331B2 (en) | Memory systems including defective block management and related methods | |
US8484409B2 (en) | Nonvolatile memory controller with logical defective cluster table | |
KR960005895B1 (ko) | 불휘발성 반도체 메모리장치 | |
US8332696B2 (en) | Defect management method for storage medium and system thereof | |
US9213629B2 (en) | Block management method, memory controller and memory stoarge apparatus | |
KR930010981A (ko) | 플래시메모리를 사용한 기억장치 | |
US7315870B2 (en) | Memory controller, flash memory system, and method for recording data on flash memory | |
US7543104B2 (en) | Non-volatile semiconductor device for use in memory card and memory system | |
JP2012517068A (ja) | メモリ装置、メモリ管理装置、およびメモリ管理方法 | |
CN114385084B (zh) | 坏块表继承方法及其存储装置 | |
US20080215833A1 (en) | Information storage device and stored data processing method | |
JP2002288999A (ja) | 半導体メモリ | |
JP3670151B2 (ja) | フラッシュメモリのアクセス方法、フラッシュメモリへアクセスするドライバを備えるシステム、および、フラッシュメモリ | |
CN111949198A (zh) | 一种坏块管理方法、装置和存储设备 | |
JP4332108B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
CN112711378B (zh) | 数据储存方法及读写设备 | |
US20230031193A1 (en) | Memory system and operating method thereof | |
CN114627941A (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN114371816A (zh) | 一种数据存储方法及电子设备 | |
JP4245594B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP2006040484A (ja) | フラッシュメモリモジュール |
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 |