CN110032466B - 数据存储装置及其操作方法 - Google Patents
数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN110032466B CN110032466B CN201811158164.1A CN201811158164A CN110032466B CN 110032466 B CN110032466 B CN 110032466B CN 201811158164 A CN201811158164 A CN 201811158164A CN 110032466 B CN110032466 B CN 110032466B
- Authority
- CN
- China
- Prior art keywords
- word line
- health level
- data
- superblock
- management target
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle 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/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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1096—Write circuits, e.g. I/O line write drivers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/12—Group selection circuits, e.g. for memory block selection, chip selection, array selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- 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)
- Quality & Reliability (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明涉及一种数据存储装置,该数据存储装置包括:具有管芯的非易失性存储装置,该管芯包括字线组,字线被分组在字线组中;以及控制器,该控制器包括:字线健康等级逻辑,该字线健康等级逻辑基于与字线相关的健康等级因子中的每一个的状态信息来确定每个字线的健康等级以及每个字线组的健康等级;存储器,包括字线健康等级表,每个字线的健康等级和每个字线组的健康等级被存储在该字线健康等级表中;以及映射逻辑,该映射逻辑配置成通过对具有最低健康等级的一个字线组和具有最高健康等级的字线组进行映射来生成管理目标逻辑超级块,并且通过对具有中间健康等级的字线组进行映射来生成普通逻辑超级块。
Description
相关申请的交叉引用
本申请要求于2018年1月11日提交的申请号为10-2018-0003753的韩国专利申请的优先权,该申请的全部公开内容通过引用并入本文。
技术领域
各个实施方式总体上涉及半导体装置,并且更具体的涉及数据存储装置及其操作方法。
背景技术
近来,计算机环境范例已经转变成使计算***可随时随地使用的普适计算。因此,诸如移动电话、数码相机和膝上型计算机的便携式电子装置的使用已经迅速增加。这些便携式电子装置通常使用具有存储器装置的数据存储装置。数据存储装置用来存储要在便携式电子装置中使用的数据。
使用存储器装置的数据存储装置提供了这样的优点:由于不存在机械驱动部件,因此稳定性和耐久性优异,信息存取速度高,并且电力消耗小。具有这种优点的数据存储装置包括通用串行总线(USB)存储器装置、具有各种接口的存储器卡、通用闪存存储装置(UFS)、以及固态硬盘(SSD)。
发明内容
本发明的各个实施例涉及一种能够有效使用其存储空间的数据存储装置及其操作方法。
在一个实施方式中,一种数据存储装置可包括:具有多个管芯的非易失性存储器装置,该多个管芯包括多个字线组,多个字线被分组在多个字线组中;以及控制器,配置成控制非易失性存储装置,该控制器包括:字线健康等级逻辑,该字线健康等级逻辑配置成基于与多个字线相关的健康等级因子中的每一个的状态信息来确定每个字线的健康等级和每个字线组的健康等级;包括字线健康等级表的存储器,由字线健康等级逻辑确定的每个字线的健康等级和每个字线组的健康等级被存储在该字线健康等级表中;映射逻辑,该映射逻辑配置成通过参考字线健康等级表,通过对各个管芯中的具有最低健康等级的一个字线组和具有最高健康等级的多个字线组进行映射来生成管理目标逻辑超级块,以及通过对各个管芯中的具有中间健康等级的字线组进行映射来生成普通逻辑超级块。
在一个实施方式中,提供了一种操作数据存储装置的方法,该数据存储装置包括非易失性存储器装置和控制该非易失性存储器装置的控制器,该非易失性存储器装置包括多个管芯,该管芯包括多个字线组,多个字线被分组在多个字线组中,该方法可以包括:通过设置在控制器中的字线健康等级逻辑、基于与多个字线相关的健康等级因子中的每一个的状态信息来确定每个字线的健康等级和每个字线组的健康等级;将每个字线的健康等级和每个字线组的健康等级存储在字线健康等级表中,该字线健康等级表被包括在设置于控制器中的存储器中;以及通过设置在控制器中的映射逻辑,生成管理目标逻辑超级块并且生成普通逻辑超级块,在管理目标逻辑超级块中,各个管芯中的具有最低健康等级的字线组和具有最高健康等级的多个字线组被映射,以及在普通逻辑超级块中,各个管芯中的具有中间健康等级的字线组被映射。
在一个实施方式中,一种存储器***可以包括:至少第一和第二存储器装置,每个存储器装置包括存储器单元组;以及适于以下操作的控制器:确定各个存储器装置中的存储器单元组的损坏程度;以及在写入操作期间,控制存储器装置不存储用于除了管理目标逻辑超级块之外的存储器单元组的XOR奇偶校验数据,管理目标逻辑超级块包括第一存储器装置中的具有最低损坏程度的存储器单元组的和第二存储器装置中的具有最高损坏程度的存储器单元组。
根据这些实施方式,由于管理目标超级块通过对低健康等级的字线和高健康等级的字线进行映射而生成并且普通超级块通过对中间健康等级的字线进行映射而生成,因此能够单独地管理错误发生等级高的超级块。
并且,由于当对管理目标超级块执行写入操作时额外地生成并存储XOR奇偶校验,并且当对普通超级块执行写入操作时不存储XOR奇偶校验,可以减小用于存储XOR奇偶校验的空间,从而可以增加将存储用户数据的空间。
附图说明
图1是示出了根据实施方式的数据存储装置的配置的示例代表的框图。
图2A是示出了图1中示出的非易失性存储器装置的配置的示例代表的示图。
图2B是示出了通用逻辑超级块(LSB)的示例代表的示图。
图2C是示出了将用户数据、ECC奇偶校验和XOR奇偶校验存储在特定逻辑超级块(LSB)中的示例代表的示图。
图3是示出了字线健康等级表WL HR表的示例代表的示图。
图4A是示出了字线健康等级因子和分级值的示例代表的示图。
图4B是示出了基于图4A的相应健康等级因子的分级来确定字线的等级数的方法的示例代表的示图。
图4C是示出了每字线健康等级的等级数范围的示例代表的示图。
图5是根据本实施方式的通过映射字线组来生成逻辑超级块的示例代表的示图。
图6A是示出了通过对图5的管理目标逻辑超级块中的字线进行映射来生成超级字线的示例代表的示图。
图6B是示出了在对图6A的管理目标超级字线的写入操作中生成并存储XOR奇偶校验的示例代表的示图。
图7是用于辅助解释操作根据实施方式的数据存储装置的方法的流程图的示例代表。
图8是示出了包括根据实施方式的固态硬盘(SSD)的数据处理***的示例的示图。
图9是示出了图8中所示的控制器的示例的示图。
图10是示出了包括根据实施方式的数据存储设备的数据处理***的示例的示图。
图11是示出了包括根据实施方式的数据存储设备的数据处理***的示例的示图。
图12是示出了包括根据实施方式的数据存储设备的网络***的示例的示图。
图13是示出了包括在根据实施方式的数据存储设备中的非易失性存储器装置的示例的框图。
具体实施方式
下面,将参照附图并通过各种实例的实施方式来描述数据存储装置及其操作方法。
图1是示出了根据实施方式的数据存储装置10的配置的示例代表的框图。在本实施方式中,数据存储装置10可以存储待被主机装置(未示出)访问的存储数据,主机装置诸如为移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视机、车载信息娱乐***等。数据存储装置10还可以被成为存储器***。
数据存储装置10可以根据表示相对于主机装置的传输协议的主机接口而被制造为各种类型的存储装置中的任一种。例如,数据存储装置10可以构造为诸如以下的各种类型的存储装置中的任一种:固态硬盘、MMC、eMMC、RS-MMC和微型MMC形式的多媒体卡、SD、迷你SD和微型SD形式的安全数字卡、通用串行总线(USB)存储装置、通用闪存存储(UFS)装置、个人计算机存储卡国际协会(PCMCIA)卡类型的存储装置、***组件互连(PCI)卡类型的存储装置、高速PCI(PCI-E)卡类型的存储装置、标准闪存(CF)卡、智能媒体卡、记忆棒等。
数据存储装置10可以各种封装类型中的任一种来制造。例如,数据存储装置10可以诸如以下的各种封装类型中的任一种来制造:堆叠封装(POP)、***级封装(SIP)、片上***(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
参考图1,数据存储装置10可以包括非易失性存储器装置100和控制器200。
非易失性存储器装置100可以操作为数据存储装置10的存储媒介。根据存储器单元,非易失性存储器装置100可以通过诸如以下的各种类型的非易失性存储器装置中的任一种来配置:NAND闪速存储器装置、NOR闪速存储器装置、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧道磁阻(TMR)层的磁性随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取装置(PRAM)、以及使用过渡金属化合物的电阻式随机存取存储器(RERAM)。
尽管在图1中示出了数据存储装置10包括一个非易失性存储器装置100,但这仅是示例性的,应注意的是数据存储装置10可以包括多个非易失性存储器装置。
非易失性存储器装置100可以包括具有多个存储器单元的存储器阵列,多个存储器单元分别地设置在多个位线(未示出)和多个字线(未示出)彼此相交的区域处。存储器单元阵列可以包括多个平面,每个平面可以包括多个存储块。多个存储块中的每一个可以包括多个页面。
例如,存储器单元阵列中的每个存储器单元可以是存储一位的单层单元(SLC)、能够存储两位数据的多层单元(MLC)、能够存储三位数据的三层单元(TLC)或者能够存储四位数据的四层单元(QLC)。存储器单元阵列可以包括单层单元、多层单元、三层单元和四层单元中的至少一个。例如,存储器阵列可以包括二维水平结构的存储器单元或三维竖直结构的存储器单元。
图2A是示出了图1中示出的非易失性存储器装置的配置的示例代表的示图,图2B是示出了通用逻辑超级块(LSB)的示例代表的示图,并且图2C是示出了将用户数据、ECC奇偶校验和XOR奇偶校验存储在特定逻辑超级块(LSB)中的示例代表的示图。尽管为了便于说明,在图2A至图2C中示出了非易失性存储器装置100包括四个管芯D1至D4,但应注意的是包括在非易失性存储器装置100中的管芯的数量不特别限于此。
参照图2A,非易失性存储器装置100可以包括多个管芯,即,第一管芯D1至第四管芯D4。管芯D1至D4中的每一个可以包括多个存储块,例如第一存储块BLK1至第n个存储块BLKn。在此,n可以是等于或大于1的整数。尽管图2A中没有示出,但管芯D1至D4中的每一个可以包括多个平面,并且每个平面可以包括多个存储块BLK1至BLKn。为了便于说明并简化图示,图2A中省略了平面的图示。
参照图2B,第一管芯D1至第四管芯D4各自的第一存储块BLK1可以被分组到一个物理超级块PSB中。为了便于说明,第一管芯D1至第四管芯D4各自的第一存储块BLK1所被分组的物理超级块将被称为第一物理超级块PSB1。
如图2B中所示,第一物理超级块PSB1可以包括多个逻辑超级块LSB,例如,第一逻辑超级块LSB1至第m逻辑超级块LSBm。在此,m可以是等于或大于1的整数。第一逻辑超级块LSB1至第m逻辑超级块LSBm中的每一个可以包括多个字线组WLG,每个字线组WLG由多个字线构成。例如,第一逻辑超级块LSB1至第m逻辑超级块LSBm可以分别包括多个第一字线组WLG1至多个第m字线组WLGm。
图2C中示出了第一逻辑超级块LSB1的配置实例。尽管图2C中示出了第一逻辑超级块LSB1,但其余的逻辑超级块LSB,即第二逻辑超级块LSB2至第m逻辑超级块LSBm的配置可以也与图2C中示出的配置相同。
如图2C中所示,第一逻辑超级块LSB1可以包括第一字线组WLG1,第一字线组WLG1包括在第一管芯D1至第四管芯D4中的每一个的第一存储块BLK1中。第一字线组WLG1可以包括第一字线WL1至第i个字线WLi。在此,i可以是等于或大于1的整数。
在本公开中,字线存储数据的表述将被理解为联接至字线的存储器单元存储数据。例如,在包括在第一逻辑超级块LSB1中的多个第一字线组WLG1中,可以存储用户数据、用于用户数据的ECC奇偶校验、用于用户数据和ECC奇偶校验的XOR奇偶校验。尽管图2C中示出了XOR奇偶校验被存储在各个第一字线组WLG1的第i个字线Wli的每一个中,但要注意的是XOR奇偶校验在第一字线组WLG1中所存储的字线位置和数量不特别限于此。XOR奇偶校验可以用于当在读取操作期间通过ECC奇偶校验的错误校正失败时来对用户数据中包括的错误进行附加校正,并且可以在用户数据的编程操作期间,通过将每个字线所存储的针对用户数据与ECC奇偶校验的相应位进行XOR操作来生成XOR奇偶校验。
为了提高存储在第一逻辑超级块LSB1中的用户数据的恢复能力,待进行XOR操作的字线的数量应该减小。因此,待生成的XOR奇偶校验的数量被增加,并且由于被增加数量的XOR奇偶校验所占用的空间大小,使得第一逻辑超级块LSB1中的、用于存储用户数据的空间减小。
根据本发明的实施方式,可不对所有字线生成XOR奇偶校验而是对所有字线之中的、被预期为通过ECC奇偶校验进行错误校正困难的部分字线组生成XOR奇偶校验。
返回参照图1,控制器200可以包括主机接口(主机I/F)210、处理器220、存储器230、字线健康等级逻辑240、映射逻辑250和存储器接口(存储器I/F)260。
主机接口210可以接口连接主机装置(未示出)和数据存储装置10。例如,主机接口210可以通过使用诸如以下的标准传输协议中的任一个来与主机装置通信:通用串行总线(USB)协议、通用闪速存储器(UFS)协议、多媒体卡(MMC)协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机***接口(SCSI)协议、串列SCSI(SAS)协议、***组件互联(PCI)协议和高速PCI(PCI-E)协议。
处理器220可以由微控制单元(MCU)或中央处理单元(CPU)配置。处理器220可以处理从主机装置传输的命令。为了处理命令,处理器220可以驱动加载在存储器230中的代码类型的指令或算法,即软件,并且可以控制内部功能块和非易失性存储器装置100。
存储器230可以通过诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)的随机存取存储器来配置。存储器230可以存储待被处理器220驱动的软件。并且,存储器230可以存储驱动软件所需的数据。即,存储器230可以操作为处理器220的工作存储器。
存储器230可以暂时存储待被从主机装置传输至非易失性存储器装置100的数据或者待从非易失性存储器装置100读取并且随后传输至主机装置的数据。换言之,存储器230可以操作为缓冲存储器。
存储器230可以包括字线健康等级表WL HR表。尽管关于包括在非易失性存储器装置100中的全部字线的健康等级信息可以存储在字线健康等级表WL HR表中,但应注意的是本实施方式不特别限于此。例如,关于非易失性存储器100的全部字线的健康等级信息可以存储在非易失性存储器装置100中,并且仅关于当前所用的存储块的字线的健康等级信息可以被加载在存储图3是示出了字线健康等级表WL HR表的配置的示例代表的示图。参照图3,字线健康等级表WL HR表可以包括管芯D1至D4(参见图2A)的每一个的存储块BLK1至BLKn中包括的第一字线组WLG1至第m字线组WLGm中的每一个的健康等级HR,并且字线健康等级表WL HR表还可以包括第一字线组WLG1至第m字线组WLGm的每一个中包括的第一字线WL1至第i字线WLi的每一个的健康等级HR。例如,第一字线组WLG1的健康等级HR(例如“A”)可以对应于包括在第一字线组WLG1中的第一字线组WL1至第i字线组WLi的健康等级HR的平均等级。
字线健康等级逻辑240可以确定非易失性存储器装置100的字线的每一个的健康等级,并且可以将每个字线所确定的健康等级存储在字线健康等级表WL HR表中。字线健康等级逻辑240可以基于包括在字线组中的字线的健康等级来确定并存储该字线组的健康等级。
图4A是示出了字线健康等级因子和分级值的示例代表的示图,图4B是示出了基于图4A的健康等级因子的分级来确定字线的等级数的方法的示例代表的示图,图4C是示出了每字线健康等级的等级数范围的示例代表的示图。
字线健康等级逻辑240可以通过使用图4A中所示的字线健康等级因子来确定每个字线的健康等级。在图4A中,字线健康等级因子包括包含字线的存储块的擦除/写入周期(E/W周期)、联接至字线的存储器单元的读取通过/失败、与存储器单元相关的失效位的数量、存储器单元的编程通过/失败、以及存储器单元的泄漏电流量。然而,应注意的是,能够用作字线健康等级因子的信息不特别限于此。由于检查诸如擦除/写入周期(E/W周期)、读取通过/失败、失效位的数量、编程通过/失败和泄漏电流量的状态信息的技术在本公开所属的技术领域中是公知的,因此在此将省略对其的详细描述。
参照图4A,尽管分级值被设置为‘100’、‘75’、‘50’和‘25’,但这仅仅是说明性的。对本领域技术人员显而易见的是,分级范围可以不被必需转换成数字值,而是可以转换成各种形式。并且,尽管在本实施方式中分级范围被划分为四个范围,但应注意的是范围的数量不特别限于此。
例如,擦除/写入周期可以划分成等于或小于a1的第一范围,在a1+1与b1之间的第二范围,在b1+1与c1之间的第三范围,在c1+1与d1的第四范围,并且分级可以从第一范围至第四范围逐渐减小。在此,a1、b1、c1和d1可以是整数,并且a1<b1<c1<d1。
读取通过/失败和编程通过/失败中的每一个可以仅包括通过和失败两个范围。通过可以对应于分级值‘100’,失败可以对应于分级值‘25’。
失效位的数量可以划分为等于或小于a2的第一范围、在a2+1与b2之间的第二范围、在b2+1与c2之间的第三范围以及在c2+1与d2之间的第四范围,并且分级可以从第一范围值第四范围逐渐减小。在此,a2、b2、c2和d2可以是整数,并且a2<b2<c2<d2。
泄漏电流量可以划分成等于或小于a3的第一范围、在a3+1与b3之间的第二范围、在b3+1与c3之间的第三范围以及在c3+1与d3之间的第四范围,并且分级可以从第一范围至第四范围逐渐减小。在此,a3、b3、c3、d3可以包括整数和小数,并且a3<b3<c3<d3。
字线健康等级逻辑240可以通过使用图4B中所示的等式来计算特定字线的等级数。例如,当假设用于包括特定字线的存储块的擦除/写入周期的分级、联接至特定字线的存储器单元的读取通过/失败的分级、存储器单元的编程通过/失败的分级、与存储器单元相关的失效位的数量的分级和存储器单元的泄漏电流量的分级分别为75、100、100、75和75,则该特定字线的等级数可以为85。字线健康等级逻辑240可以通过参考图4C中所示的、示出了健康等级与等级数范围之间的关系的表,将特定字线的健康等级HR确定为‘A’。
以这种方式,字线健康等级逻辑240可以确定非易失性存储器装置100的字线中的每一个的健康等级,并且可以将所确定的健康等级存储在字线健康等级表WL HR表中。
字线健康等级逻辑240可以将包括在每个字线组WLG中的字线的健康等级的平均等级确定为对应字线组WLG的健康等级并进行存储。然而,当字线组WLG包括健康等级为‘D’,即最低健康等级的至少一个字线时,字线健康等级逻辑240可以将该字线组WLG的健康等级HR确定为健康等级‘D’,即最低健康等级并进行存储。
映射逻辑250可以通过参考字线健康等级表WL HR表、通过对具有最低健康等级的一个字线组WLG和具有最高健康等级的多个字线组WLG进行映射来生成管理目标逻辑超级块LSB。映射逻辑250可以通过参考字线健康等级表WL HR表、通过对具有除了最高健康等级和最低健康等级之外的中间健康等级的字线组WLG进行映射来生成普通逻辑超级块LSB。
图5是示出了根据本实施方式的通过映射字线组来生成逻辑超级块的示例代表的示图。为了便于说明,图5中仅示出了两个逻辑超级块。
参照图5,映射逻辑250可以通过对包括在第一管芯D1的第一存储块BLK1中且具有最低健康等级即健康等级‘D’的第二字线组WLG2以及分别包括在第二管芯D2至第四管芯D4的第一存储块BLK1中且具有最高健康等级即健康等级‘A’的第一字线组WLG1、第二字线组WLG2和第二字线组WLG2进行映射,来生成第二逻辑超级块LSB2。由于第二逻辑超级块LSB2包括最低健康等级的字线组(即,第一管芯D1的第一存储块BLK1的第二字线组WLG2),所以第二逻辑超级块LSB2可以分类为管理目标逻辑超级块。
映射逻辑250可以通过对第一管芯D1至第四管芯D4各自的第一字线组WLG1、第二字线组WLG2、第一字线组WLG1和第一字线组WLG1进行映射来生成第一逻辑超级块LSB1,上述字线组具有除了最高健康等级和最低健康等级之外的中间健康等级即健康等级‘B’和‘C’。由于第一逻辑超级块LSB1不包括最低健康等级的字线组WLG,因此第一逻辑超级块LSB1可以被分类为普通逻辑超级块。
在作为管理目标逻辑超级块的第二逻辑超级块LSB2的写入操作中,处理器220可以控制在第二逻辑超级块LSB2中包括的字线组WLG之中的至少一个字线组(例如,第四管芯D4的第二字线组WLG2)中包括的至少一个字线中,生成并存储用于待存储在第二逻辑超级块LSB2中的数据和该数据的ECC奇偶校验的XOR奇偶校验。在作为普通逻辑超级块的第一逻辑超级块LSB1的写入操作中,处理器220可以控制不生成和存储用于待存储在第一逻辑超级块LSB1中的数据和该数据的ECC奇偶校验的XOR奇偶校验。
即,处理器220可以将通过映射逻辑250映射的逻辑超级块LSB分类成管理目标逻辑超级块LSB和普通逻辑超级块LSB,可以当执行对管理目标逻辑超级块LSB的写入操作时生成并存储XOR奇偶校验,并且可以当执行对普通逻辑超级块LSB的写入操作时不存储XOR奇偶校验。以这种方式,通过不是在全部写入操作中生成并存储XOR奇偶校验而是根据逻辑超级块LSB的健康等级来选择性地生成并存储XOR奇偶校验,待存储XOR奇偶校验的空间可以减小,因此,能够存储用户数据的空间可以增大。
映射逻辑250可以通过对包括在管理目标逻辑超级块LSB中的、管芯D1至D4中的每一个的字线WL1至Wli之中的具有最低健康等级的一个字线WL和具有最高健康等级的多个字线WL进行映射来生成管理目标超级字线SWL。映射逻辑250可以通过对包括在管理目标逻辑超级块LSB中的、管芯D1至D4的每一个的字线WL1至Wli之中的具有除了最高健康等级和最低健康等级之外的中间健康等级的字线WL进行映射来生成普通超级字线SWL。即,映射逻辑250可以从管理目标逻辑超级块LSB的字线组WLG来生成管理目标超级字线SWL和普通超级字线SWL。
图6A是示出了通过对图5的管理目标逻辑超级块中的字线进行映射来生成超级字线的示例代表的示图,并且图6B是示出了在对图6A的管理目标超级字线的写入操作中生成并存储XOR奇偶校验的示例代表的示图。
参考图6A,映射逻辑250可以通过对包括在第一管芯D1的第一存储块BLK1的第二字线组WLG2中且具有最低健康等级即健康等级‘D’的第三字线WL3以及具有最高健康等级即健康等级‘A’的第二管芯D2的第一字线组WLG1的第二字线WL2、第三管芯D3的第二字线组WLG2的第二字线WL2和第四管芯的第二字线组WLG2的第三字线WL3进行映射,来在作为管理目标逻辑超级块的第二逻辑超级块LSB2中生成第三超级字线SWL3。由于第三超级字线SWL3包括最低健康等级的字线(即,第一管芯D1的第一存储块BLK1的第二字线组WLG2的第三字线WL3),因此第三超级字线SWL3可以被分类成管理目标超级字线。
映射逻辑250可以通过对分别具有健康等级‘A’、‘B’、‘C’和‘B’的第一管芯D1至第四管芯D4的第一字线WL1进行映射来生成第一超级字线SWL1,并且可以通过对分别具有健康等级‘A’、‘B’、‘B’和‘B’的第一管芯D1至第四管芯D4的第二字线WL2、第三字线WL3、第三字线WL3和第二字线WL2进行映射来生成第二超级字线SWL2。由于第一超级字线SWL1和第二超级字线SWL2不包括最低健康等级即健康等级‘D’的字线,因此第一超级字线SWL1和第二超级字线SWL2可以被分类成普通超级字线。
如图6B中所示,在作为管理目标超级字线的第三超级字线SWL3的写入操作中,处理器220可以控制在第三超级字线SWL3中包括的字线WL之中的至少一个字线(例如,第四管芯D4的第三字线WL3)中,生成并存储用于待存储在第三超级字线SWL3中的数据和该数据的ECC奇偶校验的XOR奇偶校验。在作为普通超级字线的第一超级字线SWL1和第二超级字线SWL2的写入操作中,处理器220可以控制不存储用于待存储在第一超级字线SWL1和第二超级字线SWL2中的数据和该数据的ECC奇偶校验的XOR奇偶校验。
图7是用于辅助说明操作根据实施方式的数据存储装置10的方法的流程图的示例代表。在参照图7说明操作根据本实施方式的数据存储装置10的方法时,可以参照图1至图6B。
在步骤S710,控制器200的字线健康等级逻辑240可以基于包括在非易失性存储器装置100中的字线的健康等级因子的每一个因子的状态信息来确定每个字线的健康等级。字线健康等级逻辑240可以通过处理器220的控制来执行确定每个字线的健康等级的操作。由于上文对健康等级因子的种类以及使用健康等级因子确定每个字线的健康等级进行了详细描述,在此将省略对其的进一步描述。
在步骤S720,字线健康等级逻辑240可以基于在步骤710处确定的用于每个字线的健康等级,来确定非易失性存储器装置100的管芯D1至D4的每一个的存储块BLK1至BLKn的每一个中包括的字线组WLG1至WLGi的每一个的健康等级。每个字线组WLG的健康等级可以对应于包括在对应字线组WLG中的字线WL的健康等级的平均值。字线健康等级逻辑240可以在存储器230的字线健康等级表WL HR表中存储在步骤S710处确定的每个字线WL的健康等级以及在步骤S720处确定的每个字线组WLG的健康等级。
在步骤S730处,控制器200的映射逻辑250可以通过参考存储器230的字线健康等级表WL HR表、通过对具有最低健康等级的一个字线组WLG和具有最高健康等级的多个字线组WLG进行映射来生成管理目标逻辑超级块LSB。映射逻辑250可以通过对具有除了最高健康等级和最低健康等级的中间健康等级的字线组WLG进行映射来生成普通逻辑超级块LSB。映射逻辑250可以通过处理器220的控制而对字线组进行映射来生成逻辑超级块。逻辑超级块可以包括管芯D1至D4的每一个中的一个字线组。
在步骤S740处,映射逻辑250可以通过对包括在管理目标逻辑超级块LSB中的、管芯D1至D4的每一个的字线WL之中的具有最低健康等级即健康等级‘D’的一个字线WL和具有最高健康等级即健康等级‘A’的多个字线WL进行映射来生成管理目标超级字线SWL。映射逻辑250可以通过对具有除了最低健康等级之外的健康等级的字线WL进行映射来生成普通超级字线SWL。映射逻辑250可以通过处理器220的控制而对字线进行映射来生成超级字线。超级字线可以包括管芯D1至D4的每一个的一个字线。
在步骤S750处,在管理目标逻辑超级块LSB的写入操作中,处理器220可以生成用于待存储在管理目标逻辑超级块LSB中的数据和该数据的ECC奇偶校验的XOR奇偶校验,并且可以控制将XOR奇偶校验存储在管理目标逻辑超级块LSB中包括的字线组WLG之中的至少一个字线组WLG。
并且,在管理目标超级字线SWL的写入操作中,处理器220可以生成用于待存储在管理目标超级字线SWL中的数据和该数据的ECC奇偶校验的XOR奇偶校验,并且可以控制将XOR奇偶校验存储在管理目标超级字线SWL中包括的至少一个字线中。
在普通逻辑超级块LSB的写入操作中,处理器220可以控制不存储用于待存储在普通逻辑超级块LSB中的数据和该数据的ECC奇偶校验的XOR奇偶校验。此外,在普通超级字线SWL的写入操作中,处理器220可以控制不存储用于待存储在普通超级字线SWL中的数据和该数据的ECC奇偶校验的XOR奇偶校验。
返回参照图1,存储器接口260可以根据处理器220的控制来控制非易失性存储器装置100。存储器接口260还可以称为存储器控制器。存储器接口260可以向非易失性存储器装置100提供控制信号。控制信号可以包括用于控制非易失性存储器装置100的命令、地址等。存储器接口260可以向非易失性存储器装置100提供数据,或者可以被提供来自非易失性存储器装置100的数据。存储器接口260可以通过包括一个或多个信号线的通道CH与非易失性存储器装置100联接。
图8是示出了包括根据实施方式的固态硬盘(SSD)的数据处理***的示例的示图。参考图8,数据处理***2000可以包括主机设备2100和SSD 2200。
SSD 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250以及电源连接器2260。
控制器2210可以控制SSD 2220的全部操作。
缓冲存储器装置2220可以暂时存储待存储在非易失性存储器装置2231至223n中的数据。缓冲存储器装置2220可以暂时存储从非易失性存储器装置2231至223n读取的数据。暂时存储在缓冲存储器装置2220中的数据可以根据控制器2210的控制传递至主机设备2100或非易失性存储器装置2231至223n。
非易失性存储器装置2231至223n可以用作SSD 2200的存储媒介。非易失性存储器装置2232至223n可以通过多个通道CH1至CHn联接至控制器2210。一个或多个非易失性存储器装置可以联接至一个通道。联接至一个通道的非易失性存储器装置可以联接至相同的信号总线和相同的数据总线。
电源2240可以通过电源连接器2260向SSD 2200的内部提供电力PWR输入。电源2240可以包括辅助电源2241。辅助电源2241可以供应电力,以便即使在发生突然断电时SSD2200也正常结束。辅助电源2241可以包括能够充电电力PWR的大容量电容器。
控制器2210可以通过信号连接器2250与主机设备2100交换信号SGL。信号SGL可以包括命令、地址、数据等。信号连接器2250可以根据主机设备2100与SSD 2200之间的接口方法而构造成各种类型的连接器。
图9是示出了图8的控制器2210的示例的示图。参考图9,控制器2210可以包括主机接口单元2211、控制单元2212、随机存取存储器(RAM)2213、错误校正码(ECC)单元2214、以及存储器接口单元2215。
主机接口单元2211可以根据主机设备2100的协议执行主机设备2100与SSD 2200之间的接口连接。例如,主机接口单元2211可以通过以下协议中的任一个与主机设备2100通信:安全数字协议、通用串行总线(USB)协议、多媒体卡(MMC)协议、嵌入式MMC(eMMC)协议、个人计算机存储卡国际协会(PCMCIA)协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机***接口(SCSI)协议、串列SCSI(SAS)协议、***组件互联(PCI)协议、高速PCI(PCI-E)协议、以及通用闪存(UFS)协议。主机接口单元2211可以执行磁盘模拟功能,即主机设备2100将SSD 2200识别为通用数据存储设备,例如硬盘驱动器HDD。
控制单元2212可以分析并处理从主机设备2100输入的信号SGL。控制单元2212可以根据用于驱动SDD 2200的固件和/或软件来控制内部功能块的操作。RAM 2213可以操作为用于驱动固件或软件的工作存储器。
ECC单元2214可以生成用于待被传输至非易失性存储器装置2231至223n的数据的奇偶校验数据。生成的奇偶校验数据可以与数据一起存储在非易失性存储器装置2231至223n中。ECC单元2214可以基于奇偶校验数据检测从非易失性存储器装置2231至223n读取的数据的错误。当检测到的错误在可校正的范围内时,ECC单元2214可以校正检测到的错误。
存储器接口单元2215可以根据控制单元2212的控制向非易失性存储器装置2231至223n提供诸如命令和地址的控制信号。存储器接口单元2215可以根据控制单元2212的控制与非易失性存储器装置2231至223n交换数据。例如,存储器接口单元2215可以将存储在缓冲存储器装置2220中的数据提供给非易失性存储器装置2231至223n或者将从非易失性存储器装置2231至223n读取的数据提供给缓冲存储器装置2220。
图10是示出了包括根据实施方式的数据存储设备的数据处理***的示例的示图。参考图10,数据处理***3000可以包括主机设备3100和数据存储设备3200。
主机设备3100可以以诸如印刷电路板(PCB)的板形式构造。尽管图10中未示出,但主机设备3100可以包括配置成执行主机设备3100的功能的内部功能块。
主机设备3100可以包括诸如插座、插槽或连接器的连接端子3110。数据存储设备3200可以安装在连接端子3110上。
数据存储设备3200可以诸如PCB的板形式构造。数据存储设备3200可以指存储器模块或存储卡。数据存储设备3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231至3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制数据存储设备3200的全部操作。控制器3210可以构造成具有与图9中所示的控制器2210相同的构造。
缓冲存储器装置3220可以临时存储待存储在非易失性存储装置3231中的数据。缓冲存储装置3220可以暂时存储从非易失性存储装置3231和3232读取的数据。暂时存储在缓冲存储装置3220中的数据可以根据控制器3210的控制而被传输至主机设备3100或非易失性存储装置3231。
非易失性存储装置3231和3232可以用作数据存储设备3200的存储媒介。
PMIC 3240可以将通过连接端子3250输入的电力提供至数据存储设备3200的内部。PMIC 3240可以根据控制器3210的控制来管理数据存储设备3200的电力。
连接端子3250可以联接至主机设备3100的连接端子3110。诸如命令、地址和数据的信号以及电力可以通过连接端子3250在主机设备3100与数据存储设备3200之间传输。连接端子3250可以根据主机设备3100与数据存储设备3200之间的接口连接方法而以各种形式构造。连接端子3250可以布置在数据存储设备3200的任一侧中。
图11是示出了包括根据实施方式的数据存储设备的数据处理***的示例的示图。参考图11,数据处理***4000可以包括主机设备4100和数据存储设备4200。
主机设备4100可以构造成诸如PCB的板形式。尽管图11中未示出,主机设备4100可以包括构造成执行主机设备4100的功能的内部功能块。
数据存储设备4200可以以表面安装封装的形式构造。数据存储设备4200可以通过焊料球4250安装在主机设备4100上。数据存储设备4200可以包括控制器4210、缓冲存储装置4220和非易失性存储装置4230。
控制器4210可以控制数据存储设备4200的全部操作。控制器4210可以构造成具有与图9中所示的控制器2210相同的构造。
缓冲存储装置4220可以暂时存储待存储在非易失性存储装置4230中的数据。缓冲存储装置4220可以暂时存储从非易失性存储装置4230读取的数据。暂时存储在缓冲存储装置4220中的数据可以通过控制器4210的控制被传输至主机设备4100或非易失性存储装置4230。
非易失性存储装置4230可以用作数据存储设备4200的存储媒介。
图12是示出了包括根据实施方式的数据存储设备的网络***5000的示例的示图。参考图12,网络***5000可以包括通过网络5500联接的服务器***5300和多个客户***5410至5430。
服务器***5300可以响应于多个客户***5410至5430的请求来供应数据。例如,服务器***5300可以存储从多个客户***5410至5430提供的数据。在另一实例中,服务器***5300可以将数据提供给多个客户***5410至5430。
服务器***5300可以包括主机设备5100和数据存储设备5200。数据存储设备5200可以构造成图1的数据存储设备10、图8的数据存储设备2200、图10的数据存储设备3200或图11的数据存储设备4200。
图13是示出了包括在根据实施方式的数据存储设备中的非易失性存储装置的示例的框图。参考图13,非易失性存储装置100可以包括存储器单元阵列110、行解码器120、列解码器140、数据读取/写入块130、电压生成器150和控制逻辑160。
存储器单元阵列110可以包括布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域中的存储器单元MC。
行解码器120可以通过字线WL1至WLm联接至存储器单元阵列110。行解码器120可以通过控制逻辑160的控制来操作。行解码器120可以对从外部设备(未示出)提供的地址进行解码。行解码器120可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器120可以将从电压发生器150提供的字线电压提供给字线WL1至WLm。
数据读取/写入块130可以通过位线BL1至BLn联接至存储器单元阵列110。数据读取/写入块130可以包括对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块130可以根据控制逻辑160的控制来操作。数据读取/写入块130可以根据操作模式而操作为写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块130可以操作为写入驱动器,该写入驱动器构造成将从外部设备提供的数据存储在存储器单元阵列110中。在另一实例中,在读取操作中,数据读取/写入块130可以操作为读出放大器,该读出放大器构造成从存储器单元阵列110读取数据。
列解码器140可以通过控制逻辑160的控制来操作。列解码器140可以对从外部设备(未示出)提供的地址进行解码。列解码器140可以基于解码结果,将数据读取/写入块130的、与位线BL1至BLn相对应的读取/写入电路RW1至RWn与数据输入/输出(I/O)线(或数据I/O缓冲器)联接。
电压生成器150可以生成用于非易失性存储器装置100的内部操作的电压。通过电压生成器150生成的电压可以施加至存储器单元阵列110的存储器单元。例如,在编程操作中生成的编程电压可以施加至待执行编程操作的存储器单元的字线。在另一实例中,在擦除操作中生成的擦除电压可以施加至待执行擦除操作的存储器单元的阱区域中。在另一实例中,读取操作中生成的读取电压可以施加至待执行读取操作的存储器单元的字线。
控制逻辑160可以基于从外部设备提供的控制信号来控制非易失性存储器装置100的全部操作。例如,控制逻辑160可以控制非易失性存储器装置100的操作,诸如非易失性存储器装置100的读取操作、写入操作、擦除操作。
本公开的上述实施方式是说明性而非限制性的。各种替换方式和等同方式是可能的。实施方式的实例不限于文中描述的实施方式。本公开也不限于任何特定类型的半导体装置。基于本公开的其他增加、替换或修改都是显而易见的,并且这些增加、替换或修改意在落入所附权利要求的范围内。
Claims (17)
1.一种数据存储装置,包括:
非易失性存储器装置,所述非易失性存储器装置包括多个管芯,所述多个管芯包括多个字线组,多个字线被分组在所述多个字线组中;以及
控制器,控制所述非易失性存储器装置;
所述控制器包括:
字线健康等级逻辑,所述字线健康等级逻辑基于与所述多个字线相关的健康等级因子中的每一个的状态信息来确定每个字线的健康等级和每个字线组的健康等级;
存储器,所述存储器包括字线健康等级表,由所述字线健康等级逻辑确定的每个字线的健康等级和每个字线组的健康等级存储在所述字线健康等级表中;以及
映射逻辑,所述映射逻辑通过参考所述字线健康等级表,通过对各个所述管芯中的具有最低健康等级的一个字线组和具有最高健康等级的多个字线组进行映射来生成管理目标逻辑超级块,并且通过对各个所述管芯中的具有中间健康等级的字线组进行映射来生成普通逻辑超级块。
2.根据权利要求1所述的数据存储装置,其中,所述字线健康等级逻辑将包括在每个字线组中的字线的健康等级的平均等级确定为每个字线组的健康等级。
3.根据权利要求1所述的数据存储装置,其中,所述健康等级因子包括:包括每个字线的存储块的擦除/写入周期、读取通过/失败、编程通过/失败、失效位的数量以及每个字线的泄漏电流量。
4. 根据权利要求1所述的数据存储装置,
其中,所述控制器还包括控制所述控制器的一般操作的处理器;并且
其中,当执行对所述管理目标逻辑超级块的写入操作时,所述处理器生成用于待存储在所述管理目标逻辑超级块中的数据和所述数据的ECC奇偶校验的XOR奇偶校验,并且所述处理器控制所述非易失性存储器装置将生成的所述XOR奇偶校验存储在从包括在所述管理目标逻辑超级块中的字线之中选择的字线中。
5.根据权利要求4所述的数据存储装置,其中,当执行对所述普通逻辑超级块的写入操作时,所述处理器不生成用于待存储在所述普通逻辑超级块中的数据和所述数据的ECC奇偶校验的XOR奇偶校验,并且所述处理器控制所述非易失性存储器装置仅将所述数据和所述数据的ECC奇偶校验存储在所述普通逻辑超级块中。
6.根据权利要求1所述的数据存储装置,其中,所述映射逻辑通过对包括在所述管理目标逻辑超级块中的字线之中的、各个所述管芯中的具有所述最低健康等级的一个字线和具有所述最高健康等级的多个字线进行映射来生成管理目标超级字线,并且通过对各个所述管芯中的具有除了所述最低健康等级的其余健康等级的字线进行映射来生成普通超级字线。
7. 根据权利要求6所述的数据存储装置,
其中,所述控制器还包括控制所述控制器的一般操作的处理器;并且
其中,当执行对所述管理目标超级字线的写入操作时,所述处理器生成用于待存储在所述管理目标超级字线中的数据和所述数据的ECC奇偶校验的XOR奇偶校验,并且所述处理器控制所述非易失性存储器装置将生成的所述XOR奇偶校验存储在从包括在所述管理目标超级字线中的字线之中选择的字线中。
8.根据权利要求7所述的数据存储装置,其中,当执行对所述普通超级字线的写入操作时,所述处理器不生成用于待存储在所述普通超级字线中的数据和所述数据的ECC奇偶校验的XOR奇偶校验,并且所述处理器控制所述非易失性存储器装置仅将所述数据和所述数据的ECC奇偶校验存储在所述普通超级字线中。
9.一种操作数据存储装置的方法,所述数据存储装置包括控制器和包括多个管芯的非易失性存储器装置,所述多个管芯包括多个字线组,多个字线被分组在所述多个字线组中,所述控制器控制所述非易失性存储器装置,所述方法包括:
通过设置在所述控制器中的字线健康等级逻辑,基于与所述多个字线相关的健康等级因子中的每一个的状态信息来确定每个字线的健康等级和每个字线组的健康等级;
将每个字线的健康等级和每个字线组的健康等级存储在字线健康等级表中,所述字线健康等级表被包括在设置于所述控制器中的存储器中;以及
通过设置在所述控制器中的映射逻辑,生成管理目标逻辑超级块并且生成普通逻辑超级块,在所述管理目标逻辑超级块中,各个所述管芯中的具有最低健康等级的一个字线组和具有最高健康等级的多个字线组被映射,以及在所述普通逻辑超级块中,各个所述管芯中的具有中间健康等级的字线组被映射。
10.根据权利要求9所述的方法,其中,在确定每个字线的健康等级和每个字线组的健康等级时,将每个字线组的健康等级确定为对应字线的健康等级的平均值。
11.根据权利要求9所述的方法,其中,所述健康等级因子包括:包括每个字线的存储块的擦除/写入周期、读取通过/失败、编程通过/失败、失效位的数目以及每个字线的泄漏电流量。
12. 根据权利要求9所述的方法,进一步包括:在生成所述管理目标逻辑超级块和所述普通逻辑超级块之后:
当接收到对所述管理目标逻辑超级块的写入请求时,通过所述控制器生成用于待存储在所述管理目标逻辑超级块中的数据和所述数据的ECC奇偶校验的XOR奇偶校验;以及
通过所述控制器将所述数据、所述ECC奇偶校验和所述XOR奇偶校验存储在所述管理目标逻辑超级块中。
13.根据权利要求9所述的方法,进一步包括:在生成所述管理目标逻辑超级块和所述普通逻辑超级块之后,
当接收到对所述普通逻辑超级块的写入请求时,通过所述控制器将数据和所述数据的ECC奇偶校验存储在所述普通逻辑超级块中。
14.根据权利要求9所述的方法,进一步包括,在生成所述管理目标逻辑超级块和所述普通逻辑超级块之后,
通过映射逻辑生成管理目标超级字线并且生成普通超级字线,在所述管理目标超级字线中,包括在所述管理目标逻辑超级块中的字线之中的、各个所述管芯中的具有所述最低健康等级的一个字线和具有所述最高健康等级的多个字线被映射,以及在所述普通超级字线中,各个所述管芯中的具有除了所述最低健康等级的其余健康等级的字线被映射。
15. 根据权利要求14所述的方法,进一步包括:在生成所述管理目标超级字线和所述普通超级字线之后,
当接收到对所述管理目标超级字线的写入操作时,通过所述控制器生成用于待存储在所述管理目标超级字线中的数据和所述数据的ECC奇偶校验的XOR奇偶校验;以及
通过所述控制器将所述数据、所述ECC奇偶校验和所述XOR奇偶校验存储在所述管理目标超级字线中。
16.根据权利要求14所述的方法,进一步包括:在生成所述管理目标超级字线和所述普通超级字线之后,当接收到对所述普通超级字线的写入请求时,将数据和所述数据的ECC奇偶校验存储在所述普通超级字线中。
17. 一种存储器***,包括:
至少第一存储器装置和第二存储器装置,所述第一存储器装置和所述第二存储器装置各自包括字线组;以及
控制器:
确定所述第一存储器装置和所述第二存储器装置中包括的字线组的健康等级;
生成管理目标逻辑超级块,所述管理目标逻辑超级块包括所述第一存储器装置中的、具有最低健康等级的第一字线组,以及所述第二存储器装置中的、健康等级高于所述第一字线组的健康等级的第二字线组;
在所述管理目标逻辑超级块的写入操作中,控制所述第一存储器装置和所述第二存储器装置将数据、所述数据的ECC奇偶校验以及所述数据和所述ECC奇偶校验两者的XOR奇偶校验存储在所述管理目标逻辑超级块中;并且
在除了所述管理目标逻辑超级块以外的剩余逻辑超级块的写入操作中,控制所述第一存储器装置和所述第二存储器装置不将所述XOR奇偶校验存储在所述剩余逻辑超级块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180003753A KR102469174B1 (ko) | 2018-01-11 | 2018-01-11 | 데이터 저장 장치 및 그것의 동작 방법 |
KR10-2018-0003753 | 2018-01-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110032466A CN110032466A (zh) | 2019-07-19 |
CN110032466B true CN110032466B (zh) | 2023-08-01 |
Family
ID=67140107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811158164.1A Active CN110032466B (zh) | 2018-01-11 | 2018-09-30 | 数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10748588B2 (zh) |
KR (1) | KR102469174B1 (zh) |
CN (1) | CN110032466B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021179672A (ja) * | 2020-05-11 | 2021-11-18 | ソニーセミコンダクタソリューションズ株式会社 | メモリモジュール |
US11545232B1 (en) | 2021-08-05 | 2023-01-03 | Micron Technology, Inc. | Quick reliability scan for memory device |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101616100B1 (ko) * | 2009-09-25 | 2016-04-28 | 삼성전자주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US9007836B2 (en) * | 2011-01-13 | 2015-04-14 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
US9176862B2 (en) * | 2011-12-29 | 2015-11-03 | Sandisk Technologies Inc. | SLC-MLC wear balancing |
US9239781B2 (en) * | 2012-02-07 | 2016-01-19 | SMART Storage Systems, Inc. | Storage control system with erase block mechanism and method of operation thereof |
KR101521258B1 (ko) * | 2013-09-10 | 2015-05-21 | 연세대학교 산학협력단 | 메모리 수리 방법 및 메모리 수리 장치 |
US20150103593A1 (en) * | 2013-10-14 | 2015-04-16 | Skymedi Corporation | Method of Writing Data in Non-Volatile Memory and Non-Volatile Storage Device Using the Same |
US9558107B2 (en) * | 2013-12-24 | 2017-01-31 | International Business Machines Corporation | Extending useful life of a non-volatile memory by health grading |
KR102233810B1 (ko) * | 2014-02-03 | 2021-03-30 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 워드라인 구동 방법 |
US9478315B2 (en) * | 2014-06-03 | 2016-10-25 | Sandisk Technologies Llc | Bit error rate mapping in a memory system |
US9583196B2 (en) * | 2015-01-28 | 2017-02-28 | Sandisk Technologies Llc | Immediate feedback before or during programming |
US9496043B1 (en) * | 2015-06-24 | 2016-11-15 | International Business Machines Corporation | Dynamically optimizing flash data retention or endurance based on data write frequency |
US9996299B2 (en) * | 2015-06-25 | 2018-06-12 | Western Digital Technologies, Inc | Memory health monitoring |
KR102407338B1 (ko) * | 2015-09-14 | 2022-06-13 | 삼성전자주식회사 | 메모리 장치의 에러 체크 및 정정(ecc) 제어 방법 및 이를 수행하는 메모리 장치 |
US10289487B2 (en) * | 2016-04-27 | 2019-05-14 | Silicon Motion Inc. | Method for accessing flash memory module and associated flash memory controller and memory device |
CN107391296B (zh) * | 2016-04-27 | 2020-11-06 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
US10304551B2 (en) * | 2016-06-27 | 2019-05-28 | Sandisk Technologies Llc | Erase speed based word line control |
US20180129559A1 (en) * | 2016-11-08 | 2018-05-10 | SK Hynix Inc. | Semiconductor memory device, controller, and operating methods thereof |
KR20180078426A (ko) | 2016-12-29 | 2018-07-10 | 에스케이하이닉스 주식회사 | 데이터 저장 장치의 에러 정정 코드 처리 방법 |
US10209914B2 (en) * | 2017-01-31 | 2019-02-19 | Sandisk Technologies Llc | System and method for dynamic folding or direct write based on block health in a non-volatile memory system |
-
2018
- 2018-01-11 KR KR1020180003753A patent/KR102469174B1/ko active IP Right Grant
- 2018-08-23 US US16/110,356 patent/US10748588B2/en active Active
- 2018-09-30 CN CN201811158164.1A patent/CN110032466B/zh active Active
-
2020
- 2020-07-10 US US16/925,631 patent/US11276445B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20200342925A1 (en) | 2020-10-29 |
KR102469174B1 (ko) | 2022-11-23 |
CN110032466A (zh) | 2019-07-19 |
US11276445B2 (en) | 2022-03-15 |
US10748588B2 (en) | 2020-08-18 |
KR20190085645A (ko) | 2019-07-19 |
US20190214065A1 (en) | 2019-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10664409B2 (en) | Data storage apparatus utilizing sequential map entry for responding to read request and operating method thereof | |
CN111506516B (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN109992202B (zh) | 数据存储设备、其操作方法以及包括其的数据处理*** | |
CN111124273B (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN111916140B (zh) | 控制器及其操作方法以及包括控制器的存储器*** | |
CN109407966B (zh) | 数据存储装置及其操作方法 | |
US10545689B2 (en) | Data storage device and operating method thereof | |
US11520694B2 (en) | Data storage device and operating method thereof | |
US11379363B2 (en) | Controller, memory system, and operating methods thereof | |
US11276445B2 (en) | Data storage device and operating method thereof | |
US11782638B2 (en) | Storage device with improved read latency and operating method thereof | |
US20210397364A1 (en) | Storage device and operating method thereof | |
US10817192B2 (en) | Data storage apparatus selecting memory block group based on interleaving index and operating method thereof | |
US11429612B2 (en) | Address search circuit and method of semiconductor memory apparatus and controller therefor | |
CN109840214B (zh) | 数据存储装置及其操作方法 | |
US20200250082A1 (en) | Controller, memory system, and operating method thereof | |
CN113805793A (zh) | 存储装置及其操作方法 | |
US11144246B2 (en) | Memory system using available bad block based on data storage reliability and operating method thereof | |
CN111324302B (zh) | 数据存储装置及其操作方法 | |
US10719270B2 (en) | Raising usage rates of memory blocks with a free MSB page list | |
US10572155B2 (en) | Data storage device and operating method thereof | |
US20190214105A1 (en) | Data storage device and operating method thereof | |
CN112395219A (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 |