CN109144408A - 存储器系统及其操作方法 - Google Patents

存储器系统及其操作方法 Download PDF

Info

Publication number
CN109144408A
CN109144408A CN201810631842.5A CN201810631842A CN109144408A CN 109144408 A CN109144408 A CN 109144408A CN 201810631842 A CN201810631842 A CN 201810631842A CN 109144408 A CN109144408 A CN 109144408A
Authority
CN
China
Prior art keywords
block
memory
bad
super
superblock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810631842.5A
Other languages
English (en)
Other versions
CN109144408B (zh
Inventor
朴秀镇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
Hynix Semiconductor Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hynix Semiconductor Inc filed Critical Hynix Semiconductor Inc
Publication of CN109144408A publication Critical patent/CN109144408A/zh
Application granted granted Critical
Publication of CN109144408B publication Critical patent/CN109144408B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • G11C29/886Masking faults in memories by using spares or by reconfiguring with partially good memories combining plural defective memory devices to provide a contiguous address range, e.g. one device supplies working blocks to replace defective blocks in another device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1042Read-write modes for single port memories, i.e. having either a random port or a serial port using interleaving techniques, i.e. read-write of one part of the memory while preparing another part
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

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)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开一种存储器系统,其包括:存储器装置,其包括多个块;以及控制器,其适于通过根据预定条件将多个块分组成多个超级块来管理多个块,在替换块池中管理未被分组成超级块中的正常块,将包括至少一个坏块的多个超级块中的每一个设置成坏超级块,然后将每一个坏超级块改变为恢复超级块,其中根据替换信息利用替换块池的正常块替换每个坏超级块中的至少一个坏块,其中替换信息包括在表示恢复超级块中的每一个的交错操作是否可行的位图中。

Description

