CN105718378A - 存储系统及其操作方法 - Google Patents
存储系统及其操作方法 Download PDFInfo
- Publication number
- CN105718378A CN105718378A CN201510383624.0A CN201510383624A CN105718378A CN 105718378 A CN105718378 A CN 105718378A CN 201510383624 A CN201510383624 A CN 201510383624A CN 105718378 A CN105718378 A CN 105718378A
- Authority
- CN
- China
- Prior art keywords
- data
- page
- programmed
- memory block
- memory
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0615—Address space extension
-
- 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/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
Abstract
一种存储系统,包括存储器件,所述存储器件包括多个存储块,其中所述多个存储块中的每一个包括多个页,其中所述多个页中的每一个包括电耦接到多个字线的多个存储单元,其中由主机所请求的读取数据和写入数据存储在所述多个存储单元中;以及控制器,其配置为(i)将对应于接收自主机的写入命令/读取命令的第一数据编程在从多个存储块中选择的第一存储块的第一页中,(ii)将第二数据的位置信息记录在第一页中,并且(iii)将第二数据编程在第一存储块中的第一页之后的第二页中。
Description
相关申请的交叉引用
本申请要求在2014年12月19日提交的韩国专利申请No.10-2014-0184811的优先权,其整体内容通过引用合并于此。
技术领域
本发明的示例性各实施例涉及一种存储系统,并且更具体地,涉及一种处理来自于存储器件的数据的存储系统,及其操作方法。
背景技术
近年来,针对计算环境的范例业已改变为普适计算,使得可以在任何时间任何地点使用计算机系统。因此,对例如移动电话、数字相机以及笔记本电脑的便携式电子器件的使用快速地增长。这种便携式电子器件通常使用具有存储器件,即数据储存器件的存储系统。数据储存器件在便携式电子器件之内用作主存储器或辅助式存储器件。
具有存储器件的数据储存器件具有优势的原因在于由于没有移动部分,因此稳定性和耐久性卓越,信息存取速度高,并且功耗低。具有这些优势的带有存储系统的数据储存器件的例子包括通用串行总线(USB)存储器件、具有各种接口的存储器卡以及固态驱动器(SSD)。
发明内容
各种实施例指向一种存储系统及其操作方法,其可以快速且稳定地处理来自存储器件的数据。
在一个实施例中,存储系统可以包括:存储器件,其包括多个存储块,其中所述多个存储块中的每一个包括多个页,其中所述多个页中的每一个包括电耦接到多个字线的多个存储单元,其中由主机所请求的读取数据和写入数据存储在所述多个存储单元中;以及控制器,配置为(i)将与接收自主机的写入命令/读取命令相对应的第一数据编程在从多个存储块中选择的第一存储块的第一页中,(ii)将第二数据的位置信息记录在第一页中,以及(iii)将第二数据编程在第一存储块中的第一页之后的第二页中。
所述控制器可以将第一数据编程在第一页的数据区域中并且将第二数据的位置信息记录在第一页的空闲区域。
所述控制器可以将第三数据的位置信息记录在第二页中并且将第三数据编程在第二页之后的第三页中。
所述第二数据可能没有成功地被编程在第二页中,所述控制器利用记录在第一页的空闲区域中的第二数据的位置信息将第二数据编程在第二页中。
当不存在第三数据时,控制器可以在第二页的空闲区域记录虚设数据或空数据。
当第一数据和第二数据是存储在包括在控制器中的缓冲器中的数据时,第二数据的位置信息可以是存储在缓冲器中的第二数据的地址。
当第一数据和第二数据是被编程在第一存储块中的数据时,第二数据的位置信息可以是被编程在第一存储块中的第二数据的地址。
第二数据的位置信息可以包括关于第二数据存储在第一存储块中的位置的信息。
第二数据的位置信息可以是第二数据的逻辑块地址(LBA)。
在一个实施例中,一种用于操作包括存储装置的存储系统的方法包括:从存储装置的多个存储块中选择第一存储块;从包括在第一存储块中的多个页中选择第一页,其中所述第一页包括电耦接到多个字线的多个存储单元;将与接收自主机的写入命令/读取命令相对应的第一数据编程在第一存储块的第一页中;将第二数据的位置信息记录在第一存储块的第一页中;以及将第二数据编程在第一存储块中的第一页之后的第二页中。
将与接收自主机的写入命令/读取命令相对应的第一数据编程在第一页中可以包括将第一数据编程在第一页的数据区域中,以及记录第二数据的位置信息可以包括将第二数据的位置信息记录在第一页的空闲区域中。
在第二页中编程可以进一步包括:将第三数据的位置信息记录在第二页中,其中所述第三数据被编程在第二页之后的第三页中。
将第二数据编程在第二页中可以进一步包括:当第二数据在第二页中的编程失败时检查记录在第一页的空闲区域中的第二数据的位置信息;以及利用第二数据的位置信息将第二数据编程在第二页中。
所述将第三数据的位置信息记录在第二页中进一步包括:当被编程在第三页中的第三数据不存在时,在第二页的空闲区域记录虚设数据或空数据。
当第一数据和第二数据是存储在包括在控制器中的缓冲器中的数据时,第二数据的位置信息可以是存储在缓冲器中的第二数据的地址。
当第一数据和第二数据是被编程在第一存储块中的数据时,第二数据的位置信息可以是被编程在第一存储块中的第二数据的地址。
第二数据的位置信息可以包括关于第二数据存储在第一存储块中的位置的信息。
第二数据的位置信息可以是第二数据的逻辑块地址(LBA)。
在一个实施例中,存储系统可以包括:包括有N个数目的页的存储块,第(M-1)个页可以包括第(M-1)个数据的非位置信息,第M个页可以包括第M个数据的非位置信息,第(M-1)个页进一步可以包括第M个数据的位置信息,并且N可以为整数,M可以为整数,并且M≤N。
N个数目的页中的每一个可以包括数据区域和空闲区域,第(M-1)个页的数据区域可以存储第(M-1)个数据的非位置信息,并且第(M-1)个页的空闲区域可以存储第M个数据的位置信息,并且第N个页的空闲区域可以存储空数据。
附图说明
图1是图示了包括根据一个实施例的存储系统的数据处理系统的示图。
图2是图示了图1所示的存储系统中的存储器件的示图;
图3是图示了根据一个实施例的存储器件中的存储块的电路图。
图4到图11是示意性地图示了根据一个实施例的存储系统中的存储器件的示图。
图12是图示了根据一个实施例的数据处理操作的示意性示图;
图13是图示了用于处理根据一个实施例的存储系统中的数据的操作过程的示意性流程图。
具体实施方式
以下将参照附图详细描述各种实施例。然而本发明可以实施为不同的形式并且不应当被解释为限于这里所列举的实施例。相反,提供这些实施例从而使得本公开充分完整,并且将完全将本发明的范围传达给本领域的技术人员。贯穿本公开,相同的参考标号在本发明的相应的附图和实施例中指代相同的部分。
图1是图示了包括根据本发明一个实施例的存储系统的数据处理系统的示图。
参照图1,数据处理系统100可以包括主机102和存储系统110。
所述主机102例如包括诸如移动电话、MP3播放器和膝上电脑的便携式电子器件或诸如台式电脑、游戏机、TV和投影仪的电子器件。
存储系统110响应于来自主机102的请求进行操作,并且特别地存储将由主机102存取的数据。换句话说,存储系统110可以用作主机102的主存储器件或辅助存储器件。存储系统110可以根据将与主机102电耦接的主机接口的协议通过各种储存器件中的任何一个来实施。例如,存储系统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包括存储将被主机102存取的数据的存储器件150,以及控制数据在存储器件150中的储存的控制器130。
控制器130和存储器件150可以被集成进一个半导体器件中。例如,控制器130和存储器件150可以被集成到一个半导体器件中并且配置固态驱动器(SSD)。当存储系统110被用作SSD时,与存储系统110电耦接的主机102的操作速度显著地增加。
控制器130和存储器件150可以被集成进一个半导体器件中并且配置存储器卡。例如,所述控制器130和存储器卡150可以被集成到一个半导体器件中并且配置存储器卡,诸如个人计算机存储器卡国际协会(PCMCIA)卡、紧凑式闪存(CF)卡、智能媒体(SM)卡、存储棒、诸多媒体卡(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)堆叠结构。由于将在后文参照图2到图11描述存储器件150的结构和存储器件150的三维(3D)堆叠结构,因此在此省略对其的详细描述。
存储系统110的控制器130响应于来自主机102的请求控制存储器件150。例如,所述控制器130将读取自存储器件150的数据提供给主机102,并且将提供自主机102的数据存储在存储器件150中。为了达到这个目的,控制器130控制存储器件150的所有操作,例如读取、写入、编程和擦除操作。
详细而言,控制器130包括主机接口单元132、处理器134、协议单元136、错误修正码(ECC)单元138、电源管理单元140、NAND闪存控制器142和存储器144。
主机接口单元132处理提供自主机102的命令和数据,并且可以配置为通过以下各种接口协议中的至少一个与主机102进行通信,即通用串行总线(USB)、多媒体卡(MMC)、快速外围组件互连(PCI-E)、串行SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、小型计算机系统接口(SCSI)、增强小硬盘接口(ESDI)、以及集成驱动电路(IDE)。
ECC单元138对在读取操作期间读取自存储器件150的数据中包含的错误进行检测和修正。也就是说,在对读取自存储器件150的数据执行错误修正解码操作之后,ECC单元138可以确定错误修正解码操作是否成功,响应于确定结果输出指示信号,并且基于由ECC编码处理生成的校验位(paritybit)来修正读取数据的错误位。如果错误位的数目等于或大于可修正错误位的阈值数,则ECC单元138可以不修正错误位,并且可以输出指示着其无法修正错误位的错误修正失败信号。
ECC单元138可以基于例如低密度奇偶校验(LDPC)码、博斯-查德胡里-霍昆格母(BCH)码、涡轮(turbo)码、里德-索罗门(RS)码、卷积码、递归系统码(RSC)的码调制、网格码调制(TCM)、分组码调制(BCM)等执行错误修正操作。ECC单元138可以包括所有用于错误修正操作的电路、系统或器件。
协议单元136存储并且管理协议用于控制器130响应于来自主机102的请求控制存储器件150。PMU140提供并且管理用于控制器130的电源,即,用于包括在控制器130中的组成元件的电源。
NFC142用作控制器130和存储器件150之间的存储器接口从而允许控制器130响应于来自主机102的请求控制存储器件150。当存储器件150是闪存存储器并且特别地当存储器件150是NAND闪存存储器时,NFC142在处理器134的控制之下生成用于存储器件150的控制信号并且处理数据。
存储器144用作存储系统110和控制器130的工作存储器,并且存储用于驱动存储系统110和控制器130的数据。具体而言,当控制器130响应于来自主机102的请求控制存储器件150时,例如,当控制器130将读取自存储器件150的数据提供到主机102、以及将提供自主机102的数据存储在存储器件150中时,并且为此,当控制器130控制存储器件150的诸如读取、写入、编程和擦除操作的操作时,存储器144存储允许存储系统110执行这种操作(即,在控制器130与存储器件150之间)所需要的数据。
存储器144可以利用易失性存储器来实施。例如,存储器144可以利用静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)来实施。如上所述,存储器144存储执行主机102与存储器件150之间的读取和写入操作所需要的数据。为了存储数据,存储器144包括编程存储器、数据存储器、写入缓冲器、读取缓冲器、映射缓冲器等。
处理器134控制存储系统110的一般操作,并且响应于来自主机102的写入请求或读取请求而控制针对存储器件150的写入操作或读取操作。处理器134驱动被称为闪存转换层(FTL)的固件从而控制存储系统110的一般操作。处理器134可以利用微处理器或中央处理单元(CPU)来实施。
用于执行存储器150的“毁坏管理”(例如坏块管理)的管理单元(未示出)包括在处理器134中。所述管理单元检查包括在存储器件150中的多个存储块,找出这些毁坏的块(对于未来的使用而言处于不理想状态)并且执行坏块管理。当存储器件150为闪存存储器,例如NAND闪存存储器时,由于NAND逻辑功能的特性,在写入操作(例如编程操作)期间,可能发生编程失败。“毁坏管理”也就是坏块管理意味着将其中发生了编程失败的存储块处理作为毁坏的,并且将编程失败的数据编程到新的存储块中。接下来,将参照图2到图11对根据实施例的存储系统中的存储器件进行详细描述。
图2是图示了图1所示的存储系统110中的存储器件150的图示。
参照图2,存储器件150包括多个块,例如第零块(BLOCK0)210、第一块(BLOCK1)220、第二块(BLOCK2)230和第N-1块(BLOCKN-1)240。块210、220、230和240中的每一个包括多个页,例如2M个页(2MPAGES)。虽然为了便于解释而描述为多个存储块中的每一个包括2M个页,应当注意的是多个存储块中的每一个可以包括M个页。页中的每一个包括电耦接到多个字线的多个存储单元。
同样,存储器件150可以包括多个根据被存储在每个存储单元或在其中进行表达的位数目而作为单电平单元(SLC)存储块和多电平单元(MLC)存储块的存储块。SLC存储块包括多个由存储单元实施的页,所述存储单元中的每一个都能够存储1位数据,并且可以具有高速数据计算性能和优良的耐久性。MLC存储块包括多个由存储单元实施的页,所述存储单元中的每一个都能够存储多位数据,例如,两位或更多位数据,并且可以具有大于SLC存储块的数据储存虚设间,也就是说,可以被高度集成。包括多个由存储单元实施的页且所述存储单元中的每一个都能够存储3位数据的MLC存储块可以被定义为三电平单元(TLC)存储块。
存储块210、220、230和240中的每一个在写入操作期间存储提供自图1的主机器件102的数据,并且在读取操作期间将存储的数据提供到主机102。
图3是图示了根据本发明实施例的存储器件中的存储块的电路图。
参照图3,存储器件300的存储块330可以包括多个单元串340,所述多个单元串分别电耦接到位线BL0到BLm-1。每一列的单元串340可以包括至少一个漏极选择晶体管DST以及至少一个源极选择晶体管SST。在选择晶体管DST和SST之间可以串行电耦接多个存储单元或多个存储单元晶体管MC0到MCn-1。相应的存储单元MC0到MCn-1可以由多电平单元(MLC)进行配置,其中每一个多电平单元存储多个位的数据信息。所述串340可以分别电耦接到对应的位线BL0到BLm-1。用于参考,在图3中,“DSL”指代漏极选择线,“SSL”指代源极选择线并且“CSL”指代公共源极线。
虽然图3中作为示例示出了由NAND闪存存储单元配置的存储块330,应当注意的是根据实施例的存储器件300的存储块330不限于NAND闪存存储器并且可以由NOR闪存存储器、其中合并有至少两种存储单元的混合闪存存储器、或单-NAND闪存存储器,其中在存储器芯片中内置控制器。半导体器件的操作性能不仅适用于其中电荷储存层由传导浮栅配置的闪存存储器件而且适用于其中电荷储存层由介电层配置的电荷捕获闪存(CTF)。
存储器件300的电压供给块310可以提供根据操作模式而被供应给各自的字线的字线电压,例如编程电压、读取电压和通过电压,以及将被供应给体块(例如存储单元所形成在阱区)的的电压。电压供给块310可以在控制电路(未示出)的控制之下执行电压生成操作。所述电压供给块310可以生成多个可变的读取电压从而生成多个读取数据、在控制电路的控制之下选择存储单元阵列的存储块或扇区中的一个、选择所选择的存储块的字线中的一个、并且将字线电压提供给所选择的字线和未选择的字线。
存储器件300的读取/写入电路320由控制电路控制,并且可以根据操作模式而用作感测放大器或写入驱动器。例如,在验证/正常读取操作期间,读取/写入电路320可以用作感测放大器用于从存储单元阵列读取数据。同样,在编程操作期间,读取/写入电路320可以用作写入驱动器,其根据将被存储在存储单元阵列中的数据来驱动位线。读取/写入电路320可以在编程操作期间从缓冲器(未示出)接收将被写入存储单元阵列中的数据,并且可以根据所输入的数据驱动位线。为了达到该目的,读取/写入电路320可以包括多个页缓冲器322、324和326,其分别对应于列(或位线)或成对的列(或成对的位线),并且在页缓冲器322、324和326中的每一个中可以包括多个锁存器(未示出)。
下面,将参照图4到图11针对根据实施例的存储系统中的存储器件150进行详细的描述,此时存储器件是利用三维(3D)非易失性存储器件来实施的。
图4为图示了图2所示的存储器件150的存储块的框图。
参照图4,存储器件150可以包括多个存储块BLK0到BLKN-1,并且存储块BLK0到BLKN-1中的每一个可以实现为三维(3D)结构或垂直结构。例如,相应的存储块BLK0到BLKN-1可以包括在第一方向、第二方向和第三方向上延伸的结构,例如,x轴方向、y轴方向以及z轴方向。
相应的存储块BLK0到BLKN-1可以包括多个沿第二方向延伸的NAND串NS。所述多个NAND串NS可以被提供在第一方向和第三方向上。每个NAND串NS可以电耦接到位线BL、至少一个源极选择线SSL、至少一个接地选择线GSL、多个字线WL、至少一个虚设字线DWL以及公共源极线CSL。即相应的存储块BLK0到BLKN-1可以电耦接到多个位线BL、多个源极选择线SSL、多个接地选择线GSL、多个字线WL、多个虚设字线DWL以及多个公共源极线CSL。
图5是图4所示的多个存储块BLK0到BLKN-1中的特定存储块的透视图。图6是沿着图5所示的存储块BLKi的线I-I’的横截面图。
参照图5和图6,在存储器件150的多个存储块中的特定的存储块BLKi可以包括在第一到第三方向上延伸的结构。
可以提供衬底5111。所述衬底5111包括掺杂有第一类型杂质的硅材料。例如,衬底5111可以包括掺杂有p型杂质的硅材料或为p型阱,例如口袋状p型阱,并且包括围绕着p型阱的n型阱。虽然出于便于解释的原因在实施例中假设衬底5111为p型硅,应当注意的是衬底5111并不限于为p型硅。
可以在衬底5111之上提供沿第一方向延伸的多个掺杂区域5311到5314。例如,多个掺杂区域5311到5314可以包括与衬底5111不同的第二类型杂质。例如,多个掺杂区域5311到5314可以掺杂有n型杂质。虽然出于便于解释的原因在实施例中假设第一到第四掺杂区域5311到5314为n型,应当注意的是第一到第四掺杂区域5311到5314并不限于为n型。
在衬底5111之上的位于第一掺杂区域5311和第二掺杂区域5312之间的区域中,可以在第二方向上顺续地提供沿第一方向延伸的多个介电材料5112。例如,多个介电材料5112和衬底5111可以在第二方向上彼此间隔开预定的距离。例如,多个介电材料5112可以在第二方向上彼此间隔开预定的距离。例如,介电材料5112可以包括例如二氧化硅的介电材料。
在衬底5111之上的位于第一掺杂区域5311和第二掺杂区域5312之间的区域中,可以提供顺序设置在第一方向上并且在第二方向上穿过介电材料5112的多个柱体5113。例如,所述多个柱体5113可以分别穿过介电材料5112并且可以与衬底5111电耦接。例如,每个柱体5113可以由多种材料来配置。例如每个柱体5113的表面层5114可以包括掺杂有第一类型杂质的硅材料。例如每个柱体5113的表面层5114可以包括掺杂有与衬底5111相同类型的杂质的硅材料。虽然出于便于解释的原因在实施例中假设每个柱体5113的表面层5114包括p型硅,应当注意的是每个柱体5113的表面层5114不限于p型硅。
每个柱体5113的内层5115可以由介电材料形成。例如,每个柱体5113的内层5115可以由例如二氧化硅的介电材料填充。
在第一掺杂区域5311和第二掺杂区域5312之间的区域,可以沿着介电材料5112、柱体5113和衬底5111的暴露表面提供介电层5116。例如,介电层5116的厚度可以小于介电材料5112之间距离的一半。换句话说,其中可以设置除了介电材料5112和介电层5116之外的材料的区域可以被提供在(i)设置在第一介电材料的介电材料5112的底表面之上的介电层5116与(ii)设置在第二介电材料的介电材料5112的顶表面之上的介电层5116之间。所述介电材料5112位于第一介电材料下方。
在第一掺杂区域5311和第二掺杂区域5312之间的区域,在介电层5116的暴露表面之上提供传导材料5211到5291。例如,沿第一方向延伸的传导材料5211可以被提供在与衬底5111相邻的介电材料5112和衬底5111之间。特别地,沿第一方向延伸的传导材料5211可以被提供在(i)设置在衬底5111之上的介电层5116和(ii)设置在与衬底5111相邻的介电材料5112的底表面之上的介电层5116之间。
沿第一方向延伸的传导材料可以被提供在(i)设置在特定介电材料的介电材料5112的顶表面之上的介电层5116和(ii)设置在另一介电材料的介电材料5112(其设置在特定介电材料5112之上)的底表面之上的介电层5116之间。例如,沿第一方向延伸的多个传导材料5221到5281可以被提供在介电材料5112之间。沿第一方向延伸的传导材料5291可以被提供在最顶层的介电材料5112之上。例如,所述沿第一方向延伸的传导材料5211到5291可以是金属材料。例如,所述沿第一方向延伸的传导材料5211到5291可以是例如多晶硅的传导材料。
在第二掺杂区域5312和第三掺杂区域5313之间的区域中,可以提供与在第一掺杂区域5311和第二掺杂区域5312之间的结构相同的结构。例如,在第二掺杂区域5312和第三掺杂区域5313之间的区域中,可以提供多个沿第一方向延伸的介电材料5112、顺序布置在第一方向上并且在第二方向上穿过多个介电材料5112的多个柱体5113、被提供在多个介电材料5112和多个柱体5113的暴露表面上的介电层5116以及多个沿第一方向延伸的传导材料5212到5292。
在第三掺杂区域5313和第四掺杂区域5314之间的区域中,可以提供与在第一掺杂区域5311和第二掺杂区域5312之间的结构相同的结构。例如,在第三掺杂区域5313和第四掺杂区域5314之间的区域中,可以提供多个沿第一方向延伸的介电材料5112、顺序布置在第一方向上并且在第二方向上穿过多个介电材料5112的多个柱体5113、被提供在多个介电材料5112和多个柱体5113的暴露表面上的介电层5116以及多个沿第一方向延伸的传导材料5213到5293。
可以在多个柱体5113之上分别提供漏极5320。例如,漏极5320可以是掺杂有第二类型杂质的硅材料。例如,漏极5320可以是掺杂有n型杂质的硅材料。虽然出于便于解释的原因在实施例中假设漏极5320包括n型硅,应当注意的是漏极5320并不限于为n型硅。例如,每个漏极5320的宽度可以大于每个相应的柱体5113的宽度。例如,每个漏极5320可以垫形被提供在每个对应的柱体5113的顶表面之上。
可以在漏极5320之上提供沿第三方向延伸的传导材料5331到5333。传导材料5331到5333可以在第一方向上顺序设置。相应的传导材料5331到5333可以与对应的区域的漏极5320电耦接。例如,漏极5320与沿第三方向延伸的传导材料5331到5333可以通过接触插塞彼此电耦接。例如,沿第三方向延伸的传导材料5331到5333可以是金属材料,例如,沿第三方向延伸的传导材料5331到5333可以是例如多晶硅的传导材料。
在图5和图6中,相应的柱体5113可以连同沿第一方向延伸的介电层5116和传导材料5211到5291、5212到5292以及5213到5293一起形成串。例如,相应的柱体5113可以连同沿第一方向延伸的介电层5116和传导材料5211到5291、5212到5292以及5213到5293一起形成NAND串NS。每个NAND串NS可以包括多个晶体管结构TS。
图7是图6所示晶体管结构TS的横截面图。
参照图7,在图6所示的晶体管结构TS中,介电层5116可以包括第一到第三子介电层5117、5118和5119。
每个柱体5113中的p型硅表面层5114可以用作主体。与柱体5113相邻的第一子介电层5117可以用作隧穿介电层,并且可以包括热氧化层。
第二子介电层5118可以用作电荷储存层。例如,第二子介电层5118可以用作电荷捕获层,并且可以包括氮化物层或诸如氧化铝层、或氧化铪层等的金属氧化物层。
与传导材料5233相邻的第三子介电层5119可以用作阻挡介电层。例如,与沿第一方向延伸的传导材料5233相邻的第三子介电层5119可以形成为单层或多层。所述第三子介电层5119可以是例如氧化铝层、氧化铪层或类似物的高k介电层,其具有大于第一子介电层5117和第二子介电层5118的介电常数。
传导材料5233可以用作栅极或控制栅极。也就是说,栅极或控制栅极5233、阻挡介电层5119、电荷储存层5118、隧穿介电层5117以及主体5114可以形成晶体管或存储单元晶体管结构。例如,第一子介电层5117到第三子介电层5119可以形成氧化物-氮化物-氧化物(ONO)层结构。在实施例中,为了便于解释,每个柱体5113的p型硅的表面层5114将被称为沿第二方向的主体。
存储块BLKi可以包括多个柱体5113。也就是说,存储块BLKi可以包括多个NAND串NS。详细而言,存储块BLKi可以包括多个沿第二方向延伸或沿垂直于衬底5111的方向延伸的NAND串NS。
每个NAND串NS可以包括多个设置在第二方向上的晶体管结构。每个NAND串NS的多个晶体管结构TS中的至少一个可以用作源极选择晶体管SST。每个NAND串NS的多个晶体管结构TS中的至少一个可以用作接地选择晶体管GST。
栅极或控制栅极可以对应于沿第一方向延伸的传导材料5211到5291、5212到5292以及5213到5293。换句话说,栅极或控制栅极可以沿第一方向延伸并且形成字线以及至少两种选择线,例如至少一个源极选择线SSL和至少一个接地选择线GSL。
沿第三方向延伸的传导材料5331到5333可以电耦接到NAND串NS中的一端。例如,沿第三方向延伸的传导材料5331到5333可以用作位线BL。也就是说,在一个存储块BLKi中,多个NAND串NS可以电耦接到一个位线BL。
沿第一方向延伸的第二类型掺杂区域5311到5314可以被提供到NAND串NS的另一端。沿第一方向延伸的第二类型掺杂区域5311到5314可以用作公共源极线CSL。
也即,存储块BLKi包括多个沿与衬底5111垂直的方向(例如沿第二方向)延伸的NAND串NS,并且可以用作例如电荷捕获型存储器的NAND闪存存储块,其中多个NAND串NS电耦接到一个位线BL。
虽然在图5到图7中图示的是沿第一方向延伸的传导材料5211到5291、5212到5292以及5213到5293被提供为9层,然而应当注意到第一方向上延伸的传导材料5211到5291、5212到5292以及5213到5293并不限于提供为9层。例如,沿第一方向延伸的传导材料可以提供为8层、16层或任何多层。换句话说,在一个NAND串NS中,晶体管的数目可以是8、16或更多。
虽然在图5到图7中图示的是3个NAND串NS电耦接到一个位线BL,然而应当注意到的是实施例并不限于3个NAND串NS电耦接到一个位线BL这一事实。例如,在存储块BLKi中,m个NAND串NS可以电耦接到一个位线BL,m为正整数。根据电耦接到一个位线BL的NAND串NS的数目,第一方向上延伸的传导材料5211到5291、5212到5292以及5213到5293的数目以及公共源极线5311到5314的数目也可以被控制。
此外,虽然在图5到图7中图示的是3个NAND串NS电耦接到沿第一方向延伸的一个传导材料,应当注意的是实施例并不限于3个NAND串NS电耦接到沿第一方向延伸的一个传导材料这一事实。例如,n个NAND串NS可以电耦接到沿第一方向延伸的一个传导材料,n为正整数。根据电耦接到沿第一方向延伸的一个传导材料的NAND串NS的数目,位线5331到5333的数目也可以被控制。
图8是图示了具有参照图5到图7描述的第一结构的存储块BLKi的等效电路图。
参照图8,在具有第一结构的特定块BLKi中,NAND串NS11到NS31可以被提供在第一位线BL1与公共源极线CSL之间。第一位线BL1可以对应于图5和图6的传导材料5331,其沿第三方向延伸。NAND串NS12到NS32可以被提供在第二位线BL2与公共源极线CSL之间。第二位线BL2可以对应于图5和图6的传导材料5332,其沿第三方向延伸。NAND串NS13到NS33可以被提供在第三位线BL3与公共源极线CSL之间。第三位线BL3可以对应于图5和图6的传导材料5333,其沿第三方向延伸。
每个NAND串NS的源极选择晶体管SST可以电耦接到对应的位线BL。每个NAND串NS的接地选择晶体管GST可以电耦接到公共源极线CSL。存储单元MC可以被提供在每个NAND串NS的源极选择晶体管SST与接地选择晶体管GST之间。
在该实施例中,为了便于解释,将作为示例来描述的是以行和列为单位来定义NAND串NS,并且共同电耦接到一个位线的NAND串NS可以形成一列。例如,电耦接到第一位线BL1的NAND串NS11到NS31可以对应于第一列,电耦接到第二位线BL2的NAND串N12到NS32可以对应于第二列,并且电耦接到第三位线BL3的NAND串NS13到NS33可以对应于第三列。电耦接到一个源极选择线SSL的NAND串NS可以形成一行。例如,电耦接到第一源极选择线SSL1的NAND串NS11到NS13可以形成第一行,电耦接到第二源极选择线SSL2的NAND串NS21到NS23可以形成第二行,并且电耦接到第三源极选择线SSL3的NAND串NS31到NS33可以形成第三行。
在每个NAND串NS中,可以定义高度。例如,在每个NAND串NS中,相邻于接地选择晶体管GST的存储单元MC1的高度为值“1”。在每个NAND串NS中,从衬底5111起测量的存储单元的高度随着存储单元逐渐接近源极选择晶体管SST而增加。在每个NAND串NS中,相邻于源极选择晶体管SST的存储单元MC6的高度为7。
在相同行中的NAND串NS的源极选择晶体管SST可以共享源极选择线SSL。在不同行中的NAND串NS的源极选择晶体管SST可以分别电耦接到不同的源极选择线SSL1、SSL2和SSL3。
在相同行中的NAND串NS的位于相同高度的存储单元可以共享字线WL。也就是说,在相同的高度,电耦接到不同行的NAND串NS的存储单元MC的字线WL可以彼此共同电耦接。在相同行的NAND串NS的位于相同高度的虚设存储单元DMC可以共享虚设字线DWL。也即,在相同的高度或水平,电耦接到不同行中的NAND串NS的虚设存储单元DMC的虚设字线DWL可以彼此电耦接。
例如,在提供有沿第一方向延伸的传导材料5211到5291、5212到5292以及5213到5293的层中,位于相同水平或高度或层的字线WL或虚设字线DWL可以彼此共同电耦接。例如,沿第一方向延伸的传导材料5211到5291、5212到5292以及5213到5293可以通过接触共同电耦接至上层。在上层处,沿第一方向延伸的传导材料5211到5291、5212到5292以及5213到5293可以彼此共同电耦接。换句话说,在相同行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。进一步,在不同行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。也就是说,NAND串NS11到NS13、NS21到NS23以及NS31到NS33可以共同电耦接到接地选择线GSL。
公共源极线CSL可以共同电耦接到NAND串NS。例如,在衬底5111之上的有源区域之上,第一掺杂区域5311到第四掺杂区域5314可以彼此电耦接。例如,第一掺杂区域5311到第四掺杂区域5314可以通过接触电耦接至上层,并且在上层处,第一掺杂区域5311到第四掺杂区域5314可以彼此共同电耦接。
也即,如图8所示,具有相同高度或水平的字线WL可以彼此共同电耦接。相应地,当选择了位于特定高度的特定字线WL,所有电耦接到该特定字线的NAND串NS可以被选择。在不同行中的NAND串NS可以电耦接到不同源极选择线SSL。相应地,在电耦接到相同字线WL的NAND串NS中,通过选择源极选择线SSL1到SSL3中的一个,位于未选择的行中的NAND串NS可以与位线BL1到BL3电隔离。换句话说,通过选择源极选择线SSL1到SSL3中的一个,可以选择一行NAND串NS。此外,通过选择位线BL1到BL3中的一个,位于所选择的行中的NAND串NS可以以列为单位被选择。
在每个NAND串NS中,可以提供虚设存储单元DMC。在图8中,虚设存储单元DMC被提供在每个NAND串NS中的第三存储单元MC3和第四存储单元MC4之间。也就是说,可以在虚设存储单元DMC和接地选择晶体管GST之间提供第一存储单元MC1到第三存储单元MC3。可以在虚设存储单元DMC和源极选择晶体管SST之间提供第四存储单元MC4到第六存储单元MC6。每一NAND串NS的存储单元MC可以通过虚设存储单元DMC而被划分为存储单元群组。在所划分的存储单元群组中,相邻于接地选择晶体管GST的存储单元(例如,MC1到MC3)可以被称为下存储单元群组,并且相邻于源极选择晶体管SST的存储单元(例如,MC4到MC6)可以被称为上存储单元群组。
下面,将参照图9到图11进行详细描述,此时根据实施例的存储系统中的存储器件采用具有与第一结构不同的结构的三维(3D)非易失性存储器件来实施。
图9的透视图,其示意性地图示了根据该实施例的存储器件具有第二结构的三维(3D)非易失性存储器件来实施时的结构并且示出了图4的多个存储块中具有第二结构的特定存储块BLKj,其中所述第二结构不同于上面参照图5到图8所描述的第一结构;以及图10是图示了沿着图9的线VII-VII’的特定存储块BLKj的横截面图。
参照图9和图10,在图1的存储器件150的多个存储块中的特定存储块BLKj可以包括在第一到第三方向上延伸的结构。
可以提供衬底6311。例如,所述衬底6311包括掺杂有第一类型杂质的硅材料。例如,衬底6311可以包括掺杂有p型杂质的硅材料或为p型阱,例如口袋状p阱,并且包括围绕着p型阱的n型阱。虽然出于便于解释的原因在实施例中假设衬底6311为p型硅,应当注意的是衬底6311并不限于为p型硅。
在衬底6311之上提供沿x轴方向和y轴方向延伸的第一传导材料6321到第四传导材料6324。所述第一传导材料6321到第四传导材料6324在z轴方向上被预定距离分隔开。
在衬底6311之上提供沿x轴方向和y轴方向延伸的第五传导材料6325到第八传导材料6328。所述第五传导材料6325到第八传导材料6328提供为在z轴方向上被预定距离分隔开。所述第五传导材料6325到第八传导材料6328提供为在y轴方向上与第一传导材料6321到第四传导材料6324分隔开。
提供多个穿过第一传导材料6321到第四传导材料6324的下柱体DP。每一个下柱体DP沿z轴方向延伸。同样,提供多个穿过第五传导材料6325到第八传导材料6328的上柱体UP。每一个上柱体UP沿z轴方向延伸。
下柱体DP和上柱体UP中的每一个包括内部材料6361、中间层6362以及表面层6363。中间层6362用作单元晶体管的沟道。表面层6363包括包括阻挡介电层、电荷储存层和隧穿介电层。
下柱体DP和上柱体UP通过管型栅极PG电耦接。所述管型栅极PG可以设置在衬底6311中。例如,管型栅极PG可以包括与下柱体DP和上柱体UP相同的材料。
在下柱体DP之上提供沿x轴方向和y轴方向延伸的第二类型掺杂材料6312。例如,第二类型的掺杂材料6312可以包括n型硅材料。第二类型的掺杂材料6312用作公共源极线CSL。
在上柱体UP之上提供漏极6340。例如,漏极6340可以包括n型硅材料。在漏极6340之上提供沿y轴方向延伸的第一上传导材料6351和第二上传导材料6352。
所述第一上传导材料6351和第二上传导材料6352在x轴方向上间隔开。例如第一上传导材料6351和第二上传导材料6352可以用金属形成。举例来说,第一上传导材料6351和第二上传导材料6352和漏极6340可以通过接触插塞彼此电耦接。第一上传导材料6351和第二上传导材料6352分别用作第一位线BL1和第二位线BL2。
第一传导材料6321用作源极选择线SSL,第二传导材料6322用作第一虚设字线DWL1,并且第三传导材料6323和第四传导材料6324分别用作第一主字线MWL1和第二主字线MWL2。第五传导材料6325和第六传导材料6326分别用作第三主字线MWL3和第四主字线MWL,第七传导材料6327用作第二虚设字线DWL2,并且第八传导材料6328用作漏极选择线DSL。
下柱体DP和相邻于下柱体DP的第一传导材料6321到第四传导材料6324形成下串。上柱体UP和相邻于上柱体UP的第五传导材料6325到第八传导材料6328形成上串。下串和上串通过管型栅极PG电耦接。下串的一端电耦接到具有第二类型的用作公共源极线CSL的掺杂材料6312。上串的一端通过漏极6340电耦接到对应的位线。一个下串和一个上串形成一个单元串,其电耦接在具有第二类型的用作公共源极线CSL的掺杂材料6312与用作位线BL的上传导材料层6351和6352中的对应的一个之间。
也就是说,下串包括源极选择晶体管SST、第一虚设存储单元DMC1、以及第一主存储单元MMC1和第二主存储单元MMC2。上串包括第三主存储单元MMC3、第四主存储单元MMC4、第二虚设存储单元DMC2以及漏极选择晶体管DST。
在图9和图10中,上串和下串可以形成NAND串NS,并且所述NAND串NS可以包括多个晶体管结构TS。由于对包括在图9和图10中的NAND串NS中的晶体管结构已经在上面参照图7进行了详细描述,因此在此省略对其详细的描述。
图11是图示了具有如上面参照图9和图10所描述的第二结构的存储块BLKj的等效电路的电路图。出于便于解释的目的,仅示出了在第二结构中所实现的特定存储块BLKj中形成了对的第一串和第二串。
参照图11,在如同上面参照图9和图10所描述的存储器件150的多个块之中的具有第二结构的特定存储块BLKj中,单元串将以定义多个对的方式来提供,其中所述单元串的每一个采用通过管型栅极PG电耦接的上串和下串来实施。
也即,在具有第二结构的特定存储块BLKj中,沿着第一通道CH1(未示出)堆叠的存储单元CG0到CG31,例如,至少一个源极选择栅极SSG1和至少一个漏极选择栅极DSG1可以形成第一串ST1,并且沿着第二通道CH2(未示出)堆叠的存储单元CG0到CG31,例如,至少一个源极选择栅极SSG2和至少一个漏极选择栅极DSG2可以形成第二串St2。
第一串ST1和第二串ST2电耦接到相同的漏极选择线DSL和相同的源极选择线SSL。第一串ST1电耦接到第一位线BL1,并且第二串ST2电耦接到第二位线BL2。
虽然出于便于解释的目的,在图11中描述为第一串ST1和第二串ST2电耦接到相同的漏极选择线DSL和相同的源极选择线SSL,然而可以构思为第一串ST1和第二串ST2电耦接到相同的源极选择线SSL和相同的位线BL,第一串ST1电耦接到第一漏极选择线DSL1并且第二串ST2电耦接到第二漏极选择线DSL2,或可以构思为第一串ST1和第二串ST2电耦接到相同的漏极选择线DSL和相同的位线BL,第一串ST1电耦接到第一源极选择线SSL1并且第二串ST2电耦接到第二源极选择线SSL2。以下将参照图12和图13进行详细描述,其描述根据实施例的存储系统中的存储器件的数据处理(即数据读取和写入操作)。
图12是图示了关于根据实施例的存储系统中的存储器件的数据处理操作的示意性图示。在实施例中,在图1所示的存储系统110中,在将对应于接收自主机102的写入命令/读取命令的写入数据/读取数据存储在包括在控制器130的存储器144中的缓冲器/高速缓冲器(buffer/cache)(例如,写入缓冲器/高速缓冲器或读取缓冲器/高速缓冲器,特别是写入缓冲器/高速缓冲器)中之后,存储在缓冲器/高速缓冲器中的数据被编程在从存储器件150所包括的多个存储块中选择出的特定存储块中,并且被编程在所述特定的存储块中的数据被复制/备份在在另一个存储块中。
在一个实施例中,控制器执行存储系统中的数据处理操作。然而,在另一个实施例中,包括在控制器130中的处理器134可以执行数据处理。在一个实施例中,对应于接收自主机102的写入命令/读取命令的写入数据/读取数据存储在被包括在控制器130的存储器144中的缓冲器/高速缓冲器中,特别地,写入缓冲器/高速缓冲器中。然而,在另一个实施例中,数据可以存储在包括在上面参照图3所描述的存储器件300的多个页缓冲器322、324和326、多个锁存器或外部存储器件中。
在一个实施例中,为了执行关于作为牺牲块的编程有来自缓冲器/高速缓冲器的数据的特定存储块的垃圾回收(GC),被编程在被称为牺牲块的特定存储块的有效页中的数据被复制/备份在另一个被称为GC块的存储块中。在另一个实施例中,可以通过在存储器件150所包含的多个存储块中进行数据复制/备份来对数据进行编程。
参照图1和图12,在将对应于接收自主机102的写入命令/读取命令的写入数据/读取数据(例如,写入数据)存储在包括在控制器130的存储器144的缓冲器(Buffer)1200中之后,控制器130将存储在缓冲器1200中的数据编程在存储器件150的特定存储块中。例如,控制器130将存储在缓冲器1200中的数据编程在第零块(Block0)1210中并且将编程在第零块1210(牺牲块)中的数据复制/备份(即,编程)到另一个特定块(GC块)中,例如,第四块(Block4)1255。
控制器130将对应于来自主机102的写入命令的写入数据存储在缓冲器1200中,例如,逻辑页号2的数据(之后,称为“数据2”)1202、逻辑页号3的数据(之后,称为“数据3”)1204、逻辑页号1的数据(之后,称为“数据1”)1206以及逻辑页号4的数据(之后,称为“数据4”)1208。
控制器130将存储在缓冲器1200中的数据1201、1204、1206以及1208编程在多个存储块中对应于MAP信息的特定的存储块中,例如第零块1210。也就是说,控制器130将存储在缓冲器1200中的数据21202、数据31204、数据11204以及数据41208编程在包括在第零块1210中的页中。特别地,控制器130将数据21202编程在第零块1210的第零页(Page0)1220中,将数据31204编程在第零块1210的第一页(Page1)1230中,将数据11206编程在第零块1210的第二页(Page2)1240中,并且将数据41208编程在第零块1210的第三页(Page3)1250中。
在将存储在缓冲器1200中的数据21202编程在第零页1220的数据区域1222中之后,控制器130记录将被编程在第一页1230中的数据(即数据31204)的位置信息。也就是说,数据31204的位置信息被存储在第零页1220的空闲区域1224中。数据31204的位置信息可以存储为逻辑块地址(LBA)。因此,控制器130将存储在缓冲器1200中的数据21202编程在第零页1220的数据区域1222中并且将存储在缓冲器1200中的数据31204的位置信息记录在第零页1220的空闲区域1224中。相应地,针对第零块1210的第零页1220的编程完成。也即,第零块1210的第零页1220的编程成功。
在将存储在缓冲器1200中的数据31204编程在第一页1230的数据区域1232中之后,控制器130将即将被编程在第一页1230之后的第二页1240中的数据(即数据11206)的位置信息记录在第一页1230的空闲区域1234中。换句话说,数据11206的位置信息被存储在第一页1230的空闲区域1234中。数据11206的位置信息可以存储为LBA。也即,控制器130将存储在缓冲器1200中的数据31204编程在第一页1230的数据区域1232中并且将存储在缓冲器1200中的数据11206的位置信息记录在第一页1230的空闲区域1234中。相应地,针对第零块1210的第一页1230的编程完成。也就是说,第零块1210的第一页1230的编程成功。
当由于在执行第零块1210的第一页1230的编程时发生了突然断电(SPO)或类似情况而使得第零块1210的第一页1230没有正常地完全编程,控制器130检查记录在第零块1210的第零页1220中的数据31204的位置信息,所述第零页1220为编程失败的第一页1230的之前页,并且在第一页1230的数据区域1232中再次执行数据31204的编程。也就是说,当将数据31204编程在第一页1230的数据区域1232中的操作未成功或失败时,控制器130利用记录在第零块1210的第零页1220中的数据31204的位置信息再次尝试将数据31204编程在第零块1210的第一页1230中。
因此,对于编程失败的第一页1230,在精确检查了存储在缓冲器1200中的数据31204的位置之后并且通过利用记录在之前的第零页1220中的数据31204的位置信息,控制器130再次尝试将数据31204编程在第零块1210的第一页1230中。也就是说,控制器130再次尝试将数据31204编程在第一页1230的数据区域1232中并且将存储在缓冲器1200中的数据11206的位置信息记录在第一页1230的空闲区域1234中,从而正常地完成针对第零块1210的第一页1230的编程。
在将存储在缓冲器1200中的数据11206编程在第二页1240的数据区域1242中之后,控制器130记录即将被编程在第二页1240之后的第三页1250中的数据,即数据41208的位置信息。关于数据41208被存储在缓冲器1200中的位置的信息,例如,作为地址的LBA,被记录在第二页1240的空闲区域1244中。也即,控制器130将存储在缓冲器1200中的数据11206编程在第二页1240的数据区域1242中并且将存储在缓冲器1200中的数据41208的位置信息记录在第二页1240的空闲区域1244中。相应地,针对第零块1210的第二页1240的编程完成。也就是说,第零块1210的第二页1240的编程成功。
当第零块1210的第二页1240没有正常地完全编程,也就是说,当编程操作失败,即如同上面所描述的针对之前第一页1230的编程失败的情况,控制器130检查记录在第零块1210的第一页1230(为编程失败的第二页1240的之前页)中的数据11206的位置信息,并且在第二页1240的数据区域1242中再次执行数据11206的编程,也就是说,执行针对第零块1210的第二页1240的编程。此外,控制器130将存储在缓冲器1200中的数据41208的位置信息记录在第二页1240的空闲区域1244中,从而正常地完成针对第零块1210的第二页1240的编程。
在将存储在缓冲器1200中的数据41208编程在第三页1250的数据区域1252中之后,控制器130将即将被编程在第三页1250之后的第四页中的接下来的数据的位置信息记录在第三页1250的空闲区域1254中。当缓冲器1200中不存在即将被编程在作为第三页1250的之后页的第四页中的数据时,控制器在第三页1250的空闲区域1254中记录空数据或虚设数据,从而完成针对第零块1210的第三页1250的编程。也即,控制器将存储在缓冲器1200中的数据41208编程在第三页1250的数据区域1252中。由于数据41208是存储在缓冲器1200中的最后的数据,在缓冲器1200中不存在有待编程在第四页中的数据。控制器130在第三页1250的空闲区域1254中记录空数据或虚设数据。相应地,针对第零块1210的第三页1250的编程完成,也就是说,第零块1210的第三页1250的编程成功。
当第零块1210的第三页1250没有正常地完全编程,也就是说,当编程操作未成功或失败,即如同上面所描述的针对之前第一页1230的编程失败的情况,控制器130检查记录在第零块1210的第二页1240中的数据41208的位置信息,所述第二页1240为编程失败的第三页1250的之前页,并且在第三页1250的数据区域1252中再次执行数据41208的编程,也就是说,执行针对第零块1210的第三页1250的编程。此外,控制器130将空数据或虚设数据记录在第三页1250的空闲区域1254中,从而正常地完成针对第零块1210的第三页1250的编程。
下面,将针对通过在存储器件150所包含的多个存储块中进行数据复制/备份来对数据进行编程的情况进行详细描述,也就是说,针对将编程在特定存储块(牺牲块)的有效页中的数据复制/备份在另一个存储块(GC)的数据编程操作。
如上所述,在将数据21202、数据31204、数据11204以及数据41208分别编程在包括在第零块1210中的页1220、1230、1240以及1250中之后,控制器130对编程在第零块1210中的页1220、1230、1240以及1250中的数据进行复制/备份,也即编程。编程在第零块1210的页1220中的数据2、编程在第零块1210的页1230中的数据3、编程在第零块1210的页1240中的数据1以及编程在第零块1210的页1250中的数据4被分别复制在包括在第四块1255的页1260、1270、1280以及1290中。
编程在第零块1210的第零页1220中的数据2被编程在第四块1255的第零页(Page0)1260中。编程在第零块1210的第一页1230中的数据3被编程在第四块1255的第一页(Page1)1270中。编程在第零块1210的第二页1240中的数据1被编程在第四块1255的第二页(Page2)1280中。编程在第零块1210的第三页1250中的数据4被编程在第四块1255的第三页(Page3)1290中。
进一步,在将编程在第零块1210的第零页1220中的数据2编程,也即复制在第四块1255的第零页1260的数据区域1262中之后,控制器130记录将被编程在第零页1260之后的第一页1270中的数据,也即,即将被编程(复制)在第四块1255的第一页1270中的数据3的位置信息。换句话说,关于数据3被存储在第零块1210的第一页1230中的位置的信息,例如作为地址的逻辑块地址(LBA),或指示着第零块1210的第一页1230的数据区域1232的信息,被记录在第零页1260的空闲区域1264。也即,控制器130将编程在第零块1210的第零页1220中的数据2编程在第四块1255的第零页1260的数据区域1262中,并且将编程在第零块1210的第一页1230中的数据3的位置信息记录在第四块1255的第零页1260的空闲区域1264中。相应地,针对第四块1255的第零页1260的编程完成。也就是说,第四块1255的第零页1260的编程成功。
在将编程在第零块1210的第一页1230中的数据3编程在第四块1255的第一页1270的数据区域1272中之后,控制器130记录将被编程在作为第一页1270的之后页的第二页1280中的数据,也即,即将被编程在第四块1255的第二页1280中的数据1的位置信息。换句话说,关于数据1被存储在第零块1210的第二页1240中的位置的信息,例如作为地的LBA,或指示着第零块1210的第二页1240的数据区域1242的信息,被记录在第一页1270的空闲区域1274。也即,控制器130将编程在第零块1210的第一页1230中的数据3编程,也即复制在第四块1255的第一页1270的数据区域1272中,并且将编程在第零块1210的第二页1240中的数据1的位置信息记录在第四块1255的第一页1270的空闲区域1274中。相应地,针对第四块1255的第一页1270的编程完成。也就是说,第四块1255的第一页1270的编程成功。
当由于在执行第四块1255的第一页1270的编程时发生了突然断电(SPO)或类似情况而使得第四块1255的第一页1270没有正常地完全编程,也即,当编程未成功而是失败了时,控制器130检查记录在第四块1255的第零页1260中的数据3的位置信息,所述第零页1260为编程失败的第一页1270的之前页,并且在第一页1270的数据区域1272中再次执行数据3的编程,也即,执行针对第四块1255的第一页1270的编程。
按照这种方式,编程失败的第一页1270得到修复或修正。在精确检查了编程在第零块1210的第一页1230中的数据3的位置之后,通过利用记录在之前页的第零页1260中的数据3的位置信息,控制器130将编程在第零块1210的第一页1230中的数据3编程在第四块1255的第一页1270中。更具体地,数据被变成,也即复制在第四块1255的第一页1270的数据区域1272中。控制器130将编程在第零块1210的第二页1240中的数据1的位置信息记录在第四块1255的第一页1270的空闲区域1274中,从而正常地完成了针对第四块1255的第一页1270的编程。
在将编程在第零块1210的第二页1240中的数据1编程在第四块1255的第二页1280的数据区域1282中之后,控制器130记录将被编程在作为第二页1280的之后页的第三页1290中的数据,也即,即将被编程在第四块1255的第三页1290中的数据4的位置信息。换句话说,关于数据4被存储在第零块1210的第三页1250中的位置的信息,例如作为地的LBA,或指示着第零块1210的第三页1250的数据区域1252的信息,被记录在第二页1280的空闲区域1284。也即,控制器130将编程在第零块1210的第二页1240中的数据1编程在第二页1280的数据区域1282中,并且将编程在第零块1210的第三页1250中的数据4的位置信息记录在第二页1280的空闲区域1284中。相应地,针对第四块1255的第二页1280的编程完成。也就是说,第四块1255的第二页1280的编程成功。
当第四块1255的第二页1280没有正常地完全编程,也就是说,当编程未成功而是失败时,即如同上面所描述的针对之前第一页1270的编程失败的情况,控制器130检查记录在第四块1255的第一页1270中的数据1的位置信息,所述第一页1270为编程失败的第二页1280的之前页,并且在第二页1280的数据区域1282中再次执行数据1的编程,也就是说,执行针对第四块1255的第二页1280的编程。此外,控制器130将编程在第零块1210的第三页1250中的数据4的位置信息记录在第二页1280的空闲区域1284中,从而正常完成针对第四块1255的第二页1280的编程。
当在将编程在第零块1210的第三页1250中的数据4编程在第四块1255的第三页1290的数据区域1292中之后,控制器130将即将被编程在作为第三页1290的之后页的第四页中的数据的位置信息记录在第三页1290的空闲区域1294中。当编程在第零块1210的作为第三页1250的之后页的第四页中的数据不存在时,也即,当即将被编程在第四块1255的作为第三页1290的之后页的第四页中的数据不存在时,控制器在第三页1290的空闲区域1294中记录空数据或虚设数据,从而完成针对第四块1255的第三页1290的编程。也即,控制器130将编程在第零块1210的第三页1250中的数据4编程在第三页1290的数据区域1292中。于是,由于不存在编程在第零块1210的第四页中的数据,控制器130在第三页1290的空闲区域1294中记录空数据或虚设数据。相应地,针对第四块1255的第三页1290的编程完成,也就是说,第四块1255的第三页1290的编程成功。
当第四块1255的第三页1290没有正常地完全编程,也就是说,当编程操作未成功而是失败时,即如同上面所描述的针对之前第一页1270的编程失败的情况,控制器130检查记录在第四块1255的第二页1280中的数据4的位置信息,所述第二页1280为编程失败的第三页1290的之前页,并且在第三页1290的数据区域1292中再次执行数据4的编程,也就是说,执行针对第四块1255的第三页1290的编程。此外,控制器130将空数据或虚设数据记录在第三页1290的空闲区域1294中,从而正常地完成针对第四块1255的第三页1290的编程。以下,将参照图13详细描述根据一个实施例的用于在存储系统中处理数据的操作。
图13是用以辅助描述根据一个实施例的用于在存储系统中处理数据的操作过程的示意性流程图的例子的表示。
参照图13,在步骤1310,存储系统将请求自主机的读取数据/写入数据编程在从多个存储块中选择出的特定存储块中。例如,存储系统将数据i编程在从多个存储块中选择出的第一存储块的页n中。数据i被编程在第一存储块的页n的数据区域中。
在步骤1320,将被编程在第一存储块的页n之后的页n+1中的接下来的数据h的位置信息被记录在第一存储块的页n中。例如,数据h的位置信息可以是数据h所被存储在的缓冲器的位置信息,或者是数据h所被编程在的另一个存储块(例如第二存储块)的位置信息。数据h的位置信息被记录在第一存储块的页n的空闲区域。
接着,在步骤1330,数据h被编程在第一存储块中页n之后的页n+1中。数据h被编程在第一存储块的页n+1中的数据区域中。
在步骤1340,将被编程在第一存储块的页n+1之后的页n+2中的数据j的位置信息被记录在第一存储块的页n+1中。例如,数据j的位置信息可以是数据j所被存储在的缓冲器的位置信息,或者是数据j所被编程在的另一个存储块(例如第二存储块)的位置信息。数据j的位置信息被记录在第一存储块的页n+1的空闲区域。
在步骤1350,确定针对第一存储块的页n+1的编程是否正常完成。也即,确定针对第一存储块的页n+1的编程操作是否成功。当在步骤1350确定针对第一存储块的页n+1的编程失败,在步骤1370,检查记录在作为第一存储块的页n+1的之前页的页n的空闲区域中的数据h的位置信息。
接着,在步骤1330,通过利用记录在页n的空闲区域中的数据h的位置信息在页n+1中对数据h进行再次编程。
当在步骤1350中确定针对第一存储块的页n+1的编程正常完成,也即第一存储块的页n+1被成功地编程,在步骤1360,将数据j编程在第一存储块的页n+1之后的页n+2中。数据j被编程在第一存储块的页n+2的数据区域中。如果没有数据将被编程在第一存储块的页n+2之后的页n+3中,在第一存储块的页n+2的空闲区域记录虚设数据或空数据。
由于上面参照图12详细描述了在存储器件中的数据处理,例如,将存储在缓冲器/高速缓冲器中的数据编程在存储块的页中的操作以及将编程在特定存储块中的数据编程或复制在另一特定存储块中的操作,因此在此略去对其的详细描述。
从上面的描述明显可见,根据实施例的存储系统及其操作方法可以快速并且稳定地处理来自存储器件的数据。
通过以上实施例可以看出,本申请提供了以下的技术方案。
技术方案1.一种存储系统,包括:
存储器件,其包括多个存储块,其中所述多个存储块中的每一个包括多个页,其中所述多个页中的每一个包括电耦接到多个字线的多个存储单元,其中由主机所请求的读取数据和写入数据存储在所述多个存储单元中;以及
控制器,配置为(i)将与接收自主机的写入命令/读取命令相对应的第一数据编程在从所述多个存储块中选择的第一存储块的第一页中,(ii)将第二数据的位置信息记录在所述第一页中,以及(iii)将第二数据编程在所述第一存储块中的第一页面之后的第二页中。
技术方案2.根据技术方案1所述的存储系统,其中所述控制器将第一数据编程在第一页的数据区域中并且将第二数据的位置信息记录在第一页的空闲区域。
技术方案3.根据技术方案2所述的存储系统,其中所述控制器将第三数据的位置信息记录在第二页中并且将第三数据编程在第二页面之后的第三页中。
技术方案4.根据技术方案3所述的存储系统,其中,当所述第二数据没有成功地被编程在第二页中时,所述控制器利用记录在第一页的空闲区域中的第二数据的位置信息将第二数据编程在第二页中。
技术方案5.根据技术方案3所述的存储系统,其中,当不存在第三数据时,控制器将虚设数据或空数据记录在第二页的空闲区域。
技术方案6.根据技术方案1所述的存储系统,其中,当第一数据和第二数据是存储在包括在控制器中的缓冲器中的数据时,第二数据的位置信息是存储在缓冲器中的第二数据的地址。
技术方案7.根据技术方案1所述的存储系统,其中,当第一数据和第二数据是被编程在第一存储块中的数据时,第二数据的位置信息是被编程在第一存储块中的第二数据的地址。
技术方案8.根据技术方案7所述的存储系统,其中第二数据的位置信息包括关于第二数据存储在第一存储块中的位置的信息。
技术方案9.根据技术方案1所述的存储系统,其中所述第二数据的位置信息是第二数据的逻辑块地址LBA。
技术方案10.一种用于操作包括存储装置的存储系统的方法,包括:
从存储装置的多个存储块中选择第一存储块;
从包括在第一存储块中的多个页中选择第一页,其中所述第一页包括电耦接到多个字线的多个存储单元;
将与接收自主机的写入命令/读取命令相对应的第一数据编程在第一存储块的第一页中;
将第二数据的位置信息记录在第一存储块的第一页中;以及
将第二数据编程在第一存储块中的第一页之后的第二页中。
技术方案11.根据技术方案10所述的方法,
其中将与接收自主机的写入命令/读取命令相对应的第一数据编程在第一页中包括将第一数据编程在第一页的数据区域中,以及
其中记录第二数据的位置信息包括将第二数据的位置信息记录在第一页的空闲区域中。
技术方案12.根据技术方案11所述的方法,其中在第二页中的编程进一步包括:
将第三数据的位置信息记录在第二页中,其中所述第三数据被编程在第二页之后的第三页中。
技术方案13.根据技术方案12所述的方法,其中将第二数据编程在第二页中进一步包括:
当将第二数据编程在第二页中失败时检查记录在第一页的空闲区域中的第二数据的位置信息;以及
利用第二数据的位置信息将第二数据编程在第二页中。
技术方案14.根据技术方案12所述的方法,其中将第三数据的位置信息记录在第二页中进一步包括:
当被编程在第三页中的第三数据不存在时,将虚设数据或空数据记录在第二页的空闲区域中。
技术方案15.根据技术方案10所述的方法,其中,当第一数据和第二数据是存储在包括在控制器中的缓冲器中的数据时,第二数据的位置信息是存储在缓冲器中的第二数据的地址。
16.根据技术方案10所述的方法,其中,当第一数据和第二数据是被编程在第一存储块中的数据时,第二数据的位置信息是被编程在第一存储块中的第二数据的地址。
技术方案17.根据技术方案16所述的方法,其中所述第二数据的位置信息包括关于第二数据存储在第一存储块中的位置的信息。
技术方案18.根据技术方案10所述的方法,其中所述第二数据的位置信息是第二数据的逻辑块地址LBA。
技术方案19.一种存储系统,包括:
存储块,所述存储块包括N个数目的页;
其中第M-1个页包括第M-1个数据的非位置信息,
其中第M个页包括第M个数据的非位置信息,
其中第M-1个页进一步包括第M个数据的位置信息,以及
其中N为整数,M为整数,并且M≤N。
技术方案20.根据技术方案19所述的存储系统,
其中N个数目的页中的每一个包括数据区域和空闲区域,
其中第M-1个页的数据区域存储第M-1个数据的非位置信息,
其中第M-1个页的空闲区域存储第M个数据的位置信息,以及
其中第N个页的空闲区域存储空数据。
Claims (10)
1.一种存储系统,包括:
存储器件,其包括多个存储块,其中所述多个存储块中的每一个包括多个页,其中所述多个页中的每一个包括电耦接到多个字线的多个存储单元,其中由主机所请求的读取数据和写入数据存储在所述多个存储单元中;以及
控制器,配置为(i)将与接收自主机的写入命令/读取命令相对应的第一数据编程在从所述多个存储块中选择的第一存储块的第一页中,(ii)将第二数据的位置信息记录在所述第一页中,以及(iii)将第二数据编程在所述第一存储块中的第一页面之后的第二页中。
2.根据权利要求1所述的存储系统,其中所述控制器将第一数据编程在第一页的数据区域中并且将第二数据的位置信息记录在第一页的空闲区域。
3.根据权利要求2所述的存储系统,其中所述控制器将第三数据的位置信息记录在第二页中并且将第三数据编程在第二页面之后的第三页中。
4.根据权利要求3所述的存储系统,其中,当所述第二数据没有成功地被编程在第二页中时,所述控制器利用记录在第一页的空闲区域中的第二数据的位置信息将第二数据编程在第二页中。
5.根据权利要求3所述的存储系统,其中,当不存在第三数据时,控制器将虚设数据或空数据记录在第二页的空闲区域。
6.根据权利要求1所述的存储系统,其中,当第一数据和第二数据是存储在包括在控制器中的缓冲器中的数据时,第二数据的位置信息是存储在缓冲器中的第二数据的地址。
7.根据权利要求1所述的存储系统,其中,当第一数据和第二数据是被编程在第一存储块中的数据时,第二数据的位置信息是被编程在第一存储块中的第二数据的地址。
8.根据权利要求7所述的存储系统,其中第二数据的位置信息包括关于第二数据存储在第一存储块中的位置的信息。
9.一种用于操作包括存储装置的存储系统的方法,包括:
从存储装置的多个存储块中选择第一存储块;
从包括在第一存储块中的多个页中选择第一页,其中所述第一页包括电耦接到多个字线的多个存储单元;
将与接收自主机的写入命令/读取命令相对应的第一数据编程在第一存储块的第一页中;
将第二数据的位置信息记录在第一存储块的第一页中;以及
将第二数据编程在第一存储块中的第一页之后的第二页中。
10.一种存储系统,包括:
存储块,所述存储块包括N个数目的页;
其中第M-1个页包括第M-1个数据的非位置信息,
其中第M个页包括第M个数据的非位置信息,
其中第M-1个页进一步包括第M个数据的位置信息,以及
其中N为整数,M为整数,并且M≤N。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140184811A KR20160075165A (ko) | 2014-12-19 | 2014-12-19 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR10-2014-0184811 | 2014-12-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105718378A true CN105718378A (zh) | 2016-06-29 |
CN105718378B CN105718378B (zh) | 2021-02-02 |
Family
ID=56129391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510383624.0A Active CN105718378B (zh) | 2014-12-19 | 2015-07-03 | 存储系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9916088B2 (zh) |
KR (1) | KR20160075165A (zh) |
CN (1) | CN105718378B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255637A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108255739A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN108694096A (zh) * | 2017-03-29 | 2018-10-23 | 爱思开海力士有限公司 | 控制器、存储系统及其操作方法 |
CN109213435A (zh) * | 2017-07-06 | 2019-01-15 | 爱思开海力士有限公司 | 存储器系统以及存储器系统的操作方法 |
CN109918315A (zh) * | 2017-12-12 | 2019-06-21 | 爱思开海力士有限公司 | 存储器系统及存储器系统的操作方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190040607A (ko) * | 2017-10-11 | 2019-04-19 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20200023758A (ko) * | 2018-08-27 | 2020-03-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206554A (zh) * | 2006-12-15 | 2008-06-25 | 株式会社东芝 | 硬盘驱动器以及命令执行方法 |
CN102033814A (zh) * | 2009-09-25 | 2011-04-27 | 慧荣科技股份有限公司 | 存取一闪存的方法以及相关的记忆装置 |
US20110320689A1 (en) * | 2010-06-24 | 2011-12-29 | Kyoung Lae Cho | Data Storage Devices and Data Management Methods for Processing Mapping Tables |
US20120265923A1 (en) * | 2011-04-14 | 2012-10-18 | Macronix International Co., Ltd. | Program Method, Data Recovery Method, and Flash Memory Using the Same |
CN103262050A (zh) * | 2010-12-24 | 2013-08-21 | 美光科技公司 | 对存储器的连续页面读取 |
CN103455432A (zh) * | 2008-11-06 | 2013-12-18 | 慧帝科技(深圳)有限公司 | 用来管理一记忆装置的方法以及其相关的记忆装置 |
CN103955431A (zh) * | 2014-04-11 | 2014-07-30 | 深圳市江波龙电子有限公司 | 一种闪存存储设备中数据管理的方法及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4256600B2 (ja) * | 2001-06-19 | 2009-04-22 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法 |
JP4129381B2 (ja) * | 2002-09-25 | 2008-08-06 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
JP2004348817A (ja) * | 2003-05-20 | 2004-12-09 | Sharp Corp | 半導体記憶装置、そのページバッファリソース割当方法及び回路、コンピュータシステム並びに携帯電子機器 |
US7379333B2 (en) * | 2004-10-28 | 2008-05-27 | Samsung Electronics Co., Ltd. | Page-buffer and non-volatile semiconductor memory including page buffer |
KR101300821B1 (ko) | 2007-07-04 | 2013-08-26 | 삼성전자주식회사 | 비휘발성 메모리의 데이터 손실을 방지하기 위한 장치 및방법 |
KR101541736B1 (ko) | 2008-09-22 | 2015-08-04 | 삼성전자주식회사 | 멀티-레벨 셀 플래시 메모리 장치에서의 lsb 페이지 복구 방법 |
KR101005120B1 (ko) * | 2009-02-04 | 2011-01-04 | 주식회사 하이닉스반도체 | 불휘발성 메모리 소자의 프로그램 방법 |
JP2011158998A (ja) * | 2010-01-29 | 2011-08-18 | Canon Inc | 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム |
KR101626080B1 (ko) | 2010-02-17 | 2016-06-01 | 삼성전자주식회사 | 페이지 버퍼 관리 방법과 상기 방법을 수행할 수 있는 장치들 |
US9104546B2 (en) * | 2010-05-24 | 2015-08-11 | Silicon Motion Inc. | Method for performing block management using dynamic threshold, and associated memory device and controller thereof |
TWI451249B (zh) * | 2011-12-15 | 2014-09-01 | Phison Electronics Corp | 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置 |
US8370567B1 (en) * | 2012-03-23 | 2013-02-05 | DSSD, Inc. | Storage system with self describing data |
KR101979392B1 (ko) | 2012-05-17 | 2019-05-16 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
-
2014
- 2014-12-19 KR KR1020140184811A patent/KR20160075165A/ko not_active Application Discontinuation
-
2015
- 2015-04-09 US US14/682,901 patent/US9916088B2/en active Active
- 2015-07-03 CN CN201510383624.0A patent/CN105718378B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101206554A (zh) * | 2006-12-15 | 2008-06-25 | 株式会社东芝 | 硬盘驱动器以及命令执行方法 |
CN103455432A (zh) * | 2008-11-06 | 2013-12-18 | 慧帝科技(深圳)有限公司 | 用来管理一记忆装置的方法以及其相关的记忆装置 |
CN102033814A (zh) * | 2009-09-25 | 2011-04-27 | 慧荣科技股份有限公司 | 存取一闪存的方法以及相关的记忆装置 |
US20110320689A1 (en) * | 2010-06-24 | 2011-12-29 | Kyoung Lae Cho | Data Storage Devices and Data Management Methods for Processing Mapping Tables |
CN103262050A (zh) * | 2010-12-24 | 2013-08-21 | 美光科技公司 | 对存储器的连续页面读取 |
US20120265923A1 (en) * | 2011-04-14 | 2012-10-18 | Macronix International Co., Ltd. | Program Method, Data Recovery Method, and Flash Memory Using the Same |
CN103955431A (zh) * | 2014-04-11 | 2014-07-30 | 深圳市江波龙电子有限公司 | 一种闪存存储设备中数据管理的方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255637A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108255739A (zh) * | 2016-12-28 | 2018-07-06 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN108255637B (zh) * | 2016-12-28 | 2022-01-04 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108255739B (zh) * | 2016-12-28 | 2023-04-28 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN108694096A (zh) * | 2017-03-29 | 2018-10-23 | 爱思开海力士有限公司 | 控制器、存储系统及其操作方法 |
CN108694096B (zh) * | 2017-03-29 | 2021-09-17 | 爱思开海力士有限公司 | 控制器、存储系统及其操作方法 |
CN109213435A (zh) * | 2017-07-06 | 2019-01-15 | 爱思开海力士有限公司 | 存储器系统以及存储器系统的操作方法 |
CN109918315A (zh) * | 2017-12-12 | 2019-06-21 | 爱思开海力士有限公司 | 存储器系统及存储器系统的操作方法 |
CN109918315B (zh) * | 2017-12-12 | 2023-08-25 | 爱思开海力士有限公司 | 存储器系统及存储器系统的操作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20160075165A (ko) | 2016-06-29 |
CN105718378B (zh) | 2021-02-02 |
US9916088B2 (en) | 2018-03-13 |
US20160179385A1 (en) | 2016-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102517129B1 (ko) | 메모리 시스템 및 그의 동작방법 | |
CN105608015B (zh) | 存储系统及其操作方法 | |
US9378824B2 (en) | Memory system and operation method thereof | |
CN106708744B (zh) | 存储系统和存储系统的操作方法 | |
CN105719703A (zh) | 存储系统及其操作方法 | |
KR20170056765A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
KR102514388B1 (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN106776352B (zh) | 存储器系统和存储器系统的操作方法 | |
CN105989885A (zh) | 存储系统及其操作方法 | |
CN106910521B (zh) | 存储器系统及其操作方法 | |
KR20170061221A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN105739914A (zh) | 数据处理系统及其操作方法 | |
CN106257399A (zh) | 存储系统及其操作方法 | |
CN105718378A (zh) | 存储系统及其操作方法 | |
CN106250052A (zh) | 存储系统及其操作方法 | |
KR20170044780A (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
KR20170075855A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN106610904B (zh) | 存储系统及其操作方法 | |
KR20160132204A (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
KR20170099018A (ko) | 메모리 시스템 및 그의 동작방법 | |
KR20170059049A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN105551521A (zh) | 存储系统及其操作方法 | |
TW201719667A (zh) | 記憶體系統及其操作方法 | |
KR20170061218A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 | |
KR20170076878A (ko) | 메모리 시스템 및 메모리 시스템의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |