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

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

Info

Publication number
CN110010185B
CN110010185B CN201811406820.5A CN201811406820A CN110010185B CN 110010185 B CN110010185 B CN 110010185B CN 201811406820 A CN201811406820 A CN 201811406820A CN 110010185 B CN110010185 B CN 110010185B
Authority
CN
China
Prior art keywords
program
count
read
memory
percentage
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
Application number
CN201811406820.5A
Other languages
English (en)
Other versions
CN110010185A (zh
Inventor
郑相焄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Hynix Inc
Original Assignee
SK Hynix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SK Hynix Inc filed Critical SK Hynix Inc
Publication of CN110010185A publication Critical patent/CN110010185A/zh
Application granted granted Critical
Publication of CN110010185B publication Critical patent/CN110010185B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3463Circuits or methods to detect overprogrammed nonvolatile memory cells, usually during program verification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

本发明提供了一种存储器系统。该存储器系统包括:非易失性存储器装置,包括多个存储器单元;控制器,包括控制单元和随机存取存储器,并且被配置成通过将编程验证电压施加至待利用编程数据编程的存储器单元来确定编程数据是否被编程,其中控制单元确定从主机装置接收的读取请求的计数和从主机装置接收的编程请求的计数的百分比,并基于百分比来调整编程验证电压的电平。

Description

存储器系统及其操作方法
相关申请的交叉引用
本申请要求于2018年1月4日向韩国知识产权局提交的申请号为10-2018-0001052的韩国申请的优先权,其通过引用整体并入本文。
技术领域
各种实施例总体涉及一种存储器系统,并且更特别地,涉及一种包括非易失性存储器装置的存储器系统。
背景技术
存储器系统可以被配置成响应于来自外部装置的写入请求,存储从外部装置提供的数据。而且,存储器系统可以被配置成响应于来自外部装置的读取请求,将存储的数据提供至外部装置。外部装置是能够处理数据的电子装置。例如,合适的外部装置可以包括计算机、数码相机或移动电话。存储器系统可以通过内置在外部装置中而操作,或者可以通过以可分离的形式制造并且联接至外部装置而操作。
由于不存在机械驱动部件,因此使用存储器装置的存储器系统提供优良的稳定性、耐用性、高信息访问速度以及低功耗的优点。具有这些优点的存储器系统包括通用串行总线(USB)存储器装置、具有各种接口的存储卡、通用闪存(UFS)装置以及固态硬盘(SSD)。
发明内容
本发明的各种实施例涉及一种存储器系统,其能够基于主机的请求模式来调整待在非易失性存储器装置中执行的操作的速度性能。本发明的各种实施例还涉及一种存储器系统的操作方法。
在实施例中,存储器系统可以包括:非易失性存储器装置,其包括多个存储器单元;以及控制器,其包括控制单元和随机存取存储器,并且被配制成通过将编程验证电压施加至待利用编程数据编程的存储器单元来确定编程数据是否被编程,其中控制单元确定从主机装置接收的读取请求的计数和从主机装置接收的编程请求的计数的百分比,并基于百分比来调整编程验证电压的电平。
在实施例中,一种存储器系统可以包括:控制器;以及非易失性存储器装置,其被配置成响应于从控制器接收的编程命令对编程数据执行编程操作,其中控制器确定从主机装置接收的读取请求的计数和从主机装置接收的编程请求的计数的百分比,并且执行控制任务,以基于百分比来调整待利用编程数据编程的存储器单元的阈值电压分布。
在实施例中,一种操作存储器系统的方法可以包括:由控制器确定从主机装置接收的读取请求的计数和从主机装置接收的编程请求的计数的百分比;并且由控制器基于百分比来控制将编程数据编程至非易失性存储器装置的操作。
在根据本发明的各种实施例的存储器系统中,通过基于主机的请求模式来调整编程操作和读取操作的速度性能,可以提高装置的效率。
从以下结合附图的描述,本发明的这些和其它特征和优点对于本发明所属领域的普通技术人员将变得显而易见。
在实施例中,一种控制器的操作方法,该方法包括:当在预定时间内从主机提供的编程请求比读取请求大第一量时,控制非易失性存储器装置以利用比原始编程验证电压更低的编程验证电压来执行编程操作;并且当在预定时间内从主机提供的编程请求比读取请求小第二量时,控制非易失性存储器装置以利用比原始编程验证电压更高的编程验证电压来执行编程操作。
附图说明
图1是根据本发明的实施例的存储器系统的简化示意框图。
图2是单层单元(SLC)的编程状态的阈值电压分布图的示例。
图3是示出根据本发明的实施例的在每个存储器单元中存储1位的情况下的验证电压电平表的示例的示图。
图4是根据本发明的实施例的在调整针对SLC的验证电压的电平的情况下存储器单元的编程状态的阈值电压分布图的示例。
图5是多层单元(MLC)的编程状态的阈值电压分布的示例,每个多层单元存储两位。
图6是根据本发明的实施例的在每个存储器单元中存储两位的情况下的验证电压电平表的示例。
图7是根据本发明的实施例的在调整验证电压的电平的情况下MLC的编程状态的阈值电压分布图的示例。
图8至图10是根据本发明的各种实施例的用于操作存储器系统的示例性方法的流程图。
图11是示出包括根据本发明的实施例的固态硬盘(SSD)的数据处理系统的示例的示图。
图12是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的示图。
图13是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的示图。
图14是包括示出根据本发明的实施例的存储器系统的网络系统的示例的示图。
图15是示出根据本发明的实施例的在存储器系统中包括的非易失性存储器装置的示例的框图。
具体实施方式
在本发明中,在结合附图阅读以下示例性实施例之后,用于实现这些实施例的优点、特征和方法将变得更加显而易见。然而,本发明可以不同的形式实现,并且不应该被解释为限于本文阐述的实施例。相反,提供这些实施例以详细描述本发明,到本发明所属领域的技术人员可以容易地实施本发明的技术构思的程度。
在本文中将理解的是,本发明的实施例不限于附图中所示的细节,并且附图不一定按比例绘制,并且在某些情况下,比例可能被夸大以便更清楚地描绘本发明的某些特征。虽然本文使用了特定术语,但是将理解的是,本文使用的术语仅用于描述特定实施例的目的,并不旨在限制本发明的范围。
如本文使用的,术语“和/或”包括相关所列项目中的一个或多个中的任意和所有组合。将理解的是,当元件被称为在另一个元件“上”、“连接至”或“联接至”另一元件时,其可以直接在另一元件上、连接至或联接至另一元件,或可存在一个或多个中间元件。如本文所使用的,除非上下文另有明确说明,否则单数形式也旨在包括复数形式。将进一步理解的是,当在本说明书中使用时,术语“包括”和/或“包括有”指定至少一个所述特征、步骤、操作和/或元件的存在,但并不排除一个或多个其它特征、步骤、操作和/或其元件的存在或添加。
本发明所属领域的技术人员还应当理解的是,在某些情况下,在描述本发明的各种实施例时可以描述实践本发明可能不需要的一些细节。
而且,在一些情况下,如本发明所属领域的技术人员应当理解的时,关于实施例所描述的特征也可以根据需要在另一实施例中使用,而不脱离本发明的范围。
在下文中,将通过实施例的各种示例参照附图在下面描述存储器系统及其操作方法。
图1是根据本发明的实施例的存储器系统100的示例性配置的简化示意框图。
存储器系统100可以存储待由诸如移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、TV、车载信息娱乐系统等的主机装置400访问的数据。
根据主机接口存储器系统100可以被制造为各种种类的存储装置中的任意一种,该主机接口表示与主机装置400的传输协议。例如,存储器系统100可以被配置成诸如下列的各种种类的存储装置中的任意一种:固态硬盘(SSD),MMC、eMMC、RS-MMC和微型MMC形式的多媒体卡,SD、迷你-SD和微型-SD形式的安全数字卡,通用串行总线(USB)存储装置,通用闪存(UFS)装置,个人计算机存储卡国际协会(PCMCIA)卡型存储装置,外围组件互连(PCI)卡型存储装置,高速PCI(PCI-E)卡型存储装置,紧凑型闪存(CF)卡,智能媒体卡,记忆棒等。
存储器系统100可以被制造为诸如下列各种封装类型中的任意一种:堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
存储器系统100可以包括控制器200。控制器200可以包括控制单元210、随机存取存储器220、主机接口单元230和存储器控制单元240。
控制单元210可以是微控制单元(MCU)或中央处理单元(CPU)。控制单元210可以处理从主机装置400传输的请求RQ。为了处理该请求RQ,控制单元210可以驱动加载在随机存取存储器220中的代码类型的指令或算法,例如固件(FW),并且可以控制各种内部功能块和非易失性存储器装置300。
随机存取存储器220可以是动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)。随机存取存储器220可以存储待由控制单元210驱动的固件(FW)。而且,随机存取存储器220可以存储用于驱动固件(FW)的数据,例如,元数据。也就是说,随机存取存储器220可以用作控制单元210的工作存储器。
主机接口单元230可以接口连接主机装置400和存储器系统100。例如,主机接口单元230可以通过诸如例如下列的任何合适的传输协议,即通过使用主机接口与主机装置400通信:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)和通用闪存(UFS)。
存储器控制单元240可以根据控制单元210的控制来控制非易失性存储器装置300。存储器控制单元240还可以被称为存储器接口单元。存储器控制单元240可以将多个信号提供至非易失性存储器装置300以控制非易失性存储器装置300,其中多个信号例如包括命令、地址、控制信号等。存储器控制单元240可以将数据提供至非易失性存储器装置300或者可以被提供来自非易失性存储器装置300的数据。
在操作中,控制器200可以从主机装置400接收操作请求,并且可以将与接收到的操作请求相对应的操作命令传输至非易失性存储器装置300。可以由控制单元210基于从主机装置400接收的请求生成操作命令。可选地,操作命令可以是从主机装置400接收的请求的一部分。
例如,控制器200可以从主机装置400接收对编程数据的编程请求RQ_PGM,并且可以生成编程命令并将编程命令传输至非易失性存储器装置300,该编程命令包括编程数据和指定非易失性存储器装置300的、将存储编程数据的地址。再例如,控制器200可以从主机装置400接收对读取数据的读取请求RQ_READ,并且可以生成读取命令并将读取命令传输至非易失性存储器装置300,该读取命令包括指定非易失性存储器装置300的、存储待被读取的读取数据的地址。控制器200可以通过主机接口单元230从主机装置400接收操作请求,并且可以通过存储器控制单元240将操作命令传输至非易失性存储器装置300。
图2是SLC的编程状态的阈值电压分布图的示例。SLC仅存储1位信息。在描述图2中,假设存储器单元被擦除或编程成具有擦除状态E或编程状态P,以作为默认状态。在下文中,将参照图1和图2进行描述。
在编程验证操作中,编程验证电压Vvrf_P被施加到所选择存储器单元的字线。编程验证电压Vvrf_P是适于验证存储器单元是否被编程到编程状态P的电压。当根据编程验证电压Vvrf_P读出存储器单元时,具有高于编程验证电压Vvrf_P的阈值电压的存储器单元被确定为关断单元(off-cell)。根据实施例,具有高于编程验证电压Vvrf_P的阈值电压的存储器单元可以被确定为存储数据“0”的关断单元。确定为关断单元的存储器单元被确定为编程完成。相反,当根据编程验证电压Vvrf_P读出存储器单元时,具有低于编程验证电压Vvrf_P的阈值电压的存储器单元被确定为导通单元(on-cell)。根据实施例,具有低于编程验证电压Vvrf_P的阈值电压的存储器单元可以被确定为存储数据“1”的导通单元。确定为导通单元的存储器单元被确定为编程未完成。
在读取操作中,读取电压Vrd_P被施加到所选择存储器单元的字线。读取电压Vrd_P是适于将处于擦除状态E的存储器单元与处于编程状态P的存储器单元区分开的电压。当根据读取电压Vrd_P读出存储器单元时,具有高于读取电压Vrd_P的阈值电压的存储器单元被确定为关断单元。根据实施例,具有高于读取电压Vrd_P的阈值电压的存储器单元可被确定为存储数据“0”的关断单元。确定为关断单元的存储器单元被确定为处于编程状态P。相反,当根据读取电压Vrd_P读出存储器单元时,具有低于读取电压Vrd_P的阈值电压的存储器单元被确定为导通单元。根据实施例,具有低于读取电压Vrd_P的阈值电压的存储器单元可被确定为存储数据“1”的导通单元。确定为导通单元的存储器单元被确定为在擦除状态E。
如上所述,通过施加编程验证电压Vvrf_P来确定编程数据是否被编程完成,其中编程验证电压Vvrf_P具有预定固定电平。而且,在对读取数据的读取操作中,通过施加具有预定固定电平的读取电压Vrd_P,基于确定为导通单元的存储器单元的数量来确定是否完成读取操作。在通过施加固定编程验证电压Vvrf_P执行编程操作的情况下,用于编程相同数据(例如,“0”)的时间可以在预定时间范围内。类似地,在通过施加固定读取电压Vrd_P来执行读取操作的情况下,用于读取相同数据(例如,“0”)的时间也可以在预定时间范围内。
从主机装置400输出的请求,例如编程请求RQ_PGM和读取请求RQ_READ的百分比可以根据主机装置400的请求模式而变化。例如,在主机装置400主要将数据存储在存储器系统100中的情况下,编程请求RQ_PGM的计数可以高于读取请求RQ_READ的计数;并且相反,在主机装置400主要从存储器系统100读取数据的情况下,读取请求RQ_READ的计数可以高于编程请求RQ_PGM的计数。在不考虑主机装置400的请求模式而以常规速度执行编程操作和读取操作的情况下,会产生这样缺点:即使需要快速执行编程操作和读取操作之间中的特定一种操作时,也无法通过存储器系统100来适当满足这种需求。
在根据实施例的存储器系统100中,通过基于主机装置400的请求模式调整编程验证电压的电平,可以调整编程操作和读取操作的操作速度。这将在下面描述。
图3是示出根据本发明的实施例的在每个存储器单元中存储1位的情况下的验证电压电平表的示例的示图。
在图3中,作为示例描述了读取请求计数和编程请求的计数的百分比的五个条目。而且,描述了与读取请求和编程请求的百分比的五个条目中的每一个相对应的验证电压电平。注意的是,这仅是示例,并且条目的数量可以根据设计而变化。
根据实施例,随机存取存储器220可以存储验证电压电平表,该表包括基于对于每个请求模式的读取请求计数和编程请求的计数百分比范围,与多个请求模式相对应的编程验证电压的电平。
参照图1和3,验证电压电平表可以包括索引字段、读取请求RQ_READ的计数百分比字段、编程请求RQ_PGM的计数百分比字段和验证电压电平字段。
根据图3,索引1第一条目具有验证电压电平Vvrf_P1,当确定读取请求RQ_READ的计数落在从0至20%的百分比范围内并且编程请求RQ_PGM的计数落在从80%至100%的百分比范围内时施加该验证电压电平Vvrf_P1。
索引2第二条目具有验证电压电平Vvrf_P2,当确定读取请求RQ_READ的计数落在从21%至40%的百分比范围内并且编程请求RQ_PGM的计数落在从60%至79%的百分比范围内时施加该验证电压电平Vvrf_P2。
索引3第三条目具有验证电压电平Vvrf_P3,当确定读取请求RQ_READ的计数落在从41%至60%的百分比范围内并且编程请求RQ_PGM的计数落在从40%至59%的百分比范围内时施加该验证电压电平Vvrf_P3。
索引4第四条目具有验证电压电平Vvrf_P4,当确定读取请求RQ_READ的计数落在从61%至80%的百分比范围内并且编程请求RQ_PGM的计数落在从20%至39%的百分比范围内时施加该验证电压电平Vvrf_P4。
索引5第五条目具有验证电压电平Vvrf_P5,当确定读取请求RQ_READ的计数落在从81%至100%的百分比范围内并且编程请求RQ_PGM的计数落在从0至19%的百分比范围内时施加该验证电压电平Vvrf_P5。
根据实施例,控制单元210可以基于如图3中所例示的验证电压电平表来调整编程验证电压电平。
图4是根据本发明的实施例的有助于解释在调整SLC的验证电压的电平的情况下的存储器单元的编程状态的阈值电压分布图的示例。为了便于说明,假设图4中所示的读取电压Vrd_P与上述图2的读取电压Vrd_P相同。而且,假设图4的编程状态P3与上述图2的编程状态P相同。即,假设存储器单元具有与参照图2描述的阈值电压分布相同的阈值电压分布,将参照图4进行描述。
参照图1、图3和图4,根据实施例的存储器系统100可以包括控制器200和非易失性存储器装置300。
控制器200可以确定从主机装置400接收的读取请求RQ_READ的计数和从主机装置400接收的编程请求RQ_PGM的计数的百分比,并且可以基于所确定百分比来调整编程验证电压的电平。
根据实施例,当读取请求RQ_READ的计数大于编程请求RQ_PGM的计数时,可以增大编程验证电压的电平,并且当读取请求RQ_READ的计数小于编程请求RQ_PGM的计数时,可以减小编程验证电压的电平。
如图4所示,编程验证电压的电平从编程验证电压Vvrf_P1增大到编程验证电压Vvrf_P5。假设在根据编程验证电压Vvrf_P1、编程验证电压Vvrf_P2、编程验证电压Vvrf_P3、编程验证电压Vvrf_P4和编程验证电压Vvrf_P5对存储器单元成功编程的情况下,成功编程的存储器单元分别具有编程状态P1、编程状态P2、编程状态P3、编程状态P4和编程状态P5。如图4中所例示,顺序具有从编程状态P5至编程状态P1的编程状态的存储器单元具有越来越低和越来越宽的阈值电压分布。
根据实施例,可以在存储器单元具有编程状态P3的条件下来确定读取请求RQ_READ的计数与编程请求RQ_PGM的计数的百分比。编程验证电压电平Vvrf_P3可以是参考编程验证电压电平。
在编程请求RQ_PGM的计数大于读取请求RQ_READ的计数的情况下,可以调整编程验证电压电平以从编程验证电压电平Vvrf_P3减小。例如,可以选择编程验证电压Vvrf_P1以使编程验证电压从编程验证电压电平Vvrf_P3减小。如图所示,在与编程验证电压电平Vvrf_P1相对应的编程状态P1下,与对应于编程验证电压电平Vvrf_P3的编程状态P3相比,阈值电压分布范围广,并且分布有具有接近于读取电压Vrd_P的电压的相对多的存储器单元。因此,在从编程验证电压Vvrf_P3调整到编程验证电压Vvrf_P1的情况下,在对存储器单元进行编程操作以具有编程状态P3期间,被确定为关断单元的存储器单元的数量可能增加,并且编程操作的操作速度可能变得更高。换句话说,随着施加编程电压的次数减少(即,执行编程验证操作所花费的时间减少),完成编程操作所需的时间可能会减少。
在从编程验证电压Vvrf_P3减小到编程验证电压Vvrf_P1的情况下,当为读取操作施加读取电压Vrd_P,其中读取操作针对通过施加编程验证电压Vvrf_P1而被编程成具有编程状态P3的数据时,与当施加编程验证电压Vvrf_P3时相比,被确定为关闭单元的存储器单元的数量可能增加,并且因此,错误校正操作失败的情况的数量可能增加。即,施加读取电压的次数可能增加,并且因此,读取操作的操作速度会变更低。
另一方面,在读取请求RQ_READ的计数大于编程请求RQ_PGM的计数的情况下,编程验证电压电平可以从编程验证电压电平Vvrf_P3增大。例如,可以选择编程验证电压Vvrf_P5以使编程验证电压从编程验证电压电平Vvrf_P3增加。如图所示,在与编程验证电压电平Vvrf_P5相对应的编程状态P5下,当与对应于编程验证电压电平Vvrf_P3的编程状态P3相比时,阈值电压分布相对集中,并且分布有具有接近于读取电压Vrd_P的电压的相对少的存储器单元。因此,在从编程验证电压Vvrf_P3调整到编程验证电压Vvrf_P5的情况下,在对存储器单元进行编程操作以具有编程状态P3期间,被确定为关闭单元的存储器单元的数量可能增加,并且编程操作的操作速度可能变得更低。换句话说,随着施加编程电压的次数增多(即,执行编程验证操作所花费的时间增加),完成编程操作所需的时间可能会增加。
在从编程验证电压Vvrf_P3增大到编程验证电压Vvrf_P5的情况下,当为读取操作施加读取电压Vrd_P,其中读取操作针对通过施加编程验证电压Vvrf_P5而被编程成具有编程状态P3的数据时,与当施加编程验证电压Vvrf_P3时相比,被确定为关断单元的存储器单元的数量可能减少,并且因此,错误校正操作失败的情况的数量可能减少。即,施加读取电压的次数可能减少,并且因此,读取操作的操作速度会变更高。
根据本实施例,根据表示主机装置400的请求模式的读取请求RQ_READ的计数和编程请求RQ_PGM的计数的百分比来对编程验证电压的电平的调整会导致对读取操作和编程操作的操作速度的调整,并且从而可以提高装置的利用效率。详细地,在主机装置400主要从存储器系统100读取数据或具有高百分比的读取请求的情况下,可以通过提高编程验证电压的电平来缩短执行读取操作所需的时间,并且在主机装置400主要将数据存储在存储器系统100中或具有高百分比的编程请求的情况下,可以通过降低编程验证电压的电平来减少执行编程操作所需的时间。
图5是在每个存储器单元中存储两位的情况下MLC的编程状态的阈值电压分布图的示例。
参照图5,将作为示例描述第二读取电压Vrd_P20用作用于读取最低有效位(LSB)数据的电压,并且第一读取电压Vrd_P10和第三读取电压Vrd_P30用作用于读取最高有效位(MSB)数据的电压。然而,如果将由擦除状态E和第一至第三编程状态P10、P20和P30表示的位数据符号设置得与图5的示例不同,则可以相应地改变用于读取LSB数据的读取电压和用于读取MSB数据的读取电压。
参照图5,根据多位数据,即LSB数据和MSB数据,可以擦除或编程2位多层单元以具有与擦除状态E和多个编程状态P10、P20和P30中的任意一种相对应的阈值电压分布。在读取操作中,可以将具有在擦除状态E和第一编程状态P10之间的电压电平的第一读取电压Vrd_P10、具有在第一编程状态P10和第二编程状态P20之间的电压电平的第二读取电压Vrd_P20以及具有在第二编程状态P20和第三编程状态P30之间的电压电平的第三读取电压Vrd_P30中的任意一种施加至存储器单元。
如果施加第二读取电压Vrd_P20,则可以将具有擦除状态E和第一编程状态P10的阈值电压分布的存储器单元确定为存储LSB数据“1”的导通单元,并且可以将具有第二编程状态P20和第三编程状态P30的阈值电压分布的存储器单元确定为存储LSB数据“0”的关断单元。
如果施加第一读取电压Vrd_P10,则可以将具有擦除状态E的阈值电压分布的存储器单元确定为存储MSB数据“1”的导通单元,并且可以将具有第一编程状态P10的阈值电压分布的存储器单元确定为存储MSB数据“0”的关断单元。
如果施加第三读取电压Vrd_P30,则可以将具有第二编程状态P20的阈值电压分布的存储器单元确定为导通单元,并且可以确定具有第三编程状态P30的阈值电压分布的存储器单元确定为关断单元。
也就是说,通过施加第一读取电压Vrd_P10和第三读取电压Vrd_P30,可以区分存储MSB数据“0”的存储器单元和存储MSB数据“1”的存储器单元。
如上面参照图2所述,从主机装置400输出的请求的百分比可以根据主机装置400的请求模式而变化。在不考虑主机装置400的请求模式而以常规速度执行编程操作和读取操作的情况下,可能会产生缺点:即使需要快速执行编程操作和读取操作之间中的特定一种操作时,也无法适当通过存储器系统100来满足这种需求。
在根据实施例的存储器系统100中,通过基于主机装置400的请求模式来调整编程验证电压的电平,可以调整编程操作和读取操作的操作速度。
图6是示出根据本发明的实施例的在每个存储器单元中存储两位的情况下的验证电压电平表的示例的示图。
在图6中,作为示例描述了读取请求计数和编程请求计数的百分比的五个条目以及与其相对应的验证电压电平。然而,这仅用于说明目的,并且将注意的是,条目的数量可以变化。
根据实施例,随机存取存储器220可以存储验证电压电平表,该表包括与读取请求计数和编程请求计数的多个百分比相对应的编程验证电压的电平。
如上面参照图5所述,在每个存储器单元中存储两位的情况下,可以使用具有三个不同电平的读取电压。而且,可以使用具有三个不同电平的读取电压。
参照图1和图6,验证电压电平表可以包括索引字段、读取请求RQ_READ的计数百分比字段、编程请求RQ_PGM的计数百分比字段和验证电压电平字段。
索引1第一条目具有编程验证电压电平Vvrf_P11、Vvrf_P21和Vvrf_P31,当确定读取请求RQ_READ的计数落在从0至20%的百分比范围内并且编程请求RQ_PGM的计数落在从80%至100%的百分比范围内时施加该编程验证电压电平Vvrf_P11、Vvrf_P21和Vvrf_P31。
索引2第二条目具有编程验证电压电平Vvrf_P12、Vvrf_P22和Vvrf_P32,当确定读取请求RQ_READ的计数落在从21%至40%的百分比范围内并且编程请求RQ_PGM的计数落在从60%至79%的百分比范围内时施加该编程验证电压电平Vvrf_P12、Vvrf_P22和Vvrf_P32。
索引3第三条目具有编程验证电压电平Vvrf_P13、Vvrf_P23和Vvrf_P33,当确定读取请求RQ_READ的计数落在从41%至60%的百分比范围内并且编程请求RQ_PGM的计数落在从40%至59%的百分比范围内时施加该编程验证电压电平Vvrf_P13、Vvrf_P23和Vvrf_P33。
索引4第四条目具有编程验证电压电平Vvrf_P14、Vvrf_P24和Vvrf_P34,当确定读取请求RQ_READ的计数落在从61%至80%的百分比范围内并且编程请求RQ_PGM的计数落在从20%至39%的百分比范围内时施加该编程验证电压电平Vvrf_P14、Vvrf_P24和Vvrf_P34。
索引5第五条目具有编程验证电压电平Vvrf_P15、Vvrf_P25和Vvrf_P35,当确定读取请求RQ_READ的计数落在从81%至100%的百分比范围内并且编程请求RQ_PGM的计数落在从0至19%的百分比范围内时施加该编程验证电压电平Vvrf_P15、Vvrf_P25和Vvrf_P35。
根据实施例,在每个存储器单元中存储n(n是等于或大于2的整数)位的情况下,控制单元210可以基于如图5中所例示的验证电压电平表来调整编程验证电压电平。例如,在每个存储器单元(TLC:三层单元)中存储三位的情况下,可以使用具有七个不同电平的编程验证电压,并且验证电压电平表的每个条目可以具有一组七个不同的编程验证电压电平。
图7是根据本发明的实施例的有助于解释在调整MLC的验证电压的电平的情况下的存储器单元的编程状态的阈值电压分布图的示例。为了便于说明,假设图7中所示的读取电压Vrd_P10、Vrd_P20和Vrd_P30与上述图5的读取电压Vrd_P10、Vrd_P20和Vrd_P30相同。而且,假设图7的编程状态P13、编程状态P23和编程状态P33分别与上述图5的编程状态P10、编程状态P20和编程状态P30相同。
参照图1、图6和图7,根据实施例的存储器系统100可以包括控制器200和非易失性存储器装置300。
控制器200可以确定从主机装置400接收的读取请求RQ_READ的计数和从主机装置400接收的编程请求RQ_PGM的计数的百分比,并且可以基于所确定百分比来调整编程验证电压的电平。
根据实施例,当读取请求RQ_READ的计数大于编程请求RQ_PGM的计数时,可以增加编程验证电压的电平。根据实施例,当读取请求RQ_READ的计数小于编程请求RQ_PGM的计数时,可以减小编程验证电压的电平。
在下文中,为了便于说明,将对图6的验证电压电平表的索引1、索引3和索引5的验证电压电平进行描述。另外,虽然将对编程状态中的最低电平的编程状态P11、P13和P15进行描述,但是将注意的是,相同的原理可以应用于图5中所示的编程状态P20和编程状态P30。
如图7所示,编程验证电压Vvrf_P11、编程验证电压Vvrf_P21和编程验证电压Vvrf_P31分别具有低于编程验证电压Vvrf_P13、编程验证电压Vvrf_P23和编程验证电压Vvrf_P33的电平。在根据编程验证电压Vvrf_P11和编程验证电压Vvrf_P13对存储器单元成功编程的情况下,成功编程的存储器单元可以具有编程状态P11和编程状态P13。
而且,编程验证电压Vvrf_P15、编程验证电压Vvrf_P25和编程验证电压Vvrf_P35分别具有高于编程验证电压Vvrf_P13、编程验证电压Vvrf_P23和编程验证电压Vvrf_P33的电平。在根据编程验证电压Vvrf_P15和编程验证电压Vvrf_P13对存储器单元成功编程的情况下,成功编程的存储器单元可以具有编程状态P15和编程状态P13。
如图7中所例示,具有从编程状态P15至编程状态P11的顺序编程状态的存储器单元具有越来越低和越来越宽的阈值电压分布;并且具有从编程状态P25到编程状态P21的顺序编程状态的存储器单元和具有从编程状态P25到编程状态P21的顺序编程状态的存储器单元也是如此。
根据实施例,可以在存储器单元具有编程状态P13的条件下来确定读取请求RQ_READ的计数和编程请求RQ_PGM的计数的百分比。编程验证电压电平Vvrf_P13可以是参考编程验证电压电平。
在编程请求RQ_PGM的计数大于读取请求RQ_READ的计数的情况下,可以调整编程验证电压电平以从编程验证电压电平Vvrf_P13减小。例如,可以选择编程验证电压Vvrf_P11以使编程验证电压从编程验证电压电平Vvrf_P13减小。如图所示,在与编程验证电压电平Vvrf_P11相对应的编程状态P11下,与对应于编程验证电压电平Vvrf_P13的编程状态P13相比,阈值电压分布范围广,并且分布有具有接近于读取电压Vrd_P10的电压的相对多的存储器单元。因此,在从编程验证电压Vvrf_P13调整到编程验证电压Vvrf_P11的情况下,在对存储器单元进行编程操作以具有编程状态P13期间,被确定为关断单元的存储器单元的数量可能增加,并且编程操作的操作速度可能变得更高。换句话说,随着施加编程电压的次数减少(即,执行编程验证操作所花费的时间减少),可能会缩短完成编程操作所需的时间。
在从编程验证电压Vvrf_P13减小到编程验证电压Vvrf_P11的情况下,当为读取操作施加读取电压Vrd_P10,其中读取操作针对通过施加编程验证电压Vvrf_P11而被编程成具有编程状态P13的数据时,与当通过施加编程验证电压Vvrf_P13而执行编程操作时相比,确定为存储MSB数据“1”的导通单元的存储器单元的数量可能增加,并且因此,错误校正操作失败的情况的数量可以增加。即,施加读取电压的次数的数量可能增加,并且因此,读取操作的操作速度会变更低。
另一方面,在读取请求RQ_READ的计数大于编程请求RQ_PGM的计数的情况下,编程验证电压电平可以从编程验证电压电平Vvrf_P13增加。例如,可以选择编程验证电压Vvrf_P15以使编程验证电压从编程验证电压电平Vvrf_P13增加。如图所示,在与编程验证电压电平Vvrf_P15相对应的编程状态P15下,当与对应于编程验证电压电平Vvrf_P13的编程状态P13相比,阈值电压分布相对集中,并且分布有具有接近于读取电压Vrd_P10的电压的相对少的存储器单元。因此,在从编程验证电压Vvrf_P13调整到编程验证电压Vvrf_P15的情况下,在对存储器单元进行编程操作以具有编程状态P3期间,确定为关断单元的存储器单元的数量可能增加,并且编程操作的操作速度可能变得更低。换句话说,随着施加编程电压的次数增加(即,执行编程验证操作所花费的时间增加),完成编程操作所需的时间可能会增加。
在从编程验证电压Vvrf_P13增加到编程验证电压Vvrf_P15的情况下,当为读取操作施加读取电压Vrd_P10,其中读取操作针对通过施加编程验证电压Vvrf_P15而编程成具有编程状态P13的数据时,与当施加编程验证电压Vvrf_P13来执行编程操作时相比,被确定为存储MSB数据“1”的导通单元的存储器单元的数量可能减少,并且因此,错误校正操作失败的情况的数量可能减少。即,施加读取电压Vrd_P10的次数可能减少,并且因此,读取操作的操作速度会变更高。
根据本实施例,根据表示主机装置400的请求模式的读取请求RQ_READ和编程请求RQ_PGM的计数的百分比来对编程验证电压的电平的调整会导致对读取操作和编程操作的操作速度的调整,并且从而可以提高装置的利用效率。详细地,在主机装置400主要从存储器系统100读取数据或具有高百分比的读取请求的情况下,可以通过提高编程验证电压的电平来缩短执行读取操作所需的时间,并且在主机装置400主要将数据存储在存储器系统100中或具有高百分比的编程请求的情况下,可以通过降低编程验证电压的电平来减少执行编程操作所需的时间。
图8至图10是根据本发明的各种实施例的用于操作存储器系统的方法的流程图。
参照图1和图8,根据实施例的操作存储器系统100的方法可以包括:在步骤S200中由控制器200从主机装置400接收读取请求和编程请求的步骤、在步骤S400中由控制器200对读取请求的计数和编程请求的计数进行比较的步骤、以及在步骤S500和S600中根据比较结果来调整待施加至非易失性存储器装置300的存储器单元的编程验证电压的电平的步骤。
根据实施例,该方法可以包括在步骤S500中在读取请求的计数大于编程请求的计数的情况下增加编程验证电压电平的步骤或者在步骤S600中在读取请求的计数小于编程请求的计数的情况下减小编程验证电压电平的步骤。
根据实施例,控制器200可以确定从主机装置400接收的读取请求的计数和从主机装置400接收的编程请求的计数的百分比,并且可以基于所确定百分比来调整编程验证电压的电平。
根据实施例,随机存取存储器220可以存储验证电压电平表,该表包括与读取请求的计数和编程请求的计数的多个百分比相对应的编程验证电压的电平。
根据实施例的操作存储器系统100的方法可以包括:确定读取请求的计数和编程请求的计数的百分比的步骤(未示出)、从验证电压电平表来选择与所确定百分比相对应的编程验证电压电平的步骤(未示出)以及施加所选择编程验证电压电平的步骤(未示出)。
而且,该方法可以进一步包括:确定在验证电压电平表中包括的编程验证电压电平之中被选择预定次数的编程验证电压电平的步骤(未示出)、施加所确定编程验证电压电平的步骤(未示出)和中断对编程验证电压电平进行调整的操作的步骤(未示出)。
根据实施例,控制器200可以从主机装置400接收对编程验证电压的施加请求,并且可以通过施加所请求编程验证电压来对数据执行编程操作。
参照图1和图9,根据实施例的操作存储器系统100的方法可以包括:在步骤S100中由控制器200从主机装置400接收触发请求;在步骤S200中由控制器200从主机装置400接收读取请求和编程请求;在步骤S310中确定自从主机装置400接收到触发请求时起是否已达到参考时间;在步骤S400中当已达到参考时间时,比较读取请求的计数和的编程请求的计数;以及在步骤S500和S600中基于比较结果来调整待施加至非易失性存储器装置300的存储器单元的编程验证电压的电平。
根据实施例,可以任意设置参考时间,并且可以通过主机装置400的请求随时改变参考时间。
根据实施例,该方法可以包括在步骤S500中在读取请求的计数大于编程请求的计数的情况下增加编程验证电压电平或者在步骤S600中在读取请求的计数小于编程请求的计数的情况下减小编程验证电压电平的步骤。
根据实施例,控制器200可以确定从主机装置400接收的读取请求的计数和从主机装置400接收的编程请求的计数的百分比,并且可以基于所确定百分比来调整编程验证电压的电平。
根据实施例,随机存取存储器220可以存储验证电压电平表,该表包括与读取请求的计数和编程请求的计数的多个百分比相对应的编程验证电压的电平。
根据实施例的操作存储器系统100的方法可以进一步包括:确定读取请求的计数和编程请求的计数的百分比的步骤(未示出)、从验证电压电平表选择与所确定百分比相对应的编程验证电压电平的步骤(未示出)以及施加所选择编程验证电压电平的步骤(未示出)。
参照图1和图10,根据实施例的操作存储器系统100的方法可以包括:在步骤S100中由控制器200从主机装置400接收触发请求;在步骤S200中由控制器200从主机装置400接收读取请求和编程请求;在步骤S320中确定自从主机装置400接收到触发请求时起接收到的读取请求和编程请求的计数总和是否已经达到参考计数;在步骤400中在已经达到参考计数的情况下比较读取请求的计数和的编程请求的计数;以及在步骤S500和S600中基于比较结果来调整待施加至非易失性存储器装置300的存储器单元的编程验证电压的电平。
根据实施例,可以任意设置参考计数,并且可以通过主机装置400的请求随时改变参考计数。
根据实施例,该方法可以包括在步骤S500中在读取请求的计数大于编程请求的计数的情况下增加编程验证电压电平或者在步骤S600中在读取请求的计数小于编程请求的计数的情况下减小编程验证电压电平。
根据实施例,控制器200可以确定从主机装置400接收的读取请求的计数和从主机装置400接收的编程请求的计数的百分比,并且可以基于所确定百分比来调整编程验证电压的电平。
根据实施例,随机存取存储器220可以存储验证电压电平表,该表包括与读取请求的计数和编程请求的计数的多个百分比相对应的编程验证电压的电平。根据实施例的操作存储器系统100的方法可以进一步包括确定读取请求的计数和编程请求的计数的百分比的步骤(未示出)、从验证电压电平表选择与所确定百分比相对应的编程验证电压电平的步骤(未示出)以及施加所选择编程验证电压电平的步骤(未示出)。
图11是示出包括根据本发明的实施例的固态硬盘(SSD)的数据处理系统的示例的示图。参照图11,数据处理系统1000可以包括主机装置1100和SSD 1200。
SSD 1200可以包括控制器1210、缓冲存储器装置1220、非易失性存储器装置1231至123n、电源1240、信号连接器1250和电源连接器1260。
控制器1210可以控制SSD 1200的一般操作。控制器1210可以包括主机接口单元1211、控制单元1212、随机存取存储器1213、错误纠正码(ECC)单元1214和存储器接口单元1215。
主机接口单元1211可以通过信号连接器1250与主机装置1100交换信号SGL。信号SGL可以包括命令、地址、数据等。主机接口单元1211可以根据主机装置1100的协议接口连接主机装置1100和SSD 1200。例如,主机接口单元1211可以通过诸如下列的标准接口协议中的任何一种与主机装置1100通信:安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串列SCSI(SAS)、外围组件互连(PCI)、高速PCI(PCI-E)和通用闪存(UFS)。
控制单元1212可以分析并处理从主机装置1100输入的信号SGL。控制单元1212可以根据用于驱动SSD 1200的固件或软件来控制内部功能块的操作。随机存取存储器1213可以用作用于驱动这种固件或软件的工作存储器。
错误校正码(ECC)单元1214可以生成待被传输至非易失性存储器装置1231到123n的数据的奇偶校验数据。生成的奇偶校验数据可以与数据一起被存储在非易失性存储器装置1231至123n中。错误校正码(ECC)单元1214可以基于奇偶校验数据来检测从非易失性存储器装置1231至123n读取的数据的错误。如果检测到的错误在可校正范围内,则错误校正码(ECC)单元1214可以校正检测到的错误。
存储器接口单元1215可以根据控制单元1212的控制将诸如命令和地址的控制信号提供至非易失性存储器装置1231至123n。而且,存储器接口单元1215可以根据控制单元1212的控制与非易失性存储器装置1231至123n交换数据。例如,存储器接口单元1215可以将存储在缓冲存储器装置1220中的数据提供至非易失性存储器装置1231至123n,或者将从非易失性存储器装置1231至123n读取的数据提供至缓冲存储器装置1220。
缓冲存储器装置1220可以临时存储待被存储在非易失性存储器装置1231至123n中的数据。此外,缓冲存储器装置1220可以临时存储从非易失性存储器装置1231至123n读取的数据。临时存储在缓冲存储器装置1220中的数据可以根据控制器1210的控制被传输至主机装置1100或非易失性存储器装置1231到123n。
非易失性存储器装置1231至123n可以用作SSD 1200的存储介质。非易失性存储器装置1231至123n可以分别通过多个信道CH1至CHn与控制器1210联接。一个或多个非易失性存储器装置可以联接至一个信道。联接至每个信道的非易失性存储器装置可以联接至相同的信号总线和数据总线。
电源1240可以将通过电源连接器1260输入的电力PWR提供至SSD 1200的内部。电源1240可以包括辅助电源1241。辅助电源1241可以供应电力以在发生突然断电时使SSD1200正常终止。辅助电源1241可以包括大容量电容器。
根据主机装置1100和SSD 1200之间的接口方案,信号连接器1250可以由各种类型的连接器配置。
根据主机装置1100的电力供应方案,电源连接器1260可以由各种类型的连接器配置。
图12是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的示图。参照图12,数据处理系统2000可以包括主机装置2100和存储器系统2200。
主机装置2100可以诸如印刷电路板的板的形式配置。虽然未示出,但是主机装置2100可以包括用于执行主机装置的功能的内部功能块。
主机装置2100可以包括连接端子2110,诸如插座、插槽或连接器。存储器系统2200可以安装到连接端子2110。
存储器系统2200可以诸如印刷电路板的板的形式配置。存储器系统2200可以被称为存储器模块或存储卡。存储器系统2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231和2232、电源管理集成电路(PMIC)2240和连接端子2250。
控制器2210可以控制存储器系统2200的一般操作。控制器2210可以与图11中所示的控制器1210相同的方式配置。
缓冲存储器装置2220可以临时存储待被存储在非易失性存储器装置2231和2232中的数据。此外,缓冲存储器装置2220可以临时存储从非易失性存储器装置2231和2232读取的数据。临时存储在缓冲存储器装置2220中的数据可以根据控制器2210的控制被传输至主机装置2100或非易失性存储器装置2231和2232。
非易失性存储器装置2231和2232可以用作存储器系统2200的存储介质。
PMIC 2240可以将通过连接端子2250输入的电力提供至存储器系统2200的内部。PMIC 2240可以根据控制器2210的控制来管理存储器系统2200的电力。
连接端子2250可以联接至主机装置2100的连接端子2110。通过连接端子2250,可以在主机装置2100和存储器系统2200之间传输诸如命令、地址、数据等的信号和电力。根据主机装置2100和存储器系统2200之间的接口方案,连接端子2250可以被构造成各种类型。连接端子2250可以被设置在存储器系统2200的任何一侧上。
图13是示出包括根据本发明的实施例的存储器系统的数据处理系统的示例的示图。参照图13,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以以诸如印刷电路板的板的形式配置。虽然未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
存储器系统3200可以表面安装型封装的形式配置。存储器系统3200可以通过焊球3250安装到主机装置3100。存储器系统3200可以包括控制器3210、缓冲存储器装置3220和非易失性存储装置3230。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以与图11中所示的控制器1210相同的方式配置。
缓冲存储器装置3220可以临时存储待被存储在非易失性存储器装置3230中的数据。此外,缓冲存储器装置3220可以临时存储从非易失性存储器装置3230读取的数据。临时存储在缓冲存储器装置3220中的数据可以根据控制器3210的控制被传输至主机装置3100或非易失性存储器装置3230。
非易失性存储器装置3230可以用作存储器系统3200的存储介质。
图14是示出包括根据本发明的实施例的存储器系统的网络系统的示例的示图。参照图14,网络系统4000可以包括通过网络4500联接的服务器系统4300和多个客户端系统4410至4430。
服务器系统4300可以响应于来自多个客户端系统4410至4430的请求来服务数据。例如,服务器系统4300可以存储从多个客户端系统4410至4430提供的数据。再例如,服务器系统4300可以将数据提供至多个客户端系统4410至4430。
服务器系统4300可以包括主机装置4100和存储器系统4200。存储器系统4200可以由图1的存储器系统100、图11的SSD 1200、图12的存储器系统3200或图13的存储器系统3200来配置。
图15是示出根据本发明的实施例的存储器系统中包括的非易失性存储器装置的示例的框图。参照图15,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压发生器350和控制逻辑360。
存储器单元阵列310可以包括布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域处的存储器单元MC。
行解码器320可以通过字线WL1至WLm与存储器单元阵列310联接。行解码器320可以根据控制逻辑360的控制而操作。行解码器320可以解码从外部装置(未示出)提供的地址。行解码器320可以基于解码结果来选择并驱动字线WL1至WLm。例如,行解码器320可以将从电压发生器350提供的字线电压提供至字线WL1至WLm。
数据读取/写入块330可以通过位线BL1至BLn与存储器单元阵列310联接。数据读取/写入块330可以包括分别对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可以根据控制逻辑360的控制而操作。数据读取/写入块330可以根据操作模式而用作写入驱动器或读出放大器。例如,在写入操作中,数据读取/写入块330可以用作将从外部装置提供的数据存储在存储器单元阵列310中的写入放大器。再例如,在读取操作中,数据读取/写入块330可以用作从存储器单元阵列310读出数据读出放大器。
列解码器340可以根据控制逻辑360的控制而操作。列解码器340可以解码从外部装置提供的地址。列解码器340可以基于解码将数据读取/写入块330的、分别与位线BL1至BLn相对应的读取/写入电路RW1至RWn与数据输入/输出线(或数据输入/输出缓冲器)联接。
电压发生器350可以生成待在非易失性存储器装置300的内部操作中使用的电压。由电压发生器350生成的电压可以被施加到存储器单元阵列310的存储器单元。例如,在编程操作中产生的编程电压可以被施加到将执行编程操作的存储器单元的字线。再例如,在擦除操作中生成的擦除电压可以被施加到将执行擦除操作的存储器单元的阱区域。又例如,在读取操作中生成的读取电压可以被施加到将执行读取操作的存储器单元的字线。
控制逻辑360可以基于从外部装置提供的控制信号来控制非易失性存储器装置300的一般操作。例如,控制逻辑360可以控制非易失性存储器装置300的读取操作、写入操作和擦除操作。
对上述系统的描述可以应用于根据实施例的方法。因此,在方法中省略与上述系统的描述相同的描述。
虽然上面已经描述了各种实施例,但是本领域技术人员将理解的是,所描述的实施例仅是示例。因此,不应基于所描述的实施例来限制本文描述的存储器系统及其操作方法。

