CN103035294A - 从非易失性存储器读数据的方法及实施方法的设备和*** - Google Patents

从非易失性存储器读数据的方法及实施方法的设备和*** Download PDF

Info

Publication number
CN103035294A
CN103035294A CN2012103712102A CN201210371210A CN103035294A CN 103035294 A CN103035294 A CN 103035294A CN 2012103712102 A CN2012103712102 A CN 2012103712102A CN 201210371210 A CN201210371210 A CN 201210371210A CN 103035294 A CN103035294 A CN 103035294A
Authority
CN
China
Prior art keywords
read
reading
data
page
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012103712102A
Other languages
English (en)
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN103035294A publication Critical patent/CN103035294A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/5642Sensing 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
    • 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/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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

公开了执行读重试的方法和用于执行这样的方法的设备,所述方法包括利用新的读参数读取非易失性存储器。读重试操作和/或后续读重试操作可以在确定这样的读重试操作被批准之前开始和/或完成。例如,可以利用施加于页面的字线的新的读电压电平在读重试操作中读取NAND闪速存储器的页面。例如,可以在确定目标页面的先前读取的数据页面的错误无法通过ECC操作纠正之前对目标页面执行读重试操作。

Description

从非易失性存储器读数据的方法及实施方法的设备和***
对相关申请的交叉引用
本申请要求2011年9月28日提交的韩国专利申请No.10-2011-0098579的优先权,通过引用将其公开整体合并于此。
技术领域
本发明涉及半导体存储器件,且更具体地,涉及从非易失性存储器件读取数据的方法以及用于其的装置,诸如存储器控制器、非易失性存储器件、和存储***。
背景技术
存储器件可以是易失性存储器件或者非易失性存储器件。易失性存储器件包括动态随机存取存储器(DRAM)器件和静态随机存取存储器(SRAM)器件。非易失性存储器件包括闪速存储器件、电可擦除可编程只读存储器(EEPROM)器件、和电阻存储器件。
在某些存储器件中,例如,在诸如闪速存储器的非易失性存储器件中,随着编程/擦除循环数量的增加,可靠性降低。可以使用纠错编码(ECC)电路来纠正在从闪速存储器件读取的数据中的错误。当难以或者无法使用ECC电路来纠正错误时,可以执行数据读取重试。
发明内容
一些实施例提供从非易失性存储器件读取数据的方法,以提高非易失性存储器件的可靠性和/或读取速度。还公开了存储器控制器、非易失性存储器件、以及包括存储器控制器和非易失性存储器件的可以执行所公开的方法的全部或部分的存储***。
在一个示例中,一种操作非易失性存储器的方法可以包括:发出第一读命令,其命令非易失性存储器执行非易失性存储器的第一页面的第一次读取;接收从第一次读取产生的第一读取数据页面;确定从第一次读取产生的第一读取数据页面具有不会被纠错电路纠正的错误;响应于确定步骤,发出第二读命令,其命令非易失性存储器以与执行第一次读取时使用的操作参数不同的操作参数再次执行第一页面的第二次读取;接收从第二次读取产生的第二读取数据页面;分析从第二次读取产生的第二读取数据页面是否具有不会被纠错电路纠正的错误;以及在分析步骤完成之前,发出第三读命令,其命令非易失性存储器以与执行第一次读取时使用的操作参数不同并且与执行第二次读取时使用的操作参数不同的操作参数再次执行第一页面的第三次读取。还公开了可以执行该方法及其替换方案的设备。
可以在接收从第二次读取产生的第二读取数据页面的步骤已完成之前,或者在接收从第二次读取产生的第二读取数据页面的任何数据之前,发出第三读命令。
第一页面可以被存储在第一物理页面中,并且操作参数可以代表非易失性存储器用来确定第一物理页面的多个存储单元中的每一个的存储单元数据的读基准电压的量值。
非易失性存储器可以是NAND闪速存储器,并且操作参数可以代表施加于非易失性存储器的第一物理页面的字线用于确定第一物理页面的多个存储单元中的每一个的存储单元数据的读基准电压的量值。
第二读命令和第三读命令均可以命令非易失性闪速存储器利用在对应的读操作期间顺次施加于第一物理页面的字线的两个新的读基准电压来读取MLC NAND闪速存储器。
第二读命令和第三读命令中的每一个均可以为读重试命令。读重试命令可以是唯一的,并与用于读重试操作的唯一的命令码相关联。读重试命令可以包括或者不包括代表对应的操作参数的值。可以从读重试表(例如,在存储器控制器工作存储器中,或者在非易失性存储器中)检索该对应的操作参数。
第二读命令和第三读命令(其可以是读重试命令)可以不包含任何地址信息。
所述方法和设备可以在发出第一电平设置命令和第二电平设置命令的每一个之前确定非易失性存储器的存储器阵列并非正在执行读操作。
一种操作NAND闪速存储器的方法可以包括:第一次读取NAND闪速存储器的第一页面以获取第一读取数据页面;然后,在完成对第一读取数据页面的纠错操作之前,发出读命令,该读命令导致利用至少一个调整的读电压第二次读取第一页面。还公开了可以执行这些操作的设备。
一种操作非易失性存储器的方法可以包括:利用第一读操作参数第一次读取非易失性存储器的页面以获取第一读取数据页面,并将第一读取数据页面存储在非易失性存储器的第一寄存器中;将第一读取数据页面从第一寄存器传送到非易失性存储器的第二寄存器;将第一读取数据页面从第二寄存器传送到存储器控制器;在将第一读取数据页面从第二寄存器传送到存储器控制器的同时,使用与第一读操作参数不同的第二读操作参数再次第二次读取数据的页面。还公开了可以执行这些操作的设备。非易失性存储器可以是NAND闪速存储器,并且页面可以被存储在NAND闪速存储器的第一物理页面中。该方法还可以包括:在第一次读取期间将第一读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据;以及在第二次读取期间将第二读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据。
非易失性存储器可以是多电平单元(MLC)NAND闪速存储器,并且页面可以被存储在NAND闪速存储器的第一物理页面中,并且该方法可以包括:在第一次读取期间将包括第一读基准电压的第一组读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据;以及在第二次读取期间将包括第二读基准电压的第二组读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据,其中,第二组读基准电压不同于第一组读基准电压。
读重试命令可以是专用于读重试的唯一命令。读重试命令可以指令非易失性存储器件执行第二次读取。读重试命令可以包括代表更新的读操作参数的值,可以发出单独的电平设置命令以提供更新的读操作参数,或者,非易失性存储器可以在内部访问信息以确定更新的读操作参数。在一些示例中,读重试命令可以不包含任何地址信息。
一些示例设备和方法可以包括:第一次读取NAND闪速存储器的第一页面以获取第一读取数据页面;然后,在完成对第一读取数据页面的纠错操作之前,发出读命令,该读命令导致利用至少一个调整的读电压第二次读取第一页面。
可以在接收从第一次读取产生的第一读取数据页面的全部和/或部分内容之前发出读命令。
根据一些方面,一种非易失性存储器可以包括:包括第一物理页面的存储器阵列、第一数据寄存器、第二数据寄存器、和控制电路,被配置为执行页面的第一次读取以获取第一读取页面,将第一读取页面存储在第一数据寄存器中,将从第一次读取产生的第一读取数据页面从第一数据寄存器传送到第二数据寄存器,当从第一次读取产生的第一读取数据页面被存储在第二数据寄存器中时执行页面的第二次读取,以及将从第一次读取产生的数据的页面从第二数据寄存器传送到外部源。
根据某些方面,一种非易失性存储器件可以包括:存储器阵列;命令电路,被配置为接收读命令,并响应于读命令开始存储器阵列的读操作;控制电路,被配置为断言第一R/B(读繁忙)标志以指示非易失性存储器不能接受额外的命令,并且响应于读操作而断言第二R/B标志以指示存储器阵列的状态;以及数据缓冲器,被配置为响应于读操作,当第二R/B标志指示存储器阵列的繁忙状态时,从非易失性存储器输出数据。
控制电路可以响应于从外部存储器控制器接收的读状态命令而断言第一R/B标志和第二R/B标志作为响应。
一种被配置为操作NAND闪速存储器的存储器控制器可以包括:接口;纠错编码电路,被配置为分析通过接口接收的数据页面,以纠正页面的比特错误并确定数据页面是否具有无法纠正的错误;以及命令电路,被配置为产生命令并将其输出到接口,所述命令包括第一读命令,以导致NAND闪速存储器的第一页面的第一次读取并通过接口接收从第一次读取产生的第一读取页面。纠错编码电路可以被配置为确定第一读取页面是否具有无法纠正的错误,并且命令电路可以被配置为在由纠错编码电路完成确定第一读取数据页面是否具有无法纠正的错误的确定操作之前,发出第二读命令,第二读命令导致利用至少一个调整的读电压对第一页面的第二次读取。
命令电路可以被配置为在通过接口接收第一读取数据页面的全部之前发出第二读命令。命令电路可以被配置为在通过接口接收第一读取页面的任何内容之前发出第二读命令。第二读命令可以是读重试命令。
诸如存储卡的设备可以包括:非易失性存储器件,其包括包含多个存储数据的页面存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的第一寄存器以及从缓存寄存器接收数据并存储该数据的第二寄存器的存取电路;卡接口,被配置为与主机通信;以及非易失性存储器件与卡接口之间的存储器控制器接口。其中,存储器控制器被配置为将从非易失性存储器件中的多个页面中的目标页面读取数据的第一读命令传送到非易失性存储器,并将从目标页面读取数据的第二读命令传送到非易失性存储器,并且其中,存储器控制器被配置为在非易失性存储器件响应于第二读命令正在从目标页面读取数据的同时,接收响应于第一读命令已经读取的数据。
一种从非易失性存储器读取数据的方法可以包括:接收从非易失性存储器件的目标页面读取的数据,并对数据执行纠错编码;当R/B信号处于就绪状态并且纠错编码失败时,设置读电压电平并将用于从目标页面读取数据的读重试命令输出到非易失性存储器件;从非易失性存储器件接收在先前读操作中已被读取并被暂时存储在第二寄存器中的数据,并对数据执行纠错编码,并且,重复这些设置和接收数据操作,直到纠错编码完成为止,并且,当纠错编码完成时,复位非易失性存储器件并终止读操作。在非易失性存储器件响应于读重试命令正在从存储单元阵列读取目标页面的数据的同时,可以执行接收数据的操作。
R/B信号可以包括:被输出到第一输入/输出引脚的主机R/B信号、以及被输出到第二输入/输出引脚的阵列R/B信号。
设置操作可以包括:监测主机R/B信号和阵列R/B信号;以及当主机R/B信号和阵列R/B信号两者都处于就绪状态时,设置读电压电平并将用于从目标页面读取数据的读重试命令输出到非易失性存储器件。
设置操作可以包括:存储用于读电压电平的多个预定值;基于读重试命令将读电压电平设置为预定值中的一个或更多个;以及使用新设置的读电压电平从目标页面读取数据。
当已经尝试将设置和接收操作重复一定量时,例如当在读重试操作中已经使用了用于读电压电平的所有预定值时,全部读重试操作可以被终止并被确定为失败。
该方法还可以包括:控制非易失性存储器件从目标页面读取数据,并使用读重试命令将其暂时存储;以及使用读重试命令接收暂时存储在先前的读操作中的数据,并对数据执行纠错编码。
一种计算机可读记录介质可以存储执行这里所公开的方法的程序。
一种方法可以包括:将用于从目标页面读取数据的正常读命令输出到非易失性存储器件;当R/B信号处于就绪模式时设置读电压电平并将用于从目标页面读取数据的读重试命令输出到非易失性存储器件,而不对响应于正常读命令读取的数据进行错误校验;从非易失性存储器件接收已经被读取并被暂时存储在先前的读操作中的数据,并对数据执行纠错编码,并且重复设置和接收操作,直到纠错编码完成为止;以及当纠错编码完成时,复位非易失性存储器件并终止读操作。当非易失性存储器件响应于读重试命令从存储单元阵列读取目标页面的数据时,可以执行接收操作的至少一部分或者全部。
一种存储器控制器可以包括:中央处理单元,被配置为响应于从主机接收的数据读命令,将用于从非易失性存储器件中的多个页面当中的目标页面读取数据的第一读命令传送到非易失性存储器件,监测非易失性存储器件的状态信号,以及当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到非易失性存储器件;以及纠错编码(ECC)块,被配置为从非易失性存储器件接收目标页面的数据并执行ECC,其中,存储器控制器可以被配置为接收已响应于第一读命令读取并存储在非易失性存储器件的数据寄存器中的数据,和/或被配置为在非易失性存储器件响应于第二读命令正在从目标页面读取数据的同时,对数据执行ECC。
存储器控制器可以包括被配置为存储用于读电压电平的多个预定值的读电平表。
中央处理单元可以被配置为当在基于存储在读电平表中的所有预定值重复执行的读重试中未读取目标页面的数据时,将纠错编码确定为失败,并控制将读重试终止。
第一读命令和第二读命令可以是正常读命令或者唯一的读重试命令。
状态信号可以包括:被输出到第一输入/输出引脚的主机R/B信号;以及被输出到第二输入/输出引脚的阵列R/B信号,并且,当主机R/B信号和阵列R/B信号两者都处于就绪状态时,中央处理单元可以导致读重试被执行。
一种存储***可以包括:非易失性存储器件,其包括包含多个存储数据的页面的存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的缓存寄存器和从缓存寄存器接收数据并存储该数据的数据寄存器的存取电路;以及存储器控制器,被配置为控制非易失性存储器件的操作。存储器控制器可以响应于从主机接收到的数据读命令,将用于从非易失性存储器件中的多个页面中的目标页面读取数据的第一读命令传送到非易失性存储器件,监测非易失性存储器件的状态信号,并且,当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到非易失性存储器件。在存储器控制器接收已响应于第一读命令读取并存储在非易失性存储器件的数据寄存器中的数据的同时,和/或在存储器控制器对数据执行纠错编码的同时,非易失性存储器件可以响应于第二读命令从目标页面读取数据。
存储***、存储器控制器和/或非易失性存储器可以被配置为执行这里所描述的方法。
存储***可以被实施为多芯片封装,其包括如这里所描述的非易失性存储器件和存储器控制器。
一种存储卡可以包括:非易失性存储器件,其包括包含多个存储数据的页面存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的缓存寄存器和从缓存寄存器接收数据并存储该数据的数据寄存器的存取电路;卡接口,被配置为与主机通信;以及存储器控制器,被配置为控制非易失性存储器件与卡接口之间的接口。存储器控制器可以响应于从主机接收到的数据读命令,将用于从非易失性存储器件中的多个页面中的目标页面读取数据的第一读命令传送到非易失性存储器件,监测非易失性存储器件的状态信号,并且当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到非易失性存储器件。在非易失性存储器件响应于第二读命令正在从目标页面读取数据的同时,存储器控制器可以接收响应于第一读命令已经读取并存储在非易失性存储器件的数据寄存器中的数据,和/或可以对数据执行纠错编码。
存储卡可以是多媒体卡(MMC)、安全数字(SD)卡或USB闪速驱动器。
一种便携式通信***可以包括:闪速存储器件,其包括包含多个存储数据的页面存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的缓存寄存器和从缓存寄存器接收数据并存储该数据的数据寄存器的存取电路;存储器控制器,被配置为控制闪速存储器件的操作;以及显示设备,被配置为根据存储器控制器的控制,显示从闪速存储器件输出的数据。存储器控制器可以响应于从主机接收到的数据读命令,将用于从存储器件中的多个页面中的目标页面读取数据的第一读命令传送到存储器件,监测存储器件的状态信号,并且当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到存储器件。在存储器件响应于第二读命令正在从目标页面读取数据的同时,存储器控制器可以接收响应于第一读命令已经读取并被存储在存储器件的数据寄存器中的数据,和/或可以对数据执行纠错编码。
一种三维(3D)存储***可以包括:三维闪速存储器件,其包括包含包括多个存储数据的页面的多个层的存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的缓存寄存器和从缓存寄存器接收数据并存储该数据的数据寄存器存取电路;以及存储器控制器,被配置为控制三维闪速存储器件的操作。存储器控制器可以响应于从主机接收到的数据读命令,将用于从存储器件中的多个页面中的目标页面读取数据的第一读命令传送到存储器件,监测存储器件的状态信号,并且当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到存储器件。在存储器件响应于第二读命令正在从目标页面读取数据的同时,存储器控制器可以接收响应于第一读命令已经读取并被存储在存储器件的数据寄存器中的数据,和/或可以对数据执行纠错编码。
一种固态驱动器(SSD)可以包括:存储器件,其包括包含多个存储数据的页面的存储单元阵列、以及包含暂时存储在读操作中从存储单元阵列读取的数据的缓存寄存器和从缓存寄存器接收数据并存储该数据的数据寄存器的存取电路;以及存储器控制器,被配置为控制三维闪速存储器件的操作。存储器控制器可以响应于从主机接收到的数据读命令,将用于从存储器件中的多个页面中的目标页面读取数据的第一读命令传送到存储器件,监测存储器件的状态信号,并且当状态信号处于就绪状态时,设置读电压电平并将针对目标页面的第二读命令传送到存储器件。在存储器件响应于第二读命令正在从目标页面读取数据的同时,存储器控制器可以接收响应于第一读命令已经读取并被存储在存储器件的数据寄存器中的数据,和/或可以对数据执行纠错编码。
一种非易失性存储器件可以包括:存储单元阵列,其包含多个被配置为存储数据的页面;以及存取电路,被配置为响应于第一从外部接收的读命令,使用第一读电压从多个页面中的目标页面读取数据,并将读取的数据存储在缓存寄存器中,将缓存寄存器中的数据存储在数据寄存器中,并响应于第二读命令,使用第二读电压再次从目标页面读取数据,并将读取的数据存储在缓存寄存器中。当响应于第二读命令,数据被使用第二(调整的)读电压再次从目标页面读取并存储在缓存寄存器中时,数据寄存器中的数据可以被输出到非易失性存储器外部的源。
这里公开的非易失性存储器件可以包含一个或多个半导体芯片。
非易失性存储器可以自动开始利用第三(调整的)读电压从目标页面第三次读取数据。
调整读电压可以是响应于具有新电压电平信息的外部命令,或者,可以由非易失性存储器自动执行而无需由外部源提供的新电压电平信息。
存储***可以包括与存储器控制器结合的这里公开的非易失性存储器。存储***可以包括与非易失性存储器结合的这里公开的存储器控制器。
一种方法可以包括:使用第一读电压从非易失性存储器阵列的存储单元阵列中的目标页面读取数据;将读取的数据存储在非易失性存储器阵列的缓存寄存器中;将缓存寄存器中的数据存储在数据寄存器中;以及使用第二读电压再次从目标页面读取数据,并将读取的数据存储在缓存寄存器中,其中,在执行读取的同时,数据寄存器中的数据可以被输出到外部,和/或可以对数据执行纠错。纠错可以包括检测是否存在错误、这些错误是否可以纠正、和/或纠正数据的任何错误比特。
读操作可以包括:将暂时存储在缓存寄存器中的第一重试数据存储在数据寄存器中;使用重新设置的读电压从存储单元阵列中的目标页面再次读取数据,并将读取的数据存储在缓存寄存器中作为第二重试数据;以及将数据寄存器中的第一重试数据输出到外部设备。
一种从非易失性存储器件读取数据的方法可以包括:将用于从非易失性存储器件的存储单元阵列的目标页面读取数据的第一读命令输出到非易失性存储器件;设置读电平;传送用于从非易失性存储器件的目标页面再次读取数据的第二读命令;以及接收响应于第一读命令从目标页面读取并被存储在数据寄存器中的数据,并对数据执行纠错编码。在操作中接收从目标页面读取并存储在数据寄存器中的数据可以与非易失性存储器件响应于第二读命令读取并将目标页面的数据存储在缓存寄存器中的操作并行执行。
该方法可以包括在上面指明的步骤之前输出正常读命令,并在正常读命令导致包括不可以被ECC操作纠正的错误的读取数据时,触发上面指明的步骤。
附图说明
通过参考附图详细描述本发明的示范性实施例,本发明的上述和其他特征与益处将变得更为清晰,其中:
图1是根据一些实施例的主机和存储***的框图;
图2是图1中所示的存储器控制器的详细框图;
图3是示出根据一些实施例的诸如图1中所示的非易失性存储器件的结构的示意图;
图4是诸如图1中所示的非易失性存储器件的详细框图;
图5A是根据一些实施例的诸如图2中所示的示范性存储单元阵列的详细电路图;
图5B是根据其他实施例的诸如图2中所示的示范性存储单元阵列的详细电路图;
图6A是用于说明图1中所示的存储***中的读重试操作的图;
图6B是用于说明影响读重试操作的多个操作参数的电平设置操作的图;
图7A到7D是可以由图1中所示的存储***执行的读重试操作的定时图;
图8是示出根据一些实施例的可以由存储器控制器发送到图1中所示的非易失性存储器件的示范性命令信号的图;
图9是示出根据一些实施例的诸如图1中所示的在非易失性存储器件与存储器控制器之间的示范性状态信号输入/输出的图,
图10A是根据一些实施例的诸如图1所示的存储***的操作的定时图;
图10B是示出根据图10A中所示的实施例的存储***的操作的图;
图11A是根据其他实施例的诸如图1中所示的存储***的操作的定时图;
图11B是示出根据图11A中所示的实施例的存储***的操作的图;
图12A是根据其他的实施例的图1中所示的存储***的操作的定时图;
图12B是示出根据图12A中所示的实施例的存储***的操作的图;
图13是根据一些实施例的使用图1中所示的存储***控制数据读取的方法的流程图;
图14是根据其他实施例的使用图1中所示的存储***控制数据读取的方法的流程图;
图15是根据示范性实施例的包括图1所示的存储***的数据处理***;
图16是根据另一示范性实施例的包括图1中所示的存储***的数据处理***;
图17是根据另一示范性实施例的包括图1中所示的存储***的数据处理***;
图18是根据另一示范性实施例的包括图1中所示的存储***的数据处理***;
图19是根据另一示范性实施例的包括图1中所示的存储***的数据处理***;以及
图20是包括图19中所示的数据处理***900的数据存储设备1000的框图。
具体实施方式
以下将参考附图更全面地描述示范性实施例。然而,本发明可以以许多不同形式实现,并且不应当被解读为限于这里给出的示范性实施例。附图中,为了清晰可能夸大层和区域的尺寸和相对大小。相同的数字通篇指示相同的元件。
将会理解,当一元件被称为被“连接”或者“耦合”到另一元件时,其可以直接连接或者耦合到另一元件,或者,可能存在居间的元件。相反,当一元件被称为被“直接连接”或者“直接耦合”到另一元件时,不存在居间的元件。如这里所使用的,术语“和/或”包括相关联的被列出项目中的一个或更多个的任意和所有组合,并可以被缩写为“/”。
将会理解,尽管这里可能使用术语第一、第二等来描述各种元件,但是这些元件不应被这些术语限制。这些术语只被用来将一个元件与另一个加以区分。例如,第一信号可以被称为第二信号,并且类似地,第二信号可以被称为第一信号而不偏离本公开的教导。
这里使用的术语仅仅是为了描述特定实施例,并非旨在限制本发明。如这里所使用的,单数形式“一”、“一个”和“该”预期也包括复数形式,除非上下文清楚地另有指示。还将会理解,例如“包含”、“包括”、“由...制成”、“具有”的术语在本说明书中被使用时,规定了存在所陈述的特征、区域、部分、步骤、操作、元件,和/或部件,但是不排除存在或者添加一个或更多个其他的特征、区域、部分、步骤、操作、元件、部件,和/或其组。
除非另外定义,否则这里使用的所有术语(包括技术和科学术语)具有和本发明所属技术领域的技术人员通常理解的相同的含义。还将会理解,例如在常用词典中定义的那些的术语应当被解释为具有与其在相关技术和/或本发明的上下文中的含义相符的含义,并且将不会以理想化或者过于形式化的意义解释,除非这里明确地如此定义。
图1是根据一些实施例的主机10和存储***20的框图。图2是图1中所示的存储器控制器100的详细框图。
参考图1,与主机10连接的存储***20包括存储器控制器100和非易失性存储器件200。存储***20可以是任何包括非易失性存储器的***。
参考图2,存储器控制器100包括存储器件(例如,随机存取存储器(RAM))110、读重试表115、中央处理单元(CPU)120、主机接口130、纠错编码(ECC)电路140、和非易失性存储器接口150。
存储器控制器100产生地址和命令(例如编程命令、读命令、或擦除命令)以控制非易失性存储器件(例如,闪速存储器件)200的操作(例如,编程、读操作、或擦除操作)。在非易失性存储器件200内,编程操作和读操作可以以页面为单位执行,而擦除操作可以以块为单位执行。块可以是擦除的最小尺寸单元(即,不可以擦除块的一个部分而不擦除该块的所有部分)。块可以包含多个物理页面,每个物理页面可以存储一个或更多个数据页面。每个物理页面可以包括多个可操作地连接到相应的字线的存储单元。例如,字线在被激活时,可以将电压施加到存储单元晶体管(例如,EEPROM晶体管单元)的栅极。字线可以连接到存储单元晶体管的栅极,或者,可以(至少部分地)由存储单元晶体管的栅极形成。应当注意,术语“页面(page)”可能具有几种含义。如在本申请中所使用的,“页面”一般将指代存储在非易失性存储器中的数据页面,例如存储在MLC NAND闪速存储器中的LSB(最低有效位)页面或MSB(最高有效位)页面。短语“物理页面”指代存储数据的物理结构。
存储器控制器100将用于控制非易失性存储器件200的操作的命令发送到非易失性存储器件200。该命令可以是将要参考图6A说明的命令。
非易失性存储器件200响应于命令执行操作,并可以将操作结果传送到存储器控制器100。非易失性存储器件200通过一个或更多个输入/输出(I/O)引脚与存储器控制器100连接,可以通过所述输入/输出(I/O)引脚输出和/或输入命令、数据、地址、状态信号等。图4示出提供八个I/O引脚I/O0到I/O7,但是I/O引脚的数量不限于八(8)。此外,应当注意,这里所使用的术语“引脚(pin)”不要求延长的导电元件,而是可以包括任何适合于输入和/或输出的端子,例如焊接凸块(如焊球)、芯片焊盘、封装焊盘等。为了方便起见,下面的描述将专注于读操作。
存储器控制器100和非易失性存储器件200可以被分别单独地封装到不同的封装中,并且这些不同的封装可以被一起密封到单个封装中(例如,在堆叠封装结构中),或者,存储器控制器100和非易失性存储器件200可以是堆叠芯片,或者被一起安装在印刷电路板衬底上,然后被一起封装到单个封装中。
存储器件110可以被用作CPU120的操作存储器。存储器件110可以由动态RAM(DRAM)或静态RAM(SRAM)实现。
读重试表115存储关于在对非易失性存储器件200的读操作中的读电平的信息。关于读电平的信息可以是关于读操作期间用来读取存储单元的状态的读电压的信息。例如,读电平可以导致特定的读电压被非易失性存储器施加于期望被读取的页面的字线——不同的读电平将导致不同的读电压在后续的读操作(例如,读重试操作)中被施加于字线。新的读电平和旧的读电平之间的差可以被存储在读重试表115中。读重试表115可以在存储器控制器100内的单独的存储器(例如,寄存器)中实现,或者可以在存储器件110中实现。后面将详细描述示范性的读重试表115。
主机接口130根据与存储***20连接的主机10的协议,在主机10与存储器控制器100之间接口连接数据。
ECC电路140检测并纠正从非易失性存储器件200读取的数据中的错误。非易失性存储器接口150连接在非易失性存储器件200与存储器控制器100之间,以便在非易失性存储器件200与存储器控制器100之间传达数据、地址、命令、和/或状态信号等。
CPU120通过总线160控制存储器件110、主机接口130、ECC电路140、和非易失性存储器接口150之间的数据传输。
存储***20可以是存储卡、存储器驱动器、固态盘或固态驱动器(SSD)、或者管理型NAND(managed NAND)。存储卡可以是安全数字(SD)卡或多媒体卡(MMC)。存储器驱动器可以是通用串行总线(USB)闪速驱动器或记忆棒。管理型NAND可以是受控嵌入型NAND芯片(controlled-embeddedNAND chip)。
图3是示出根据一些实施例的可以是图1中所示的非易失性存储器件200的非易失性存储器件200'的结构的示意图
参考图3,非易失性存储器件200'可以包括多个存储器元件。图3示出非易失性存储器件200'具有4-通道(channel)3-存储体(bank)硬件结构的实施例,但本发明不限于当前实施例。
在存储***20中,存储器控制器100和非易失性存储器件200'通过四个通道A、B、C、和D连接。三个闪速存储器元件CA0到CA2、CB0到CB2、CC0到CC2、或者CD0到CD2被连接到通道A、B、C和D中对应的一个。然而,显然通道和存储体的数量可以改变。每个存储器元件可以是存储器芯片。
每个存储体可以包括一组在不同通道中可以利用相同偏移寻址的存储器元件。
图4是示出非易失性存储器件200″的细节的详细框图,非易失性存储器件200″可以是图1中所示的非易失性存储器件200。替换地,图3中所示的存储器元件CA0到CD2中的每一个可以构成图4的非易失性存储器件200''(并且多个非易失性存储器件200″的CA0到CD2的整个集合可以是图1的非易失性存储器件200)。图5A是示出根据一些实施例的图4中示出的页面寄存器和读出放大器220以及存储单元阵列210的示范性细节的电路图。图5B是示出根据其他实施例的图4中示出的页面寄存器和读出放大器220以及存储单元阵列210的替换示例的电路图。
参考图4,非易失性存储器件200包括存储单元阵列210和存取电路212。图3中所示的非易失性存储器件200'中的存储器元件CA0到CD2中的每一个均可以具有图4中所示的结构。
如上面提到的,编程操作和读操作可以以页面为单位执行,并且擦除操作可以以存储器块为单位执行。存储器块可以包含多个页面。
图3的存储器控制器100和非易失性存储器件200'通过多个通道相互连接,每一通道均如图所示连接到多个闪速存储器元件CA0到CD2的子集。
如图5A中所示,存储单元阵列210包括多个NAND存储单元串210-1、210-2、...、210-m,其连接到相应的位线BL1,BL2...BLm。如图所示,每一NAND存储单元串210-1、210-2、...、210-m包括多个串联连接的非易失性存储单元,它们***在两个选择晶体管之间。例如,NAND存储单元串210-1包括夹在选择晶体管ST1和选择晶体管ST2之间的串联连接的非易失性存储单元。如图所示,选择晶体管ST3、ST4、ST5和ST6以类似方式针对NAND存储单元串210-2和210-m连接。串选择晶体管ST1、ST3和ST5的栅极连接到串选择线SSL,而地选择晶体管ST2、ST4和ST6的栅极则连接到地选择线GSL。串选择晶体管ST1、ST3和ST5的漏极连接到相应的位线BL1、BL2和BLm,而地选择晶体管ST2、ST4和ST6的源极连接到公共源极线CSL。非易失性存储单元的栅极连接到字线(图5A中WL1到WLn其中之一)。NAND存储单元串可以被布局在一个平面上,或者布局在二维层中,如图5A中所示。在美国专利No.5,473,563中可以找到NAND闪速存储器的示范性结构和操作的进一步细节,通过引用将其整体合并于此。
替换地,可以使用晶圆堆叠、芯片堆叠、或单元堆叠在三维中实现存储单元阵列210,如图5B中所示。在美国专利No.7,679,133中可以找到3DNAND的示范性结构和操作的细节,通过引用将其整体合并于此。
NAND存储单元串中包括的每一非易失性存储单元可以由存储一个或更多个比特的闪速电可擦除可编程只读存储器(EEPROM)单元实现。因此,每一非易失性存储单元可以由NAND闪速存储单元实现,例如,存储一个比特的单电平单元(SLC),或者存储至少两个比特的多电平单元(MLC)。
存取电路212响应于从外部(例如,存储器控制器100)接收的命令(或命令集)和地址存取存储单元阵列210,以便执行数据存取操作,例如,编程操作、读操作、或擦除操作。
存取电路212包括电压产生器240、行译码器250、控制逻辑260、列译码器270、页面寄存器和读出放大器(S/A)块220、Y选通电路230、以及I/O块280。
电压产生器240响应于由控制逻辑260产生的控制码,产生用于数据存取操作所需的电压。
响应于控制码,电压产生器240产生用于编程操作的编程电压和编程验证电压、用于读操作的读电压和通过电压、以及用于擦除操作的擦除电压和擦除验证电压,并将这些电压输出到行译码器250。
控制逻辑260响应于从存储器控制器100接收的控制信号CMD,控制存取电路212的总体操作。例如,在读操作期间,控制逻辑260可以控制存储器读出读状态信息并且将数据输出到存储器控制器100。
响应于命令CMD,控制逻辑260还可以将存储在数据寄存器中的数据作为读取的数据传送到存储器控制器100,以使得在将数据传送到主机10之前,检查数据的错误,并且纠正数据中的错误。
在控制逻辑260的控制下,列译码器270译码列地址YADD,并将多个选择信号输出到Y选通电路230。
页面寄存器和S/A块220包括多个分别连接到多个位线的页面缓冲器。根据控制逻辑260的控制,页面缓冲器在读操作期间可以暂时存储从存储单元阵列210读取的数据。此时,每个页面缓冲器可以使用至少两个缓冲器实现。在本发明的实施例中,每个页面缓冲器包括两个缓冲器:可以是缓存寄存器(例如,包含锁存器221-11、221-21或221-m1)的第一缓冲器;以及可以是数据寄存器(例如,包含锁存器221-1、221-2或221-m)的第二缓冲器。根据控制逻辑260的控制,在读操作期间,每个页面缓冲器可以担当读出和放大连接到每个页面缓冲器的位线的电压的S/A。
Y选通电路230响应于从列译码器270接收到的多个选择信号,控制页面寄存器和S/A块220与I/O块280之间的数据传输。
I/O块280可以将通过I/O引脚IO0到IO7(或数据总线)从外部接收的数据传送到Y选通电路230,并通过I/O引脚IO0到IO7(或数据总线)将来自选通电路230的数据传送到存储器控制器100。例如,考虑包含528字节代码字(例如,516字节的原始数据或有效载荷数据,以及来自ECC的22字节(或者作为与原始数据分离的ECC字节,或者作为原始数据上的ECC操作的结果))的页面。Y选通电路230将工作以便顺次输出页面寄存器和S/A块220的选择部分,从而通过I/O块280输出一系列528字节的数据(例如,输出到ECC电路140)。
图6A是用于说明图1中所示的存储***20中的读重试操作的图。
参考图6A,当读操作失败时,存储***20改变读电压的电平并重试读操作,以便提高非易失性存储器件200的可靠性。读电压可以是施加于存储被作为读取目标的数据页面的物理页面的字线的电压。包含将要读取的目标页面的块中的其他页面可以具有施加于其字线的通过电压,足以导通可操作地连接到这些字线的存储单元晶体管(例如,以栅极连接到这些字线,或者是这些字线的一部分)。关于改变的电压电平的信息可以被存储在读重试表115中。
当在存储单元阵列210上重复编程或者擦除操作时,由于热离子发射、电荷扩散、离子杂质、编程扰动、高温应力、软编程、过编程等,单元分布可能改变。该情况下,当使用预定读电压(①)执行读操作时,读操作可能失败。在MLC中比在SLC中可能更频繁地发生读操作失败,因为在MLC中单元分布之间的余量比在SLC中更狭窄。
为了恢复读错误,响应于从非易失性存储器件200接收的主数据和ECC数据,存储器控制器100可以执行ECC,借以纠正已经读取的主数据中的错误。当读操作中出现的错误数量超过ECC的能力时,存储器控制器100可以控制非易失性存储器件200来重复读操作。
非易失性存储器件200改变读电压,并利用新设置的读电压重试读操作,重复该模式,直到读操作成功为止(或者,确定读操作不可能成功,并且读操作被停止)。图6A代表在读电压V1(①)处失败的第一次读操作,跟着是以读电压V2(②)失败的第二次读操作,跟着是利用V3(③)读电压的成功读操作。读操作可以被重复,每一次读取将读电压提高预定量(从预定起始电压开始),直到数据被准确地读取为止。或者,多操作可以被重复,将读电压降低预定量(从预定起始电压开始),直到数据被准确地读取为止。重复读操作(例如利用被更改的读电压),直到读操作被通过的操作被称为读重试操作。在针对页面的读重试操作之前的该页面的初始读操作被称为正常读操作。虽然本公开将随机缓存(random cache,RC)读操作称为正常读,但是这仅仅是一个示例,并且任何读操作可以影响正常读操作。通过读重试操作读取的数据被通过存储器控制器100传送到主机10。
非易失性存储器可以是多电平单元(MLC)NAND闪速存储器,并且数据页面(经受初始读操作和重试读操作)可以是存储在NAND闪速存储器的物理页面中的一个或更多个页面中的一个。例如,LSB(最低有效位)页面和MSB(最高有效位)页面可以被存储在构成物理页面的相同存储单元中。考虑两比特MLC NAND。为了在MLC NAND的两比特存储单元中存储两比特数据,需要四个阈值电平范围。图6A仅示出一个阈值分布范围和单个读操作参数的读电平调整,但是,预期可以用图6A中所示的方式调整多个参数。为了从MLC NAND中的物理页面读取数据页面,对于某些数据页面,可能需要在不同读电平下的几个读操作(每一读电平可以是相邻阈值电平范围之间的电压——至少起初在编程之后,并且在由于这里描述的因素所致的任何电压阈值漂移之前)。因此,不是通过电平设置操作来改变单个电压电平,而是可以通过电平设置操作来改变多个电压电平。
图6B示出存储单元的四个阈值电压范围,每个阈值电压范围代表两比特数据(例如,在分布曲线内示出的1/1、1/0、0/1和0/0,其在本例中被称为MSB/LSB)。在该示例中,为了从物理页面读取MSB数据页面,使用电压分布电平1/0和0/1之间的电压电平的读就够了(例如,在V1a或者V2a)。如果MSB数据页面具有无法纠正的错误,则可以用这里针对图6A描述的方式,执行将电压从V1a改变到V2a并在新的读电压电平下再次读取MSB数据页面的读重试。但是,为了读取LSB数据页面(在图6B的分布曲线内示出的第二比特),需要将多个读电平施加于目标页面的字线——与MSB数据页面读取相比,在阈值分布曲线之间的仅一个位置读取将不足以确定LSB值,并且每一分布范围之间的读操作可能是必须的。例如,对于LSB数据页面的单次读尝试,可以实施三个操作,每一操作均包含将三个对应的电压电平其中之一施加于对应物理页面的字线,这三个电压电平位于阈值范1/1、1/0、0/1和0/0中的每一个之间(至少在存储单元中的Vth电平的任何漂移或者退化之前)。以这样的方式读取MLC数据页面是公知的。对于进一步的这样的细节,请看在美国专利申请公开No.2008/0144370中描述的各种示例,该公开通过引用被全部包含于此。
图6B代表在Vc、V1a和V1b下对LSB数据页面的第一次读尝试。该示例中,假定对LSB数据页面的第一次读尝试包括无法由启动读重试的ECC电路140纠正的错误。图6B的示例示出调整在LSB读取中使用的读电压中的两个的电压电平,将V1a改变到V2a,将V1b改变到V2b。该示例中,保留电压电平Vc不改变。当确定被编程到某些电压阈值范围的存储单元比其他的更易于退化或者漂移时,和/或当在相邻的阈值范围之间提供了较大的Vth间隙时,可能期望改变电压电平中的某些而非改变所有的电压电平可能。例如,可以确定处于擦除状态1/1的存储单元不像被编程到0/1状态的那些漂移的那么多,因此,将读电平Vc改变到新电平几乎没有益处。虽然图6表示改变三个电压中的两个的电平以供在后续的LSB数据页面的读重试操作中使用的电平设置操作,但是,对于单次读重试操作,全部三个电压都可以被改变。类似地,利用电平设置操作,读电压电平中可以只有一个被改变。最后,应当注意,为了讨论简洁,只示出了初始正常读操作(在电压Vc、v1a和V1b)和单次读重试操作(在电压Vc、V2a和V2b)。但是与图6A一样,预期如果需要则可以实施多次读重试。
如所讨论的,电平设置操作可以影响一组操作参数,例如用于后续读重试的一组读电压电平。虽然这里描述的一些实施例可能提到改变单个电压电平,但这是为了容易描述。这里描述的所有实施例都预想了以下修改:除了在读重试操作(或者在电平设置操作)中修改的单个操作参数(例如,电压电平)以外,多个操作参数(例如,复数个电压电平)可以被电平设置操作改变。这些替换实施例的操作可以包括:在第一次读取(其可以是正常读或者读重试读)期间,将第一组读基准电压(例如,顺次地,以便在用来识别MLC非易失性存储单元中的数据的多个比特的毗邻阈值范围之间进行区分)施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据;以及,在第二次读取(例如,读重试读)期间,将不同的第二组读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据。
直到确定读操作不成功为止重复执行读取的次数可以根据单元分布的变化而增大。每当读计数(例如,索引“i”)增大时,读重试表115可以存储读电平的变化(该变化可以被存储为读电压之间的差,可以存储用于每一重试的百分比或者全部读电压)。读计数可以被预先确定。
图7A是示出读重试操作的序列作为比较示例的定时图。图7B到图7D是示出根据示范性实施例的读重试操作的序列的定时图。在图7B到图7D中,对目标页面的正常读操作可能已经发生了(但是未示出)(例如,其可能恰好在如图7A到图7D中所描绘的对目标页面的读重试操作之前)。在其他实施例中,这样的目标页面的正常读操作可以在图7B到图7D的第一次读重试操作的开始处正在进行中。
参考图7A,读操作的持续时间包括:目标读电平设置时间tSet、读取时间tR、读取数据输出时间tDout、和ECC纠正时间tECC。目标读电平设置时间tSet可以是改变并设置读电平所花费的时间量。例如,在该时间tSet期间的操作可以包括:访问读重试表115以确定新的读电平、将命令与新的读电平一起从存储器控制器100发送到非易失性存储器件200,以及响应于在新的读电平读取的命令,将非易失性存储器件200在内部设置为准备好开始在新的读电平读取。作为另一示例,时间tSet可以是非易失性存储器访问非易失性存储器内部的寄存器或表以确定新的读电平、并在内部将用于目标页面的字线电压产生器设置为新的读电平的时间量。读时间tR可以是从存储单元阵列读取数据并将数据存储在缓存寄存器中所花费的时间。例如,该时间tR可以包括:将读命令从存储器控制器100发送到非易失性存储器件200,并执行非易失性存储器件200内部的读操作以便将数据页面(例如代码字)从非易失性存储器件200的物理页面传送到页面寄存器和S/A220。替换地,时间tR可以不包括将读命令从存储器控制器100发送到非易失性存储器;这里所公开的所有实施例都预期以下替代情况:新的读命令是不必要的,并且非易失性存储器参考从先前的读命令接收的地址来确定目标页面(在本公开的其他地方有这样的替代情况的示范性细节)。在该替换实施例中,读重试操作可以被存储器控制器接收的电平设置命令开始(在本实例中其可以为具有电平设置信息的读命令),或者,如果从非易失性存储器内部的源获取读电平信息,则读重试操作可以自动开始(例如,在先前的读重试操作已经完成之后),或者,可以利用来自存储器控制器的信号(例如,一个或更多个I/O线上的翻转信号或者命令)开始。读取数据输出时间tDout可以是将数据寄存器(例如,页面寄存器和S/A220)中的数据输出到非易失性存储器200外部的源(例如,存储器控制器100)所花费的时间量。ECC纠正时间tECC可以是纠错电路140分析接收到的数据页面(例如代码字)以确定在数据页面中是否存在错误所花费的时间。在一些示例中,tECC也可以包括确定错误是否可纠正的时间,并且,如果错误可纠正,tECC也可以包括纠正错误。
在图7A中所示的比较示例中,当读重试被执行了N次时,总的读重试持续时间是目标读电平设置时间tSet、读取时间tR、读取数据输出时间tDout、和ECC纠正时间tECC之和乘以读重试的次数N。
然而,当连续读重试的至少某些部分被同时执行时,总的读重试持续时间降低。如图7B的示例中所示,输出第一次读操作中读取的第一数据(例如,输出到存储器控制器100)并在这个第一数据上执行ECC(例如,由ECC电路140)的操作被与在接下来的第二次读操作中读取第二数据的操作并行地执行。因此,两个紧接的读重试操作的总时间被减少了第一次读操作的数据输出时间tDout与ECC纠正时间tECC之和。如将要指出的,由于顺序读重试操作的并行操作,对于每一读重试获得类似的时间节省。
具体来说,在图7B中所示的定时图中,在第一读重试(①)中,第一读电压在目标读电平设置时间tSet期间被设置,并且在读取时间tR期间,第一重试数据被读取并暂时存储在第一寄存器中,例如页面寄存器和S/A220中的缓存寄存器221-11。该示例中,由于在第二寄存器,即数据寄存器221-1中没有先前的数据,所以在读取时间tR期间,在存储单元阵列210中不发生数据输出。
在第二读重试(②)中,在目标读电平设置时间tSet期间,读电平被从第一读电压设置到第二读电压。第一读重试数据被从第一缓冲器(例如,缓存寄存器211-11到221-m1)移动到第二缓冲器(例如,数据寄存器221-1到221-m)。在读取时间tR期间,第二重试数据被读取并暂时存储在页面寄存器和S/A块220中的第一缓冲器中。此时,当第一缓冲器在读取时间tR期间从存储单元阵列210的物理页面读取第二重试数据并将其暂时存储的同时,第二缓冲器将先前存储于其中的第一重试数据输出到存储器控制器100(读数据输出时间tDout),并且存储器控制器100纠正第一重试数据中的错误(ECC纠正时间tECC)。即便存储器控制器100(ECC电路140)还未确定第一重试数据中的错误的数量超过ECC电路140的能力,存储器控制器100也可以命令非易失性存储器件200利用不同的读电平来重复读操作(例如,存储器控制器100可以在确定第一重试数据中的错误是否可通过ECC操作纠正之前,将读重试命令发出到非易失性存储器件200)。在图7B的示例中,利用第一重试数据被从非易失性存储器件200发送到存储器控制器100和ECC电路140的ECC操作之前的时间tSet设置的第二目标读电平开始后续读重试(第二读重试)。
当读操作被重复时,在第N个读重试
Figure BDA00002204746700211
中,第N读电压在目标读电平设置时间tSet期间被设置,并且第N重试数据在读取时间tR期间被读取并存储在页面寄存器和S/A块220中的第一缓冲器(221-11到221-m1)中。此时,当第一缓冲器221-11在读取时间tR期间从存储单元阵列210读取第N重试数据并将其暂时存储的同时,第二缓冲器(221-1dao221-m)将先前存储于其中的第(N-1)重试数据输出到存储器控制器100(读数据输出时间tDout),并且存储器控制器100纠正第(N-1)重试数据中的错误(ECC纠正时间tECC)。当第(N-1)重试数据中的错误的数量在ECC的能力以内时,存储器控制器100可以终止非易失性存储器件200的读操作,并将第(N-1)重试数据传送到主机10。或者,当第(N-1)重试数据中的错误的数量在ECC的能力以内时,存储器控制器100可以简单地忽略非易失性存储器200的与第N次读重试相关联的后续操作(例如,无法输入第N读重试数据)。
因此,当在当前读操作中,在读取时间tR期间,数据在非易失性存储器件200中被内部读取(例如,从存储单元阵列210的物理页面到第一缓冲器)的同时,先前读取的数据被从非易失性存储器件200输出(tDout)到存储器控制器100,然后经受存储器控制器100的ECC(tECC),所以,总的读重试持续时间(经多次读重试)可以被降低。当总的读重试持续时间降低时,可以提高非易失性存储器件200的读取速度,从而提高存储***20的性能。此外,为了提高可靠性,在相同或者更少的时间内可以执行额外的读重试操作。
在图7B中示出,读取数据输出时间tDout与ECC纠正时间tECC之和与读取时间tR类似,但是本发明不限于此。
如图7C中所示,读取数据输出时间tDout可以比读取时间tR更长,反之亦然。当读取数据输出时间tDout比读取时间tR更长时,读取数据输出时间tDout可以不是连续的,并且可以被中断,例如利用目标读电平设置操作中断(时间tSet),所以读取数据输出时间tDout可以是不连续的,如图7D中所示。例如,读取数据输出时间tDout可以被划分为至少两部分数据输出时间tP(在图7D中示出了用于每一读操作(例如页面读)的三部分数据输出时间tP1、tP2和tP3)。数据输出时间tP的部分可以是将非易失性存储器的数据寄存器中的数据的一部分输出到非易失性存储器外部的位置(例如,输出到存储器控制器100)所花费的时间量。每一部分可以是总页面的例如一半、四分之一,或者,针对每一读操作是可变的。目标读电平设置操作(在时间tSet期间)可以在时间tB期间***在数据输出时间tP的两部分之间(这里,在数据输出的第一和第二部分tP1、tP2与数据输出的第三部分tP3之间)。
图8是示出根据一些实施例的由存储器控制器100发送到图1中所示的非易失性存储器件200的示范性命令码的图。图9是示出根据一些实施例的从非易失性存储器件200输出到存储器控制器100的状态信号的图。
参考图8,存储器控制器100通过I/O引脚I/O0到I/O7输出用于控制非易失性存储器件200的操作的命令。根据将要控制的操作,命令可以与非易失性存储器件200中的数据的地址一起发送。该地址可以在插在命令的第一周期和第二周期之间的多个周期上被发送。例如,整个输出可以包含00h、add0h、add1h、add2h、add3h、add4h和30h,其中,00h和30h分别包含命令第一周期和第二周期,并且add0h、add1h、add2h、add3h和add4h包含地址(例如,总地址add0h、add1h、add2h、add3h和add4h的被顺序发送的部分中的每一个包含8比特的总地址部分,每一8比特部分被并行发送)。例如,在读操作中,存储器控制器100可以按顺序将命令00h、要被读取的数据的地址和命令30h发送到非易失性存储器件200。因此,非易失性存储器件200使用页面寄存器和S/A块220从存储单元阵列210读取被地址选择的页面的数据,并将数据输出到存储器控制器100。此时,存储器控制器100可以将命令70h发送到非易失性存储器件200来检查非易失性存储器件200的读状态。响应于命令70h,非易失性存储器件200可以通过一个或更多个I/O引脚(例如I/O5和I/O6)将就绪或繁忙信号发送到存储器控制器100。存储器控制器100基于就绪或繁忙信号来检测读操作是否已被完成。
在一些实施例中,可以使用‘用于读重试的读(read for read retry)’命令来开始读重试。‘用于读重试的读’命令可以是新定义的命令,或者是常规读命令其中之一——例如,‘随机缓存(RC)读’命令。例如,如果‘用于读重试的读’命令是新命令,则其可以简单地由迥异于其他命令码(可以在非易失性存储器的设计阶段分配码xxh)的第一周期命令码(例如,8比特)组成——该示例中,不需要与新的‘用于读重试的读’命令一起提交地址信息。在作为‘用于读重试的读’命令输入到非易失性存储器的命令译码器后,非易失性存储器200识别这个独特的‘用于读重试的读’命令,并开始对先前读过的页面的读重试。将要利用‘用于读重试的读’操作读取的页面可以由最近读取过的页面或者次最近(或第三最近、第四最近等)读取过的页面(例如,与利用最后读取的命令或次最后读取的命令接收的地址相关联的页面)的地址识别。以这样的方式使用新命令将允许快速命令周期而不必将地址信息从存储器控制器100重新发送到非易失性存储器200。
与非易失性存储器的流水线ECC/读取相比,要利用独特的‘用于读重试的读’命令读取的页面是最近读取的页面还是较早读取的页面可以依赖于ECC操作的定时。如果ECC操作在发出新的正常读命令到非易失性存储器200之前,在读取的数据页面中检测到无法纠正的错误,则非易失性存储器200可以针对最近读取的页面执行‘用于读重试的读’命令。但是,如果ECC操作在发出一个或更多个新的正常读命令之后,在读取的数据页面中检测到无法纠正的错误,则读重试命令应当被针对该读取页面执行。例如,假定针对第一页面发出读命令。如果n(n为整数)个读命令在发出针对第一页面的读命令之后但是在检测到读取的第一页面的无法纠正的错误之前被发出到非易失性存储器,则要经受‘用于读重试的读’操作的页面可以是由与先前的n+1个读命令一起被接收的地址(即第一页面的地址)来识别的那个。例如,如果在检测到读取页面的无法纠正错误之前,一个正常读命令已被发送到非易失性存储器,则‘用于读重试的读’命令应当被针对由非易失性存储器接收到的次之最后读命令执行。可以基于已知的ECC/读操作的流水线定时(这可以在设计阶段被设置)预先确定要使用哪个地址。
或者,存储器控制器100可以用当前已知的命令格式,例如随机缓存读命令,发送‘用于读重试的读’命令(其中,要被读取的页面地址被与读命令以例如上述方式一起重新发送)。RC读是这样的操作:当ECC失败(例如,在缓存读操作中)时,读命令与存储其读取已失败的数据的页面(此后称为目标页面)的地址一起被发送到非易失性存储器件200,并且非易失性存储器件200在目标页面上执行读重试(响应于读命令,其可以只在目标页面上而不读取其他页面)。这里公开的很多实施例描述了使用随机缓存(RC)读命令作为‘用于读重试的读’命令,但是本发明不限于此,并且所有这些实施例都预想使用其他的命令(无论是其他的正常读命令还是独特的‘用于读重试的读’命令)。
图9示出当存储器控制器100发送命令到非易失性存储器件200来检查非易失性存储器件200的状态时,被非易失性存储器件200发送到存储器控制器100的I/O引脚I/O0到I/O7的信号。八个I/O引脚I/O0到I/O7也是数据被输入非易失性存储器件200或者从其输出所通过的引脚。
I/O引脚I/O0到I/O7中的一个或更多个输出向存储器控制器100通知非易失性存储器件200的状态的信号。例如,I/O引脚I/O0输出指示关于编程操作或者擦除操作的状态的信号。当编程或者擦除操作已经成功时,I/O引脚I/O0输出低信号“0”,否则,其输出高信号“1”。
I/O引脚I/O5示出指示存储单元阵列210在缓存操作期间是否忙于操作(例如,编程操作或者擦除操作)的阵列R/B信号。例如,阵列R/B信号可以指示非易失性存储器件200是否正将暂时存储在缓存寄存器221-m1中的数据发送到数据寄存器221-m,和/或正在将从存储单元阵列210的目标页面读取的数据暂时存储在缓存寄存器221-m1中。当非易失性存储器件200正在执行操作时,输出处于逻辑低“0”的阵列R/B信号来指示存储单元阵列210繁忙。这里,由非易失性存储器件200对引脚I/O5上的逻辑低“0”的断言可以是用于存储器控制器100并由其检测的标志,但作为替换,该标志可以是非易失性存储器件的逻辑高“1”断言。当非易失性存储器件200并非正在执行这个操作而是待机时,输出处于逻辑高“1”的阵列R/B信号。当存储单元阵列210繁忙时,对于某些非易失性存储器件来说可能无法调整读电压(例如,利用电平设置命令)。因此,I/O引脚上的阵列R/B信号可以用来通知控制器不发送电平设置命令。但是,此时例如新的读命令、‘用于读重试的读’命令、擦除命令和/或写或编程命令的其他命令有可能被非易失性存储器件200接收。
I/O引脚I/O6输出主机R/B信号。主机R/B信号可以指示非易失性存储器件200的操作状态(例如,编程、擦除和/或读操作)。另外,或者额外地,主机R/B信号可以指示非易失性存储器件200是否能够接受进一步的命令,例如,主机10或者存储器控制器100是否能够将新的命令(例如,新的读、写或者擦除命令)发送到非易失性存储器件200。在本发明的当前实施例中,主机R/B信号可以指示数据寄存器221-m是否具有从目标页面通过I/O块280读取到存储器控制器100的要被输出的数据(例如,输出到存储器控制器100)。当非易失性存储器件200不能接受新的命令时,输出处于逻辑低“0”的主机R/B信号。当非易失性存储器件200能够接受新的命令时(例如,存储器件200正在待机),输出处于逻辑高“1”的主机R/B信号。这里,由非易失性存储器件200对引脚I/O6上的逻辑低“0”的断言可以是用于存储器控制器100并由其检测的标志,但是作为替换,该标志可以是非易失性存储器件的逻辑高“1”断言。主机R/B信号可通过特殊引脚(例如,主机R/B引脚)而非I/O引脚I/O6被输出。阵列R/B信号也可以通过特殊引脚而非I/O引脚I/O5被输出。主机R/B信号和阵列R/B信号也可以通过一个引脚(例如I/O引脚中的一个或者特殊引脚)被输出。
因此,阵列R/B信号(例如,在I/O5上)可以是指示非易失性存储器件200的内部操作是否已被完成的状态信号,并且主机R/B信号(例如,在I/O6上)可以是指示非易失性存储器件200是否能够被外部设备(例如主机10或者存储器控制器100)访问的状态信号。
图10A是根据本发明的一些实施例的图1中所示的存储***20的操作的定时图。图10B是示出根据图10A中所示的实施例的存储***20的操作的图。
图10A示出从存储器控制器100传送到非易失性存储器件200的命令信号CMD、主机R/B信号和指示非易失性存储器件200的内部操作状态的阵列R/B信号。
参考图8到图10B,存储器控制器100应主机10的请求,将正常读命令,例如由00h和01h表达的读命令,通过数据引脚I/Ox(“x”是自然数)发送到非易失性存储器件200。此时,正常读操作的持续时间由“a1”代表。
在执行读操作之前,存储器控制器100可以将命令70h,即读状态命令发送到非易失性存储器件200来检查主机R/B和阵列R/B。换句话说,存储器控制器100使用读状态命令检查非易失性存储器件200是准备好读操作(即处于读就绪状态),还是正忙于执行读操作(即处于读繁忙状态)。
响应于命令70h,非易失性存储器件200可以通过I/O引脚I/O0到I/O7中的一个或更多个发送指示非易失性存储器件200的状态的数据。此时,I/O引脚I/O5可以输出主机R/B信号,而I/O引脚I/O6可以输出阵列R/B信号。
例如,如图10A中所示,在某些时间,阵列R/B信号(I/O6)是“0”,尽管主机R/B信号(I/O5)已将“0”转换到“1”,指示非易失性存储器件200正忙于执行当前操作,虽可以接受某个命令,但也不一定即刻应某个命令而动。例如,非易失性存储器件200可以接受新的读命令,但是,直到阵列R/B信号从“0”转换到“1”才执行新的读命令。但是,非易失性存储器件200可能不能接受电平设置命令,直到阵列R/B信号(I/O6)从低转换到高为止。
假定一个正常读命令序列,其中,每一读取的数据页面随后经受ECC操作。每一ECC操作可以包括分析以检测读取的数据页面中的错误、确定所检测的错误是否可纠正、如果错误可纠正则纠正错误,和/或,发信号通知读取的页面包含无法纠正的错误。在某些序列中可以实施读重试,如图10A的定时图和图10B的框图所示。在时间a1期间,正常读命令被从存储器控制器100发出到非易失性存储器200以读取目标页面(这里是页面#k)。当非易失性存储器件200接收到正常读命令时,目标页面页面#k被读取,并且读取的目标页面页面#k的数据被通过页面寄存器和S/A块220输出到存储器控制器100,并且ECC电路140在读取的目标页面页面#k的数据上执行ECC。具体来说,从存储单元阵列210读取的被读取页面#k数据被暂时存储在缓存寄存器221-11中,并被传送到数据寄存器221-1,然后被从非易失性存储器200传送到存储器控制器100,在存储器控制器100,ECC电路在读取的数据上执行ECC。此时,在读取时间tR期间,主机R/B信号和阵列R/B信号都被在逻辑低“0”输出,这指示读操作正在被执行。
当主机R/B信号和阵列R/B信号从“0”转换到“1”时,数据寄存器221-1中的正常读取数据被输出,并且ECC电路140在读取的页面#k数据上执行ECC。当读取的页面#k数据中的错误不可以被ECC纠正(例如,如果发生ECC失败)时,则存储器控制器100命令非易失性存储器件200执行读重试。
在时间a2期间的第二次读操作期间,存储器控制器100可以在读重试之前设置新的读电平。此时,通过使用读重试表115,将当前读电平增大或者减小预定值,或者将当前读电平增大或者减小到预定值,读电平可以被重新设置。在确定读操作失败之前,也可以在读重试表115中预先确定读电平重新设置的次数,即,要在特定页面上执行读重试尝试的次数,以便限制读重试的次数。此外,存储在读重试表115中的值可以代表新的读电平,或者代表从旧的读电平的增量或者减量(例如,电压增量/减量,或者百分比增量/减量)。
在时间a2期间的电平设置操作之后,非易失性存储器件200从存储器控制器100接收RC读命令(随机缓存读命令)和用于页面#k的地址。非易失性存储器件200响应于RC读命令,对页面#k执行第二次读操作。
非易失性存储器件200从目标页面页面#k读取数据(即,第一重试数据),并将第一重试数据暂时存储在缓存寄存器221-11中。
为了在非易失性存储器件200中的目标页面页面#1上执行读重试,主机R/B信号需要从“1”转换到“0”。但是,即使非易失性存储器件200在读取时间tR期间实际上正在缓存寄存器221-11上执行读重试,主机R/B信号只可以在数据寄存器221-1的操作的结束被确认之后从“0”转换到“1”(tDCBSYR)。换句话说,即使在主机R/B转换到“1”时,非易失性存储器件200实际上也可以正在执行读重试(从页面#k读取数据)。因此,存储器控制器100监测阵列R/B信号以便检测读重试完成的时间点,并在阵列R/B信号从“0”转换到“1”时开始第三次读操作(即在时间a3的第二读重试)。在时间a3的这个第二读重试可以在第一读重试数据(即,从时间a2的第一读重试操作产生的读取数据)上的ECC操作完成之前被执行,或者甚至在第一读重试数据上的ECC操作开始之前被执行。将会很清楚,该示例中,甚至在第一读重试读取数据被传送到存储器控制器100之前,第二读重试命令就被发送,并且第二读重试操作被在页面#k上(在时间a3)开始。
同时,在时间a2,由于数据寄存器221-1中的正常读取数据(来自时间a1期间页面#k的正常读操作)在ECC中已经失败,从非易失性存储器件200到存储器控制器100的任何数据输出,和/或在这个数据上的任何ECC操作,在时间a2期间可以被忽略,即,或者在时间a2期间可以不执行这些操作。
在时间a3期间,存储器控制器100在第二读重试之前将读电平设置到新值。此时,以如上所述的方式使用读重试表115,可以设置新的读电平。
还是在时间a3期间,在新的读电平被设置之后,非易失性存储器件200从存储器控制器100接收RC读命令和识别页面#k的地址。存储器控制器100件200响应于RC读命令,执行页面#k的第三次读操作(页面#k的第二读重试操作)。
非易失性存储器件200将已暂时存储在缓存寄存器221-11中的第二次读取数据,即第一重试数据,传送到数据寄存器221-1,从目标页面页面#k读取数据(即第二重试数据),并将第二重试数据暂时存储在缓存寄存器221-11中。
在时间a3的第三次读操作期间,数据被从页面#k再次读取,并被存储在缓存寄存器221-11中(即页面#k的第二重试数据),数据寄存器221-1在读取数据输出时间tDout期间将第一重试数据(即页面#k的第二次读取数据)输出到存储器控制器100,并且存储器控制器100在时间a3的ECC纠正时间tECC期间,在第一重试数据上执行ECC。存储器控制器100根据在第一重试数据上的ECC操作的结果,确定是否执行第三读重试(即,页面#k上的第四次读操作)。
在第三次读操作期间,为了允许非易失性存储器件200中的目标页面页面#1上的读重试,主机R/B信号(I/O5)从“1”转换到“0”。即使非易失性存储器件200在读取时间tR期间实际上正在缓存寄存器221-11上执行读重试,主机R/B信号可以从“0”转换到“1”(tDCBSYR)。
因此,存储器控制器100监测阵列R/B信号(I/O6)以便检测读重试完成的时间点。当第二读重试数据已经被从页面#k读取到缓存寄存器221-11并且第一重试数据已经被从缓存寄存器221-11和数据寄存器221-1传送时,阵列R/B信号从“0”转换到“1”。此时,存储器控制器100接收第一重试数据,并使用ECC电路140在第一重试数据上执行ECC。如果作为这个ECC操作的结果出现ECC失败(例如,确定第一重试数据具有无法纠正的错误),则存储器控制器100命令非易失性存储器件200在时间a4在页面#k上执行第三读重试(即第四次读操作)。为了这个说明的目的,假定ECC失败确实在第一读重试数据上执行ECC操作时出现,因此,第三读重试被执行。
在时间a4期间的第四次读操作期间,在第三读重试之前,存储器控制器100将读电平设置到新值。此时,使用读重试表115来设置新的读电平。
还是在时间a4期间,在新的读电平被设置之后,非易失性存储器件200从存储器控制器100接收RC读命令和页面#k的地址。响应于RC读命令,非易失性存储器件200在页面#k上执行第三读重试(第四次读操作)。
在时间a4期间,非易失性存储器件200将暂时存储在缓存寄存器221-11中的页面#k的第二重试数据(页面#k的第三次读取数据)传送到数据寄存器221-1,将第二重试数据从数据寄存器221-1输出到存储器控制器100,从目标页面页面#k读取数据(即第三重试数据),并将第三重试数据暂时存储在缓存寄存器221-11中。
在时间a4页面#k上的第三读重试操作正被执行并且相关联的读取数据在读取时间tR期间被存储在缓存寄存器221-11中的同时,数据寄存器221-1在读取数据输出时间tDout期间将第二重试数据输出到存储器控制器100,并且存储器控制器100在ECC纠正时间tECC期间在第二重试数据上执行ECC。存储器控制器100根据ECC的结果确定是否开始页面#k上的第五次读操作,即第四读重试。
在第三读重试操作期间,为了允许非易失性存储器件200中的目标页面页面#1上的读重试,主机R/B信号(I/O5)从“1”转换到“0”。当非易失性存储器件200在读取时间tR期间执行读重试的同时,主机R/B信号可以从“0”转换到“1”(tDCBSYR),从而允许接受某些新命令(例如新的读命令、新的读重试命令、擦除命令,和/或写或编程命令)。
存储器控制器100检查阵列R/B信号(I/O6)。当阵列R/B信号从“0”转换到“1”,并且第三次读取数据,即第二重试数据的ECC成功(即,ECC完成)时,存储器控制器100输出复位命令(图8中的FFh)来刷新非易失性存储器件200。
响应于复位命令,非易失性存储器件200和主机10被复位,并且读重试操作结束。复位非易失性存储器件200可以包括重新设置读电平电压(例如重新设置到与正常读操作相关联的预定值)。还是此时,或者在存储器控制器的RAM110中、在非易失性存储器件中(例如,在页面#k的元数据字段中,或者非易失性存储器的单独的非数据部分中(例如,文件转换层(filetranslation layer,FTL)部分)),或者在这两者中,表可以被更新。被更新的表可以反映以下事实:在页面#k上读重试是必须的,以便利用被重新设置到其正常范围的电压阈值分布电平,将页面#k重写到非易失性存储器件内的新页面(参考图6A和相关讨论)。
注意,针对上面描述的实施例,连续的正常读操作不被流水线化,而是每一正常读操作将读取的数据读取到缓存寄存器221-11,传送到数据寄存器221-1,从非易失性存储器件200传送到存储器控制器100,并在后续正常读命令发出之前,在读取的数据上执行ECC操作。但是,预期在替代的实施例中,在先前正常读取的数据(例如页面#k正常读取数据)被存储在数据寄存器221-1中,被传送到存储器控制器100,并且ECC操作被在这些页面#k正常读取数据上执行的同时,页面#k+1数据可以被从存储单元阵列210正常读取并存储在缓存寄存器221-11中。例如,在替代实施例中,在时间a1期间,在图10A和图10B中,正常读命令可以与读取页面#k+1的命令相关联,而Dout和ECC操作可以与将页面#k读取数据从非易失性存储器件200输出到存储器控制器100并在页面#k读取数据上执行ECC操作相关联。在时间a2中,在图10A和图10B中,示出的Dout和ECC操作可以与页面#k+1相关联(这些Dout和ECC操作的这些结果或者可以在读重试被以上面描述的方式执行时被存储,或者,页面#k+1数据可以被丢弃,并且在针对页面#k的读重试周期以如上所述的方式完成之后,可以发出针对页面#k+1的新的正常读命令)。
图11A是根据本发明的其他实施例的图1中所示的存储***20的操作的定时图。图11B是示出根据图11A中所示的实施例的存储***20的操作的图。图11A和图11B中示出的实施例的描述将专注于与图10A和图10B中示出的实施例的差别。
响应于正常读命令,非易失性存储器件200读取目标页面页面#k并将目标页面页面#k的正常读取数据暂时存储在缓存寄存器221-11中。此时,主机R/B信号和阵列R/B信号都被在逻辑低“0”输出,这指示读操作正在被执行。第一次读取数据,即暂时存储在缓存寄存器221-11中的正常读取数据被传送到数据寄存器221-1。
当主机R/B信号和阵列R/B信号从“0”转换到“1”时,存储器控制器100执行读重试操作。
换句话说,图11A和图11B中示出的实施例与图10A和图10B中示出的实施例的不同之处在于:即便页面#k的正常读取数据还未被输出到存储器控制器100(并且类似地,在页面#k上还没有ECC操作被执行),非易失性存储器件200也被控制在页面#k上执行读重试操作。
在第二次读操作b2期间,存储器控制器100将读电平设置到新的值。当读电平被设置时,非易失性存储器件200从存储器控制器100接收RC读命令(随机缓存读命令)和页面#k的地址。响应于RC读命令,非易失性存储器件200在页面#k上执行第一读重试(第二次读操作)。当在读取时间(tR)期间,第二次读操作,即第一读重试正在缓存寄存器221-11上被执行的同时,数据寄存器221-1在读取数据输出时间tDout期间将正常读取数据,即页面#k的第一次读取数据输出到存储器控制器100,并且,存储器控制器100在ECC纠正时间tECC期间在正常读取数据上执行ECC。存储器控制器100根据ECC的结果确定是否执行第三次读操作,即第二读重试。
当ECC成功时,即ECC被完成时,存储器控制器100将复位命令发送到非易失性存储器件200来终止已经被无条件开始的读重试操作。
图12A是根据本发明的其他实施例的图1中所示的存储***20的操作的定时图。图12B是示出根据图12A中所示的实施例的存储***20的操作的图。图12A和图12B中示出的实施例的描述将专注于与图10A和图10B中示出的实施例的差别。
在时间c1期间,正常读命令被与页面#k的地址一起从存储器控制器100发送到非易失性存储器件200。响应于正常读命令,非易失性存储器件200读取目标页面页面#k,并将目标页面页面#k的正常读取数据暂时存储在缓存寄存器221-11中。此时,主机R/B信号和阵列R/B信号都被在逻辑低“0”输出,在本操作中,这指示读操作正在非易失性存储器件内(例如,存储单元阵列210的读访问)被执行。第一次读取数据,即暂时存储在缓存寄存器221-11中的正常读取数据被传送到数据寄存器221-1。
和图11A中示出的实施例类似,当主机R/B信号和阵列R/B信号从“0”转换到“1”时,存储器控制器100命令非易失性存储器件200执行读重试操作(在时间c2,跟着电平设置操作的是针对页面#k的后续读命令)。
当非易失性存储器件200在时间c2期间正在执行第二次读操作的同时,存储器控制器100输出第一次读取数据,并在第一次读取数据上执行ECC,第一次读取数据即响应于正常读命令在时间c1读取的正常读取数据。当ECC失败时,存储器控制器100控制非易失性存储器件200来执行第三次读操作(即,第二读重试)。
图12A和图12B中示出的实施例与图10A和图10B中示出的实施例的不同之处在于:在正常读取数据传输到存储器控制器100之前(并且在正常读取的数据上的ECC操作之前),非易失性存储器件200被控制执行读重试操作。如果在读重试操作期间ECC失败,则重复RC读重试。
在第三次读操作c3之前,存储器控制器100重新设置读电平。非易失性存储器件200重复读重试,直到传送到存储器控制器100的数据的ECC被成功地完成为止,或者,直到已经执行了足够的读重试次数为止(例如,已经执行了预定读重试次数)。
根据上面的实施例,当前读重试的某些操作出现在输出与先前读重试操作相关联的数据期间,和/或该数据上的ECC操作期间,所以总的读重试周期的持续时间被减小。当总的读重试周期的持续时间被减小时,读取速度可以被提高,和/或可以执行额外的读重试以提高非易失性存储器的可靠性。结果,包括非易失性存储器件200的存储***20的性能被提高。
图13是根据实施例的读取方法的流程图。根据一些实施例,图13的方法可以使用图1中所示的存储***20。
参考图13,在操作S10中,存储器控制器100将正常读命令发送到非易失性存储器件200,并且在对其的响应中,从非易失性存储器件200接收第一次读取数据。存储器控制器100的ECC电路140在正常读取数据上执行ECC操作。如果在操作S11中出现ECC失败(例如,ECC电路确定检测到的错误无法纠正),则存储器控制器100开始读重试操作。
为了跟踪读重试的次数,在操作S12中,初始化读重试计数或索引i,将i设置到0。此时,可以从读电平表检索对应于读重试计数(索引)i的读电平。读重试表115中的索引i可以标识对应于索引i的读电平。在操作S13中监测阵列R/B信号来确定非易失性存储器的存储单元阵列(例如,210)是否处于就绪状态。
如果当非易失性存储器件200就绪时,阵列R/B信号是“1”或者从“0”转换到“1”,则在操作S14中,存储器控制器100将读电平设置到新的电平(例如,通过发出命令道非易失性存储器件200来设置新的读电平)。例如,被基于读重试表115中的预定值设置的读电平被计数i标识。
在操作S15中,存储器控制器100将RC(随机缓存)读命令发送到非易失性存储器件200。可利用先前在S11中ECC操作失败的页面的地址发送RC读命令。
RC读命令可以是用于仅从非易失性存储器件200的存储单元阵列210读取目标页面而非顺次读取多个页面的读命令(例如,利用读重试或者正常读)。
响应于RC读命令,非易失性存储器件200针对目标页面执行读操作。这可以包括读取存储单元阵列210中的目标页面,并将读取页面存储在缓存寄存器211-11中。此外,非易失性存储器件200可以将数据从缓存寄存器211-11传送到数据寄存器221-1(例如在这里描述的其他实施例中的任何一个中描述的先前读取的数据)。
在操作S16中,在重试数据被读取并存储在缓存寄存器211-11中的同时,非易失性存储器件200可以将现在存储在数据寄存器221-1中的先前读取的数据输出到存储器控制器100,并且存储器控制器100在先前读取的数据上执行ECC。在一个替换实施例中,如上所述,如果存储在数据寄存器221-1中的数据是先前正常读取的数据(例如,不是读重试数据),则这个数据可以被存储器控制器100忽略(例如,存储器控制器可能不能锁存这个数据,或者,将其锁存并将其丢弃),或者,非易失性存储器件200可能不能传送这个正常读取的数据。
如果在操作S17中ECC成功完成,则ECC操作在步骤S20中完成(例如,ECC操作确定哪些比特是错误比特,将其纠正并输出被纠正的数据),存储器控制器100在操作S21中将复位命令传送到非易失性存储器件200来终止读重试操作。在非易失性存储器件200中,复位命令也可以将读电平重新设置到正常读电平。但是,如果在操作S17中ECC失败或者相反地确定重试数据中的错误无法纠正,则索引(重试计数)i在操作S18中被增大,并且利用对应于被增大的索引(重试计数)i的新读电平重复读重试(包括步骤S14、S15、S16和S17),直到ECC成功完成为止,或者,直到已经尝试了一定数量的读重试但是没有获取正确的ECC结果为止。例如,当索引(重试计数)i达到对应于读重试表115中的最后的读电平记录时,在操作S19中确定总体ECC操作失败了,读重试操作结束。在S19中可以使用其他的决策来确定总体ECC操作已经失败,例如当索引(重试计数)i达到预定值时(例如在设计期间或者在制造期间由制造商设置,例如,通过利用激光截断熔丝在寄存器中设置一值)。预定值也可以被主机10编程,其可以允许用户设置读重试尝试的次数。在操作S19中已经确定总体ECC操作失败之后,存储经受读重试操作的目标页面的块可以被标识为坏块(bad block)。如果这样的块被标识为坏块,则该块中的其他页面可以被读取并传送到另一空块,并且,存储器控制器100中的地址转换表可以被更新,以使对被移动页面的后续访问从新的块对这些页面进行访问。被标识为坏块的块由于其被标识为坏块(并且,非易失性存储器和/或存储器控制器(例如RAM 110)中的坏块表被更新),所以在非易失性存储器中可以被免于将来使用。
图14是根据本发明的其他实施例的使用图1中所示的存储***20控制数据读取的方法的流程图。
参考图14,在操作S50中,存储器控制器100将正常读命令发送到非易失性存储器件200,并且非易失性存储器件200响应于正常读命令从存储单元阵列210中的目标页面读取数据。
和图13中所示的实施例不同,无论ECC操作如何,存储器控制器100都开始非易失性存储器件200的读重试操作,并且在这个实施例中,在ECC操作开始之前,并且在ECC操作完成之前。
为了重新设置读重试的次数,即读重试计数和对应于该读重试的读电平,读重试表115中的索引在操作S51中被初始化。在操作S52中监测阵列R/B信号是否处于就绪状态,以确定是否能够执行读操作。
当非易失性存储器件200就绪时,如果阵列R/B信号是“1”,或者从“0”转换到“1”,在操作S53中,存储器控制器100将读电平设置到新的读电平。例如,基于包含反映读重试表115中预定值的信息的命令,设置读电平。如果后续读重试操作被执行,则索引i被增加1,并且读电平被基于新的索引i设置到新的电平。
存储器控制器100在操作S54中,利用要经受读重试操作的目标页面的地址,将RC读命令发送到非易失性存储器件200。
响应于RC读命令,非易失性存储器件200将先前已被读取并暂时存储在缓存寄存器221-11中的数据传送到数据寄存器221-1,并将通过读重试已从存储单元阵列210中的目标页面读取的重试数据存储在缓存寄存器221-11中。
在操作S55中,在重试数据正被读取并存储在缓存寄存器221-11中的同时,非易失性存储器件200可以将被传送到数据寄存器221-1的先前读取数据输出到存储器控制器100和ECC电路140,并且可以在先前读取数据上执行ECC操作。
如果在操作S56和操作S59中成功地完成了ECC,则存储器控制器100在操作S60中将复位命令发送到非易失性存储器件200来终止读重试操作。
但是,如果在操作S56中ECC失败,则在操作S57中,读重试表115中的索引被增加,并且重复读重试,直到ECC被成功完成为止。此时,当索引时读重试表115中的最后一个并且在操作S58中ECC失败时,读重试操作结束。这可以包括将读电平重新设置到缺省电平。其也可以包括清空存储在缓存寄存器221-11和/或数据寄存器221-1中的数据,或者,可以包括允许非易失性存储器件在将来的操作中丢弃这些数据(例如,在这些寄存器中的数据上覆写新的数据而不将该数据发送到非易失性存储器件200外部的设备)。
图15是根据示范性实施例的包括图1中所示的存储***的数据处理***。参考图15,数据处理***500可以在蜂窝电话机、智能电话机、个人数字助理(PDA)、或者无线电通信设备中实现。
数据处理***500包括存储器件200和控制存储器件200的操作的存储器控制器100。存储器控制器100可以根据处理器510的控制,控制存储器件200的数据存取操作,例如,编程(或者写)操作、擦除操作和/或读操作。作为编程操作的一部分,可以包括编程验证操作。
根据处理器510和存储器控制器100的控制,编程在存储器件200中的页面数据可通过显示器520显示。
无线收发器可以通过天线ANT发射或者接收无线电信号。例如,无线收发器530可以将通过天线ANT接收的无线电信号转换为可以被处理器510处理的信号。因此,处理器510可以处理从无线收发器530输出的信号,并将被处理的信号传送到存储器控制器100或者显示器520。存储器控制器100可以将被处理器510处理的信号编程在存储器件200中。而且,无线收发器530可以将从处理器510输出的信号转换为无线电信号,并将被转换的无线电信号通过天线ANT输出到外部设备。
输入设备450是可以输入用于控制处理器510的操作的控制信号或者要被处理器510处理的数据的设备。其可以被具体实施在例如触摸板和计算机鼠标的指点设备中、小键盘或者键盘中。
处理器510可以控制显示器520的操作,以使从存储器控制器100输出的数据、从无线收发器530输出的数据或者从输入设备540输出的数据可通过显示器520显示。根据示范性实施例,控制存储器件200的操作的存储器控制器100可以被具体实施为处理器的一部分或者与处理器分离的芯片。
图16是根据另一示范性实施例的包括图1中所示的存储***的数据处理***。参考图16,数据处理***600可以在个人计算机(PC)、平板PC、上网本、电子阅读器、个人数字助理(PDA)、便携式多媒体播放器(portablemultimedia player,PMP)、MP3播放器或MP4播放器中实现。
数据处理***200包括存储器件200和控制存储器件200的数据处理操作的存储器控制器100。处理器610可以根据通过输入设备620输入的数据,通过显示器230显示存储在存储器件200中的数据。例如,输入设备620可以实现为诸如触摸板和计算机鼠标的指针设备、小键盘或者键盘。
处理器610可以控制存储***200的一般操作和存储器控制器100的操作。根据示范性实施例,控制根据示范性实施例的存储器件200的存储器控制器100不仅可以被实现为处理器610的一部分,而且可以被实现为与处理器610分离的芯片。
图17是根据另一示范性实施例的包括图1中所示的存储***的数据处理***。参考图17,数据处理***700可以在存储卡或智能卡中实现。数据处理***700包括存储器件200、存储器控制器100和卡接口720。
存储器控制器100可以控制存储器件200与卡接口720之间的数据交换。根据示范性实施例,卡接口720可以是安全数字(SD)卡接口或多媒体卡接口,但不限于此。
根据主机的协议,卡接口720可以允许主机与存储器控制器100之间的数据交换。根据示范性实施例,卡接口720可以支持通用串行总线(USB)协议和芯片间(IC)-USB协议。这里,卡接口可以指支持在主机中使用的协议的硬件、配置该硬件的软件,和/或信号传输***。
当数据处理***700被连接到诸如PC、平板PC、数码相机、数字音频播放器、蜂窝电话机、控制台视频游戏硬件或者数字机顶盒的主机时,主机可以通过卡接口720和存储器控制器100与存储器件200执行数据通信。
图18是根据另一示范性实施例的包括图1中所示的存储***的数据处理***。参考图18,数据处理***800可以在图形处理设备中实现,例如数码相机或者配备了数码相机的蜂窝电话。数据处理***800包括存储器件200和控制存储器件200的数据处理操作的存储器控制器100,数据处理操作例如编程操作、擦除操作或者读操作。存储***400的图形传感器820将光学信号转换为数字信号,并且被转换的数字信号被传送到处理器810或者存储器控制器100。根据处理器810的控制,被转换的数码信号可以被通过显示器830显示,或者,通过存储器控制器100存储在存储器件200中。
图19是根据另一示范性实施例的包括图1中所示的存储***的数据处理***。参考图19,数据处理***900可以在例如固态驱动器(SSD)的数据存储设备中实现。
数据处理***900可以包括多个存储器件200、控制多个存储器件200中的每一个的数据处理操作的存储器控制器100。数据处理***900可以被具体实施在存储器模块中。
图20是包括图19中所示的数据处理***900的数据存储设备1000的框图。参考图19和图20,数据存储设备1000可以被实现为独立盘冗余阵列(RAID)***。数据存储设备1000包括RAID控制器1010和多个存储***1100-1到1100-n,其中,“n”是自然数。
存储***1100-1到1100-n中的每一个可以是图19中示出的数据处理***900。存储***1100-1到1100-n可以形成RAID阵列。数据存储设备1000可以是PC或者SSD。
在编程操作期间,RAID控制器1010可以响应于从主机接收的编程命令,根据RAID电平将从主机输出的编程数据传送到存储***1100-1到1100-n中的至少一个。在读操作期间,RAID控制器1010可以响应于从主机接收到的读命令,将从存储***1100-1到1100-n其中至少一个读取的数据传送到主机。
在这里描述的实施例中,电平设置命令和/或其他命令可以被存储器控制器(或者其他外部源)发送到非易失性存储器200以便开始读重试。但是,预期为了实施读重试操作,存储器控制器的所有这些动作可能不是必须的。这里描述的所有实施例可以被修改,以使非易失性存储器件可以自动修改读电平(例如,通过参考指示差(百分比或者固定电平)的内部寄存器,例如可编程模式寄存器,或者,通过参考非易失性存储器阵列内的查找表部分),并自动开始目标页面的新的读操作而无需来自存储器控制器100的任何命令。这些电平设置和读重试过程可以被重复(无需外部命令),直到存储器控制器100发出命令(或者,与状态信号通信)来结束读重试。或者,可以自动执行固定数量的读重试而无需来自存储器控制器100的外部命令。在这些替代实施例中,通过消除到非易失性存储器件200的时间传递(例如,给出命令),总的读重试时间可以被进一步减少。此外,其可以释放存储器控制器100和非易失性存储器件200之间的可能被其他设备共享的总线。
此外,这里描述的所有实施例可以被修改,以使非易失性存储器确定是输出新的读重试数据还是丢弃新的读重试数据。例如,非易失性存储器可以将在读重试操作中从目标页面的页面或者读取数据(例如,存储在缓存寄存器221-11到221-m1中)与先前从该目标页面读取的数据进行比较。如果数据相同,则非易失性存储器可以丢弃在读重试操作中读取的数据,将读电平改变到新的读电平,并利用改变的读电平执行新的读重试操作。新的读电平可以被非易失性存储器确定,或者,可以在从非易失性存储器200接收到状态信号之后,从存储器控制器100发送到非易失性存储器。通过在缓存寄存器221-11到221-m1的比特与存储在数据寄存器221-1到221-m中的读取数据的页面(已被发送到存储器控制器)的对应比特之间执行异或(XOR)(如果比特被改变,这将产生1,或者,如果不被改变将产生0),伴随着在XOR门的总输出上的OR操作(如果页面的任何比特被改变,这将产生1),可以实施确定新的读重试数据是否与先前发送到存储器控制器100的数据相同。或者,利用指示新的读重试操作是否改变了缓存寄存器221-11到221-m1的任何锁存器的锁存状态的电路(例如,页面寄存器和S/A220的电路),可以完成确定新的读重试数据是否与先前从目标页面读取的数据相同。这些替代实施例还可以通过消除将数据发出到存储器控制器的时间进一步减少总的读重试时间,以及释放存储器控制器100和非易失性存储器件200之间的总线(例如,I/O0到I/O7)。此外,通过消除数据传送操作和存储器控制器的ECC操作,可以实现功率节省。本公开还预期对这里描述的全部实施例的变化,其中,存储器控制器100确定从非易失性存储器件200接收的数据和先前接收的相同,因此跳过刚接收到的相同数据上的第二ECC操作,从而节省功率。
如上所述,根据本发明的一些实施例,节省了在其期间执行至少两个读重试的时间周期,从而减少了总的读重试持续时间。当总的读重试持续时间被减少时,非易失性存储器件的可靠性和/或读取速度可以被提高,从而提高了存储***的性能。
虽然已经参考本发明的示范性实施例具体示出并描述了本发明,但是本领域技术人员将会理解,可以对其做出形式和细节上的各种变化而不背离由所附权利要求限定的本发明的的精神和范围。应当注意,除非权利要求使用单词“装置”,申请人不期望权利要求被解释为“装置加功能”型权利要求。

Claims (30)

1.一种操作非易失性存储器的方法,包括:
发出第一读命令,其命令非易失性存储器执行非易失性存储器的第一页面的第一次读取;
接收从第一次读取产生的第一读取数据页面;
确定从第一次读取产生的第一读取数据页面具有不会被纠错电路纠正的错误;
响应于确定步骤,发出第二读命令,其命令非易失性存储器以与执行第一次读取时使用的操作参数不同的操作参数再次执行第一页面的第二次读取;
接收从第二次读取产生的第二读取数据页面;
分析从第二次读取产生的第二读取数据页面是否具有不会被纠错电路纠正的错误;以及
在分析步骤完成之前,发出第三读命令,其命令非易失性存储器以与执行第一次读取时使用的操作参数不同并且与执行第二次读取时使用的操作参数不同的操作参数再次执行第一页面的第三次读取。
2.如权利要求1所述的方法,其中,在接收从第二次读取产生的第二读取数据页面的步骤完成之前,发出第三读命令。
3.如权利要求1所述的方法,其中,在接收从第二次读取产生的第二读取数据页面的任何数据之前,发出第三读命令。
4.如权利要求1所述的方法,
其中,第一页面被存储在第一物理页面中,并且
其中,操作参数代表非易失性存储器用来确定第一物理页面的多个存储单元中的每一个的存储单元数据的读基准电压的量值。
5.如权利要求1所述的方法,
其中,第一页面被存储在第一物理页面中,
其中,非易失性存储器是NAND闪速存储器,并且
其中,操作参数代表施加于非易失性存储器的第一物理页面的字线用于确定第一物理页面的多个存储单元中的每一个的存储单元数据的读基准电压的量值。
6.如权利要求1所述的方法,
其中,第一页面被存储在第一物理页面中,
其中,非易失性存储器是多电平单元(MLC)NAND闪速存储器,并且
其中,第二读命令和第三读命令均命令非易失性闪速存储器利用两个新的读基准电压来读取MLC NAND闪速存储器,所述两个新的读基准电压在对应的读操作期间被顺次施加于第一物理页面的字线。
7.如权利要求1所述的方法,其中,第二读命令和第三读命令中的每一个均为读重试命令,并且包括代表对应的操作参数的值。
8.如权利要求7所述的方法,
其中,从读重试表中检索代表与第二次读取相关联的对应的操作参数的值和代表用于第三次读取的对应的操作参数的值。
9.如权利要求8所述的方法,其中,存储器控制器发出第一读命令、第二读命令和第三读命令,并且包括读重试表。
10.如权利要求1所述的方法,其中,第二读命令和第三读命令中的每一个均不包括任何地址信息。
11.如权利要求1所述的方法,进一步包括:
在发出第二读命令之前,发出第一电平设置命令,第一电平设置命令可操作以在非易失性存储器中设置用于第二次读取的操作参数;以及
在发出第三读命令之前,发出第二电平设置命令,第二电平设置命令可操作以在非易失性存储器中设置用于第三次读取的操作参数。
12.如权利要求11所述的方法,进一步包括:在发出第一电平设置命令和第二电平设置命令的每一个之前,确定非易失性存储器的存储器阵列并非正在执行读操作。
13.一种操作NAND闪速存储器的方法,包括:
第一次读取NAND闪速存储器的第一页面以获取第一读取数据页面;以及
然后,在完成对第一读取数据页面的纠错操作之前,发出读命令,该读命令导致利用至少一个调整的读电压第二次读取第一页面。
14.一种操作非易失性存储器的方法,包括:
利用第一读操作参数第一次读取非易失性存储器的页面以获取第一读取数据页面,并将第一读取数据页面存储在非易失性存储器的第一寄存器中;
将第一读取数据页面从第一寄存器传送到非易失性存储器的第二寄存器;
将第一读取数据页面从第二寄存器传送到存储器控制器;以及
在将第一读取数据页面从第二寄存器传送到存储器控制器的同时,使用与第一读操作参数不同的第二读操作参数再次第二次读取数据的页面。
15.如权利要求14所述的方法,其中,第一和第二读操作参数分别是非易失性存储器用来确定存储相应的读操作的页面的多个存储单元中的每一个的存储单元数据的第一和第二读基准电压。
16.如权利要求15所述的方法,其中,非易失性存储器是NAND闪速存储器,并且页面被存储在NAND闪速存储器的第一物理页面中,并且其中,该方法进一步包括:
在第一次读取期间将第一读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据;以及
在第二次读取期间将第二读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据。
17.如权利要求16所述的方法,其中,非易失性存储器是多电平单元(MLC)NAND闪速存储器,并且页面被存储在NAND闪速存储器的第一物理页面中,并且其中,该方法进一步包括:
在第一次读取期间将包括第一读基准电压的第一组读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据;以及
在第二次读取期间将包括第二读基准电压的第二组读基准电压施加于第一物理页面的字线,以确定第一物理页面的多个存储单元中的每一个的存储单元数据,
其中,第二组读基准电压不同于第一组读基准电压。
18.如权利要求14所述的方法,进一步包括:
接收读重试命令,其指令非易失性存储器件执行第二次读取。
19.如权利要求18所述的方法,其中,读重试命令包括代表第二读操作参数的值。
20.如权利要求18所述的方法,读重试命令不包含任何地址信息。
21.如权利要求14所述的方法,进一步包括:
接收第一电平设置命令,其可操作以在非易失性存储器中设置第二读操作参数。
22.一种操作NAND闪速存储器的方法,包括:
第一次读取NAND闪速存储器的第一页面以获取第一读取数据页面;以及
然后,在完成对第一读取数据页面的纠错操作之前,发出读命令,该读命令导致利用至少一个调整的读电压第二次读取第一页面。
23.如权利要求22所述的方法,其中,发出读命令在接收从第一次读取产生的第一读取数据页面的全部之前发出。
24.如权利要求22所述的方法,其中,发出读命令在接收从第一次读取产生的第一读取数据页面的任何内容之前发出。
25.一种非易失性存储器件,包括:
存储器阵列;
命令电路,被配置为接收读命令,并且响应于读命令开始存储器阵列的读操作;
控制电路,被配置为断言第一R/B(读繁忙)标志以指示非易失性存储器不能接受额外的命令,并且响应于读操作而断言第二R/B标志以指示存储器阵列的状态;以及
数据缓冲器,被配置为响应于读操作,当第二R/B标志指示存储器阵列的繁忙状态时,从非易失性存储器输出数据。
26.如权利要求25所述的非易失性存储器件,
其中,控制电路响应于从外部存储器控制器接收的读状态命令而断言第一R/B标志和第二R/B标志作为响应。
27.一种被配置为操作NAND闪速存储器的存储器控制器,包括:
接口;
纠错编码电路,被配置为分析通过接口接收的数据页面,以纠正页面的比特错误并确定数据页面是否具有无法纠正的错误;以及
命令电路,被配置为产生包括第一读命令的命令并将其输出到接口,以导致NAND闪速存储器的第一页面的第一次读取,并通过接口接收从第一次读取产生的第一读取数据页面,
其中,纠错编码电路被配置为确定第一读取数据页面是否具有无法纠正的错误,并且
其中,命令电路被配置为在纠错编码电路完成确定第一读取数据页面是否具有无法纠正的错误的确定操作之前,发出第二读命令,第二读命令导致利用至少一个调整的读电压对第一页面的第二次读取。
28.如权利要求27所述的存储器控制器,其中,命令电路被配置为在通过接口接收第一读取数据页面的全部之前发出第二读命令。
29.如权利要求27所述的存储器控制器,其中,命令电路被配置为通过接口接收第一读取数据页面的任何内容之前发出第二读命令。
30.如权利要求27所述的存储器控制器,其中,第二读命令是读重试命令。
CN2012103712102A 2011-09-28 2012-09-28 从非易失性存储器读数据的方法及实施方法的设备和*** Pending CN103035294A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2011-0098579 2011-09-28
KR1020110098579A KR20130034522A (ko) 2011-09-28 2011-09-28 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치
US13/429,326 2012-03-24
US13/429,326 US20130080858A1 (en) 2011-09-28 2012-03-24 Method of reading data from a non-volatile memory and devices and systems to implement same

Publications (1)

Publication Number Publication Date
CN103035294A true CN103035294A (zh) 2013-04-10

Family

ID=47912627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012103712102A Pending CN103035294A (zh) 2011-09-28 2012-09-28 从非易失性存储器读数据的方法及实施方法的设备和***

Country Status (4)

Country Link
US (1) US20130080858A1 (zh)
JP (1) JP2013073669A (zh)
KR (1) KR20130034522A (zh)
CN (1) CN103035294A (zh)

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104240760A (zh) * 2013-06-12 2014-12-24 三星电子株式会社 包括非易失性存储器设备的存储器***及其动态存取方法
WO2015027678A1 (zh) * 2013-08-27 2015-03-05 华为技术有限公司 一种坏道修复方法及装置
CN105122215A (zh) * 2013-06-03 2015-12-02 桑迪士克科技股份有限公司 三维存储器的适应性操作
CN105304114A (zh) * 2014-07-28 2016-02-03 三星电子株式会社 存储装置和操作存储***的方法
CN105321572A (zh) * 2014-07-04 2016-02-10 三星电子株式会社 存储设备及其读取方法
CN105529049A (zh) * 2014-10-21 2016-04-27 爱思开海力士有限公司 控制器、半导体存储***、数据储存***及其操作方法
CN105590648A (zh) * 2014-10-22 2016-05-18 华邦电子股份有限公司 存储器读取方法以及数字存储器装置
CN106251903A (zh) * 2015-06-05 2016-12-21 爱思开海力士有限公司 存储***及其操作方法
CN106847338A (zh) * 2015-12-04 2017-06-13 三星电子株式会社 非易失性存储器装置、存储器***及操作它们的方法
CN107240411A (zh) * 2016-03-29 2017-10-10 爱思开海力士有限公司 存储***及其操作方法
CN107766257A (zh) * 2016-08-19 2018-03-06 爱思开海力士有限公司 存储器***及其操作方法
CN107797821A (zh) * 2016-09-05 2018-03-13 上海宝存信息科技有限公司 重试读取方法以及使用该方法的装置
CN108062962A (zh) * 2016-11-08 2018-05-22 爱思开海力士有限公司 数据存储装置及其操作方法
CN108228093A (zh) * 2016-12-22 2018-06-29 西部数据技术公司 使用后台介质扫描来监控存储器的方法和装置
CN108241470A (zh) * 2016-12-27 2018-07-03 爱思开海力士有限公司 控制器及其操作方法
CN108241549A (zh) * 2016-12-27 2018-07-03 北京京存技术有限公司 基于ECC的NAND数据Read Retry纠错方法和NAND控制器
CN108363544A (zh) * 2017-01-26 2018-08-03 光宝电子(广州)有限公司 固态储存装置及其读取重试方法
CN108932964A (zh) * 2017-05-23 2018-12-04 三星电子株式会社 存储设备和操作存储设备的方法
CN109388514A (zh) * 2017-08-14 2019-02-26 爱思开海力士有限公司 存储器***及其操作方法
CN109727628A (zh) * 2017-10-31 2019-05-07 美光科技公司 块读取计数电压调整
CN110046059A (zh) * 2019-04-15 2019-07-23 联芸科技(杭州)有限公司 用于存储器的读取控制装置、读取控制方法和控制器
CN110164394A (zh) * 2019-06-04 2019-08-23 深圳市华星光电技术有限公司 时序控制器及时序控制板
CN110795025A (zh) * 2018-08-03 2020-02-14 深圳大心电子科技有限公司 存储器管理方法以及存储控制器
CN111061426A (zh) * 2018-10-17 2020-04-24 旺宏电子股份有限公司 存储器装置、集成电路存储器装置及读取页面串流的方法
CN111258793A (zh) * 2018-12-03 2020-06-09 爱思开海力士有限公司 存储器控制器及其操作方法
CN111435604A (zh) * 2019-01-15 2020-07-21 群联电子股份有限公司 解码方法、存储器控制电路单元以及存储器存储装置
WO2020237637A1 (zh) * 2019-05-26 2020-12-03 华为技术有限公司 一种数据读取方法、存储控制器及电子设备
CN113409837A (zh) * 2021-06-28 2021-09-17 芯天下技术股份有限公司 调整读操作电压值的方法、装置、电子设备及存储介质
CN113656218A (zh) * 2021-07-23 2021-11-16 深圳市宏旺微电子有限公司 闪存数据重读方法、装置及计算机可读存储介质
CN115143590A (zh) * 2022-06-30 2022-10-04 北京小米移动软件有限公司 控制参数的处理方法、装置和存储介质

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8667368B2 (en) * 2012-05-04 2014-03-04 Winbond Electronics Corporation Method and apparatus for reading NAND flash memory
US8914708B2 (en) 2012-06-15 2014-12-16 International Business Machines Corporation Bad wordline/array detection in memory
US8824203B2 (en) * 2012-07-13 2014-09-02 Micron Technology, Inc. Multiple step programming in a memory device
KR101944793B1 (ko) * 2012-09-04 2019-02-08 삼성전자주식회사 플래시 메모리를 포함하는 플래시 메모리 시스템 및 그것의 비정상 워드 라인 검출 방법
US20140245101A1 (en) * 2013-02-28 2014-08-28 Kabushiki Kaisha Toshiba Semiconductor memory
US9324450B2 (en) 2013-03-13 2016-04-26 Winbond Electronics Corporation NAND flash memory
KR102131802B1 (ko) * 2013-03-15 2020-07-08 삼성전자주식회사 비휘발성 메모리 장치의 데이터 독출 방법, 비휘발성 메모리 장치, 및 메모리 시스템의 구동 방법
KR20140142759A (ko) * 2013-05-31 2014-12-15 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그의 동작방법과 비휘발성 메모리 장치를 포함하는 시스템
US20150046633A1 (en) * 2013-08-12 2015-02-12 Kabushiki Kaisha Toshiba Cache control method and storage device
SG11201601627XA (en) 2013-09-04 2016-04-28 Toshiba Kk Semiconductor storage device
KR102192910B1 (ko) 2013-09-10 2020-12-18 에스케이하이닉스 주식회사 반도체 장치, 메모리 시스템 및 이의 동작 방법
JPWO2015037159A1 (ja) * 2013-09-13 2017-03-02 株式会社東芝 半導体記憶装置及びメモリシステム
KR102114234B1 (ko) * 2013-10-22 2020-05-25 에스케이하이닉스 주식회사 데이터 저장 시스템 및 그것의 동작 방법
US9514848B2 (en) * 2014-04-03 2016-12-06 Lite-On Electronics (Guangzhou) Limited Solid state drive and associated error check and correction method
KR102187116B1 (ko) 2014-04-07 2020-12-04 삼성전자주식회사 비휘발성 메모리 장치와 이를 포함하는 메모리 시스템, 및 비휘발성 메모리 장치의 구동 방법
JP2015215774A (ja) * 2014-05-12 2015-12-03 Tdk株式会社 メモリコントローラ、メモリシステム及びメモリ制御方法
KR102174030B1 (ko) 2014-05-13 2020-11-05 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 읽기 방법
KR102249416B1 (ko) * 2014-06-11 2021-05-07 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 구동 방법
KR102215741B1 (ko) 2014-06-23 2021-02-17 삼성전자주식회사 불휘발성 메모리 및 메모리 컨트롤러를 포함하는 스토리지 장치 및 스토리지 장치의 동작 방법
US9442798B2 (en) * 2014-07-31 2016-09-13 Winbond Electronics Corporation NAND flash memory having an enhanced buffer read capability and method of operation thereof
US9367392B2 (en) 2014-08-01 2016-06-14 Winbond Electronics Corporation NAND flash memory having internal ECC processing and method of operation thereof
JP2016054017A (ja) * 2014-09-04 2016-04-14 株式会社東芝 半導体記憶装置
US9952981B2 (en) * 2014-09-29 2018-04-24 Apple Inc. Read cache management in multi-level cell (MLC) non-volatile memory
KR102251810B1 (ko) * 2014-09-30 2021-05-13 삼성전자주식회사 메모리 장치, 메모리 시스템 및 메모리 장치에 대한 제어 방법
KR102290974B1 (ko) * 2014-11-07 2021-08-19 삼성전자주식회사 불휘발성 메모리 장치, 메모리 컨트롤러 및 그것들을 포함하는 불휘발성 메모리 시스템의 동작 방법
KR102262909B1 (ko) 2014-12-18 2021-06-10 에스케이하이닉스 주식회사 메모리 시스템 동작 방법
CN106158038B (zh) 2015-04-14 2021-03-09 恩智浦美国有限公司 从非易失性存储器读取数据的方法
KR102459077B1 (ko) * 2016-01-12 2022-10-27 삼성전자주식회사 비선형 필터링 방식을 사용하는 메모리 시스템 및 그것의 읽기 방법
JP2017157257A (ja) * 2016-03-01 2017-09-07 東芝メモリ株式会社 半導体記憶装置及びメモリシステム
US10423492B2 (en) * 2016-05-17 2019-09-24 SK Hynix Inc. Self error-handling flash memory device
US10102920B2 (en) 2016-08-15 2018-10-16 Sandisk Technologies Llc Memory system with a weighted read retry table
CN109791792B (zh) 2016-09-23 2023-08-22 铠侠股份有限公司 存储装置
US10468117B2 (en) * 2017-01-12 2019-11-05 Sandisk Technologies Llc Read threshold adjustment with feedback information from error recovery
TWI615852B (zh) * 2017-01-19 2018-02-21 群聯電子股份有限公司 記憶體重讀方法、記憶體儲存裝置及記憶體控制電路單元
JP2018128963A (ja) * 2017-02-10 2018-08-16 株式会社東芝 ビデオサーバ、放送システム、及びメモリ制御方法
KR20180096845A (ko) * 2017-02-20 2018-08-30 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
CN107423160B (zh) * 2017-07-24 2020-04-17 山东华芯半导体有限公司 一种提高NAND flash读速度的方法及装置
KR20190038049A (ko) 2017-09-29 2019-04-08 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
US10521157B2 (en) * 2018-01-15 2019-12-31 Gigadevice Semiconductor (Shanghai) Inc. Jump page cache read method in NAND flash memory and NAND flash memory
KR102506507B1 (ko) * 2018-01-19 2023-03-07 삼성전자주식회사 통신 시스템에서 신호를 송/수신하는 장치 및 방법
KR20190094968A (ko) * 2018-02-06 2019-08-14 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
CN110246533B (zh) * 2018-03-09 2020-11-13 建兴储存科技(广州)有限公司 固态储存装置的失败模式检测方法及错误更正方法
JP2019168853A (ja) 2018-03-22 2019-10-03 東芝メモリ株式会社 メモリシステム、その制御方法及びプログラム
US10990463B2 (en) 2018-03-27 2021-04-27 Samsung Electronics Co., Ltd. Semiconductor memory module and memory system including the same
KR102549584B1 (ko) * 2018-03-27 2023-06-30 삼성전자주식회사 메모리 모듈을 포함하는 메모리 시스템, 메모리 모듈, 그리고 메모리 모듈의 동작 방법
TWI663512B (zh) * 2018-05-17 2019-06-21 慧榮科技股份有限公司 重讀頁面資料方法
US10990466B2 (en) * 2018-06-20 2021-04-27 Micron Technology, Inc. Memory sub-system with dynamic calibration using component-based function(s)
TWI686697B (zh) * 2018-07-26 2020-03-01 大陸商深圳大心電子科技有限公司 記憶體管理方法以及儲存控制器
CN110825310B (zh) * 2018-08-09 2023-09-05 深圳大心电子科技有限公司 存储器管理方法以及存储控制器
KR102612749B1 (ko) * 2018-12-19 2023-12-13 에스케이하이닉스 주식회사 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
JP7159036B2 (ja) 2018-12-25 2022-10-24 キオクシア株式会社 メモリデバイス
TWI681393B (zh) * 2019-01-07 2020-01-01 群聯電子股份有限公司 解碼方法、記憶體控制電路單元以及記憶體儲存裝置
JP2020149123A (ja) * 2019-03-11 2020-09-17 キオクシア株式会社 メモリシステム、及びメモリシステムの制御方法
KR20210083466A (ko) * 2019-12-26 2021-07-07 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR20210087350A (ko) * 2020-01-02 2021-07-12 삼성전자주식회사 저장 장치 및 이의 동작 방법
US11314589B2 (en) * 2020-05-15 2022-04-26 Intel Corporation Read retry to selectively disable on-die ECC
KR20220118011A (ko) * 2021-02-18 2022-08-25 에스케이하이닉스 주식회사 메모리 장치 및 메모리 장치의 동작 방법
JP7161583B1 (ja) * 2021-06-29 2022-10-26 ウィンボンド エレクトロニクス コーポレーション 半導体装置
US11538522B1 (en) * 2021-06-30 2022-12-27 Micron Technology, Inc. Systems and methods for adaptive self-referenced reads of memory devices
JP7096938B1 (ja) * 2021-08-27 2022-07-06 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
KR102532038B1 (ko) * 2021-12-15 2023-05-12 삼성전자주식회사 에러 정정 코드(ecc) 디코딩 방법 및 이를 수행하는 메모리 시스템
US11966289B2 (en) * 2022-06-02 2024-04-23 Micron Technology, Inc. Cross-temperature compensation in non-volatile memory devices
US20240071488A1 (en) * 2022-08-26 2024-02-29 Micron Technology, Inc. Forward looking algorithm for vertical integrated cross-point array memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282145B1 (en) * 1999-01-14 2001-08-28 Silicon Storage Technology, Inc. Array architecture and operating methods for digital multilevel nonvolatile memory integrated circuit system
US6877079B2 (en) * 2001-03-06 2005-04-05 Samsung Electronics Co., Ltd. Memory system having point-to-point bus configuration
US7330061B2 (en) * 2006-05-01 2008-02-12 International Business Machines Corporation Method and apparatus for correcting the duty cycle of a digital signal
US7849383B2 (en) * 2007-06-25 2010-12-07 Sandisk Corporation Systems and methods for reading nonvolatile memory using multiple reading schemes
US8040738B2 (en) * 2008-12-30 2011-10-18 Spansion Llc Method and apparatus for performing semiconductor memory operations
US7653779B1 (en) * 2009-02-04 2010-01-26 Gene Fein Memory storage using a look-up table

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105122215B (zh) * 2013-06-03 2018-03-20 桑迪士克科技有限责任公司 三维存储器的适应性操作
CN105122215A (zh) * 2013-06-03 2015-12-02 桑迪士克科技股份有限公司 三维存储器的适应性操作
CN104240760B (zh) * 2013-06-12 2020-08-28 三星电子株式会社 包括非易失性存储器设备的存储器***及其动态存取方法
CN104240760A (zh) * 2013-06-12 2014-12-24 三星电子株式会社 包括非易失性存储器设备的存储器***及其动态存取方法
WO2015027678A1 (zh) * 2013-08-27 2015-03-05 华为技术有限公司 一种坏道修复方法及装置
US10127099B2 (en) 2013-08-27 2018-11-13 Huawei Technologies Co., Ltd. Bad sector repair method and apparatus
CN105321572A (zh) * 2014-07-04 2016-02-10 三星电子株式会社 存储设备及其读取方法
CN105321572B (zh) * 2014-07-04 2020-08-25 三星电子株式会社 存储设备及其读取方法
CN105304114B (zh) * 2014-07-28 2019-10-25 三星电子株式会社 存储装置和操作存储***的方法
CN105304114A (zh) * 2014-07-28 2016-02-03 三星电子株式会社 存储装置和操作存储***的方法
CN105529049A (zh) * 2014-10-21 2016-04-27 爱思开海力士有限公司 控制器、半导体存储***、数据储存***及其操作方法
CN105529049B (zh) * 2014-10-21 2020-11-06 爱思开海力士有限公司 控制器、半导体存储***、数据储存***及其操作方法
CN105590648B (zh) * 2014-10-22 2019-11-01 华邦电子股份有限公司 存储器读取方法以及数字存储器装置
CN105590648A (zh) * 2014-10-22 2016-05-18 华邦电子股份有限公司 存储器读取方法以及数字存储器装置
CN106251903B (zh) * 2015-06-05 2020-11-10 爱思开海力士有限公司 存储***及其操作方法
CN106251903A (zh) * 2015-06-05 2016-12-21 爱思开海力士有限公司 存储***及其操作方法
CN106847338A (zh) * 2015-12-04 2017-06-13 三星电子株式会社 非易失性存储器装置、存储器***及操作它们的方法
CN106847338B (zh) * 2015-12-04 2021-03-02 三星电子株式会社 非易失性存储器装置、存储器***及操作它们的方法
CN107240411A (zh) * 2016-03-29 2017-10-10 爱思开海力士有限公司 存储***及其操作方法
CN107766257B (zh) * 2016-08-19 2021-07-23 爱思开海力士有限公司 存储器***及其操作方法
CN107766257A (zh) * 2016-08-19 2018-03-06 爱思开海力士有限公司 存储器***及其操作方法
CN107797821A (zh) * 2016-09-05 2018-03-13 上海宝存信息科技有限公司 重试读取方法以及使用该方法的装置
CN108062962A (zh) * 2016-11-08 2018-05-22 爱思开海力士有限公司 数据存储装置及其操作方法
CN108228093A (zh) * 2016-12-22 2018-06-29 西部数据技术公司 使用后台介质扫描来监控存储器的方法和装置
CN108241549A (zh) * 2016-12-27 2018-07-03 北京京存技术有限公司 基于ECC的NAND数据Read Retry纠错方法和NAND控制器
CN108241549B (zh) * 2016-12-27 2021-04-30 北京兆易创新科技股份有限公司 基于ECC的NAND数据Read Retry纠错方法和NAND控制器
CN108241470B (zh) * 2016-12-27 2023-07-11 爱思开海力士有限公司 控制器及其操作方法
CN108241470A (zh) * 2016-12-27 2018-07-03 爱思开海力士有限公司 控制器及其操作方法
CN108363544B (zh) * 2017-01-26 2021-05-07 建兴储存科技(广州)有限公司 固态储存装置及其读取重试方法
CN108363544A (zh) * 2017-01-26 2018-08-03 光宝电子(广州)有限公司 固态储存装置及其读取重试方法
CN108932964A (zh) * 2017-05-23 2018-12-04 三星电子株式会社 存储设备和操作存储设备的方法
CN109388514A (zh) * 2017-08-14 2019-02-26 爱思开海力士有限公司 存储器***及其操作方法
CN109388514B (zh) * 2017-08-14 2022-10-28 爱思开海力士有限公司 存储器***及其操作方法
CN109727628A (zh) * 2017-10-31 2019-05-07 美光科技公司 块读取计数电压调整
CN110795025A (zh) * 2018-08-03 2020-02-14 深圳大心电子科技有限公司 存储器管理方法以及存储控制器
CN110795025B (zh) * 2018-08-03 2023-09-05 深圳大心电子科技有限公司 存储器管理方法以及存储控制器
CN111061426B (zh) * 2018-10-17 2023-08-22 旺宏电子股份有限公司 存储器装置、集成电路存储器装置及读取页面串流的方法
CN111061426A (zh) * 2018-10-17 2020-04-24 旺宏电子股份有限公司 存储器装置、集成电路存储器装置及读取页面串流的方法
CN111258793B (zh) * 2018-12-03 2023-10-24 爱思开海力士有限公司 存储器控制器及其操作方法
CN111258793A (zh) * 2018-12-03 2020-06-09 爱思开海力士有限公司 存储器控制器及其操作方法
CN111435604A (zh) * 2019-01-15 2020-07-21 群联电子股份有限公司 解码方法、存储器控制电路单元以及存储器存储装置
CN110046059A (zh) * 2019-04-15 2019-07-23 联芸科技(杭州)有限公司 用于存储器的读取控制装置、读取控制方法和控制器
WO2020237637A1 (zh) * 2019-05-26 2020-12-03 华为技术有限公司 一种数据读取方法、存储控制器及电子设备
CN110164394B (zh) * 2019-06-04 2021-08-06 Tcl华星光电技术有限公司 时序控制器及时序控制板
CN110164394A (zh) * 2019-06-04 2019-08-23 深圳市华星光电技术有限公司 时序控制器及时序控制板
CN113409837A (zh) * 2021-06-28 2021-09-17 芯天下技术股份有限公司 调整读操作电压值的方法、装置、电子设备及存储介质
CN113656218A (zh) * 2021-07-23 2021-11-16 深圳市宏旺微电子有限公司 闪存数据重读方法、装置及计算机可读存储介质
CN115143590A (zh) * 2022-06-30 2022-10-04 北京小米移动软件有限公司 控制参数的处理方法、装置和存储介质
CN115143590B (zh) * 2022-06-30 2024-04-30 北京小米移动软件有限公司 控制参数的处理方法、装置和存储介质

Also Published As

Publication number Publication date
US20130080858A1 (en) 2013-03-28
KR20130034522A (ko) 2013-04-05
JP2013073669A (ja) 2013-04-22

Similar Documents

Publication Publication Date Title
CN103035294A (zh) 从非易失性存储器读数据的方法及实施方法的设备和***
US10249383B2 (en) Data storage device and operating method thereof
US11934271B2 (en) Memory system and operating method thereof
US10963339B2 (en) Data storage device and operating method thereof
US10102059B2 (en) Data storage device capable of preventing a data retention fail of a nonvolatile memory device and operating method thereof
CN108694096B (zh) 控制器、存储***及其操作方法
CN101800071B (zh) 固态盘设备及其编程失败处理方法
TW201837724A (zh) 記憶體系統及其操作方法
US10790034B2 (en) Memory device generating status signal, memory system including the memory device, and method of operating memory device
CN110942795B (zh) 存储器***、其操作方法以及非易失性存储器装置
CN112435703A (zh) 存储装置及其操作方法
CN107958687B (zh) 存储器编程方法、存储器控制电路单元及其存储装置
KR20200018060A (ko) 메모리 시스템 및 메모리 시스템의 동작방법
CN112185449A (zh) 存储器***以及操作存储器***的方法
US20210248032A1 (en) Memory system, memory controller, and method for operating memory system
CN111667871B (zh) 存储器设备及其操作方法
US8848450B2 (en) Method and apparatus for adjusting maximum verify time in nonvolatile memory device
CN115376596A (zh) 存储器设备和该存储器设备的操作方法
CN115938444A (zh) 存储器装置及其操作方法
US9972390B2 (en) Two pass memory programming method, memory control circuit unit and memory storage apparatus
CN114675781A (zh) 存储控制器和包括该存储控制器的存储***
US9323594B2 (en) Semiconductor device and method of operating the same
CN108091364B (zh) 数据写入方法、存储器控制电路单元与存储器存储装置
CN114360593A (zh) 存储装置及其操作方法
US20160062688A1 (en) Flash memory device, flash memory system, and operating method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130410