存储器系统及其操作方法
相关申请的交叉引用
本申请要求于2017年6月19日提交的申请号为10-2017-0077233的韩国专利申请的优先权,其全部公开内容通过引用并入本文。
技术领域
本发明的各个实施例总体涉及一种存储器系统。特别地,实施例涉及一种用于利用存储器装置处理数据的存储器系统及其操作方法。
背景技术
计算机环境范例已经转变成使计算系统可随时随地被使用的普适计算。因此,诸如移动电话、数码相机和膝上型计算机的便携式电子装置的使用已经迅速增加。这些便携式电子装置通常使用具有一个或多个存储器装置的存储器系统来存储数据。存储器系统可用作便携式电子装置的主存储器装置或辅助存储器装置。
由于存储器系统没有移动部件,所以它们提供优良的稳定性、耐用性、高的信息存取速度以及低功耗。具有这种优点的存储器系统的示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡以及固态驱动器(SSD)。
发明内容
本发明的各个实施例涉及一种能够以超级存储块为单位管理包括在存储器装置中的多个存储块的存储器系统及存储器系统的操作方法。
根据本发明的实施例,存储器系统包括:存储器装置,其包括多个块;以及控制器,适于通过根据预定条件将多个块分组成多个超级块来管理多个块,在替换块池中管理未被分组成超级块中的正常块,将包括至少一个坏块的多个超级块中的每一个设置成坏超级块,然后将每一个坏超级块改变为恢复超级块,其中根据替换信息利用替换块池的正常块替换每一个坏超级块中的至少一个坏块,其中替换信息包括在表示恢复超级块中的每一个的交错操作是否可行的位图中。
控制器可将具有第一值的标志信息包括在替换信息中,用于根据交错操作可行的预定条件的第一优先级,利用替换块池的正常块替换各个坏超级块的坏块,并且控制器将具有第二值的标志信息包括在替换信息中,用于以与交错操作不可行的预定条件的第二优先级相对应的形式,利用替换块池中的正常块替换各个坏超级块中的至少一个坏块。
当访问其中替换块池的至少一个正常块替换了至少一个坏块的特定恢复超级块时,如果确定替换信息中包括具有第一值的标志信息时,控制器可以交错方案操作特定恢复超级块,并且如果确定替换信息中包括具有第二值的标志信息时,控制器可不以交错方案操作特定恢复超级块。
控制器可通过根据其中交错操作可行的预定条件的第一优先级对块进行分组来管理作为超级块的块。
存储器装置可进一步包括多个平面,多个平面分别对应于共享多个通道之中的单个通道的多个路径,用于以交错方案输入或输出数据,多个平面中的每一个包括多个块的一组块,并且存储器装置可进一步包括多个存储器管芯,多个存储器管芯中的每一个对应于多个通道中的相应的一个通道,多个管芯中的每一个包括多个平面的一组平面。
控制器可在预定条件的第一优先级中包括:第一存储器管芯的第一平面中的块与第一存储器管芯的第二平面中的块之间的关系,包括在第二存储器管芯的第一平面中的块与第二存储器管芯的第二平面中的块之间的关系,第一存储器管芯的第一平面中的块与第二存储器管芯的第一平面中的块之间的关系,第一存储器管芯的第二平面中的块与第二存储器管芯的第二平面中的块之间的关系,以及第一存储器管芯的第一平面中的块、第一存储器管芯的第二平面中的块、第二存储器管芯的第一平面中的块以及第二存储器管芯的第二平面中的块之间的关系。
控制器可在预定条件的第二优先级中包括在平面中的任何一个中包括的两个或更多个块之间的关系。
用于表示替换块池的正常块中的每一个的物理地址的物理表可以索引形式包括在替换信息中,并且控制器可将坏超级块中的每一个的坏块的物理地址和对应于物理地址的标志信息存储在物理表中,该物理表对应于用于替换坏超级块的坏块的替换块池的正常块。
控制器可参考物理表,利用用于替换坏块的替换块池的正常块的物理地址来替换坏超级块中的每一个中的块的物理地址之中的坏块的物理地址,然后可管理与恢复超级块中的每一个相对应的物理地址。
控制器可通过将超级块划分为正常超级块和坏超级块来生成用于以位图形式管理超级块的坏块发生信息。
根据本发明的实施例,一种存储器系统的操作方法,该存储器系统包括存储器装置,该存储器装置包括多个块,操作方法包括:通过根据预定条件将多个块分组成多个超级块来管理多个块,在替换块池中管理未被分组成超级块中的正常块,将包括至少一个坏块的多个超级块中的每一个设置成坏超级块,然后将每一个坏超级块改变为恢复超级块,其中根据替换信息利用替换块池的正常块替换了每一个坏超级块中的至少一个坏块,其中替换信息包括在表示恢复超级块中的每一个的交错操作是否可行的位图中。
设置操作和更改操作可包括:将包括至少一个坏块的每一个超级块设置成坏超级块;
将具有第一值的标志信息包括在替换信息中,用于以与交错操作可行的预定条件的第一优先级相对应的形式,利用替换块池的至少一个正常块替换各个坏超级块的至少一个坏块,并且将具有第二值的标志信息包括在替换信息中,用于以与交错操作不可行的预定条件的第二优先级相对应的形式,利用替换块池中的至少一个正常块替换各个坏超级块中的至少一个坏块。
操作方法可进一步包括:当访问其中替换块池的至少一个正常块替换了至少一个坏块处的特定恢复超级块时,检查包括在替换信息中的标志信息的值;当确定替换信息中包括具有第一值的标志信息时,以交错方案操作特定恢复超级块;并且当确定替换信息中包括具有第二值的标志信息时,不以交错方案操作特定恢复超级块。
可通过根据交错操作可行的预定条件的第一优先级对块进行分组来管理多个块。
存储器装置可包括多个平面,多个平面分别对应于共享多个通道之中的单个通道的多个路径,用于以交错方案输入或输出数据,多个平面中的每一个包括多个块的一组块;以及多个存储器管芯,多个存储器管芯中的每一个对应于多个通道中的相应的一个通道,多个管芯中的每一个包括多个平面的一组平面。
预定条件的第一优先级可包括:第一存储器管芯的第一平面中的块与第一存储器管芯的第二平面中的块之间的关系,第二存储器管芯的第一平面中的块与第二存储器管芯的第二平面中的块之间的关系,第一存储器管芯的第一平面中的块与第二存储器管芯的第一平面中的块之间的关系,第一存储器管芯的第二平面中的块与第二存储器管芯的第二平面中的块之间的关系,以及第一存储器管芯的第一平面中的块、第一存储器管芯的第二平面中的块、第二存储器管芯的第一平面中的块以及第二存储器管芯的第二平面中的块之间的关系。
预定条件的第二优先级可在平面中的任何一个中包括的两个或更多个块之间的关系。
用于表示替换块池的正常块中的每一个的物理地址的物理表可以索引形式包括在替换信息中,并且设置操作和改变操作可进一步包括:将坏超级块中的每一个的坏块的物理地址和对应于物理地址的标志信息存储在物理表中,该物理表对应于用于替换坏超级块的坏块的替换池块的正常块。
设置和更改操作可进一步包括:参考物理表,利用用于替换坏块的替换块池的正常块的物理地址来替换坏超级块中的每一个中的块的物理地址之中的坏块的物理地址,然后管理与恢复超级块中的每一个相对应的物理地址。
设置操作和改变操作可包括:通过将超级块划分为正常超级块和坏超级块来生成用于以位图形式管理超级块的坏块发生信息。
根据本发明的实施例,一种存储器系统包括:存储器装置,其包括多个超级块和多个保留块,其中多个超级块中的每一个具有一组存储块;以及控制器,其适于访问恢复超级块,恢复超级块是通过参考位图和替换信息,利用保留块替换坏超级块中的坏存储块而针对坏超级块生成的,其中位图表示超级块是否被确定为坏超级块,其中替换信息表示坏超级块中的坏存储块和对应于保留块的标志,并且其中控制器控制存储器装置以在访问恢复超级块时根据标志对恢复超级块执行交错操作。
附图说明
图1是示出根据本发明的实施例的包括存储器系统的数据处理系统的框图。
图2是示出图1的存储器系统中采用的存储器装置的示例性配置的示意图。
图3是示出图1所示的存储器装置中的存储块的存储器单元阵列的示例性配置的电路图。
图4是示出图2所示的存储器装置的示例性三维结构的框图。
图5是示出与根据本发明的实施例的存储器系统中使用的超级存储块有关的本发明的一个方面的示图。
图6是示出在根据本发明的实施例的存储器系统中以超级存储块为单位管理存储块的操作的示图。
图7A和图7B是示出在根据本发明的实施例的存储器系统中恢复包括坏存储块的超级存储块的方法的示图。
图8至图16是示意性地示出根据本发明的各个实施例的数据处理系统的示例性应用的示图。
具体实施方式
以下参照附图更详细地描述本发明的各个实施例。然而,注意的是,本发明可以不同的形式来实施。此外,本发明的方面和特征可被配置或布置成不同于所示实施例中所示的方面和特征。因此,本发明不应被解释为限于本文阐述的实施例。相反,提供所述实施例使得本公开将是完整和全面的并且将本发明充分地传达给本发明所属领域的技术人员。在整个本公开中,相同的附图标记在本发明的各个附图和实施例中表示相同的部件。
将进一步理解的是,虽然可在本文中使用诸如“第一”、“第二”、“第三”的术语来识别各个元件,但是这些元件不受这些术语的限制。这些术语用于将一个元件与另一个元件区分开。因此,在不脱离本发明的精神和范围的情况下,以下描述的第一元件也可被称为第二元件或第三元件。
附图不一定按比例绘制,并且在一些情况下,为了清楚地说明实施例的特征,比例可能已经被夸大。当元件被称为连接或联接到另一元件时,应当理解的是前者可直接连接或联接到后者,或者经由其间的一个或多个中间元件连接或联接到后者。
将进一步理解的是,对“实施例”的参照不一定仅针对一个实施例,并且对“实施例”的不同参照不一定针对相同的实施例。
本文使用的术语是为了描述特定实施例的目的,并不旨在限制本发明。
如本文所使用的,除非上下文另有明确说明,否则单数形式也旨在包括复数形式,反之亦然。
将进一步理解的是,当在本说明书中使用术语“包括”、“包括有”、“包含”和“包含有”时,其说明所陈述元件的存在,并不排除一个或多个其它元件的存在或添加。如本文所使用的,术语“和/或”包括一个或多个相关所列项目的任何和全部组合。
除非另有定义,否则本文使用的包括技术术语和科学术语的所有术语的含义与本发明所属领域的普通技术人员基于本公开的通常理解的含义相同。将进一步理解的是,诸如在常用字典中定义的那些术语的术语应当被解释为具有与其在本公开和相关技术语境中的含义一致的含义,并且将不以理想化或过于正式的意义来解释,除非本文中明确地这样定义。
在下面的描述中,为了提供对本发明的全面理解,描述了大量具体细节。本发明可在没有部分或全部这些具体细节的情况下被实施。在其它情况下,为了避免不必要地模糊本发明,未详细地描述公知的进程结构和/或进程。
还注意的是,在一些情况下,如对于相关领域的技术人员显而易见的是,除非另有明确说明,否则结合一个实施例所描述的特征或元件可单独使用或与另一个实施例的其它特征或元件组合使用。
图1是示出包括根据本发明的实施例的存储器系统110的数据处理系统100的框图。
参照图1,数据处理系统100可包括被可操作地联接至存储器系统110的主机102。
主机102可包括诸如移动电话、MP3播放器和膝上型计算机的各种便携式电子装置中的任何一种或诸如台式计算机、游戏机、TV和投影仪的各种非便携式电子装置中的任何一种。
主机102可包括至少一个操作系统(OS),其可管理和控制主机102的全部功能和操作,并且使用数据处理系统100或存储器系统110提供主机102和用户之间的操作。OS可支持对应于用户的使用目的和用途的功能和操作。例如,根据主机102的移动性,OS可被划分为通用OS和移动OS。根据用户的环境,通用OS可被分为个人OS和企业OS。例如,配置为支持向普通用户提供服务的功能的个人OS可包括Windows和Chrome,并且配置为确保和支持高性能的企业OS可包括Windows服务器、Linux和Unix。此外,被配置为支持向用户提供移动服务的功能和系统省电功能的移动OS可包括Android、iOS和Windows Mobile。主机102可包括多个OS,并且执行OS以对存储器系统110执行对应于用户的请求的操作。主机102可将对应于用户的请求的多个命令提供给存储器系统110,因此存储器系统110可执行对应于多个命令的特定操作,即对应于用户请求的操作。
存储器系统110可响应于主机102的请求操作以存储用于主机102的数据。存储器系统110的非限制性示例可包括固态驱动器(SSD)、多媒体卡(MMC)、安全数字(SD)卡、通用存储总线(USB)装置、通用闪存(UFS)装置、标准闪存(CF)卡、智能媒体卡(SMC)、个人计算机存储卡国际协会(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)和闪速存储器。
存储器系统110可包括存储器装置150和控制器130。存储器装置150可存储用于主机102的数据,并且控制器130可控制将数据存储到存储器装置150中。
控制器130和存储器装置150可被集成到单个半导体装置中,单个半导体装置可被包括在如上所例示的各种类型的存储器系统中的任何一种中。例如,控制器130和存储器装置150可集成为单个半导体装置以构成SSD。当存储器系统110用作SSD时,可提高连接到存储器系统110的主机102的操作速度。在另一示例中,控制器130和存储器装置150可被集成为单个半导体装置以构成诸如以下的存储卡:PCMCIA(个人计算机存储卡国际协会)卡,CF卡,SMC(智能媒体卡),记忆棒,包括RS-MMC和微型-MMC的MMC,包括迷你-SD、微型-SD和SDHC的SD卡,或UFS装置。
存储器系统110的非限制性应用示例可包括计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航系统、黑盒、数码相机、数字多媒体广播(DMB)播放器、三维电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、构成数据中心的存储装置、能够在无线环境下传输/接收信息的装置、构成家庭网络的各种电子装置之一、构成计算机网络的各种电子装置之一、构成远程信息处理网络的各种电子装置之一、射频识别(RFID)装置或构成计算系统的各种部件之一。
存储器装置150可以是非易失性存储器装置,并且即使不供应电力,其也可保留存储的数据。存储器装置150可通过写入操作来存储从主机102提供的数据,并且通过读取操作将存储的数据提供给主机102。在实施例中,存储器装置150可包括多个存储器管芯(未示出),多个存储器管芯中的每一个可包括多个平面(未示出)。每一个平面可包括多个存储块152、154、156……(以下称为“存储块152至156”),多个存储块中的每一个可包括多个页面,并且页面中的每一个可包括联接到字线的多个存储器单元。在实施例中,存储器装置150可以是具有三维(3D)堆叠结构的闪速存储器,其将在下面参照图4更详细地描述。
稍后将参照图2至图4详细描述包括存储器装置150的3D堆叠结构的存储器装置150的结构。稍后将参照图6详细描述包括存储器管芯、平面和存储块152至156的存储器装置150。因此,下面将直接省略对这些元件的进一步描述。
控制器130可响应于来自主机102的请求控制存储器装置150。具体地,控制器可控制存储器装置150的读取操作、写入操作(也称为编程操作)和擦除操作。例如,控制器130可将从存储器装置150读取的数据提供给主机102,并将从主机102提供的数据存储至存储器装置150中。
控制器130可包括主机接口(I/F)132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、诸如NAND闪速控制器的存储器接口142以及存储器144,其全部经由内部总线可操作地联接。
主机接口132可被配置成处理主机102的命令和数据,并可通过诸如以下的各种接口协议中的一种或多种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-E)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、增强型小型磁盘接口(ESDI)以及电子集成驱动器(IDE)。主机接口132可经由固件来驱动,即经由用于与主机102交换数据的主机接口层(HIL)来驱动。
ECC单元138可校正待由存储器装置150处理的数据的错误位,并且可包括ECC编码器和ECC解码器。ECC编码器可对待被编程到存储器装置150中的数据执行错误校正编码以生成添加了奇偶校验位的数据。包括奇偶校验位的数据可被存储在存储器装置150中。ECC解码器可检测并校正从存储器装置150读取的数据中包含的错误。换言之,ECC单元138可通过在ECC编码进程期间使用的ECC代码对从存储器装置150读取的数据执行错误校正解码进程。根据错误校正解码进程的结果,ECC单元138可输出信号,例如错误校正成功/失败信号。当错误位的数量大于可校正错误位的阈值时,ECC单元138可不校正错误位,并且可输出错误校正失败信号。
ECC单元138可通过诸如以下的编码调制执行错误校正:低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhri-Hocquenghem,BCH)码、turbo码、里德-所罗门(Reed-Solomon)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)以及分组编码调制(BCM)。然而,ECC单元138不限于这些错误校正技术。因此,ECC单元138可包括用于错误校正的所有电路、模块、系统或装置。
PMU 140可提供和管理控制器130的电力。
存储器接口142可用作存储器/存储接口,其用于接口连接控制器130和存储器装置150使得控制器130可响应于来自主机102的请求而控制存储器装置150。当存储器装置150是闪速存储器或具体地是NAND闪速存储器时,存储器接口142可以是NAND闪速控制器,并且可在处理器134的控制下生成用于存储器装置150的控制信号并处理待被提供给存储器装置150的数据。存储器接口142可用作用于处理控制器130和存储器装置150之间的命令和数据的接口(例如,NAND闪存接口)。具体地,存储器接口142可以支持控制器130和存储器装置150之间的数据传送。存储器接口142可经由固件来驱动,即经由用于与存储器装置150交换数据的闪存接口层(FIL)来驱动。
存储器144可用作存储器系统110和控制器130的工作存储器,并且存储用于驱动存储器系统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之间传输数据的存储器接口的外部易失性存储器来实施。
如上所述,存储器144可包括程序存储器、数据存储器、写入缓冲器/高速缓冲存储器、读取缓冲器/高速缓冲存储器、数据缓冲器/高速缓冲存储器以及映射缓冲器/高速缓冲存储器,以存储在主机102和存储器装置150之间执行数据写入操作和读取操作所需的数据以及存储控制器130和存储器装置150执行这些操作所需的数据。
处理器134可控制存储器系统110的全部操作。处理器134可驱动固件来控制存储器系统110的全部操作。固件可被称为闪存转换层(FTL)。而且,处理器134可被实现为微处理器或中央处理单元(CPU)。
例如,控制器130可通过被实现为微处理器或CPU等的处理器134在存储器装置150中执行主机102请求的操作。换言之,控制器130可执行与从主机102接收到的命令相对应的命令操作。控制器130可执行作为与从主机102接收到的命令相对应的命令操作的前台操作。例如,控制器130可执行对应于写入命令的编程操作、对应于读取命令的读取操作、对应于擦除命令的擦除操作以及对应于作为设置命令的设置参数命令或设置特征命令的参数设置操作。
而且,控制器130可通过被实施为微处理器或CPU的处理器134对存储器装置150执行后台操作。对存储器装置150执行的后台操作可包括:将存储在存储块152至156之中的一些存储块中的数据复制并处理到存储块152至156之中的其它存储块中的操作,例如垃圾收集(GC)操作;在存储块152至156之间或存储块152至156的数据之间的交换操作,例如损耗均衡(WL)操作;将存储在控制器130中的映射数据存储在存储块152至156中的操作,例如映射刷新操作;或者管理存储器装置150的坏块的操作,例如检测和处理存储块152至156之中的坏块的坏块管理操作。
控制器130的处理器134可包括用于执行存储器装置150的坏块管理操作的管理单元(未示出)。管理单元可执行检查在编程操作期间由于例如NAND闪速存储器的存储器装置的特性而发生编程失败的坏块的坏块管理操作。管理单元可将坏块的编程失败的数据写入到新的存储块。在具有3D堆叠结构的存储器装置150中,坏块管理操作可能降低存储器装置150的使用效率和存储器系统110的可靠性。因此,需要更可靠地执行坏块管理操作。
图2是示出图1的存储器系统110中采用的存储器装置150的示例性配置的示意图。
参照图2,存储器装置150可包括多个存储块BLOCK0至BLOCKN-1,并且每一个存储块可包括多个页面,例如2M个页面,其数量可根据电路设计而变化。
而且,包括在各个存储块BLOCK0至BLOCKN-1中的存储器单元可以是存储1位数据的单层单元(SLC)存储块或存储2位数据的多层单元(MLC)存储块中的一个或多个。因此,存储器装置150可根据在存储块中的每一个存储器单元可以表示或存储的位的数量而包括SLC存储块或MLC存储块。SLC存储块可包括由每一个存储器单元存储1位数据的存储器单元实现的多个页面,并且通常可具有高数据计算性能和高耐久性。MLC存储块可包括由每一个存储器单元存储多位(例如,2位或更多位)数据的存储器单元实现的多个页面,并且通常可具有比SLC存储块更大的数据存储空间,即,更高的集成密度。在另一实施例中,存储器装置150可包括多个三层单元(TLC)存储块。在又一个实施例中,存储器装置150可包括多个四层单元(QLC)存储块。TCL存储块可包括由每一个存储器单元能够存储3位数据的存储器单元实现的多个页面。QLC存储块可包括由每一个存储器单元能够存储4位数据的存储器单元实现的多个页面。虽然本发明的实施例以示例的方式描述了存储器装置150可以是非易失性存储器,但是其可由以下中的任何一种来实施:相变随机存取存储器(PCRAM)、电阻式随机存取存储器(RRAM(ReRAM))、铁电随机存取存储器(FRAM)和自旋转移扭矩磁性随机存取存储器(STT-RAM(STT-MRAM))。
图3是示出存储器装置150中的存储块330的存储器单元阵列的示例性配置的电路图。例如,存储块330可对应于存储器系统110的存储器装置150中的多个存储块152至156中的任何一个。
参照图3,存储块330可包括联接到多个对应的位线BL0至BLm-1的多个单元串340。作为参照,在图3中,“DSL”表示漏极选择线,“SSL”表示源极选择线,“CSL”表示共源线。单元串340中的每一个可被电联接到位线BL、至少一个源极选择线SSL、多个字线WL、至少一个虚拟字线DWL以及共源线CSL。每列单元串340可包括一个或多个漏极选择晶体管DST和一个或多个源极选择晶体管SST。多个存储器单元MC0至MCn-1可串联地被联接在漏极选择晶体管DST和源极选择晶体管SST之间。在实施例中,存储器单元晶体管MC0至MCn-1中的每一个可通过能够存储多个位的数据信息的MLC来实施。单元串340中的每一个可被电联接到多个位线BL0至BLm-1中的对应位线。例如,如图3所示,第一单元串被联接到第一位线BL0,并且最后的单元串被联接到最后的位线BLm-1。
虽然图3示出了NAND闪速存储器单元,但本公开不限于此。应注意的是,存储器单元可以是NOR闪速存储器单元,或包括组合在其中的两种或更多种存储器单元的混合闪速存储器单元。还应注意的是,存储器装置150可以是包括作为电荷存储层的导电浮栅的闪速存储器装置,或者包括作为电荷存储层的绝缘层的电荷撷取闪速(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,存储块BLK0至BLKN-1中的每一个具有3D结构(或垂直结构)。
将参照图5至图7B详细描述在根据本发明的实施例的存储器系统中对存储器装置的数据处理操作,特别是当执行与从主机102接收到的多个命令相对应的多个命令操作时执行的数据处理操作。
图5是示出在根据本发明的实施例的存储器系统中使用的超级存储块的发明构思的示图。
图5详细示出了根据本发明的实施例的图1所示的存储器装置150的组成元件。
存储器装置150可包括多个存储块BLOCK000至BLOCK00N、BLOCK010至BLOCK01N、BLOCK100至BLOCK10N以及BLOCK110至BLOCK11N。
另外,存储器装置150可包括能够通过第零通道CH0输入/输出数据的第零存储器管芯DIE0和能够通过第一通道CH1输入/输出数据的第一存储器管芯DIE1。第零通道CH0和第一通道CH1可以交错方案输入/输出数据。
第零存储器管芯DIE0可包括分别对应于多个路径WAY0和WAY1的多个平面PLANE00和PLANE01。路径WAY0和WAY1可通过共享第零通道CH0而以交错方案输入/输出数据。
第一存储器管芯DIE1可包括分别对应于多个路径WAY2和WAY3的多个平面PLANE10和PLANE11。路径WAY2和WAY3可通过共享第一通道CH1以交错方案输入/输出数据。
第零存储器管芯DIE0的第一平面PLANE00可包括在所有平面中的多个存储块之中的预定数量的存储块BLOCK000至BLOCK00N。
第零存储器管芯DIE0的第二平面PLANE01可包括在所有平面中的多个存储块之中的预定数量的存储块BLOCK010至BLOCK01N。
第一存储器管芯DIE1的第一平面PLANE10可包括在所有平面中的多个存储块之中的预定数量的存储块BLOCK100至BLOCK10N。
第一存储器管芯DIE1的第二平面PLANE11可包括在所有平面中的多个存储块之中的预定数量的存储块BLOCK110至BLOCK11N。
以这种方式,多个存储块BLOCK000至BLOCK00N、BLOCK010至BLOCK01N、BLOCK100至BLOCK10N和BLOCK110至BLOCK11N可根据它们的物理位置以及它们对相同路径和通道的使用而被分成组。
图5示出了存储器管芯、平面和存储块的特定示例性布置。然而,本发明不限于这种布置。实际上,根据系统设计,存储器装置150中可包括多于或少于两个的存储器管芯,各个存储器管芯中可包括多于或少于两个的平面。另外,包括在各个平面中的存储块的预定数量也可根据系统设计而进行不同的调整。
控制器130可基于同时被选择和操作的存储块来对多个存储块BLOCK000至BLOCK00N、BLOCK010至BLOCK01N、BLOCK100至BLOCK10N和BLOCK110至BLOCK11N进行划分,而非基于它们的物理位置,例如存储器管芯DIE0和DIE1或平面PLANE00和PLANE01/平面PLANE10和PLANE11,来对多个存储块BLOCK000至BLOCK00N、BLOCK010至BLOCK01N、BLOCK100至BLOCK10N和BLOCK110至BLOCK11N进行划分。换言之,控制器130可通过将能够被同时选择的存储块进行分组并将被分组的存储块划分为超级存储块,来管理基于物理位置而位于不同管芯或不同平面中的多个存储块。
通过控制器130将存储块分组为超级存储块的同时选择方案可根据系统设计而以各种方式执行。以下将描述三种示例性同时选择方案。
第一方案是将来自第零存储器管芯DIE0的第一平面PLANE00的任意存储块BLOCK000和来自第零存储器管芯DIE0的第二平面PLANE01的任意存储块BLOCK010分组,将被分组的存储块BLOCK000和BLOCK010作为单个超级存储块A1进行管理。当对第一存储器管芯DIE1应用第一方案时,控制器130可将来自第一存储器管芯DIE1的第一平面PLANE10的任意存储块BLOCK100和来自第一存储器管芯DIE1的第二平面PLANE11的任意存储块BLOCK110分组,并将被分组的存储块BLOCK100和BLOCK110作为单个超级存储块A2进行管理。
第二方案是将来自第零存储器管芯DIE0的第一平面PLANE00的任意存储块BLOCK002和来自第一存储器管芯DIE1的第一平面PLANE10的任意存储块BLOCK102分组,并将被分组的存储块BLOCK002和BLOCK102作为单个超级存储块B1进行管理。另外,根据第二方案,控制器130可将来自第零存储器管芯DIE0的第二平面PLANE01的任意存储块BLOCK012和来自第一存储器管芯DIE1的第二平面PLANE11的任意存储块BLOCK112进行分组,并将被分组的存储块BLOCK012和BLOCK112作为单个超级存储块B2进行管理。
第三方案是将来自第零存储器管芯DIE0的第一平面PLANE00的任意存储块BLOCK001、来自第零存储器管芯DIE0的第二平面PLANE01的任意存储块BLOCK011、来自第一存储器管芯DIE1的第一平面PLANE10的任意存储块BLOCK101、来自第一存储器管芯DIE1的第二平面PLANE11的任意存储块BLOCK111进行分组,并将被分组的存储块BLOCK001、BLOCK011、BLOCK101和BLOCK111作为单个超级存储块C进行管理。
可由控制器130通过交错方案,例如通过通道交错方案、存储器管芯交错方案、存储器芯片交错方案或路径交错方案来基本同时地选择各个超级存储块中的可被同时选择的存储块。
图6是示出在根据本发明的实施例的存储器系统110中以超级存储块为单位管理存储块的操作的示图。
参照图6,当控制器130通过将存储块划分为多个超级存储块来管理存储器装置150中的多个存储块时,可应用选择超级存储块中的每一个的方案。
如图所示,存储器装置150可包括八个存储器管芯DIE<0:7>。八个存储器管芯DIE<0:7>中的每一个可包括四个平面PLANE<0:3>,因此存储器装置150可包括总共32个平面PLANE<0:3>*8。32个平面中的每一个可包括1024个存储块BLOCK<0:1023>。也就是说,存储器装置150可包括总共32768个存储块BLOCK<0:1023>*32。
因此,如图6所示,在存储器装置150中,八个存储器管芯DIE<0:7>中的32个平面PLANE<0:3>*8通过两个通道CH<0:1>和八个路径WAY<0:7>输入/输出数据。更具体地,示出了四个路径WAY<0:3>或WAY<4:7>共享一个通道CH0或CH1,并且四个平面PLANE<0:3>共享一个路径WAY0、WAY1、WAY2、WAY3、WAY4、WAY5、WAY6或WAY7。
存储器系统110的控制器130可通过将存储器装置150中的多个存储块划分为超级存储块来对它们进行管理。特别地,图6所示的根据本发明的实施例的控制器130使用在前面参照图5描述的将存储块划分为超级存储块的三种同时选择方案之中的第三方案。
也就是说,图6所示的控制器130可从32个平面PLANE<0:3>*8中的每一个中选择任意存储块,并且将所选择的存储块作为单个超级存储块SUPER BLOCK0、SUPER BLOCK1、SUPER BLOCK2……或SUPER BLOCK1023进行管理。因此,超级存储块SUPER BLOCK<0:1023>中的每一个可包括32个存储块。
因为控制器130同时选择超级存储块SUPER BLOCK<0:1023>中的每一个中的32个存储块,所以控制器130可使用超级存储块地址(未示出)以利用以超级存储块为单位管理存储块的结构选择超级存储块SUPER BLOCK<0:1023>中的每一个,如图6所示。
为了使用超级存储块地址,控制器130可使用将位于32个平面PLANE<0:3>*8中的每一个的相同位置处的存储块分组并且将被分组的存储块作为超级存储块进行管理的方案。
例如,控制器130可将来自32个平面PLANE<0:3>*8中的每一个的32个第零存储块BLOCK0分组,并将被分组的32个第零存储块BLOCK0作为第零超级存储块SUPER BLOCK0来进行管理,将来自32个平面PLANE<0:3>*8中的每一个的32个第一存储块BLOCK1分组,并将被分组的32个第一存储块BLOCK1作为第一超级存储块SUPER BLOCK1进行管理,以及将来自32个平面PLANE<0:3>*8中的每一个的32个第二存储块BLOCK2分组,并将分组的32个第二存储块BLOCK2作为第二超级存储块SUPER BLOCK2进行管理。以这种方式,控制器130可通过将32768个存储块BLOCK<0:1023>*32划分为总共1024个超级存储块SUPER BLOCK<0:1023>来对它们进行管理。
控制器130通过将存储块BLOCK<0:1023>*32划分为超级存储块SUPER BLOCK<0:1023>来对它们进行管理的事实可以意味着控制器130在执行访问操作时以超级存储块为单位进行处理。换言之,正是因为控制器130使用超级存储块地址来选择超级存储块SUPERBLOCK<0:1023>中的每一个并不意味着不使用用于选择32768个存储块BLOCK<0:1023>*32中的每一个的存储块地址,而是在控制器130中可能会连续使用存储块地址。例如,当控制器130通过第零超级存储块地址访问第零超级存储块SUPER BLOCK0时,这可以意味着控制器130一次就可以访问与被分组为第零超级存储块SUPER BLOCK0的32个第零存储块BLOCK0相对应的32个存储块地址。
实际上,存储器装置150中的所有存储块可能无法均正常地操作。也就是说,当在实施方案中使用存储器装置150时,可能产生未正常操作的坏存储块。在多个存储块之中具有较低耐久性的存储块即使在未达到预定的极限寿命时也可能因为未执行正常操作而被指定为坏存储块。
然而,当控制器130使用将位于32个平面PLANE<0:3>*8中的每一个的相同位置处的存储块分组并将被分组的存储块作为超级存储块来进行管理的方案,以便如上所述使用超级存储块地址时,超级存储块SUPER BLOCK<0:1023>中包括坏存储块的超级存储块可能无法正常地操作。也就是说,当即使超级存储块SUPER BLOCK<0:1023>中的任何一个中的32个存储块中的一个被确定为坏存储块时,相应的超级存储块可能无法正常地操作。
虽然超级存储块中的32个存储块中仅有一个是坏存储块,而其它31个存储块都是正常的,但超级存储块因其无法正常使用而是非常低效的。
因此,根据本发明的实施例的存储器系统110可使用图7B所示的坏块发生信息720和替换信息740来重新使用其中一个或多个存储块是坏存储块的超级存储块。
图7A和图7B是示出在根据本发明的实施例的存储器系统110中恢复包括坏存储块的超级存储块的方法的示图。
参照图7A,多个存储块BLOCK<0:1023>*32中的一些存储块BLOCK<0:1021>*32可作为超级存储块SUPER BLOCK<0:1021>被管理。超级存储块SUPER BLOCK<0:1021>中的每一个可由分别从32个平面PLANE<0:3>*8中选择的32个存储块形成。
而且,剩余的存储块BLOCK<D1:D64>可不作为超级存储块被管理,但可在替换块池700中被管理。
也就是说,在根据本发明的实施例的存储器系统110中,存储块BLOCK<D1:D64>可从存储块BLOCK<0:1023>*32中分离并且可在替换块池700中进行管理。
如图7A所示,在替换块池700中被管理的存储块BLOCK<D1:D64>可包括由于坏存储块BLOCK<D2>而不能被划分为超级存储块的正常存储块BLOCK<D1,D3:D32>,并且可包括整体能够被划分为超级存储块的正常存储块BLOCK<D33:D64>。也就是说,可根据系统设计而不同地确定替换块池700中包括和管理的存储块的种类和数量。
可以看出的是存储块BLOCK<0:1023>*32之中的存储块BLOCK<0:1021>*32作为超级存储块SUPER BLOCK<0:1021>被管理,并且第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK 820中的每一个中的32个存储块中的一些被确定为坏存储块。
当制造存储器系统110时,坏存储块不一定位于第718超级存储块SUPER BLOCK718和第820超级存储块SUPER BLOCK 820中的每一个中。换言之,当制造存储器系统110时,第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK 820中的所有存储块可正常地操作,但是当在安装状态下对这些超级存储块重复执行访问操作时,这些超级存储块中具有较低耐久性的一些存储块可能会变成不能执行正常操作的坏存储块。
当在制造存储器系统110时坏存储块位于第718超级存储块SUPER BLOCK718和第820超级存储块SUPER BLOCK820中的每一个中时,第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK 820很可能从一开始就在替换块池700中被管理。换言之,如上所述,可根据系统设计确定替换块池700中包括和管理的存储块的种类和数量,但通常情况下,不能被划分为超级存储块的、处于正常状态下的存储块很可能在替换块池700中被管理。
具体地,可看出的是第718超级存储块SUPER BLOCK 718中的32个存储块之中的第零存储器管芯DIE0的第一平面PLANE1中的存储块被确定为坏存储块,第718超级存储块SUPER BLOCK 718中的32个存储块之中的第一存储器管芯DIE1的第一平面PLANE1中的存储块被确定为坏存储块,第718超级存储块SUPER BLOCK 718中的32个存储块之中的第四存储器管芯DIE4的第一平面PLANE1中的存储块被确定为坏存储块,并且剩余的29个存储块是正常存储块。
而且,可看出的是第820超级存储块SUPER BLOCK 820中的32个存储块之中的第零存储器管芯DIE0的第一平面PLANE1中的存储块被确定为坏存储块,第820超级存储块SUPERBLOCK 820中的32个存储块之中第三存储器管芯DIE3的第一平面PLANE1中的存储块被确定为坏存储块,第820超级存储块SUPER BLOCK 820中的32个存储块之中第四存储器管芯DIE4的第一平面PLANE1中的存储块被确定为坏存储块,并且剩余的29个存储块是正常存储块。
在这种状态下,如图7B所示,控制器130可利用在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>替换被确定为坏超级存储块的第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK 820中的每一个中的坏存储块,并将它们作为恢复超级存储块RE SUPER BLOCK<0:1>进行管理。
具体地,参照图7A和图7B,控制器130可使用位图形式的坏块发生信息720来管理将超级存储块SUPER BLOCK<0:1021>划分为正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>和坏超级存储块SUPER BLOCK<718,820>的信息。也就是说,控制器130可通过位图形式的坏块发生信息720来管理超级存储块SUPER_BLOCK<0:1021>,以确定是否需要将超级存储块SUPER BLOCK<0:1021>划分为正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>和坏超级存储块SUPER BLOCK<718,820>。例如,为了管理1021个超级存储块SUPERBLOCK<0:1021>,表示坏块发生信息720的位图中可包括总共1021个信息位BI{第1:第1021},并且为了表示第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK820被确定为坏超级存储块SUPER BLOCK<718,820>,坏块发生信息720中的1021个信息位BI{第1:第1021}之中的第718信息位BI{第718}和第820信息位BI{第820}可具有值“1”,并且剩余的1019个信息位BI{第1:第717,第719:第819,第821:第1021}可具有值“0”。
因此,当根据主机102的请求访问超级存储块SUPER BLOCK<0:1021>时,控制器130可检查坏块发生信息720以确定主机102请求访问的任何超级存储块是坏超级存储块SUPERBLOCK<718,820>中的一个还是正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>中的一个。
当根据坏块发生信息720的检查结果主机102请求访问的超级存储块被确定为正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>时,如以上参照图6所述,控制器130可使用超级存储块地址来访问正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>。
当根据坏块发生信息720的检查结果主机102请求访问的超级存储块被确定为坏超级存储块SUPER BLOCK<718,820>时,控制器130可使用替换信息740来将坏超级存储块SUPER BLOCK<718,820>改变为恢复超级存储块RE SUPER BLOCK<0:1>。替换信息740可用于利用替换块池700中的正常存储块D34、D10、D26、D1、D18和D58来替换坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK820_1、BLOCK 820_18和BLOCK 820_26,并将正常存储块D34、D10、D26、D1、D18和D58置入恢复超级存储块RE SUPER BLOCK<0:1>中。
综上所述,控制器130可参照图5和图6所述的方案将存储器装置150中的存储块BLOCK<0:1023>*32进行分组,并将被分组的存储块作为超级存储块SUPER BLOCK<0:1021>进行管理,并且可在替换块池700中将存储块BLOCK<0:1023>*32之中未被分组为超级存储块SUPER BLOCK<0:1021>的正常存储块BLOCK<D1,D3:D64>进行管理。
而且,控制器130可将超级存储块SUPER BLOCK<0:1021>之中的包括坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的超级存储块SUPER BLOCK<718,820>设置为坏超级存储块SUPER BLOCK<718,820>。
控制器130可使用位图形式的坏块发生信息720来管理将超级存储块SUPER BLOCK<0:1021>划分为正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>和坏超级存储块SUPER BLOCK<718,820>的信息。
而且,控制器130可使用替换信息740来利用替换块池700中的正常存储块D34、D10、D26、D1、D18和D58来替换坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK718_1、BLOCK718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK820_26,从而使正常存储块D34、D10、D26、D1、D18和D58成为恢复超级存储块RE SUPER BLOCK<0:1>的一部分。
下面利用特定的示例来描述使用替换信息740的方法。
用于表示替换块池700中的各个存储块BLOCK<D1:D64>的所有物理地址的物理表BRA{第0:第63}可以索引形式被包括在替换信息740中。例如,如图7A所示,总共64个存储块BLOCK<D1:D64>可包括在替换块池700中,因此用于表示各个存储块BLOCK<D1:D64>的物理地址的64个物理表BRA{第0:第63}可以索引形式被包括在替换信息740中。
为便于管理替换块池700中的存储块的物理地址,物理表BRA{第0:第63}可被配置成一个块的物理地址被存储,并且替换块池700中剩余存储块的物理地址被表示,并因此被包括在替换信息740中。换言之,因为在替换块池700中的存储块BLOCK<D1:D64>之中仅具有最靠前的物理地址的第一存储块BLOCK<D1>的物理地址D1被存储在替换信息740中,并且剩余的第二至第64存储块BLOCK<D2:D64>的物理地址基于第一存储块BLOCK<D1>的物理地址进行计算,因此不是用于存储而是用于表示替换块池700中的存储块BLOCK<D1:D64>的物理地址的物理表BRA{第0:第63}可被包括在替换信息740中。
例如,替换块池700中的第三存储块BLOCK<D3>的物理地址可以是与第一存储块BLOCK<D1>的物理地址D1相差两个单位的物理地址D1+第2。为了表示物理地址D1+第2,包括在替换信息740中的物理表BRA{第0:第63}之中的第3位的物理表BRA{第2}可对应于第三存储块BLOCK<D3>。
类似地,替换块池700中的第10存储块BLOCK<D10>的物理地址可以是与第一存储块BLOCK<D1>的物理地址D1相差九个单位的物理地址D1+第9。为了表示物理地址D1+第9,包括在替换信息740中的物理表BRA{第0:第63}之中的第10位的物理表BRA{第9}可对应于第10存储块BLOCK<D10>。
而且,对应于第一存储块BLOCK<D1>、表示其物理地址与第一存储块BLOCK<D1>的物理地址D1相同的且位于第一位的物理表BRA{第0}可被包括在替换信息740中的物理表BRA{第0:第63}中。
如上所示,替换块池700中对应于物理表的存储块和相应存储块的物理地址可根据替换信息740中的物理表BRA{第0:第63}的位置来确定。
当最初制造存储器系统110时,即当存储器装置150中的所有超级存储块SUPERBLOCK<0:1021>作为正常超级存储块操作时,没有值会存储在替换信息740中的物理表BRA{第0:第63}中。换言之,在最初制造存储器系统110时,替换信息740中的物理表BRA{第0:第63}可以为空。
然而,当开始管理坏超级存储块SUPER BLOCK<718,820>时,特定值可存储在替换信息740中的物理表BRA{第0:第63}中。也就是说,坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的物理地址718_1、718_10、718_26、820_1、820_18和820_26可存储在替换信息740中的物理表BRA{第0:第63}之中的、与用于替换坏超级存储块SUPER BLOCK<718,820>中的上述被识别的坏存储块的替换块池700的正常存储块D34、D10、D26、D1、D18和D58相对应的物理表BRA{第33,第9,第25,第0,第17,第57}中。
表示与相应的物理表BRA{第33,第9,第25,第0,第17,第57}相对应的替换块池700的正常存储块D34、D10、D26、D1、D18和D58中的每一个是否适于恢复超级存储块RE SUPERBLOCK<0:1>的交错操作的标志信息IFI可以位图形式包括在物理表BRA中(第33,第9,第25,第0,第17,第57)中,在该物理表BRA中(第33,第9,第25,第0,第17,第57)中存储了坏存储块BLOCK 718_1、BLOCK718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK820_26的物理地址718_1、718_10、718_26、820_1、820_18和820_26。
以这种方式,标志信息IFI以及坏存储块BLOCK 718_1、BLOCK718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK820_26的物理地址718_1、718_10、718_26、820_1、820_18和820_26可一起被存储在替换信息740。标志信息IFI必须被存储在替换信息740中的原因可能是坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK718_10、BLOCK 718_26、BLOCK820_1、BLOCK 820_18和BLOCK 820_26被替换块池700中的正常存储块D34、D10、D26、D1、D18和D58替换,然后恢复超级存储块RE SUPER BLOCK<0:1>的访问方法根据交错操作是否可行而变化。因此,当坏超级存储块SUPER_BLOCK<718,820>中的坏存储块BLOCK718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK820_18和BLOCK820_26被替换块池700中的正常存储块D34、D10、D26、D1、D18和D58替换时,可检查以下条件。
如图7A所示,将以示例来描述六个坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26处于超级存储块SUPER BLOCK<0:1021>之中的两个坏超级存储块SUPER BLOCK<718,820>中的情况。
为了重新使用被确定为坏超级存储块的第718超级存储块SUPER BLOCK 718,控制器130可从替换块池700中的正常存储块BLOCK<D1,D3:D64>中检索能够替换第零存储器管芯DIE0的第一平面PLANE1中的存储块BLOCK 718_1、第一存储器管芯DIE1的第一平面PLANE1中的存储块BLOCK 718_10和第四存储器管芯DIE4的第一平面PLANE1中的存储块BLOCK 718_26的正常存储块D34、D10和D26。
另外,为了重新使用被确定为坏超级存储块的第820超级存储块SUPER BLOCK820,控制器130可从替换块池700中的正常存储块BLOCK<D1,D3:D64>中检索能够替换第零存储器管芯DIE0的第一平面PLANE1中的存储块BLOCK 820_1、第三存储器管芯DIE3的第一平面PLANE1中的存储块BLOCK 820_18和第四存储器管芯DIE4的第一平面PLANE1中的存储块BLOCK 820_26的正常存储块D1、D18和D58。
用于在替换块池700中管理的正常存储块BLOCK<D1,D3:D64>之中检索用于替换坏超级存储块SUPER_BLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK820_1、BLOCK 820_18和BLOCK 820_26的替换存储块D34、D10、D26、D1、D18和D58的条件的第一优先级可以是,坏存储块BLOCK718_1、BLOCK 718_10、BLOCK 718_26、BLOCK820_1、BLOCK820_18和BLOCK 820_26即使在通过替换块池700中的正常存储块BLOCK<D1,D3:D64>在恢复超级存储块RE SUPER BLOCK<0:1>中被管理的状态下是否以交错方案操作。也就是说,如以上参照图5所述,当包括在单个平面PLANE0或PLANE1中的两个或更多个存储块被包括在单个超级存储块中时,该单个超级存储块可能不能以交错方案操作。
因此,当检索用于替换坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的替换存储块D34、D10、D26、D1、D18和D58时,控制器130可检查坏存储块BLOCK718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK820_18和BLOCK 820_26的物理位置作为第一优先级。换言之,控制器130可检查其中包括坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的对应的管芯和平面作为第一优先级。随后,控制器130可从替换块池700中的正常存储块BLOCK<D1,D3:D64>中选择与坏存储块BLOCK718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK820_18和BLOCK 820_26具有相同物理位置的正常存储块。
当不满足第一优先级的上述条件时,即当根据检查,在替换块池700中的正常存储块BLOCK<D1,D3:D64>中不存在与坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26具有相同物理位置的正常存储块时,可根据第二优先级进行检索在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>。第二优先级可以是坏超级存储块SUPER BLOCK<718,820>是否可能通过利用替换块池700的正常存储块BLOCK<D1,D3:D64>替换坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26而变为恢复超级存储块RE SUPER BLOCK<0:1>。单个恢复超级存储块RE SUPER BLOCK<0或1>包括预定数量的正常存储块,例如附图所示的32个正常存储块。为此,当替换块池700中的所有正常存储块BLOCK<D1,D3:D64>都被用作替换存储块时,可能不存在能够替换坏超级存储块SUPERBLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK820_26的正常存储块,因此可能无法针对坏超级存储块SUPER BLOCK<718,820>生成恢复超级块RE SUPER BLOCK<0:1>。
因此,如果当检索在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>时不满足上述第一优先级,则控制器130可检查第二优先级,即检查在替换块池700的正常存储块BLOCK<D1,D3:D64>中是否存在能够替换坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK 718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK820_26的正常存储块,并且可根据检查结果使用替换块池700的正常存储块来替换以上被识别的坏存储块。
当检查第二优先级,即检查在替换块池700的正常存储块BLOCK<D1,D3:D64>中是否存在能够替换坏超级存储块SUPER BLOCK<718,820>中的坏存储块BLOCK 718_1、BLOCK718_10、BLOCK 718_26、BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的正常存储块时,控制器130可从替换块池700的正常存储块BLOCK<D1,D3:D64>中检查与那些坏存储块物理上相对接近的正常存储块。
例如,可假设坏存储块被包括在第零存储器管芯DIE0的第一平面PLANE1中,并且仅包括在第零存储器管芯DIE0的第零平面PLANE0中的正常存储块BLOCK D1和包括在第一存储器管芯DIE1的第零平面PLANE0中的正常存储块BLOCK D9被包括在替换块池700中。在这种状态下,可选择替换块池700的、与坏存储块物理上相对接近的正常存储块,即选择来自替换块池700的正常存储块BLOCK D1来替换第零存储器管芯DIE0的第一平面PLANE1中的坏存储块。
作为检查的结果,当替换块池700的正常存储块BLOCK<D1,D3:D64>中不存在能够替换坏超级存储块SUPER BLOCK<718,820>的坏存储块的正常存储块时,坏超级存储块SUPER BLOCK<718,820>可能不会改变为恢复超级存储块RE SUPER BLOCK<0:1>,并且坏超级存储块SUPER BLOCK<718,820>可能不再作为正常超级存储块操作。
下面将描述控制器130如何通过用于检索在上述替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>的条件的第一优先级和第二优先级来将超级存储块SUPER BLOCK<0:1021>中的、被确定为坏超级存储块的第718超级存储块SUPER BLOCK 718和第820超级存储块SUPER BLOCK 820改变为恢复超级存储块RE SUPER BLOCK<0:1>。
控制器130可基于第一优先级的条件来检索替换块池700的正常存储块BLOCK<D1,D3:D64>以便替换第718超级存储块SUPER BLOCK718中的坏存储块BLOCK 718_1、BLOCK718_10和BLOCK 718_26,即第零存储器管芯DIE0的第一平面PLANE1中的存储块BLOCK718_1、第一存储器管芯DIE1的第一平面PLANE1中的存储块BLOCK718_10和第四存储器管芯DIE4的第一平面PLANE1中的存储块BLOCK 718_26。
作为检索的结果,控制器130可检查正常存储块D34存在于第零存储器管芯DIE0的第一平面PLANE1中,并且使用正常存储块D34来替换第718超级存储块SUPER BLOCK 718的第零存储器管芯DIE0的第一平面PLANE1中的坏存储块BLOCK 718_1。
为了通过利用替换块池700的第34存储块D34替换第718超级存储块SUPER BLOCK718中的坏存储块BLOCK 718_1来将第718超级存储块SUPER BLOCK 718改变为第零恢复超级存储块RE SUPER BLOCK<0>,控制器130可将坏存储块BLOCK 718_1的物理地址718_1存储在替换信息740的物理表BRA{第0:第63}之中的、与替换块池700中的存储块BLOCK<D1:D64>之中的第34存储块D34相对应的第34物理表BRA{第33}中。
另外,因为基于第一优先级的条件检索到第34存储块D34,所以具有表示可利用替换块池700的第34存储块D34来执行第零恢复超级存储块RE SUPER BLOCK<0>的交错操作的第一值“0”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第34物理表BRA{第33}中。
控制器130可检查正常存储块D10存在于在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>之中的第一存储器管芯DIE1的第一平面PLANE1中,并且使用正常存储块D10来替换第718超级存储块SUPER BLOCK 718的第零存储器管芯DIE0的第一平面PLANE1中的坏存储块BLOCK 718_10。
为了通过利用替换块池700的第10存储块D10替换第718超级存储块SUPER BLOCK718中的坏存储块BLOCK 718_10来将第718超级存储块SUPER BLOCK 718改变为第零恢复超级存储块RE SUPER BLOCK<0>,控制器130可将坏存储块BLOCK 718_10的物理地址718_10存储在替换信息740的物理表BRA{第0:第63}之中的与替换块池700中的存储块BLOCK<D1:D64>之中的第10存储块D10相对应的第10物理表BRA{第9}中。
另外,因为基于第一优先级的条件检索到第10存储块D10,所以具有表示可利用替换块池700的第10存储块D10来执行第零恢复超级存储块RE SUPER BLOCK<0>的交错操作的第一值“0”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第10物理表BRA{第9}中。
控制器130可检查正常存储块D26存在于在替换块池700中管理的正常存储块BLOCK<D1,D3:D64>之中的第四存储器管芯DIE4的第一平面PLANE1中,并且使用正常存储块D26来替换第718超级存储块SUPER BLOCK 718的第四存储器管芯DIE4的第一平面PLANE1中的坏存储块BLOCK 718_26。
为了通过利用替换块池700的第26存储块D26替换第718超级存储块SUPER BLOCK718中的坏存储块BLOCK 718_26来将第718超级存储块SUPER BLOCK 718改变为第零恢复超级存储块RE SUPER BLOCK<0>,控制器130可将坏存储块BLOCK 718_26的物理地址718_26存储在替换信息740的物理表BRA{第0:第63}之中的与替换块池700中的存储块BLOCK<D1:D64>之中的第26存储块D26相对应的第26物理表BRA{第25}中。
另外,因为基于第一优先级的条件检索到第26存储块D26,所以具有表示可利用替换块池700的第26存储块D26来执行第零恢复超级存储块RE SUPER BLOCK<0>的交错操作的第一值“0”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第26物理表BRA{第25}中。
如上所述,第718超级存储块SUPER BLOCK 718中的坏存储块BLOCK 718_1、BLOCK718_10和BLOCK 718_26可使用在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>之中的第34存储块D34、第10存储块D10和第26存储块D26来替换,并且替换这些坏存储块所需的信息可存储在替换信息740中。因此,可通过替换信息740将第718超级存储块SUPERBLOCK718改变为第零恢复超级存储块RESUPER BLOCK<0>。而且,因为标志信息IFI被包括在替换信息740中,所以可通过检索替换信息740的操作来确定第零恢复超级存储块RE SUPERBLOCK<0>的交错操作是否可行。
下面描述在控制器130中访问第零恢复超级存储块RE SUPER BLOCK<0>的方法。
当根据主机102的请求访问第718超级存储块SUPER BLOCK 718时,控制器130可通过坏块发生信息720将第718超级存储块SUPER BLOCK 718识别为坏超级存储块。因此,当访问第718超级存储块SUPER BLOCK 718时,控制器130可不使用超级存储块地址,并且可检查第718超级存储块SUPER BLOCK 718中的32个存储块718_<0:31>的物理地址718_<0:31>中的每一个是否都被存储在替换信息740的物理表BRA{第0:第63}中。
例如,因为第718超级存储块SUPER BLOCK 718中的第零存储块BLOCK 718_0不是坏存储块,因此对应于第零存储块BLOCK 718_0的物理地址718_0可不被存储在替换信息740的物理表BRA{第0:第63个}中。因此,控制器130可使用第零存储块BLOCK 718_0的物理地址718_0,如同第零存储块BLOCK 718_0位于第零恢复超级存储块RE SUPER BLOCK<0>中。因为第718超级存储块SUPER BLOCK 718中的第一存储块BLOCK 718_1为坏存储块,因此对应于第一存储块BLOCK 718_1的物理地址718_1可存储在替换信息740的物理表BRA{第0:第63}之中的第34物理表BRA{第33}中。因此,控制器130可利用替换块池700中使用的正常存储块D34的物理地址D1+第33来替换第一存储块BLOCK 718_1的物理地址718_1,并且使用第零恢复超级存储块RE SUPER BLOCK<0>中的正常存储块D34的物理地址D1+第33。
以这种方式,控制器130可利用在替换池700中使用的正常存储块D34、D10和D26的物理地址D1+第33、D1+第9和D1+第25来替换第718超级存储块SUPER BLOCK 718中的32个存储块BLOCK 718_<0:31>之中的坏存储块BLOCK 718_1、BLOCK 718_10和BLOCK718_26的物理地址718_1、718_10和718_26,然后将正常存储块D34、D10和D26的物理地址D1+第33、D1+第9和D1+第25视为坏存储块BLOCK 718_1、BLOCK 718_10和BLOCK 718_26的物理地址,与剩余的29个正常存储块BLOCK 718_<0,2:9,11:25,27:31>的物理地址718_<0,2:9,11:25,27:31>一起用于第零恢复超级存储块RE SUPER BLOCK<0>,从而访问第零恢复超级存储块RESUPER BLOCK<0>。
当在替换信息740的物理表BRA{第33,第9,第25}中检索到第718超级存储块SUPERBLOCK 718中的坏存储块BLOCK 718_1、BLOCK718_10和BLOCK 718_26的物理地址718_1、718_10和718_26时,控制器130可检查对应于物理地址718_1、718_10和718_26的标志信息IFI的值。
因为作为检查的结果,所有标志信息IFI具有第一值“0”,因此可确定第零恢复超级存储块RE SUPER BLOCK<0>的交错操作可行。因此,当访问第零恢复超级存储块RE SUPERBLOCK<0>以根据主机102的请求访问第718超级存储块SUPER BLOCK 718时,类似于访问其它正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>,控制器130可使用交错方案来访问第零恢复超级存储块RE SUPER BLOCK<0>。
控制器130可基于第一优先级的条件来检索替换块池700的正常存储块BLOCK<D1,D3:D64>以便替换第820超级存储块SUPER BLOCK820中的坏存储块BLOCK 820_1、BLOCK820_18和BLOCK 820_26,即第零存储器管芯DIE0的第一平面PLANE1中的存储块BLOCK820_1、第三存储器管芯DIE3的第一平面PLANE1中的存储块BLOCK820_18和第四存储器管芯DIE4的第一平面PLANE1中的存储块BLOCK 820_26。
作为检索的结果,控制器130可确定正常存储块D34已经被用于替换第718超级存储块SUPER BLOCK 718的第零存储器管芯DIE0的第一平面PLANE1中的坏存储块BLOCK 718_1。因此,根据第一优先级的条件无法来替换第820超级存储块SUPER BLOCK 820的第零存储器管芯DIE0的第一平面PLANE1中的坏存储块BLOCK 820_1。
因此,控制器130可基于第二优先级的条件再次检索替换块池700的正常存储块BLOCK<D1,D3:D64>。
作为检索的结果,控制器130可确定正常存储块D1存在于替换块池700中管理的正常存储块BLOCK<D1,D3:D64>之中的第零存储器管芯DIE0的第零平面PLANE0中,并且使用正常存储块D1来替换第820超级存储块SUPER BLOCK 820的第零存储器管芯DIE0的第一平面PLANE1中的坏存储块BLOCK 820_1。
为了通过利用替换块池700的第一存储块D1来替换第820超级存储块SUPER BLOCK820中的坏存储块BLOCK820_1来将第820超级存储块SUPER BLOCK 820改变为第一恢复超级存储块RE SUPER BLOCK<1>,控制器130可将坏存储块BLOCK 820_1的物理地址820_1存储在替换信息740的物理表BRA{第0:第63}之中的与替换块池700中的存储块BLOCK<D1:D64>之中的第一存储块D1相对应的第一物理表BRA{第0}中。
另外,因为第一存储块D1不是基于第一优先级的条件来检索,而是基于第二优先级的条件来检索的,所以具有表示利用替换块池700的第一存储块D1无法执行第一恢复超级存储块RE SUPER BLOCK<1>的交错操作的第二值“1”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第一物理表BRA{第0}中。
控制器130可确定正常存储块D18存在于在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>之中的第三存储器管芯DIE3的第一平面PLANE1中,并且使用正常存储块D18来替换第820超级存储块SUPER BLOCK 820的第三存储器管芯DIE3的第一平面PLANE1中的坏存储块820_18。
为了通过利用替换块池700的第18存储块D18替换第820超级存储块SUPER BLOCK820中的坏存储块BLOCK 820_18来将第820超级存储块SUPER BLOCK 820改变为第一恢复超级存储块RE SUPER BLOCK<1>,控制器130可将坏存储块BLOCK820_18的物理地址820_18存储在替换信息740的物理表BRA{第0:第63}之中的与替换块池700中的存储块BLOCK<D1:D64>之中的第18存储块D18相对应的第18物理表BRA{第17}中。
另外,因为基于第一优先级的条件检索到第18存储块D18,所以具有表示可利用替换块池700的第18存储块D18来执行第一恢复超级存储块RE SUPER BLOCK<1>的交错操作的第一值“0”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第18物理表BRA{第17}中。
控制器130可确定正常存储块D58存在于在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>之中的第四存储器管芯DIE4的第一平面PLANE1中,并且使用正常存储块D58来替换第820超级存储块SUPER BLOCK 820的第四存储器管芯DIE4的第一平面PLANE1中的坏存储块BLOCK820_26。
为了通过利用替换块池700的第58存储块D58替换第820超级存储块SUPER BLOCK820中的坏存储块BLOCK 820_26来将第820超级存储块SUPER BLOCK 820改变为第一恢复超级存储块RE SUPER BLOCK<1>,控制器130可将坏存储块BLOCK820_26的物理地址820_26存储在替换信息740的物理表BRA{第0:第63}之中的与替换块池700中的存储块BLOCK<D1:D64>之中的第58存储块D58相对应的第58物理表BRA{第57个}中。
另外,因为基于第一优先级的条件检索到第58存储块D58,所以具有表示可利用替换块池700的第58存储块D58来执行第一恢复超级存储块RE SUPER BLOCK<1>的交错操作的第一值“0”的标志信息IFI可被包括在替换信息740的物理表BRA{第0:第63}之中的第58物理表BRA{第57}中。
如上所述,第820超级存储块SUPER BLOCK 820中的坏存储块BLOCK 820_1、BLOCK820_18和BLOCK 820_26可使用在替换块池700中被管理的正常存储块BLOCK<D1,D3:D64>之中的第一存储块D1、第18存储块D18和第58存储块D58来替换,并且替换那些坏存储块所需的信息可存储在替换信息740中。因此,可通过替换信息740将第820超级存储块SUPERBLOCK820改变为第一恢复超级存储块RESUPER BLOCK<1>。
而且,因为标志信息IFI被包括在替换信息740中,所以可快速地确定第一恢复超级存储块RE SUPER BLOCK<1>的交错操作是否可行。
下面描述在控制器130中访问第一恢复超级存储块RE SUPER BLOCK<1>的方法。
当根据主机102的请求访问第820超级存储块SUPER BLOCK 820时,控制器130可通过坏块发生信息720将第820超级存储块SUPER BLOCK 820识别为坏超级存储块。因此,当访问第820超级存储块SUPER BLOCK 820时,控制器130可不使用超级存储块地址,并且可检查第820超级存储块SUPER BLOCK 820中的32个存储块820_<0:31>的物理地址820_<0:31>中的每一个是否都被存储在替换信息740的物理表BRA{第0:第63}中。
例如,因为第820超级存储块SUPER BLOCK 820中的第零存储块BLOCK820_0不是坏存储块,因此对应于第零存储块BLOCK820_0的物理地址820_0可不被存储在替换信息740的物理表BRA{第0:第63}中。因此,控制器130可使用第820超级存储块SUPER BLOCK 820中的第零存储块BLOCK820_0的物理地址820_0,如同第820超级存储块SUPER BLOCK 820位于第一恢复超级存储块RE SUPER BLOCK<1>中。因为第820超级存储块SUPER BLOCK 820中的第一存储块BLOCK 820_1为坏存储块,因此对应于第一存储块BLOCK 820_1的物理地址820_1可存储在替换信息740的物理表BRA{第0:第63}之中的第一物理表BRA{第0}中。因此,控制器130可利用替换块池700中使用的正常存储块D1的物理地址D1来替换第一存储块BLOCK820_1的物理地址820_1,并且使用第一恢复超级存储块RE SUPER BLOCK<1>中的正常存储块D1的物理地址D1。
以这种方式,控制器130可利用在替换池700中使用的正常存储块D1、D18和D58的物理地址D1、D1+第17和D1+第57来替换第820超级存储块SUPER BLOCK 820中的32个存储块BLOCK820_<0:31>之中的坏存储块BLOCK 820_1、BLOCK 820_18和BLOCK 820_26的物理地址820_1、820_18和820_26,然后将正常存储块D1、D18和D58的物理地址D1、D1+第17和D1+第57视为坏存储块BLOCK 820_1、BLOCK820_18和BLOCK 820_26的物理地址,与剩余的29个正常存储块BLOCK 820_<0,2:17,19:25,27:31>的物理地址820_<0,2:17,19:25,27:31>一起用于第一恢复超级存储块RE SUPER BLOCK<1>,从而访问第一恢复超级存储块RE SUPERBLOCK<1>。
当在替换信息740的物理表BRA{0,第17,第57}中检索到第820超级存储块SUPERBLOCK 820中的坏存储块BLOCK 820_1、BLOCK820_18和BLOCK 820_26的物理地址820_1、820_18和820_26时,控制器130可检查对应于物理地址820_1、820_18和820_26的标志信息IFI的值。
因为作为检查的结果,具有第二值“1”的标志信息IFI被包括在标志信息IFI中,因此可确定第一恢复超级存储块RE SUPER BLOCK<1>的交错操作不可行。因此,当访问第一恢复超级存储块RE SUPER BLOCK<1>以根据主机102的请求访问第820超级存储块SUPERBLOCK 820时,与访问其它正常超级存储块SUPER BLOCK<0:717,719:819,821:1021>不同,控制器130可不使用交错方案来访问第一恢复超级存储块RE SUPER BLOCK<1>。
综上所述,控制器130可仅通过在访问恢复超级存储块RE SUPER BLOCK<0:1>以根据主机102的请求访问坏超级存储块SUPER BLOCK<718,820>的过程中执行的检查替换信息740的操作来检查恢复超级存储块RE SUPER BLOCK<0:1>中的每一个的交错操作是否可行。
将参照图8至图16详细描述应用了根据本发明的实施例的包括存储器装置150和控制器130的上述存储器系统110的数据处理系统和电子装置。
图8至图16是示意性示出根据各个实施例的图1至图7B的数据处理系统的应用示例的简图。
图8是示意性地示出包括根据本实施例的存储器系统的数据处理系统的示例的简图。图8示意性地示出应用了根据本实施例的存储器系统的存储卡系统。
参照图8,存储卡系统6100可包括存储器控制器6120、存储器装置6130和连接器6110。
更具体地,存储器控制器6120可被连接至通过非易失性存储器实施的存储器装置6130,并被配置成访问存储器装置6130。例如,存储器控制器6120可被配置成控制存储器装置6130的读取操作、写入操作、擦除操作和后台操作。存储器控制器6120可被配置成提供存储器装置6130和主机之间的接口并驱动固件以控制存储器装置6130。也就是说,存储器控制器6120可对应于参照图1至图6描述的存储器系统110的控制器130,并且存储器装置6130可对应于参照图1至图6描述的存储器系统110的存储器装置150。
因此,存储器控制器6120可包括RAM、处理器、主机接口、存储器接口和错误校正部件。存储器控制器6120可进一步包括图1至图6所述的元件。
存储器控制器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可包括如图5的存储器装置150中的多个管芯。
存储器控制器6120和存储器装置6130可被集成至单个半导体装置中。例如,存储器控制器6120和存储器装置6130可形成固态驱动器(SSD)。而且,存储器控制器6120以及存储器装置6130可形成诸如以下的存储卡:PC卡(PCMCIA:个人计算机存储卡国际协会)、标准闪存(CF)卡、智能媒体卡(例如,SM和SMC)、记忆棒、多媒体卡(例如,MMC、RS-MMC、微型MMC和eMMC)、SD卡(例如,SD、迷你SD、微型SD和SDHC)以及通用闪存(UFS)。
图9是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。
参照图9,数据处理系统6200可包括具有一个或多个非易失性存储器的存储器装置6230和用于控制存储器装置6230的存储器控制器6220。图8所示的数据处理系统6200可作为如参照图1所描述的诸如存储卡(CF、SD、微型SD等)或USB装置的存储介质。存储器装置6230可对应于图1至图6所述的存储器系统110中的存储器装置150,并且存储器控制器6220可对应于图1至图6所述的存储器系统110中的控制器130。
存储器控制器6220可响应于主机6210的请求控制对存储器装置6230的读取操作、写入操作或擦除操作,并且存储器控制器6220可包括一个或多个CPU 6221、诸如RAM 6222的缓冲存储器、ECC电路6223、主机接口6224以及诸如NVM接口6225的存储器接口。
CPU 6221可控制对存储器装置6230的操作,例如读取操作、写入操作、文件系统管理操作和坏页面管理操作。RAM 6222可根据CPU6221的控制来操作且用作工作存储器、缓冲存储器或高速缓冲存储器。当RAM 6222用作工作存储器时,通过CPU 6221处理的数据可被临时存储在RAM 6222中。当RAM 6222用作缓冲存储器时,RAM6222可用于缓冲从主机6210传输到存储器装置6230的数据或从存储器装置6230传输到主机6210的数据。当RAM 6222用作高速缓冲存储器时,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码、turbo码、里德-所罗门码、卷积码、RSC或诸如TCM或BCM的编码调制来校正错误。
存储器控制器6220可通过主机接口6224向主机6210传输数据/接收来自主机6210的数据,并通过NVM接口6225向存储器装置6230传输数据/接收来自存储器装置6230的数据。主机接口6224可通过PATA总线、SATA总线、SCSI、USB、PCIe或NAND接口连接至主机6210。存储器控制器6220可利用诸如WiFi或长期演进(LTE)的移动通信协议具有无线通信功能。存储器控制器6220可连接至外部装置,例如主机6210或另一个外部装置,然后向外部装置传输数据/接收来自外部装置的数据。特别地,由于存储器控制器6220被配置成通过各种通信协议中的一种或多种与外部装置通信,因此根据本实施例的存储器系统和数据处理系统可被应用于有线/无线电子装置,特别是移动电子装置。
图10是示意性示出包括根据本实施例的存储器系统的数据处理系统的另一示例的示图。图10示意性地说明应用了存储器系统的SSD。
参照图10,SSD 6300可包括控制器6320和包括多个非易失性存储器的存储器装置6340。控制器6320可对应于图1和图6的存储器系统110中的控制器130,并且存储器装置6340可对应于图1和图6的存储器系统中的存储器装置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的非易失性存储器来实施。为便于描述,图9示出了缓冲存储器6325存在于控制器6320中。然而,缓冲存储器6325可处于控制器6320的外部。
ECC电路6322可在编程操作期间计算待被编程到存储器装置6340的数据的ECC值,在读取操作期间基于ECC值对从存储器装置6340读取的数据执行错误校正操作,并在失效数据恢复操作期间对从存储器装置6340恢复的数据执行错误校正操作。
主机接口6324可提供与诸如主机6310的外部装置的接口功能,并且非易失性存储器接口6326可提供与通过多个通道连接的存储器装置6340的接口功能。
此外,可提供应用了图1和图6的存储器系统110的多个SSD 6300来实施数据处理系统,例如,RAID(独立磁盘冗余阵列)系统。RAID系统可包括多个SSD 6300和用于控制多个SSD 6300的RAID控制器。当RAID控制器响应于从主机6310提供的写入命令执行编程操作时,RAID控制器可根据多个RAID级别,即,从主机6310提供的写入命令的RAID级别信息,在SSD 6300中选择一个或多个存储器系统或SSD6300,并将对应于写入命令的数据输出到选择的SSD 6300。此外,当RAID控制器响应于从主机6310提供的读取命令执行读取操作时,RAID控制器可根据多个RAID级别,即,从主机6310提供的读取命令的RAID级别信息,在SSD6300中选择一个或多个存储器系统或SSD6300,并将从所选择的SSD 6300读取的数据提供给主机6310。
图11是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的简图。图11示意性地示出了应用了存储器系统的嵌入式多媒体卡(eMMC)。
参照图11,eMMC 6400可包括控制器6430和通过一个或多个NAND闪速存储器实施的存储器装置6440。控制器6430可对应于图1和图6的存储器系统110中的控制器130,并且存储器装置6440可对应于图1和图6的存储器系统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)接口。
图12至图15是示意性地示出包括根据实施例的存储器系统的数据处理系统的其它示例的示图。图12至图15示意性地示出应用了存储器系统的UFS(通用闪存)系统。
参照图12至图15,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和图6中所示的存储器系统110来实施。例如,在UFS系统6500、6600、6700和6800中,UFS装置6520、6620、6720和6820可以参照图9至图11描述的数据处理系统6200、SSD 6300或eMMC 6400的形式来实施,并且UFS卡6530、6630、6730和6830可以参照图8描述的存储卡系统6100的形式来实施。
此外,在UFS系统6500、6600、6700和6800中,主机6510、6610、6710和6810,UFS装置6520、6620、6720和6820以及UFS卡6530、6630、6730和6830可通过UFS接口,例如,MIPI(移动行业处理器接口)中的MIPI M-PHY和MIPI UniPro(统一协议)彼此通信。此外,UFS装置6520、6620、6720和6820与UFS卡6530、6630、6730和6830可通过除UFS协议以外的各种协议,例如,UFD、MMC、SD、迷你SD和微型SD彼此通信。
在图12所示的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卡可并联或以星型形式连接至主机6510,并且多个UFS卡可并联或以星型形式连接至UFS装置6520,或者串联或以链型形式连接至UFS装置6520。
在图13所示的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。
在图14所示的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。
在图15所示的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。
图16是示意性地示出包括根据实施例的存储器系统的数据处理系统的另一示例的示图。图16是示意性示出应用了存储器系统的用户系统的示图。
参照图16,用户系统6900可包括应用处理器6930、存储器模块6920、网络模块6940、存储模块6950和用户接口6910。
更具体地,应用处理器6930可驱动包括在用户系统6900中的诸如OS的部件,并且包括控制包括在用户系统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闪存和3D NAND闪存,并且可被提供为诸如用户系统6900的存储卡或外部驱动器的可移除存储介质。存储模块6950可以对应于以上参照图1和图6描述的存储器系统110。此外,存储模块6950可以被实施为如上参照图10至图15所述的SSD、eMMC和UFS。
用户接口6910可包括用于向应用处理器6930输入数据或命令或者用于将数据输出到外部装置的接口。例如,用户接口6910可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口,以及诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和电动机的用户输出接口。
此外,当图1和图6的存储器系统110应用于用户系统6900的移动电子装置时,应用处理器6930可控制移动电子装置的操作,并且网络模块6940可作为用于控制与外部装置的有线/无线通信的通信模块。用户接口6910可在移动电子装置的显示/触摸模块上显示由处理器6930处理的数据,或支持从触摸面板接收数据的功能。
虽然已经针对具体实施例描述了本发明,但是对于本领域技术人员而言,显而易见的是,在不脱离如权利要求所限定的本发明的精神和范围的情况下,可进行各种改变和修改。