Claims (20)

1.一种存储器系统,包括:
非易失性存储器装置,包括多个存储器单元;以及
控制器,包括控制单元和随机存取存储器,并且通过将编程验证电压施加至待利用编程数据编程的存储器单元来确定所述编程数据是否被编程,
其中所述控制单元确定从主机装置接收的读取请求的计数和从所述主机装置接收的编程请求的计数的百分比,并基于所述百分比来调整所述编程验证电压的电平。
2.根据权利要求1所述的存储器系统,其中当所述读取请求的计数的百分比大于所述编程请求的计数的百分比时,所述控制单元增加所述编程验证电压的电平,并且当所述读取请求的计数的百分比小于所述编程请求的计数的百分比时,所述控制单元减小所述编程验证电压的电平。
3.根据权利要求1所述的存储器系统,其中所述控制单元从所述主机装置接收触发请求,所述触发请求开始对所述读取请求和编程请求进行计数,并且通过对从接收到所述触发请求时起接收到的读取请求和编程请求进行计数来确定所述百分比。
4.根据权利要求3所述的存储器系统,其中所述控制单元基于从接收到所述触发请求时起的预定时间内接收到的读取请求和编程请求的计数来确定所述百分比。
5.根据权利要求3所述的存储器系统,其中当从接收到所述触发请求时起接收到的读取请求和编程请求的计数的总和达到预定计数时,所述控制单元确定所述百分比。
6.根据权利要求1所述的存储器系统,
其中所述随机存取存储器存储验证电压电平表,所述验证电压电平表包括与读取请求的计数和编程请求的计数的多个百分比相对应的验证电压的电平,并且
其中所述控制单元基于所述验证电压电平表来调整所述电平。
7.根据权利要求6所述的存储器系统,其中所述控制单元将所述电平之中的被选择并施加预定次数的电平施加至所述非易失性存储器装置,并且中断调整所述验证电压的电平的操作。
8.根据权利要求6所述的存储器系统,其中所述控制单元从所述主机装置接收包括所述电平中的任意一个电平的验证电压设置请求,并将所述任意一个电平施加至所述非易失性存储器装置。
9.一种存储器系统,包括:
控制器;以及
非易失性存储器装置,响应于从所述控制器接收的编程命令对编程数据执行编程操作,
其中所述控制器:
确定从主机装置接收的读取请求的计数和从所述主机装置接收的编程请求的计数的百分比,并且
执行控制任务,以基于所述百分比来调整待利用所述编程数据编程的存储器单元的阈值电压分布。
10.根据权利要求9所述的存储器系统,其中当所述读取请求的计数大于所述编程请求的计数时,所述控制器控制待被施加至所述存储器单元的验证电压以具有高于预定电平的电平,并且当所述读取请求的计数小于所述编程请求的计数时,所述控制器控制所述验证电压以具有低于所述预定电平的电平。
11.根据权利要求9所述的存储器系统,其中所述控制器:
从所述主机装置接收触发请求,所述触发请求开始对读取请求和编程请求进行计数,并且
通过对从接收到所述触发请求时起接收到的读取请求和编程请求进行来确定所述百分比。
12.根据权利要求11所述的存储器系统,其中所述控制器基于从接收到所述触发请求时起的预定时间内接收到的读取请求和编程请求的计数来确定所述百分比。
13.根据权利要求11所述的存储器系统,其中当从接收到所述触发请求时起接收到的读取请求和编程请求的计数的总和达到预定计数时,所述控制器确定所述百分比。
14.一种操作存储器系统的方法,包括:
由控制器确定从主机装置接收的读取请求的计数和从所述主机装置接收的编程请求的计数的百分比;并且
由所述控制器基于所述百分比来控制将编程数据编程至非易失性存储器装置的操作。
15.根据权利要求14所述的方法,其中控制所述操作包括:
调整待被施加至所述非易失性存储器装置的存储器单元的编程验证电压的电平。
16.根据权利要求15所述的方法,其中控制所述操作包括:
当所述读取请求的计数大于所述编程请求的计数时,增加所述电平。
17.根据权利要求15所述的方法,其中控制所述操作包括:
当所述读取请求的计数小于所述编程请求的计数时,减小所述电平。
18.根据权利要求15所述的方法,进一步包括:
由所述控制器从所述主机装置接收触发请求,所述触发请求开始对所述读取请求和所述编程请求进行计数。
19.根据权利要求18所述的方法,其中控制所述操作包括:
由所述控制器确定从接收到所述触发请求时起是否到达预定参考时间;并且
基于直到所述参考时间所确定的所述百分比来调整所述电平。
20.根据权利要求18所述的方法,其中控制所述操作包括:
由所述控制器确定从接收到所述触发请求时起接收到的读取请求和编程请求的计数的总和是否达到预定参考计数;并且
当确定达到所述参考计数时,基于直到达到所述参考计数所确定的所述百分比来调整所述电平。
CN201811406820.5A 2018-01-04 2018-11-23 存储器系统及其操作方法 Active CN110010185B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0001052 2018-01-04
KR1020180001052A KR102421103B1 (ko) 2018-01-04 2018-01-04 컨트롤러, 이를 포함하는 메모리 시스템 및 그것들의 동작 방법

