CN112435703A - 存储装置及其操作方法 - Google Patents
存储装置及其操作方法 Download PDFInfo
- Publication number
- CN112435703A CN112435703A CN201911285250.3A CN201911285250A CN112435703A CN 112435703 A CN112435703 A CN 112435703A CN 201911285250 A CN201911285250 A CN 201911285250A CN 112435703 A CN112435703 A CN 112435703A
- Authority
- CN
- China
- Prior art keywords
- memory
- read
- voltage
- memory cells
- average bias
- 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/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
- G11C16/28—Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
-
- 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/30—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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/5671—Digital 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 trapping in an insulator
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
Abstract
本公开涉及一种存储装置及其操作方法以及一种具有提高的读取性能的存储器控制器,该存储器控制器控制包括多个存储器单元的存储器装置。该存储器控制器包括读取操作控制器、历史偏压存储装置和读取电压设置电路。读取操作控制器读取存储在多个存储器单元之中的所选择存储器单元中的数据。历史偏压存储装置存储多个历史平均偏压以及多个参考单元计数值,该多个历史平均偏压是多个存储器单元具有的多个阈值电压分布的平均偏压,该多个参考单元计数值分别与多个阈值电压分布相对应。
Description
相关申请的交叉引用
本申请要求于2019年8月26日提交的申请号为10-2019-0104706的韩国专利申请的优先权,其通过引用整体并入本文。
技术领域
本公开总体涉及一种电子装置,更具体地,涉及一种存储装置及其操作方法。
背景技术
存储装置被配置为在诸如计算机或智能电话的主机装置的控制下存储数据。存储装置可包括用于存储数据的存储器装置和用于控制存储器装置的存储器控制器。存储器装置可以是易失性存储器装置或非易失性存储器装置。
易失性存储器装置是仅当供电时存储数据,并且当供电中断时所存储的数据消失的存储器装置。易失性存储器装置的示例包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置是即使供电中断也能够保持所存储的数据的存储器装置。非易失性存储器装置的示例包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEROM)、闪速存储器等。
发明内容
实施例提供了一种具有提高的读取性能的存储装置及其操作方法。
根据实施例,提供了一种存储器控制器,该存储器控制器控制存储器装置,该存储器装置包括多个存储器单元,该存储器控制器包括:读取操作控制器,被配置为读取存储在多个存储器单元之中的所选择存储器单元中的数据;历史偏压(bias)存储装置,被配置为存储多个历史平均偏压以及多个参考单元计数值,该多个历史平均偏压是多个存储器单元具有的多个阈值电压分布的平均偏压,该多个参考单元计数值分别与多个阈值电压分布相对应;以及读取电压设置电路,被配置为当读取操作失败时,计算单元计数值与多个参考单元计数值之间的差值,并且根据该差值是否处于阈值范围内,基于多个历史平均偏压来确定调整读取电压,以读取所选择存储器单元,该单元计数值是所选择存储器单元之中的、通过多个历史平均偏压而被被读取为第一存储器单元的存储器单元的数量,其中基于所选择存储器单元的数量和多个阈值电压分布的数量来确定该多个参考单元计数值。
根据另一实施例,提供了一种操作存储装置的方法,该存储装置包括存储器装置和存储器控制器,该存储器装置包括多个存储器单元,该存储器控制器控制该存储器装置,该方法包括:存储关于多个历史平均偏压的信息,该历史平均偏压是多个存储器单元具有的多个阈值电压分布的平均偏压;对多个存储器单元之中的所选择存储器单元执行读取操作;当读取操作失败时,将单元计数值与多个参考单元计数值进行比较,该单元计数值是所选择存储器单元之中的、通过多个历史平均偏压而被读取为第一存储器单元的存储器单元的数量,该多个参考单元计数值分别对应于多个阈值电压分布;并且根据单元计数值与多个参考单元计数值之间的差值是否处于阈值范围内,基于多个历史平均偏压来确定调整读取电压,其中基于所选择存储器单元的数量和多个阈值电压分布的数量来确定多个参考单元计数值。
根据实施例,提供了一种存储器系统,该存储器系统包括:存储器装置,被配置为向多个存储器单元提供读取电压并输出多个存储器单元中存储的数据;控制器,被配置为估计多个存储器单元的阈值电压,其中当成功识别数据时,该控制器被配置为将阈值电压的代表值反映在跟踪偏压中,否则该控制器被配置为基于阈值电压和参考阈值电压之间的差值是否可接受,来确定如何使用该跟踪偏压以调整读取电压的电平。
附图说明
下面参照附图更全面地描述各个实施例;然而,本发明可以以不同的形式实施,因此不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了使本公开是彻底的和完整的,并且向本领域技术人员充分传达实施例的范围。
在附图中,为了清楚说明,可夸大尺寸。在整个公开中相同的附图标记表示相同的元件。
图1是示出根据本公开的实施例的存储装置的示图。
图2是示出图1所示的存储器装置的结构的示图。
图3是示出图2所示的存储块的示图。
图4是示出存储器装置的平面结构的示图。
图5是示出图1所示的存储器控制器的配置和操作的示图。
图6是示出阈值电压分布的平均偏压的示图。
图7是示出根据本公开的实施例的历史平均偏压和最佳读取电压的示图。
图8是示出图7所示的历史平均偏压和阈值范围确定的示图。
图9是示出根据本公开的另一实施例的历史平均偏压和最佳读取电压的示图。
图10是示出图9所示的历史平均偏压和阈值范围确定的示图。
图11是示出根据本公开的实施例的使用软读取方案的最佳读取电压计算的示图。
图12是示出根据本公开的实施例的图5中所示的历史偏压存储装置的示图。
图13是示出根据本公开的另一实施例的图5中所示的历史偏压存储装置的示图。
图14是示出根据本公开的实施例的存储装置的操作的流程图。
图15是详细示出如图14所示的确定最佳读取电压的操作的流程图。
图16是示出图1所示的存储器控制器的另一实施例的示图。
图17是示出根据本公开的实施例对其应用了存储装置的存储卡系统的框图。
图18是示例性地示出根据本公开的实施例对其应用了存储装置的固态驱动器(SSD)系统的框图。
图19是示出根据本公开的实施例对其应用了存储装置的用户系统的框图。
具体实施方式
本文中公开的特定结构或功能描述仅是说明性的,以用于描述根据本公开的概念的实施例的目的。根据本公开的概念的实施例可以以各种形式实施,并且不能被解释为限于本文所阐述的实施例。
在下文中,参照附图详细描述本公开的各个实施例,以使本领域技术人员能够容易地实施和实践本发明。
图1是示出根据本公开的实施例的存储装置的示图。
参照图1,存储装置50可包括存储器装置100和被配置为控制存储器装置100的操作的存储器控制器200。存储装置50可以是用于在诸如以下的主机300的控制下存储数据的装置:移动电话、智能电话、MP3播放器、膝上型计算机、台式计算机、游戏机、TV、平板电脑或者车载信息娱乐系统。
存储装置50可根据作为与主机300的通信方案的主机接口而被实施为各种类型的存储装置中的任何一种。例如,存储装置50可以利用诸如以下的各种类型的存储装置中的任意一种来实施:固态驱动器(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、尺寸减小的MMC(RS-MMC)、微型MMC(微型-MMC)、安全数字(SD)卡、迷你SD卡、微型SD卡、通用串行总线(USB)存储装置、通用闪存(UFS)装置、紧凑型闪存(CF)卡、智能媒体卡(SMC)、记忆棒等。
存储装置50可以被实现为各种封装类型中的任意一种。例如,存储装置50可以被制造为诸如以下的各种封装类型中的任意一种:堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
存储器装置100可以存储数据。存储器装置100在存储器控制器200的控制下进行操作。存储器装置100可包括存储器单元阵列,该存储器单元阵列包括用于存储数据的多个存储器单元。
存储器单元中的每一个可以被配置为存储1位数据的单层单元(SLC)、存储2位数据的多层单元(MLC)、存储3位数据的三层单元(TLC)或存储4位数据的四层单元(QLC)。
存储器单元阵列可包括多个存储块。每个存储块可包括多个页面。一个页面可以包括多个存储器单元。在实施例中,页面可以是进行存储数据或读取数据的一组存储器单元。
存储块可以是一起擦除数据的一组存储器单元。在实施例中,存储器装置100可以包括双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功率双倍数据速率第四代(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SRAM、低功耗DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、自旋转移力矩随机存取存储器(STT-RAM)等。在本说明书中,存储器装置100包括NAND闪速存储器。
存储器装置100接收从存储器控制器200输入的命令和地址,并访问存储器单元阵列中的由该地址指示的物理位置。也就是说,存储器装置100可以对由地址选择的物理位置执行由命令指示的操作。例如,存储器装置100可以执行写入(编程)操作、读取操作和/或擦除操作。在编程操作中,存储器装置100可以将数据编程在由地址指示的物理位置中。在读取操作中,存储器装置100可以从由地址指示的物理位置中读取数据。在擦除操作中,存储器装置100可以擦除存储在由地址指示的物理位置中的数据。
存储器控制器200可以控制存储装置50的全部操作。
当向存储装置50供电时,存储器控制器200可以执行固件(FW)。当存储器装置100是闪速存储器装置时,存储器控制器200可执行诸如闪存转换层(FTL)的FW,以控制主机300和存储器装置100之间的通信。
在实施例中,存储器控制器200可以从主机300接收数据和逻辑块地址(LBA),并且将LBA转换为物理块地址(PBA),该PBA表示存储器装置100中包括的、待存储数据的存储器单元的位置。
存储器控制器200可以响应于来自主机300的请求,控制存储器装置100执行编程操作、读取操作、擦除操作等。在编程操作中,存储器控制器200可向存储器装置100提供编程命令、PBA和数据。在读取操作中,存储器控制器200可向存储器装置100提供读取命令和PBA。在擦除操作中,存储器控制器200可向存储器装置100提供擦除命令和PBA。
在实施例中,存储器控制器200可以独立地生成命令、地址或数据,而不管从主机300输入的请求,并且将命令、地址和数据传送到存储器装置100。例如,存储器控制器200可以将命令、地址和数据提供给存储器装置100以执行后台操作,诸如用于损耗均衡或垃圾收集的读取或编程操作。
在实施例中,存储器控制器200可以控制至少两个存储器装置100。存储器控制器200可以根据交错方案来控制至少两个存储器装置100以提高操作性能。交错方案可以使得至少两个存储器装置100的操作部分彼此重叠。可以在至少两个存储器装置100的每一个内并行地或单独地执行操作,使得操作的操作部分(或余量)可以重叠。
在实施例中,存储器控制器200可以包括读取操作控制器210、历史偏压存储装置220和读取电压设置电路230。
读取操作控制器210可以控制存储器装置100以读取包括在存储器装置100中的存储器单元之中的所选择存储器单元中存储的数据。具体地,读取操作控制器210可以通过将读取电压施加到所选择字线来控制存储器装置100以读取联接到所选择字线的所选择存储器单元。读取操作控制器210可以从读取电压设置电路230接收读取电压,并且将读取电压提供给所选择字线。
当使用默认读取电压来读取与所选择字线联接的存储器单元中存储的数据的操作失败时,读取操作控制器210可以控制存储器装置100以使用不同的读取电压,诸如最佳(即,调整)读取电压来读取与所选择字线联接的存储器单元中存储的数据。
历史偏压存储装置220可以存储关于多个历史平均偏压的信息。历史平均偏压可以包括多个存储器单元所具有的多个阈值电压分布中的平均偏压。在实施例中,多个历史平均偏压可以是在对相同平面或相同存储块执行的多个读取操作之中的、最近成功的读取操作中,多个存储器单元所具有的阈值电压分布中的平均偏压。
例如,多个历史平均偏压可以与包括多个存储器单元的单个存储块相关联。因此,历史偏压存储装置220可以存储与每个存储块相对应的历史平均偏压。可选地,多个历史平均偏压可以与包括多个存储器单元的单个平面相关联。因此,历史偏压存储装置220可以存储与每个平面相对应的历史平均偏压。
当关于特定位置的读取操作通过(例如,成功)时,历史偏压存储装置220可以识别阈值电压,以基于在读取操作通过时识别的平均偏压来更新在读取操作通过之前存储的历史平均偏压,并且存储所更新的平均偏压。
历史偏压存储装置220可以存储分别与多个历史平均偏压相对应的多个参考单元计数值。可以根据联接到所选择字线的所选择存储器单元的数量和与多个历史平均偏压相对应的阈值电压分布的数量来确定多个参考单元计数值。
读取电压设置电路230可以向读取操作控制器210提供关于在读取操作中施加到所选择字线的读取电压的信息。
当使用默认读取电压的读取操作失败时,读取电压设置电路230可以确定最佳读取电压。读取电压设置电路230可以通过使用多个历史平均偏压或软读取方案来确定最佳读取电压。
读取电压设置电路230可以将单元计数值与多个历史平均偏压进行比较。单元计数值是在联接到所选择字线的存储器单元之中的、基于多个历史平均偏压而被认为是第一存储器单元的存储器单元的数量。多个参考单元计数值分别对应于多个历史平均偏压。第一存储器单元可以是导通单元或关断单元。例如,当第一存储器单元为导通单元时,设置逻辑值可以是“1”。当第一存储器单元是关断单元时,设置逻辑值可以是“0”。
读取电压设置电路230可以计算单元计数值与多个参考单元计数值之间的差值,并且基于通过将差值与阈值范围进行比较而获得的结果,通过使用多个历史平均偏压或软读取方案来确定最佳读取电压,其中该单元计数值是作为第一存储器单元的存储器单元的数量。
当差值处于阈值范围内时,读取电压设置电路230可以基于多个历史平均偏压来确定最佳读取电压。当差值超出阈值范围时,读取电压设置电路230可以使用软读取方案来确定最佳读取电压。下面参照图11描述如何确定最佳读取电压。
读取电压设置电路230可以向读取操作控制器210提供关于所确定的最佳读取电压的信息。
当使用最佳读取电压的读取操作成功时,读取电压设置电路230可以更新存储在历史偏压存储装置220中的历史平均偏压。读取电压设置电路230可以通过使用联接到所选择字线的存储器单元在读取操作成功时所具有的阈值电压分布中的平均偏压,来更新存储在历史偏压存储装置220中的历史平均偏压。
主机300可使用诸如通用串行总线(USB)、串行AT附件(SATA)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、火线、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)和低负载DIMM(LRDIMM)的各种通信方式中的至少一种来与存储装置50通信。
图2是示出图1所示的存储器装置的结构的示图。
参照图2,存储器装置100可以包括存储器单元阵列100、外围电路120和控制逻辑130。
存储器单元阵列110包括多个存储块BLK1至BLKz。多个存储块BLK1至BLKz通过行线RL联接到地址解码器121。多个存储块BLK1至BLKz通过位线BL1至BLm联接到读取/写入电路123。多个存储块BLK1至BLKz中的每一个包括多个存储器单元。在实施例中,多个存储器单元可以是非易失性存储器单元。多个存储器单元之中的、联接到相同字线的存储器单元可以被定义为一个物理页面。也就是说,存储器单元阵列110可以以多个物理页面来配置。根据本公开的实施例,包括在存储器单元阵列110中的多个存储块BLK1至BLKz中的每一个可包括多个虚设单元。一个或多个虚设单元可以串联联接在漏极选择晶体管和存储器单元之间以及源极选择晶体管和存储器单元之间。
存储器装置的存储器单元中的每一个可以被配置为存储1位数据的单层单元(SLC)、存储2位数据的多层单元(MLC)、存储3位数据的三层单元(TLC)或存储4位数据的四层单元(QLC)。
外围电路120可以包括地址解码器121、电压发生器122、读取/写入电路123、数据输入/输出电路124和感测电路125。
外围电路120驱动存储器单元阵列110。例如,外围电路120可以驱动存储器单元阵列110,以执行编程操作、读取操作和擦除操作。
地址解码器121通过行线RL联接到存储器单元阵列110。行线RL可以包括漏极选择线、字线、源极选择线和公共源极线。根据本公开的实施例,字线可以包括普通字线和虚设字线。根据本公开的实施例,行线RL可以进一步包括管道选择线。
在实施例中,行线RL可以是包括在局部线组中的局部线。每个局部线组可以对应于一个存储块。局部线组可以包括漏极选择线、局部字线和源极选择线。
地址解码器121可以在控制逻辑130的控制下进行操作。地址解码器121从控制逻辑130接收地址ADDR。
地址解码器121可以对所接收的地址ADDR中的块地址进行解码。地址解码器121根据所解码的块地址选择存储块BLK1至BLKz中的至少一个存储块。地址解码器121可对所接收的地址ADDR中的行地址RADD进行解码。地址解码器121可以通过根据所解码的行地址RADD将从电压发生器122提供的电压施加到字线WL来选择所选择存储块的至少一个字线WL。
在编程操作中,地址解码器121可将编程电压施加到所选择字线,并将具有低于编程电压的电平的通过电压施加到未选择的字线。在编程验证操作中,地址解码器121可将验证电压施加到所选择字线,并将具有高于验证电压的电平的验证通过电压施加到未选择的字线。
在读取操作中,地址解码器121可以将读取电压施加到所选择字线,并将具有高于读取电压的电平的读取通过电压施加到未选择的字线。
根据本公开的实施例,以存储块为单位执行存储器装置100的擦除操作。在擦除操作中,输入到存储器装置100的地址ADDR包括块地址。地址解码器121可以对块地址进行解码,并根据所解码的块地址选择一个存储块。在擦除操作中,地址解码器121可将接地电压施加到与所选择存储块联接的字线。
根据本公开的实施例,地址解码器121可以对向其传送的地址ADDR中的列地址进行解码。所解码的列地址可以被传送到读取/写入电路123。在示例中,地址解码器121可包括诸如行解码器、列解码器和地址缓冲器的组件。
电压发生器122可以通过使用供应给存储器装置100的外部电源电压来生成多个操作电压Vop。电压发生器122在控制逻辑130的控制下进行操作。
在实施例中,电压发生器122可以通过调节外部电源电压来生成内部电源电压。由电压发生器122生成的内部电源电压用作存储器装置100的操作电压。
在实施例中,电压发生器122可以通过使用外部电源电压或内部电源电压来生成多个操作电压Vop。电压发生器122可以生成存储器装置100所需的各种电压。例如,电压发生器122可以生成多个擦除电压、多个编程电压、多个通过电压、多个选择读取电压和多个未选择读取电压。
为了生成具有各种电压电平的多个操作电压Vop,电压发生器122可以包括用于接收内部电源电压的多个泵浦电容器,并且在控制逻辑130的控制下通过选择性地激活多个泵浦电容器来生成多个操作电压Vop。
多个生成的电压Vop可以由地址解码器121供应到存储器单元阵列110。
读取/写入电路123包括第一至第m页面缓冲器PB1至PBm。第一至第m页面缓冲器PB1至PBm通过相应的第一至第m位线BL1至BLm联接到存储器单元阵列110。第一至第m页面缓冲器PB1至PBm在控制逻辑130的控制下进行操作。
第一至第m页面缓冲器PB1至PBm与数据输入/输出电路124通信数据DATA。在编程操作中,第一至第m页面缓冲器PB1至PBm接收待通过数据输入/输出电路124和数据线DL而被存储的数据DATA。
在编程操作中,当将编程脉冲施加到所选择字线时,第一至第m页面缓冲器PB1至PBm可以通过位线BL1至BLm,来将通过数据输入/输出电路124接收的数据DATA传输到所选择存储器单元。根据所传输的数据DATA对所选择存储器单元的存储器单元进行编程。联接到被施加编程允许电压(例如,接地电压)的位线的存储器单元可以具有增加的阈值电压。联接到被施加编程禁止电压(例如,电源电压)的位线的存储器单元的阈值电压可以被保持。在编程验证操作中,第一至第m页面缓冲器PB1至PBm通过位线BL1至BLm从所选择存储器单元读取存储在所选择存储器单元中的数据DATA。
在读取操作中,读取/写入电路123可以通过位线BL从所选择页面的存储器单元读取数据DATA,并将所读取的数据DATA存储在第一页面缓冲器PB1至第m页面缓冲器PBm中。
在擦除操作中,读取/写入电路123可以使位线BL浮置。在实施例中,读取/写入电路123可以包括列选择电路。
数据输入/输出电路124通过数据线DL联接到第一页面缓冲器PB1至第m页面缓冲器PBm。数据输入/输出电路124在控制逻辑130的控制下进行操作。
数据输入/输出电路124可以包括接收输入数据DATA的多个输入/输出缓冲器(未示出)。在编程操作中,数据输入/输出电路124可以从外部控制器(未示出)接收待存储的数据DATA。在读取操作中,数据输入/输出电路124将包括在读取/写入电路123中的第一至第m页面缓冲器PB1至PBm传送的数据输出到外部控制器。
在读取操作或验证操作中,感测电路125可以响应于由控制逻辑130生成的允许位VRYBIT信号生成参考电流,并且通过比较从读取/写入电路123接收的感测电压VPB和由参考电流生成参考电压将通过信号或失败信号输出到控制逻辑130。
控制逻辑130可以联接到地址解码器121、电压发生器122、读取/写入电路123、数据输入/输出电路124和感测电路125。控制逻辑130可以控制存储器装置100的全部操作。控制逻辑130可响应于从外部装置传送的命令CMD而操作。
控制逻辑130可以通过响应于命令CMD和地址ADDR生成若干信号来控制外围电路120。例如,控制逻辑130可以响应于命令CMD和地址ADDR生成操作信号OPSIG、行地址RADD、读取/写入电路控制信号PBSIGNALS和允许位VRYBIT。控制逻辑130可以将操作信号OPSIG输出到电压发生器122,将行地址RADD输出到地址解码器121,将读取/写入电路控制信号PBSIGNALS输出到读取/写入电路123,并将允许位VRYBIT输出到感测电路125。而且,控制逻辑130可以响应于由感测电路125输出的通过或失败信号PASS/FAIL来确定验证操作是已经通过还是已经失败。
图3是示出图2所示的存储块的示图。
参照图3,在存储块中,平行布置的第一选择线、字线和第二选择线可以彼此联接。例如,字线可以平行地布置在第一选择线和第二选择线之间。第一选择线可以是源极选择线SSL,第二选择线可以是漏极选择线DSL。
具体地,存储块可以包括联接在位线BL1至BLn与源极线SL之间的多个串。位线BL1至BLn可以分别联接到这些串,并且源极线SL可以共同联接到这些串。这些串可以彼此相同地配置,因此,联接到第一位线BL1的串ST将被作为示例进行详细描述。
串ST可以包括源极选择晶体管SST、多个存储器单元F1至F16和漏极选择晶体管DAT,它们在源极线SL和第一位线BL1之间彼此串联联接。一个串ST中可以包括至少一个源极选择晶体管SST和至少一个漏极选择晶体管DST,并且一个串ST中可以包括数量大于附图中所示的存储器单元F1至F16的数量的存储器单元。
源极选择晶体管SST的源极可以联接到源极线SL,漏极选择晶体管DAT的漏极可以联接到第一位线BL1。存储器单元F1至F16可以串联联接在源极选择晶体管SST和漏极选择晶体管DST之间。包括在不同串ST中的源极选择晶体管SST的栅极可以联接到源极选择线SSL,并且包括在不同串ST中的漏极选择晶体管DST的栅极可以联接到漏极选择线DSL。存储器单元F1至F116的栅极可以联接到多个字线WL1至WL16。可以将包括在不同的串ST中的存储器单元之中的、联接到相同的字线的一组存储器单元称为物理页面PPG。因此,与字线WL1至WL16的数量相对应的物理页面可以被包括在存储块中。
一个存储器单元可以存储一位数据。该存储器单元通常被称为单层单元(SLC)。例如,单个物理页面PG可以存储与单个逻辑页面(LPG)相关联的数据。单个LPG数据可以包括与单个物理页面PPG中包括的存储器单元的数量相对应的多个数据位。可选地,单个存储器单元MC可以存储两位或更多位的数据。该存储器单元通常被称为多层单元。一个物理页面PPG可以存储两个或更多个LPG数据。
存储两位或更多位数据的存储器单元称为多层单元。存储两位数据的存储器单元也可以称为MLC。存储三位或更多位数据的存储器单元称为三层单元(TLC),并且存储四位或更多位数据的存储器单元称为四层单元(QLC)。
图4是示出存储器装置的平面结构的示图。
参照图4,存储器装置可以包括多个平面Plane 0、Plane 1。存储器装置中包括的平面的数量不限于该实施例。单个平面可以包括多个存储块BLK00至BLKi(i是正整数)。平面可以是被独立地控制以执行编程操作、读取操作或擦除操作的组。因此,对于每个平面,存储器装置可以包括参照图2描述的地址解码器121和读取/写入电路123。
图5是示出图1所示的存储器控制器的配置和操作的示图。
参照图5,存储器控制器200可以包括读取操作控制器210、历史偏压存储装置220、读取电压设置电路230和错误校正器240。
读取操作控制器210可以向存储器装置100提供读取命令、关于读取电压的信息以及待读取的数据所存储的地址,其中该读取命令用于读取存储在存储器装置100中包括的存储器单元之中的所选择存储器单元中的数据。具体地,读取操作控制器210可以向存储器装置100提供用于确定施加到所选择字线的读取电压以读取所选择存储器单元的命令。
读取操作控制器210可以从读取电压设置电路230接收待施加到所选择字线的读取电压。
读取操作控制器210可以向存储器装置100提供读取命令,以用于向所选择字线施加默认读取电压或最佳读取电压,以读取联接到所选择字线的存储器单元中存储的数据。可以将默认电压认为是在制造过程中预先确定以读取数据的读取电压。当使用默认读取电压的读取操作失败时,可以将最佳读取电压认为是新设置以读取数据的读取电压。
例如,当基于默认读取电压来读取所选择字线的操作失败时,读取操作控制器210可以向存储器装置100提供指示使用最佳读取电压来读取所选择字线的操作的读取命令。
读取操作控制器210可以从错误校正器240接收表示读取操作已成功还是已失败的读取失败信息。读取操作控制器210可以通过读取失败信息来确定由存储器装置100执行的读取操作已成功还是已失败。
历史偏压存储装置220可以存储关于多个历史平均偏压的信息,该多个历史平均偏压是多个存储器单元所具有的多个阈值电压分布的平均偏压。历史偏压存储装置220可以向读取电压设置电路230提供所存储的关于历史平均偏压的信息。
在实施例中,多个历史平均偏压可以被认为是在对相同平面或相同存储块执行的读取操作之中的、最近成功的读取操作中,多个存储器单元所具有的阈值电压分布的平均偏压。
例如,多个历史平均偏压可以对应于包括多个存储器单元的单个存储块。因此,历史偏压存储装置220可以存储与每个存储块相对应的历史平均偏压。可选地,多个历史平均偏压可以与包括多个存储器单元的单个平面相对应。因此,历史偏压存储装置220可以存储与每个平面相对应的历史平均偏压。
历史偏压存储装置220可以从读取电压设置电路230接收关于联接到所选择字线的存储器单元所具有的阈值电压分布的平均偏压的信息。基于最佳读取电压来计算平均偏压。历史偏压存储装置220可以基于从读取电压存储器230提供的阈值电压分布的平均偏压来更新先前存储的历史平均偏压,并且存储所更新的历史平均偏压。
历史偏压存储装置220可以存储分别与多个历史平均偏压相对应的多个参考单元计数值。历史偏压存储装置220可以将所存储的多个参考单元计数值提供给读取电压设置电路230。
可以根据联接到所选择字线的所选择存储器单元的数量和与多个历史平均偏压相对应的阈值电压分布的数量来确定多个参考单元计数值。读取电压设置电路230可以向读取操作控制器210提供关于在读取操作中待施加到所选择字线的读取电压的信息。
读取电压设置电路230可以从错误校正器240接收表示读取操作已成功还是已失败的读取失败信息。读取电压设置电路230可以通过读取失败信息来确定由存储器装置100执行的读取操作已成功还是已失败。
当使用默认读取电压的读取操作失败时,读取电压设置电路230可以确定最佳读取电压。读取电压设置电路230可以通过使用多个历史平均偏压或软读取方案来确定最佳读取电压。
读取电压设置电路230可以将单元计数值与多个参考单元计数值进行比较,该单元计数值是联接到所选择字线的存储器单元之中的、通过多个历史平均偏压而被读取为第一存储器单元的存储器单元的数量,该多个参考单元计数值分别对应于多个历史平均偏压。第一存储器单元可以是导通单元和关断单元中的任意一种。
通过将历史平均偏压施加到所选择字线,作为被读取为第一存储器单元的存储器单元的数量的单元计数值可以是从存储器装置100获取的读取数据中包括的设置逻辑值的数量。当第一存储器单元是导通单元时,设置逻辑值可以是“1”。当第一存储器单元是关断单元时,设置逻辑值可以是“0”。可选地,当第一存储器单元为导通单元时,设置逻辑值可以是“0”。当第一存储器单元是关断单元时,设置逻辑值可以是“1”。
读取电压设置电路230可以基于将单元计数值和多个参考单元计数值之间的差值与阈值范围进行比较而获得的结果,通过使用多个历史平均偏压或软读取方案来确定最佳读取电压,其中该单元计数值为作为第一存储器单元的存储器单元的数量。
当差值处于阈值范围内时,读取电压设置电路230可以通过使用多个历史平均偏压来确定最佳读取电压。读取电压设置电路230可以基于与两个相邻的阈值电压分布相对应的历史平均偏压,通过高斯建模来确定最佳读取电压。下面将参照图11描述通过高斯建模来确定最佳读取电压的方法。
当差值超出阈值范围时,读取电压设置电路230可以通过使用软读取方案来确定最佳读取电压。
读取电压设置电路230可以通过将多个软读取电压施加到所选择字线,来获取通过从存储器装置100读取联接到所选择字线的所选择存储器单元而获得的软数据。错误校正器240可以不对软数据执行错误校正解码。可以基于参考读取电压来确定多个软读取电压。参考读取电压可以被认为是在失败的读取操作中使用的读取电压、默认电压或基于历史平均偏压而计算的读取电压。读取电压设置电路230可以基于所获取的软数据来确定最佳读取电压。下面将参照图11描述通过使用软读取方案来确定最佳读取电压的方法。
读取电压设置电路230可以向读取操作控制器210提供关于所确定的最佳读取电压的信息。
当使用最佳读取电压的读取操作成功时,读取电压设置电路230可以更新存储在历史偏压存储装置220中的历史平均偏压。读取电压设置电路230可以使用联接到所选择字线的存储器单元在读取操作成功时所具有的阈值电压分布的平均偏压来更新历史平均偏压。
例如,当读取操作成功时,读取电压设置电路230可以基于最佳读取电压,通过高斯建模来计算关于联接到所选择字线的存储器单元的阈值电压分布的平均偏压。读取电压设置电路230可以向历史偏压存储装置220提供关于所计算的阈值电压分布的平均偏压的信息。
错误校正器240可以从存储器装置100获取作为通过执行读取操作而获得的结果的读取数据。错误校正器240可以对读取数据执行错误校正解码。当读取数据中包括的失败位的数量等于或小于错误校正器240可校正的位的数量时,错误校正解码可能成功。当读取数据中包括的失败位的数量超过错误校正器240可校正的位的数量时,错误校正解码可能失败。
当对读取数据的错误校正解码成功时,错误校正器240可以确定由存储器装置100执行的读取操作已经成功。当对读取数据的错误校正解码失败时,错误校正器240可以确定由存储器装置100执行的读取操作已经失败。
错误校正器240可以生成表示由存储器装置100执行的读取操作已成功还是已失败的读取失败信息。错误校正器240可以将所生成的读取失败信息提供给读取操作控制器210和读取电压设置电路230。
图6是示出阈值电压分布的平均偏压的示图。
参照图6,可以将存储器单元编程为具有擦除状态和多个编程状态之中的任意状态。存储器单元可以具有不受干扰或保留影响的理想状态。
在图6中,可以将存储器单元编程为第一状态和第二状态中的任意一个。存储器单元被编程到的状态的数量不限于该实施例。
默认电压Vdr可以是在制造过程中设置的、以将两个相邻状态彼此区分开的初始读取电压。被编程为第一状态的存储器单元可以属于第一阈值电压分布P1。被编程为第二状态的存储器单元可以属于第二阈值电压分布P2。
阈值电压分布的平均偏压可以被认为是属于该阈值电压分布的存储器单元之中的最大数量的存储器单元所在位置处的偏压。换言之,阈值电压分布的平均偏压可以被认为是属于该阈值电压分布的存储器单元的数量为最大处的峰值偏压。
例如,第一阈值电压分布P1的平均偏压可以是m_a0。第二阈值电压分布P2的平均偏压可以是m_b0。
可以基于所选择存储器单元的数量和该存储器单元所具有的阈值电压分布的数量来确定参考单元计数值。描述了应用高斯建模的、存储器单元具有理想阈值电压分布的参考情况。基于导通单元来描述参考单元计数值。在另一实施例中,可以基于关断单元来描述参考单元计数值。
在图6中,当所选择存储器单元的数量为1000时,属于区域n1、n2、n3、n4中的每一个的存储器单元的数量可以为250。
因此,在与所选择字线联接的存储器单元之中,第一阈值电压分布P1中的、通过平均偏压m_a0而被读取为导通单元的存储器单元的数量可以是250,即属于区域n1的存储器单元的数量是250。在联接到所选择字线的存储器单元之中,第二阈值电压分布P2中的、通过平均偏压m_b0而被读取为导通单元的存储器单元的数量可以是750,即属于区域n1、n2、n3的存储器单元的数量是750。
也就是说,与第一阈值电压分布P1的平均偏压m_a0相对应的参考单元计数值可以是250。与第二阈值电压分布P2的平均偏压m_b0相对应的参考单元计数值可以是750。
图7是示出根据本公开的实施例的历史平均偏压和最佳读取电压的示图。
参照图7,实线可以是示出存储器单元的理想阈值电压分布的线。虚线可以是示出受到干扰或保留影响的存储器单元的阈值电压分布的线。也就是说,由虚线表示的关于存储器单元的当前阈值电压分布可以是从由实线表示的初始阈值电压分布向左偏移。
可以将对应于第一状态的阈值电压分布从阈值电压分布P1向左移动至阈值电压分布P1'。可以将与第二状态相对应的阈值电压分布从阈值电压分布P2向左移动至阈值电压分布P2'。
历史平均偏压可以是在相同存储块或相同平面中执行的读取操作之中的、最近成功的读取操作中,存储器单元所具有的阈值电压分布的平均偏压。
例如,在最近成功的读取操作中,关于存储器单元的阈值电压分布可以是P1和P2。因此,对应于第一状态的历史平均偏压可以是m_a0。对应于第二状态的历史平均偏压可以是m_b0。
参考读取电压Vref可以是用于将第一状态和第二状态彼此区分开的读取电压。当使用参考读取电压Vref的读取操作失败时,可以搜索用于将第一状态和第二状态彼此区分开的最佳读取电压。
在图7中,关于存储器单元的当前阈值电压分布可以是P1'和P2'。因此,用于将第一状态和第二状态彼此区分的最佳读取电压可以是Vor1。稍后将参照图8描述计算最佳读取电压的过程。
图8是示出图7所示的历史平均偏压和阈值范围确定的示图。
参照图7和图8,可以根据单元计数值与参考单元计数值之间的差值是否处于阈值范围内,通过使用历史平均偏压来计算最佳读取电压,其中单元计数值是通过向所选择字线施加历史平均偏压来读取联接到所选择字线的所选择存储器单元而获得的。单元计数值可以是所选择存储器单元之中的、通过历史平均偏压而被读取为第一存储器单元的存储器单元的数量。第一存储器单元可以是导通单元和关断单元中的任意一种。
当单元计数值和参考单元计数值之间的差值处于阈值范围内时,可以将当前阈值电压分布确定为正常分布,并且可以使用历史平均偏压来计算最佳读取电压。当单元计数值和参考单元计数值之间的差值超出阈值范围时,可以将当前阈值电压分布确定为异常分布,并且可以使用软读取方案来计算最佳读取电压,这将稍后参照图11进行描述。
具体地,单元计数值和参考单元计数值之间的差值可以表示阈值电压分布的移动趋势。随着差值的大小变大,当前阈值电压分布基于在最近读取操作成功时的阈值电压分布而发生相当大的偏移。因此,当差值的大小处于阈值范围内时,可以预测到,阈值电压分布的偏移宽度将较小,并且历史平均偏压与当前阈值电压分布的匹配率较高。因此,可以使用历史平均偏压来计算最佳读取电压。当差值超出阈值范围时,可以预测到,阈值电压分布的偏移宽度较大,并且历史平均偏压与当前阈值电压分布的匹配率较低。因此,可以使用软读取方案来计算最佳读取电压。
在图7中,单元计数值可以是所选择存储器单元之中的、通过将历史平均偏压施加到所选择字线而被读取为导通单元的存储器单元的数量。
例如,对应于第一状态的历史平均偏压可以是m_a0。对应于第二状态的历史平均偏压可以是m_b0。与历史平均偏压m_a0相对应的单元计数值可以是280。与历史平均偏压m_b0相对应的单元计数值可以是785。
对应于历史平均偏压m_a0的单元计数值和参考单元计数值之间的差值可以是30,即图7所示的属于区域S1的存储器单元的数量是30。对应于历史平均偏压m_b0的单元计数值和参考单元计数值之间的差值可以是35,即图7所示的属于区域S2的存储器单元的数量是35。
阈值范围Th可以是25。在历史平均偏压m_a0、m_b0中的每一个的情况下,单元计数值和参考单元计数值之间的差值可能超出了阈值范围。这可表示当前阈值电压分布是异常分布,并且历史平均偏压m_a0和m_b0中的每一个与当前阈值电压分布的匹配率较低。
因此,可以使用基于参考读取电压而确定的多个软读取电压,而不是历史平均偏压m_a0、m_b0来计算新的最佳读取电压Vor1。
作为使用最佳读取电压Vor1来执行读取操作而获得的结果,读取操作可能通过。由于历史平均偏压是在最近成功的读取操作中的存储器单元所具有的阈值电压分布的平均偏压,因此当读取操作通过时,可更新历史平均偏压。
在读取操作通过时的阈值电压分布P1'的平均偏压可以为m_a1,并且在读取操作通过时的阈值电压分布P2'的平均偏压可以为m_b1。因此,可以将与第一状态相对应的历史平均偏压从m_a0更新为m_a1。可以将与第二状态相对应的历史平均偏压从m_b0更新为m_b1。
在各个实施例中,可以基于在相应读取操作通过时所使用的最佳读取电压,通过高斯建模来计算在读取操作通过时的阈值电压分布的平均偏压。也就是说,可以基于在读取操作通过时所使用的最佳读取电压Vor1,通过高斯模型来计算阈值电压分布的平均偏压m_a1和m_b1。
图9是示出根据本公开的另一实施例的历史平均偏压和最佳读取电压的示图。
参照图9,与图7相比,存储器单元的阈值电压分布可以进一步向左偏移。对应于第一状态的当前阈值电压分布可以从P1'移动到P1”。对应于第二状态的当前阈值电压分布可以从P2'移动到P2”。
在图9中,通过将参考读取电压Vref施加到所选择字线来读取所选择字线的操作可能失败。参考读取电压Vref可以是被预先设置以将两个相邻状态彼此区分开的默认读取电压。可选地,参考读取电压Vref可以是在已通过的先前读取操作中使用的最佳读取电压。
当与每个历史平均偏压相对应的单元计数值与参考单元计数值之间的差值处于阈值范围内时,可以使用历史平均偏压来计算最佳读取电压。单元计数值可以是联接到所选择字线的所选择存储器单元之中的、通过历史平均偏压而被读取为第一存储器单元的存储器单元的数量。第一存储器单元可以是导通单元和关断单元中的任意一种。
如将参照图10描述的,在历史平均偏压m_a1和m_b1两者的情况下,单元计数值和参考单元计数值之间的差值处于阈值范围内,因此,可以使用历史平均偏压m_a1、m_b1来计算最佳读取电压。
使用历史平均偏压m_a1、m_b1而计算的最佳读取电压可以是Vor1。当使用最佳读取电压Vor1的读取操作失败时,可以使用软读取方案来计算新的最佳读取电压。
使用软读取方案而计算的新的最佳读取电压可以是Vor2。
当作为通过使用新的最佳读取电压Vor2来执行读取操作而获得的结果,读取操作通过时,可以更新历史平均偏压。对应于第一状态的历史平均偏压可以从m_a1更新为m_a2。对应于第二状态的历史平均偏压可以从m_b1更新为m_b2。
图10是示出图9所示的历史平均偏压和阈值范围确定的示图。
参照图9和图10,与第一状态相对应的历史平均偏压可以是m_a1。与第二状态相对应的历史平均偏压可以是m_b1。与历史平均偏压m_a1相对应的单元计数值可以是270。与历史平均偏压m_b1相对应的单元计数值可以是775。
与历史平均偏压m_a1相对应的单元计数值与参考单元计数值之间的差值可以是20,即图9所示的属于区域S1'的存储器单元的数量。与历史平均偏压m_b1相对应的单元计数值与参考单元计数值之间的差值可以是25,即图9所示的属于区域S2'的存储器单元的数量是25。
阈值范围Th可以是25。在历史平均偏压m_a1、m_b1中的每一个的情况下,单元计数值和参考单元计数值之间的差值可以处于阈值范围内。这可表示当前阈值电压分布是正常分布,并且历史平均偏压m_a1、m_b1的每一个与当前阈值电压分布具有较高的匹配率。
因此,可以使用历史平均偏压m_a1、m_b1来计算最佳读取电压。具体地,可以将每个与两个相邻状态中的每个相对应的历史平均偏压的平均值确定为用于将两个相邻状态彼此区分开的最佳读取电压。在图9中,通过高斯建模、使用历史平均偏压m_a1、m_b1而计算的最佳读取电压可以是Vor1。
基于通过使用利用历史平均偏压而计算的最佳读取电压来执行读取操作而获得的结果,或者基于通过使用利用通过软读取方案而计算的最佳读取电压来再次执行读取操作而获得的结果,可以结束读取操作。
当使用所计算的最佳读取电压的读取操作通过时,可以结束读取操作。当读取操作失败时,可以使用利用软读取方案而计算的最佳读取电压来再次执行读取操作。当基于再次执行读取操作而获得的结果,读取操作通过时,可以更新历史平均偏压。当基于再次执行读取操作而获得的结果,读取操作失败时,可以进行读取失败处理,并且可以执行另一数据恢复算法。
通过使用最佳读取电压Vor1来执行读取操作而获得的结果可能失败,其中最佳读取电压Vor1是通过使用历史平均偏压m_a1和m_b1而计算的。因此,可以使用多个读取电压来计算新的最佳读取电压Vor2。
基于通过使用最佳读取电压Vor2来执行读取操作而获得的结果,读取操作可能通过。当读取操作通过时,可以更新历史平均偏压。
在读取操作通过时的阈值电压分布P1”的平均偏压可以为m_a2,并且在读取操作通过时的阈值电压分布P2”的平均偏压可以为m_b2。因此,可以将与第一状态相对应的历史平均偏压从m_a1更新为m_a2。可以将与第二状态相对应的历史平均偏压从m_b1更新为m_b2。
图11是示出根据本公开的实施例的使用软读取方案的最佳读取电压计算的示图。
参照图11,可以将存储器单元编程为擦除状态和多个编程状态之中的任意一个状态。在图11中,描述了存储器单元被编程为具有第一状态和第二状态中的任意一个的情况。
对应于第一状态的阈值电压分布可以是P1。对应于第二状态的阈值电压分布可以是P2。
当使用参考读取电压的读取操作失败时,可以使用基于参考读取电压Vref而确定的多个软读取电压Vsr1至Vsr5来计算最佳读取电压。多个软读取电压Vsr1至Vsr5中的每一个可以是基于参考读取电压Vref、通过添加偏移而获得的读取电压。该偏移可以具有正值或负值。
在实施例中,参考读取电压Vref可以是在失败的读取操作中使用的读取电压。默认读取电压可以是在制造过程中被设置为区分关于存储器单元的阈值电压分布的初始读取电压。在另一实施例中,参考读取电压Vref可以是使用历史平均偏压而计算的最佳读取电压。历史平均偏压可以是在最近成功的读取操作中,关于存储器单元的阈值电压分布的平均偏压。因此,使用利用历史平均偏压而计算的最佳读取电压的软读取操作可能比使用默认读取电压的软读取操作更高效。
可以基于间隔单元计数值来确定最佳读取电压,该间隔单元计数值是通过对属于由多个软读取电压划分的间隔的存储器单元的数量进行计数而获得的。具体地,可以沿间隔单元计数值减小的方向来执行软读取操作,并且可以将当间隔单元计数值为最小时的软读取电压确定为最佳读取电压。
可以基于通过使用两个相邻的软读取电压而获取的读取数据中包括的1的数量之间的差值来获取间隔单元计数值。可选地,可以基于通过使用两个相邻的软读取电压而获取的读取数据中包括的0的数量之间的差值来获取间隔单元计数值。使用软读取电压获取的读取数据可以是软数据。与正常读取数据不同,在软数据的情况下,可以不对软数据执行错误校正解码。
例如,当使用参考读取电压Vref的读取操作失败时,可以使用具有比参考读取电压Vref的电平更低的电平的软读取电压Vsr1来执行软读取操作。随后,可以使用具有比参考读取电压Vref的电平更高的电平的软读取电压Vsr2来执行软读取操作。
作为通过比较间隔单元计数值a1和间隔单元计数值a2而获得的结果,间隔单元计数值a2小于间隔单元计数值a1,因此,可以预测到,最佳读取电压将位于参考读取电压Vref的右侧。换言之,可以预测到,最佳读取电压将具有比参考读取电压Vref的电平更高的电平。
当确定了最佳读取电压的位置时,可以使用通过在相应方向上添加偏移而获得的软读取电压来执行软读取操作。
因此,在图11中,与参考读取电压Vref相比,软读取电压Vsr3至Vsr5中的每一个可以是通过添加正偏移而获得的值。
以与上述相同的方式,可以通过软读取来计算间隔单元计数值a3至a5。间隔单元计数值可以从a3向a4减小。间隔单元计数值可以从a4向a5增加。因此,由于间隔单元计数值a4最小,因此可以将与间隔单元计数值a4相对应的软读取电压Vsr4计算为最佳读取电压。
在实施例中,偏移offset1至offset5的大小可以全部相同。在各个实施例中,当按照从偏移offset1至偏移offset5的顺序来执行软读取操作时,偏移的大小可以逐渐减小。因此,可以在软读取操作的早期阶段,通过增加具有较宽变化的偏移来快速地执行软读取操作,并且可以在软读取操作的后期阶段,通过增加具有较窄变化的偏移来精确地计算最佳读取电压。
图12是示出根据本公开的实施例的图5中所示的历史偏压存储装置的示图。
参照图12,历史偏压存储装置220可以存储与每个存储块相对应的历史平均偏压。
当对一个存储块中包括的存储器单元之中的所选择存储器单元进行存储器操作时,可能影响关于一个存储块中包括的存储器单元之中的未选择存储器单元的阈值电压分布。存储器操作可以是读取操作、编程操作或擦除操作。存储器单元之间的干扰效应称为干扰。在每个存储器单元的捕获(trap)区域中正在充电电荷的同时,受干扰影响的存储器单元的阈值电压分布可能向右偏移。
当在较长的时段期间,未对存储块中包括的存储器单元执行存储器操作时,在每个存储器单元的捕获区域中充电的电荷正在被释放的同时,存储器单元的阈值电压分布可能向左偏移。这种现象称为保留。
由于这种特性,可以预测到,关于一个存储块中包括的存储器单元的阈值电压分布将具有相似的偏移趋势。因此,针对存储块中包括的多个字线,可以共同使用历史平均偏压,而不管每个字线的位置。
例如,当对存储块的第一字线的读取操作通过时,可以存储历史平均偏压。当对相同存储块中包括的、不同于第一字线的第二字线的读取操作失败时,可以使用先前存储的历史平均偏压来确定最佳读取电压。
例如,当对不同于所选择存储器单元的存储器单元的读取操作成功时,关于与所选择存储器单元不同的存储器单元的阈值电压分布的平均偏压可以被存储为多个历史平均偏压。可选地,当对所选择存储器单元的读取操作成功时,关于所选择存储器单元的阈值电压分布的平均偏压可以被存储为多个历史平均偏压。当对下一所选择存储器单元的读取操作失败时,可以基于先前存储的多个历史平均偏压来确定用于读取该所选择存储器单元的最佳读取电压。
在图12中,一个存储器装置可以包括平面PL1、PL2。平面PL1可以包括存储块BLK1、BLK2。平面PL2可以包括存储块BLK3、BLK4。一个存储器装置中包括的平面的数量和一个平面中包括的存储块的数量不限于本实施例。
在图12中,存储块的存储器单元可以是能够存储两位数据的多层单元。因此,可以将存储器单元编程为擦除状态和不同的第一至第三编程状态之中的任意一个状态。第一阈值电压分布可以对应于擦除状态。第二阈值电压分布可以对应于第一编程状态。第三阈值电压分布可以对应于第二编程状态。第四阈值电压分布可以对应于第三编程状态。
对应于存储块BLK1的历史平均偏压可以被表示为m_11、m_21、m_31、m_41。m_11可以是第一阈值电压分布的平均偏压。m_21可以是第二阈值电压分布的平均偏压。m_31可以是第三阈值电压分布的平均偏压。m_41可以是第四阈值电压分布的平均偏压。
以这种方式,对应于存储块BLK2的历史平均偏压可以是m_12、m_22、m_32、m_42。对应于存储块BLK3的历史平均偏压可以是m_13、m_23、m_33、m_43。对应于存储块BLK4的历史平均偏压可以是m_14、m_24、m_34、m_44。
历史偏压存储装置220可以存储参考单元计数值。
可以基于所选择存储器单元的数量和阈值电压分布的数量来确定参考单元计数值。
例如,描述了存储块中包括的、联接到每个字线的存储器单元的数量为1000的情况。当存储块中的每个存储器单元是存储两个数据位的多层单元时,阈值电压分布的数量可以是4。
因此,在理想阈值电压分布的情况下,属于每个阈值电压分布的存储器单元的数量可以是250。属于每个阈值电压分布的存储器单元之中的125个单元可以通过每个阈值电压分布的平均偏压而被读取为导通单元,而其他125个单元可以通过每个阈值电压分布的平均偏压而被读取为关断单元。
参考单元计数值可以是联接到所选择字线的存储器单元之中的、通过每个相应阈值电压分布的平均偏压而被读取为导通单元的存储器单元的数量。在另一实施例中,参考单元计数值可以是联接到所选择字线的存储器单元之中的、通过每个相应阈值电压分布的平均偏压而被读取为关断单元的存储器单元的数量。
因此,联接到所选择字线的存储器单元之中的、通过第一阈值电压分布的平均偏压而被读取为导通单元的存储器单元的数量可以是125。联接到所选择字线的存储器单元之中的、通过第二阈值电压分布的平均偏压而被读取为导通单元的存储器单元的数量可以是375。联接到所选择字线的存储器单元之中的、通过第三阈值电压分布的平均偏压而被读取为导通单元的存储器单元的数量可以为625。联接到所选择字线的存储器单元之中的、通过第四阈值电压分布的平均偏压而被读取为导通单元的存储器单元的数量可以是875。
图13是示出根据本公开的另一实施例的图5中所示的历史偏压存储装置的示图。
参照图13,与图12相比,历史偏压存储装置220可以存储与包括存储块的平面相对应的历史平均偏压。
也就是说,可以针对包括在平面中的每个存储块中包括的所有字线,共同使用历史平均偏压。因此,可靠性可能比图12中的针对每个存储块来存储和使用历史平均偏压时的可靠性差。但是,可以减少关于待存储的历史平均偏压的数据量。
对应于平面PL1的历史平均偏压可以是m_11'、m_21'、m_31'、m_41'。m_11'可以是第一阈值电压分布的平均偏压。m_21'可以是第二阈值电压分布的平均偏压。m_31'可以是第三阈值电压分布的平均偏压。m_41'可以是第四阈值电压分布的平均偏压。
以这种方式,对应于平面PL2的平均偏压可以是m_12'、m_22'、m_32'、m_42'。
历史偏压存储装置220可以以与参照图12描述的方式相同的方式来存储参考单元计数值。
图14是示出根据本公开的实施例的存储装置的操作的流程图。
参照图14,存储装置可以包括:存储器装置,包括多个存储器单元;以及存储器控制器,被配置为控制存储器装置。
在步骤S1401中,当对所选择存储器单元的读取操作失败时,存储装置可以通过使用历史平均偏压来读取所选择存储器单元。
在步骤S1403中,存储装置可以基于使用历史平均偏压而获取的读取数据来确定阈值电压分布是否处于正常范围内。当阈值电压分布处于正常范围内时,基于确定结果,存储装置进行到步骤S1405。当阈值电压分布超出正常范围时,基于确定结果,存储装置进行到步骤S1409。
在步骤S1405中,存储装置可以通过使用基于历史平均偏压而确定的最佳读取电压来读取所选择存储器单元。
在步骤S1407中,存储装置可以通过使用基于历史平均偏压而确定的最佳读取电压来确定关于读取操作的成功和失败。具体地,存储装置可以对通过使用最佳读取电压而获取的读取数据执行错误校正解码,并且基于通过执行错误校正解码而获得的结果来确定读取操作已通过还是已失败。当读取操作通过时,存储装置进行到步骤S1413。当读取操作失败时,存储装置进行到步骤S1409。
在步骤S1409中,存储装置可以通过使用软读取方案来确定最佳读取电压。
在步骤S1411中,存储装置可以使用基于软读取方案而确定的最佳读取电压来确定关于读取操作的成功和失败。当读取操作通过时,存储装置进行到步骤S1413。当读取操作失败时,存储装置进行到步骤S1415。
在步骤S1413中,当读取操作通过时,存储装置可以通过使用阈值电压分布的平均偏压来更新历史平均偏压。存储装置可以基于在读取操作通过时的电压、通过高斯建模来计算在读取操作通过时的阈值电压分布的平均偏压。
在步骤S1415中,当使用最佳读取电压的读取操作失败时,存储装置可以将读取操作处理为读取失败。存储装置可以执行单独的数据恢复算法,诸如当读取操作失败时所执行的读取重试操作。
图15是详细示出如图14所示的确定最佳读取电压的操作的流程图。
参照图15,在步骤S1501中,当读取操作失败时,存储装置可以向所选择字线施加历史平均偏压,并且读取联接到所选择字线的存储器单元。
在步骤S1503中,存储装置可以基于通过执行读取操作而获得的结果来计算计数值,即被读取为第一存储器单元的存储器单元的数量与参考单元计数值之间的差值。第一存储器单元可以是导通单元和关断单元中的任意一种。
在步骤S1505中,存储装置可以确定差值是否处于阈值范围内。当差值处于阈值范围内时,存储装置进行到步骤S1507。当差值超出阈值范围时,存储装置进行到步骤S1509。
在步骤S1507中,存储装置可以基于与两个相邻的阈值电压分布相对应的历史平均偏压,通过高斯建模来确定最佳读取电压。在失败的读取操作中所使用的读取电压可以用于将两个相邻的阈值电压分布彼此区分开。
在步骤S1509中,存储装置可以通过使用软读取方案来确定最佳读取电压。存储装置可以基于软数据来确定最佳读取电压,该软数据是通过使用基于参考读取电压而确定的多个软读取电压而获取的。可以基于在读取操作中所使用的读取电压、默认读取电压或历史平均偏压来计算参考读取电压。默认读取电压可以是在制造过程中被设置为区分关于存储器单元的阈值电压分布的电压。
图16是示出图1所示的存储器控制器的另一实施例的示图。
参照图16,存储器控制器1000联接到主机和存储器装置。存储器控制器1000被配置为响应于从主机接收的请求来访问存储器装置。例如,存储器控制器1000被配置为控制存储器装置的读取、编程、擦除和后台操作。存储器控制器1000被配置为提供存储器装置和主机之间的接口。存储器控制器1000被配置为驱动用于控制存储器装置的固件。
存储器控制器1000可以包括处理器1010、存储器缓冲器1020、错误校正码(ECC)电路1030、主机接口1040、缓冲器控制电路1050、存储器接口1060和总线1070。
总线1070可以被配置为提供诸如存储器控制器1000的组件之间的通道的数据路径。
处理器1010可以控制存储器控制器1000的全部操作,并且可执行逻辑操作。处理器1010可以通过主机接口1040与外部主机通信,并且通过存储器接口1060与存储器装置通信。而且,处理器1010可以通过缓冲器控制电路1050与存储器缓冲器1020通信。处理器1010可以使用存储器缓冲器1020作为工作存储器、高速缓存存储器或缓冲存储器来控制存储装置的操作。
处理器1010可以执行闪存转换层(FTL)的功能。处理器1010可以通过FTL来将由主机提供的逻辑块地址(LBA)转换为物理块地址(PBA)。FTL可以接收通过使用映射表而待被转换为PBA的LBA。根据映射方案,FTL可以利用几种地址映射方法。代表性地址映射方法包括页面映射方法、块映射方法和混合映射方法。
处理器1010被配置为使从主机接收的数据随机化。例如,处理器1010可以使用随机化种子来使从主机接收的数据随机化。随机化的数据作为待被存储的数据而被提供给存储器装置,以被编程在存储器单元阵列中。
在读取操作中,处理器1010被配置为使从存储器装置接收的数据去随机化。例如,处理器1010可以使用去随机化种子使从存储器装置接收的数据去随机化。去随机化的数据可以被输出到主机。
在实施例中,处理器1010可以通过驱动软件或固件来执行随机化和去随机化。
存储器缓冲器1020可以被用作处理器1010的工作存储器、高速缓存存储器或缓冲存储器。存储器缓冲器1020可以存储由处理器1010执行的代码和命令。存储器缓冲器1020可以包括静态RAM(SRAM)或动态RAM(DRAM)。
在实施例中,存储器缓冲器1020可以包括图1所示的历史偏压存储装置220。
ECC电路1030可以执行ECC操作。ECC电路1030可以对待通过存储器接口1060而写入存储器装置的数据执行ECC编码。经ECC编码的数据可以通过存储器接口1060而被传送到存储器装置。ECC电路1030可以对通过存储器接口1060而从存储器装置接收的数据执行ECC解码。在示例中,ECC电路1030可以作为存储器接口1060的组件而被包括在存储器接口1060中。
主机接口1040可以在处理器1010的控制下与外部主机通信。主机接口1040可使用诸如以下的的各种通信方式中的至少一种与主机通信:通用串行总线(USB)、串行AT附件(SATA)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、火线、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)和低负载DIMM(LRDIMM)。
缓冲器控制电路1050被配置为在处理器1010的控制下控制存储器缓冲器1020。
存储器接口1060被配置为在处理器1010的控制下与存储器装置进行通信。存储器接口1060可以通过通道与存储器装置通信命令、地址和数据。
在示例中,存储器控制器1000可以不包括存储器缓冲器1020和缓冲器控制电路1050。
在示例中,处理器1010可以通过使用代码来控制存储器控制器1000的操作。处理器1010可以从设置在存储器控制器1000中的非易失性存储器装置(例如,只读存储器ROM)加载代码。在另一实施例中,处理器1010可以通过存储器接口1060来从存储器装置加载代码。
在示例中,存储器控制器1000的总线1070可以分为控制总线和数据总线。数据总线可以被配置为在存储器控制器1000中传送数据,控制总线可以被配置为在存储器控制器1000中传送诸如命令和地址的控制信息。数据总线和控制总线彼此分开,并且可以不相互干扰或影响。数据总线可以联接到主机接口1040、缓冲器控制电路1050、ECC电路1030和存储器接口1060。控制总线可以联接到主机接口1040、处理器1010、缓冲器控制电路1050、存储器缓冲器1020和存储器接口1060。
图17是示出根据本公开的实施例对其应用了存储装置的存储卡系统的框图。
参照图17,存储卡系统2000包括存储器控制器2100、存储器装置和连接器2300。
存储器控制器2100联接到存储器装置2200。存储器控制器2100被配置成访问存储器装置2200。例如,存储器控制器2100被配置成控制存储器装置2200的读取操作、写入操作、擦除操作和后台操作。存储器控制器2100被配置成提供存储器装置2200和主机之间的接口。存储器控制器2100被配置成驱动用于控制存储器装置2200的固件。存储器控制器2100可以与参照图1描述的存储器控制器200相同地实施。
在示例中,存储器控制器2100可以包括诸如随机存取存储器(RAM)、处理单元、主机接口、存储器接口和ECC电路的组件。
存储器控制器2100可以通过连接器2300与外部装置通信。存储器控制器2100可以根据特定通信协议与外部装置(例如,主机)进行通信。在示例中,存储器控制器2100可通过诸如以下的各种通信协议中的至少一种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、Wi-Fi、蓝牙和NVMe。
在示例中,存储器装置2200可以利用诸如以下各种非易失性存储器装置来实施:电可擦除可编程ROM(EPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)以及自旋转移力矩磁性RAM(STT-MRAM)。
存储器控制器2100和存储器装置2200可以集成到单个半导体装置中以配置存储卡。例如,存储器控制器2100和存储器装置2200可以构成诸如以下的存储卡:PC卡(个人计算机存储卡国际协会(PCMCIA))、紧凑型闪存(CF)卡、智能媒体卡(SM和SMC)、记忆棒、多媒体卡(MMC、RS-MMC、微型MMC和eMMC)、SD卡(SD、迷你SD、微型SD和SDHC)和通用闪存(UFS)。
图18是示例性示出根据本公开的实施例的应用存储装置的固态驱动器(SSD)系统的框图。
参照图18,SSD系统3000包括主机3100和SSD 3200。SSD 3200通过信号连接器3001与主机3100交换信号SIG,并且通过电源连接器3002接收电力PWR。SSD 3200包括SSD控制器3210、多个闪速存储器3221至322n、辅助电源3230和缓冲存储器3240。
在实施例中,SSD控制器3210可以用作参照图1描述的存储器控制器200。
SSD控制器3210可以响应于从主机3100接收的信号SIG来控制多个闪速存储器3221至322n。在示例中,信号SIG可以是基于主机3100和SSD 3200之间的接口的信号。例如,信号SIG可以是由诸如以下的接口中的至少一种来定义的信号:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WI-FI、蓝牙和NVMe。
辅助电源3230通过电源连接器3002被联接到主机3100。当来自主机3100的电力供应不平稳时,辅助电源3230可以向SSD3200提供电力。在示例中,辅助电源3230可以位于SSD3200中,或者位于SSD 3200的外部。例如,辅助电源3230可以位于主板上,并且向SSD 3200提供辅助电力。
缓冲存储器3240用作SSD 3200的缓冲存储器。例如,缓冲存储器3240可以临时存储从主机3100接收的数据或从多个闪速存储器3221至322n接收的数据,或者临时存储闪速存储器3221至322n的元数据(例如,映射表)。缓冲存储器3240可以包括诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器或诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器。
图19是示出根据本公开的实施例对其应用了存储装置的用户系统的框图。
参照图19,用户系统4000包括应用处理器4100、存储器模块4200、网络模块4300、存储模块4400和用户接口4500。
应用处理器4100可以驱动包括在用户系统4000中的组件、操作系统(OS)、用户程序等。在示例中,应用处理器4100可以包括用于控制包括在用户系统4000中的组件的控制器、接口、图形引擎等。应用处理器4100可以被设置为片上系统(SoC)。
存储器模块4200可以操作为用户系统4000的主存储器、工作存储器、缓冲存储器或高速缓存存储器。存储器模块4200可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2 SDRM、DDR3 SDRAM、LPDDR SDRAM、LPDDR2 SDRAM和LPDDR3 SDRAM的易失性随机存取存储器或诸如PRAM、ReRAM、MRAM和FRAM的非易失性随机存取存储器。在示例中,应用处理器4100和存储器模块4200可以通过基于堆叠封装(PoP)进行封装而被设置为一个半导体封装。
网络模块4300可以与外部装置通信。在示例中,网络模块4300可支持无线通信,诸如码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、WiMAX、WLAN、UWB、蓝牙和Wi-Fi。在示例中,网络模块4300可以包括在应用处理器4100中。
存储模块4400可以存储数据。例如,存储模块4400可以存储从应用处理器4100接收的数据。可选地,存储模块4400可以将所存储的数据传送至应用处理器4100。在示例中,可以利用诸如相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、NAND闪存、NOR闪存或具有三维结构的NAND闪存的非易失性半导体存储器装置来实施存储模块4400。在示例中,存储模块4400可以设置为诸如用户系统4000的存储卡或外部驱动器的可移动驱动器。
在示例中,存储模块4400可以包括多个非易失性存储器装置,并且多个非易失性存储器装置可与参照图1描述的存储器装置100相同地操作。存储模块4400可以与参照图1描述的存储装置50相同地操作。
用户接口4500可以包括用于将数据或命令输入到应用处理器4100或用于将数据输出到外部装置的接口。在示例中,用户接口4500可以包括用户输入接口,诸如键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、相机、麦克风、陀螺仪传感器、振动传感器和压电元件。用户接口4500可以包括用户输出接口,诸如液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和监控器。
根据本公开的实施例,可以提供一种具有提高的读取性能的存储装置及其操作方法。
尽管已经示出和描述了本发明的各个实施例,但是本领域技术人员基于本公开将理解的是,可以在不脱离由所附权利要求及其等同方案限定的本发明的精神和范围的情况下,在形式和细节上进行各种改变。因此,本发明的范围不限于上述实施例;而是,本发明的范围由所附权利要求及其等同方案确定。
在上述实施例中,在某些情况下,不需要执行所有步骤或操作,并且可以以与所描述的顺序不同的顺序来组合或执行步骤或操作。本公开的实施例旨在促进对本发明的理解,而不是限制本发明。
尽管本文使用了特定的术语,但是它们仅用于解释本发明的实施例,而不是对其进行限制。在本发明的精神和范围内,能够进行许多变型和修改。落入权利要求书的范围内的所有这些变型和修改都由本发明涵盖。
Claims (21)
1.一种存储器控制器,所述存储器控制器控制存储器装置,所述存储器装置包括多个存储器单元,所述存储器控制器包括:
读取操作控制器,读取存储在所述多个存储器单元之中的所选择存储器单元中的数据;
历史偏压存储装置,存储多个历史平均偏压以及多个参考单元计数值,所述多个历史平均偏压是所述多个存储器单元具有的多个阈值电压分布的平均偏压,所述多个参考单元计数值分别与所述多个阈值电压分布相对应;以及
读取电压设置电路,当所述读取操作失败时,计算单元计数值与所述多个参考单元计数值之间的差值,并且根据所述差值是否处于阈值范围内,基于所述多个历史平均偏压来确定调整读取电压以读取所述所选择存储器单元,
其中所述单元计数值是所述所选择存储器单元之中的、通过所述多个历史平均偏压而被读取为第一存储器单元的存储器单元的数量,并且
其中基于所述所选择存储器单元的数量和所述多个阈值电压分布的数量来确定所述多个参考单元计数值。
2.根据权利要求1所述的存储器控制器,其中当所述读取操作失败时,所述读取操作控制器控制所述存储器装置以使用所述多个历史平均偏压来读取所述所选择存储器单元。
3.根据权利要求1所述的存储器控制器,其中所述读取操作控制器控制所述存储器装置以使用所述调整读取电压来读取所述所选择存储器单元。
4.根据权利要求1所述的存储器控制器,其中所述第一存储器单元是导通单元或关断单元。
5.根据权利要求1所述的存储器控制器,其中所述历史偏压存储装置将最近成功的读取操作中的关于所述多个存储器单元的阈值电压分布的平均偏压存储为所述多个历史平均偏压。
6.根据权利要求5所述的存储器控制器,其中所述所选择存储器单元是所述多个存储器单元之中的、与被执行所述最近成功的读取操作的存储器单元不同的存储器单元。
7.根据权利要求1所述的存储器控制器,其中所述历史偏压存储装置存储关于与包括所述多个存储器单元的存储块相对应的所述多个历史平均偏压的信息。
8.根据权利要求1所述的存储器控制器,其中所述历史偏压存储装置存储关于与包括所述多个存储器单元的平面相对应的所述多个历史平均偏压的信息。
9.根据权利要求1所述的存储器控制器,其中当所述差值处于所述阈值范围内时,所述读取电压设置电路基于所述多个历史平均偏压、通过高斯建模来确定所述调整读取电压。
10.根据权利要求1所述的存储器控制器,其中当所述差值超出所述阈值范围时,所述读取电压设置电路使用软数据来确定所述调整读取电压,通过使用基于参考读取电压而确定的多个软读取电压来读取所述所选择存储器单元而获得所述软数据。
11.根据权利要求10所述的存储器控制器,其中所述参考读取电压是在所述读取操作中使用的读取电压或基于所述多个历史平均偏压、通过高斯建模而计算的读取电压。
12.根据权利要求1所述的存储器控制器,进一步包括错误校正器,所述错误校正器对根据所述读取操作而从所述存储器装置获取的读取数据执行错误校正解码,并且基于通过执行所述错误校正解码而获得的结果,来生成表示所述读取操作是否已失败的读取失败信息。
13.一种操作存储装置的方法,所述存储装置包括存储器装置和存储器控制器,所述存储器装置包括多个存储器单元,所述存储器控制器控制所述存储器装置,所述方法包括:
存储关于多个历史平均偏压的信息,所述多个历史平均偏压是所述多个存储器单元具有的多个阈值电压分布的平均偏压;
对所述多个存储器单元之中的所选择存储器单元执行读取操作;
当所述读取操作失败时,将单元计数值与多个参考单元计数值进行比较,所述多个参考单元计数值分别对应于所述多个阈值电压分布;并且
根据所述单元计数值与所述多个参考单元计数值之间的差值是否处于阈值范围内,基于所述多个历史平均偏压来确定调整读取电压,
其中所述单元计数值是所述所选择存储器单元之中的、通过所述多个历史平均偏压而被读取为第一存储器单元的存储器单元的数量,并且
其中基于所述所选择存储器单元的数量和所述多个阈值电压分布的数量来确定所述多个参考单元计数值。
14.根据权利要求13所述的方法,其中所述比较包括:当所述读取操作失败时,使用所述多个历史平均偏压来读取所述所选择存储器单元。
15.根据权利要求13所述的方法,进一步包括:使用所述调整读取电压来读取所述所选择存储器单元。
16.根据权利要求13所述的方法,其中在所述存储中,将最近成功的读取操作中的关于所述多个存储器单元的阈值电压分布的平均偏压存储为所述多个历史平均偏压。
17.根据权利要求13所述的方法,其中在所述确定中,当所述差值处于所述阈值范围内时,基于所述多个历史平均偏压、通过高斯建模来确定所述调整读取电压。
18.根据权利要求13所述的方法,其中在所述确定中,当所述差值超出所述阈值范围时,使用软数据来确定所述调整读取电压,通过使用基于参考读取电压而确定的多个软读取电压来读取所述所选择存储器单元而获得所述软数据,
其中所述参考读取电压是在所述读取操作中使用的读取电压或基于所述多个历史平均偏压而计算的读取电压。
19.根据权利要求13所述的方法,其中所述第一存储器单元是导通单元或关断单元。
20.根据权利要求13所述的方法,其中所述多个历史平均偏压对应于包括所述多个存储器单元的存储块或对应于包括所述多个存储器单元的平面。
21.一种存储器系统,包括:
存储器装置,向多个存储器单元提供读取电压并且输出所述多个存储器单元中存储的数据;
控制器,估计所述多个存储器单元的阈值电压,
其中当成功识别所述数据时,所述控制器将所述阈值电压的代表值反映在跟踪偏压中,否则所述控制器基于所述阈值电压和参考阈值电压之间的差值是否可接受,来确定如何使用所述跟踪偏压以调整所述读取电压的电平。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2019-0104706 | 2019-08-26 | ||
KR1020190104706A KR20210024912A (ko) | 2019-08-26 | 2019-08-26 | 저장 장치 및 그 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112435703A true CN112435703A (zh) | 2021-03-02 |
Family
ID=74679157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911285250.3A Withdrawn CN112435703A (zh) | 2019-08-26 | 2019-12-13 | 存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11004519B2 (zh) |
KR (1) | KR20210024912A (zh) |
CN (1) | CN112435703A (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11069415B2 (en) * | 2018-10-05 | 2021-07-20 | Samsung Electronics Co., Ltd. | Memory device including charge pump circuit |
KR20210106753A (ko) * | 2020-02-21 | 2021-08-31 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 동작 방법 |
JP2022035525A (ja) | 2020-08-21 | 2022-03-04 | キオクシア株式会社 | 半導体記憶装置の動作条件の調整方法 |
KR102558145B1 (ko) * | 2021-05-20 | 2023-07-25 | 한국전자통신연구원 | 플래시 메모리를 이용한 가우시안 오류 데이터 생성 방법 및 이를 이용한 장치 |
KR102460717B1 (ko) * | 2021-08-17 | 2022-10-31 | 삼성전자주식회사 | 최적 독출 레벨을 산출하는 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 컨트롤러의 동작방법 |
EP4152332A1 (en) * | 2021-09-17 | 2023-03-22 | Samsung Electronics Co., Ltd. | Storage controller determining distribution type, method of operating the same, and method of operating storage device including the same |
KR102491652B1 (ko) | 2021-09-17 | 2023-01-27 | 삼성전자주식회사 | 산포 타입을 결정하는 스토리지 컨트롤러, 그것의 동작하는 방법, 및 그것을 포함하는 스토리지 장치의 동작하는 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7180795B1 (en) * | 2005-08-05 | 2007-02-20 | Atmel Corporation | Method of sensing an EEPROM reference cell |
US20100110774A1 (en) * | 2007-03-20 | 2010-05-06 | Shinichi Ouchi | Sram device |
US8724387B2 (en) * | 2009-10-22 | 2014-05-13 | Densbits Technologies Ltd. | Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages |
US9645177B2 (en) * | 2012-05-04 | 2017-05-09 | Seagate Technology Llc | Retention-drift-history-based non-volatile memory read threshold optimization |
KR102038408B1 (ko) * | 2012-10-25 | 2019-10-30 | 삼성전자주식회사 | 회귀 분석법을 사용하는 메모리 시스템 및 그것의 읽기 방법 |
KR102050475B1 (ko) | 2013-01-14 | 2020-01-08 | 삼성전자주식회사 | 플래시 메모리, 플래시 메모리 장치 및 이의 동작 방법 |
KR102290974B1 (ko) | 2014-11-07 | 2021-08-19 | 삼성전자주식회사 | 불휘발성 메모리 장치, 메모리 컨트롤러 및 그것들을 포함하는 불휘발성 메모리 시스템의 동작 방법 |
KR20180027660A (ko) * | 2016-09-05 | 2018-03-15 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
JP2018163727A (ja) * | 2017-03-27 | 2018-10-18 | 東芝メモリ株式会社 | 半導体記憶装置 |
-
2019
- 2019-08-26 KR KR1020190104706A patent/KR20210024912A/ko unknown
- 2019-11-26 US US16/696,508 patent/US11004519B2/en active Active
- 2019-12-13 CN CN201911285250.3A patent/CN112435703A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US20210065815A1 (en) | 2021-03-04 |
KR20210024912A (ko) | 2021-03-08 |
US11004519B2 (en) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11004519B2 (en) | Storage device and operating method thereof | |
US11037639B2 (en) | Memory controller and method of operating the same for processing the failed read operation | |
US11099745B2 (en) | Storage device and operating method thereof | |
US11048585B2 (en) | Storage device and operating method thereof | |
US11133069B2 (en) | Memory controller to determine an optimal read voltage, operating method thereof and storage device including the same | |
CN111105836B (zh) | 存储装置及其操作方法 | |
US11017865B2 (en) | Memory controller determining optimal read voltage and operating method thereof | |
US10991432B2 (en) | Storage device and method of operating the same | |
US10910047B2 (en) | Storage device and method of operating the same | |
CN111916134A (zh) | 存储装置及其操作方法 | |
CN115938444A (zh) | 存储器装置及其操作方法 | |
CN115376596A (zh) | 存储器设备和该存储器设备的操作方法 | |
CN111667871B (zh) | 存储器设备及其操作方法 | |
CN111796962A (zh) | 存储装置以及存储装置的操作方法 | |
US11842779B2 (en) | Memory device and operating method for performing verify operation | |
CN115586865A (zh) | 存储器控制器及其操作方法 | |
CN111341372B (zh) | 存储装置以及操作存储装置的方法 | |
CN114360593A (zh) | 存储装置及其操作方法 | |
CN114596906A (zh) | 存储装置及其操作方法 | |
CN112289361A (zh) | 存储器装置及其操作方法 | |
CN112002367A (zh) | 存储器装置以及操作该存储器装置的方法 | |
CN112447234A (zh) | 存储器控制器及其操作方法 | |
US20230350576A1 (en) | Memory device and program speed control method thereof | |
US11923014B2 (en) | Memory system compensating for performance deterioration of a memory device | |
US11586370B2 (en) | Memory controller and method of operating the same |
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: 20210302 |