Claims (20)

1.一种存储器系统,其包括:
存储器装置,其包括多个块;以及
控制器,其适于通过根据预定条件将所述多个块分组成多个超级块来管理所述多个块,在替换块池中管理未被分组成超级块的正常块,将包括至少一个坏块的所述多个超级块中的每一个设置成坏超级块,然后将每一个坏超级块改变为恢复超级块,根据替换信息利用所述替换块池的正常块替换每一个坏超级块中的至少一个坏块,
其中所述替换信息包括在位图中,所述位图表示所述恢复超级块中的每一个的交错操作是否可行。
2.根据权利要求1所述的存储器系统,其中所述控制器将具有第一值的标志信息包括在所述替换信息中,用于根据所述交错操作可行的预定条件的第一优先级,利用所述替换块池的正常块替换各个坏超级块中的至少一个坏块,并且所述控制器将具有第二值的标志信息包括在所述替换信息中,用于以与所述交错操作不可行的预定条件的第二优先级相对应的形式,利用所述替换块池中的正常块替换各个坏超级块中的至少一个坏块。
3.根据权利要求2所述的存储器系统,其中当访问其中所述替换块池的至少一个正常块替换了至少一个坏块的特定恢复超级块时,如果确定所述替换信息中包括具有所述第一值的标志信息时,所述控制器以交错方案操作所述特定恢复超级块,并且如果确定所述替换信息中包括具有所述第二值的标志信息时,所述控制器不以所述交错方案操作所述特定恢复超级块。
4.根据权利要求3所述的存储器系统,其中所述控制器通过根据所述交错操作可行的预定条件的第一优先级对所述块进行分组来管理作为所述超级块的所述块。
5.根据权利要求4所述的存储器系统,
其中所述存储器装置进一步包括多个平面,所述多个平面分别对应于共享多个通道之中的单个通道的多个路径,用于以所述交错方案输入或输出数据,所述多个平面中的每一个包括所述多个块的一组块,
其中所述存储器装置进一步包括多个存储器管芯,所述多个存储器管芯中的每一个对应于所述多个通道中的相应的一个通道,所述多个管芯中的每一个包括所述多个平面的一组平面。
6.根据权利要求5所述的存储器系统,其中所述控制器在所述预定条件的第一优先级中包括:第一存储器管芯的第一平面中的块与所述第一存储器管芯的第二平面中的块之间的关系,第二存储器管芯的第一平面中的块与所述第二存储器管芯的第二平面中的块之间的关系,所述第一存储器管芯的第一平面中的块与所述第二存储器管芯的第一平面中的块之间的关系,所述第一存储器管芯的第二平面中的块与所述第二存储器管芯的第二平面中的块之间的关系,以及所述第一存储器管芯的第一平面中的块、所述第一存储器管芯的第二平面中的块、所述第二存储器管芯的第一平面中的块以及所述第二存储器管芯的第二平面中的块之间的关系。
7.根据权利要求5所述的存储器系统,其中所述控制器在所述预定条件的第二优先级中包括在所述平面中的任何一个中包括的两个或更多个块之间的关系。
8.根据权利要求2所述的存储器系统,
其中用于表示所述替换块池的正常块中的每一个的物理地址的物理表以索引形式包括在所述替换信息中,
其中所述控制器将所述坏超级块中的每一个的坏块的物理地址和对应于所述物理地址的标志信息存储在所述物理表中,所述物理表对应于用于替换所述坏超级块的坏块的所述替换块池的正常块。
9.根据权利要求8所述的存储器系统,其中所述控制器参考所述物理表,利用用于替换所述坏块的所述替换块池的正常块的物理地址替换所述坏超级块的每一个中的块的物理地址之中的所述坏块的物理地址,然后管理与所述恢复超级块中的每一个相对应的物理地址。
10.根据权利要求1所述的存储器系统,其中所述控制器通过将所述超级块划分为正常超级块和坏超级块来生成用于以位图形式管理所述超级块的坏块发生信息。
11.一种存储器系统的操作方法,所述存储器系统包括存储器装置,所述存储器装置包括多个块,所述操作方法包括:
通过根据预定条件将所述多个块分组成多个超级块来管理所述多个块,
在替换块池中管理未被分组成超级块中的正常块,
将包括至少一个坏块的所述多个超级块中的每一个设置成坏超级块,然后将每一个坏超级块改变为恢复超级块,根据替换信息利用所述替换块池的正常块替换每一个坏超级块中的至少一个坏块,
其中所述替换信息包括在位图中,所述位图表示所述恢复超级块中的每一个的交错操作是否可行。
12.根据权利要求11所述的操作方法,其中设置操作和改变操作包括:
将包括至少一个坏块的每一个超级块设置成坏超级块;
将具有第一值的标志信息包括在所述替换信息中,用于以与所述交错操作可行的预定条件的第一优先级相对应的形式,利用所述替换块池的至少一个正常块替换各个坏超级块的至少一个坏块,以及
将具有第二值的标志信息包括在所述替换信息中,用于以与所述交错操作不可行的预定条件的第二优先级相对应的形式,利用所述替换块池中的至少一个正常块替换各个坏超级块中的至少一个坏块。
13.根据权利要求12所述的操作方法,其进一步包括:
当访问其中所述替换块池的至少一个正常块替换了至少一个坏块的特定恢复超级块时,
检查包括在所述替换信息中的标志信息的值;
当确定所述替换信息中包括具有第一值的标志信息时,以交错方案操作所述特定恢复超级块;以及
当确定所述替换信息中包括具有第二值的标志信息时,不以所述交错方案操作所述特定恢复超级块。
14.根据权利要求12所述的操作方法,其中通过根据所述交错操作可行的预定条件的第一优先级对所述块进行分组以管理所述多个块。
15.根据权利要求14所述的操作方法,其中所述存储器装置包括:
多个平面,所述多个平面分别对应于共享多个通道之中的单个通道的多个路径,用于以所述交错方案输入或输出数据,所述多个平面中的每一个包括所述多个块的一组块,以及
多个存储器管芯,所述多个存储器管芯中的每一个对应于所述多个通道中的相应的一个通道,所述多个管芯中的每一个包括所述多个平面的一组平面。
16.根据权利要求15所述的操作方法,其中所述预定条件的第一优先级包括:第一存储器管芯的第一平面中的块与所述第一存储器管芯的第二平面中的块之间的关系,第二存储器管芯的第一平面中的块与所述第二存储器管芯的第二平面中的块之间的关系,所述第一存储器管芯的第一平面中的块与所述第二存储器管芯的第一平面中的块之间的关系,所述第一存储器管芯的第二平面中的块与所述第二存储器管芯的第二平面中的块之间的关系,以及所述第一存储器管芯的第一平面中的块、所述第一存储器管芯的第二平面中的块、所述第二存储器管芯的第一平面中的块以及所述第二存储器管芯的第二平面中的块之间的关系。
17.根据权利要求15所述的操作方法,其中所述预定条件的第二优先级包括在所述平面中的任何一个中包括的两个或更多个块之间的关系。
18.根据权利要求12所述的操作方法,
其中用于表示所述替换块池的正常块中的每一个的物理地址的物理表以索引形式包括在所述替换信息中,
其中设置操作和改变操作进一步包括:
将所述坏超级块中的每一个的坏块的物理地址和对应于所述物理地址的标志信息存储在所述物理表中,所述物理表对应于用于替换所述坏超级块的坏块的所述替换块池的正常块。
19.根据权利要求18所述的操作方法,其中设置操作和改变操作进一步包括:
参考所述物理表,利用用于替换所述坏块的所述替换块池的正常块的物理地址替换所述坏超级块中的每一个中的块的物理地址之中的所述坏块的物理地址,然后管理与所述恢复超级块中的每一个相对应的物理地址。
20.根据权利要求12所述的操作方法,其中设置操作和改变操作包括:
通过将所述超级块划分为正常超级块和坏超级块来生成用于以位图形式管理所述超级块的坏块发生信息。
CN201810631842.5A 2017-06-19 2018-06-19 存储器系统及其操作方法 Active CN109144408B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2017-0077233 2017-06-19
KR1020170077233A KR102420025B1 (ko) 2017-06-19 2017-06-19 메모리 시스템 및 메모리 시스템의 동작방법

