CN110308867B - 存储器系统及其操作方法 - Google Patents
存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN110308867B CN110308867B CN201811534042.8A CN201811534042A CN110308867B CN 110308867 B CN110308867 B CN 110308867B CN 201811534042 A CN201811534042 A CN 201811534042A CN 110308867 B CN110308867 B CN 110308867B
- Authority
- CN
- China
- Prior art keywords
- memory
- block
- super
- superblock
- die
- 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
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/0608—Saving storage space on 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- 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/061—Improving I/O performance
-
- 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
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/06—Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
- G06F7/14—Merging, i.e. combining at least two sets of record carriers each arranged in the same ordered sequence to produce a single set having the same ordered sequence
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- 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/1041—Resource optimization
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Electrotherapy Devices (AREA)
Abstract
本发明涉及一种存储器系统,该存储器系统包括:存储器装置,包括多个管芯,多个管芯的每个包括多个平面,多个平面的每个包括多个存储块;以及控制器,将多个存储块分组为多个超级块,多个超级块的每个具有对应于条件的指定类型,控制器可以在多个超级块之中形成一组第一超级块并且可以管理第一超级块,第一超级块的每个具有好存储块和至少一个坏存储块。
Description
相关申请的交叉引用
本申请要求于2018年3月20日提交的韩国专利申请号为10-2018-0031942的韩国专利申请的优先权,其全部内容通过引用并入本文。
技术领域
各种实施例涉及存储器系统,更具体地,涉及包括非易失性存储器装置的存储器系统及其操作方法。
背景技术
计算机环境范例已经转变至可随时随地使用的普适计算系统。由此,诸如移动电话、数码相机和笔记本电脑的便携式电子装置的使用已经快速增长。这些便携式电子装置通常使用具有用于存储数据的一个或多个存储器装置的存储器系统。存储器系统可以用作便携式电子装置的主存储装置或辅助存储装置。
因为存储器系统与硬盘装置相比不具有移动部件,所以它们提供优良的稳定性、耐久性、高信息访问速度和低功耗。具有这种优点的存储器系统的示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡和固态驱动器(SSD)。
发明内容
各种实施例涉及一种存储器系统及其操作方法,此存储器系统能够通过以下方式管理包括在存储器装置中的多个存储块:将多个存储块分组成超级存储块,并且当第一坏块和第二坏块位于存储器装置的不同位置中时,利用包括第二坏块的另一超级存储块来恢复包括第一坏块的至少一个超级存储块。
在实施例中,一种存储器系统可以包括:存储器装置,其包括多个管芯,每个管芯包括多个平面,每个平面包括多个块;以及控制器,适于将多个存储块分组成多个超级块,每个超级块具有对应于条件的指定类型,控制器可以在多个超级块中形成一组第一超级块,并且可以管理第一超级块,每个第一超级块具有好存储块和至少一个坏存储块。
控制器可以使用第一超级块作为合并操作中的目标超级块,并且控制器在多个超级块中形成一组第二超级块,并且可以管理第二超级块,每个第二超级块仅具有好超级块。
控制器可以使用对应于使用顺序的目标列表来管理待用作合并操作中的目标超级块的第一超级块,并且可以基于超级块的各自优先级来确定目标列表的使用顺序。
控制器可以将第一超级块中的具有相对低擦除-写入周期值的第一超级块设置为第一优先级,将第一超级块中具有相对高擦除-写入周期值的第一超级块设置为比第一优先级低的第二优先级,将第二超级块中具有相对低擦除-写入周期值的第二超级块设置为比第二优先级低的第三优先级,将第二超级块中具有相对高擦除-写入周期值的第二超级块设置为比第三优先级低的第四优先级,并且控制器可以以依据优先级次序的使用顺序来使用优先的超级块。
控制器可以使用状态位映射管理第一超级块的每个中的存储块的状态。
在合并操作中根据目标列表的使用顺序来从第一超级块中选择目标超级块的情况下,控制器可以通过检查状态位映射以识别好存储块来将从源超级块传输的有效数据仅存储在目标超级块的好存储块中。
控制器可以通过将由于被用作合并操作中的目标超级块并且从源超级块传输的有效数据被存储在其中而进入关闭状态的第一超级块分类为第三超级块来管理进入关闭状态的第一超级块,并且在选择第三超级块作为合并操作中的源超级块的情况下,控制器可以根据目标列表的使用顺序首先使用第二超级块作为目标超级块,然后,通过将由于被用作所述合并操作中的源超级块而进入空闲状态的第三超级块再次分类为第一超级块来管理进入空闲状态的第三超级块。
在第二超级块中的某个第二超级块中存在坏存储块的情况下,控制器可以通过合并操作将存储在某个第二超级块中的有效数据移动至目标超级块,然后可以将某个第二超级块管理为第一超级块。
多个管芯中的第一管芯可以联接至第一通道,多个管芯中的第二管芯可以联接至第二通道,第一管芯中的多个平面可以联接至共享第一通道的多个第一通路,并且第二管芯中的多个平面可以联接至共享第二通道的多个第二通路。
控制器可以根据条件对第一管芯的第一平面中的第一块和第一管芯的第二平面中的第二块分组,并且对第二管芯的第三平面中的第三块和第二管芯的第四平面中的第四块分组,控制器可以根据条件对第一管芯的第一平面中的第一块和第二管芯的第三平面中的第三块分组,并且可以对第一管芯的第二平面中的第二块和第二管芯的第四平面中的第四块分组,或者控制器可以根据条件对第一管芯的第一平面中的第一块、第一管芯的第二平面中的第二块、第二管芯的第三平面中的第三块和第二管芯的第四平面中的第四块分组。
在实施例中,提供了一种用于操作存储器系统的方法,存储器系统包括具有多个管芯的存储器装置,每个管芯包括多个平面,每个平面包括多个块,此方法可以包括:将多个存储块分组成多个超级块,每个超级块具有对应于条件的指定类型;以及在多个超级块中形成一组第一超级块,并且管理第一超级块,每个第一超级块具有好存储块和至少一个坏存储块。
此方法可以进一步包括:使用第一超级块作为合并操作中的目标超级块;并且在多个超级块中形成一组第二超级块,并且管理此第二超级块,每个第二超级块仅具有好存储块。
此方法可以进一步包括:使用对应于使用顺序的目标列表来管理待用作合并操作中的目标超级块的超级块;以及基于超级块的各自优先级来确定目标列表的使用顺序。
此确定可以将第一超级块中的具有相对低的擦除-写入周期值的第一超级块设置为第一优先级,将第一超级块中的具有相对高的擦除-写入周期值的第一超级块设置为比第一优先级低的第二优先级,将第二超级块中的具有相对低的擦除-写入周期值的第二超级块设置为比第二优先级低的第三优先级,将第二超级块中具有相对高擦除-写入周期值的第二超级块设置为比第三优先级低的第四优先级,并且可以依据优先级次序的使用顺序来使用优先的超级块。
此方法可以进一步包括:使用状态位映射管理第一超级块的每个中的存储块的状态。
在合并操作中根据目标列表的使用顺序来从第一超级块中选择目标超级块的情况下,可以通过检查状态位映射以识别好存储块来将从源超级块传输的有效数据仅存储在目标超级块的好存储块中。
此方法可以进一步包括:通过将由于被用作合并操作中的目标超级块并且从源超级块传输的有效数据被存储在其中而进入关闭状态的第一超级块分类为第三超级块来管理进入关闭状态的第一超级块;在选择第三超级块作为合并操作中的源超级块的情况下,根据目标列表的使用信息而使用第二超级块作为目标超级块;以及通过将由于被用作源超级块而进入空闲状态的第三超级块再次分类为第一超级块来管理进入空闲状态的第三超级块。
此方法可以进一步包括:在第二超级块中的某个第二超级块中存在坏存储块的情况下,通过合并操作将存储在某个第二超级块中的有效数据移动至目标超级块,然后通过将某个第二超级块分类为第一超级块来管理某个第二超级块。
多个管芯中的第一管芯可以联接至第一通道,多个管芯中的第二管芯可以联接至第二通道,第一管芯中的多个平面可以联接至共享第一通道的多个第一通路,并且第二管芯中的多个平面可以联接至共享第二通道的多个第二通路。
条件可以包括:对第一管芯的第一平面中的第一块和第一管芯的第二平面中的第二块分组,并且对第二管芯的第三平面中的第三块和第二管芯的第四平面中的第四块分组;条件可以包括:对第一管芯的第一平面中的第一块和第二管芯的第三平面中的第三块分组,并且对第一管芯的第二平面中的第二块和第二管芯的第四平面中的第四块分组;或者条件可以包括:对第一管芯的第一平面中的第一块、第一管芯的第二平面中的第二块、第二管芯的第三平面中的第三块和第二管芯的第四平面中的第四块分组。
在实施例中,一种存储器系统可以包括:包括管芯的存储器装置,每个管芯包括平面,每个平面包括块;以及控制器,适于以选择方案将块分组成多个超级块,识别多个超级块之中的第一超级块中的至少一个坏存储块,并且在多个超级块之中搜索第二超级块,以利用第二超级块中的好存储块来替换第一超级块中的至少一个坏存储块,并且形成描述第一超级块中的替换的再生超级块表,至少一个坏存储块和用于替换至少一个坏存储块的好存储块可以位于不同管芯的对应平面中。
附图说明
根据参照附图的以下具体实施方式,本发明的这些和其它特征及优点对于本发明所属领域的技术人员将变得显而易见,其中:
图1是示出包括根据本发明的实施例存储器系统的数据处理系统的框图;
图2是示出图1所示的存储器系统中采用的存储器装置的示例性配置的示意图;
图3是示出图2所示的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图;
图4是示出图2所示的存储器装置的示例性三维结构的示意图;
图5是示出帮助说明根据本发明实施例的存储器系统中使用的超级存储块的概念的示意图;
图6A和图6B是帮助说明在根据本发明实施例的存储器系统中以超级存储块为单位来管理存储块的操作的示意图;
图7是帮助说明在根据本发明实施例的存储器系统中管理包括坏存储块的超级存储块的操作的示意图;
图8A至图8D是帮助说明根据本发明实施例的使用图7中描述的包括坏存储块的超级存储块作为合并操作中的目标超级块的方法的示图;以及
图9至图17是示意性示出根据本发明各种实施例的图1所示的数据处理系统的应用示例的图。
具体实施方式
以下参照附图更详细地描述本发明的各个实施例。然而,注意的是,本发明的元件和特征可以与本文中描述和示出的不同的方式配置或布置。因此,本发明不限于本文阐述的实施例。相反,提供这些实施例使得本公开是彻底且完全的,并且向本发明所属领域的技术人员完全传达本发明。在整个公开中,相同的附图标记在整个本发明的各个附图和实施例中表示相同的部件。而且,在整个说明书中,对“一个实施例”、“另一实施例”等的参考不一定仅针对一个实施例,并且对任何这种措词的不同参考不一定针对相同的实施例。
将理解的是,虽然术语“第一”、“第二”、“第三”等可在本文使用以标识各种元件,但是这些元件不受这些术语限制。这些术语被用于区分一个元件与在其他情况下具有相同或相似名称的另一元件。因此,在不脱离本发明的精神和范围的情况下,以下描述的第一元件也可被称为第二元件或第三元件。
附图不一定按比例绘制,在一些情况下,为了清楚地示出实施例的特征,可能已经夸大了比例。
将进一步理解的是,当一个元件被称为“连接至”或“联接至”另一元件时,它可以直接在其它元件上、连接至或联接至其它元件,或可存在一个或多个中间元件。另外,也将理解的是,当元件被称为在两个元件“之间”时,两个元件之间可以仅有一个元件或也可存在一个或多个中间元件。
本文使用的术语是为了描述特定实施例而不旨在限制本发明。如本文使用的,单数形式也旨在包括复数形式,反之亦然,除非上下文另有清楚地说明。将进一步理解的是,当在该说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,它们指定阐述的元件的存在而不排除一个或多个其它元件的存在或增加。如本文使用的,术语“和/或”包括一个或多个相关的所列项目的任何一个和所有组合。
除非另有限定,否则本文所使用的包括技术术语和科学术语的所有术语具有与本发明所属领域中普通技术人员通常理解的含义相同的含义。将进一步理解的是,诸如在常用词典中限定的那些术语的术语应被理解为具有与它们在本公开的上下文和相关领域中的含义一致的含义并且将不以理想化或过于正式的意义来解释,除非本文如此明确地限定。
在以下描述中,为了提供本发明的彻底理解,阐述了许多具体细节。本发明可在没有一些或全部这些具体细节的情况下被实施。在其它情况下,为了避免不必要地模糊本发明,未详细地描述公知的进程结构和/或进程。
也应注意的是,在一些情况下,对相关领域的技术人员显而易见的是,结合一个实施例描述的特征或元件可单独使用或与另一实施例的其它特征或元件结合使用,除非另有明确说明。
图1是示出包括根据本发明的实施例的存储器系统110的数据处理系统100的框图。
参照图1,数据处理系统100可以包括主机102和存储器系统110。
主机102可包括诸如移动电话、MP3播放器和膝上型计算机的便携式电子装置或诸如台式计算机、游戏机、TV和投影仪的非便携式电子装置中的任一种。
存储器系统110可以响应于主机102的请求来操作以存储用于主机102的数据。存储器系统110的非限制性示例包括固态驱动器(SSD)、多媒体卡(MMC)、安全数字(SD)卡、通用存储总线(USB)装置、通用闪速存储(UFS)装置、标准闪存(CF)卡、智能媒体(SM)卡、个人计算机存储卡国际协会(PCMCIA)卡和记忆棒。MMC可以包括嵌入式MMC(eMMC)、尺寸减小的MMC(RS-MMC)和微型-MMC。SD卡可以包括迷你-SD卡和微型-SD卡
存储器系统110可以由各种类型的存储装置来实施或包括各种类型的存储装置中的任一种。这种存储装置的非限制性示例可以包括诸如DRAM动态随机存取存储器(DRAM)和静态RAM(SRAM)的易失性存储器装置或诸如只读存储器(ROM)、掩膜ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电RAM(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM)和闪速存储器的非易失性存储器装置。闪速存储器可以具有3维(3D)堆叠结构。
存储器系统110可以包括存储器装置150和控制器130。存储器装置150可以存储用于主机120的数据,并且控制器130可以控制将数据存储器装置150中。
控制器130和存储器装置150可以被集成到单个半导体装置中,其可以被包括在如上所例示的各种类型的存储器系统的任一种中。
存储器系统110的非限制性应用示例包括计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板计算机、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑盒、数码相机、数字多媒体广播(DMB)播放器、3维(3D)电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、构建数据中心的存储装置、能够在无线环境下传输/接收信息的装置、构建家庭网络的各种电子装置中的一个、构建计算机网络的各种电子装置中的一个、构建远程信息处理的各种电子装置中的一个、射频识别(RFID)装置或构建计算系统的各种部件中的一个。
存储器装置150可以是非易失性存储器装置,并且即使未被供应电力,也可以保留其中存储的数据。存储器装置150可以通过写入操作来存储从主机102提供的数据。存储器装置150可以通过读取操作将存储在其中的数据提供给主机102。存储器装置150可以包括多个存储器管芯(未示出),每个存储器管芯包括多个平面(未示出),每个平面包括多个存储块152至156,存储块152至156的每一个可以包括多个页面。页面的每一个可以包括联接到字线的多个存储器单元。
控制器130可以响应于来自主机102的请求来控制存储器装置150。例如,控制器130可以将从存储器装置150读取的数据提供给主机102,并且将从主机102提供的数据存储到存储器装置150中。对于该操作,控制器130可以控制存储器装置150的读取操作、写入操作、编程操作和擦除操作。
控制器130可以包括全部经由内部总线操作地联接或电连接的主机接口(I/F)132、处理器134、错误校正码(ECC)组件138、电源管理单元(PMU)140、NAND闪存控制器(NFC)142和存储器144。
主机接口单元132可以被配置为处理主机102的命令和数据,并且可以根据诸如以下的各种接口协议中的一种或多种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-E)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、增强型小型磁盘接口(ESDI)和集成驱动电路(IDE)。
ECC组件138可以检测并且校正从存储器装置150读取的数据中包含的错误。换言之,ECC组件138可以通过在ECC编码进程期间使用的ECC代码对从存储器装置150读取的数据执行错误校正解码进程。根据错误校正解码进程的结果,ECC组件138可以输出信号,例如错误校正成功/失败信号。当错误位的数量大于可校正错误位的阈值时,ECC组件138不能校正错误位,并且可以替代地输出错误校正失败信号。
ECC组件138可以通过诸如低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhuri-Hocquenghem,BCH)码、涡轮码、里德-所罗门(Reed-Solomon,RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)、分组编码调制(BCM)等的编码调制执行错误校正操作。然而,ECC组件138不限于这些错误校正技术。由此,ECC组件138可以包括用于适当的错误校正的所有电路、模块、系统或装置。
PMU 140可管理控制器130中使用和提供的电源。
NFC 142可以用作用于将控制器130和存储器装置150接口连接的存储器/存储接口,使得控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150是闪速存储器或具体地NAND闪速存储器时,NFC142可以在处理器134的控制下生成用于存储器装置150的控制信号以处理输入存储器装置150的数据。NFC 142可以用作用于处理控制器130和存储器装置150之间的命令和数据的接口(例如,NAND闪存接口)。具体地,NFC 142可以支持控制器130和存储器装置150之间的数据传递。
存储器144可以用作存储器系统110和控制器130的工作存储器。存储器144可以存储支持存储器系统110和控制器130的操作的数据。控制器130可以响应于来自主机102的请求来控制存储器装置150执行读取操作、写入操作、编程操作和擦除操作。控制器130可以将从存储器装置150读取的数据提供给主机102,并且可以将从主机102提供的数据存储到存储器装置150中。存储器144可以存储控制器130和存储器装置150执行这些操作所需的数据。
存储器144可以由易失性存储器来实施。例如,存储器144可以由静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)来实施。存储器144可以被设置在控制器130的内部或外部。图1示出了设置在控制器130内的存储器144的示例。在另一实施例中,存储器144可以是具有在存储器144和控制器130之间传递数据的存储器接口的外部易失性存储器。
处理器134可以控制存储器系统110的总体操作。处理器134可以使用固件以控制存储器系统110的总体操作。固件可以被称为闪存转换层(FTL)。
控制器130的处理器134可以包括用于执行存储器装置150的坏块管理操作的管理单元(未示出)。管理单元可以在存储器装置150中的多个存储块152至156中进行检查坏块的坏块管理操作。坏块可以位于在编程操作期间由于NAND闪速存储器的特性而发生编程失败的位置处。管理单元可以将坏块的编程失败数据写入新存储块。在具有3D堆叠结构的存储器装置150中,坏块管理操作可能降低存储器装置150的使用效率和存储器系统110的可靠性。因此,坏块管理操作需要被更可靠地执行。
图2是示出存储器装置150的示例的示意图。
参照图2,存储器装置150可以包括多个存储块:BLOCK0(210)、BLOCK1(220)、BLOCK2(230)至BLOCKN-1(240),并且这些存储块中的每一个可以包括例如2M个页面的多个页面,其数量可以根据电路设计而变化。包括在各个存储块0至N-1中的存储器单元可以是存储1位数据的单层单元(SLC)、或存储2位或更多位数据的多层单元(MLC)。在实施例中,存储器装置150可以包括每一个存储3位数据的多个三层单元(TLC)。在另一实施例中,存储器装置可以包括每一个存储4位数据的四层单元(QLC)。
图3是示出存储器装置150中的存储块的存储器单元阵列的示例性配置的电路图。
参照图3,可以是存储器系统110的存储器装置150中的多个存储块152至156中的任意一个的存储块330可以包括联接到多个相应位线BL0至BLm-1的多个单元串340。每个列的单元串340可以包括一个或多个漏极选择晶体管DST和一个或多个源极选择晶体管SST。在漏极选择晶体管DST和源极选择晶体管SST之间,多个存储器单元MC0至MCn-1可以串联联接。在实施例中,存储器单元晶体管MC0至MCn-1中的每一个可以由能够存储多个位的数据信息的MLC来实施。单元串340中的每一个可以电联接到多个位线BL0至BLm-1中的相应位线。例如,如图3所示,第一单元串联接到第一位线BL0,并且最后单元串联接到最后位线BLm-1。
虽然图3示出NAND闪速存储器单元,但是本发明不限于此方式。注意的是,存储器单元可以是NOR闪速存储器单元,或者包括组合在其中的两种或更多种存储器单元的混合闪速存储器单元。并且,应注意的是,存储器装置可以是包括导电浮栅作为电荷存储层的闪速存储器装置或包括介电层作为电荷存储层的电荷撷取闪存(CTF)。
存储器装置150可以进一步包括电压供应310,其提供包括根据操作模式供给到字线的编程电压、读取电压和通过电压的字线电压。电压供应310的电压产生操作可以由控制电路(未示出)来控制。在控制电路的控制下,电压供应310可以选择存储器单元阵列的存储块(或扇区)中的一个,选择所选择的存储块的字线中的一个,并且如可能所需的那样将字线电压提供给所选择的字线和未选择的字线。
存储器装置150可以包括由控制电路控制的读取/写入电路320。在验证/正常读取操作期间,读取/写入电路320可以用作用于从存储器单元阵列读取数据的读出放大器。在编程操作期间,读取/写入电路320可以根据待存储在存储器单元阵列中的数据用作用于驱动位线的写入驱动器。在编程操作期间,读取/写入电路320可以从缓冲器(未示出)接收待存储到存储器单元阵列中的数据并且可以根据接收的数据将电流或电压供应至位线。读取/写入电路320可以包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器322至326。页面缓冲器322至326中的每一个可以包括多个锁存器(未示出)。
图4是示出存储器装置150的示例性3D结构的示意图。
存储器150可以由2D或3D存储器装置来实施。具体地,如图4所示,存储器装置150可以由具有3D堆叠结构的非易失性存储器装置来实施。当存储器装置150具有3D结构时,存储器装置150可以包括多个存储块BLK0至BLKN-1,每个存储块各自具有3D结构(或竖直结构)。
参照图5至图8给出了关于根据实施例的存储器系统中的存储器装置150的数据处理的详细描述,特别地,在执行与从主机102接收的命令相对应的命令操作和数据管理操作的情况下的数据处理操作的详细描述。
图5是帮助说明根据实施例的存储器系统中使用的超级存储块的概念的示图。
参照图5,可以看到详细示出了图1中所示的存储器系统110的部件之中的存储器装置150的某些部件。
存储器装置150包括多个存储块BLOCK000、BLOCK001、BLOCK002、…和BLOCK00N,BLOCK010、BLOCK011、BLOCK012、…和BLOCK01N,BLOCK100、BLOCK101、BLOCK102、…和BLOCK10N以及BLOCK110、BLOCK111、BLOCK112、…和BLOCK11N。
存储器装置150包括多个存储器管芯,多个存储器管芯可以各自经由用于数据传输的不同通道与控制器130联接。通过示例性而非限制性的方式,存储器装置150包括能够通过第零通道CH0输入/输出数据的第零存储器管芯DIE0以及能够通过第一通道CH1输入/输出数据的第一存储器管芯DIE1。第零通道CH0和第一通道CH1可以交错方式输入/输出数据。
第零存储器管芯DIE0包括多个平面,例如PLANE00和PLANE01,多个平面分别对应于多个通路,例如WAY0和WAY0,多个通路能够通过共享第零通道CH0以交错方案输入/输出数据。
第一存储器管芯DIE1也包括多个平面,例如PLANE10和PLANE11,多个平面分别对应于多个通路,例如WAY2和WAY3,多个通路能够通过共享第一通道CH1以交错方案输入/输出数据。
第零存储器管芯DIE0的第一平面PLANE00包括存储器装置150中的多个存储块之中的设置数量或预定数量的存储块BLOCK000、BLOCK001、BLOCK002、…和BLOCK00N。
第零存储器管芯DIE0的第二平面PLANE01包括存储器装置150中的多个存储块之中的设置数量或预定数量的存储块BLOCK010、BLOCK011、BLOCK012、…和BLOCK01N。
第一存储器管芯DIE1的第一平面PLANE10包括存储器装置150中的多个存储块之中的设置数量或预定数量的存储块BLOCK100、BLOCK101、BLOCK102、…和BLOCK01N。
第一存储器管芯DIE1的第二平面PLANE11包括存储器装置150中的多个存储块之中的设置数量或预定数量的存储块BLOCK110、BLOCK111、BLOCK112、…和BLOCK11N。
以这种方式,多个存储块BLOCK000、BLOCK001、BLOCK002、…和BLOCK00N,BLOCK010、BLOCK011、BLOCK012、…和BLOCK01N,BLOCK100、BLOCK101、BLOCK102、…和BLOCK10N以及BLOCK110、BLOCK111、BLOCK112、…和BLOCK11N可以根据物理地址被划分,使得使用相同通路或相同通道的那些存储块被分组在一起。
通过示例性而非限制性的方式,图5中示出了存储器装置150中包括两个存储器管芯,并且每个存储器管芯中包括两个平面。然而,根据系统配置和/或设计考虑,存储器装置150中的存储器管芯的数量可以多于或少于两个,并且每个存储器管芯中的平面的数量也可以多于或少于两个。同样地,每个平面中的存储块的数量可以根据系统配置和/或设计考虑来不同地调整。
在另一实施例中,存在与以下划分方案不同的划分方案:根据物理位置或定位来划分存储器装置150中的多个存储块,其中物理位置或定位诸如多个存储器管芯DIE0、DIE1或多个平面PLANE00、PLANE01、PLANE10、PLANE11。在该另一实施例中,控制器130可以根据存储块的同时选择和操作来划分多个存储块。也就是说,控制器130可以通过将能够被同时选择的存储块进行分组且从而将多个存储块划分为超级存储块,来对通过根据物理位置的划分方案而被划分成不同管芯或不同平面的多个存储块进行管理。
控制器130如何通过对多个存储块进行分组来生成或构建超级存储块可以根据系统配置或设计要求而不同。将描述三个不同的方案。
第一方案在于,控制器130通过将第零存储器管芯DIE0的第一平面PLANE00中的单个存储块BLOCK000和第二平面PLANE01中的单个存储块BLOCK010分组来生成一个超级存储块A1。当将第一方案应用至第一存储器管芯DIE1时,控制器130可以通过将第一存储器管芯DIE1中的第一平面PLANE10中的单个存储块BLOCK100和第二平面PLANE11中的单个存储块BLCOK110分组来生成一个超级存储块A2。总之,第一方案涉及选择相同存储器管芯的不同平面中的多个存储器以生成并构建超级存储块。
第二方案在于,控制器130通过将第零存储器管芯DIE0的第一平面PLANE00中的一个存储块BLCOK002和第一存储器管芯DIE1的第一平面PLANE10中的另一存储块BLOCK102分组而生成一个超级存储块B1。为了通过再次应用第二方案生成另一超级块,控制器130可以将第零存储器管芯DIE0的第二平面PLANE01中的一个存储块BLOCK012和第一存储器管芯DIE1的第二平面PLANE11中的一个存储块BLOCK112分组。在第二方案中,控制器130可以选择不同存储器管芯的对应平面中的多个存储块来配置超级存储块。
第三方案在于,控制器130通过将第零存储器管芯DIE0的第一平面PLANE00中的第一存储块BLOCK001、第零存储器管芯DIE0的第二平面PLANE01中的第二存储块BLOCK011、第一存储器管芯DIE1的第一平面PLANE10中的第三存储块BLOCK101和第一存储器管芯DIE1的第二平面PLANE11中的第四存储块BLOCK111分组生成一个超级存储块C。在第三方案中,控制器130可以从全部管芯的每个平面中选择单个块以构成超级存储块。
存储块可以分组布置,使得相同超级块中的那些存储块可以通过交错方案而被基本同时地选择,交错方案例如为通道交错方案、存储器管芯交错方案、存储器芯片交错方案或通路交错方案。
图6A和图6B是帮助说明在根据本发明实施例的存储器系统中以超级存储块为单位来管理存储块的操作的示图。
参照图6A,描述了当通过将存储器装置150中的多个存储块划分为超级存储块来管理多个存储块时选择每个超级存储块的方案。
在示出的实施例中,存储器装置150包括八个存储器管芯DIE<0:7>,八个存储器管芯DIE<0:7>中的每一个包括四个平面PLANE<0:3>以使八个存储器管芯DIE<0:7>包括总共32个平面PLANE<0:3>*8,并且32个平面PLANE<0:3>*8中的每一个包括1024个存储块BLOCK<0:1023>。换言之,图6A的示例性存储器装置150包括总共32768个存储块BLOCK<0:1023>*32。
在存储器装置150中,八个存储器管芯DIE<0:7>中的总共32个平面PLANE<0:3>*8被布置成通过两个通道CH<0:1>和八个通路WAY<0:7>来输入/输出数据。如所示出的,存储器装置150具有四个通路的两组,各自为WAY<0:3>/WAY<4:7>。WAY<0:3>共享一个通道CH0,WAY<4:7>共享一个通道CH1。每个管芯中的四个平面PLANE<0:3>共享一个通路。也就是,DIE0中的平面共享WAY0,DIE1中的平面共享WAY1,…,以及DIE7中的平面共享WAY7。
存储器系统110的控制器130使用下述的方案:将存储器装置150中的多个存储块划分或布置成针对事务所指定或分配的超级存储块。特别地,可以看到根据图6A中所示的实施例的控制器130使用如上面参照图5描述的第三方案来将存储块划分成超级存储块。
也就是说,在图6A中,控制器130通过选择存储器装置150中的32个平面PLANE<0:3>*8的每一个中的一个存储块来构建超级存储块SUPER BLOCK<0:1023>中的每一个。因此,超级存储块SUPER BLOCK<0:1023>的每一个中包括32个存储块。
由于控制器130同时选择超级存储块SUPER BLOCK<0:1023>的任一个中的32个存储块,因此以超级存储块为单位来执行管理。因此,可以使用用于选择各个超级存储块SUPER BLOCK<0:1023>的超级存储块地址(未示出)。
以这种方式,为了使用超级存储块地址,控制器130使用以下方案:通过将存储器装置150中包括的各个32个平面PLANE<0:3>*8中的具有相同位置的存储块进行分组来生成超级存储块。
例如,控制器130可以通过将存储器装置150中的各个32个平面PLANE<0:3>*8中的32个第零存储块BLOCK0分组来构建第零超级存储块SUPER BLOCK0,通过将各个32个平面PLANE<0:3>*8中的32个第一存储块BLOCK1分组来构建第一超级存储块SUPER BLOCK1,并且通过将各个32个平面PLANE<0:3>*8中的32个第二存储块BLOCK2分组来构建第二超级存储块SUPER BLOCK2。以这种方式,控制器130通过将存储器装置150中的32768个存储块BLOCK<0:1023>*32分组成1024个超级存储块SUPER BLOCK<0:1023>来管理存储器装置150中的32768个存储块BLOCK<0:1023>*32。
通过将存储器装置150中的存储块BLOCK<0:1023>*32分组或划分成超级存储块SUPER BLOCK<0:1023>来管理存储块BLOCK<0:1023>*32表示控制器130将超级存储块单位设置并使用为访问处理单位。然而,即使控制器130通过超级存储块SUPER BLOCK<0:1023>的对应超级存储块地址来选择超级存储块SUPER BLOCK<0:1023>中的每一个,也不表示不使用用于分别选择存储块BLOCK<0:1023>*32的存储块地址;相反,在控制器130中继续使用每个存储块地址。例如,控制器130通过第零超级存储块地址访问第零超级存储块SUPERBLOCK0事实上表示与各个32个平面PLANE<0:4>*8中的、被分组成第零超级存储块SUPERBLOCK0的32个第零存储块BLOCK0对应的32个存储块被一次访问。
使存储器装置150中的全部存储块都正常操作基本上是不可能的。例如,在存储器装置150被安装在系统中并被使用之后,多个存储块之中的存储块停止正常操作,从而成为坏存储块。即,即使尚未到达存储块的寿命期限,但是因为存储块没有执行正常操作,所以存储块可被确定为坏存储块。
在这一点上,在对存储器装置150中的各个32个平面PLANE<0:3>*8中的具有相同位置的存储块分组时,如上所述,针对包括坏存储块的超级存储块,不可能将超级存储块单位设置为访问处理单位。
例如,即使在超级存储块SUPER BLOCK<0:1023>之中的任一个超级存储块中的32个存储块之中,仅一个存储块是坏块并且剩余的全部31个存储块都是好块时,也显然不能以超级存储块为单位来进行访问。
考虑到该事实,在根据实施例的存储器系统110中,可以通过采用图6B中所示的再生超级块表700,来重新使用包括至少一个坏存储块的超级存储块,而非丢弃该超级存储块。
参照图6B,可以看到存储器装置150中的多个超级存储块SUPER BLOCK<0:1023>之中的第718超级存储块SUPER BLOCK 718、第820超级存储块SUPER BLOCK 820和第829超级存储块SUPER BLOCK829的每一个中的32个存储块之中的一个或多个存储块被确定为坏存储块。
详细地,可以看到,在第718超级存储块中的32个存储块之中,第一存储器管芯DIE1的第一平面PLANE1中的存储块被确定为坏存储块并且剩余的31个存储块是好存储块或稳定存储块。
并且,可以看到,在第820超级存储块中的32个存储块之中,第三存储器管芯DIE3的第一平面PLANE1中的存储块和第四存储器管芯DIE4的第一平面PLANE1中的存储块被确定为坏存储块并且剩余的30个存储块是好存储块或稳定存储块。
此外,可以看到,在第829超级存储块中的32个存储块之中,第零存储器管芯DIE0的第一平面PLANE1中的存储块被确定为坏存储块并且剩余的31个存储块是好存储块或稳定存储块。
在这种状态下,控制器130生成再生超级块表700,以利用好存储块或稳定存储块来替换第718超级存储块、第820超级存储块和第829超级存储块中的坏存储块,从而正常地操作再生超级存储块。
详细地,为了重新使用超级存储块SUPER BLOCK<0:1023>之中的第718超级存储块SUPER BLOCK 718,控制器130搜索能够替换第一存储器管芯DIE1的第一平面PLANE1中的坏存储块的存储块。
为此,控制器130在超级存储块SUPER BLOCK<0:1023>之中搜索包括至少一个坏存储块的超级存储块。也就是,控制器130可以将仅包括好存储块或稳定存储块的超级存储块从搜索目标中排除。
为了恢复或修复第718超级存储块中的坏存储块,控制器130可以将包括两个坏存储块的第820超级存储块作为目标。然后,控制器130检查第820超级存储块中的坏存储块中的任一个的位置是否与第718超级存储块中的坏存储块的位置相同。
如果第820超级存储块中的坏存储块中的任一个的位置与第718超级存储块中的坏存储块的位置相同,则将第820超级存储块从搜索目标排除,并且搜索另一超级存储块。相反地,如果不存在位置对应,则第820超级存储块SUPER BLOCK 820被确定为搜索目标超级存储块。
参照图6B,第718超级存储块中的坏存储块位于第一存储器管芯DIE1的第一平面PLANE1中,同时第820超级存储块中的坏存储块位于第三存储器管芯DIE3的第一平面PLANE1中和第四存储器管芯DIE4的第一平面PLANE1中。换言之,第820超级存储块中的坏存储块的位置与第718超级存储块中的坏存储块的位置不重叠。
因此,控制器130确定第820超级存储块作为搜索目标,并生成再生超级块表700,以使得第820超级存储块中的第一存储器管芯DIE1的第一平面PLANE1中的存储块可以被使用在第718超级存储块中。
即,为了替换第718超级存储块SUPER BLOCK 718,控制器130将再生超级块表700的第一行设置为第零再生超级存储块RE SUPER BLOCK0,并且存储32个存储块的块地址值以用于替换第718超级存储块SUPER BLOCK 718。
因此,在存储在再生超级块表700的第一行中的第零再生超级存储块RE SUPERBLOCK 0的值中,仅一个块地址用于指示第820超级存储块SUPER BLOCK 820的第一存储器管芯DIE1的第一平面PLANE1中的存储块,并且全部剩余的31个块地址是用于第718超级存储块SUPER BLOCK 718的存储块。
当在生成再生超级块表700之后,控制器130访问第718超级存储块SUPER BLOCK718时,控制器130可以参考存储在再生超级块表700的第一行中的第零再生超级存储块RESUPER BLOCK 0的值。
然后,为了重新使用第820超级存储块SUPER BLOCK 820,控制器130应该搜索能够替换第820超级存储块SUPER BLOCK 820中的32个存储块之中的下述存储块的存储块:第一存储器管芯DIE1的第一平面PLANE1中的存储块、第三存储器管芯DIE3的第一平面PLANE1中的坏存储块、以及第四存储器管芯DIE4的第一平面PLANE1中的坏存储块。第一存储器管芯DIE1的第一平面PLANE1中的存储块不是坏存储块,而是被指定为第718超级存储块SUPERBLOCK 718的坏存储块的替换块。
即使在第820超级存储块SUPER BLOCK 820中仅有两个坏存储块,也搜索能够替换第820超级存储块SUPER BLOCK 820的32个存储块之中的三个存储块的存储块的原因在于:第820超级存储块SUPER BLOCK 820的一个存储块被用于使第718超级存储块SUPERBLOCK718作为再生超级存储块而正常操作。即,因为坏存储块被包括在第718超级存储块SUPER BLOCK 718中的第一存储器管芯DIE1的第一平面PLANE1中,所以生成再生超级块表700以使用第820超级存储块SUPER BLOCK 820中的第一存储器管芯DIE1的第一平面PLANE1中的存储块。
因此,为了重新使用第820超级存储块SUPER BLOCK 820,控制器130搜索包括至少一个坏存储块的超级存储块。当然,控制器130将仅包括好存储块的任何超级存储块从这种搜索中排除。
作为搜索结果,控制器130可以搜索到包括一个坏存储块的第829超级存储块SUPER BLOCK 829。在这种状态下,控制器130检查第829超级存储块SUPER BLOCK 829中的坏存储块的位置是否与第718超级存储块SUPER BLOCK 718中的坏存储块的位置以及第820超级存储块SUPER BLOCK 820中的坏存储块的位置相同。
如果存在相同的位置,第829超级存储块SUPER BLOCK 829被从搜索目标中排除,并且搜索另一超级存储块。相反地,如果不存在相同位置,则第829超级存储块SUPER BLOCK829被确定为检索目标超级存储块。
参照图6B,第829超级存储块SUPER BLOCK 829的坏存储块位于第零存储器管芯DIE0的第一平面PLANE1中,第718超级存储块SUPER BLOCK 718的坏存储块位于第一存储器管芯DIE1的第一平面PLANE1中,并且第820超级存储块SUPER BLOCK 820的坏存储块位于第三存储器管芯DIE3的第一平面PLANE1和第四存储器管芯DIE4的第一平面PLANE1中。也就是说,第829超级存储块的坏存储块的位置与第820超级存储块中的坏存储块中的任一个的位置以及第718超级存储块中的坏存储块的位置不重叠。
因此,控制器130将第829超级存储块SUPER BLOCK 829确定为替换块或搜索目标,并且生成再生超级块表700,使得第829超级存储块SUPER BLOCK829中的第一存储器管芯DIE1的第一平面PLANE1中的存储块、第三存储器管芯DIE3的第一平面PLANE1中的存储块以及第四存储器管芯DIE4的第一平面PLANE1中的存储块可以被使用在第820超级存储块SUPER BLOCK 820中。
即,为了替换第820超级存储块SUPER BLOCK 820,控制器130将再生超级块表700的第二行设置为第一再生超级存储块RE SUPER BLOCK 1,并且存储32个存储块的各个块地址值以用于替换第820超级存储块SUPER BLOCK 820。
因此,存储在再生超级块表700的第二行中的第一再生超级存储块RE SUPERBLOCK 1的值仅包括三个块地址用于指示第829超级存储块SUPER BLOCK 829的第一存储器管芯DIE1的第一平面PLANE1中的存储块、第三存储器管芯DIE3的第一平面PLANE1中的存储块以及第四存储器管芯DIE1的第一平面PLANE1中的存储块,并且全部剩余的29个块地址是第820超级存储块SUPER BLOCK 820的块地址。
以这种方式,因为生成了再生超级块表700,所以当控制器130访问第820超级存储块SUPER BLOCK 820时,可以参考存储在再生超级块表700的第二行中的第一再生超级存储块RE SUPER BLOCK 1的值。
然后,为了重新使用第829超级存储块SUPER BLOCK 829,控制器130搜索能够替换第829超级存储块SUPER BLOCK829中的下述存储块的存储块:第零存储器管芯DIE0的第一平面PLANE1中的坏存储块、第一存储器管芯DIE1的第一平面PLANE1中的存储块、第三存储器管芯DIE3的第一平面PLANE1中的存储块、以及第四存储器管芯DIE4的第一平面PLANE1中的存储块。
即使在第829超级存储块中的32个存储块之中的坏存储块是一个,也搜索能够替换包括在第829超级存储块中的32个存储块之中的四个存储块的存储块的原因在于:第829超级存储块中的三个存储块被用于使第820超级存储块作为再生超级存储块而正常操作。即,因为第718超级存储块的32个存储块之中的坏存储块位于第一存储器管芯DIE1的第一平面PLANE1中并且第820超级存储块中的坏存储块被包括在第三存储器管芯DIE3的第一平面PLANE1和第四存储器管芯DIE4的第一平面PLANE1中,所以生成再生超级块表700以使用第829超级存储块的第一存储器管芯DIE1的第一平面PLANE1中的存储块、第三存储器管芯DIE3的第一平面PLANE1中的存储块、以及第四存储器管芯DIE4的第一平面PLANE1中的存储块。
因此,为了重新使用第829超级存储块SUPER BLOCK 829,控制器130在超级存储块SUPER BLOCK<0:1023>之中搜索包括至少一个坏存储块的超级存储块。控制器130将仅包括好存储块的超级存储块从搜索目标中排除。
根据搜索结果,控制器130可能没有搜索到包括坏存储块的另一超级存储块。在这种情况下,因为没有替换块,控制器130不重新使用第829超级存储块SUPER BLOCK 829。
通过使用如上参照图6B描述的再生超级块表700,即使在全部超级存储块之中的三个超级存储块SUPER BLOCK 718、超级存储块SUPER BLOCK 820和超级存储块SUPERBLOCK 829中包括坏存储块,也可针对两个超级存储块SUPER BLOCK 718和SUPER BLOCK820,来将超级存储块单位设置为访问处理单位。
也就是说,在图6B所示的方案中,包括坏存储块的超级存储块SUPER BLOCK 718、SUPER BLOCK 820和SUPER BLOCK 829中的一些超级存储块,例如SUPER BLOCK718和SUPERBLOCK820可以正常使用,并且仅剩余的超级存储块,例如SUPER BLOCK 829不被使用。
然而,即使在图6B所示的方案中,仍然存在好存储块不能被使用的超级存储块SUPER BLOCK 829,因为这些好存储块没有以超级存储块单位被进行分组。
因此,如将在下文参照图7描述的,根据实施例的存储器系统110可以允许包括坏存储块的超级存储块用于特定操作或事务,使得不存在不能使用的好存储块。
图7是帮助说明在根据本发明实施例的存储器系统中管理包括坏存储块的超级存储块的操作的示图。
参照图7,示出了控制器130通过将包括在存储器装置150中的多个存储块之中的坏存储块和好存储块进行混合来管理超级存储块。控制器130可以管理两种不同类型的超级存储块:包括至少一个坏存储块和其余的好存储块或稳定存储块的超级存储块,以及仅包括好存储块或稳定存储块的超级存储块。
首先,作为示例示出了图7中所示的存储器装置150包括两个存储器管芯DIE<0:1>,每个存储器管芯包括四个平面PLANE<0:3>以使两个存储器管芯DIE<0:1>包括八个平面PLANE<0:3>*2。八个平面PLANE<0:3>*2的每个包括(N+1)个存储块B<0:N>。
根据本公开实施例的存储器系统110的控制器130使用以下方案:通过以超级存储块为单位来划分存储器装置150中的多个存储块来管理多个存储块。特别地,可以看到图7的实施例使用如上参照图5描述的通过控制器130将存储块划分为超级存储块的第三方案。
参照图7,控制器130通过在存储器装置150中的八个平面PLANE<0:3>*2的每一个中选择一个存储块来管理超级存储块SUPER BLOCK<0:N>中的每一个。因此,在超级存储块SUPER BLOCK<0:N>的每一个中包括八个存储块。
此外,在图7的实施例中,每一个仅包括好存储块的一些超级存储块可以与每一个包括至少一个坏存储块的其他超级存储块不同地被管理。控制器130可以将被编程在具有至少一个坏存储块的超级存储块中的有效数据转移至仅具有好存储块的超级存储块中,但并非反之亦然。
例如,在图7中,在第零超级存储块SUPER BLOCK<0>的情况下,即使对应于第零管芯DIE<0>的第零平面PLANE<0>的一个存储块是坏存储块,也通过对一个坏存储块和七个好存储块分组来管理第零超级存储块SUPER BLOCK<0>。
在图7中,在第一超级存储块SUPER BLOCK<1>的情况下,即使对应于第零管芯DIE<0>的第零平面PLANE<0>、第零管芯DIE<0>的第一平面PLANE<1>和第一管芯DIE<1>的第零平面PLANE<0>的三个存储块是坏存储块,也通过对三个坏存储块和五个好存储块分组来管理第一超级存储块SUPER BLOCK<1>。
在图7中,在第二超级存储块SUPER BLOCK<2>的情况下,即使对应于第一管芯DIE<1>的第零平面PLANE<0>的一个存储块是坏存储块,也通过对一个坏存储块和七个好存储块分组来管理第二超级存储块SUPER BLOCK<2>。
在图7中,在第三超级存储块SUPER BLOCK<3>的情况下,即使对应于第零管芯DIE<0>的第零平面PLANE<0>和第一管芯DIE<1>的第二平面PLANE<2>的两个存储块是坏存储块,也通过对两个坏存储块和六个好存储块分组来管理第三超级存储块SUPER BLOCK<3>。
在图7中,在第四超级存储块SUPER BLOCK<4>的情况下,即使对应于第零管芯DIE<0>的第一平面PLANE<1>、第一管芯DIE<1>的第零平面PLANE<0>和第一管芯DIE<1>的第一平面PLANE<1>的三个存储块是坏存储块,也通过对三个坏存储块和五个好存储块分组来管理第四超级存储块SUPER BLOCK<4>。
在图7中,在第(N-2)超级存储块SUPER BLOCK<N-2>的情况下,即使对应于第零管芯DIE<0>的第零平面PLANE<0>的一个存储块是坏存储块,也通过对一个坏存储块和七个好存储块分组来管理第(N-2)超级存储块SUPER BLOCK<N-2>。
此外,在除了被分组有坏存储块和好存储块被分组的超级存储块SUPER BLOCK<0:4,N-2>之外的剩余超级存储块SUPER BLOCK<5:N-3,N-1,N>的情况下,由于剩余超级存储块不包括坏存储块,因此将它们作为正常超级存储块管理。
如上所述,在图7中,在每一个具有至少一个坏存储块和多个好存储块的超级存储块SUPER BLOCK<0:4,N-2>的情况下,如上参照图6A和图6B描述的,不可能将超级存储块单位设置为访问处理单位。
例如,在图7中,在第零超级存储块SUPER BLOCK<0>、第二超级存储块SUPER BLOCK<2>和第(N-2)超级存储块SUPER BLOCK<N-2>的情况下,这些超级存储块的每一个中仅包括七个好存储块。在第三超级存储块SUPER BLOCK<3>的情况下,仅包括六个好存储块。在第一超级存储块SUPER BLOCK<1>和第四超级存储块SUPER BLOCK<4>的情况下,这些超级存储块的每一个中仅包括五个好存储块。
综上所述,每一个不具有坏存储块的正常超级存储块SUPER BLOCK<5:N-3,N-1,N>可以处理为访问处理单位,其中访问处理单位具有被一次访问的八个正常存储块。然而,每一个包括至少一个坏存储块的超级存储块SUPER BLOCK<0:4,N-2>不满足超级存储块单位的访问处理单位,因为八个存储块不会被一次访问。
鉴于此,根据本公开实施例的控制器130通过将每一个包括至少一个坏存储块的超级存储块SUPER BLOCK<0:4,N-2>分类为第一超级块来管理超级存储块SUPER BLOCK<0:4,N-2>。第一超级块仅被用作合并操作中的目标超级块。相反地,通过将不包括坏存储块且包括八个好存储块的正常超级存储块SUPER BLOCK<5:N-3,N-1,N>分类为第二超级块,来管理正常超级存储块SUPER BLOCK<5:N-3,N-1,N>。第二超级块的使用不被特别地限制。
尽管图7中没有具体示出,但可能发生下述的情况:由于重复地执行擦除-写入周期,因此已经在存储器系统110的初始操作中通过被分类为第二超级块而被管理的某些第二超级块被分类为第一超级块而进行管理。
也就是说,可能发生下述的情况:在存储器系统110的初始操作中已经通过被分类为第二超级块而被管理的某些第二超级块的好存储块可能由于擦除-写入周期的重复而被确定为坏存储块。在这种情况下,控制器130通过合并操作将存储在已经出现坏存储块的某些第二超级块中的有效数据移动至目标超级块。然后,控制器130将变为空闲状态的某些第二超级块管理为第一超级块。
为了防止已经存储在已经出现坏存储块的某些第二超级块中的有效数据的可靠性劣化,控制器130可以额外地执行检测和校正已经存储在已经出现坏存储块的某些第二超级块中的有效数据的错误的操作。然后,控制器130可以通过合并操作仅将被确定为正常的有效数据移动至目标超级块。
合并操作表示将存储器装置150中的多个超级存储块之中的至少一个源超级块中包括的有效数据进行合并,并且将合并的有效数据移动至处于空闲状态的目标超级块的操作。
例如,合并操作可以是垃圾收集操作、读取取回操作、损耗均衡操作或映射更新操作。
由于如上所述定义了合并操作,因此可使用第一超级块作为合并操作中的目标超级块。这是因为有效数据的数量减少至等于或小于设置或预定参考量的超级存储块被选择作为合并操作的源超级块。换言之,因为通过合并操作,仅源超级块的有效数据被选择并且被移动至目标超级块,所以即使在包括在目标超级块中的存储块不是全部处于好或稳定状态下的情况中,用于复制有效数据的空间也可以很充足。
图8A至图8D是帮助说明使用图7中描述的包括坏存储块的超级存储块作为合并操作中的目标超级块的方法的示图。
首先,参照图8A和图8B,可以看到在根据图7中示出的本公开的实施例中,作为超级存储块SUPER BLOCK<0:4,N-2>的包括坏存储块的第一超级块通过目标列表800a、800b管理而被用作合并操作中的目标超级块。
详细地,参照图7、图8A和图8B,控制器130管理超级存储块SUPER BLOCK<0:4,N-2>作为第一超级块,其中超级存储块SUPER BLOCK<0:4,N-2>的每一个中分组有好存储块和至少一个坏存储块。
此外,控制器130管理超级存储块SUPER BLOCK<5:N-3,N-1>作为第二超级块,其中超级存储块SUPER BLOCK<5:N-3,N-1>的每一个仅具有好存储块。
如在图8A中示出的目标列表800a所示,控制器130优选地使用第一超级块SUPERBLOCK<0:4,N-2>作为合并操作中的目标超级块。然后,在第一超级块SUPER BLOCK<0:4,N-2>全部被用作目标超级块的情况下,控制器130使用第二超级块SUPER BLOCK<5:N-3,N-1,N>作为合并操作中的目标超级块。
此外,如图8B中示出的目标列表800b所示,控制器130优选地使用第一超级块SUPER BLOCK<0:4,N-2>作为合并操作中的目标超级块,同时基于擦除-写入周期值确定第一超级块SUPER BLOCK<0:4,N-2>的使用顺序。然后,在第一超级块SUPER BLOCK<0:4,N-2>全部被用作目标超级块的情况下,控制器130使用第二超级块SUPER BLOCK<5:N-3,N-1,N>作为合并操作中的目标超级块,同时基于擦除-写入周期值来确定第二超级块SUPER BLOCK<5:N-3,N-1,N>的使用顺序。
综上所述,控制器130通过与设置或预设使用顺序相对应的目标列表来管理待被用作合并操作中的目标超级块的超级块。可以根据待被用作目标超级块的超级块的各自优先级来确定目标列表的使用顺序。
待被用作目标超级块的超级块包括处于空闲状态的全部第一超级块SUPER BLOCK<0:4,N-2>和第二超级块SUPER BLOCK<5:N-3,N-1,N>。
并且,可以基于如在图8A或图8B中的控制器130中的先前确定的参考值来确定待被用作目标超级块的超级块的各自优先级。
例如,控制器130可以确定超级块的各自优先级,使得如图8A中所示,第一超级块SUPER BLOCK<0:4,N-2>被首先用作目标超级块,然后第二超级块SUPER BLOCK<5:N-3,N-1,N>被用作目标超级块。
换言之,如果控制器130将超级块是属于第一超级块SUPER BLOCK<0:4,N-2>还是属于第二超级块SUPER BLOCK<5:N-3,N-1,N>考虑为确定目标列表800a的使用顺序的条件,则可以如图8A中所示来生成目标列表800a。
详细地,在图8A中,控制器130根据第一超级块SUPER BLOCK<0:4,N-2>的地址,将处于空闲状态的第一超级块SUPER BLOCK<0:4,N-2>顺序地包括在目标列表800a中。然后,控制器130根据第二超级块SUPER BLOCK<5:M-3,N-1,N>的地址,将处于空闲状态的第二超级块SUPER BLOCK<5:M-3,N-1,N>顺序地增加或包括在目标列表800a中。
因此,在通过图8A的目标列表800a进行的合并操作中,待被第一个使用的目标超级块GC0是第零超级存储块SUPER BLOCK<0>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第一地址。
在通过图8A的目标列表800a进行的合并操作中,待被第二个使用的目标超级块GC1是第一超级存储块SUPER BLOCK<1>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第二地址。
在通过图8A的目标列表800a进行的合并操作中,待被第三个使用的目标超级块GC2是第二超级存储块SUPER BLOCK<2>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第三地址。
在通过图8A的目标列表800a进行的合并操作中,待被第四个使用的目标超级块GC3是第三超级存储块SUPER BLOCK<3>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第四地址。
在通过图8A的目标列表800a进行的合并操作中,待被第五个使用的目标超级块GC4是第四超级存储块SUPER BLOCK<4>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第五地址。
在通过图8A的目标列表800a进行的合并操作中,待被第六个使用的目标超级块GC5是第(N-2)超级存储块SUPER BLOCK<N-2>,其具有第一超级块SUPER BLOCK<0:4,N-2>中的第六地址。
以这种方式,当使用顺序被确定至在通过图8A的目标列表800a进行的合并操作中待被第六个使用的目标超级块GC5时,第一超级块SUPER BLOCK<0:4,N-2>的使用顺序被完全确定。
因此,作为在通过图8A的目标列表800a进行的合并操作中,待在第六个之后使用的目标超级块,处于空闲状态的第二超级块SUPER BLOCK<5:N-3,N-1,N>以它们的地址次序被顺序地包括在目标列表800a中。
此外,如在图8B中示出的目标列表800b所示,控制器130优先使用第一超级块SUPER BLOCK<0:4,N-2>作为合并操作中的目标超级块,同时基于擦除-写入周期值确定第一超级块SUPER BLOCK<0:4,N-2>的使用顺序,然后,使用第二超级块SUPER BLOCK<5:N-3,N-1,N>作为合并操作中的目标超级块,同时基于擦除-写入周期值确定第二超级块SUPERBLOCK<5:N-3,N-1,N>的使用顺序。
即,如果控制器130将超级块是属于第一超级块SUPER BLOCK<0:4,N-2>还是属于第二超级块SUPER BLOCK<5:N-3,N-1,N>考虑为确定目标列表800b的使用顺序的条件,同时使用超级块的擦除-写入周期值的大小作为条件,则可以如图8B中所示来生成目标列表800b。
详细地,在图8B中,控制器130将第一超级块SUPER BLOCK<0:4,N-2>之中的具有相对低的擦除-写入周期值的第一超级块设置为第一优先级。控制器130将第一超级块SUPERBLOCK<0:4,N-2>之中的具有相对高的擦除-写入周期值的第一超级块设置为比第一优先级低的第二优先级。控制器130将第二超级块SUPER BLOCK<5:N-3,N-1,N>之中具有相对低的擦除-写入周期值的第二超级块设置为比第二优先级低的第三优先级。控制器130将第二超级块SUPER BLOCK<5:N-3,N-1,N>之中的具有相对高的擦除-写入周期值的第二超级块设置为比第三优先级低的第四优先级。以这种方式,控制器130设置第一超级块SUPER BLOCK<0:4,N-2>和第二超级块SUPER BLOCK<5:N-3,N-1,N>的各自优先级,确定使用顺序并管理目标列表800b,使得首先使用相对高优先级的超级块。
可以假设,在第一超级块SUPER BLOCK<0:4,N-2>中,第零超级存储块SUPER BLOCK<0>具有最小擦除-写入周期值,第(N-2)超级存储块SUPER BLOCK<N-2>具有第二最小擦除-写入周期值,第二超级存储块SUPER BLOCK<2>具有第三最小擦除-写入周期值,第一超级存储块SUPER BLOCK<1>具有第四最小擦除-写入周期值,第四超级存储块SUPER BLOCK<4>具有第五最小擦除-写入周期值,并且第三超级块SUPER BLOCK<3>具有最大擦除-写入周期值(也就是,擦除-写入周期值从最小到最大为:SUPER BLOCK<0>、<SUPER BLOCK<N-2>、<SUPERBLOCK<2>、<SUPER BLOCK<1>、<SUPER BLOCK<4>、<SUPER BLOCK<3>)。
并且,可以假设,在第二超级块SUPER BLOCK<5:N-3,N-1,N>中,第八超级存储块SUPER BLOCK<8>具有最小擦除-写入周期值,第六超级存储块SUPER BLOCK<6>具有第二最小擦除-写入周期值,并且第(N-1)超级存储块SUPER BLOCK<N-1>具有最大擦除-写入周期值(也就是,擦除-写入周期值从最小到最大为:SUPER BLOCK<8>、<SUPER BLOCK<6>、<SUPERBLOCK<N-1>…)。
因此,在通过图8B的目标列表800b进行的合并操作中,待被第一个使用的目标超级块GC0为第零超级存储块SUPER BLOCK<0>,其在第一超级块SUPER BLOCK<0:4,N-2>之中具有最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第二个使用的目标超级块GC1为第(N-2)超级存储块SUPER BLOCK<N-2>,其在第一超级块SUPER BLOCK<0:4,N-2>之中具有第二最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第三个使用的目标超级块GC2为第二超级存储块SUPER BLOCK<2>,其在第一超级块SUPER BLOCK<0:4,N-2>之中具有第三最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第四个使用的目标超级块GC3为第一超级存储块SUPER BLOCK<1>,其在第一超级块SUPER BLOCK<0:4,N-2>之中具有第四最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第五个使用的目标超级块GC4为第四超级存储块SUPER BLOCK<4>,其在第一超级块SUPER BLOCK<0:4,N-2>中具有第五最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第六个使用的目标超级块GC5为第三超级存储块SUPER BLOCK<3>,其在第一超级块SUPER BLOCK<0:4,N-2>中具有第六最小擦除-写入周期值。
以这种方式,在使用顺序被确定至在通过图8B的目标列表800b进行的合并操作中待被第六个使用的目标超级块GC5时,第一超级块SUPER BLOCK<0:4,N-2>的使用顺序被完全确定。
因此,作为在通过图8B的目标列表800b进行的合并操作中,待被在第六个之后使用的目标超级块,处于空闲状态的第二超级块SUPER BLOCK<5:N-3,N-1,N>以它们的擦除-写入周期值的升序次序被顺序地包括在目标列表800b中。
也就是说,在通过图8B的目标列表800b进行的合并操作中,待被第七个使用的目标超级块为第八超级存储块SUPER BLOCK<8>,其在第二超级块SUPER BLOCK<5:N-3,N-1,N>之中具有最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第八个使用的目标超级块为第六超级存储块SUPER BLOCK<6>,其在第二超级块SUPER BLOCK<5:N-3,N-1,N>之中具有第二最小擦除-写入周期值。
在通过图8B的目标列表800b进行的合并操作中,待被第九个使用的目标超级块为第(N-1)超级存储块SUPER BLOCK<N-1>,其在第二超级块SUPER BLOCK<5:N-3,N-1,N>之中具有第三最小擦除-写入周期值。
参照图8C,可以看到,通过目标列表800a和800b被管理为目标超级块的第一超级块SUPER BLOCK<0:4,N-2>被各自用作实际合并操作中的目标超级块。
详细地,共同参照图7和图8C,控制器130使用状态位映射G/B BITMAP来管理被分组至第一超级块SUPER BLOCK<0;4,N-2>的存储块的好/坏状态。
也就是说,在在第一超级块SUPER BLOCK<0:4,N-2>之中的第零超级存储块SUPERBLOCK<0>的情况下,对应于第零管芯DIE<0>的第零平面PLANE<0>的一个存储块是坏存储块,并且剩余的存储块是好存储块。因此,对应于第零超级存储块SUPER BLOCK<0>的状态位映射G/B BITMAP的值为“10000000”。
在第一超级块SUPER BLOCK<0:4,N-2>之中的第一超级存储块SUPER BLOCK<1>的情况下,对应于第零管芯DIE<0>的第零平面PLANE<0>、第零管芯DIE<0>的第一平面PLANE<1>和第一管芯DIE<1>的第零平面PLANE<0>的三个存储块是坏存储块,剩余的存储块是好存储块。因此,对应于第一超级存储块SUPER BLOCK<1>的状态位映射G/B BITMAP的值是“11001000”。
在第一超级块SUPER BLOCK<0:4,N-2>之中的第二超级存储块SUPER BLOCK<2>的情况下,对应于第一管芯DIE<1>的第零平面PLANE<0>的一个存储块是坏存储块,剩余的存储块是好存储块。因此,对应于第二超级存储块SUPER BLOCK<2>的状态位映射G/B BITMAP的值是“00001000”。
在第一超级块SUPER BLOCK<0:4,N-2>之中的第三超级存储块SUPER BLOCK<3>的情况下,对应于第零管芯DIE<0>的第零平面PLANE<0>和第一管芯DIE<1>的第二平面PLANE<2>的两个存储块是坏存储块,并且剩余的存储块是好存储块。因此,对应于第三超级存储块SUPER BLOCK<3>的状态位映射G/B BITMAP的值是“10000010”。
在第一超级块SUPER BLOCK<0:4,N-2>之中的第四超级存储块SUPER BLOCK<4>的情况下,对应于第零管芯DIE<0>的第一平面PLANE<1>、第一管芯DIE<1>的第零平面PLANE<0>和第一管芯DIE<1>的第一平面PLANE<1>的三个存储块是坏存储块,并且剩余的存储块是好存储块。因此,对应于第四超级存储块SUPER BLOCK<4>的状态位映射G/B BITMAP的值是“01001100”。
在第一超级块SUPER BLOCK<0:4,N-2>之中的第(N-2)超级存储块SUPER BLOCK<N-2>的情况下,对应于第零管芯DIE<0>的第零平面PLANE<0>的一个存储块是坏存储块,并且剩余的存储块是好存储块。因此,对应于第(N-2)超级存储块SUPER BLOCK<N-2>的状态位映射G./B BITMAP的值为“10000000”。
如上所述,控制器130使用状态位映射G/B BITMAP来管理被分组成第一超级块SUPER BLOCK<0:4,N-2>的存储块的好/坏状态。因此,当使用第一超级块SUPER BLOCK<0:4,N-2>中的任一个作为合并操作中的目标超级块时,控制器130可以快速且准确地发现好存储块。
详细地,当执行合并操作时,控制器130可以根据目标列表800a和800b的使用顺序,来在第一超级块SUPER BLOCK<0:4,N-2>中选择目标超级块。
控制器130应该将从源超级块传输的有效数据仅存储在被选择用于合并操作的第一超级块SUPER BLOCK<0:4,N-2>的好存储块中。
因此,在选择第一超级块SUPER BLOCK<0:4,N-2>用于合并操作之后,控制器130可以通过检查状态位映射G/B BITMAP,来快速且准确地知道被选择用于合并操作的第一超级块SUPER BLOCK<0:4,N-2>的好存储块位于何处。
以这种方式,根据状态位映射G/B BITMAP的检查结果,控制器130将从源超级块传输的有效数据仅存储在被选择用于合并操作的第一超级块SUPER BLOCK<0:4,N-2>的好存储块中。
参照图8D,控制器130管理第一超级块SUPER BLOCK<0:4,N-2>之中的第一超级块SUPER BLOCK<0,N-2>,其中第一超级块SUPER BLOCK<0,N-2>由于被用作合并操作中的目标超级块时而处于关闭状态,并且通过将第一超级块SUPER BLOCK<0,N-2>分类为第三超级块,来将从源超级块传输的有效数据存储在第一超级块SUPER BLOCK<0,N-2>中。也就是说,尽管在执行合并操作之前,通过将处于空闲状态的第一超级块SUPER BLOCK<0,N-2>分类为第一超级块SUPER BLOCK<0:4,N-2>而进行管理,但是由于在执行合并操作的过程中第一超级块SUPER BLOCK<0,N-2>被选择为目标超级块并且从源超级块传输的有效数据被存储在第一超级块SUPER BLOCK<0,N-2>中,因此第一超级块SUPER BLOCK<0,N-2>呈现关闭状态并且通过将第一超级块SUPER BLOCK<0,N-2>分类为第三超级块而进行管理。
详细地,参照图7和图8B至图8D,控制器130可以根据图8B的目标列表800b的使用顺序,第一个使用第一超级块SUPER BLOCK<0:4,N-2>中的第零超级存储块SUPER BLOCK<0>作为合并操作中的目标超级块。
然后,控制器130可以根据图8B的目标列表800b的使用顺序,第二个使用第一超级块SUPER BLOCK<0:4,N-2>中的第(N-2)超级存储块SUPER BLOCK<N-2>作为合并操作中的目标超级块。
以这种方式,在根据图8B的目标列表800b的使用顺序,以第二次序使用第(N-2)超级存储块SUPER BLOCK<N-2>作为合并操作中的目标超级块之后,控制器130可以不使用第二超级存储块SUPER BLOCK<2>、第一超级存储块SUPER BLOCK<1>、第四超级存储块SUPERBLOCK<4>和第三超级存储块SUPER BLOCK<3>作为合并操作中的目标超级块。
因此,如图8D中所示,通过合并操作,在第一超级块SUPER BLOCK<0:4,N-2>之中的、通过执行合并操作而用作目标超级块的第零超级存储块SUPER BLOCK<0>和第(N-2)超级存储块SUPER BLOCK<N-2>的好存储块中,存储有从源超级块传输的有效数据。换言之,第一超级块SUPER BLOCK<0:4,N-2>之中的、用作目标超级块的第零超级存储块SUPER BLOCK<0>和第(N-2)超级存储块<N-2>的好存储块通过执行合并操作而处于关闭状态。相反地,仅被包括在目标列表800b中并且尚未通过合并操作被用作目标超级块的第二超级存储块SUPER BLOCK<2>、第一超级存储块SUPER BLOCK<1>、第四超级存储块SUPER BLOCK<4>和第三超级存储块SUPER BLOCK<3>的好存储块处于空闲状态。
在这种状态下,控制器130通过将第一超级块SUPER BLOCK<0:4,N-2>中的第零超级存储块SUPER BLOCK<0>和第(N-2)超级存储块<N-2>分类为第三超级块来管理第零超级存储块SUPER BLOCK<0>和第(N-2)超级存储块<N-2>,其中从源超级块传输的有效数据通过合并操作被存储在第零超级存储块SUPER BLOCK<0>和第(N-2)超级存储块<N-2>中。
然后,控制器130可以选择第三超级块SUPER BLOCK<0,N-2>作为源超级块,通过执行合并操作来对第三超级块SUPER BLOCK<0,N-2>进行擦除,从而将第三超级块SUPERBLOCK<0,N-2>再次改变为空闲状态。
详细地,在开始分类并管理第一超级块SUPER BLOCK<0:4,N-2>中的第三超级块SUPER BLOCK<0,N-2>之后,在经过充足时间的时刻执行合并操作的情况下,控制器130可以选择第三超级块SUPER BLOCK<0,N-2>作为源超级块。以这种方式,在选择第三超级块SUPERBLOCK<0,N-2>作为源超级块的情况下,控制器130可以目标列表800b的使用顺序来选择并使用第二超级块SUPER BLOCK<5:N-3,N-1,N>作为目标超级块。即,控制器130可以识别到第三超级块SUPER BLOCK<0,N-2>被选择为合并操作中的源超级块,并且从SUPER BLOCK<5:N-3,N-1,N>中选择目标超级块而不从第一超级块SUPER BLOCK<1:4>中选择目标超级块。
此后,控制器130通过执行合并操作,将被选择为源超级块的第三超级块SUPERBLOCK<0,N-2>的好存储块中存储的有效数据传输至目标超级块。然后,控制器130通过擦除被选择为源超级块的第三超级块SUPER BLOCK<0,N-2>的好存储块而将第三超级块SUPERBLOCK<0,N-2>的好存储块转变为空闲状态,并且通过将转变为空闲状态的第三超级块SUPER BLOCK<0,N-2>再次分类为第一超级块SUPER BLOCK<0:4,N-2>来管理第三超级块SUPER BLOCK<0,N-2>。
作为参考,经过充足时间的时刻可以由于整个第一超级块SUPER BLOCK<0:4,N-2>被用作目标超级块,所以第二超级块SUPER BLOCK<5:N-3,N-1,N>开始用作目标超级块的时刻。
并且,经过充足时间的时刻可以是由于第一超级块SUPER BLOCK<0:4,N-2>中的特定百分比或更多的第一超级块被使用,而剩余特定数量或更少的第一超级块的时刻。
图9至图17是示意性地示出了根据本发明的各个实施例中的图1的数据处理系统的示例应用的示图。
图9是示意性示出包括存储器系统的数据处理系统的另一示例的图。图9示意性地示出可以应用存储器系统的存储卡系统。
参照图9,存储卡系统6100可以包括存储器控制器6120、存储器装置6130和连接器6110。
存储器控制器6120可以连接到由非易失性存储器实施的存储器装置6130,并且被配置为访问存储器装置6130。例如,控制器6120可以被配置为控制存储器装置6130的读取操作、写入操作、擦除操作和后台操作。存储器控制器6120可以被配置为提供存储器装置6130和主机之间的接口并且使用用于控制存储器装置6130的固件。即,存储器控制器6120可以对应于参照图1和图7描述的存储器系统110的控制器130,并且存储器装置6130可以对应于参照图1和图7描述的存储器系统110的存储器装置150。
因此,存储器控制器6120可以包括RAM、处理器、主机接口、存储器接口和错误校正组件。存储器控制器130可以进一步包括图7所示的元件。
存储器控制器6120可以通过连接器6110与例如图1的主机102的外部装置通信。例如,如参照图1描述的,存储器控制器6120可以被配置为根据诸如以下的各种通信协议中的一种或多种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(EDSI)、集成驱动电路(IDE)、火线、通用闪速存储器(UFS)、WIFI和蓝牙。因此,根据本实施例的存储器系统和数据处理系统可以应用于有线/无线电子装置,特别是移动电子装置。
存储器装置6130可以由易失性存储器来实施。例如,存储器装置6130可以有诸如以下的各种非易失性存储器装置来实施:可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、NAND闪存、NOR闪存、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)和自旋转移力矩磁阻RAM(STT-MRAM)。存储器装置6130可以包括图7的存储器装置150中的多个存储器管芯。
存储器控制器6120和存储器装置6130可以被集成到单个半导体装置中。例如,存储器控制器6120和存储器装置6130可以这样集成以形成固态驱动器(SSD)。并且,存储器控制器6120和存储器装置6130可以这样集成以形成诸如以下的存储卡:PC卡(PCMCIA:个人计算机存储卡国际协会)、标准闪存(CF)卡、智能媒体卡(例如,SM和SMC)、记忆棒、多媒体卡(例如,MMC、RS-MMC、微型MMC和eMMC)、SD卡(例如,SD、迷你SD、微型SD和SDHC)和通用闪速存储器(UFS)。
图10是示意性地示出包括存储器系统的数据处理系统的另一示例的图。
参照图10,数据处理系统6200可以包括具有一个或多个非易失性存储器的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。图10所示的数据处理系统6200可以用作诸如存储卡(CF、SD、微型SD等)或USB装置的存储介质,如参照图1描述的。存储器装置6230可以对应于图1和图7中示出的存储器系统110中的存储器装置150,并且存储器控制器6220可以对应于图1和图7中示出的存储器系统110中的控制器130。
存储器控制器6220可以响应于主机6210的请求来控制对存储器装置6230的读取操作、写入操作或擦除操作。存储器控制器6220可以包括一个或多个CPU 6221、诸如RAM6222的缓冲存储器、ECC电路6223、主机接口6224和诸如NVM接口6225的存储器接口。
CPU 6221可以控制对存储器装置6230的整体操作,例如读取操作、写入操作、文件系统管理操作和坏页面管理操作。RAM 6222可以根据CPU6221的控制来操作,并且用作工作存储器、缓冲存储器或高速缓冲存储器。当RAM 6222用作工作存储器时,由CPU 6221处理的数据可以临时存储在RAM 6222中。当RAM 6222用作缓冲存储器时,RAM 6222可以用于缓冲从主机6210传输到存储器装置6230或从存储器装置6230传输到主机6210的数据。当RAM6222用作高速缓冲存储器时,RAM 6222可以辅助低速存储器装置6230以高速运转。
ECC电路6223可以对应于图1所示的控制器130的ECC组件138。如参照图1描述的,ECC电路6223可以生成用于校正从存储器装置6230提供的数据的失败位或错误位的ECC(错误校正码)。ECC电路6223可以对被提供给存储器装置6230的数据执行错误校正编码,由此形成具有奇偶校验位的数据。奇偶校验位可以被存储在存储器装置6230中。ECC电路6223可以对从存储器装置6230输出的数据执行错误校正解码。ECC电路6223可以使用奇偶校验位来校正错误。例如,如参照图1描述的,ECC电路6223可以使用LDPC码、BCH码、涡轮码、里德-所罗门码、卷积码、RSC或诸如TCM或BCM的编码调制来校正错误。
存储器控制器6220可以通过主机接口6224将数据传输到主机6210/从主机6210接收数据。存储器控制器6220可以通过NVM接口6225将数据传输到存储器装置6230/从存储器装置6230接收数据。主机接口6224可以通过PATA总线、SATA总线、SCSI、USB、PCIe或NAND接口连接到主机6210。存储器控制器6220可以具有诸如WiFi或长期演进(LTE)的移动通信协议的无线通信功能。存储器控制器6220可以连接到外部装置,例如主机6210或另一外部装置,并且然后将数据传输到外部装置/从外部装置接收数据。特别地,因为存储器控制器6220被配置为通过一种或多种各种通信协议与外部装置通信,所以根据本实施例的存储器系统和数据处理系统可以应用于有线/无线电子装置,特别是移动电子装置。
图11是示意性地示出数据处理系统的另一示例的图。图11示意性地示出可以应用存储器系统的SSD。
参照图11,SSD 6300可以包括控制器6320和包括多个非易失性存储器的存储器装置6340。存储器控制器6320可以对应于图1和图7的存储器系统110中的控制器130,并且存储器装置6340可以对应于图1和图7的存储器系统中的存储器装置150。
更具体地,控制器6320可以通过多个通道CH1至CHi连接到存储器装置6340。控制器6320可以包括一个或多个处理器6321、缓冲存储器6325、ECC电路6322、主机接口6324和例如非易失性存储器接口6326的存储器接口。
缓冲存储器6325可临时存储从主机6310提供的数据或从包括在存储器装置6340中的多个闪速存储器NVM提供的数据,或临时存储多个闪速存储器NVM的元数据,例如包括映射表的映射数据。缓冲存储器6325可以由诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器或诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器来实施。通过示例,图10示出缓冲存储器6325在控制器6320中。然而,缓冲存储器6325可以在控制器6320的外部。
ECC电路6322可以在编程操作期间计算待编程到存储器装置6340中的数据的ECC值,在读取操作期间基于ECC值对从存储器装置6340读取的数据执行错误校正操作。ECC电路6322可以在失败的数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。
主机接口6324可以利用例如主机6310的外部装置提供接口功能。非易失性存储器接口6326可以利用通过多个通道连接的存储器装置6340提供接口功能。
此外,应用了图1和图7的存储器系统110的多个SSD 6300可以被提供以实施例如RAID(独立磁盘的冗余阵列)系统的数据处理系统。RAID系统可以包括多个SSD 6300和用于控制多个SSD 6300的RAID控制器。当RAID控制器响应于从主机6310提供的写入命令执行编程操作时,RAID控制器可以根据多个RAID级别,即,从SSD 6300中的主机6310提供的写入命令的RAID级别信息来选择一个或多个存储器系统或SSD 6300。RAID控制器可以将对应于写入命令的数据输出到选择的SSD 6300。此外,当RAID控制器响应于从主机6310提供的读取命令执行读取命令时,RAID控制器可以根据多个RAID级别,即,从SSD 6300中的主机6310提供的读取命令的RAID级别信息来选择一个或多个存储器系统或SSD 6300。RAID控制器可以将从选择的SSD 6300读取的数据提供给主机6310。
图12是示意性地示出包括存储器系统的数据处理系统的另一示例的图。图12示意性地示出可以应用存储器系统的嵌入式多媒体卡(eMMC)。
参照图12,eMMC 6400可以包括控制器6430和由一个或多个NAND闪速存储器实施的存储器装置6440。存储器控制器6430可以对应于图1和图7的存储器系统110中的控制器130,并且存储器装置6440可以对应于图1和图7的存储器系统110中的存储器装置150。
更具体地,控制器6430可以通过多个通道连接到存储器装置6440。控制器6430可以包括一个或多个核心6432、主机接口6431和例如NAND接口6433的存储器接口。
核心6432可以控制eMMC 6400的总体操作。主机接口6431可以在控制器6430和主机6410之间提供接口功能。NAND接口6433可以提供存储器装置6440和控制器6430之间的接口功能。例如,主机接口6431可以用作并行接口,例如参照图1描述的MMC接口。此外,主机接口6431可以用作串行接口,例如超高速(UHS-I/UHS-II)接口。
图13至图16是示意性地示出根据实施例的包括存储器系统的数据处理系统的其它示例的图。图13至图16示意性地示出可以应用存储器系统的UFS(通用闪速存储)系统。
参照图13至图16,UFS系统6500、6600、6700和6800可以分别包括主机6510、6610、6710、6810,UFS装置6520、6620、6720、6820以及UFS卡6530、6630、6730、6830。主机6510、6610、6710和6810可以用作有线/无线电子装置或特别是移动电子装置的应用处理器,UFS装置6520、6620、6720、6820可以用作嵌入式UFS装置,并且UFS卡6530、6630、6730、6830可以用作外部嵌入式UFS设备或可移除UFS卡。
在各个UFS系统6500、6600、6700、6800中的主机6510、6610、6710、6810,UFS装置6520、6620、6720、6820以及UFS卡6530、6630、6730、6830可以通过UFS协议与例如有线/无线电子装置或特别是移动电子装置的外部装置通信,并且UFS装置6520、6620、6720、6820以及UFS卡6530、6630、6730、6830可以由图1和图7示出的存储器系统110实施。例如,在UFS系统6500、6600、6700、6800中,UFS装置6520、6620、6720、6820可以以参照图10至图12描述的数据处理系统6200、SSD 6300或eMMC 6400的形式来实施,并且UFS卡6530、6630、6730、6830可以以参照图9描述的存储卡系统6100的形式来实施。
此外,在UFS系统6500、6600、6700和6800中,主机6510、6610、6710、6810,UFS装置6520、6620、6720、6820以及UFS卡6530、6630、6730、6830可以通过例如MIPI(移动工业处理器接口)中的MIPI M-PHY和MIPI UniPro(统一协议)的UFS接口来彼此通信。另选地,UFS装置6520、6620、6720、6820以及UFS卡6530、6630、6730、6830可以通过除UFS协议之外的例如UFD、MMC、SD、迷你SD和微型SD的各种协议彼此通信。
在图13所示的UFS系统6500中,主机6510、UFS装置6520和UFS卡6530中的每一个可以包括UniPro。主机6510可以执行交换操作,以便与UFS装置6520和UFS卡6530通信。特别地,主机6510可以通过例如在UniPro处的L3交换的链路层交换与UFS装置6520或UFS卡6530通信。UFS装置6520和UFS卡6530可以通过在主机6510的UniPro处的链路层交换来彼此通信。在本实施例中,已经描述并示出其中一个UFS装置6520和一个UFS卡6530连接到主机6510的配置。然而,这仅是示例;多个UFS装置和UFS卡可以并行地或以星型形式连接到主机6410。星型形式是单个居中部件联接至多个装置以用于并行处理的布置。多个UFS卡可以并行地或以星型形式连接到UFS装置6520或者串联地或以链型形式连接到UFS装置6520。
在图14所示的UFS系统6600中,主机6610、UFS装置6620和UFS卡6630中的每一个可以包括UniPro,并且主机6610可以通过执行交换操作的交换模块6640,例如,通过在UniPro处执行例如L3交换的链路层交换的交换模块6640与UFS装置6620或UFS卡6630通信。UFS装置6620和UFS卡6630可以通过在UniPro处的交换模块6640的链路层交换来彼此通信。在本实施例中,已经通过示例示出并描述了一个UFS装置6620和一个UFS卡6630连接到交换模块6640的配置。然而,多个UFS装置和UFS卡可以并行地或以星型形式连接到交换模块6640,并且多个UFS卡可以串联地或以链型形式连接到UFS装置6620。
在图15所示的UFS系统6700中,主机6710、UFS装置6720和UFS卡6730中的每一个可以包括UniPro,并且主机6710可以通过执行交换操作的交换模块6740,例如,通过在UniPro处执行例如L3交换的链路层交换的交换模块6740与UFS装置6720或UFS卡6730通信。UFS装置6720和UFS卡6730可以通过在UniPro处的交换模块6740的链路层交换来与彼此通信,并且交换模块6740可以在UFS装置6720内部或外部与UFS装置6720集成为一个模块。在本实施例中,已经通过示例示出并描述了一个UFS装置6720和一个UFS卡6730连接到交换模块6740的配置。然而,包括交换模块6740和UFS装置6720的多个模块可以并行地或以星型形式连接到主机6710或者串联地或以链型形式连接到彼此。此外,多个UFS卡可以并行地或以星型形式连接到UFS装置6720。
在图16所示的UFS系统6800中,主机6810、UFS装置6820和UFS卡6830中的每一个可以包括M-PHY和UniPro。UFS装置6820可以执行交换操作,以便与主机6810和UFS卡6830通信。特别地,UFS装置6820可以通过用于与主机6810通信的M-PHY和UniPro模块之间的交换操作并且通过用于与UFS卡6830通信的M-PHY和UniPro模块之间的交换操作,例如通过目标ID(识别器)交换操作来与主机6810或UFS卡6830通信。主机6810和UFS卡6830可以通过UFS装置6820的M-PHY和UniPro模块之间的目标ID交换来与彼此通信。在本实施例中,已经通过示例示出并描述了其中一个UFS装置6820连接到主机6810和一个UFS卡6830连接到UFS装置6820的配置。然而,多个UFS装置可以并行地或以星型形式连接到主机6810,或串联地或以链型形式连接到主机6810。多个UFS卡可以并行地或以星型形式连接到UFS装置6820,或者串联地或以链型形式连接到UFS装置6820。
图17是示意性地示出根据实施例的包括存储器系统的数据处理系统的另一示例的图。图17是示意性地示出可以应用存储器系统的用户系统的图。
参照图17,用户系统6900可以包括应用处理器6930、存储器模块6920、网络模块6940、存储模块6950和用户接口6910。
更具体地,应用处理器6930可以驱动包括在例如OS的用户系统6900中的部件,并且包括用于控制包括在用户系统6900中的部件的控制器、接口、图形引擎等。应用处理器6930可以被设置为片上系统(SoC)。
存储器模块6920可以用作用户系统6900的主存储器、工作存储器、缓冲存储器或高速缓冲存储器。存储器模块6920可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2SDRAM、DDR3SDRAM、LPDDR SDRAM、LPDDR2SDRAM和LPDDR3SDRAM的易失性RAM或诸如PRAM、ReRAM、MRAM和FRAM的非易失性RAM。例如,应用处理器6930和存储器模块6920可以通过基于POP(堆叠封装)的来封装并安装。
网络模块6940可以与外部装置通信。例如,网络模块6940不仅可以支持有线通信,还可以支持诸如以下的各种无线通信:码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、全球微波接入互操作性(WiMAX)、无线局域网(WLAN)、超宽带(UWB)、蓝牙、无线显示(WI-DI),从而与有线/无线电子装置或特别是移动电子装置通信。因此,根据本发明的实施例的存储器系统和数据处理系统可以应用于有线和/或无线电子装置。网络模块6940可以被包括在应用处理器6930中。
存储模块6950可以存储例如从应用处理器6930接收的数据的数据,并且将存储的数据传输到应用处理器6930。存储模块6950可以由诸如以下的非易失性半导体存储器装置实现:相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(ReRAM)、NAND闪存、NOR闪存和3维NAND闪存,并且被设置为诸如用户系统6900的存储卡和外部驱动器的可移除存储介质。存储模块6950可以对应于以上参照图1和图7描述的存储器系统110。此外,存储模块6950可以利用以上参照图11至图16描述的SSD、eMMC和UFS来实施。
用户接口6910可以包括用于将数据或命令输入到应用处理器6930或用于将数据输出到外部装置的接口。例如,用户接口6910可以包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口以及诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、发光二极管(LED)、扬声器和马达的用户输出接口。
此外,当其中图1和图7的存储器系统110被应用于用户系统6900的移动电子装置时,应用处理器6930可以控制移动电子装置的整体操作。网络模块6940可以用作用于控制与外部装置的有线/无线通信的通信模块。用户接口6910可以在移动电子装置的显示/触摸模块上显示由处理器6930处理的数据。此外,用户接口6910可以支持从触摸面板接收数据的功能。
在本发明的实施例中,当存储器系统通过将存储器装置中的多个存储块分组成超级存储块来控制多个存储块时,可以管理被混合并分组有至少一个坏存储块和大部分好存储块或稳定存储块的超级存储块以提高系统效率。被混合并分组有至少一个坏存储块和好存储块的超级存储块的使用限于合并操作中的目标超级块。
作为结果,可以高效地使用存储器系统的存储空间,并且由此,存储器系统的可持续期可以显著增加。
虽然已经为了说明的目的描述了各个实施例,但是对于本领域技术人员显而易见的是,可以进行各种改变和变型。本发明包括落入如权利要求中限定的本发明的精神和范围内的全部这种改变和变型。
Claims (18)
1.一种存储器系统,包括:
存储器装置,包括多个管芯,所述多个管芯的每个包括多个平面,所述多个平面的每个包括多个存储块;以及
控制器,将所述多个存储块分组成多个超级块,所述多个超级块的每个具有对应于条件的指定类型,
其中,所述控制器在所述多个超级块之中形成一组第一超级块并且管理所述第一超级块,所述第一超级块中的每个具有好存储块和至少一个坏存储块,
其中,所述控制器使用所述第一超级块作为合并操作中的目标超级块,
其中,所述控制器在所述多个超级块之中形成一组第二超级块并且管理所述第二超级块,所述第二超级块中的每个仅具有好存储块。
2.根据权利要求1所述的存储器系统,
其中,所述控制器使用对应于使用顺序的目标列表来管理待用作所述合并操作中的目标超级块的所述第一超级块,并且
其中,基于所述超级块的各自优先级来确定所述目标列表的使用顺序。
3.根据权利要求2所述的存储器系统,其中,所述控制器将所述第一超级块之中的具有相对低擦除-写入周期值的第一超级块设置为第一优先级,将所述第一超级块之中的具有相对高擦除-写入周期值的第一超级块设置为比所述第一优先级低的第二优先级,将所述第二超级块之中的具有相对低擦除-写入周期值的第二超级块设置为比所述第二优先级低的第三优先级,将所述第二超级块之中的具有相对高擦除-写入周期值的第二超级块设置为比所述第三优先级低的第四优先级,并且所述控制器以依据优先级次序的使用顺序来使用优先的超级块。
4.根据权利要求3所述的存储器系统,其中,所述控制器使用状态位映射来管理所述第一超级块的每个中的存储块的状态。
5.根据权利要求4所述的存储器系统,其中,在所述合并操作中根据所述目标列表的使用顺序来从所述第一超级块中选择所述目标超级块的情况下,所述控制器通过检查所述状态位映射以识别好存储块来将从源超级块传输的有效数据仅存储在所述目标超级块的好存储块中。
6.根据权利要求5所述的存储器系统,
其中,所述控制器通过将由于被用作所述合并操作中的目标超级块并且从源超级块传输的有效数据被存储在其中而进入关闭状态的第一超级块分类为第三超级块来管理所述进入关闭状态的第一超级块,并且
其中,在选择所述第三超级块作为所述合并操作中的源超级块的情况下,所述控制器根据所述目标列表的使用顺序首先使用所述第二超级块作为目标超级块,然后,通过将由于被用作所述合并操作中的所述源超级块而进入空闲状态的第三超级块再次分类为所述第一超级块来管理所述进入空闲状态的第三超级块。
7.根据权利要求1所述的存储器系统,其中,在所述第二超级块之中的某个第二超级块中存在坏存储块的情况下,所述控制器通过所述合并操作将存储在所述某个第二超级块中的有效数据移动至目标超级块,然后将所述某个第二超级块管理为第一超级块。
8.根据权利要求1所述的存储器系统,
其中,所述多个管芯中的第一管芯联接至第一通道,
其中,所述多个管芯中的第二管芯联接至第二通道,
其中,所述第一管芯中的所述多个平面联接至共享所述第一通道的多个第一通路,并且
其中,所述第二管芯中的所述多个平面联接至共享所述第二通道的多个第二通路。
9.根据权利要求8所述的存储器系统,
其中,所述控制器根据所述条件对所述第一管芯的第一平面中的第一存储块和所述第一管芯的第二平面中的第二存储块进行分组,并且对所述第二管芯的第三平面中的第三存储块和所述第二管芯的第四平面中的第四存储块进行分组,
其中,所述控制器根据所述条件对所述第一管芯的第一平面中的第一存储块和所述第二管芯的第三平面中的第三存储块进行分组,并且对所述第一管芯的第二平面中的第二存储块和所述第二管芯的第四平面中的第四存储块进行分组,或者
其中,所述控制器根据所述条件对所述第一管芯的第一平面中的第一存储块、所述第一管芯的第二平面中的第二存储块、所述第二管芯的第三平面中的第三存储块和所述第二管芯的第四平面中的第四存储块进行分组。
10.一种操作存储器系统的方法,所述存储器系统包括具有多个管芯的存储器装置,所述多个管芯的每个包括多个平面,所述多个平面的每个包括多个存储块,所述方法包括:
将所述多个存储块分组成多个超级块,所述多个超级块的每个具有对应于条件的指定类型;
在所述多个超级块之中形成一组第一超级块并且管理所述第一超级块,所述第一超级块的每个具有好存储块和至少一个坏存储块;
使用所述第一超级块作为合并操作中的目标超级块;以及
在所述多个超级块之中形成一组第二超级块并且管理所述第二超级块,所述第二超级块的每个仅具有好存储块。
11.根据权利要求10所述的方法,进一步包括:
使用对应于使用顺序的目标列表来管理待用作所述合并操作中的目标超级块的所述超级块;以及
基于所述超级块的各自优先级来确定所述目标列表的使用顺序。
12.根据权利要求11所述的方法,其中,所述确定将所述第一超级块之中的具有相对低擦除-写入周期值的第一超级块设置为第一优先级,将所述第一超级块之中的具有相对高擦除-写入周期值的第一超级块设置为比所述第一优先级低的第二优先级,将所述第二超级块之中的具有相对低擦除-写入周期值的第二超级块设置为比所述第二优先级低的第三优先级,将所述第二超级块之中的具有相对高擦除-写入周期值的第二超级块设置为比所述第三优先级低的第四优先级,并且以依据优先级次序的使用顺序来使用优先的超级块。
13.根据权利要求12的方法,进一步包括:
使用状态位映射管理所述第一超级块的每个中的存储块的状态。
14.根据权利要求13所述的方法,进一步包括:
在所述合并操作中根据所述目标列表的使用顺序来从所述第一超级块中选择所述目标超级块的情况下,通过检查所述状态位映射以识别好存储块来将从源超级块传输的有效数据仅存储在所述目标超级块的好存储块中。
15.根据权利要求14所述的方法,进一步包括:
通过将由于被用作所述合并操作中的目标超级块并且从源超级块传输的有效数据被存储在其中而进入关闭状态的第一超级块分类为第三超级块来管理所述进入关闭状态的第一超级块;
在选择所述第三超级块作为所述合并操作中的源超级块的情况下,根据所述目标列表的使用信息而使用所述第二超级块作为目标超级块;以及
通过将由于被用作所述源超级块而进入空闲状态的第三超级块再次分类为所述第一超级块来管理所述进入空闲状态的第三超级块。
16.根据权利要求10所述的方法,进一步包括:
在所述第二超级块之中的某个第二超级块中存在坏存储块的情况下,通过所述合并操作将存储在所述某个第二超级块中的有效数据移动至目标超级块,然后通过将所述某个第二超级块分类为第一超级块来管理所述某个第二超级块。
17.根据权利要求10所述的方法,
其中,所述多个管芯中的第一管芯联接至第一通道,
其中,所述多个管芯中的第二管芯联接至第二通道,
其中,所述第一管芯中的所述多个平面联接至共享所述第一通道的多个第一通路,并且
其中,所述第二管芯中的所述多个平面联接至共享所述第二通道的多个第二通路。
18.根据权利要求17所述的方法,
其中,所述条件包括:对所述第一管芯的第一平面中的第一存储块和所述第一管芯的第二平面中的第二存储块进行分组,并且对所述第二管芯的第三平面中的第三存储块和所述第二管芯的第四平面中的第四存储块进行分组;
其中,所述条件包括:对所述第一管芯的第一平面中的第一存储块和所述第二管芯的第三平面中的第三存储块进行分组,并且对所述第一管芯的第二平面中的第二存储块和所述第二管芯的第四平面中的第四存储块进行分组;或者
其中,所述条件包括:对所述第一管芯的第一平面中的第一存储块、所述第一管芯的第二平面中的第二存储块、所述第二管芯的第三平面中的第三存储块和所述第二管芯的第四平面中的第四存储块进行分组。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180031942A KR102559528B1 (ko) | 2018-03-20 | 2018-03-20 | 메모리 시스템 및 메모리 시스템의 동작방법 |
KR10-2018-0031942 | 2018-03-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110308867A CN110308867A (zh) | 2019-10-08 |
CN110308867B true CN110308867B (zh) | 2023-10-03 |
Family
ID=67985219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811534042.8A Active CN110308867B (zh) | 2018-03-20 | 2018-12-14 | 存储器系统及其操作方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10712962B2 (zh) |
KR (1) | KR102559528B1 (zh) |
CN (1) | CN110308867B (zh) |
TW (1) | TWI786213B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102583726B1 (ko) | 2018-06-27 | 2023-10-05 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
KR20200079852A (ko) | 2018-12-26 | 2020-07-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
US10872678B1 (en) | 2019-06-19 | 2020-12-22 | Micron Technology, Inc. | Speculative section selection within a memory device |
CN112596679B (zh) * | 2020-12-25 | 2023-10-10 | 深圳忆联信息系统有限公司 | 固态硬盘的raid实现方法、装置、计算机设备及存储介质 |
KR20220130389A (ko) * | 2021-03-18 | 2022-09-27 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN113485641B (zh) * | 2021-06-29 | 2024-04-16 | 成都忆芯科技有限公司 | 处理io命令的方法及其控制部件 |
CN116303118B (zh) * | 2023-05-18 | 2023-09-05 | 合肥康芯威存储技术有限公司 | 一种存储设备及其控制方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106802769A (zh) * | 2015-11-25 | 2017-06-06 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107346214A (zh) * | 2016-05-04 | 2017-11-14 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107562649A (zh) * | 2016-06-30 | 2018-01-09 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107591182A (zh) * | 2016-07-07 | 2018-01-16 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107622019A (zh) * | 2016-07-14 | 2018-01-23 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107632777A (zh) * | 2016-07-18 | 2018-01-26 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107797882A (zh) * | 2016-09-05 | 2018-03-13 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095765B2 (en) | 2009-03-04 | 2012-01-10 | Micron Technology, Inc. | Memory block management |
KR100988388B1 (ko) * | 2009-04-20 | 2010-10-18 | 성균관대학교산학협력단 | 플래시 메모리 장치의 성능 향상 방법 및 이를 수행하는 플래시 메모리 장치 |
US8832507B2 (en) * | 2010-08-23 | 2014-09-09 | Apple Inc. | Systems and methods for generating dynamic super blocks |
TWI425357B (zh) | 2010-09-27 | 2014-02-01 | Silicon Motion Inc | 用來進行區塊管理之方法以及記憶裝置及控制器 |
KR101916718B1 (ko) * | 2012-02-28 | 2018-11-09 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 메모리 관리 방법 |
TWI520148B (zh) * | 2012-07-05 | 2016-02-01 | 慧榮科技股份有限公司 | 記憶體裝置和記憶體控制方法 |
US10503431B2 (en) * | 2014-12-22 | 2019-12-10 | Sandisk Technologies Llc | Trade-off adjustments of memory parameters based on memory wear or data retention |
US10180805B2 (en) * | 2015-03-25 | 2019-01-15 | SK Hynix Inc. | Memory system and operating method thereof |
KR102643467B1 (ko) * | 2016-05-31 | 2024-03-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102645572B1 (ko) * | 2016-11-29 | 2024-03-11 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작 방법 |
-
2018
- 2018-03-20 KR KR1020180031942A patent/KR102559528B1/ko active IP Right Grant
- 2018-10-30 TW TW107138420A patent/TWI786213B/zh active
- 2018-11-07 US US16/183,452 patent/US10712962B2/en active Active
- 2018-12-14 CN CN201811534042.8A patent/CN110308867B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106802769A (zh) * | 2015-11-25 | 2017-06-06 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107346214A (zh) * | 2016-05-04 | 2017-11-14 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107562649A (zh) * | 2016-06-30 | 2018-01-09 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107591182A (zh) * | 2016-07-07 | 2018-01-16 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107622019A (zh) * | 2016-07-14 | 2018-01-23 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107632777A (zh) * | 2016-07-18 | 2018-01-26 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN107797882A (zh) * | 2016-09-05 | 2018-03-13 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
US20190294335A1 (en) | 2019-09-26 |
TW201941202A (zh) | 2019-10-16 |
TWI786213B (zh) | 2022-12-11 |
CN110308867A (zh) | 2019-10-08 |
US10712962B2 (en) | 2020-07-14 |
KR102559528B1 (ko) | 2023-07-26 |
KR20190110243A (ko) | 2019-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107797882B (zh) | 存储器系统及其操作方法 | |
CN108304141B (zh) | 存储器系统及其操作方法 | |
US10861581B2 (en) | Memory system for accessing recovered super block and operating method thereof | |
US10073622B2 (en) | Memory system and operation method thereof | |
CN110308867B (zh) | 存储器系统及其操作方法 | |
CN107346213B (zh) | 存储器系统及其操作方法 | |
CN107589906B (zh) | 存储器系统及其操作方法 | |
CN110362270B (zh) | 存储器系统及其操作方法 | |
CN107346214B (zh) | 存储器系统及其操作方法 | |
CN110347330B (zh) | 存储器系统及其操作方法 | |
CN110570894B (zh) | 存储器系统及该存储器系统的操作方法 | |
US20200050370A1 (en) | Controller and operation method thereof | |
CN110858180A (zh) | 数据处理系统及其操作方法 | |
US10019173B1 (en) | Memory system and operating method thereof | |
CN110647290B (zh) | 存储器系统及其操作方法 | |
CN108389602B (zh) | 存储器系统及其操作方法 | |
CN107807887B (zh) | 存储器系统及其操作方法 | |
CN111309638B (zh) | 存储器系统及其操作方法 | |
CN110489271B (zh) | 存储器系统及其操作方法 | |
US10885992B2 (en) | Memory system and operating method thereof | |
CN110910941A (zh) | 存储器系统及其操作方法 | |
CN108628755B (zh) | 存储器系统 | |
CN110928486B (zh) | 存储器系统及其操作方法 | |
US10725905B2 (en) | Memory system and operating method thereof | |
CN110688061B (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 |