Publications (2)

Publication Number Publication Date
CN110010185A CN110010185A (zh) 2019-07-12
CN110010185B true CN110010185B (zh) 2023-07-11

Family

ID=67059784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811406820.5A Active CN110010185B (zh) 2018-01-04 2018-11-23 存储器系统及其操作方法

Country Status (3)

Country Link
US (3) US10431316B2 (zh)
KR (1) KR102421103B1 (zh)
CN (1) CN110010185B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110870015B (zh) * 2019-10-18 2021-03-12 长江存储科技有限责任公司 对存储器件进行编程和验证的方法以及相关的存储器件
KR20220075571A (ko) 2020-11-30 2022-06-08 삼성전자주식회사 비휘발성 메모리 장치의 데이터 기입 방법, 이를 수행하는 비휘발성 메모리 장치 및 이를 이용한 메모리 시스템의 구동 방법
KR20230045334A (ko) 2021-09-28 2023-04-04 에스케이하이닉스 주식회사 메모리 장치 및 메모리 장치의 동작방법
KR102626430B1 (ko) * 2021-09-30 2024-01-17 주식회사 와이앤와이 Smt 공정의 다채널 데이터 라이트/검증 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102890621A (zh) * 2011-07-22 2013-01-23 弗森-艾奥公司 确定固态存储介质配置参数的装置、系统和方法
CN106663043A (zh) * 2014-05-30 2017-05-10 桑迪士克科技有限责任公司 用于基于动态的字线的三维存储器装置的配置的方法和系统
CN107134295A (zh) * 2016-02-26 2017-09-05 三星电子株式会社 存储器诊断系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7734854B2 (en) * 2008-01-04 2010-06-08 International Business Machines Corporation Device, system, and method of handling transactions
US8085591B2 (en) * 2008-05-20 2011-12-27 Micron Technology, Inc. Charge loss compensation during programming of a memory device
KR20140088386A (ko) * 2013-01-02 2014-07-10 에스케이하이닉스 주식회사 반도체 장치 및 이의 동작 방법
KR102070667B1 (ko) * 2013-08-26 2020-01-29 삼성전자주식회사 비휘발성 메모리 장치의 구동 방법
KR102190694B1 (ko) * 2014-03-14 2020-12-14 삼성전자주식회사 불휘발성 메모리 시스템 및 그것의 동작 방법
KR102233074B1 (ko) * 2014-10-08 2021-03-30 삼성전자주식회사 저장 장치 및 그것의 신뢰성 검증 방법
US10585623B2 (en) * 2015-12-11 2020-03-10 Vivante Corporation Software defined FIFO buffer for multithreaded access

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102890621A (zh) * 2011-07-22 2013-01-23 弗森-艾奥公司 确定固态存储介质配置参数的装置、系统和方法
CN106663043A (zh) * 2014-05-30 2017-05-10 桑迪士克科技有限责任公司 用于基于动态的字线的三维存储器装置的配置的方法和系统
CN107134295A (zh) * 2016-02-26 2017-09-05 三星电子株式会社 存储器诊断系统