Publications (2)

Publication Number Publication Date
CN109144408A true CN109144408A (zh) 2019-01-04
CN109144408B CN109144408B (zh) 2021-05-18

Family

ID=64657590

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810631842.5A Active CN109144408B (zh) 2017-06-19 2018-06-19 存储器系统及其操作方法

Country Status (3)

Country Link
US (1) US10861581B2 (zh)
KR (1) KR102420025B1 (zh)
CN (1) CN109144408B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112397129A (zh) * 2019-08-13 2021-02-23 爱思开海力士有限公司 半导体存储器装置及其操作方法
CN112527201A (zh) * 2020-12-11 2021-03-19 成都佰维存储科技有限公司 Ssd坏块替换方法、装置、可读存储介质及电子设备
CN113485641A (zh) * 2021-06-29 2021-10-08 成都忆芯科技有限公司 处理io命令的方法及其控制部件

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102420025B1 (ko) * 2017-06-19 2022-07-13 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR20190000662A (ko) * 2017-06-23 2019-01-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
TWI617917B (zh) * 2017-08-28 2018-03-11 慧榮科技股份有限公司 用以優化資料儲存裝置之資料儲存方法及其資料儲存裝置
KR102504765B1 (ko) * 2017-12-22 2023-03-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
TWI664528B (zh) * 2018-06-06 2019-07-01 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
KR20200072139A (ko) * 2018-12-12 2020-06-22 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
CN111651371B (zh) 2019-03-04 2023-06-16 慧荣科技股份有限公司 非对称型平面管理方法以及数据存储装置及其控制器
TWI781846B (zh) * 2019-03-04 2022-10-21 慧榮科技股份有限公司 非對稱型平面管理方法以及資料儲存裝置及其控制器
KR20220024885A (ko) 2019-07-01 2022-03-03 생-고뱅 퍼포먼스 플라스틱스 코포레이션 프로파일 연결부
US11150812B2 (en) 2019-08-20 2021-10-19 Micron Technology, Inc. Predictive memory management
KR102569823B1 (ko) 2021-02-24 2023-08-24 에스케이하이닉스 주식회사 스토리지 장치 및 그 동작 방법
US11687263B2 (en) 2021-12-01 2023-06-27 Western Digital Technologies, Inc. Full die recovery in ZNS SSD
US11842062B2 (en) * 2022-02-09 2023-12-12 Western Digital Technologies, Inc. Method of handling irregular MetaBlock wear leveling and UGSD boot time improvement

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320596A (zh) * 2008-06-10 2008-12-10 北京时代民芯科技有限公司 一种面向大容量flash固存的坏块管理方法
CN102341792A (zh) * 2009-03-04 2012-02-01 美光科技公司 存储器块管理
US20120079168A1 (en) * 2010-09-27 2012-03-29 Po-Sheng Chou Method for performing block management, and associated memory device and controller thereof
CN102929795A (zh) * 2012-10-31 2013-02-13 飞天诚信科技股份有限公司 一种NandFlash坏块管理方法
US20150052393A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Fast data back-up and restore between volatile and flash memory
US20150331623A1 (en) * 2014-05-16 2015-11-19 Qualcomm Incorporated Method and apparatus for using a defective dynamic read-only memory region
CN105719703A (zh) * 2014-12-17 2016-06-29 爱思开海力士有限公司 存储系统及其操作方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080052446A1 (en) 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
KR101399549B1 (ko) * 2007-09-04 2014-05-28 삼성전자주식회사 반도체 메모리 장치 및 그것의 블록 관리 방법
WO2009124320A1 (en) * 2008-04-05 2009-10-08 Fusion Multisystems, Inc. Apparatus, system, and method for bad block remapping
US8832507B2 (en) * 2010-08-23 2014-09-09 Apple Inc. Systems and methods for generating dynamic super blocks
KR20120098068A (ko) 2011-02-28 2012-09-05 서울대학교산학협력단 플래시 메모리 배드 블록 관리 장치 및 방법
KR20170061221A (ko) * 2015-11-25 2017-06-05 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20180026876A (ko) * 2016-09-05 2018-03-14 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR102645572B1 (ko) * 2016-11-29 2024-03-11 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작 방법
KR20180083093A (ko) * 2017-01-12 2018-07-20 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR102420025B1 (ko) * 2017-06-19 2022-07-13 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR102533207B1 (ko) * 2018-08-30 2023-05-17 에스케이하이닉스 주식회사 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101320596A (zh) * 2008-06-10 2008-12-10 北京时代民芯科技有限公司 一种面向大容量flash固存的坏块管理方法
CN102341792A (zh) * 2009-03-04 2012-02-01 美光科技公司 存储器块管理
US20120079168A1 (en) * 2010-09-27 2012-03-29 Po-Sheng Chou Method for performing block management, and associated memory device and controller thereof
CN102929795A (zh) * 2012-10-31 2013-02-13 飞天诚信科技股份有限公司 一种NandFlash坏块管理方法
US20150052393A1 (en) * 2013-08-19 2015-02-19 International Business Machines Corporation Fast data back-up and restore between volatile and flash memory
US20150331623A1 (en) * 2014-05-16 2015-11-19 Qualcomm Incorporated Method and apparatus for using a defective dynamic read-only memory region
CN105719703A (zh) * 2014-12-17 2016-06-29 爱思开海力士有限公司 存储系统及其操作方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112397129A (zh) * 2019-08-13 2021-02-23 爱思开海力士有限公司 半导体存储器装置及其操作方法
CN112397129B (zh) * 2019-08-13 2024-03-19 爱思开海力士有限公司 半导体存储器装置及其操作方法
CN112527201A (zh) * 2020-12-11 2021-03-19 成都佰维存储科技有限公司 Ssd坏块替换方法、装置、可读存储介质及电子设备
CN112527201B (zh) * 2020-12-11 2022-08-09 成都佰维存储科技有限公司 Ssd坏块替换方法、装置、可读存储介质及电子设备
CN113485641A (zh) * 2021-06-29 2021-10-08 成都忆芯科技有限公司 处理io命令的方法及其控制部件
CN113485641B (zh) * 2021-06-29 2024-04-16 成都忆芯科技有限公司 处理io命令的方法及其控制部件

