CN112201294A - 控制器、存储器系统及其操作方法 - Google Patents
控制器、存储器系统及其操作方法 Download PDFInfo
- Publication number
- CN112201294A CN112201294A CN201911088286.2A CN201911088286A CN112201294A CN 112201294 A CN112201294 A CN 112201294A CN 201911088286 A CN201911088286 A CN 201911088286A CN 112201294 A CN112201294 A CN 112201294A
- Authority
- CN
- China
- Prior art keywords
- memory
- memory block
- erase
- block
- memory device
- 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.)
- Withdrawn
Links
Images
Classifications
-
- 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
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/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/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/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
-
- 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/3436—Arrangements for verifying correct programming or erasure
- G11C16/344—Arrangements for verifying correct erasure or for detecting overerased cells
- G11C16/3445—Circuits or methods to verify correct erasure of nonvolatile memory cells
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
公开了一种控制器、存储器系统及其操作方法。控制器的操作方法包括:控制非易失性存储器设备以对无效存储器块执行第一擦除操作;在对其执行了第一擦除操作的存储器块之中分配用于写操作的目标存储器块;控制非易失性存储器设备以对目标存储器块执行擦除状态验证操作;以及当擦除状态验证操作指示目标存储器块的擦除状态满足设定条件时,控制非易失性存储器设备以对目标存储器块执行写操作。
Description
相关申请的交叉引用
本申请要求2019年7月8日在韩国知识产权局提交的韩国专利申请10-2019-0082103的优先权,其全部内容通过引用并入本文。
技术领域
各个实施例通常可以涉及半导体器件,并且更具体地涉及控制器、存储器系统及其操作方法。
背景技术
近年来,计算机环境的范例已经转变为无处不在的计算,其中可以随时随地使用计算机系统。结果,诸如移动电话、数字相机和膝上型计算机之类的便携式电子设备的使用迅速增加。通常,便携式电子设备使用采用存储器设备的存储器系统。存储器系统可以被用来存储在便携式电子设备中使用的数据。
使用存储器设备的存储器系统没有机械驱动单元并且表现出良好的稳定性和耐久性、快速的信息访问速率以及低功耗。这样的存储器系统可以包括通用串行总线(USB)存储器设备、具有各种接口的存储器卡、通用闪存存储(UFS)设备、固态驱动器(SSD)等。
发明内容
提供了能够改善存储器系统的性能的技术的实施例。
在本公开的实施例中,控制器的操作方法可以包括:控制非易失性存储器设备以对无效存储器块执行第一擦除操作;以及在对其执行了第一擦除操作的存储器块之中分配用于写操作的目标存储器块;控制非易失性存储器设备以对目标存储器块执行擦除状态验证操作;以及当擦除状态验证操作指示目标存储器块的擦除状态满足设定条件时,控制非易失性存储器设备以对目标存储器块执行写操作。
在本公开的实施例中,一种存储器系统可以包括:包括多个存储器块的非易失性存储器设备;以及被配置为控制该非易失性存储器设备的控制器。控制器可以控制非易失性存储器设备以对多个存储器块之中的无效存储器块执行第一擦除操作;在对其执行了第一擦除操作的存储器块之中分配用于写操作的目标存储器块;控制非易失性存储器设备以对目标存储器块执行擦除状态验证操作;以及当擦除状态验证操作指示目标存储器块的擦除状态满足设定条件时,控制非易失性存储器设备以对目标存储器块执行写操作。
在本公开的实施例中,一种存储器系统的操作方法,所述存储器系统包括非易失性存储器设备和被配置为控制所述非易失性存储器设备的控制器,所述方法可以包括:由控制器在注册在空闲块列表中的存储器块之中分配用于写操作的目标存储器块;验证目标存储器块的擦除状态;以及当擦除状态验证指示目标存储器块的擦除状态满足设定条件时,对目标存储器块执行写操作。
在本公开的实施例中,一种用于控制包括无效存储器块的存储器设备的控制器的操作方法,该操作方法包括:控制该存储器设备以对无效存储器块执行第一擦除操作,该无效存储器块成为已擦除存储器块;以及响应于写命令,控制存储器设备以对已擦除存储器块执行写操作。当在第一擦除操作之后已擦除存储器块不满足擦除状态条件时,在执行写入操作之前,控制器响应于写入命令来控制存储器设备以对已擦除存储器块执行第二擦除操作。
根据本公开的实施例,可以改善存储器系统的性能。
下面描述这些和其他特征、方面和实施例。
附图说明
通过结合附图进行的以下详细描述中,将更清楚地理解本公开的主题的上述和其他方面、特征和优点,其中:
图1是图示出根据本公开的实施例的存储器系统的配置的图;
图2是图示出根据本公开的实施例的闪存转换层的框图;
图3是图示出根据本公开的实施例的存储器系统的操作方法的流程图;
图4(A)、图4(B)和图4(C)是图示出根据本公开的实施例的存储器系统的操作的图;
图5是图示出根据本公开的实施例的包括固态驱动器(SSD)的数据处理系统的图;
图6是图示出图5中的控制器的配置的图;
图7是图示出根据本公开的实施例的包括存储器系统的数据处理系统的图;
图8是图示出根据本公开的实施例的包括存储器系统的数据处理系统的图;和
图9是图示出根据本公开的实施例的包括存储器系统的网络系统的图。
具体实施方式
参考附图更详细地描述了本发明的各种实施例。附图是特征、结构和中间结构的示意图。这样,将预期到由于例如制造技术和/或公差导致图示的配置和形状的变化。因此,所描述的实施例不应被解释为限于本文图示出的特定配置和形状,而是可以包括在不脱离所附权利要求所限定的本发明的精神和范围的配置和形状上的偏差。
本文在本发明的各种实施例的上下文中描述了本发明。然而,本发明不限于所公开的实施例。本领域技术人员将理解,可以在不脱离本发明的原理和精神的情况下在这些实施例中进行改变。在整个说明书中,对“一个实施例”等的引用不一定仅是一个实施例,并且对任何这样的短语的不同引用不一定是(一个或多个)相同的实施例。
图1是图示出根据实施例的存储器系统10的配置的图。
参见图1,根据实施例的存储器系统10可以存储要由主机20访问的数据,该主机20诸如是移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视(TV)、车载信息娱乐系统等。
根据耦合到主机20的接口协议,存储器系统10可以被配置为各种类型的存储器设备中的任何一种。例如,存储器系统10可以被配置为固态驱动器(SSD)、MMC、eMMC、RS-MMC和微型(micro)MMC形式的多媒体卡、SD、迷你(mini)SD和微型SD形式的安全数字卡、通用串行总线(USB)存储设备、通用闪存存储(UFS)设备、个人计算机存储器卡国际协会(PCMCIA)卡类型存储设备、外围组件互连(PCI)卡类型存储设备、高速PCI(PCI-E)卡类型存储设备、紧凑型闪存(CF)卡、智能媒体卡、记忆棒等。
存储器系统10可以被制造为各种类型的封装中的任何一种。例如,存储器系统10可以被制造为封装上封装(POP)、封装中系统(SIP)、芯片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)或晶圆级堆叠封装(WSP)。
存储器系统10可以包括非易失性存储器设备100和控制器200。
非易失性存储器设备100可以被操作为存储器系统10的存储介质。根据所使用的存储器单元的类型,非易失性存储器设备100可以包括各种类型的非易失性存储器设备中的任何一种,诸如NAND闪存存储器设备、NOR闪存存储器设备、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧道磁阻(TMR)层的磁随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取存储器(PRAM)、或使用过渡金属化合物的电阻式随机存取存储器(ReRAM)。
尽管已经在图1中图示出,存储器系统10包括一个非易失性存储器设备100,但是这种表示是为了清楚起见;存储器系统10可以包括多个非易失性存储器设备100,并且本公开可以等同地被应用于包括多个非易失性存储器设备100的存储器系统10。
非易失性存储器设备100可以包括存储器单元阵列(未示出),该存储器单元阵列包括布置在多个字线(未示出)和多个位线(未示出)彼此交叉的区域中的多个存储器单元。存储器单元阵列可以包括多个存储器块,并且多个存储器块中的每个存储器块可以包括多个页面。
例如,存储器单元阵列中的每个存储器单元可以是其中要存储一位数据的单级单元(SLC),也可以是其中要存储两位或更多位数据的多级单元(MLC)。有时,MLC可以被用来表示其中要存储两位数据的存储器单元,而其中要存储三位数据的存储器单元可以被称为三级单元(TLC),并且其中要存储四位数据的存储器单元可以被称为四级单元(QLC)。然而,这里MLC更一般性地指代用于存储两位或更多位数据的存储器单元。
存储器单元阵列可以包括至少一个或多个SLC和MLC。存储器单元阵列可以包括以二维(2D)水平结构布置的存储器单元或以3D垂直结构布置的存储器单元。
控制器200可以包括主机接口210、处理器220、存储器230和存储器接口240。控制器200可以通过驱动加载到存储器230中的固件或软件来控制存储器系统10的整体操作。控制器200可以解码并驱动诸如固件或软件之类的代码类型的指令或算法。控制器200可以用硬件或硬件和软件的组合来实现。尽管未在图1中示出,但是控制器200可以进一步包括纠错码(ECC)引擎,其通过对从主机20提供的写数据执行ECC编码来生成奇偶校验位,并且使用该奇偶校验位对从非易失性存储器设备100中读出的读数据执行ECC解码。
主机接口210可以根据主机20的协议在主机20和存储器系统10之间执行接口对接。例如,主机接口210可以通过USB协议、UFS协议、MMC协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串行附接SCSI(SAS)协议、PCI协议、和PCI-E协议之中的任何协议来与主机20通信。
处理器220可以被配置为微控制单元(MCU)和/或中央处理单元(CPU)。处理器220可以处理从主机20传送的请求。为了处理从主机20传送的请求,处理器220可以驱动加载到存储器230中的代码类型的指令或算法(例如,固件)并控制诸如主机接口210、存储器230、存储器接口240和非易失性存储器设备100之类的内部功能块。
处理器220可以基于从主机20传送的请求来生成用于控制非易失性存储器设备100的操作的控制信号,并且通过存储器接口240将所生成的控制信号提供给非易失性存储器设备100。
存储器230可以被配置为诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)和只读存储器(ROM)之类的随机存取存储器。存储器230可以存储通过处理器220驱动的固件。存储器230还可以存储系统数据和驱动固件所需的数据(例如,元数据)。例如,存储器230可以被操作为处理器220的工作存储器。
存储器230可以被配置为包括数据缓冲器,该数据缓冲器被配置为临时存储要从主机20传送到非易失性存储器设备100的写数据或要从非易失性存储器设备100传送到主机20的读数据。例如,存储器230可以被操作为处理器220的缓冲存储器。
如本领域中已知的,存储器230还可以包括用于不同目的的不同区域,诸如被用作将临时存储写数据的写数据缓冲器的区域,被用作将临时存储读数据的读数据缓冲器的区域,以及被用作将缓存映射数据的映射缓存缓冲器的区域。
当存储器设备100被配置为闪存存储器设备时,处理器220可以控制非易失性存储器设备100的固有操作并驱动被称为闪存转换层(FTL)的软件以向主机20提供设备兼容性。主机20可以通过闪存转换层(FTL)的驱动来识别并使用存储器系统10作为诸如硬盘之类的通用存储设备。
存储器接口240可以根据处理器220的控制来控制非易失性存储器设备100。存储器接口240可以指代存储器控制器。存储器接口240可以向非易失性存储器设备100提供控制信号。控制信号可以包括用于控制非易失性存储器设备100的命令、地址和操作控制信号等。存储器接口240可以将存储在数据缓冲器中的数据提供给非易失性存储器设备100,或者将从非易失性存储器设备100传送的数据存储在数据缓冲器中。
图2是图示出根据实施例的闪存转换层(FTL)的框图。
参见图2,闪存转换层可以包括存储器块管理器310、擦除操作控制组件320、存储器块分配器330、擦除状态验证器340和写操作控制组件350。
存储器块管理器310可以管理非易失性存储器设备100中的多个存储器块的状态。例如,存储器块管理器310可以管理元数据或标志信息,该元数据包括关于多个存储器块的写操作、读操作、擦除操作、无效等等的信息。在该示例中,当对多个存储器块执行写操作、读操作、擦除操作等中的任何一种操作时,或者当使存储在多个存储器块中的数据无效时,存储器块管理器310可以根据操作结果或数据的状态——即该数据是否无效来改变元数据或标志信息。
此外,存储器块管理器310可以在空闲块列表中注册非易失性存储器设备100中的存储器块并管理注册的存储器块。
在一个实施例中,当多个存储器块中的至少一个存储器块被无效时,存储器块管理器310可以在空闲块列表中注册(一个或多个)无效存储器块的索引。当对空闲块列表中注册的存储器块之中的一个存储器块执行擦除操作时,存储器块管理器310可以将指示对该存储器块执行了擦除操作的信息映射到存储器块的索引。
在一个实施例中,存储器块管理器310可以在空闲块列表中注册无效存储器块之中对其执行了擦除操作的每个存储器块的索引。
擦除操作控制组件320可以控制非易失性存储器设备100以对非易失性存储器设备100中的无效存储器块执行擦除操作。这里,擦除操作可以包括将构成存储器块的多个存储器单元中的每一个存储器单元的阈值电压降低到设定的擦除电压或更低。非易失性存储器设备100可以根据擦除操作控制组件320的控制,对无效存储器块执行擦除操作。
在一个实施例中,擦除操作可以包括以固定次数重复执行一组操作,该组操作向存储器单元施加设定电压,然后施加用于验证存储器单元的擦除状态的电压。例如,擦除操作可以是多个周期,并且每个周期可以包括施加擦除电压然后施加验证读电压的操作。
在下面的描述中,在将无效存储器块分配为要对其执行写操作的存储器块之前执行的擦除操作可以被称为第一擦除操作,并且在将无效存储器块分配为执行写操作的目标存储器块之后执行的擦除操作可以被称为第二擦除操作。
在一个实施例中,擦除操作控制组件320可以对无效存储器块执行第一擦除操作。例如,当存储器块被无效时,擦除操作控制组件320可以在将无效存储器块的索引注册在空闲块列表中之前对无效存储器块执行第一擦除操作。存储器块管理器310可以将对其执行擦除操作的存储器块的索引注册在空闲块列表中。
在一个实施例中,擦除操作控制组件320可以对注册在空闲块列表中的存储器块执行第一擦除操作。例如,擦除操作控制组件320可以在无效存储器块的索引被注册在空闲块列表中之后,对注册在空闲块列表中的存储器块执行第一擦除操作。存储器块管理器310可以通过将关于是否对已注册的存储器块执行了擦除操作的信息映射到空闲块列表中的已注册存储器块的索引,来在空闲块列表中注册该信息。可以在存储器系统10的空闲时间中对已注册的存储器块执行擦除操作。
当在空闲块列表中注册的存储器块之中分配了写操作的目标存储器块时,擦除操作控制组件320可以验证所分配的存储器块的擦除状态,并且当验证结果为异常时,擦除操作控制组件320可以对所分配的存储器块执行第二擦除操作。
存储器块分配器330可以响应于主机20的写请求来分配要在其中写入数据的存储器块。
在一个实施例中,当无效存储器块的索引被注册在空闲块列表中时,存储器块分配器330可以选择注册在空闲块列表中的存储器块之中的至少一个存储器块作为要在其中写入数据的存储器块。
在一个实施例中,当在空闲块列表中注册了无效但尚未擦除的存储器块的索引时,存储器块分配器330可以基于映射到已注册的存储器块的索引的擦除/非擦除信息,选择已注册的那些存储器块之中的已擦除存储器块作为写操作的目标存储器块。
当分配了写操作的目标存储器块时,擦除状态验证器340可以验证所分配的存储器块的擦除状态。执行该验证是因为:在待机状态期间直到使用存储器块之前,根据非易失性存储器设备100的数据保持特性,有时不能适当地维持所分配的存储器块的擦除状态。
在一个实施例中,擦除状态验证器340可以控制非易失性存储器设备100,以通过向存储器单元施加擦除验证电压并且然后对存储器单元执行读操作,来验证构成所分配的存储器块的存储器单元的阈值电压是否小于或等于擦除电压。当构成所分配的存储器块的存储器单元的阈值电压小于或等于擦除电压时,擦除状态验证器340可以确定擦除状态为正常(即,验证通过),并且当阈值电压大于擦除电压时,擦除状态验证器340可以确定擦除状态为异常(即,验证失败)。
写入操作控制组件350可以控制非易失性存储器设备100执行写操作,该写操作将数据存储在所分配的存储器块中。非易失性存储器设备100可以根据写操作控制组件350的控制来执行写操作。
在一个实施例中,当对所分配的存储器块的擦除状态的验证结果通过时,写操作控制组件350可以进一步擦除所分配的存储器块,然后对所分配的存储器块执行写操作。
在一个实施例中,当对所分配的存储器块的擦除状态的验证结果失败时,写操作控制组件350还可以对所分配的存储器块执行第二擦除操作,然后对所分配的存储器块执行写操作。
图3是解释根据实施例的存储器系统的操作方法的图。
参见图3,在操作S310中,存储器系统10可以使存储器块无效。例如,控制器200可以使非易失性存储器设备100中的至少一个存储器块无效。
在一个实施例中,当在其中预存储有数据的至少一个存储器块上执行诸如垃圾收集、迁移和/或读取回收的至少一种操作时,控制器200可以使(一个或多个)对应的存储器块无效。
在操作S320中,存储器系统10可以对(一个或多个)无效存储器块执行第一擦除操作。例如,当至少一个存储器块被无效时,控制器200可以控制非易失性存储器设备100执行第一擦除操作,该第一擦除操作擦除存储在无效存储器块中的数据。
在一个实施例中,控制器200可以将(一个或多个)无效存储器块注册在空闲块列表中。然后,控制器200可以控制非易失性存储器设备100以对注册在空闲块列表中的(一个或多个)无效存储器块执行第一擦除操作。
在一个实施例中,控制器200可以控制非易失性存储器设备100以对(一个或多个)无效存储器块执行第一擦除操作。然后,控制器200可以将对其执行了第一擦除操作的(一个或多个)存储器块注册在空闲块列表中。
在操作S330中,存储器系统10可以从主机20接收命令,例如,写命令。
在操作S340中,存储器系统10可以分配写操作的目标存储器块。例如,当从主机20接收到写命令时,控制器200可以参考空闲块列表的索引,将对其执行了第一擦除操作的存储器块之中的至少一个存储器块分配为写操作的目标存储器块。
在一个实施例中,即使尚未对其执行第一擦除操作的无效存储器块被注册在空闲块列表中,控制器200也可以不分配这种存储器块。取而代之,控制器2300可以将对其已经执行了第一擦除操作的已注册存储器块之中的至少一个存储器块分配为写操作的目标存储器块。
在一个实施例中,当对其已经执行了第一擦除操作的无效存储器块被注册在空闲块列表中时,控制器200可以将已注册的存储器块之中的至少一个存储器块分配为写操作的目标存储器块。
在操作S350中,存储器系统10可以验证所分配的存储器块的擦除状态。例如,控制器200可以控制非易失性存储器设备100以确认所分配的存储器块的擦除状态是否被适当地维持。这是通过在操作S340中根据直到擦除操作之前所需的时间考虑数据保持特性来确认在执行写操作之前的擦除状态,然后在稍后执行的操作S360中执行写操作。
在一个实施例中,控制器200可以控制非易失性存储器设备100以向所分配的存储器块施加擦除验证电压。控制器200可以基于已经将擦除验证电压施加到所分配的存储器块的结果,来确认是否已经适当地维持了所分配的存储器块的擦除状态。
在操作S360中,存储器系统10可以对所分配的存储器块执行写操作。例如,当确认所分配的存储器块的擦除状态正常时,控制器200可以控制非易失性存储器设备100以对所分配的存储器块执行写操作。在该示例中,存储器系统10不需要对所分配的存储器块执行第二擦除操作;取而代之的是对所分配的存储器块执行写操作,并且因此结合写操作可以减少对所分配的存储器块执行擦除操作所需的时间。
在操作S370中,存储器系统10可以对所分配的存储器块执行第二擦除操作。例如,当确定所分配的存储器块的擦除状态异常时,控制器200可以控制非易失性存储器设备100以对所分配的存储器块执行第二擦除操作。在该示例中,非易失性存储器设备100可以根据控制器200的控制对所分配的存储器块执行第二擦除操作。然后,存储器系统10可以在操作S370中针对所分配的存储器块的第二擦除操作完成之后对所分配的存储器块执行写操作。
图4(A)、图4(B)和图4(C)是解释根据实施例的存储器系统的操作的图。
参见图4(A),左图图示出了尚未对其执行写操作的存储器单元的阈值电压分布,右图图示出了对存储器单元执行写操作之后的存储器单元的阈值电压分布。如可以看出的,两个阈值电压分布是不同的。
参见图4(B),左图图示出了已对其执行了写操作的存储器单元的阈值电压分布,右图图示出了在对存储器单元执行擦除操作之后的存储器单元的阈值电压分布。从图4(B)可以看出,当执行根据实施例的第一擦除操作或第二擦除操作时,可以在执行这种擦除操作之前相对于阈值电压分布改变存储器单元的阈值电压分布。
参见图4(C),左图图示出了对其执行第一擦除操作的存储器单元的阈值电压分布随时间变化。当存储器单元的阈值电压分布增加到大于设定的擦除状态电压Vth时,存储器系统10可以确定存储器单元的擦除状态异常。当确定存储器单元的擦除状态异常时,存储器系统10可以执行第二擦除操作以使阈值电压分布小于设定的擦除状态电压Vth,如图4(C)的右图中所图示。
图5是图示出根据实施例的包括固态驱动器(SSD)的数据处理系统的框图。参见图5,数据处理系统2000可以包括主机2100和固态驱动器(SSD)2200。
SSD 2200可以包括控制器2210、缓冲器存储器设备2220、非易失性存储器设备2231至223n、电源2240、信号连接器2250和电源连接器2260。
控制器2210可以控制SSD 2200的整体操作。
缓冲存储器设备2220可以临时存储要被存储在非易失性存储器设备2231至223n中的数据。此外,缓冲器存储器设备2220可以临时存储从非易失性存储器设备2231至223n读出的数据。可以根据控制器2210的控制,将临时存储在缓冲存储器设备2220中的数据传送到主机2100或非易失性存储器设备2231至223n。
非易失性存储器设备2231至223n可以被用作SSD 2200的存储介质。非易失性存储器设备2231至223n可以分别通过多个通道CH1至CHn来与控制器2210耦合。一个或多个非易失性存储器设备可以耦合到相同通道。耦合到相同通道的非易失性存储器设备可以耦合到相同信号总线和数据总线。
电源2240可以将通过电源连接器2260输入的电力PWR提供到SSD 2200的内部。电源2240可以包括辅助电源2241。辅助电源2241可以提供电力以在发生突然断电(SPO)时允许SSD 2200可以适当地终止。辅助电源2241可以包括能够对电源PWR充电的大容量电容器。
控制器2210可以通过信号连接器2250来与主机2100交换信号SGL。信号SGL可以包括命令、地址、数据等。根据主机2100和SSD 2200之间的接口方案,信号连接器2250可以被配置为各种类型的连接器中的任何一种。
图6是图示出图5中所图示的控制器的框图。参见图6,控制器2210可以包括主机接口2211、控制组件2212、随机存取存储器2213、纠错码(ECC)组件2214和存储器接口2215。
主机接口2211可以根据主机2100的协议来在主机2100和SSD 2200之间提供接口对接。例如,主机接口2211可以通过SD、USB、MMC、嵌入式MMC(eMMC)、PCMCIA、PATA、SATA、SCSI、SAS、PCI、PCI-E和UFS协议来与主机2100通信。另外,主机接口2211可以执行磁盘仿真功能,以支持主机2100将SSD 2200识别为通用存储器系统,例如硬盘驱动器(HDD)。
控制组件2212可以分析和处理从主机2100输入的信号SGL。控制组件2212可以根据用于驱动SSD 2200的固件或软件来控制内部功能块的操作。随机存取存储器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。
图7是图示出根据实施例的包括存储器系统的数据处理系统的图。参见图7,数据处理系统3000可以包括主机3100和存储器系统3200。
主机3100可以以诸如印刷电路板之类的板的形式来进行配置。尽管未在图7中示出,主机3100可以包括用于执行主机的功能的内部功能块。
主机3100可以包括连接端子3110,诸如插座、插槽或连接器。存储器系统3200可以被安装在连接端子3110上。
存储器系统3200可以以诸如印刷电路板之类的板的形式来进行配置。存储器系统3200可以是指存储器模块或存储器卡。存储器系统3200可以包括控制器3210、缓冲器存储器设备3220、非易失性存储器设备3231和3232、电源管理集成电路(PMIC)3240以及连接端子3250。
控制器3210可以控制存储器系统3200的整体操作。控制器3210可以以与图5中所示的控制器2210相同的方式来进行配置。
缓冲器存储器设备3220可以临时存储要被存储在非易失性存储器设备3231和3232中的数据。此外,缓冲器存储器设备3220可以临时存储从非易失性存储器设备3231和3232中读出的数据。可以根据控制器3210的控制,将临时存储在缓冲存储器设备3220中的数据传送到主机3100或非易失性存储器设备3231和3232。
非易失性存储器设备3231和3232可以被用作存储器系统3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供给存储器系统3200的内部。PMIC 3240可以根据控制器3210的控制来管理存储器系统3200的电力。
连接端子3250可以耦合到主机3100的连接端子3110。通过连接端子3250,诸如命令、地址、数据等的信号以及电力可以在主机3100和存储器系统3200之间传递。取决于主机3100和存储器系统3200之间的接口方案,连接端子3250可以被配置为各种类型中的任意一种。连接端子3250可以被安置在存储器系统3200的任一侧上。
图8是图示出根据实施例的包括存储器系统的数据处理系统的框图。参见图8,数据处理系统4000可以包括主机4100和存储器系统4200。
主机4100可以以诸如印刷电路板之类的板的形式来进行配置。尽管未在图8中示出,主机4100可以包括用于执行主机的功能的内部功能块。
存储器系统4200可以以表面安装型封装的形式来进行配置。存储器系统4200可以通过焊料球4250而被安装在主机4100上。存储器系统4200可以包括控制器4210、缓冲器存储器设备4220和非易失性存储器设备4230。
控制器4210可以控制存储器系统4200的整体操作。控制器4210可以以与图6中所示的控制器2210相同的方式来进行配置。
缓冲器存储器设备4220可以临时存储要被存储在非易失性存储器设备4230中的数据。此外,缓冲器存储器设备4220可以临时存储从非易失性存储器设备4230中读出的数据。可以根据控制器4210的控制,将临时存储在缓冲器存储器设备4220中的数据传送到主机4100或非易失性存储器设备4230。
非易失性存储器设备4230可以被用作存储器系统4200的存储介质。
图9是图示出根据实施例的包括存储器系统的网络系统5000的图。参见图9,网络系统5000可以包括服务器系统5300和通过网络5500彼此耦合的多个客户端系统5410至5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求来服务数据。例如,服务器系统5300可以存储从多个客户端系统5410至5430提供的数据。在另一个示例中,服务器系统5300可以向多个客户端系统5410至5430提供数据。
服务器系统5300可以包括主机5100和存储器系统5200。存储器系统5200可以由图1中所图示的存储器系统10、图6中所图示的存储器系统2200、图7中所图示的存储器系统3200、或图8中所图示的存储器系统4200来配置。
本发明的上述实施例旨在说明而不是限制本发明。各种替代方案和等效方案是可能的。本发明不受本文描述的实施例的限制。本发明也不限于任何特定类型的半导体器件。因此,本发明涵盖落入所附权利要求范围内的所有增加、减少和修改方案。
Claims (18)
1.一种控制包括多个存储器块的非易失性存储器设备的控制器的操作方法,所述方法包括:
控制非易失性存储器设备以对所述多个存储器块之中的无效存储器块执行第一擦除操作;
在对其执行了所述第一擦除操作的所述存储器块之中分配用于写操作的目标存储器块;
控制所述非易失性存储器设备以对所述目标存储器块执行擦除状态验证操作;以及
当所述擦除状态验证操作指示所述目标存储器块的擦除状态满足设定条件时,控制所述非易失性存储器设备以对所述目标存储器块执行所述写操作。
2.根据权利要求1所述的方法,
还包括:将对其执行了所述第一擦除操作的所述存储器块注册在空闲块列表中,
其中分配所述目标存储器块包括:在已注册的存储器块之中分配所述目标存储器块。
3.根据权利要求1所述的方法,
其中控制所述非易失性存储器设备以执行所述第一擦除操作包括:将所述无效存储器块注册在空闲块列表中,并且控制所述非易失性存储器设备以对已注册的存储器块执行所述第一擦除操作,以及
其中分配所述目标存储器块包括:在对其执行了所述第一擦除操作的所述已注册的存储器块之中分配所述目标存储器块。
4.根据权利要求3所述的方法,其中所述空闲块列表包括所述已注册的存储器块的索引以及关于是否对所述已注册的存储器块中的每一个存储器块执行了所述第一擦除操作的信息。
5.根据权利要求4所述的方法,其中当对所述已注册的存储器块执行了所述第一擦除操作时,所述控制器改变关于是否对所述已注册的存储器块执行了所述第一擦除操作的所述信息。
6.根据权利要求1所述的方法,其中控制所述非易失性存储器设备以执行所述写操作包括:在当所述擦除状态验证操作指示所述目标存储器块的所述擦除状态不满足所述设定条件时所述非易失性存储器设备对所述目标存储器块执行第二擦除操作之后,控制所述非易失性存储器设备以对所述目标存储器块执行所述写操作。
7.根据权利要求1所述的方法,其中所述无效存储器块作为垃圾收集操作、读取回收操作和迁移操作中的至少一项的结果而被无效。
8.一种存储器系统,包括:
非易失性存储器设备,包括多个存储器块;以及
控制器,被配置为控制所述非易失性存储器设备,
其中所述控制器被配置为:
控制所述非易失性存储器设备以对所述多个存储器块之中的无效存储器块执行第一擦除操作;
在对其执行了所述第一擦除操作的存储器块之中分配用于写操作的目标存储器块;
控制所述非易失性存储器设备以对所述目标存储器块执行擦除状态验证操作;以及
当所述擦除状态验证操作指示所述目标存储器块的擦除状态满足设定条件时,控制所述非易失性存储器设备以对所述目标存储器块执行所述写操作。
9.根据权利要求8所述的存储器系统,
其中所述控制器将对其执行了所述第一擦除操作的所述存储器块注册在空闲块列表中,以及
其中所述控制器在已注册的存储器块之中分配所述目标存储器块。
10.根据权利要求8所述的存储器系统,
其中所述控制器将所述无效存储器块注册在空闲块列表中,并控制所述非易失性存储器设备以对已注册的存储器块执行所述第一擦除操作,
其中所述控制器在对其执行了所述第一擦除操作的所述已注册的存储器块之中分配所述目标存储器块。
11.根据权利要求10所述的存储器系统,其中所述控制器在所述空闲块列表中注册所述已注册的存储器块的索引以及关于是否对所述已注册的存储器块中的每一个存储器块执行了所述第一擦除操作的信息。
12.根据权利要求11所述的存储器系统,其中当对所述已注册的存储器块执行了所述第一擦除操作时,所述控制器改变关于是否对所述已注册的存储器块执行了所述第一擦除操作的所述信息。
13.根据权利要求8所述的存储器系统,其中在当针对所分配的存储器块的所述擦除状态验证操作指示所述目标存储器块的所述擦除状态不满足所述设定条件时所述非易失性存储器设备对所分配的存储器块执行第二擦除操作之后,所述控制器控制所述非易失性存储器设备以对所述目标存储器块执行所述写操作。
14.根据权利要求8所述的存储器系统,其中所述无效存储器块作为垃圾收集操作、读取回收操作和迁移操作中的至少一项的结果而被无效。
15.一种存储器系统的操作方法,所述存储器系统包括非易失性存储器设备和控制器,所述非易失性存储器设备包括多个存储器块,所述控制器被配置为控制所述非易失性存储器设备,所述方法包括:
由所述控制器在空闲块列表中注册的存储器块之中分配用于写操作的目标存储器块;
验证所述目标存储器块的擦除状态;以及
当擦除状态验证指示所述目标存储器块的所述擦除状态满足设定条件时,对所述目标存储器块执行所述写操作。
16.根据权利要求15所述的方法,
其中所述空闲块列表包括作为已注册的存储器块的无效存储器块的索引以及关于是否对所述已注册的存储器块执行了擦除操作的信息,以及
其中分配所述目标存储器块包括:在对其执行了所述擦除操作的所述已注册的存储器块之中分配所述目标存储器块。
17.根据权利要求16所述的方法,还包括:在当所述擦除状态验证指示所述目标存储器块的所述擦除状态不满足所述设定条件时对所述目标存储器块执行所述擦除操作之后,响应于写命令来控制所述非易失性存储器设备以对所述目标存储器块执行写操作。
18.一种控制器的操作方法,所述控制器用于控制存储器设备,所述存储器设备包括无效存储器块,所述操作方法包括:
控制所述存储器设备以对所述无效存储器块执行第一擦除操作,所述无效存储器块成为已擦除存储器块;以及
响应于写命令,控制所述存储器设备以对所述已擦除存储器块执行写操作,
其中当在所述第一擦除操作之后所述已擦除存储器块不满足擦除状态条件时,在执行所述写操作之前,所述控制器响应于所述写命令来控制所述存储器设备以对所述已擦除存储器块执行第二擦除操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190082103A KR20210006163A (ko) | 2019-07-08 | 2019-07-08 | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 |
KR10-2019-0082103 | 2019-07-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112201294A true CN112201294A (zh) | 2021-01-08 |
Family
ID=74004291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911088286.2A Withdrawn CN112201294A (zh) | 2019-07-08 | 2019-11-08 | 控制器、存储器系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210011650A1 (zh) |
KR (1) | KR20210006163A (zh) |
CN (1) | CN112201294A (zh) |
-
2019
- 2019-07-08 KR KR1020190082103A patent/KR20210006163A/ko unknown
- 2019-10-29 US US16/667,396 patent/US20210011650A1/en not_active Abandoned
- 2019-11-08 CN CN201911088286.2A patent/CN112201294A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
KR20210006163A (ko) | 2021-01-18 |
US20210011650A1 (en) | 2021-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216362B2 (en) | Data storage device and operating method thereof | |
KR20200095103A (ko) | 데이터 저장 장치 및 그 동작 방법 | |
CN109992202B (zh) | 数据存储设备、其操作方法以及包括其的数据处理系统 | |
CN111414313B (zh) | 数据存储装置及数据存储装置的操作方法 | |
KR20200020464A (ko) | 데이터 저장 장치 및 그 동작 방법 | |
CN111916140B (zh) | 控制器及其操作方法以及包括控制器的存储器系统 | |
CN111061653A (zh) | 数据存储装置及其操作方法 | |
US11526439B2 (en) | Storage device and operating method thereof | |
US20200310983A1 (en) | Controller, memory system and operating method thereof | |
CN111831579A (zh) | 控制器及其操作方法和包括控制器的存储器系统 | |
CN110781093B (zh) | 能够改变映射高速缓存缓冲器大小的数据存储设备 | |
CN111752858A (zh) | 控制器、存储器系统及其操作方法 | |
KR20200115831A (ko) | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 | |
KR102434840B1 (ko) | 데이터 저장 장치 | |
KR20210156090A (ko) | 저장 장치 및 그 동작 방법 | |
US11409473B2 (en) | Data storage device and operating method thereof | |
CN112286444B (zh) | 控制器以及包括控制器的存储器系统 | |
US20200250082A1 (en) | Controller, memory system, and operating method thereof | |
CN113805793A (zh) | 存储装置及其操作方法 | |
CN112231240A (zh) | 控制器、存储器系统及其操作方法 | |
CN112201294A (zh) | 控制器、存储器系统及其操作方法 | |
US11314461B2 (en) | Data storage device and operating method of checking success of garbage collection operation | |
US11216384B2 (en) | Controller, memory system and operating method of the controller | |
CN110196817B (zh) | 数据存储装置及该数据存储装置的操作方法 | |
CN111752472A (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210108 |