CN107491396B - 存储器系统及其操作方法 - Google Patents
存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN107491396B CN107491396B CN201710193085.3A CN201710193085A CN107491396B CN 107491396 B CN107491396 B CN 107491396B CN 201710193085 A CN201710193085 A CN 201710193085A CN 107491396 B CN107491396 B CN 107491396B
- Authority
- CN
- China
- Prior art keywords
- internal read
- memory
- operations
- read operation
- minimum
- 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
- 230000015654 memory Effects 0.000 title claims abstract description 248
- 238000011017 operating method Methods 0.000 title claims description 9
- 238000000034 method Methods 0.000 claims abstract description 13
- 239000000872 buffer Substances 0.000 description 22
- 238000010586 diagram Methods 0.000 description 22
- 238000012545 processing Methods 0.000 description 22
- 238000012937 correction Methods 0.000 description 15
- 238000007726 management method Methods 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 239000004065 semiconductor Substances 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 239000000470 constituent Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000003936 working memory Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 101000934888 Homo sapiens Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Proteins 0.000 description 2
- 102100025393 Succinate dehydrogenase cytochrome b560 subunit, mitochondrial Human genes 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0607—Interleaved addressing
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1647—Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access
-
- 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/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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/7211—Wear leveling
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/12—Reading and writing aspects of erasable programmable read-only memories
- G11C2216/22—Nonvolatile memory in which reading can be carried out from one memory bank or array whilst a word or sector in another bank or array is being erased or programmed simultaneously
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)
- Read Only Memory (AREA)
- Microelectronics & Electronic Packaging (AREA)
Abstract
本发明公开一种存储器系统的操作方法,其可包括:以交叉方式访问多个存储器装置,并执行编程操作,其中存储器装置的每个包括多个管芯;并且在编程操作期间,执行至少一个内部读取操作以从以交叉方式访问的多个管芯中读取数据,其中根据最大内部读取操作数量和最小内部读取操作等待数量来确定在编程操作的任何一个编程操作期间执行的一个或多个内部读取操作。
Description
相关申请的交叉引用
本申请要求于2016年6月10日提交的申请号为10-2016-0072394的韩国专利申请的优先权,其全部内容通过引用并入本文。
技术领域
本发明的示例性实施例涉及一种存储器系统,且更特别地,涉及一种存储器系统的数据处理操作。
背景技术
计算机环境范例已经转变为普适计算系统,其能够在任何时间和任何地点使用。由于这个事实,诸如移动电话、数码相机和笔记本电脑的便携式电子装置的使用已经迅速增长。这些便携式电子装置通常使用具有存储器装置,即数据存储装置的存储器系统。存储器系统可用作便携式电子装置的主存储器装置或辅助存储器装置。
因为使用存储器装置的存储器系统不具有活动部件,所以它们提供优良的稳定性、耐用性、高信息存取速度以及低功耗。具有这种优点的存储器系统的示例包括通用串行总线(USB)存储器装置、具有各种接口的存储卡以及固态驱动器(SSD)。
发明内容
各种实施例涉及一种能够最大化存储器系统的通道利用效率的存储器系统及其操作方法。
在实施例中,一种存储器系统的操作方法可包括:以交叉方式访问多个存储器装置,并执行编程操作,其中多个存储器装置的每个包括多个管芯;并且在编程操作期间,执行至少一个内部读取操作以从以交叉方式访问的多个管芯中读取数据,其中根据最大内部读取操作数量和最小内部读取操作等待数量来确定在编程操作的任何一个编程操作期间执行的一个或多个内部读取操作。
操作方法可进一步包括:在一个编程操作期间执行一个或多个内部读取操作之前,通过内部读取操作等待列表来确定是否存在等待内部读取操作,并且当确定存在等待内部读取操作时,可以交叉方式执行编程操作和内部读取操作。
多个存储器装置或包括在存储器装置的每个中的多个管芯可联接到多个路(way),其中多个路联接到一个通道或多个通道。
内部读取操作可包括后台操作,并且后台操作可包括垃圾收集操作和损耗平衡操作中的一个。
最小内部读取操作等待数量可表示在内部读取操作等待列表中能够执行的内部读取操作的最小数量,该内部读取操作等待列表包括能够由多个存储器装置或多个管芯执行的等待内部读取操作的数量。
可根据内部读取操作执行时间来确定包括在内部读取操作等待列表中的内部读取操作等待数量。
最大内部读取操作数量可表示能够在编程操作的任何一个期间执行的内部读取操作的最大数量。
可通过比较最大内部读取操作数量和最小内部读取操作等待数量之间的大小的操作来确定在编程操作的任何一个期间执行的一个或多个内部读取操作。
在最大内部读取操作数量和最小内部读取操作等待数量之间的大小的比较中,当最小内部读取操作等待数量小于最大内部读取操作数量时,则在编程操作期间可执行与最小内部读取操作等待数量一样多数量的内部读取操作。
在最大内部读取操作数量和最小内部读取操作等待数量之间的大小的比较中,当最小内部读取操作等待数量大于最大内部读取操作数量时,则在编程操作期间可执行与最大内部读取操作数量一样多数量的内部读取操作。
在实施例中,一种存储器系统可包括:多个存储器装置,存储器装置的每个包括多个管芯;以及控制器,其适于以交叉方式访问多个存储器装置,执行对应于各个存储器装置的数据输入操作或数据输出操作,以及在编程操作期间执行至少一个内部读取操作以从以交叉方式访问的多个管芯中读取数据。控制器可根据最大内部读取操作数量和最小内部读取操作等待数量来确定在编程操作的任何一个编程操作期间执行的一个或多个内部读取操作的数量。
在一个编程操作期间执行一个或多个内部读取操作之前,控制器可通过使用内部读取操作等待列表来确定是否存在等待内部读取操作,并且当确定存在等待内部读取操作时,可根据交叉方式在多个存储器装置中执行编程操作和内部读取操作。
控制器可通过多个路联接到多个存储器装置或包括在存储器装置的每个中的多个管芯,其中多个路联接到一个通道或多个通道。
内部读取操作可包括后台操作,并且后台操作可包括垃圾收集操作和损耗平衡操作中的一个。
控制器可确定最小内部读取操作等待数量,最小内部读取操作等待数量表示在内部读取操作等待列表中能够执行的内部读取操作的最小数量,该内部读取操作等待列表包括能够在多个存储器装置或多个管芯中执行的等待内部读取操作的数量。
控制器可基于内部读取操作执行时间来确定包括在内部读取操作等待列表中的内部读取操作等待数量。
最大内部读取操作数量可表示能够在编程操作的任何一个期间执行的内部读取操作的最大数量。
在编程操作的任何一个期间执行的一个或多个内部读取操作可包括比较最大内部读取操作数量和最小内部读取操作等待数量之间的大小。
根据最小和最大内部读取操作数量之间的大小关系的检查结果,当最小内部读取操作等待数量小于最大内部读取操作数量时,控制器可在编程操作期间执行与最小内部读取操作等待数量一样多数量的内部读取操作。
作为最小和最大内部读取操作数量之间的大小的比较结果,当最小内部读取操作等待数量大于最大内部读取操作数量时,控制器可在编程操作期间执行与最大内部读取操作数量一样多数量的内部读取操作。
附图说明
将参考附图描述本发明的各种实施例,其中,
图1是示出根据本发明的实施例的包括存储器系统的数据处理系统的图;
图2是示出图1的存储器系统中的存储器装置的图;
图3是示出根据实施例的存储器装置中的存储块的存储器单元阵列电路的图;
图4是示出根据实施例的存储器系统中的存储器装置的结构的图;
图5是示出根据实施例的对存储器系统中的存储器装置的数据处理操作的图;
图6是示出根据实施例的存储器系统的操作的流程图;
图7是示出根据实施例的后台操作等待列表的表格;
图8至图10是示出根据实施例的存储器系统的操作的示例的图;
图11至图16是示出根据实施例的存储器系统的示例的图。
具体实施方式
下面将参照附图更详细地描述本发明的各个实施例。然而,本发明可以不同的形式实施,并不应被解释为限于本文所阐述的实施例。相反,提供这些实施例以便本公开将是彻底的且完全的,并向本领域的技术人员完全传达本发明。贯穿本公开,在本发明的各个附图和实施例中,相同的附图标记表示相同的部件。
除非另有定义,否则包括本文中使用的技术和科学术语的所有术语具有与本发明所属领域的普通技术人员通常理解的含义相同的含义。还应理解,诸如在常用字典中定义的那些术语的术语应当被解释为具有与其在相关领域的上下文中的含义一致的含义,并且不会以理想化的或过于正式的意义解释,除非本文如此明确地限定。
本发明可具有各种修改和实施例,并且在本文中,一些实施例被作为示例来描述本发明的概念和范围。然而,对于本领域技术人员显而易见的是,实施例不限制本发明的概念和范围。此外,本发明的实施例的组成元件应当被理解为包括所有修改、替代物和等同物。在这方面,用于描述本发明的原理的图1至图10中所示的以下实施例应当被理解为是说明性的而非限制性的。
应当理解,尽管在本文中可能使用术语“第一”、“第二”、“第三”等来描述各种元件,但是这些元件不被这些术语限制。这些术语用于将一个元件与另一个元件区分开。因此,在不脱离本发明的精神和范围的情况下,下面描述的第一元件也可被称为第二或第三元件。
将进一步理解,当元件被称为“连接到”或“联接到”另一元件时,其可直接在其他元件上、连接到或联接到其他元件,或者可存在一个或多个中间元件。此外,还将理解,当元件被称为在两个元件“之间”时,其可以是这两个元件之间的唯一元件,或者也可存在一个或多个中间元件。
本文使用的术语仅以描述特定实施例为目的,并不旨在限制本发明。如本文所使用的,除非上下文另有明确指示,否则单数形式也旨在包括复数形式。将进一步理解,当在本说明书中使用术语“包括”、“包括有”“包含”和“包含有”时,说明阐述的元件的存在而不排除一个或多个其它元件的存在或增加。如本文所使用的,术语“和/或”包括一个或多个相关所列项目的任何和全部组合。
在下面的描述中,为了提供本发明的彻底理解,阐述了大量具体细节。可在没有这些具体细节的一些或全部的情况下实践本发明。在其它实例中,为了避免不必要地模糊本发明,没有详细地描述公知的进程结构和/或进程。
在一些实例中,对于本领域普通技术人员显而易见的是,除非另有明确说明,否则结合特定实施例描述的元件可以单独使用或与其它实施例组合使用。
在下文中,将参照附图更详细地描述本发明的各个实施例。
图1示出了根据本发明的实施例的包括存储器系统110的数据处理系统100。
参照图1,数据处理系统100可包括可操作地联接到存储器系统110的主机102。
例如,主机102可包括诸如移动电话、MP3播放器和膝上型计算机的便携式电子装置或诸如台式计算机、游戏机、TV和投影仪的非便携式电子装置。
存储器系统110可响应于从主机102接收的请求而操作。例如,存储器系统110可存储将由主机102访问的数据。存储器系统110可用作主机102的主存储器系统或辅助存储器系统。根据将与主机102电联接的主机接口的协议,存储器系统110可利用各种存储装置中的任意一种来实施。存储器系统110可利用诸如以下的各种存储装置中的任何一种来实施:例如固态驱动器(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、缩小尺寸的MMC(RS-MMC)、微型-MMC、安全数字(SD)卡、迷你-SD、微型-SD、通用串行总线(USB)存储装置、通用闪速存储(UFS)装置、标准闪存(CF)卡、智能媒体(SM)卡、记忆棒等。
存储器系统110的存储装置可使用诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)的易失性存储器装置实施,或使用诸如只读存储器(ROM)、掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电随机存取存储器(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)、电阻式RAM(RRAM)和闪速存储器的非易失性存储器装置实施。
存储器系统110可包括:存储器装置150,其用于存储将由主机102访问的数据;以及控制器130,其可操作地联接到存储器装置150,用于控制数据在存储器装置150中的存储以及存储的数据从存储器装置到主机的传输。
控制器130和存储器装置150可集成到单个半导体装置中。例如,控制器130和存储器装置150可集成到配置为固态驱动器(SSD)的单个半导体装置中。当存储器系统110用作SSD时,可显著增加与存储器系统110电联接的主机102的操作速度。
控制器130和存储器装置150可集成到配置为诸如以下的存储卡的单个半导体装置中:例如个人计算机存储卡国际协会(PCMCIA)卡、标准闪存(CF)卡、智能媒体卡(SMC)、存储棒、多媒体卡(MMC)、RS-MMC、微型-MMC、安全数字(SD)卡、迷你-SD、微型-SD、SDHC以及通用闪速存储(UFS)装置。
对于另一实例,存储器系统110可配置为计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航装置、黑盒、数码相机、数字多媒体广播(DMB)播放器、三维(3D)电视、智能电视、数字音频记录器、数字音频播放器、数字图片记录器、数字图片播放器、数字视频记录器、数字视频播放器、配置数据中心的存储器、能够在无线环境下传输和接收信息的装置、配置家庭网络的各种电子装置之一、配置计算机网络的各种电子装置之一、配置远程信息处理网络的各种电子装置之一、RFID装置或配置计算系统的各种组成元件之一的部件。
存储器系统110的存储器装置150可当装置的电源被中断时保留所存储的数据,并且更具体地,在写入操作期间存储从主机102提供的数据,以及在读取操作期间将所存储的数据提供到主机102。存储器装置150可包括多个存储块,例如,存储块152、154和156。存储块152、154和156中的每一个可包括多个页面。每个页面可包括联接到字线(WL)的多个存储器单元。存储器装置150可以是非易失性存储器装置,例如闪速存储器。闪速存储器可具有三维(3D)堆叠结构。稍后将描述存储器装置150的结构和存储器装置150的三维(3D)堆叠结构。
存储器系统110的控制器130可响应于来自主机102的请求来控制存储器装置150。例如,在从主机102接收到读取请求时,控制器130可向存储器装置发出读取命令和地址,其用于读取存储在存储器装置中的所请求地址中的数据,并且可将从存储器装置150读取的数据提供给主机102。而且,响应于从主机102接收的编程请求(也称为写入请求),控制器130可发出写入命令、地址和写入数据,并且可控制存储器装置的操作,其用于将写入数据存储到存储器装置150中。写入数据与写入请求一起从主机102提供到存储器控制器。为此,控制器130可控制存储器装置150的一个或多个操作,包括例如读取操作、写入操作和擦除操作。控制器130还可控制存储器装置150的一个或多个后台操作。
在图1所示的实施例中,控制器130包括主机接口单元132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、NAND闪速控制器(NFC)142以及存储器144。
主机接口单元132提供主机和控制器130之间的接口。例如,主机接口132可接收和处理从主机102提供的请求、地址和数据。主机接口还可将从存储器装置读取的数据传输到主机。主机接口132可通过诸如以下的各种公知接口协议中的至少一种与主机102通信:通用串行总线(USB)、多媒体卡(MMC)、高速外围组件互连(PCI-E)、串列SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)以及电子集成驱动器(IDE)。
ECC单元138可在读取操作期间检测并校正从存储器装置150读取的数据中的错误。当错误位的数量大于或等于可校正错误位的阈值数量时,ECC单元138可不校正错误位,并且可输出指示校正错误位失败的错误校正失败信号。
ECC单元138可基于诸如以下的编码调制来执行错误校正操作:低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格姆(Bose-Chaudhuri-Hocquenghem,BCH)码、turbo码、里德-所罗门(Reed-Solomon,RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)、分组编码调制(Block coded modulation,BCM)等。ECC单元138可包括用于错误校正操作的所有电路、系统或装置。
PMU 140可提供和管理用于控制器130的电力,即用于包括在控制器130中的组成元件的电力。
NFC 142可用作控制器130和存储器装置150之间的存储器接口,以允许控制器130响应于来自主机102的请求来控制存储器装置150。当存储器装置150包括闪速存储器并且特别是当存储器装置150包括NAND闪速存储器时,NFC 142可生成用于存储器装置150的控制信号并且在处理器134的控制下处理数据。
存储器144可用作存储器系统110和控制器130的工作存储器,并且存储用于驱动存储器系统110和控制器130的数据。控制器130可响应于来自主机102的请求来控制存储器装置150。例如,控制器130可将从存储器装置150读取的数据提供给主机102,并将从主机102提供的数据存储在存储器装置150中。当控制器130控制存储器装置150的操作时,存储器144可存储由控制器130和存储器装置150用于诸如读取操作、写入操作、编程操作和擦除操作的操作的数据。
存储器144可使用易失性存储器来实施。存储器144可使用静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)来实施。如上所述,存储器144可存储由主机102和存储器装置150用于读取操作和写入操作的数据。为存储数据,存储器144可包括程序存储器、数据存储器、写入缓冲器、读取缓冲器、映射缓冲器等。
响应于来自主机102的写入请求或读取请求,处理器134可控制存储器系统110的一般操作以及对存储器装置150的写入操作或读取操作。处理器134可驱动被称为闪存转换层(FTL)的固件,以控制存储器系统110的一般操作。处理器134可使用微处理器或中央处理单元(CPU)来实施。
管理单元(未示出)可被包括在处理器134中,并且可执行存储器装置150的坏块管理。管理单元可发现包括在存储器装置150中的对于进一步使用而处于令人不满意的状况的坏存储块,并且对坏存储块执行坏块管理。当存储器装置150是闪速存储器,例如NAND闪速存储器时,由于NAND逻辑功能的特性,在写入操作期间,例如在编程操作期间,可能发生编程失败。在坏块管理期间,可将编程失败的存储块或坏存储块的数据编程到新存储块中。而且,由于编程失败导致的坏块使具有3D堆叠结构的存储器装置150的使用效率和存储器系统110的可靠性严重恶化,因此需要可靠的坏块管理。
图2是示出图1的存储器装置150的示意图。
参照图2,存储器装置150可包括多个存储块,例如,第0块210至第(N-1)块240。多个存储块210至240中的每一个可包括多个页面,例如2M个页面(2M页面),本发明不限于此。多个页面中的每一个可包括多个字线电联接到其的多个存储器单元。
此外,根据每个存储器单元中可存储或表达的位的数量,存储器装置150可包括多个存储块,例如单层单元(SLC)存储块和多层单元(MLC)存储块。SLC存储块可包括利用每个能够存储1位数据的存储器单元实施的多个页面。MLC存储块可包括利用每个都能够存储多位数据,例如,两位或更多位数据,的存储器单元实施的多个页面。包括利用每个能够存储3位数据的存储器单元实施的多个页面的MLC存储块可被定义为三层单元(TLC)存储块。
多个存储块210至240中的每一个可在写入操作期间存储从主机装置102提供的数据,并且可在读取操作期间将所存储的数据提供到主机102。
图3是示出存储器装置中的存储块的示例的电路图。
参照图3,存储器装置150的存储块330可包括被实现为存储器单元阵列并且分别联接到位线BL0至BLm-1的多个单元串340。每列的单元串340可包括至少一个漏极选择晶体管DST和至少一个源极选择晶体管SST。多个存储器单元或存储器单元晶体管MC0至MCn-1可串联地联接在选择晶体管DST和SST之间。各个存储器单元MC0至MCn-1可由每个存储多个位的数据信息的多层单元(MLC)构成。单元串340可分别电联接到对应的位线BL0至BLm-1。作为参考,在图3中,“DSL”可表示漏极选择线,“SSL”可表示源极选择线,并且“CSL”可表示共源线。
虽然图3示出了由NAND闪速存储器单元构成的存储块330作为示例,但是应当注意,根据本实施例的存储器装置150的存储块330不限于NAND闪速存储器,并且可由NOR闪速存储器、其中组合至少两种存储器单元的混合闪速存储器或者控制器被内置在存储器芯片中的1-NAND闪速存储器实现。半导体装置的操作特性不仅可应用于其中电荷存储层由导电浮栅构成的闪速存储器装置,而且还可应用于其中电荷存储层由介电层构成的电荷捕获闪存(CTF)。
存储器装置150的电压供应块310可提供将根据操作模式被供应到各个字线的字线电压(例如编程电压、读取电压和通过电压),以及提供将被供应到形成有存储器单元的体材料(bulk)(例如阱区)的电压。电压供应块310的电压生成操作可通过控制电路(未示出)的控制来执行。电压供应块310可生成多个可变读取电压以生成多个读取数据,响应于控制电路的控制选择存储器单元阵列的存储块(或扇区)中的一个,选择所选择的存储块的字线中的一个,并且将字线电压提供给所选择的字线和未选择的字线。
存储器装置150的读取/写入电路320由控制电路控制,并且可根据操作模式用作读出放大器或写入驱动器。例如,在验证/正常读取操作的情况下,读取/写入电路320可用作用于从存储器单元阵列读取数据的读出放大器。此外,在编程操作的情况下,读取/写入电路320可用作根据将存储在存储器单元阵列中的数据来驱动位线的写入驱动器。在编程操作中,读取/写入电路320可从缓冲器(未示出)接收将写入存储器单元阵列中的数据,并且可根据输入的数据来驱动位线。为此,读取/写入电路320可包括分别对应于列(或位线)或列对(或位线对)的多个页面缓冲器(PB)322、324和326,并且多个锁存器(未示出)可被包括在页面缓冲器322、324和326中的每一个中。
此外,存储器装置150可被实现为二维或三维存储器装置。如图4所示,在存储器装置150被实施为三维非易失性存储器装置的情况下,存储器装置150可包括多个存储块BLK0至BLKN-1。
图4是示出图2所示的存储器装置的存储块的框图,并且存储块BLK0至BLKN-1可被实现为三维结构(或垂直结构)。例如,各个存储块BLK0至BLKN-1可通过包括在第一至第三方向,例如,x轴方向、y轴方向和z轴方向上延伸的结构而被实现为三维结构。
包括在存储器装置150中的各个存储块BLK0至BLKN-1可包括在第二方向上延伸的多个NAND串。多个NAND串可设置在第一方向和第三方向上。每个NAND串可联接到位线、至少一个串选择线、至少一个接地选择线、多个字线、至少一个虚拟字线以及共源线,并且可包括多个晶体管结构。
也就是说,在存储器装置150的多个存储块BLK0到BLKN-1之中,各个存储块BLK0至BLKN-1可联接到多个位线、多个串选择线、多个接地选择线、多个字线、多个虚拟字线以及多个共源线,因此,可包括多个NAND串。此外,在各个存储块BLK0至BLKN-1中,多个NAND串可联接到一个位线,并且可在一个NAND串中实现多个晶体管。每个NAND串的串选择晶体管可联接到相应的位线,并且每个NAND串的接地选择晶体管可联接到共源线。可在每个NAND串的串选择晶体管和接地选择晶体管之间设置存储器单元。也就是说,在存储器装置150的多个存储块BLK0至BLKN-1中,可在存储块BLK0至BLKN-1中的每一个中实现多个存储器单元。
图5是示出根据实施例的对存储器系统110中的存储器装置的数据处理操作的示例的图。
参照图5,参考图1的存储器系统110的配置,存储器系统110可包括多个存储器装置1501至1504。例如,多个存储器装置1501至1504可包括第一存储器装置1501、第二存储器装置1502、第三存储器装置1503和第四存储器装置1504。然而,这仅仅是示例,并且在该多个存储器装置中可包括更多的存储器装置。
尽管图1示出在控制器130中包括主机接口单元132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、NAND闪速控制器(NFC)(或存储器接口)142和存储器144,但是图5示出各个单元没有包括在控制器130中。然而,实际上,仅为便于描述而省略各个单元,并且在控制器130中包括各个单元。
再次参照图5,存储器系统110可包括控制器130、第一存储器装置1501、第二存储器装置1502、第三存储器装置1503和第四存储器装置1504。第一存储器装置1501至第四存储器装置1504中的每一个可包括多个管芯。例如,多个管芯可包括第一管芯1501_1至第四管芯1501_4(Die1至Die4)。每个管芯可包括多个平面(plane)(未示出)。
多个存储器装置1501到1504可通过相应的通道联接到图1的存储器接口或NFC142,并且联接到控制器130的内部总线。例如,第一存储器装置1501可通过多个路联接到第一通道CH1。例如,多个路可包括第一路WAY1、第二路WAY2、第三路WAY3和第四路WAY4。也就是说,第一存储器装置1501的第一管芯(Die1)1501_1可通过第一通道CH1的第一路WAY1联接到存储器接口142,并且因此联接到控制器130的内部总线。第一存储器装置1501的第二管芯(Die2)1501_2可通过第一通道CH1的第二路WAY2联接到存储器接口142,并且因此联接到控制器130的内部总线。第一存储器装置1501的第三管芯(Die3)1501_3可通过第一通道CH1的第三路WAY3联接到存储器接口142,并且因此联接到控制器130的总线。第一存储器装置1501的第四管芯(Die4)1501_4可通过第一通道CH1的第四路WAY4联接到存储器接口142,并且因此联接到控制器130的总线。作为参考,图5示出第一存储器装置1501包括四个管芯(Die1至Die4)1501_1至1501_4。然而,这仅仅是示例,并且根据设计者的选择,存储器装置中可包括多于四个管芯或包括一个管芯。其中第一存储器装置1501的第一管芯Die1至第四管芯Die4通过第一路WAY1至第四路WAY4联接到通道CH1的配置仅是示例,并且可根据设计者的选择以各种方式修改。例如,控制器130可通过多个通道联接到多个存储器装置,并且根据交叉方法在各个通道执行数据输出操作和数据输入操作。数据输出操作是指将存储在存储器装置的缓冲器中的数据传输到控制器130的缓冲存储器的操作。可在数据输出时段tDout执行数据输出操作。数据输入操作是指将存储在控制器130的缓冲存储器中的数据传输到存储器装置的缓冲器的操作。可在数据输入时段tDin执行数据输入操作。
从第一存储器装置1501的配置明显看出,当可执行独立操作时,第一存储器装置1501可基于管芯或平面执行交叉操作。
独立操作可包括读取操作和编程操作。读取操作是指从存储器装置读取数据并将所读取的数据存储在存储器装置的缓冲器中的操作。读取操作可包括内部读取操作,其中内部读取操作包括后台操作。可在读取时段tRead期间执行读取操作。编程操作是指将存储在存储器装置的缓冲器中的数据编程到处于擦除状态的存储器装置的块的操作。因此,可在数据输入时段结束之后开始编程操作。可在编程时段tProgram期间执行编程操作。
尽管在图5中未示出,但是第二存储器装置1502至第四存储器装置1504中的每一个可包括多个管芯,并且包括在第二存储器装置1502至第四存储器装置1504的每一个中的多个管芯可通过第一路WAY1至第四路WAY4联接到相应的通道,例如,CH1。由于第二存储器装置1502至第四存储器装置1504包括与第一存储器装置1501相同的元件,因此在此省略对其的详细描述。以下,为便于描述,将以第一存储器装置1501为例。
图6是示出根据本实施例的存储器系统110的操作的流程图,图7是示出根据本实施例的后台操作等待列表的表格,图8至图10是示出根据本实施例的存储器系统110的操作的图。
图6至图10示出如何在存储器系统110中处理用于来自主机102的施加到存储器系统110的写入命令的编程操作和后台操作。
参照图6,在步骤S601中,控制器130可从主机102接收命令和数据。例如,命令可包括写入命令W_CMD。
在步骤S603中,控制器130可检查是否存在等待内部读取操作。内部读取操作可包括后台操作。以下,为便于描述,将内部读取操作称为后台操作。控制器130检查是否存在等待后台操作的原因是为确定当执行编程操作时是否执行后台操作或者在执行编程操作之后是否执行后台操作。对于该操作,控制器130可通过如图7所示的后台操作等待列表来检查是否存在等待后台操作。后台操作等待列表示出当控制器130执行垃圾收集(GC)操作或损耗平衡(WL)操作时的工作负荷,即后台工作负荷。GC操作可表示将存储在第一存储器装置1501至第四存储器装置1504的存储块中的数据复制到某个存储块的操作。WL操作可表示交换第一存储器装置1501至第四存储器装置1504的存储块或存储在存储块中的数据的操作。也就是说,后台操作等待列表示出在多个部分或时段,例如存储器装置中的对应于一个通道的各个路的多个管芯的第一部分至第四部分,处的等待后台工作负荷。后台工作负荷可表示在编程操作期间发生的通道的空闲部分期间根据交叉方法执行的等待后台操作的数量。可根据执行后台操作的内部读取操作执行时间来计算等待后台操作的数量。
当在步骤S603中检查到在后台操作等待列表中不存在等待后台操作(N)时,在步骤S605中,控制器130可通过如图8所示顺序地执行对应于各个管芯Die1至Die4的编程操作801至804,然后执行对应于内部读取命令的内部读取操作811至814来执行后台操作。这种操作可被称为正常操作。
而且,当在步骤S603中检查到在后台操作等待列表中存在等待后台操作(Y)时,在步骤S607中,控制器130可计算最大后台操作或内部读取操作数量BGmax,其表示在一个编程操作期间能够通过交叉操作执行的后台操作的最大数量。最大后台操作数量可表示在编程操作期间在第一管芯至第四管芯的任何一个中发生的通道的空闲时段期间,能够由多个管芯中的除了正在执行编程操作的管芯之外的任何一个管芯执行的后台操作的最大数量。最大后台操作数量可按如下计算。控制器130可通过使用其中存储器装置150执行编程操作的编程时段tProgram作为编程操作参数,以及使用其中存储器装置150执行内部读取操作的读取时段tRead作为内部读取操作参数来计算在编程操作中的通道的空闲时段处的最大后台操作数量BGmax。最大后台操作数量BGmax可表示为下面的等式1。
例如,当编程时段tProgram为1500μs且读取时段tRead为50μs时,能够由除了正在执行内部读取操作或编程操作的管芯之外的包括在第一存储器装置1501中的第一管芯1501_1至第四管芯1501_4执行的后台操作的数量,即,最大后台操作数量为15。
在步骤S609中,控制器130可检查最小后台操作或内部读取操作等待数量BGmin,其表示在编程操作期间能够以交叉方式执行的一个或多个后台操作。可通过图7的后台操作等待列表来检查最小后台操作等待数量BGmin。检查最小后台操作等待数量BGmin的原因是为检查最小后台操作等待数量BGmin和最大后台操作数量BGmax之间的大小关系。
例如,能够在第一存储器装置1501的第一部分或时段处执行的后台操作的数量如下:能够由第一管芯Die1通过第一通道CH1的第一路WAY1执行的后台操作的数量为18,能够由第二管芯Die2通过第一通道CH1的第二路WAY2执行的后台操作的数量为24,能够由第三管芯Die3通过第一通道CH1的第三路WAY3执行的后台操作的数量为7,以及能够由第四管芯Die4通过第一通道CH1的第四路WAY4执行的后台操作的数量为5。在这种情况下,由于能够由第四管芯Die4通过第一通道CH1的第四路WAY4执行的后台操作的数量为最小值5,所以在第一存储器装置1501的第一部分处的最小后台操作等待数量BGmin为5。
接下来,能够在第二存储器装置1502的第一部分处执行的后台操作的数量如下:能够由第一管芯Die1通过第二通道CH2的第一路WAY1执行的后台操作的数量为50,能够由第二管芯Die2通过第二通道CH2的第二路WAY2执行的后台操作的数量为18,能够由第三管芯Die3通过第二通道CH2的第三路WAY3执行的后台操作的数量为20,以及能够由第四管芯Die4通过第二通道CH2的第四路WAY4执行的后台操作的数量为40。在这种情况下,由于能够由第二管芯通过第二通道CH2的第二路WAY2执行的后台操作的数量为最小值18,所以在第二存储器装置1502的第一部分处的最小后台操作等待数量BGmin为18。
接下来,能够在第三存储器装置1503的第一部分处执行的后台操作的数量如下:能够由第一管芯Die1通过第三通道CH3的第一路WAY1执行的后台操作的数量为45,能够由第二管芯Die2通过第三通道CH3的第二路WAY2执行的后台操作的数量为45,能够由第三管芯Die3通过第三通道CH3的第三路WAY3执行的后台操作的数量为45,以及能够由第四管芯Die4通过第三通道CH3的第四路WAY4执行的后台操作的数量为45。在这种情况下,由于能够由第一管芯至第四管芯通过第三通道CH3的第一路至第四路执行的后台操作的数量都为45,因此在第三存储器装置1503的第一部分处的最小后台操作等待数量BGmin为45。
接下来,能够在第四存储器装置1504的第一部分处执行的后台操作的数量如下:能够由第一管芯Die1通过第四通道CH4的第一路WAY1执行的后台操作的数量为0,能够由第二管芯Die2通过第四通道CH4的第二路WAY2执行的后台操作的数量为0,能够由第三管芯Die3通过第四通道CH4的第三路WAY3执行的后台操作的数量为0,以及能够由第四管芯Die4通过第四通道CH4的第四路WAY4执行的后台操作的数量为0。在这种情况下,由于能够由第一管芯至第四管芯通过第四通道CH4的第一路至第四路执行的后台操作的数量都为0,因此在第四存储器装置1504的第一部分处的最小后台操作等待数量BGmin为0。
在步骤S611中,控制器130可使用最小后台操作等待数量BGmin来检查能够以交叉方式执行编程操作和后台操作的管芯的数量是否为两个或更多个,即,管芯的数量≥2。作为参考,检查管芯的数量是否为两个或更多个的原因是,其中一个存储器装置包括四个存储器管芯,并且两个存储器管芯以交叉方式操作的配置被作为示例。当在更少或更多数量的管芯被包括在一个存储器装置中并以交叉方式操作时,可改变步骤S611中的操作条件。
当在步骤S611中检查到能够在后台操作期间以交叉方式执行编程操作的管芯的数量小于2(N)时,在步骤S605中,控制器130可如图8所示顺序地执行对应于各个管芯的编程操作,然后执行后台操作。
而且,当能够在后台操作期间以交叉方式执行编程操作的管芯的数量等于或大于2(Y)时,在步骤S613中,控制器130可将最小后台操作等待数量BGmin与最大后台操作数量BGmax进行比较。
当在步骤S613中检查到最小后台操作等待数量BGmin大于最大后台操作数量BGmax时,即最小后台操作等待数量BGmin>最大后台操作数量BGmax(Y)时,在步骤S615中,第一至第四管芯中的除了执行编程操作的管芯之外的任何一个管芯可在执行编程操作时执行与最大后台操作数量BGmax一样多数量的后台操作。
参照图7和图9,当在第一管芯Die1和第二管芯Die2中执行第一编程操作901和第二编程操作902时,其中第一管芯Die1和第二管芯Die2在第一部分处通过第三通道CH3的第一路和第二路顺序地接收第一写入命令和第二写入命令,第三管芯Die3和第四管芯Die4可使用第三通道的空闲时段,通过第三通道CH3的第三路和第四路执行与最大后台操作数量BGmax一样多数量的后台操作。也就是说,第三通道CH3的第三管芯Die3可执行与最大后台操作数量BGmax一样多数量的第一后台操作,并且第三通道CH3的第四管芯Die4可执行与最大后台操作数量BGmax一样多数量的第二后台操作。
特别地,在第一部分处的第三通道CH3的最小后台操作等待数量BGmin为45,并且最大后台操作数量BGmax为15。此外,能够由第三通道CH3的第三管芯Die3执行的后台操作的数量为45。因此,第三通道CH3的第三管芯Die3可执行对应于最大后台操作数量BGmax的15次第一后台操作。因此,能够由第三通道CH3的第三管芯Die3执行的后台操作的数量可减少到30。类似地,能够由第三通道CH3的第四管芯Die4执行的后台操作的数量为45。因此,第三通道CH3的第四管芯Die4可执行对应于最大后台操作数量BGmax的15次第二后台操作。因此,能够由第三通道CH3的第四管芯Die4执行的后台操作的数量可减少到30。
此外,当在第三管芯Die3和第四管芯Die4中执行第三编程操作903和第四编程操作904时,其中第三管芯Die3和第四管芯Die4在第一部分处通过第三通道CH3的第三路WAY3和第四路WAY4顺序地接收第三写入命令和第四写入命令,第一管芯Die1和第二管芯Die2可使用第三通道CH3的空闲时段,通过第三通道CH3的第一路WAY1和第二路WAY2执行与最大后台操作数量BGmax一样多数量的后台操作。也就是说,第三通道CH3的第一管芯Die1可执行与最大后台操作数量BGmax一样多数量的第三后台操作,并且第三通道CH3的第二管芯Die2可执行与最大后台操作数量BGmax一样多数量的第四后台操作。
特别地,在第一部分处的第三通道CH3的最小后台操作等待数量BGmin为45,并且最大后台操作数量BGmax为15。此外,能够由第三通道CH3的第一管芯Die1执行的后台操作的数量为45。因此,第三通道CH3的第一管芯Die1可执行对应于最大后台操作数量BGmax的15次第三后台操作。因此,能够由第三通道CH3的第一管芯Die1执行的后台操作的数量可减少到30。类似地,能够由第三通道CH3的第二管芯Die2执行的后台操作的数量为45。因此,第三通道CH3的第二管芯Die2可执行对应于最大后台操作数量BGmax的15次第四后台操作。因此,能够由第三通道CH3的第二管芯Die2执行的后台操作的数量可减少到30。
当在步骤S613中检查到最小后台操作等待数量BGmin小于最大后台操作数量BGmax,即最小后台操作等待数量BGmin<最大后台操作数量BGmax(N)时,在步骤S617中,在第一至第四管芯中的除了执行编程操作的管芯之外的任何一个管芯可在执行编程操作时执行与最小后台操作等待数量BGmin一样多数量的后台操作。
参照图7和图10,当在第一管芯Die1和第二管芯Die2中执行第一编程操作1001和第二编程操作1002时,其中第一管芯Die1和第二管芯Die2在第一部分处通过第一通道CH1的第一路WAY1和第二路WAY2顺序地接收第一写入命令和第二写入命令,第三管芯Die3和第四管芯Die4可使用第一通道CH1的第三路WAY3和第四路WAY4来执行与最小后台操作等待数量BGmin一样多数量的后台操作。也就是说,第三管芯Die3可执行与最小后台操作等待数量BGmin一样多数量的第一后台操作,并且第四管芯Die4可执行与最小后台操作等待数量BGmin一样多数量的第二后台操作。
特别地,在第一部分处的第一通道CH1的最小后台操作等待数量BGmin为5,并且最大后台操作数量BGmax为15。此外,能够由第一通道CH1的第三管芯Die3执行的后台操作的数量为7。因此,第一通道CH1的第三管芯Die3可执行与最小后台操作等待数量BGmin一样多数量的第一后台操作。因此,能够由第一通道CH1的第三管芯Die3执行的后台操作的数量可减少到2。类似地,能够由第一通道CH1的第四管芯Die4执行的后台操作的数量为5。因此,第一通道CH1的第四管芯Die4可执行与最小后台操作等待数量BGmin一样多数量的第二后台操作。因此,能够由第一通道CH1的第四管芯Die4执行的后台操作的数量可减少到0。
此外,当在第三管芯Die3和第四管芯Die4中执行第三编程操作1003和第四编程操作1004时,其中第三管芯Die3和第四管芯Die4在第一部分处通过第一通道CH1的第三路WAY3和第四路WAY4顺序地接收第三写入命令和第四写入命令,第一管芯Die1和第二管芯Die2可使用第一通道CH1的第一路WAY1和第二路WAY2来执行与最小后台操作等待数量BGmin一样多数量的后台操作。也就是说,第一管芯Die1可执行与最小后台操作等待数量BGmin一样多数量的第一后台操作,并且第二管芯Die2可执行与最小后台操作等待数量BGmin一样多数量的第二后台操作。
特别地,在第一部分处的第一通道CH1的最小后台操作等待数量BGmin为5,并且最大后台操作数量BGmax为15。此外,能够由第一通道CH1的第一管芯Die1执行的后台操作的数量为18。因此,第一通道CH1的第一管芯Die1可执行与最小后台操作等待数量BGmin一样多数量的第一后台操作。因此,能够由第一通道CH1的第一管芯Die1执行的后台操作的数量可减少到13。类似地,能够由第一通道CH1的第二管芯Die2执行的后台操作的数量为24。因此,第一通道CH1的第二管芯Die2可执行与最小后台操作等待数量BGmin一样多数量的第二后台操作。因此,能够由第一通道CH1的第二管芯Die2执行的后台操作的数量可减少到19。
图11是示出包括根据实施例的存储器系统的数据处理系统的图。图11是示意性示出应用根据实施例的存储器系统的存储卡系统的图。
参照图11,存储卡系统6100包括存储器控制器6120、存储器装置6130和连接器6110。
详细地,存储器控制器6120可与存储器装置6130连接,并且可访问存储器装置6130。在一些实施例中,存储器装置6130可利用非易失性存储器(NVM)来实施。例如,存储器控制器6120可控制对存储器装置6130的读取、写入、擦除和后台操作。存储器控制器6120可提供存储器装置6130与主机(未示出)之间的接口,并且可驱动用于控制存储器装置6130的固件。例如,存储器控制器6120可对应于上面参照图1描述的存储器系统110中的控制器130,并且存储器装置6130可对应于上面参照图1描述的存储器系统110中的存储器装置150。
因此,存储器控制器6120可包括如图1所示的诸如随机存取存储器(RAM)、处理单元、主机接口、存储器接口和错误校正单元的组件。
存储器控制器6120可通过连接器6110与外部装置(例如,上面参照图1描述的主机102)通信。例如,如上面参照图1所述,存储器控制器6120可被配置为通过诸如以下的各种通信协议中的至少一种来与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围部件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA、并行ATA、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪速存储器(UFS)、无线保真(WI-FI)以及蓝牙。因此,根据实施例的存储器系统和数据处理系统可应用于有线/无线电子设备,例如,移动电子设备。
存储器装置6130可使用非易失性存储器来实施。例如,存储器装置6130可用诸如以下的各种非易失性存储器装置来实施:电可擦除可编程ROM(EPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋转移力矩磁性RAM(STT-MRAM)。
存储器控制器6120和存储器装置6130可集成到单个半导体装置中。例如,存储器控制器6120和存储器装置6130可通过集成到单个半导体装置中来构造固态驱动器(SSD)。存储器控制器6120和存储器装置6130可构造诸如以下的存储卡:PC卡(PCMCIA:个人计算机存储卡国际协会)、标准闪存卡(CF)、智能媒体卡(SM和SMC)、记忆棒、多媒体卡(MMC、RS-MMC、MMC微型和eMMC)、SD卡(例如,SD、迷你SD、微型SD和SDHC)以及通用闪速存储器(UFS)。
图12是示意性示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的图。
参照图12,数据处理系统6200包括:存储器装置6230,其可利用至少一个非易失性存储器(NVM)来实施;以及存储器控制器6220,其用于控制存储器装置6230。如上面参照图1所描述的,数据处理系统6200可以是诸如存储卡(例如,CF、SD和微型SD)的存储介质。存储器装置6230可对应于上面参照图1描述的存储器系统110中的存储器装置150,并且存储器控制器6220可对应于上面参照图1描述的存储器系统110中的控制器130。
存储器控制器6220可响应于从主机6210接收的请求来控制对存储器装置6230的操作,其包括读取、写入和擦除操作。存储器控制器6220可包括中央处理单元(CPU)6221、作为缓冲存储器的随机存取存储器(RAM)6222、错误校正码(ECC)电路6223、主机接口6224以及作为存储器接口的NVM接口6225,其全部经由内部总线联接。
CPU 6221可控制对存储器装置6230的操作,诸如读取、写入、文件系统管理、坏页面管理等。RAM 6222可根据CPU 6221的控制来操作,并且可用作工作存储器、缓冲存储器、高速缓冲存储器等。在RAM 6222被用作工作存储器的情况下,由CPU 6221处理的数据临时存储在RAM 6222中。在RAM 6222被用作缓冲存储器的情况下,RAM 6222用于缓冲将从主机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码、里德-所罗门(RS)码、卷积码、递归系统码(RSC)、网格编码调制(TCM)以及分组编码调制(BCM)。
存储器控制器6220通过主机接口6224向主机6210传输数据和从主机6210接收数据,并且通过NVM接口6225向存储器装置6230传输数据和从存储器装置6230接收数据。主机接口6224可通过诸如以下的各种接口协议中的至少一种与主机6210连接:并行高级技术附件(PATA)总线、串行高级技术附件(SATA)总线、小型计算机系统接口(SCSI)、通用串行总线(USB)、高速外围组件互连(PCIe)或NAND接口。进一步地,由于诸如无线保真(WI-FI)或长期演进(LTE)的无线通信功能或移动通信协议被实现,存储器控制器6220可通过与诸如主机6210的外部装置或除主机6210之外的另一外部装置连接来传输和接收数据。特别地,由于存储器控制器6220被配置为通过各种通信协议中的至少一种与外部装置通信,因此根据实施例的存储器系统和数据处理系统可应用于有线/无线电子设备,例如,移动电子设备。
图13是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的图。图13可以是固态驱动器(SSD)。
参照图13,SSD 6300可包括存储器装置6340和控制器6320,其中存储器装置6340可包括多个非易失性存储器NVM。控制器6320可对应于上面参照图1描述的存储器系统110中的控制器130,并且存储器装置6340可对应于上面参照图1描述的存储器系统110中的存储器装置150。
详细地,控制器6320可通过多个通道CH1、CH2、CH3、......和CHi与存储器装置6340连接。控制器6320可包括经由内部总线联接的处理器6321、缓冲存储器6325、错误校正码(ECC)电路6322、主机接口6324和作为存储器接口的非易失性存储器(NVM)接口6326。
缓冲存储器6325临时存储从主机6310接收的数据或从包括在存储器装置6340中的多个非易失性存储器NVM接收的数据,或者临时存储多个非易失性存储器NVM的元数据。例如,元数据可包括含有映射表的映射数据。缓冲存储器6325可利用易失性存储器或非易失性存储器来实施,其中易失性存储器诸如但不限于动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率(DDR)SDRAM、低功率双倍数据速率(LPDDR)SDRAM以及图形随机存取存储器(GRAM),非易失性存储器诸如但不限于铁电随机存取存储器(FRAM)、电阻随机存取存储器(ReRAM)、自旋转移力矩磁性随机存取存储器(STT-MRAM)以及相变随机存取存储器(PRAM)。为便于解释,虽然在图13中示出了缓冲存储器6325设置在控制器6320的内部,但是应当注意,缓冲存储器6325可设置在控制器6320的外部。
ECC电路6322在编程操作中计算将在存储器装置6340中编程的数据的错误校正码值,在读取操作中基于错误校正码值对从存储器装置6340读取的数据执行错误校正操作,并且在失效数据的恢复操作中对从存储器装置6340恢复的数据执行错误校正操作。
主机接口6324提供关于诸如主机6310的外部装置的接口功能。非易失性存储器接口6326提供关于存储器装置6340的接口功能,存储器装置6340通过多个通道CH1、CH2、CH3、......和Chi被连接。
由于每个应用上面参照图1描述的存储器系统110的多个SSD 6300被使用,因此可实施诸如独立磁盘冗余阵列(RAID)系统的数据处理系统。在RAID系统中,可包括多个SSD6300和用于控制多个SSD 6300的RAID控制器。在通过从主机6310接收写入命令来执行编程操作的情况下,RAID控制器可响应于从主机6310接收的写入命令的RAID级别信息,在多个RAID级别(例如,多个SSD 6300)之中选择至少一个存储器系统(例如,至少一个SSD 6300),并且可向所选择的SSD 6300输出对应于写入命令的数据。在通过从主机6310接收读取命令来执行读取操作的情况下,RAID控制器可响应于从主机6310接收的写入命令的RAID级别信息,在多个RAID级别(例如,多个SSD 6300)之中选择至少一个存储器系统(例如,至少一个SSD 6300),并且可将从所选择的SSD 6300输出的数据提供给主机6310。
图14是示出包括根据本发明的实施例的存储器系统的数据处理系统的另一示例的图。图14是示意性示出应用根据实施例的存储器系统的嵌入式多媒体卡(eMMC)的图。
参照图14,eMMC 6400包括利用至少一个NAND闪速存储器来实施的存储器装置6440和控制器6430。控制器6430可对应于上面参照图1描述的存储器系统110中的控制器130,并且存储器装置6440可对应于上面参照图1描述的存储器系统110中的存储器装置150。
详细地,控制器6430可通过多个通道与存储器装置6440连接。控制器6430可包括核心(core)6432、主机接口6431和诸如NAND接口6433的存储器接口。
核心6432可控制eMMC 6400的操作。主机接口6431可提供控制器6430和主机6410之间的接口功能。NAND接口6433可提供存储器装置6440和控制器6430之间的接口功能。例如,主机接口6431可以是诸如上面参照图1所述的MMC接口的并行接口,或者是诸如超高速类1(UHS-I)/UHS类2(UHS-II)和通用闪速存储器(UFS)接口的串行接口。
图15是示出包括根据本发明的实施例的存储器系统的数据处理系统的另一示例的图。图15是示意性示出应用根据实施例的存储器系统的通用闪速存储器(UFS)的图。
参照图15,UFS系统6500可包括UFS主机6510、多个UFS装置6520和6530、嵌入式UFS装置6540和可移动UFS卡6550。UFS主机6510可以是有线/无线电子设备,例如移动电子设备,的应用处理器。
UFS主机6510、UFS装置6520和6530、嵌入式UFS装置6540和可移动UFS卡6550可分别通过UFS协议与诸如有线/无线电子设备(例如,移动电子设备)的外部装置通信。例如,UFS装置6520和6530、嵌入式UFS装置6540和可移动UFS卡6550可利用上面参照图1描述的存储器系统110被实施为上面参照图11描述的存储卡系统6100。嵌入式UFS装置6540和可移动UFS卡6550可通过除了UFS协议之外的另一协议进行通信。例如,嵌入式UFS装置6540和可移动UFS卡6550可通过诸如但不限于以下的各种卡协议进行通信:USB闪存驱动器(UFD)、多媒体卡(MMC)、安全数字(SD)、迷你SD和微型SD。
图16是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的图。图16是示意性示出应用根据实施例的存储器系统的用户系统的图。
参照图16,用户系统6600可包括应用处理器6630、存储器模块6620、网络模块6640、存储模块6650和用户接口6610。
应用处理器6630可驱动包括在用户系统6600中的组件和操作系统(OS)。例如,应用处理器6630可包括用于控制包括在用户系统6600中的组件的控制器、接口以及图形引擎等。应用处理器6630可通过片上系统(SoC)提供。
存储器模块6620可用作用户系统6600的主存储器、工作存储器、缓冲存储器或高速缓冲存储器。存储器模块6620可包括诸如动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)、双倍数据速率(DDR)SDRAM、DDR2SDRAM、DDR3SDRAM、低功率双倍数据速率(LPDDR)SDRAM、LPDDR2SDRAM和LPDDR3SDRAM的易失性随机存取存储器,或诸如相变随机存取存储器(PRAM)、电阻式随机存取存储器(ReRAM)、磁性随机存取存储器(MRAM)和铁电随机存取存储器(FRAM)的非易失性随机存取存储器。例如,应用处理器6630和存储器模块6620可通过基于堆叠封装(POP)被封装来安装。
网络模块6640可与外部装置通信。例如,网络模块6640不仅可支持有线通信,而且可支持诸如码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、全球微波接入互操作性(WiMAX)、无线局域网(WLAN)、超宽带(UWB)、蓝牙、无线显示器(WI-DI)等的各种无线通信,并且因此可与例如移动电子设备的有线/无线电子设备通信。根据这一事实,根据实施例的存储器系统和数据处理系统可应用于有线/无线电子设备。网络模块6640可包括在应用处理器6630中。
存储模块6650可存储诸如从应用处理器6630接收的数据的数据,并将存储在其中的数据传输到应用处理器6630。存储模块6650可由诸如相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(ReRAM)、NAND闪速存储器、NOR闪速存储器以及三维NAND闪速存储器的非易失性半导体存储器装置来实现。存储模块6650可作为诸如用户系统6600的存储卡和外部驱动器的可移除存储介质来提供。例如,存储模块6650可对应于上面参照图1描述的存储器系统110,并且可利用上面参照图13至图15描述的SSD、eMMC和UFS来实施。
用户接口6610可包括用于将数据或命令输入到应用处理器6630或者用于将数据输出到外部装置的接口。例如,用户接口6610可包括诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、相机、麦克风、陀螺仪传感器、振动传感器和压电元件的用户输入接口,以及包括诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、发光二极管(LED)、扬声器和电动机的用户输出接口。
在根据实施例的将上面参照图1描述的存储器系统110应用于用户系统6600的移动电子设备的情况下,如上所述,应用处理器6630可控制移动电子设备的操作,并且作为通信模块的网络模块6640可控制与外部装置的有线/无线通信。作为移动电子设备的显示/触摸模块的用户接口6610显示由应用处理器6630处理的数据或者支持来自触摸面板的数据输入。
根据本实施例,存储器系统及其操作方法能够在编程操作期间发生的通道的空闲时段期间执行后台操作,或者以交叉方式执行编程操作和后台操作,由此减少通道的空闲时段。因此,能够减少存储器系统的数据处理操作时间。
虽然已经为了说明的目的描述了各种实施例,但是对于本领域技术人员将显而易见的是,在不脱离如权利要求中所限定的本发明的精神和范围的情况下,可进行各种改变和修改。
Claims (18)
1.一种存储器系统的操作方法,其包括:
以交叉方式访问多个存储器装置,并执行编程操作,其中所述多个存储器装置的每个包括多个管芯;并且
在所述编程操作期间,执行至少一个内部读取操作以从以所述交叉方式访问的所述多个管芯中读取数据,
其中根据最大内部读取操作数量和最小内部读取操作等待数量来确定在所述编程操作的任何一个编程操作期间执行的一个或多个内部读取操作,
其中通过比较所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小的操作来确定在所述编程操作的任何一个期间执行的所述一个或多个内部读取操作。
2.根据权利要求1所述的操作方法,其进一步包括:
在所述一个编程操作期间执行所述一个或多个内部读取操作之前,通过内部读取操作等待列表来确定是否存在等待内部读取操作,并且
其中当确定存在所述等待内部读取操作时,以所述交叉方式执行所述编程操作和所述内部读取操作。
3.根据权利要求1所述的操作方法,其中所述多个存储器装置或包括在所述存储器装置的每个中的所述多个管芯联接到多个路,其中所述多个路联接到一个通道或多个通道。
4.根据权利要求1所述的操作方法,其中所述内部读取操作包括后台操作,并且所述后台操作包括垃圾收集操作和损耗平衡操作中的一个。
5.根据权利要求1所述的操作方法,其中所述最小内部读取操作等待数量表示在内部读取操作等待列表中能够执行的内部读取操作的最小数量,所述内部读取操作等待列表包括能够由所述多个存储器装置或所述多个管芯执行的等待内部读取操作的数量。
6.根据权利要求5所述的操作方法,其中根据内部读取操作执行时间来确定包括在所述内部读取操作等待列表中的所述内部读取操作等待数量。
7.根据权利要求1所述的操作方法,其中所述最大内部读取操作数量表示能够在所述编程操作的任何一个期间执行的内部读取操作的最大数量。
8.根据权利要求1所述的操作方法,其中在所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小的比较中,
当所述最小内部读取操作等待数量小于所述最大内部读取操作数量时,在所述编程操作期间执行与所述最小内部读取操作等待数量一样多数量的内部读取操作。
9.根据权利要求1所述的操作方法,其中在所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小的比较中,
当所述最小内部读取操作等待数量大于所述最大内部读取操作数量时,在所述编程操作期间执行与所述最大内部读取操作数量一样多数量的内部读取操作。
10.一种存储器系统,其包括:
多个存储器装置,所述多个存储器装置的每个包括多个管芯;以及
控制器,其适于以交叉方式访问所述多个存储器装置,执行对应于各个存储器装置的数据输入操作或数据输出操作,以及在编程操作期间执行至少一个内部读取操作以从以所述交叉方式访问的所述多个管芯中读取数据,
其中所述控制器根据最大内部读取操作数量和最小内部读取操作等待数量来确定在所述编程操作的任何一个编程操作期间执行的一个或多个内部读取操作的数量,
其中在所述编程操作的任何一个期间执行的所述一个或多个内部读取操作包括比较所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小。
11.根据权利要求10所述的存储器系统,其中在所述一个编程操作期间执行所述一个或多个内部读取操作之前,所述控制器进一步适于通过内部读取操作等待列表来确定是否存在等待内部读取操作,并且当确定存在所述等待内部读取操作时,根据所述交叉方式在所述多个存储器装置中执行所述编程操作和所述内部读取操作。
12.根据权利要求10所述的存储器系统,其中所述控制器通过多个路联接到所述多个存储器装置或包括在所述存储器装置的每个中的所述多个管芯,其中所述多个路联接到一个通道或多个通道。
13.根据权利要求10所述的存储器系统,其中所述内部读取操作包括后台操作,并且所述后台操作包括垃圾收集操作和损耗平衡操作中的一个。
14.根据权利要求10所述的存储器系统,其中所述控制器确定所述最小内部读取操作等待数量,所述最小内部读取操作等待数量表示在内部读取操作等待列表中能够执行的内部读取操作的最小数量,所述内部读取操作等待列表包括能够在所述多个存储器装置或所述多个管芯中执行的等待内部读取操作的数量。
15.根据权利要求14所述的存储器系统,其中所述控制器基于内部读取操作执行时间来确定包括在所述内部读取操作等待列表中的所述内部读取操作等待数量。
16.根据权利要求10所述的存储器系统,其中所述最大内部读取操作数量表示能够在所述编程操作的任何一个期间执行的内部读取操作的最大数量。
17.根据权利要求10所述的存储器系统,其中根据所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小关系的检查结果,当所述最小内部读取操作等待数量小于所述最大内部读取操作数量时,所述控制器在所述编程操作期间执行与所述最小内部读取操作等待数量一样多数量的内部读取操作。
18.根据权利要求10所述的存储器系统,其中作为所述最大内部读取操作数量和所述最小内部读取操作等待数量之间的大小的比较结果,当所述最小内部读取操作等待数量大于所述最大内部读取操作数量时,所述控制器在所述编程操作期间执行与所述最大内部读取操作数量一样多数量的内部读取操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2016-0072394 | 2016-06-10 | ||
KR1020160072394A KR102664674B1 (ko) | 2016-06-10 | 2016-06-10 | 메모리 시스템 및 메모리 시스템의 동작방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107491396A CN107491396A (zh) | 2017-12-19 |
CN107491396B true CN107491396B (zh) | 2020-10-16 |
Family
ID=60572717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710193085.3A Active CN107491396B (zh) | 2016-06-10 | 2017-03-28 | 存储器系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10048873B2 (zh) |
KR (1) | KR102664674B1 (zh) |
CN (1) | CN107491396B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6709180B2 (ja) * | 2017-02-28 | 2020-06-10 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US10564895B2 (en) * | 2017-06-07 | 2020-02-18 | ScaleFlux, Inc. | I/O performance enhancement of solid-state data storage devices |
KR102612918B1 (ko) * | 2018-07-27 | 2023-12-13 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
KR20200031402A (ko) * | 2018-09-14 | 2020-03-24 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
KR20200048318A (ko) * | 2018-10-29 | 2020-05-08 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US10789015B2 (en) * | 2019-03-01 | 2020-09-29 | Micron Technology, Inc. | Background operations in memory |
KR20210000877A (ko) * | 2019-06-26 | 2021-01-06 | 에스케이하이닉스 주식회사 | 메모리 시스템의 입출력 성능을 향상시키는 장치 및 방법 |
KR102645786B1 (ko) * | 2019-07-08 | 2024-03-12 | 에스케이하이닉스 주식회사 | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 |
US11237734B2 (en) * | 2019-08-19 | 2022-02-01 | Micron Technology, Inc. | High throughput DRAM with distributed column access |
KR20210068734A (ko) | 2019-12-02 | 2021-06-10 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11281405B2 (en) * | 2020-06-08 | 2022-03-22 | Western Digital Technologies, Inc. | Controlled die asymmetry during MLC operations for optimal system pipeline |
KR102701111B1 (ko) | 2020-08-18 | 2024-09-02 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR20220041593A (ko) | 2020-09-25 | 2022-04-01 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
JP2022144754A (ja) * | 2021-03-19 | 2022-10-03 | キオクシア株式会社 | 半導体記憶装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103714856A (zh) * | 2012-10-05 | 2014-04-09 | 三星电子株式会社 | 存储器系统及其读取回收方法 |
US20140223084A1 (en) * | 2013-02-06 | 2014-08-07 | Samsung Electronics Co., Ltd. | Memory system and related method of operation |
CN104903842A (zh) * | 2012-12-31 | 2015-09-09 | 桑迪士克科技股份有限公司 | 用于在非易失性存储器中的异步裸芯操作的方法和系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7173863B2 (en) | 2004-03-08 | 2007-02-06 | Sandisk Corporation | Flash controller cache architecture |
JP2010176646A (ja) * | 2009-02-02 | 2010-08-12 | Toshiba Information Systems (Japan) Corp | メモリシステムおよびメモリシステムのインターリーブ制御方法 |
KR101581857B1 (ko) * | 2009-08-06 | 2015-12-31 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 인터리브 유닛 구성 방법 |
US8473669B2 (en) * | 2009-12-07 | 2013-06-25 | Sandisk Technologies Inc. | Method and system for concurrent background and foreground operations in a non-volatile memory array |
KR101992940B1 (ko) | 2012-08-08 | 2019-06-26 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법, 및 상기 메모리 컨트롤러를 포함하는 시스템 |
KR20150087646A (ko) * | 2014-01-22 | 2015-07-30 | 삼성전자주식회사 | 불 휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법 |
US10156994B2 (en) * | 2015-02-27 | 2018-12-18 | Western Digital Technologies, Inc. | Methods and systems to reduce SSD IO latency |
US10120613B2 (en) * | 2015-10-30 | 2018-11-06 | Sandisk Technologies Llc | System and method for rescheduling host and maintenance operations in a non-volatile memory |
US9778855B2 (en) * | 2015-10-30 | 2017-10-03 | Sandisk Technologies Llc | System and method for precision interleaving of data writes in a non-volatile memory |
-
2016
- 2016-06-10 KR KR1020160072394A patent/KR102664674B1/ko active IP Right Grant
-
2017
- 2017-01-12 US US15/404,332 patent/US10048873B2/en active Active
- 2017-03-28 CN CN201710193085.3A patent/CN107491396B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103714856A (zh) * | 2012-10-05 | 2014-04-09 | 三星电子株式会社 | 存储器系统及其读取回收方法 |
CN104903842A (zh) * | 2012-12-31 | 2015-09-09 | 桑迪士克科技股份有限公司 | 用于在非易失性存储器中的异步裸芯操作的方法和系统 |
US20140223084A1 (en) * | 2013-02-06 | 2014-08-07 | Samsung Electronics Co., Ltd. | Memory system and related method of operation |
Also Published As
Publication number | Publication date |
---|---|
CN107491396A (zh) | 2017-12-19 |
KR102664674B1 (ko) | 2024-05-16 |
US10048873B2 (en) | 2018-08-14 |
US20170357447A1 (en) | 2017-12-14 |
KR20170140467A (ko) | 2017-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107643985B (zh) | 存储器系统及其操作方法 | |
CN107491396B (zh) | 存储器系统及其操作方法 | |
CN107562649B (zh) | 存储器系统及其操作方法 | |
CN108304141B (zh) | 存储器系统及其操作方法 | |
CN107589906B (zh) | 存储器系统及其操作方法 | |
CN108121665B (zh) | 存储器系统及其操作方法 | |
US10452431B2 (en) | Data processing system and operating method thereof | |
CN107450845B (zh) | 存储器系统及其操作方法 | |
CN107346214B (zh) | 存储器系统及其操作方法 | |
US10489078B2 (en) | Controller keeping a sequence of data and operating method thereof | |
CN109390003B (zh) | 存储器系统及其操作方法 | |
CN109697171B (zh) | 控制器及其操作方法 | |
CN107562653B (zh) | 存储器系统及其操作方法 | |
CN110489271B (zh) | 存储器系统及其操作方法 | |
US10331346B2 (en) | Memory system using burst command for handling plural commands and operating method thereof | |
CN107728932B (zh) | 存储器系统及其操作方法 | |
CN107767897B (zh) | 存储器系统及其操作方法 | |
CN110045914B (zh) | 存储器系统及其操作方法 | |
CN110968521B (zh) | 存储器系统及其操作方法 | |
US20180157415A1 (en) | Apparatus and method for controlling memory device | |
CN110197695B (zh) | 存储器系统及其操作方法 | |
CN107436730B (zh) | 数据处理系统及其操作方法 | |
CN110349615B (zh) | 控制器、其操作方法及包括控制器的存储器系统 | |
CN107767896B (zh) | 包括多接口的存储器系统 | |
CN109753388B (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 |