Also Published As

Publication number Publication date
CN109144408B (zh) 2021-05-18
US10861581B2 (en) 2020-12-08
KR20180137704A (ko) 2018-12-28
KR102420025B1 (ko) 2022-07-13
US20180366210A1 (en) 2018-12-20

Similar Documents

Publication Publication Date Title
CN109144408A (zh) 存储器系统及其操作方法
CN110399311A (zh) 存储器系统及该存储器系统的操作方法
CN108255739A (zh) 存储器系统及其操作方法
CN108572927A (zh) 存储器系统及其操作方法
CN108304141A (zh) 存储器系统及其操作方法
CN107797882A (zh) 存储器系统及其操作方法
CN109284202A (zh) 控制器及其操作方法
CN110244907A (zh) 存储器系统及该存储器系统的操作方法
CN109656472A (zh) 存储器系统及其操作方法
CN107818057A (zh) 存储器系统及其操作方法
CN109388594A (zh) 存储器系统及其操作方法
CN109426449A (zh) 存储器系统及其操作方法
CN108268212A (zh) 控制器及操作方法
CN108388525A (zh) 存储器系统及其操作方法
CN108932203A (zh) 数据处理系统和数据处理方法
CN109656837A (zh) 存储器系统及其操作方法
CN109521947A (zh) 存储器系统以及存储器系统的操作方法
CN110473582A (zh) 存储器系统及其操作方法
CN109390003A (zh) 存储器系统及其操作方法
CN110321069A (zh) 存储器系统及其操作方法
CN109032501A (zh) 存储器系统及其操作方法
CN108257637A (zh) 存储器系统及其操作方法
CN110362270A (zh) 存储器系统及其操作方法
CN109656749A (zh) 存储器系统及其操作方法
CN109271328A (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