Also Published As

Publication number Publication date
CN110010185A (zh) 2019-07-12
KR20190083427A (ko) 2019-07-12
US20200402598A1 (en) 2020-12-24
US10431316B2 (en) 2019-10-01
US20190206501A1 (en) 2019-07-04
US10734086B2 (en) 2020-08-04
KR102421103B1 (ko) 2022-07-14
US20200027513A1 (en) 2020-01-23
US11145375B2 (en) 2021-10-12

Similar Documents

Publication Publication Date Title
CN107799149B (zh) 数据存储装置及其操作方法
US10963339B2 (en) Data storage device and operating method thereof
CN110010185B (zh) 存储器系统及其操作方法
US10719262B2 (en) Data storage apparatus, operating method thereof, and storage system having the same
CN110970074B (zh) 存储器系统及其操作方法
KR20170099610A (ko) 데이터 저장 장치 및 그것의 동작 방법
KR101949987B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
US10902928B2 (en) Memory system, operation method thereof, and nonvolatile memory device
US11461177B2 (en) Data storage device and method of operating the same
US10748626B2 (en) Data storage device and operating method thereof
CN115938446A (zh) 存储器装置、其操作方法以及存储器系统
US10629275B2 (en) Data storage device and operating method thereof
US20210255809A1 (en) Controller, memory system, and operating methods thereof
US11915762B2 (en) Apparatus and method for programming data in a non-volatile memory device
CN115691623A (zh) 在非易失性存储器装置中编程数据的设备、系统及方法
KR20230020787A (ko) 비휘발성 메모리 장치에 데이터를 프로그램하기 위한 장치 및 방법
KR20230017450A (ko) 비휘발성 메모리 장치에 데이터를 프로그램하기 위한 장치 및 방법
KR20220139081A (ko) 비휘발성 메모리 장치에 데이터를 프로그램 및 검증하기 위한 장치 및 방법
CN115775582A (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