CN101715595A - 存储器单元读取阈的自适应估计 - Google Patents
存储器单元读取阈的自适应估计 Download PDFInfo
- Publication number
- CN101715595A CN101715595A CN200880005741A CN200880005741A CN101715595A CN 101715595 A CN101715595 A CN 101715595A CN 200880005741 A CN200880005741 A CN 200880005741A CN 200880005741 A CN200880005741 A CN 200880005741A CN 101715595 A CN101715595 A CN 101715595A
- Authority
- CN
- China
- Prior art keywords
- cdf
- threshold
- value
- storing value
- unit
- 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
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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/20—Address safety or protection circuits, i.e. arrangements for preventing unauthorized or accidental access
-
- 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/5621—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 storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output 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/10—Programming or data input circuits
- G11C16/20—Initialising; Data preset; Chip identification
-
- 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
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/563—Multilevel memory reading aspects
- G11C2211/5634—Reference cells
Abstract
一种用于操作包括多个模拟存储器单元的存储器(28)的方法,该方法包括通过向单元写入第一存储值来将数据存储在存储器中。从单元中读取第二存储值,并估计第二存储值的累积分布函数(CDF)。处理所估计的CDF以计算一个或多个阈。使用该一个或多个阈,对单元进行存储器存取操作。
Description
相关申请的交叉引用
本申请要求2007年3月12日提交的第60/894,290号美国临时专利申请、2007年12月27日提交的第61/016,824号美国临时专利申请,和2007年12月28日提交的第61/017,177号美国临时专利申请的优先权,上述文献的公开内容以引用的方式纳入本文。
技术领域
本发明总体上涉及存储装置,具体而言,涉及估计从模拟存储器单元中读取数据时所用的阈的方法和系统。
背景技术
多种类型的存储装置,诸如闪存,使用模拟存储器单元阵列以存储数据。每一模拟存储器单元存储一个模拟值的量,诸如电荷或电压,该模拟值也被称为存储值。该存储值代表了该单元中存储的信息。例如,在闪存中,每个模拟存储器单元贮藏一定量的电荷。可能的模拟值的范围通常被划分为若干区域,每个区域对应于一个或多个数据位值。通过写入对应于所期望的一个或多个位的标称模拟值,数据被写入模拟存储器单元。
被通称为单级单元(Single-Level Cell,SLC)装置的一些存储装置在每个存储器单元中存储单个位的信息,即每个存储器单元可以被编程为承担两个可能的存储状态。通常被称为多级单元(Multi-Level Cell,MLC)的更高密度装置在每个存储器单元中存储两个或两个以上位,即可以被编程为承担两个以上可能的存储状态。
例如,Bez等人于2003年4月在,Proceedings of the IEEE(电气与电子工程师学会会报)(91:4),第489-502页的“Introductionto Flash Memory”中描述了闪存装置,该文献以引用的方式纳入本文。例如,Eitan等人的“Multilevel Flash Cells and their Trade-Offs”,Proceedings of the 1996 IEEE International Electron DevicesMeeting(1996年IEEE国际电子器件会议会报)(IEDM),纽约,第169-172页,描述了多级闪存单元及装置,该文献以引用的方式纳入本文。该论文比较了多种多级闪存单元,诸如共地、DINOR、AND、NOR和NAND单元。
Eitan等人在“Can NORM,a 2-bit,Trapping Storage NVM Cell,Give a Real Challenge to Floating Gate Cells?”,1999International Conference on Solid State Devices and Materials(1999年固态元件及材料国际会议会报)(SSDM),东京,日本,1999年9月21-24日,第522-524页,描述了被叫做氮化物只读存储器(NROM)的另一类模拟存储器单元,该文献以引用的方式纳入本文。Maayan等人在“A 512Mb NROM Flash Data Storage Memory with 8MB/s Data Rate”,Proceedings of the 2002 IEEE InternationalSolid-State Circuits Conference(2002年IEEE国际固态电路会议会报)(ISSCC 2002),圣弗朗西斯科,加利福尼亚,2002年2月3-7日,第100-101页,也描述了NROM单元,该文献以引用的方式纳入本文。其他示例类型的模拟存储器单元是浮栅(FG)单元、铁电RAM(FRAM)单元、磁性RAM(MRAM)单元、电荷俘获闪存(Charge Trap Flash)(CTF)和相变RAM(PRAM,也被称为相变存储器——PCM)单元。例如,Kim和Koh在“Future Memory Technology Including EmergingNew Memories”,Proceedings of the 24th International Conferenceon Microelectronics(第二十四国际届微电子会议会报)(MIEL),尼斯(Nis),塞尔维亚和黑山,2004年5月16-19日,第1卷,第377-384页,描述了FRAM、MRAM和PRAM单元,该文献以引用的方式纳入本文。
读取模拟存储器单元的通常方式是,将单元中存储的模拟值(存储值)与一个或多个被通称为读取阈的阈相比较。在本领域有数个用于确定读取阈值的公知手段。例如,第6,751,766号美国专利——其公开内容以引用的方式纳入本文——描述了这样的方法:其中,存储在存储系统中的数据的品质被估定,并且根据所估定的品质来操作该存储系统。在一些实施方案中,从存储器中读取数据存储值。根据数据存储值所在的预定存储值区间生成数字数据值。存储值区间由分隔点分隔,所述分隔点根据与读取存储值相关联的多个品质指示统计值而更改。
第2005/0013165号美国专利申请公布——其公开内容以引用的方式纳入本文——描述了读取闪存单元的方法。所述单元以以下方式读取:确定所述单元各自的自适应参考电压,并将所述单元的阈电压与其各自的参考电压相比较。自适应参考电压可以通过以下两种方式中的任一种确定:模拟测量所述单元的相邻单元的阈电压,或基于所述单元阈电压与所有单元共有的积分或分数参考电压的比较来初步估计所述单元的阈电压。闪存单元也以以下方式读取:将单元阈电压与积分参考电压相比较,将共享一个位式样的那些单元的阈电压与分数的参考电压相比较,根据上述比较调整参考电压。
第2006/0028875号美国专利申请公布——其公开内容以引用的方式纳入本文——描述了控制多个存储器单元的方法。控制所述单元的方法是,获取所述单元的一个或多个环境参数值,相应地调整所述单元的一个或多个参考电压值。替代性的,可以测量至少部分单元的统计值——其与对应于所述单元的一个控制参数的单个参考参数有关,并相应地调整参考电压值。统计值的例子包括阈电压超过初始下界或初始中值的单元所占的分数。
发明内容
本发明的实施方案提供了用于操作包括多个模拟存储器单元的存储器的方法,包括:
通过向单元写入第一存储值来将数据存储在存储器中;
从单元中读取第二存储值,并估计第二存储值的累积分布函数(CDF);
处理所估计的CDF以计算一个或多个阈;以及
使用一个或多个阈,对所述单元执行存储器存取操作。
在一些实施方案中,估计CDF包括计算一个或多个CDF数据点,以使对应于给定存储值的CDF数据点指示下述项之一:
不超过给定存储值的第二存储值的数目;以及
超过给定存储值的第二存储值的数目。
在一个实施方案中,处理所估计的CDF包括:限定一个模型,其响应输入参数来产生目标CDF,通过将目标CDF拟合到所估计的CDF来适配该模型,并基于所适配的模型来计算阈。在一个已公开的实施方案中,第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,输入参数包括至少一个选自以下参数的参数:
与编程状态之一相关联的第二存储值的子集的分布的拓宽因数;
与该编程状态之一相关联的第二存储值的子集的分布的方差;
与该编程状态之一相关联的第二存储值的子集的分布的相对偏移;
与该编程状态之一相关联的第二存储值的该子集的分布的均值。
在另一个实施方案中,限定所述模型包括预先限定多个目标CDF,并且其中将目标CDF拟合到估计的CDF包括,响应于估计的CDF来从所述多个目标CDF中选择一个预先限定的目标CDF。在另一个实施方案中,第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中与给定编程状态相关联的第二存储值根据所述输入参数子集的已知函数而分布,并且其中适配模型包括估计与给定编程状态之外的编程状态无关的输入参数子集。
在又一个实施方案中,第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中所述模型是基于编程状态中存储器单元第一分布而限定的,其中CDF是基于与第一分布不同的编程状态中存储器单元第二分布而估计的,并且其中适配模型包括修正目标CDF中由第一和第二分布之间的差异造成的错误。在一个实施方案中,存储数据包括将与第一分布有关的信息存储在存储器中,并且其中修正错误包括取得存储信息并响应于所取得的信息来修正错误。
在一些实施方案中,第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中对应于每个编程状态的第二存储值是根据各自的分布来分布,并且其中估计CDF包括根据对应于各编程级的第二存储值的数目来缩放所述分布,并响应于缩放后的分布来估计CDF。
在一个已公开的实施方案中,处理所估计的CDF包括,在所估计的CDF中识别平坦区域,并将至少一个阈定位在该平坦区域内。在另一个实施方案中,CDF在第二存储值的至少部分范围内具有已知形状,其中所估计的CDF相对于所述CDF具有偏移,并且其中处理所估计的CDF包括,计算该偏移并响应于算得的偏移来计算阈。估计CDF可以包括,测量位于第二存储值的部分范围内的一个或多个第二存储值中的CDF的一个或多个值,并基于CDF测量值来确定所述偏移。补充性地或替代性地,计算阈可以包括用计算出的偏移来移动阈。
在另一个实施方案中,第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中第二存储值落入对应于所述编程状态的一组存储值范围内,并且其中估计CDF包括测量存储值范围内的CDF的至少一个值。
在又一个实施方案中,读取第二存储值包括从第一组存储器单元中读取第二存储值,并且其中执行存储器存取操作包括,使用所述一个或多个阈来对不同于第一组存储器单元的第二组存储器单元执行存储器存取操作。在一个实施方案中,存储在所述第一和第二组中的数据具有彼此不同的第一和第二数据值分布,并且该方法包括调整阈以匹配第二数据值分布。在另一个实施方案中,所述方法包括确定第二组中的最优阈位置对第一组中的最优阈位置的依赖性,并调整该阈以根据该依赖性在第二组中执行存储器存取操作。
在一些实施方案中,所述一个或多个阈包括读取阈,并且其中执行存储器存取操作包括,使用该读取阈从所述单元中读取第三存储值,以重建所存储的数据。在一个实施方案中,存储数据包括用错误修正码(ECC)来编码数据,其中读取第三存储值包括解码所述ECC并确定被ECC修正的错误,并且该方法包括响应于被修正错误来调整读取阈。
在另一个实施方案中,对于给定读取阈,确定被修正错误包括:确定由第三存储值落在给定读取阈以下引起的第一错误数目,和由第三存储值落在给定读取阈以上引起的第二错误数目,并且其中调整读取阈包括响应于第一和第二错误数目来调整给定读取阈。读取第三存储值进一步包括消除一个或多个第三存储值中的畸变。
在一些实施方案中,阈包括了校验阈,并且其中执行存储器存取操作包括使用校验阈来校验被写入所述单元的第一存储值。在一个公开的实施方案中,存储数据包括用错误修正码(ECC)来编码数据,其中一个或多个阈包括多组读取阈,并且其中执行存储器存取操作包括:使用相应的多组读取阈从所述单元中读取多组第三存储值,响应于多组第三存储值来计算软解码度规,并使用软解码度规来解码ECC,以重建数据。
在另一个实施方案中,每个存储器单元存储多个数据位,其中存储数据包括将多个存储页存储在存储器单元的相应的多个数据位中,并且其中执行存储器存取操作包括使用阈的子集来读取每个存储页。
根据本发明的一个实施方案,另外提供了一种数据存储设备,包括:
接口,其可操作地与包括多个模拟存储器单元的存储器通信;以及
处理器,其连接至所述接口,并被耦合以:通过向单元中写入第一存储值来将数据存储在存储器中;从单元中读取第二存储值;估计第二存储值的累积分布函数(CDF);处理所估计的CDF以计算一个或多个阈;以及使用所述一个或多个阈来对所述单元执行存储器存取操作。
根据本发明的一个实施方案,还提供了一种数据存储设备,包括:
存储器,该存储器包括多个模拟存储器单元;以及
处理器,该处理器连接至所述存储器,并被结合为:通过向单元中写入第一存储值来向存储器中存储数据,从单元中读取第二存储值,估计第二存储值的累积分布函数(CDF),处理所估计的CDF以计算一个或多个阈,以及使用一个或多个阈来对所述单元执行存储器存取操作。
从以下对实施方案结合附图的详细说明中,本发明将得到更充分的理解,在附图中:
附图说明
图1是根据本发明的一个实施方案,示出了一组模拟存储器单元中的阈电压的分布和累积分布函数(CDF)的曲线图;
图2是根据本发明的一个实施方案,示意性地图示了一个存储系统的框图;
图3是根据本发明的一个实施方案,示意性地图示了一个存储器单元阵列的图解;
图4是根据本发明的一个实施方案,示意性地图示了一种数据存储和取得方法的流程图;
图5是根据本发明的一个实施方案,示意性地图示了一种调整读取阈的方法的流程图;
图6是根据本发明的一个替代性实施方案,示意性地图示了一种调整读取阈的方法的图解。
图7-11是根据本发明的一个替代性实施方案,示意性地图示了调整读取阈的方法的流程图。
图12是根据本发明的一个实施方案,示出了用于图11的方法的阈电压分布以及读取阈的曲线图。
具体实施方式
概览
用于从模拟存储器单元中取得数据的读取阈的最优值经常因单元组而异,在存储器的寿命中也有变化。读取阈的精确定位对于维持低的读取错误概率是至关重要的,尤其是在高密度多级单元中。
本发明的实施方案提供了改良的方法和系统,其自适应地调整用于读取模拟存储器单元的读取阈。根据这里描述的方法和系统,存储信号处理器(MSP)存储和取得模拟存储器单元阵列中的数据。MSP估计了存储在所述单元中的存储值的累积分布函数(CDF)。CDF是这样一种函数:对于任何给定存储值,CDF函数值表示的是具有小于或等于给定存储值的存储值的单元的数目(以绝对或相对的方式表示)。MSP基于所估计的CDF来确定读取阈的最优位置。MSP调整读取阈以使具有最优位置,并使用调整后的阈从所述单元中读取数据。
大体上,基于CDF来适配阈优于基于存储值分布自身来适配阈,因为较之概率分布函数(PDF),CDF通常能够通过少得多的数据点估计出来。
在以下描述的一些实施方案中,CDF是基于与不同编程级(programming level)相关联的单元的数目而被估计出来的。在其他实施方案中,MSP识别分隔不同编程级的边界区域,并将读取阈定位在边界区域内。在一些方法中,MSP具有与针对给定编程级的存储值分布有关的全部或部分先验信息,MSP使用这些信息来计算读取阈。
被公开的方法中一些是基于模型的。在这些方法中,MSP维持一个模型,其基于若干输入参数产生模型化CDF(也被称为目标CDF)。MSP适配模型参数,以使模型化CDF拟合到所估计的(所测得的)CDF,从而从模型中得出读取阈。在一个替代性方案中,所述模型包括预先限定的一组目标CDF,MSP选择最适合于所测得的CDF的目标CDF。在其他方法中,MSP使用错误修正码(ECC)为存储数据编码,并在取得数据时解码该ECC。MSP使用与在ECC解码过程中被修正的错误有关的信息,以调整读取阈。在一些实施方案中,用于读取特定的一组单元(例如,一个存储页)的读取阈,是基于对该同一组执行的CDF测量而调整的。在一些替代性实施方案中,CDF测量是对一组单元执行的,并被用来调整另一组的读取阈。
因为这里描述的方法和系统持续地跟踪读取阈的最优位置,所以所实现的读取性能在不同的单元组内、在存储装置的寿命中以及在各种类型的畸变和干扰下保持最优。
阈电压分布和累积分布函数(CDF)
模拟存储器单元被编程为,通过将存储值(例如电压或电流)写入单元来存储数据。虽然用于编程所述单元的目标存储值通常选自有限的一组代表数据的标称值,但存储在单元中的实际存储值可能偏离标称值。这些偏差可能由多种因素造成,诸如:编程处理中的不精确、由装置老化造成的漂移、由此前的编程和擦除周期造成的单元磨损、由被施加到该阵列中其他单元的存储器操作引起的干扰噪声、和/或来自其他单元的交叉耦合干扰。因此,单元的存储值通常具有特定的统计分布,该统计分布可能因单元组而异,并/或在存储器单元的寿命中有变化。
(虽然以下的描述主要涉及闪存单元的阈电压,但该选择纯粹是为了概念的清晰。这里描述的方法和系统可以用于任何其他类型的模拟存储器单元中所用的任何其他类型的存储值。)
图1是根据本发明的一个实施方案,示出了一组模拟存储器单元中的阈电压的分布(上图)和累积分布函数(CDF,下图)的曲线图。在本实施例中,所述单元包括四级单元,每个单元存储两个数据位。曲线20A...20D示出了该组单元中的阈电压的分布。每条曲线对应于被编程至特定编程级或状态的单元子集。曲线20A...20D分别示出了被编程为具有目标存储值22A...22D的单元中的阈电压分布。在本实施例中,分布20A对应于擦除级。
为了从所述单元中读取数据,将单元的存储值与读取阈相比较。在本实施例中,使用三个读取阈TH1...TH3来区分所述四个级。
曲线21示出了该组单元中的阈电压的累积分布函数(CDF)。对于横轴上的给定阈电压,该CDF给出了其阈电压不超过给定阈电压的单元的相对数目。因此,该CDF在电压轴的下缘处为零,且单调增大直至达到电压轴上缘处的值“1”。
在图1的实施例中,同样数目的单元被编程到四级中的每一级。因此,CDF在第一和第二级之间达到1/4,在第二和第三级之间达到1/2,在第三和第四级之间达到3/4。也应注意到,CDF的斜率在分布20A...20D的中间最陡,而在分布20A...20D之间边界区域基本是平的。以下描述的一些方法利用这些特性来确定读取阈的最优位置(值)。
系统说明
图2是根据本发明的一个实施方案,示意性地图示了存储系统23的框图。系统23可以用于多种主机系统和装置,例如计算装置、蜂窝电话或其他通讯终端、可移动存储模块(“U盘(disk-on-key)”装置)、数码相机、音乐及其他媒体播放器、和/或任何其他存储和取得数据的系统或装置。
系统23包括存储装置24,其将数据存储在存储器单元阵列28中。该存储器阵列包括多个模拟存储器单元32。在本专利申请的上下文和权利要求中,术语“模拟存储器单元”用于描述任何保存了物理参数——诸如电压或电荷——的连续模拟值的存储器单元。
阵列28可以包括任何种类的模拟存储器单元,例如,NAND、NOR和CTF闪存单元、PCM、NROM、FRAM、MRAM和DRAM单元。存储于单元中的电荷级和/或被写入和读出所述单元的模拟电压或电流在这里被统称为模拟值或存储值。
系统23通过编程模拟存储器单元使承担各自的存储状态,来向该单元中存储数据。存储状态选自有限的一组可能状态,每个状态对应于特定标称模拟值。例如,2位/单元的MLC可以被编程为承担四个可能的存储状态中的一个——通过向该单元中写入四个可能标称模拟值中的一个。
用于存储于存储装置24中的数据被提供给该装置,并被缓存于数据缓冲器36中。然后借助于读写(R/W)单元40,该数据被转化成模拟电压并被写入存储器单元32中,读/写(R/W)单元40的功能将在下面更详细地描述。当从阵列28中读出数据时,R/W单元40将电荷——从而将存储器单元32的模拟电压——转换为具有一位或多位分辨率的数字采样。该采样被缓存在缓冲器36中。存储装置24的操作和时序由控制逻辑单元48控制。
将数据存入存储装置24中以及从中取得数据是通过存储信号处理器(MSP)52进行的。MSP 52包括信号处理部件60,其处理被写入装置24和从该装置读取的数据。在一些实施方案中,部件60使用错误修正码(ECC)对有待被写入存储器单元的数据进行编码,以及解码所取得的数据的ECC。部件60可以使用Bose-Chaudhuri-Hocquenghem(BCH)码、低密度奇偶校验(LDPC)码,或本领域已知的其他合适类型的ECC。具体而言,MSP52执行一些用于自适应地调整用于从单元32中读取数据的读取阈的位置的方法,下面将详细描述该方法。
MSP 52包括数据缓冲器72,部件60使用该缓冲器来存储数据,并且部件60用于与存储装置24相接口。MSP 52也包括输入/输出(I/O)缓冲器56,其在MSP和主机系统之间形成接口。控制器76管理MSP 52的操作和时序。信号处理部件60和控制器76以硬件实现。替代性地,部件60和/或控制器76可以包括运行合适软件的微处理器,或硬件和软件元件的组合。
图2的配置是一个示例性系统配置,其目的纯粹是为了概念的清晰。也可以使用任何其他合适的配置。为了清晰,对于理解本发明的原理并不必要的元件——诸如各种接口、寻址电路、时序和排序电路、以及调试电路——都已被从图中省略。
在图2所示的示例性系统配置中,存储装置24和MSP 52是作为两个分离的集成电路(IC)而实现的。但是,在一个替代性实施方案中,存储装置和MSP可以被集成在片上系统(SoC)或单个多芯片封装(MCP)中的、分离的半导体裸片(die)上。进一步替代性地,一些或全部MSP电路可以位于布置有存储阵列28的同一个裸片上。进一步替代性地,MSP 52的一些或所有功能可以以软件实现,并通过该主机系统的处理器或其他元件来执行。在一些实现中,单个MSP 52可以被连接到多个存储装置24。
在典型的写入操作中,待被写入存储装置24的数据接收自主机,并被缓存在I/O缓冲器56中。该数据通过数据缓冲器72传递至存储装置24。该数据在被传递至存储装置以供编程之前,可以在MSP 52中被预处理。例如,部件60可以使用ECC来编码该数据、添加某些数据以供内部使用、和/或使该数据混杂(scramble)。在装置24中,该数据被临时存储在缓冲器36中。R/W部件40将数据转换为标称模拟值,并将该标称模拟值写入阵列28的适当单元32。
在典型的读取操作中,R/W部件40从适当的存储器单元32中读取模拟值(存储值),并通过将该读取存储值与读取阈比较来将该值转换为软数字采样(soft digital sample)。所述采样被缓存在缓冲器36中,并被传递至MSP 52的缓冲器72。在一些实施方案中,MSP 52的部件60将所述采样转换为数据位,并将重建的数据作为输出提供。
图3是根据本发明的一个实施方案,示意性的图示了存储器单元阵列28的图解。虽然图3涉及被连接成特定阵列配置的闪存单元,但本发明的原理也可以应用于其他类型的存储器单元和其他阵列配置。在上面的背景部分中引用的参考文献描述了一些示例单元类型和阵列配置。
阵列28的存储器单元32被排列在具有多个行和列的栅格中。每个单元32包括浮栅金属氧化物半导体(MOS)晶体管。可以通过向晶体管的栅极、源极和漏极施加适当的电压水平,将特定数目的电荷(电子或空穴)存储在特定单元中。存储在单元中的值可以通过测量该单元的阈电压来读取,该阈电压被限定为为使晶体管导电而需要施加至晶体管栅极的最小电压。读取阈电压指示存储在单元中的电荷。
在图3的示例性配置中,每行中的晶体管的栅极由字线(wordline)80连接。每列中的晶体管的源极由位线(bit line)84连接。在一些实施方案中——诸如在一些NOR单元装置中——源极直接连接到位线。在一些替代性实施方案中——诸如在一些NAND单元装置中——位线连接至浮栅单元串。
存储器单元阵列通常被划分为多个页,即被同时编程和读取的存储器单元组。页有时被再划分为区(sector)。在一些实施方案中,每页包括阵列的一整行。在一些替代性实施方案中,每行(字线)可以被划分为两页或更多页。例如,在一些装置中,每行被划分为两页,其中一页包括奇数单元而另一页包括偶数单元。在一个典型实现中,每单元两位存储装置(two-bit-per-cell memory device)每行可以有4页,每单元三位存储装置每行可以有6页,而每单元四位存储装置每行可以有8页。
单元的擦除通常在含有多个页的块中执行。典型的存储装置可以包括数千个擦除块。在典型的每单元两位MLC装置中,每个擦除块在32字线的数量级,每个字线包括数千个单元。这样的装置的每个字线通常被分割为4页(奇数/偶数级单元、单元的最低/最高有效位)。对于每个擦除块有32字线的每单元三位装置,每个擦除块有192页;对于每单元四位装置,每个块有256页。替代性地,也可以使用其他块尺寸和配置。
一些存储装置包括两个或多个分离的存储器单元阵列,它们常常被称为平面。因为每个平面在连续写入操作之间具有特定的“忙”时段,所以可以交替地将数据写入不同的平面,以提高编程速度。
读取阈估计方法
用于读取存储器单元的读取阈的位置对读取质量,即解码错误概率,具有可观的影响。读取阈应相对于阈电压分布被适当地定位,以使属于特定水平的读取存储值落在读取阈的错误侧的概率最小化。
因为存储器单元的阈电压分布在存储器单元的寿命中有变化,所以持续地跟踪这些变化并据此调整阈位置是重要的。在具有大数目编程级(例如八级或十六级MLC)的单元中,读取阈的自适应设置尤其重要。在这样的单元中,不同的级紧密的堆叠在电压轴上,而电压分布常常彼此重叠,这产生了特定量的老化和干扰。因此,这些单元中的解码错误概率对非优化阈位置高度敏感。
本文中描述的方法和系统基于存储值的累积分布函数(CDF)来估计和调整读取阈的位置。阈估计和调整可以在任何时间以任何频率进行,诸如在生产中、在存储装置的工作寿命中、以周期性间隔、在通电后、作为与存储器存取操作并行的后台低优先级任务、在读取数据后、在写入数据后、作为对特定事件或情况的响应,或根据任何其他合适的逻辑。
图4是根据本发明的一个实施方案,示意性地图示了一种数据存储和取得方法的流程图。以下描述涉及单个页的存储器单元。但是,本方法可以应用至任何其他适合的单元组。本方法也可以通过使用在一页中获得的测量值来调整另一页的阈,以跨页方式使用,如下所述。
本方法始于数据存储步骤90:MSP 52通过以适当的存储值编程所述单元,将数据存储在阵列28中的一页存储器单元32中。稍后,诸如响应于主机命令,请求MSP从存储器单元中取得数据。数据取得可以在任何时间被请求,例如,数据被存储之后的数秒、数小时、数天甚至数年。
为了以高精确度取得数据,MSP对将被用来读取所述单元的读取阈的位置进行调整。在读取步骤94,MSP从存储器单元中读取存储值(在本实施例中,是阈电压)。通常,MSP在单个读取操作中从整页读取存储值。读取操作将所述页中的所述单元的存储值与特定读取阈相比较,并产生与存储值是小于还是大于读取阈有关的指示(硬判决)。
在CDF估计步骤98,MSP估计所述页的阈电压的CDF。对于给定的读取阈V,MSP确定所述页中阈电压小于所述阈的单元的数目N。<N,V>对在所述页的阈电压的CDF上形成单个数据点。根据所测得的CDF数据点的数目,MSP可以以各种精确度或分辨率水平来估计CDF。换言之,MSP可以通过以不同阈执行大量读取操作来改进CDF估计,反之亦然。
虽然本文中描述的实施方案主要涉及CDF的估计、存储和处理,但本文中描述的本方法和系统也可以通过处理反CDF(inverse CDF),或者说CDF-1,等价地实现。在本专利申请的上下文和权利要求中,任何对估计、测量、存储或其他形式的CDF处理的指代,都意在也指代等价的CDF-1处理配置。通常但不必然的是,在存储器的使用方面,处理CDF函数比处理CDF-1函数更有效率。另一方面,在计算复杂度方面,处理CDF-1函数常常更有效率。因此,可以基于可用资源在处理CDF函数和处理CDF-1函数之间作出选择。
在阈调整步骤102,MSP基于所估计的CDF来调节读取阈的位置。在数据取得步骤106,MSP相应地设置读取阈,并使用调整后的阈来取得数据。
在一些实施方案中,MSP根据从给定页读取的存储值的子集(例如,根据页开始处的值)来估计CDF,以减少读取时间。
在一些MLC装置中,多个存储页被映射到一组单元,以使每一页被映射到一个特定的位。例如,在八级(3位/单元)装置中,某一特定页可以被存储在单元的最低有效位(LSB)中,另一页可以被存储在单元的中间有效位(CSB)中,又一页可以被存储在单元的最高有效位(MSB)中。
例如,八个编程级L1...L8被映射到数据位组合“111”“011”“001”“101”“100”“000”“010”和“110”——以存储值升序的方式。该映射具有“灰色编码”特性,其中相邻的编程级之间仅有一位有差异。应意识到,在这一情况下,LSB可以使用位于级L4和L5之间的单个读取阈来读取,CSB可以使用位于级L2和L3之间以及L6和L7之间的两个读取阈来读取,MSB可以使用位于级L1/L2、L3/L4、L5/L6和L7/L8之间的四个读取阈来读取。在一些实施方案中,MSP调整用于读取存储在不同MLC位中的数据的读取阈中的一些或全部。
在MLC配置中,MSP在给定读取操作中可以获得一个以上的CDF数据点。例如,在上述八级配置中,读取LSB页获得一个CDF数据点,读取CSB页获得两个附加数据点,读取MSB页获得四个附加数据点。在三个读取操作中,总共获得七个CDF数据点。
下面的图5-11示出了用于基于所估计的CDF来调整读取阈的若干示例性方法。每个方法作出特定假设,并具有特定优势和局限,下面将予以讨论。
使用每个编程级的单元数而进行的CDF估计
在一些情况中,当将要读取单元时,与每个编程级相关联的单元的相对数目是已知的。例如,有时可以假定每一级具有近似相同的单元数。这种情况保持下去,例如在数据被混杂的情况下。在其他情况下,与每一级相关联的单元的数目不同,但是它们之间的绝对数目或比例是已知的。例如,指示属于每一级的页中的单元数的信息可以连同数据一起被存储在该页中,或存储在该存储器的其他区域。
在一些实施方案中,MSP基于已知的与每一级相关联的单元的数目来估计CDF。继而,MSP可以使用本文描述的任何技术,基于所估计的CDF来调整读取阈。
图5是根据本发明的实施方案,示意性地图示了用于估计CDF和调整读取阈的方法。该方法假定了存储值分布的大体形状(存储值的PDF)是已知的。该方法始于缩放步骤110:基于与所述级相关联的单元的相对数目,用MSP来缩放每个编程级的PDF的大小。该步骤的输出是一组PDF,每个PDF的相对大小和与所述级相关联的单元的数目成比例。在一些情况下,每一级的单元数是未知的,但给定的一组级中的单元的总数是已知的。在一些情况下,MSP可以假定已知的单元总数均匀分布在所述组的各级之间。
在CDF估计步骤114,MSP对PDF组进行积分以产生所估计的CDF。在阈调整步骤118,MSP基于所估计的CDF来调整读取阈。MSP可以使用本文描述的任何技术来调整读取阈。
在一些实施方案中,在每一级的单元数未知的情况下,MSP可以基于与一组级相关联的单元的数目来估计CDF。例如,当不同页存储在不同MLC位中时,MSP可以记录每页中的“1”数据位的数目,而无需组合来自不同页的数据。与每一页相关联的数目可以独立地生成。
该特征可以被用于本文中描述的其他基于CDF的方法。假定各单元均匀分布在编程级之间(例如,在数据被混杂的情况下),那么无需关乎个体页的显式统计值就可以估计CDF。当与每个编程级(或级组)相关联的单元的数目已知时,CDF估计可以被改进,如下所述。
针对已知存储值分布的阈调整
在一些情况中,给定编程级中的存储值分布是已知的,但其在存储值轴上的绝对位置是未知的。例如,可能预先知道特定级的存储值分布是高斯分布并具有特定方差,但该分布的均值是未知的。这一情况发生在,例如,当每一级具有特定已知分布,但具有因老化而导致的未知漂移时。为了正确定位读取阈,需要确定存储值分布的绝对位置。
图6是根据本发明的一个替代性实施方案,示意性地图示了一种用于调整读取阈的方法的图解。图6所示的方法假定存储值分布的形状是已知的(因此,至少在存储值的部分范围内,CDF的形状是已知的),但其相对于阈的绝对位置是未知的。为了估计CDF的绝对位置,MSP在被表示为THA和THB的两个值处测量两个CDF数据点(如上所述的<N,V>对)。这两个值处的CDF值之差由ΔCDF=CDF(THB)-CDF(THA)给出。对于大部分分布,因为CDF的形状是已知的,所以ΔCDF的值唯一地确定了CDF在存储值轴上的绝对位置。
MSP由已知的CDF形状和两个CDF数据点来确定CDF的绝对位置(例如,存储值分布的均值)。继而,MSP根据已知的CDF绝对位置来调整读取阈。
上述处理可以针对不同的编程级重复执行。因此,对于n级单元,可以通过执行2n次读取操作来设置所有阈,即,使用2n个CDF数据点。(在一些情况下,较小数目的CDF数据点就足够了。例如,当其中一个级是擦除级时,就不必精确地估计其位置。在这样的情况下,常常只需要2n-2次读取操作就足够了。替代性地,MSP可以通过执行2n-1次读取操作来校验出,低于TH1的位的数目的是总数目的1/n。)
进一步替代性地,假定与不同级相关联的单元的数目是已知的,则MSP可以使用单次读取操作来确定存储值分布的绝对位置。MSP可以在给定编程级的相关区域中获得单个的CDF数据点,并基于所获取的数据点以及基于已知的与各个编程级相关联的单元的数目,来确定级分布的绝对位置。以附加的读取操作为代价,多个CDF数据点的使用降低了该估计对与每一级相关联的单元的数目的敏感度。
上述方法也可以用在与每个编程级相关联的单元的数目未知时。例如,在数据被混杂的情况下,MSP可以假定单元均匀分布在不同的编程级之间。
通过定位编程级间之间的边界来进行阈调整
在一些情况下,不同编程级的存储值分布被明确限定的边界区域分隔开。存储值落入边界区域的单元的数目通常非常少。因此,存储值的CDF在这些区域通常是平坦的。边界区域的宽度和绝对位置可以随时间改变,例如由于存储值分布的漂移和拓宽。在一些实施方案中,MSP自动确定编程级之间的边界区域的位置,并将读取阈定位在这些区域中。
图7是根据本发明的另一实施方案,示意性地图示了一种调整读取阈的方法的流程图。与上述图4的步骤98类似,本方法始于CDF估计步骤124:MSP估计存储值的CDF。在边界检测步骤128,MSP通过在所估计的CDF中检测平坦区域来确定相邻编程级之间的边界区域。(在一些情况下,CDF在边界区域中并不完全平坦,而是存在平缓的斜率。因此术语“平坦区域”也指代与其他区域相比斜率相对平坦的区域。)。在阈定位步骤132,MSP将读取阈定位在所检测的边界区域内。
通常,MSP将区分一对相邻编程级的单个读取阈定位在分隔所述两级的边界区域内。通过选择落入CDF的相对平坦区域的值,MSP可以从一组预定的阈值中选择读取阈值。
当存储值分布的形状是已知的(即,至少在存储值的某个区域内,CDF的形状是已知的)时,MSP可以减少上述CDF估计步骤124中的读取操作的次数。例如,对于给定边界区域,MSP可以测量落在略微高于边界区域处的单个CDF数据点,并从已知的CDF形状得出边界区域的上缘。使用落在略微低于边界区域处的单个CDF,可以类似地确定边界区域的下缘。因此,当CDF的形状已知时,MSP可以仅使用单个读取操作(单个CDF数据点)来确定特定边界区域的边缘。
基于模型的阈调整
在一些实施方案中,MSP限定并维持一个数学模型,其基于一个或多个输入参数来产生目标CDF。MSP通过将该模型产生的目标CDF拟合到从实际读取操作中得出的所估计的CDF,来计算读取阈。特别地,MSP可以存储预先确定的一组目标CDF,并选择最匹配所估计的(所测得的)CDF的目标CDF。在此语境中,这组目标CDF在本文中也被称作一个模型。
图8是根据本发明的另一实施方案,示意性地图示了一种用于调整读取阈的方法的流程图。图8的方法通常被用在CDF的性质在先未知的情况下。本方法始于模型限定步骤136:MSP限定一个产生目标CDF的模型,并初始化该模型参数。
在一些实施方案中,所述模型接受不同级的存储值分布的各种参数作为输入。这些输入参数可以包括,例如,每个编程级的偏移量(或绝对位置)和/或缩放因数(收缩/拓宽因数)。这些输入参数可以被初始地设置到最佳当前已知值或任何其他合适的初始值。在一个替代性实施方案中,该模型包括一组若干个CDF(称为目标CDF),诸如在存储器的寿命的各种阶段中典型的CDF。这类CDF可以反映出,例如,所述单元经历的编程/擦除周期的不同数目、单元老化的不同程度、或不同的温度条件。
进一步替代性地,目标CDF可以反映出单元经受的不同类型的畸变。示例性的畸变估计方法在例如以下文献中被描述:2007年5月10日提交的题为“Distortion Estimation and Cancellation in MemoryDevice”的PCT申请WO2007/132453,和2007年8月27日提交的题为“Estimation of Non-Linear Distortion in Memory Devices”PCT申请PCT/IL2007/001059,这些文献的公开内容以引用的方式纳入本文。
在CDF估计步骤140,MSP通过测量一个或多个CDF数据点来估计存储值的实际CDF。在拟合步骤144,MSP将所述模型拟合到所估计的(所测得的)CDF。通常,MSP意在估计输入参数值(例如不同编程级的偏移量和缩放因数),该模型针对该输入参数值产生最拟合所估计的CDF的目标CDF。在一些实施方案中,MSP可以基于与不同编程级相关联的单元的数目来调整该模型,如上所述。
例如,在八级MLC中,所述模型可以包括针对七个非擦除级中的每一级的偏移量和缩放因数,即,共十四个参数。替代性地,较简单的模型可以通过假定所有级具有相同的偏移量和/或相同的缩放因数来使用较少的一组输入参数。进一步替代性地,可以使用具有任何适合的输入参数组的任何适合的模型。例如,在不同级的偏移和/或拓宽因数之间可以存在特定已知依赖性(例如,特定级的偏移可能与该级的中间存储值成比例)。在这种情况下,MSP可以使用更少的参数和更少的读取操作。当该模型包括预先确定的一组目标CDF时,MSP选择最匹配所估计的CDF的目标CDF。
MSP可以如本领域公知地使用最大似然(ML)准则,或使用任何其他合适的拟合准则或度规,使目标CDF拟合到所估计的CDF。
在阈调整步骤148,MSP基于拟合结果来调整读取阈。例如,所述模型可以产生与目标CDF相匹配的读取阈值。当该模型包括一组目标CDF时,对应的一组最优读取阈可以随每个目标CDF而被存储。替代性地,MSP可以使用本文中描述的任何技术,基于所估计的CDF来设置读取阈。继而该方法循环回到上面的步骤140,并且MSP继续估计实际存储值CDF,并相应地拟合该模型。
上述阈调整处理的精确度取决于步骤140中测得的所估计的CDF的精确度,还取决于模型的精确度。CDF估计精确度大体上取决于所测得的CDF数据点的数目和质量——其随模型拟合迭代的数目而增长。在一些情况下,在试图适配模型之前获得附加的CDF数据点是有益的。因此,在图8的方法的每一次迭代中,MSP可以决定是否尝试并将模型参数拟合到所估计的CDF,或获取附加CDF数据点并提高CDF估计精确度。
进一步替代性地,MSP可以同时执行步骤140和144。例如,MSP可以对之前获取的CDF数据点执行模型拟合计算,同时获取附加数据点。
图9是根据本发明的替代性实施方案,示意性的图示了另一种用于调整读取阈的基于模型的方法的流程图。图9的方法假定每个编程级的分布是已知的,并且是由有限数目的参数限定的。例如,在一些情况下,已知每一级中的存储值都具有高斯分布,其可以使用两个参数——分布的均值和方差——来描述。
本方法始于级-特设(1evel-specific)测量步骤156:MSP分立地针对每个编程级测量CDF数据点。通常,针对每一级测得的CDF数据点都符合用于表示已知分布的参数的数目。例如,当每一级具有高斯分布时,MSP针对每一级测量两个CDF数据点。继而,在级-特设参数估计步骤160,MSP估计每一级的分布参数。
在已估计不同编程级的分布参数之后,MSP可以基于已知CDF来调整读取阈,如上所述。
在一些分布参数已知的情况下,和/或在一些分布参数之间的关系可以被假定的情况下,可以减少被测CDF数据点的数目。例如,当级分布是方差已知而仅偏移量未知的高斯分布时,MSP可以针对每一级仅使用单个CDF数据点来调整阈。例如当所有级被假定为具有同样偏移量时,也可以减少数据点的数目。通常,CDF数据点的数目可以被减少至独立参数的数目。
当执行图8和图9的方法时,MSP可以使用不同方法和准则来确定测量哪个CDF数据点。特别地,在测量位于编程级间的边界中的CDF数据点和测量位于级内的数据点之间,存在一个权衡。
一方面,较之位于编程级间边界区域中的数据点,位于编程级内的CDF区域(位于编程级内的CDF数据点)常常对模型的精确度极有价值。另一方面,位于级间边界中的CDF数据点可以被再用于从单元中取得数据,而编程级内的数据点通常仅能用于模型拟合。MSP可以测量级分布内的CDF数据点、边界区域中的CDF数据点,或者可以测量上述两种数据点的组合。
针对CDF中未知偏移的补偿
在一些情况中,实际CDF在先已知,除了未知偏移以外。这种情况,例如,因温度变化而发生,或因老化效应在所有级中导致相近的偏移而发生。
图10是根据本发明的另一实施方案,示意性地图示了一种用于调整读取阈的方法的流程图。图10的方法假定CDF是已知的,除了未知偏移以外。本方法也可以被用在存在其他未知因素、但偏移是主导因素的情况下。例如,当CDF同时经受偏移和缩放时,对于小的偏移值,缩放有时可以被忽略。
本方法始于CDF测量步骤168:MSP测量一个或多个CDF数据点。在偏移估计步骤172,MSP从所测得的数据点来估计实际CDF的偏移。例如,MSP可以将所测得的CDF数据点与已知CDF的参考版本相比较,并从该比较中得出偏移值。
对于特定所测得的CDF数据点<N,V>,MSP可以在参考CDF中确定会产生相同的N值的参考电压VREF。所述偏移量可以被估计为V-VREF。在一些实施方案中,MSP可以求得多个CDF数据点的所算得的偏移的平均值。
在阈调整步骤176,MSP基于所估计的偏移来调整读取阈。例如,当参考CDF具有对应的一组最优阈(称为参考阈)时,MSP可以通过从每个参考阈中减去所估计的偏移来计算调整阈。
图10的方法假定,与每一级相关联的单元的相对数目在所测得的CDF和参考CDF中是相同的。然而,在实践中不总是保持这种情况。偏离这种情况将导致偏移估计不精确,从而导致读取阈位置不精确。
所述偏差可以被修正,例如,通过当单元被编程时对单元值小于给定阈的单元的数目进行存储。该所存储的数目被表示为NREC。当读取所述单元时,MSP可以使用NREC来调整读取阈,以考虑到每一级的单元的数目差异。
MSP可以通过计算VCORR=V+CDF-1(N)-CDF-1(N+NREF-NREC)来修正任何读取值(即,所测得的CDF数据点<N,V>中的任何值V),其中VCORR表示已修正值,V表示未修正值,NREF表示参考CDF中值小于VCDF的单元的数目。所测得的CDF数据点<N,V>通常在靠近参考CDF的数据点的位置上选取。上述CDF修正技术也可以用于本文中所述的任何其他CDF估计方法。
替代性地,MSP可以使用其他任何合适的技术,来修正由与每个编程级相关联的单元的数目的偏差引起的错误。例如,NREC可以仅在单元的一个子集上计算。通常,使用上述方法修正特定读取阈包括:使用所有级的、低于所讨论阈的NREC值。在上述图1的实施例中,修正阈TH3使用最初三级的NREC值。在不同页被使用灰色编码映射而映射到不同MCL位的MCL装置中,NREC值可以指代与不同存储页相关联的单元的数目,如上所述。
大体上,上述基于模型的方法可以基于数据值的特定分布来限定模型。CDF在其上被估计的那组存储器单元可以具有数据值的不同分布。在一些情况下,为其而调整阀的那组存储器单元可以不同于在其上进行CDF估计的那组存储器单元,并可以具有数据值的另一种分布。MSP可以使用与实际分布有关的信息来修正由不同数据值分布引起的偏差。
在不同存储页被使用灰色映射而映射到不同MCL位的MLC装置中,MSP可以分立地估计每个读取阈,并在每一阶段处理一个阈。但是,替代性地,MSP可以使用常用于此类存储装置的标准读取命令。例如,许多装置在单个命令中用两个阈读取具指定CSB页。在这种情况下,MSP可以计算CDF差值,即存储值落在两个读取阈之间的单元的数目。如果所有级都经受了相近的偏移,那么CDF差值将基本不变。但是,如果不同级具有不同的偏移,那么CDF差值可以被用来估计一个阈相对于另一个阈的相对偏移。在已处理过LSB页之后,即已得到一个阈的绝对偏移之后,MSP可以估计其他阈的绝对偏移。使用该技术,可以提高CDF估计精确度,而无需存储个体级上的“1”位的数目。
ECC-辅助阈调整
在一些实施方案中,MSP在将数据存储在存储器单元中之前,使用错误修正码(ECC)来编码数据。当从单元中取得数据时,MSP解码ECC以修正读取错误。当特定单元的存储值落在阈的错误侧——例如落入对应于相邻编程级的存储值区间——时,读取错误发生。
对于被ECC修正的给定读取错误,MSP可以确定该错误的方向,即,在应用ECC修正之前读取存储值错误地与其关联的编程级。MSP可以使用与被修正的错误的方向有关的信息来调整读取阈。
例如,考虑区分被表示为L1和L2的两个相邻编程级的读取阈。当该阈被适当地定位时,预计围绕该阈的两个方向上的错误的数目(即,即使该单元被编程为级L2,仍落入级L1的读取值的数目,以及即使该单元被编程为级L1,仍落入级L2的读取值的数目)相近。不同方向的被修正错误的数目的不对称性可以指示非最优阈位置。例如,如果即使该单元被编程为级L2,仍落入级L1的读取值的数目显著大于对立方向上的错误的数目,那么阈很可能应被向级L1移动。
图11是根据本发明的一个实施方案,示意性地图示了一种用于调整读取阈的方法的流程图。本方法始于解码步骤180:MSP从单元中取得ECC-编码数据,并解码该ECC。在错误分类步骤184,MSP将被ECC修正的错误分类到不同的方向。MSP计数每一类中的错误的数目。例如,对于被表示为L1和L2的一对级,MSP计数从L1指向L2的被修正错误的数目以及从L2指向L1的被修正错误的数目。当级L1对应于“1”数据位且级L2对应于“0”数据位时,从L1指向L2的错误包括ECC将“0”修正为“1”的错误,而从L2指向L1的错误包括ECC将“1”修正为“0”的错误。
(在不同页被使用灰色编码映射而映射到不同MCL位的MCL装置中,MSP通常使用从低序号页(lower-order page)中读取的数据来识别给定页中的错误。MSP使用从低序号页中读取的数据来识别对应于给定级对的错误,和/或确定应基于这类错误而加以调整的读取阈。替代性地,MSP可以假定所有的阈都经受相同量的偏移。)
在阈调整步骤188,MSP基于不同方向的被修正错误的数目来调整读取阈。通常,每一级的分布(或CDF)是已知的,并且MSP在计算阈调整时将已知分布考虑进来。
图12根据本发明的一个实施方案,示出了用于图11的方法的阈电压分布以及读取阈的曲线图。在本实施例中,标绘图190A和190B分别示出了编程级L1和L2的存储值分布。所述两个分布被假定为具有已知均值(表示为η1和η2)和方差(表示为σ1和σ2)的高斯分布。
最初,电流读取阈194在两级之间进行区分。当使用阈194时,从级L1指向级L2的被修正错误的数目由区域198A指示。在对立方向上,即从级L2指向级L1的被修正错误的数目由区域198B指示。如图所示,区域198B的面积显著大于区域198A的面积。因此,阈194应被向级L1移动。被修正读取阈200被定位在最优值,其平衡了两个方向上的被修正错误的数目。
对于高斯分布,η1和η2可以通过下式来估计:
其中t表示阈194的值,″1″→″0″表示ECC解码器从“1”变到“0”的位数。″0″→″1″表示解码器从“0”变到“1”的位数。total″1″表示ECC修正之后“1”位的总量,total″0″表示ECC修正之后“0”位的总量。
最优阈值x(即阈200的值)是ax2+bx+c=0的解,其中
a=σ2 2-σ1 2
b=2(σ1 2η2-σ2 2η1)
这样,x由下式给出:
替代性地,两个均值η1和η2之间的中点可以被用作参考点。最优阈相对于所述中点的偏移(shift)可以通过下式计算:
后一方法也可以用于非高斯分布。
图11和12的描述针对两个编程级。在不同页被映射到不同位的MLC装置中,MSP可以检查特定页,并使用从被映射到同一组存储器单元的其他页中读取的数据来确定适当的编程级。例如,可以基于从LSB页中读取的数据来确定可应用于CSB页的编程级。可以基于从LSB和CSB页中读取的数据来确定可应用于MSB页的编程级。可以独立于其他页来处理LSB页。
对于不对称分布(例如,在σ1≠σ2的高斯分布情况中),即使当读取阈被设置在最优位置,从级L1指向级L2的被修正错误的数目也可能与对立方向上的错误的数目相异。在高斯分布的情况下,上文给出的公式处理该情况,并且无论如何都提供最优阈位置。
阈获取和跟踪
本文中描述的不同的阈估计方法可以被用在最优阈位置具有不同程度的在先不确定性的情况下。这些情况可以被粗略的分类为阈获取情况和阈跟踪情况。在阈获取中,当前使用的读取阈距离最优值很远。获取情况发生在,例如,通电之后或阈长期未被适配之后。另一方面,在阈跟踪中,当前使用的阈与最优值之间具有相对小的偏差。跟踪情况发生在,例如,当MSP持续地估计和调整阈位置以跟踪存储装置中的渐变时。
例如,图8-10的方法尤其适合于阈获取,虽然它们也可以用于跟踪。另一方面,图11和12的方法尤其适合于阈跟踪,虽然它们也可以用于阈获取。通常但不必要,基于ECC辅助的技术和基于计数“1”或“0”位数目的技术最适合于阈跟踪。
页内和跨页阈估计
在一些实施方案中,本文描述的阈估计方法被用于调整特定页内的读取阈。在这些实现中,对特定页的存储器单元执行测量和计算,结果被用于调整相同页的阈。这样的配置被称为页内阈估计。在一些替代性实施方案中,对特定页执行测量和计算,结果被用于调整不同页的阈。这样的配置被称为跨页阈估计。(虽然下文的描述涉及存储页,但本文描述的方法同样可应用于其他合适的存储器单元组。)
当执行跨页估计时,源页(即,对其执行测量的页)和目标页(其阈被修改的页)有时具有不同的数据特性,其可以影响最优阈位置。在一些实施方案中,MSP将阈适配到目标页的特定特性。例如,对于每一页和对于给定读取阈,MSP可以存储该页中的、存储值低于阈的单元的数目。继而MSP可以使用目标页的这个特性来修正阈调整。类似的修正也可以被应用在页内操作上。
阈修正可以写作Δ=F(N-NRECORDED),其中N表示低于阈的所测得的单元的数目,NRECORDED表示随同页一起被存储的数目。更复杂的修正因数可以包括来自多个阈的信息,例如:
Δ=F(N1-N1RECORDED,N2-N2RECORDED,N3-N3RECORDED,...)
例如,考虑一个3位/单元存储器。每个单元存储三个数据位,三个数据位在灰色编码映射中表示为LSB,CSB和USB。在特定字线中,单元LSB存储一个特定页,USB存储另一页,MSB存储第三页。在特定时间点,LSB和USB页已被取得,且它们的阈被设定。因此,MSP具有三个阈偏移量,针对LSB一个,针对USB两个。MSP可以使用所述三个偏移量来计算MSB页的读取阈调整。
另外地或替代性地,阈调整信息可以在不同字线、不同擦除模块、不同平面、源于特定晶片的不同裸片之间使用,和/或在其他任何合适的单元组之间使用。
例如,阈修正可以根据可以被估计和跟踪的特定依赖性,在一个字线和另一字线之间有所不同。在另一个实施例中,特定字线中的奇数和偶数页的阈修正可以是相关的。
在另一情况下,一个模块中的不同字线可能展现出不同的阈特性。例如,在32线擦除模块中,字线0到4可以展现出字线间的大的阈变化,字线5到25可以展现出极小的变化或无变化,字线26到31可以再次展现出大变化。MSP可以通过限制字线5到25之间的允许变化并允许其他字线上之间的大变化来将这些特性考虑进来。
另外地或替代性地,使用每页中落在给定阈下方的单元的数目,MSP可以记录和使用每页中的与被ECC修正的错误相关的信息,以修正页与页之间的读取阈的调整。进一步另外地或替代性地,MSP可以基于该页中的“1”位和“0”位的数目来修正页与页之间的阈。(当使用灰色映射时,一页中的“1”位的数目等于与一组编程级相关联的单元的数目。)这些计数可以被存储,例如,当该页被编程时。
虽然本文中描述的实施例主要针对固态存储装置中的数据存储和取得,但本发明的理论也可以用于硬盘驱动器(HDD)以及其他数据存储介质和装置中的数据存储和取得。
虽然本文中描述的实施方案主要涉及到读取阈的估计和自适应,但本文中描述的方法可以类似地被用来计算其他类型的、用于处理模拟存储器单元中存储值的阈,诸如编程阈和校验阈。
阈估计和适配的特定其他方面在以下文献中被描述:2007年5月10日提交的题为“Combined Distortion Estimation and ErrorCorrection Coding for Memory Devices”的PCT申请W02007/132457;上文引用过的题为“Distortion Estimation and Cancellation inMemory Devices”的PCT申请WO 2007/132453;以及2007年10月30日提交的题为“Reading Memory Cells using Multiple Thresholds”PCT申请PCT/IL2007/001315;这些文献的公开内容以引用的方式纳入本文。
在一些实施方案中,MSP使用多个读取阈来读取给定的一组存储器单元(例如一页)。这些实施方案的一些中,数据在存储入存储器单元之前以ECC编码。MSP基于多个读取结果来计算软解码度规,并使用该度规来解码ECC。本文描述的阈估计和调整方法可以用于确定用于产生软解码度规的多个读取阈的值。使用这里描述的方法和系统,可以减少对每组存储器单元执行的读取操作的次数。
在一些实施方案中,MSP估计和消除从存储器单元中读取的存储值的畸变。在这些实施方案中,MSP可以使用本文描述的方法和系统,定位用于读取所述单元的读取阈,以降低读取操作的次数。
因此,应意识到,上述实施方案以实施例的方式被引用,本发明不限于上文具体示出和描述的内容。而且,本发明的范围包括上文描述的各种特征的组合和子组合,以及本领域普通技术人员在阅读上述内容后能够作出的并且在现有技术中未公开的其变更和修改。
Claims (49)
1.一种操作包括多个模拟存储器单元的存储器的方法,包括:
通过向单元写入第一存储值来将数据存储在存储器中;
从单元中读取第二存储值,并估计第二存储值的累积分布函数(CDF);
处理所估计的CDF以计算一个或多个阈;以及
使用一个或多个阈,对所述单元执行存储器存取操作。
2.根据权利要求1所述的方法,其中,估计CDF包括计算一个或多个CDF数据点,以使对应于给定存储值的CDF数据点指示下述项之一:
不超过给定存储值的第二存储值的数目;以及
超过给定存储值的第二存储值的数目。
3.根据权利要求1或2所述的方法,其中处理所估计的CDF包括:限定一个模型,其响应输入参数来产生目标CDF,通过将目标CDF拟合到所估计的CDF来适配该模型,并基于所适配的模型来计算阈。
4.根据权利要求3所述的方法,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,并且其中输入参数包括至少一个选自以下参数的参数:
与编程状态之一相关联的第二存储值的子集的分布的拓宽因数;
与该编程状态之一相关联的第二存储值的子集的分布的方差;
与该编程状态之一相关联的第二存储值的子集的分布的相对偏移;
与该编程状态之一相关联的第二存储值的该子集的分布的均值。
5.根据权利要求3所述的方法,其中限定所述模型包括预先限定多个目标CDF,并且其中将目标CDF拟合到估计的CDF包括,响应于估计的CDF来从所述多个目标CDF中选择一个预先限定的目标CDF。
6.根据权利要求3所述的方法,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中与给定编程状态相关联的第二存储值根据所述输入参数子集的已知函数而分布,并且其中适配模型包括估计与给定编程状态之外的编程状态无关的输入参数子集。
7.根据权利要求3所述的方法,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中所述模型是基于编程状态中存储器单元第一分布而限定的,其中CDF是基于与第一分布不同的编程状态中存储器单元第二分布而估计的,并且其中适配模型包括修正目标CDF中由第一和第二分布之间的差异造成的错误。
8.根据权利要求7所述的方法,其中存储数据包括将与第一分布有关的信息存储在存储器中,并且其中修正错误包括取得存储信息并响应于所取得的信息来修正错误。
9.根据权利要求1或2所述的方法,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中对应于每个编程状态的第二存储值是根据各自的分布来分布,并且其中估计CDF包括根据对应于各编程级的第二存储值的数目来缩放所述分布,并响应于缩放后的分布来估计CDF。
10.根据权利要求1或2所述的方法,其中处理所估计的CDF包括,在所估计的CDF中识别平坦区域,并将至少一个阈定位在该平坦区域内。
11.根据权利要求1或2所述的方法,其中CDF在第二存储值的至少部分范围内具有已知形状,其中所估计的CDF相对于所述CDF具有偏移,并且其中处理所估计的CDF包括,计算该偏移并响应于算得的偏移来计算阈。
12.根据权利要求11所述的方法,其中估计CDF包括:测量位于第二存储值的部分范围内的一个或多个第二存储值中的CDF的一个或多个值,并基于CDF测量值来确定所述偏移。
13.根据权利要求11所述的方法,其中计算阈包括用算得的偏移来移动阈。
14.根据权利要求1或2所述的方法,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中第二存储值落入对应于所述编程状态的一组存储值范围内,并且其中估计CDF包括测量存储值范围内的CDF的至少一个值。
15.根据权利要求1或2所述的方法,其中读取第二存储值包括从第一组存储器单元中读取第二存储值,并且其中执行存储器存取操作包括,使用所述一个或多个阈来对不同于第一组存储器单元的第二组存储器单元执行存储器存取操作。
16.根据权利要求15所述的方法,其中存储在所述第一和第二组中的数据具有彼此不同的第一和第二数据值分布,并且该方法包括调整阈以匹配第二数据值分布。
17.根据权利要求15所述的方法,还包括确定第二组中的最优阈位置对第一组中的最优阈位置的依赖性,并调整该阈以根据该依赖性在第二组中执行存储器存取操作。
18.根据权利要求1或2所述的方法,其中所述一个或多个阈包括读取阈,并且其中执行存储器存取操作包括,使用该读取阈从所述单元中读取第三存储值,以重建所存储的数据。
19.根据权利要求18所述的方法,其中存储数据包括用错误修正码(ECC)来编码数据,其中读取第三存储值包括解码所述ECC并确定被ECC修正的错误,并且该方法包括响应于被修正错误来调整读取阈。
20.根据权利要求19所述的方法,其中,对于给定读取阈,确定被修正错误包括:确定由第三存储值落在给定读取阈以下引起的第一错误数目,和由第三存储值落在给定读取阈以上引起的第二错误数目,并且其中调整读取阈包括响应于第一和第二错误数目来调整给定读取阈。
21.根据权利要求18所述的方法,其中读取第三存储值进一步包括消除一个或多个第三存储值中的畸变。
22.根据权利要求1或2所述的方法,其中所述阈包括校验阈,并且其中执行存储器存取操作包括使用校验阈来校验被写入所述单元的第一存储值。
23.根据权利要求1或2所述的方法,其中存储数据包括用错误修正码(ECC)来编码数据,其中一个或多个阈包括多组读取阈,并且其中执行存储器存取操作包括:使用相应的多组读取阈从所述单元中读取多组第三存储值,响应于多组第三存储值来计算软解码度规,并使用软解码度规来解码ECC,以重建数据。
24.根据权利要求1或2所述的方法,其中每个存储器单元存储多个数据位,其中存储数据包括将多个存储页存储在存储器单元的相应的多个数据位中,并且其中执行存储器存取操作包括使用阈的子集来读取每个存储页。
25.一种数据存储装置,包括:
接口,其可操作地与包括多个模拟存储器单元的存储器通信;以及
处理器,其连接至所述接口,并被耦合以:通过向单元中写入第一存储值来将数据存储在存储器中;从单元中读取第二存储值;估计第二存储值的累积分布函数(CDF);处理所估计的CDF以计算一个或多个阈;以及使用所述一个或多个阈来对所述单元执行存储器存取操作。
26.根据权利要求25所述的装置,其中所述处理器被耦合以通过计算一个或多个CDF数据点来估计CDF,以使对应于给定存储值的CDF数据点指示下述项之一:
不超过给定存储值的第二存储值的数目;以及
超过给定存储值的第二存储值的数目。
27.根据权利要求25或26所述的装置,其中所述处理器被耦合,用以:限定一个模型,其响应输入参数来产生目标CDF;通过将目标CDF拟合到所估计的CDF来适配该模型;以及基于所适配的模型来计算阈。
28.根据权利要求27所述的装置,其中所述处理器被耦合以从一组标称值中选择第一存储值,从而编程各单元以使承担各自的编程状态,并且其中输入参数包括至少一个选自以下参数的参数:
与编程状态之一相关联的第二存储值的子集的分布的拓宽因数;
与该编程状态之一相关联的第二存储值的子集的分布的方差;
与该编程状态之一相关联的第二存储值的子集的分布的相对偏移;
与该编程状态之一相关联的第二存储值的子集的分布的均值。
29.根据权利要求27所述的装置,其中所述处理器被耦合以预先限定多个目标CDF,并响应于所估计的CDF来从所述多个目标CDF中选择一个预先限定的目标CDF。
30.根据权利要求27所述的装置,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中与给定编程状态相关联的第二存储值是根据所述输入参数的子集的已知函数而分布的,并且其中所述处理器被耦合以通过估计与给定编程状态之外的编程状态无关的输入参数子集来适配该模型。
31.根据权利要求27所述的装置,其中所述处理器被耦合以:从一组标称值中选择第一存储值,从而编程各单元以使承担各自的编程状态;基于编程状态中存储器单元第一分布来限定所述模型;基于与第一分布不同的编程状态中存储器单元第二分布来估计CDF;以及修正目标CDF中由第一和第二分布之间的差异而造成的错误。
32.根据权利要求31所述的装置,其中所述处理器被耦合以:将与第一分布有关的信息存储在存储器中;取得存储信息;并响应于所取得的信息来修正错误。
33.根据权利要求25或26所述的装置,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,其中对应于每个编程状态的第二存储值是根据各自的分布来分布的,并且其中所述处理器被耦合以根据相应于各个编程状态的第二存储值的数目来缩放所述分布,并响应于缩放后的分布来估计CDF。
34.根据权利要求25或26所述的装置,其中所述处理器被耦合以在所估计的CDF中识别平坦区域,并将至少一个阈定位在该平坦区域内。
35.根据权利要求25或26所述的装置,其中CDF在第二存储值的至少部分范围内具有已知形状,其中所估计的CDF相对于所述CDF具有偏移,并且其中所述处理器被耦合以计算该偏移并响应于算得的偏移来计算阈。
36.根据权利要求35所述的装置,其中所述处理器被耦合以:测量位于第二存储值的部分范围内的一个或多个第二存储值中的CDF的一个或多个值,并基于CDF测量值确定所述偏移。
37.根据权利要求35所述的装置,其中所述处理器被耦合以用所述算得的偏移来移动阈。
38.根据权利要求25或26所述的装置,其中第一存储值选自一组标称值,这组标称值编程各单元以使承担各自的编程状态,并且其中第二存储值落入对应于编程状态的一组存储范围内,其中所述处理器被耦合以在存储值范围内估计CDF的至少一个值。
39.根据权利要求25或26所述的装置,其中所述处理器被耦合以从第一组存储器单元中读取第二存储值,并使用所述一个或多个阈对不同于第一组存储器单元的第二组存储器单元执行存储器存取操作。
40.根据权利要求39所述的装置,其中存储在所述第一和第二组中的数据具有彼此不同的第一和第二数据值分布,其中所述处理器被耦合以调整阈从而匹配第二数据值分布。
41.根据权利要求39所述的装置,其中所述处理器被耦合以确定第二组中的最优阈位置对第一组中的最优阈位置的依赖性,并调整该阈以根据该依赖性在第二组中执行存储器存取操作。
42.根据权利要求25或26所述的装置,其中所述一个或多个阈包括读取阈,并且其中所述处理器被耦合以使用该读取阈从所述单元中读取第三存储值,以重建所存储的数据。
43.根据权利要求42所述的装置,其中所述处理器被耦合以:用错误修正码(ECC)来编码数据;在重建数据时解码所述ECC;确定被ECC修正的错误;以及响应于被修正错误来读取阈。
44.根据权利要求43所述的装置,其中,对于给定读取阈,所述处理器被耦合以确定由第三存储值落在给定读取阈以下引起的第一错误数目和由第三存储值落在给定读取阈以上引起的第二错误数目,并响应于第一和第二错误数目来调整给定读取阈。
45.根据权利要求42所述的装置,其中所述处理器被耦合以消除一个或多个第三存储值中的畸变。
46.根据权利要求25或26所述的装置,其中所述阈包括校验阈,并且其中所述处理器被耦合以使用校验阈来校验被写入所述单元的第一存储值。
47.根据权利要求25或26所述的装置,其中存储数据是用错误修正码(ECC)来编码的,其中所述一个或多个阈包括多组读取阈,并且其中所述处理器被耦合以:使用相应的多组读取阈来从所述单元中读取多组第三存储值;响应于多组第三存储值来计算软解码度规;以及使用软解码度规来解码ECC,以重建数据。
48.根据权利要求25或26所述的装置,其中每个存储器单元存储多个数据位,并且其中所述处理器被耦合以将多个存储页分别存储在存储器单元的相应的多个数据位中,并使用阈的子集来读取每个存储页。
49.一种数据存储设备,包括:
存储器,其包括多个模拟存储器单元;以及
处理器,其连接至所述存储器,并被耦合以:通过向单元写入第一存储值来将数据存储在存储器中;从单元中读取第二存储值;估计第二存储值的累积分布函数(CDF);处理所估计的CDF以计算一个或多个阈;以及使用所述一个或多个阈来对所述单元执行存储器存取操作。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US89429007P | 2007-03-12 | 2007-03-12 | |
US60/894,290 | 2007-03-12 | ||
US1682407P | 2007-12-27 | 2007-12-27 | |
US61/016,824 | 2007-12-27 | ||
US1717707P | 2007-12-28 | 2007-12-28 | |
US61/017,177 | 2007-12-28 | ||
PCT/IL2008/000329 WO2008111058A2 (en) | 2007-03-12 | 2008-03-11 | Adaptive estimation of memory cell read thresholds |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101715595A true CN101715595A (zh) | 2010-05-26 |
Family
ID=39760192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880005741A Pending CN101715595A (zh) | 2007-03-12 | 2008-03-11 | 存储器单元读取阈的自适应估计 |
Country Status (3)
Country | Link |
---|---|
US (2) | US8369141B2 (zh) |
CN (1) | CN101715595A (zh) |
WO (1) | WO2008111058A2 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104756194A (zh) * | 2012-10-31 | 2015-07-01 | 英特尔公司 | 基于估计概率密度函数的中心读取参考电压确定 |
CN105453053A (zh) * | 2013-08-13 | 2016-03-30 | 英派尔科技开发有限公司 | 存储器系统 |
TWI559689B (zh) * | 2013-10-25 | 2016-11-21 | 三菱電機股份有限公司 | 發信器 |
CN107094370A (zh) * | 2012-05-04 | 2017-08-25 | 希捷科技有限公司 | 固态硬盘控制器的0‑1平衡管理 |
CN110232948A (zh) * | 2019-05-28 | 2019-09-13 | 华中科技大学 | 一种ufs存储设备中ufs芯片健康度的度量方法及系统 |
CN110277127A (zh) * | 2018-03-14 | 2019-09-24 | 三星电子株式会社 | 非易失性存储器件 |
CN111522687A (zh) * | 2020-04-16 | 2020-08-11 | 江苏芯盛智能科技有限公司 | 数据处理方法、装置、固态硬盘及计算机可读存储介质 |
Families Citing this family (327)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258572B (zh) | 2006-05-12 | 2016-12-07 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
WO2007132456A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device with adaptive capacity |
WO2007132452A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
US8060806B2 (en) | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
CN101601094B (zh) | 2006-10-30 | 2013-03-27 | 苹果公司 | 使用多个门限读取存储单元的方法 |
WO2008053472A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
US7706182B2 (en) | 2006-12-03 | 2010-04-27 | Anobit Technologies Ltd. | Adaptive programming of analog memory cells using statistical characteristics |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
CN101622594B (zh) | 2006-12-06 | 2013-03-13 | 弗森-艾奥公司 | 使用空数据令牌指令管理来自于请求设备的数据的装置、系统和方法 |
US9495241B2 (en) | 2006-12-06 | 2016-11-15 | Longitude Enterprise Flash S.A.R.L. | Systems and methods for adaptive data storage |
US9116823B2 (en) | 2006-12-06 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for adaptive error-correction coding |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
US7900102B2 (en) | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
US7751240B2 (en) | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
CN101715595A (zh) * | 2007-03-12 | 2010-05-26 | 爱诺彼得技术有限责任公司 | 存储器单元读取阈的自适应估计 |
US8001320B2 (en) | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
US7876621B2 (en) | 2007-04-23 | 2011-01-25 | Sandisk Il Ltd. | Adaptive dynamic reading of flash memories |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US7925936B1 (en) | 2007-07-13 | 2011-04-12 | Anobit Technologies Ltd. | Memory device with non-uniform programming levels |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US8650352B2 (en) * | 2007-09-20 | 2014-02-11 | Densbits Technologies Ltd. | Systems and methods for determining logical values of coupled flash memory cells |
WO2009095902A2 (en) | 2008-01-31 | 2009-08-06 | Densbits Technologies Ltd. | Systems and methods for handling immediate data errors in flash memory |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US8000141B1 (en) | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
WO2009050703A2 (en) | 2007-10-19 | 2009-04-23 | Anobit Technologies | Data storage in analog memory cell arrays having erase failures |
US8068360B2 (en) | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
US8694715B2 (en) | 2007-10-22 | 2014-04-08 | Densbits Technologies Ltd. | Methods for adaptively programming flash memory devices and flash memory systems incorporating same |
WO2009053962A2 (en) * | 2007-10-22 | 2009-04-30 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
US8443242B2 (en) * | 2007-10-25 | 2013-05-14 | Densbits Technologies Ltd. | Systems and methods for multiple coding rates in flash devices |
WO2009063450A2 (en) | 2007-11-13 | 2009-05-22 | Anobit Technologies | Optimized selection of memory units in multi-unit memory devices |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8607128B2 (en) * | 2007-12-05 | 2013-12-10 | Densbits Technologies Ltd. | Low power chien-search based BCH/RS decoding system for flash memory, mobile communications devices and other applications |
WO2009072104A2 (en) * | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory device with physical cell value deterioration accommodation and methods useful in conjunction therewith |
WO2009072103A2 (en) * | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
US8316277B2 (en) | 2007-12-06 | 2012-11-20 | Fusion-Io, Inc. | Apparatus, system, and method for ensuring data validity in a data storage process |
US7836226B2 (en) | 2007-12-06 | 2010-11-16 | Fusion-Io, Inc. | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
US8359516B2 (en) * | 2007-12-12 | 2013-01-22 | Densbits Technologies Ltd. | Systems and methods for error correction and decoding on multi-level physical media |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8276051B2 (en) * | 2007-12-12 | 2012-09-25 | Densbits Technologies Ltd. | Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8327246B2 (en) * | 2007-12-18 | 2012-12-04 | Densbits Technologies Ltd. | Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith |
US7934052B2 (en) | 2007-12-27 | 2011-04-26 | Pliant Technology, Inc. | System and method for performing host initiated mass storage commands using a hierarchy of data structures |
US8085586B2 (en) | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US7924587B2 (en) | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8493783B2 (en) | 2008-03-18 | 2013-07-23 | Apple Inc. | Memory device readout using multiple sense times |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8059457B2 (en) | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
WO2009118720A2 (en) * | 2008-03-25 | 2009-10-01 | Densbits Technologies Ltd. | Apparatus and methods for hardware-efficient unbiased rounding |
US7843725B2 (en) * | 2008-06-11 | 2010-11-30 | Micron Technology, Inc. | M+L bit read column architecture for M bit memory cells |
US7924613B1 (en) | 2008-08-05 | 2011-04-12 | Anobit Technologies Ltd. | Data storage in analog memory cells with protection against programming interruption |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US8332725B2 (en) * | 2008-08-20 | 2012-12-11 | Densbits Technologies Ltd. | Reprogramming non volatile memory portions |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8000135B1 (en) | 2008-09-14 | 2011-08-16 | Anobit Technologies Ltd. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8397131B1 (en) | 2008-12-31 | 2013-03-12 | Apple Inc. | Efficient readout schemes for analog memory cell devices |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8261158B2 (en) | 2009-03-13 | 2012-09-04 | Fusion-Io, Inc. | Apparatus, system, and method for using multi-level cell solid-state storage as single level cell solid-state storage |
US8266503B2 (en) | 2009-03-13 | 2012-09-11 | Fusion-Io | Apparatus, system, and method for using multi-level cell storage in a single-level cell mode |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8458574B2 (en) * | 2009-04-06 | 2013-06-04 | Densbits Technologies Ltd. | Compact chien-search based decoding apparatus and method |
US8819385B2 (en) * | 2009-04-06 | 2014-08-26 | Densbits Technologies Ltd. | Device and method for managing a flash memory |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US7848152B1 (en) | 2009-05-12 | 2010-12-07 | Skymedi Corporation | Method and system for adaptively finding reference voltages for reading data from a MLC flash memory |
US8566510B2 (en) * | 2009-05-12 | 2013-10-22 | Densbits Technologies Ltd. | Systems and method for flash memory management |
US7907445B2 (en) | 2009-06-17 | 2011-03-15 | Skymedi Corporation | Method and system for obtaining a reference block for a MLC flash memory |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US20110035540A1 (en) * | 2009-08-10 | 2011-02-10 | Adtron, Inc. | Flash blade system architecture and method |
US8072805B2 (en) | 2009-08-18 | 2011-12-06 | Skymedi Corporation | Method and system of finding a read voltage for a flash memory |
US8305812B2 (en) * | 2009-08-26 | 2012-11-06 | Densbits Technologies Ltd. | Flash memory module and method for programming a page of flash memory cells |
US9330767B1 (en) | 2009-08-26 | 2016-05-03 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory module and method for programming a page of flash memory cells |
US8868821B2 (en) * | 2009-08-26 | 2014-10-21 | Densbits Technologies Ltd. | Systems and methods for pre-equalization and code design for a flash memory |
US8995197B1 (en) | 2009-08-26 | 2015-03-31 | Densbits Technologies Ltd. | System and methods for dynamic erase and program control for flash memory device memories |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8730729B2 (en) | 2009-10-15 | 2014-05-20 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
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 |
US8626988B2 (en) * | 2009-11-19 | 2014-01-07 | Densbits Technologies Ltd. | System and method for uncoded bit error rate equalization via interleaving |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US9037777B2 (en) * | 2009-12-22 | 2015-05-19 | Densbits Technologies Ltd. | Device, system, and method for reducing program/read disturb in flash arrays |
US8607124B2 (en) * | 2009-12-24 | 2013-12-10 | Densbits Technologies Ltd. | System and method for setting a flash memory cell read threshold |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8572311B1 (en) | 2010-01-11 | 2013-10-29 | Apple Inc. | Redundant data storage in multi-die memory systems |
US8315092B2 (en) | 2010-01-27 | 2012-11-20 | Fusion-Io, Inc. | Apparatus, system, and method for determining a read voltage threshold for solid-state storage media |
US8661184B2 (en) | 2010-01-27 | 2014-02-25 | Fusion-Io, Inc. | Managing non-volatile media |
US8854882B2 (en) | 2010-01-27 | 2014-10-07 | Intelligent Intellectual Property Holdings 2 Llc | Configuring storage cells |
US8380915B2 (en) | 2010-01-27 | 2013-02-19 | Fusion-Io, Inc. | Apparatus, system, and method for managing solid-state storage media |
US8700970B2 (en) * | 2010-02-28 | 2014-04-15 | Densbits Technologies Ltd. | System and method for multi-dimensional decoding |
WO2011113034A2 (en) | 2010-03-12 | 2011-09-15 | Sandforce, Inc. | Ldpc erasure decoding for flash memories |
US9245653B2 (en) | 2010-03-15 | 2016-01-26 | Intelligent Intellectual Property Holdings 2 Llc | Reduced level cell mode for non-volatile memory |
US8516274B2 (en) | 2010-04-06 | 2013-08-20 | Densbits Technologies Ltd. | Method, system and medium for analog encryption in a flash memory |
US8527840B2 (en) | 2010-04-06 | 2013-09-03 | Densbits Technologies Ltd. | System and method for restoring damaged data programmed on a flash device |
US8745317B2 (en) | 2010-04-07 | 2014-06-03 | Densbits Technologies Ltd. | System and method for storing information in a multi-level cell memory |
US8295095B2 (en) * | 2010-04-20 | 2012-10-23 | Micron Technology, Inc. | Programming methods for a memory device |
US9021177B2 (en) | 2010-04-29 | 2015-04-28 | Densbits Technologies Ltd. | System and method for allocating and using spare blocks in a flash memory |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8621321B2 (en) | 2010-07-01 | 2013-12-31 | Densbits Technologies Ltd. | System and method for multi-dimensional encoding and decoding |
US8539311B2 (en) | 2010-07-01 | 2013-09-17 | Densbits Technologies Ltd. | System and method for data recovery in multi-level cell memories |
US20120008414A1 (en) | 2010-07-06 | 2012-01-12 | Michael Katz | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8493781B1 (en) | 2010-08-12 | 2013-07-23 | Apple Inc. | Interference mitigation using individual word line erasure operations |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US8964464B2 (en) | 2010-08-24 | 2015-02-24 | Densbits Technologies Ltd. | System and method for accelerated sampling |
US8508995B2 (en) | 2010-09-15 | 2013-08-13 | Densbits Technologies Ltd. | System and method for adjusting read voltage thresholds in memories |
US8627175B2 (en) | 2010-09-27 | 2014-01-07 | Seagate Technology Llc | Opportunistic decoding in memory systems |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US8243511B2 (en) | 2010-09-27 | 2012-08-14 | Seagate Technology Llc | Reuse of information from memory read operations |
US8848438B2 (en) | 2010-10-05 | 2014-09-30 | Stec, Inc. | Asymmetric log-likelihood ratio for MLC flash channel |
US9063878B2 (en) | 2010-11-03 | 2015-06-23 | Densbits Technologies Ltd. | Method, system and computer readable medium for copy back |
US8850100B2 (en) | 2010-12-07 | 2014-09-30 | Densbits Technologies Ltd. | Interleaving codeword portions between multiple planes and/or dies of a flash memory device |
US8719663B2 (en) | 2010-12-12 | 2014-05-06 | Lsi Corporation | Cross-decoding for non-volatile storage |
EP2652623B1 (en) | 2010-12-13 | 2018-08-01 | SanDisk Technologies LLC | Apparatus, system, and method for auto-commit memory |
US8909851B2 (en) | 2011-02-08 | 2014-12-09 | SMART Storage Systems, Inc. | Storage control system with change logging mechanism and method of operation thereof |
US10079068B2 (en) | 2011-02-23 | 2018-09-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Devices and method for wear estimation based memory management |
WO2012116369A2 (en) | 2011-02-25 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for managing contents of a cache |
US8693258B2 (en) | 2011-03-17 | 2014-04-08 | Densbits Technologies Ltd. | Obtaining soft information using a hard interface |
US8935466B2 (en) | 2011-03-28 | 2015-01-13 | SMART Storage Systems, Inc. | Data storage system with non-volatile memory and method of operation thereof |
US8990665B1 (en) | 2011-04-06 | 2015-03-24 | Densbits Technologies Ltd. | System, method and computer program product for joint search of a read threshold and soft decoding |
US9396106B2 (en) | 2011-05-12 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9110785B1 (en) | 2011-05-12 | 2015-08-18 | Densbits Technologies Ltd. | Ordered merge of data sectors that belong to memory space portions |
US8996790B1 (en) | 2011-05-12 | 2015-03-31 | Densbits Technologies Ltd. | System and method for flash memory management |
US9195592B1 (en) | 2011-05-12 | 2015-11-24 | Densbits Technologies Ltd. | Advanced management of a non-volatile memory |
US9372792B1 (en) | 2011-05-12 | 2016-06-21 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9501392B1 (en) | 2011-05-12 | 2016-11-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of a non-volatile memory module |
EP2710139B2 (en) * | 2011-05-20 | 2022-04-13 | The Brigham and Women's Hospital, Inc. | Analysis and sorting of motile cells |
US8667211B2 (en) | 2011-06-01 | 2014-03-04 | Densbits Technologies Ltd. | System and method for managing a non-volatile memory |
US8588003B1 (en) | 2011-08-01 | 2013-11-19 | Densbits Technologies Ltd. | System, method and computer program product for programming and for recovering from a power failure |
US9098399B2 (en) | 2011-08-31 | 2015-08-04 | SMART Storage Systems, Inc. | Electronic system with storage management mechanism and method of operation thereof |
US9063844B2 (en) | 2011-09-02 | 2015-06-23 | SMART Storage Systems, Inc. | Non-volatile memory management system with time measure mechanism and method of operation thereof |
US9021319B2 (en) | 2011-09-02 | 2015-04-28 | SMART Storage Systems, Inc. | Non-volatile memory management system with load leveling and method of operation thereof |
US9021231B2 (en) | 2011-09-02 | 2015-04-28 | SMART Storage Systems, Inc. | Storage control system with write amplification control mechanism and method of operation thereof |
US9417803B2 (en) * | 2011-09-20 | 2016-08-16 | Apple Inc. | Adaptive mapping of logical addresses to memory devices in solid state drives |
US8553468B2 (en) | 2011-09-21 | 2013-10-08 | Densbits Technologies Ltd. | System and method for managing erase operations in a non-volatile memory |
US8737133B2 (en) | 2011-10-18 | 2014-05-27 | Seagate Technology Llc | Shifting cell voltage based on grouping of solid-state, non-volatile memory cells |
US8711619B2 (en) | 2011-10-18 | 2014-04-29 | Seagate Technology Llc | Categorizing bit errors of solid-state, non-volatile memory |
US8760932B2 (en) | 2011-10-18 | 2014-06-24 | Seagate Technology Llc | Determination of memory read reference and programming voltages |
US8693257B2 (en) | 2011-10-18 | 2014-04-08 | Seagate Technology Llc | Determining optimal read reference and programming voltages for non-volatile memory using mutual information |
US9058289B2 (en) | 2011-11-07 | 2015-06-16 | Sandisk Enterprise Ip Llc | Soft information generation for memory systems |
US8811081B2 (en) * | 2011-12-09 | 2014-08-19 | Sandisk Technologies Inc. | Systems and methods of updating read voltages in a memory |
US8773904B2 (en) | 2011-12-28 | 2014-07-08 | Apple Inc. | Optimized threshold search in analog memory cells |
US8937838B2 (en) * | 2012-01-10 | 2015-01-20 | Sk Hynix Memory Solutions Inc. | Finding optimal read thresholds and related voltages for solid state memory |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US9239781B2 (en) | 2012-02-07 | 2016-01-19 | SMART Storage Systems, Inc. | Storage control system with erase block mechanism and method of operation thereof |
US8996788B2 (en) | 2012-02-09 | 2015-03-31 | Densbits Technologies Ltd. | Configurable flash interface |
US8947941B2 (en) | 2012-02-09 | 2015-02-03 | Densbits Technologies Ltd. | State responsive operations relating to flash memory cells |
TWI514404B (zh) * | 2012-02-24 | 2015-12-21 | Silicon Motion Inc | 讀取快閃記憶體中所儲存之資料的方法、記憶體控制器與系統 |
US8681569B2 (en) * | 2012-02-22 | 2014-03-25 | Silicon Motion, Inc. | Method for reading data stored in a flash memory according to a threshold voltage distribution and memory controller and system thereof |
US8838881B2 (en) | 2012-03-01 | 2014-09-16 | Seagate Technology Llc | Transfer command with specified sense threshold vector component |
US9305643B2 (en) * | 2012-03-27 | 2016-04-05 | Adesto Technologies Corporation | Solid electrolyte based memory devices and methods having adaptable read threshold levels |
US9298252B2 (en) | 2012-04-17 | 2016-03-29 | SMART Storage Systems, Inc. | Storage control system with power down mechanism and method of operation thereof |
US8996793B1 (en) | 2012-04-24 | 2015-03-31 | Densbits Technologies Ltd. | System, method and computer readable medium for generating soft information |
US8856611B2 (en) | 2012-08-04 | 2014-10-07 | Lsi Corporation | Soft-decision compensation for flash channel variation |
US20130343131A1 (en) | 2012-06-26 | 2013-12-26 | Lsi Corporation | Fast tracking for flash channels |
US8838937B1 (en) | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
US8879325B1 (en) | 2012-05-30 | 2014-11-04 | Densbits Technologies Ltd. | System, method and computer program product for processing read threshold information and for reading a flash memory module |
US8949689B2 (en) | 2012-06-11 | 2015-02-03 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US8804415B2 (en) | 2012-06-19 | 2014-08-12 | Fusion-Io, Inc. | Adaptive voltage range management in non-volatile memory |
US8856431B2 (en) | 2012-08-02 | 2014-10-07 | Lsi Corporation | Mixed granularity higher-level redundancy for non-volatile memory |
US9239754B2 (en) | 2012-08-04 | 2016-01-19 | Seagate Technology Llc | Single read based soft-decision decoding of non-volatile memory |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US8792281B2 (en) | 2012-08-21 | 2014-07-29 | Apple Inc. | Read threshold estimation in analog memory cells using simultaneous multi-voltage sense |
US9921954B1 (en) | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US9136001B2 (en) | 2012-10-22 | 2015-09-15 | Apple Inc. | Signal-to-Noise Ratio (SNR) estimation in analog memory cells based on optimal read thresholds |
US9159407B2 (en) | 2012-10-22 | 2015-10-13 | Apple Inc. | Soft readout from analog memory cells in the presence of read threshold errors |
KR102038408B1 (ko) | 2012-10-25 | 2019-10-30 | 삼성전자주식회사 | 회귀 분석법을 사용하는 메모리 시스템 및 그것의 읽기 방법 |
US9368225B1 (en) * | 2012-11-21 | 2016-06-14 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Determining read thresholds based upon read error direction statistics |
US9671962B2 (en) | 2012-11-30 | 2017-06-06 | Sandisk Technologies Llc | Storage control system with data management mechanism of parity and method of operation thereof |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9454420B1 (en) * | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9003264B1 (en) | 2012-12-31 | 2015-04-07 | Sandisk Enterprise Ip Llc | Systems, methods, and devices for multi-dimensional flash RAID data protection |
US9069659B1 (en) | 2013-01-03 | 2015-06-30 | Densbits Technologies Ltd. | Read threshold determination using reference read threshold |
KR102050475B1 (ko) | 2013-01-14 | 2020-01-08 | 삼성전자주식회사 | 플래시 메모리, 플래시 메모리 장치 및 이의 동작 방법 |
US9123445B2 (en) | 2013-01-22 | 2015-09-01 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9183137B2 (en) | 2013-02-27 | 2015-11-10 | SMART Storage Systems, Inc. | Storage control system with data management mechanism and method of operation thereof |
US9470720B2 (en) | 2013-03-08 | 2016-10-18 | Sandisk Technologies Llc | Test system with localized heating and method of manufacture thereof |
US9135109B2 (en) | 2013-03-11 | 2015-09-15 | Seagate Technology Llc | Determination of optimum threshold voltage to read data values in memory cells |
US9280412B2 (en) * | 2013-03-12 | 2016-03-08 | Macronix International Co., Ltd. | Memory with error correction configured to prevent overcorrection |
US9530515B2 (en) | 2013-03-13 | 2016-12-27 | Sandisk Technologies Llc | Determining read voltages for reading memory |
US9870830B1 (en) * | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9043780B2 (en) | 2013-03-27 | 2015-05-26 | SMART Storage Systems, Inc. | Electronic system with system modification control mechanism and method of operation thereof |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US9543025B2 (en) | 2013-04-11 | 2017-01-10 | Sandisk Technologies Llc | Storage control system with power-off time estimation mechanism and method of operation thereof |
US10546648B2 (en) | 2013-04-12 | 2020-01-28 | Sandisk Technologies Llc | Storage control system with data management mechanism and method of operation thereof |
US9235469B2 (en) * | 2013-05-22 | 2016-01-12 | Seagate Technology Llc | Systems and methods for inter-cell interference mitigation in a flash memory |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9136876B1 (en) | 2013-06-13 | 2015-09-15 | Densbits Technologies Ltd. | Size limited multi-dimensional decoding |
US9898056B2 (en) | 2013-06-19 | 2018-02-20 | Sandisk Technologies Llc | Electronic assembly with thermal channel and method of manufacture thereof |
US9313874B2 (en) | 2013-06-19 | 2016-04-12 | SMART Storage Systems, Inc. | Electronic system with heat extraction and method of manufacture thereof |
US9367353B1 (en) | 2013-06-25 | 2016-06-14 | Sandisk Technologies Inc. | Storage control system with power throttling mechanism and method of operation thereof |
US9244519B1 (en) | 2013-06-25 | 2016-01-26 | Smart Storage Systems. Inc. | Storage system with data transfer rate adjustment for power throttling |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
US9146850B2 (en) | 2013-08-01 | 2015-09-29 | SMART Storage Systems, Inc. | Data storage system with dynamic read threshold mechanism and method of operation thereof |
US9361222B2 (en) | 2013-08-07 | 2016-06-07 | SMART Storage Systems, Inc. | Electronic system with storage drive life estimation mechanism and method of operation thereof |
US9431113B2 (en) | 2013-08-07 | 2016-08-30 | Sandisk Technologies Llc | Data storage system with dynamic erase block grouping mechanism and method of operation thereof |
US9448946B2 (en) | 2013-08-07 | 2016-09-20 | Sandisk Technologies Llc | Data storage system with stale data mechanism and method of operation thereof |
US10319460B2 (en) * | 2013-08-14 | 2019-06-11 | Infineon Technologies Ag | Systems and methods utilizing a flexible read reference for a dynamic read window |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9361221B1 (en) | 2013-08-26 | 2016-06-07 | Sandisk Technologies Inc. | Write amplification reduction through reliable writes during garbage collection |
GB2518632A (en) | 2013-09-26 | 2015-04-01 | Ibm | Estimation of level-thresholds for memory cells |
US9413491B1 (en) | 2013-10-08 | 2016-08-09 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for multiple dimension decoding and encoding a message |
US9786388B1 (en) | 2013-10-09 | 2017-10-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9397706B1 (en) | 2013-10-09 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for irregular multiple dimension decoding and encoding |
US9348694B1 (en) | 2013-10-09 | 2016-05-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
KR102102175B1 (ko) * | 2013-11-05 | 2020-04-21 | 삼성전자 주식회사 | 저항체를 이용한 비휘발성 메모리 장치의 테스트 방법 |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
GB201320983D0 (en) | 2013-11-28 | 2014-01-15 | Ibm | Data encoding in solid-state storage apparatus |
GB2520708A (en) | 2013-11-28 | 2015-06-03 | Ibm | Multi-stage codeword detector |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
KR102127137B1 (ko) * | 2013-12-03 | 2020-06-26 | 삼성전자주식회사 | 셀 트랜지스터들의 계면 상태를 제어하여 센싱 마진을 보상할 수 있는 저항성 메모리 장치 |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9224479B1 (en) * | 2013-12-18 | 2015-12-29 | Pmc-Sierra Us, Inc. | Threshold voltage adjustment in solid state memory |
US9645763B2 (en) | 2014-01-13 | 2017-05-09 | Seagate Technology Llc | Framework for balancing robustness and latency during collection of statistics from soft reads |
US9536612B1 (en) | 2014-01-23 | 2017-01-03 | Avago Technologies General Ip (Singapore) Pte. Ltd | Digital signaling processing for three dimensional flash memory arrays |
US10120792B1 (en) | 2014-01-29 | 2018-11-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Programming an embedded flash storage device |
US9319073B2 (en) | 2014-02-11 | 2016-04-19 | Seagate Technology Llc | Mitigation of write errors in multi-level cell flash memory through adaptive error correction code decoding |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
KR20150134473A (ko) | 2014-05-21 | 2015-12-02 | 에스케이하이닉스 주식회사 | 반도체 장치 및 그 동작 방법 |
US9542262B1 (en) | 2014-05-29 | 2017-01-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Error correction |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
US9892033B1 (en) | 2014-06-24 | 2018-02-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of memory units |
US9972393B1 (en) | 2014-07-03 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Accelerating programming of a flash memory module |
US9584159B1 (en) | 2014-07-03 | 2017-02-28 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Interleaved encoding |
US9449702B1 (en) | 2014-07-08 | 2016-09-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Power management |
KR102247087B1 (ko) * | 2014-07-08 | 2021-05-03 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US9270504B2 (en) * | 2014-07-28 | 2016-02-23 | Mitsubishi Electric Research Laboratories, Inc. | System and method for linearizing power amplifiers |
US9443601B2 (en) | 2014-09-08 | 2016-09-13 | Sandisk Technologies Llc | Holdup capacitor energy harvesting |
US9524211B1 (en) | 2014-11-18 | 2016-12-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Codeword management |
KR102245129B1 (ko) * | 2014-11-24 | 2021-04-28 | 삼성전자 주식회사 | 멀티레벨 셀을 포함하는 크로스 포인트 메모리 장치 및 크로스 포인트 메모리 장치의 동작방법 |
KR102397016B1 (ko) | 2014-11-24 | 2022-05-13 | 삼성전자주식회사 | 불휘발성 메모리 시스템의 동작 방법 |
US9916237B2 (en) * | 2014-12-12 | 2018-03-13 | Sandisk Technologies Llc | Model based configuration parameter management |
US10305515B1 (en) | 2015-02-02 | 2019-05-28 | Avago Technologies International Sales Pte. Limited | System and method for encoding using multiple linear feedback shift registers |
US9570167B2 (en) * | 2015-02-23 | 2017-02-14 | Micron Technology, Inc. | Apparatuses and methods of reading memory cells |
US10628255B1 (en) | 2015-06-11 | 2020-04-21 | Avago Technologies International Sales Pte. Limited | Multi-dimensional decoding |
US9851921B1 (en) | 2015-07-05 | 2017-12-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory chip processing |
US9779818B2 (en) | 2015-07-09 | 2017-10-03 | Apple Inc. | Adaptation of high-order read thresholds |
US9697075B2 (en) | 2015-09-08 | 2017-07-04 | Apple Inc. | Efficient search for optimal read thresholds in flash memory |
US10192614B2 (en) | 2015-10-30 | 2019-01-29 | Seagate Technology Llc | Adaptive read threshold voltage tracking with gap estimation between default read threshold voltages |
US10347343B2 (en) | 2015-10-30 | 2019-07-09 | Seagate Technology Llc | Adaptive read threshold voltage tracking with separate characterization on each side of voltage distribution about distribution mean |
KR102459077B1 (ko) | 2016-01-12 | 2022-10-27 | 삼성전자주식회사 | 비선형 필터링 방식을 사용하는 메모리 시스템 및 그것의 읽기 방법 |
US9954558B1 (en) | 2016-03-03 | 2018-04-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Fast decoding of data stored in a flash memory |
KR102585221B1 (ko) | 2016-04-21 | 2023-10-05 | 삼성전자주식회사 | 메모리 장치, 메모리 시스템 및 메모리 장치의 동작 방법 |
US9971646B2 (en) | 2016-06-01 | 2018-05-15 | Apple Inc. | Reading-threshold setting based on data encoded with a multi-component code |
US10008277B2 (en) | 2016-09-12 | 2018-06-26 | Sandisk Technologies Llc | Block health monitoring using threshold voltage of dummy memory cells |
KR20180070974A (ko) | 2016-12-19 | 2018-06-27 | 삼성전자주식회사 | 비휘발성 메모리의 리드 동작 방법, 비휘발성 메모리를 포함하는 메모리 시스템 및 이의 동작 방법 |
KR102263047B1 (ko) * | 2017-03-20 | 2021-06-10 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US10229749B2 (en) | 2017-03-31 | 2019-03-12 | Samsung Electronics Co., Ltd. | Nonvolatile memory storage system |
US10381090B2 (en) | 2017-03-31 | 2019-08-13 | Samsung Electronics Co., Ltd. | Operation method of nonvolatile memory device and storage device |
US9928126B1 (en) | 2017-06-01 | 2018-03-27 | Apple Inc. | Recovery from cross-temperature read failures by programming neighbor word lines |
US10388394B2 (en) | 2017-07-25 | 2019-08-20 | Apple Inc. | Syndrome weight based evaluation of memory cells performance using multiple sense operations |
US10714187B2 (en) * | 2018-01-11 | 2020-07-14 | Raymx Microelectronics Corp. | Memory control device for estimating time interval and method thereof |
CN109032514B (zh) * | 2018-07-17 | 2021-08-13 | 广东工业大学 | 一种数据读取方法、装置、设备及可读存储介质 |
US10726934B2 (en) * | 2018-09-04 | 2020-07-28 | Micron Technology, Inc. | Memory characterization and sub-system modification |
JP2020047353A (ja) * | 2018-09-20 | 2020-03-26 | キオクシア株式会社 | メモリシステム |
US11244732B2 (en) * | 2018-09-28 | 2022-02-08 | Western Digital Technologies, Inc. | Single page read level tracking by bit error rate analysis |
KR102599123B1 (ko) | 2018-11-14 | 2023-11-06 | 삼성전자주식회사 | 인공 신경망 모델에 기초하여 읽기 레벨들을 추론하는 스토리지 장치 및 인공 신경망 모델의 학습 방법 |
KR20200065298A (ko) * | 2018-11-30 | 2020-06-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
KR20210079555A (ko) * | 2019-12-20 | 2021-06-30 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
US11907571B2 (en) | 2020-07-13 | 2024-02-20 | SK Hynix Inc. | Read threshold optimization systems and methods using domain transformation |
US11355204B2 (en) | 2020-09-03 | 2022-06-07 | SK Hynix Inc. | Efficient read-threshold calculation method for parametric PV-level modeling |
US11521700B2 (en) * | 2021-01-04 | 2022-12-06 | Innogrit Technologies Co., Ltd. | Reference voltage adjustment based on post-decoding and pre-decoding state information |
US11322214B1 (en) * | 2021-01-13 | 2022-05-03 | SK Hynix Inc. | Gaussian modeling for soft-read threshold estimation in non-volatile memory devices |
US11430530B2 (en) | 2021-01-25 | 2022-08-30 | SK Hynix Inc. | Deep learning based program-verify modeling and voltage estimation for memory devices |
US11514999B2 (en) | 2021-04-16 | 2022-11-29 | SK Hynix Inc. | Systems and methods for parametric PV-level modeling and read threshold voltage estimation |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11749354B2 (en) | 2021-07-13 | 2023-09-05 | SK Hynix Inc. | Systems and methods for non-parametric PV-level modeling and read threshold voltage estimation |
US11769555B2 (en) | 2021-07-27 | 2023-09-26 | SK Hynix Inc. | Read threshold voltage estimation systems and methods for parametric PV-level modeling |
US11769556B2 (en) | 2021-07-27 | 2023-09-26 | SK Hynix Inc. | Systems and methods for modeless read threshold voltage estimation |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
US11621048B2 (en) | 2021-07-29 | 2023-04-04 | Apple Inc. | Positioning read thresholds in a nonvolatile memory based on successful decoding |
US11854629B2 (en) | 2021-11-22 | 2023-12-26 | SK Hynix Inc. | System and method for non-parametric optimal read threshold estimation using deep neural network |
US11853590B2 (en) * | 2021-12-02 | 2023-12-26 | SK Hynix Inc. | Read threshold estimation system using calculations based on polynomial regression |
US20230326528A1 (en) * | 2022-04-06 | 2023-10-12 | Western Digital Technologies, Inc. | Read threshold calibration for cross-temperature long, sequential reads |
Family Cites Families (517)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3668631A (en) | 1969-02-13 | 1972-06-06 | Ibm | Error detection and correction system with statistically optimized data recovery |
US3668632A (en) | 1969-02-13 | 1972-06-06 | Ibm | Fast decode character error detection and correction system |
US4910706A (en) | 1972-09-11 | 1990-03-20 | Hyatt Gilbert P | Analog memory for storing digital information |
US4058851A (en) | 1976-10-18 | 1977-11-15 | Sperry Rand Corporation | Conditional bypass of error correction for dual memory access time selection |
JPS6051749B2 (ja) | 1979-08-31 | 1985-11-15 | 富士通株式会社 | エラ−訂正方式 |
US4556961A (en) | 1981-05-26 | 1985-12-03 | Tokyo Shibaura Denki Kabushiki Kaisha | Semiconductor memory with delay means to reduce peak currents |
US4413339A (en) | 1981-06-24 | 1983-11-01 | Digital Equipment Corporation | Multiple error detecting and correcting system employing Reed-Solomon codes |
JPS59106152A (ja) | 1982-12-10 | 1984-06-19 | Nec Corp | 半導体装置 |
US4608687A (en) | 1983-09-13 | 1986-08-26 | International Business Machines Corporation | Bit steering apparatus and method for correcting errors in stored data, storing the address of the corrected data and using the address to maintain a correct data condition |
DE3485595D1 (de) | 1983-12-23 | 1992-04-23 | Hitachi Ltd | Halbleiterspeicher mit einer speicherstruktur mit vielfachen pegeln. |
EP0157607B1 (en) | 1984-04-02 | 1993-02-10 | The Board Of Trustees Of The Leland Stanford Junior University | Analog data storage system |
JPS618796A (ja) | 1984-06-20 | 1986-01-16 | Nec Corp | ダイナミツクメモリ |
US4654847A (en) | 1984-12-28 | 1987-03-31 | International Business Machines | Apparatus for automatically correcting erroneous data and for storing the corrected data in a common pool alternate memory array |
US4899342A (en) | 1988-02-01 | 1990-02-06 | Thinking Machines Corporation | Method and apparatus for operating multi-unit array of memories |
JPH01201736A (ja) | 1988-02-08 | 1989-08-14 | Mitsubishi Electric Corp | マイクロコンピュータ |
EP0376285B1 (en) | 1988-12-27 | 1994-03-09 | Nec Corporation | Microcomputer having electrically erasable and programmable nonvolatile memory |
US5077722A (en) | 1989-01-06 | 1991-12-31 | Convex Computer Corporation | Disk drive insertion and removal interlock |
US4993029A (en) | 1989-03-13 | 1991-02-12 | International Business Machines Corporation | Method and apparatus for randomizing data in a direct access storage device |
US5276649A (en) | 1989-03-16 | 1994-01-04 | Mitsubishi Denki Kabushiki Kaisha | Dynamic-type semiconductor memory device having staggered activation of column groups |
US5172338B1 (en) | 1989-04-13 | 1997-07-08 | Sandisk Corp | Multi-state eeprom read and write circuits and techniques |
DE69034191T2 (de) | 1989-04-13 | 2005-11-24 | Sandisk Corp., Sunnyvale | EEPROM-System mit aus mehreren Chips bestehender Blocklöschung |
US5163021A (en) | 1989-04-13 | 1992-11-10 | Sundisk Corporation | Multi-state EEprom read and write circuits and techniques |
US5200959A (en) | 1989-10-17 | 1993-04-06 | Sundisk Corporation | Device and method for defect handling in semi-conductor memory |
US5126808A (en) | 1989-10-23 | 1992-06-30 | Advanced Micro Devices, Inc. | Flash EEPROM array with paged erase architecture |
US5182752A (en) | 1990-06-29 | 1993-01-26 | Digital Equipment Corporation | Method and apparatus for transferring data between a data bus and a data storage device |
US5218569A (en) | 1991-02-08 | 1993-06-08 | Banks Gerald J | Electrically alterable non-volatile memory with n-bits per memory cell |
US5191584A (en) | 1991-02-20 | 1993-03-02 | Micropolis Corporation | Mass storage array with efficient parity calculation |
US5272669A (en) | 1991-02-20 | 1993-12-21 | Sundisk Corporation | Method and structure for programming floating gate memory cells |
KR960002006B1 (ko) | 1991-03-12 | 1996-02-09 | 가부시끼가이샤 도시바 | 2개의 기준 레벨을 사용하는 기록 검증 제어기를 갖는 전기적으로 소거 가능하고 프로그램 가능한 불휘발성 메모리 장치 |
GB2256735B (en) | 1991-06-12 | 1995-06-21 | Intel Corp | Non-volatile disk cache |
US6230233B1 (en) | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
US5237535A (en) | 1991-10-09 | 1993-08-17 | Intel Corporation | Method of repairing overerased cells in a flash memory |
US5182558A (en) | 1991-10-25 | 1993-01-26 | Halliburton Geophysical Services, Inc. | System for generating correction signals for use in forming low distortion analog signals |
US5388064A (en) | 1991-11-26 | 1995-02-07 | Information Storage Devices, Inc. | Programmable non-volatile analog voltage source devices and methods |
US6222762B1 (en) | 1992-01-14 | 2001-04-24 | Sandisk Corporation | Multi-state memory |
US5657332A (en) | 1992-05-20 | 1997-08-12 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5532962A (en) | 1992-05-20 | 1996-07-02 | Sandisk Corporation | Soft errors handling in EEPROM devices |
JP2816512B2 (ja) | 1992-07-27 | 1998-10-27 | 三菱電機株式会社 | 半導体記憶装置 |
US5479170A (en) | 1992-10-16 | 1995-12-26 | California Institute Of Technology | Method and apparatus for long-term multi-valued storage in dynamic analog memory |
US5473753A (en) | 1992-10-30 | 1995-12-05 | Intel Corporation | Method of managing defects in flash disk memories |
US5416782A (en) | 1992-10-30 | 1995-05-16 | Intel Corporation | Method and apparatus for improving data failure rate testing for memory arrays |
US5416646A (en) | 1992-11-12 | 1995-05-16 | Kabushiki Kaisha Toshiba | Data recording and reproducing apparatus having read/write circuit with programmable parameter means |
US5761402A (en) | 1993-03-08 | 1998-06-02 | Hitachi, Ltd. | Array type disk system updating redundant data asynchronously with data access |
US5784377A (en) | 1993-03-09 | 1998-07-21 | Hubbell Incorporated | Integrated digital loop carrier system with virtual tributary mapper circuit |
US5365484A (en) | 1993-08-23 | 1994-11-15 | Advanced Micro Devices, Inc. | Independent array grounds for flash EEPROM array with paged erase architechture |
US6091639A (en) | 1993-08-27 | 2000-07-18 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device and data programming method |
US5446854A (en) | 1993-10-20 | 1995-08-29 | Sun Microsystems, Inc. | Virtual memory computer apparatus and address translation mechanism employing hashing scheme and page frame descriptor that support multiple page sizes |
GB2289779B (en) | 1994-05-24 | 1999-04-28 | Intel Corp | Method and apparatus for automatically scrubbing ECC errors in memory via hardware |
US5583889A (en) | 1994-07-08 | 1996-12-10 | Zenith Electronics Corporation | Trellis coded modulation system for HDTV |
JPH0877694A (ja) | 1994-09-05 | 1996-03-22 | Yamaha Corp | 操作子装置 |
US5508958A (en) | 1994-09-29 | 1996-04-16 | Intel Corporation | Method and apparatus for sensing the state of floating gate memory cells by applying a variable gate voltage |
EP0709776B1 (en) | 1994-10-31 | 2000-02-23 | STMicroelectronics S.r.l. | Method for detecting and correcting an error in a multilevel memory and memory device implementing the method |
US5694356A (en) | 1994-11-02 | 1997-12-02 | Invoice Technology, Inc. | High resolution analog storage EPROM and flash EPROM |
US5533190A (en) | 1994-12-21 | 1996-07-02 | At&T Global Information Solutions Company | Method for maintaining parity-data consistency in a disk array |
US5541886A (en) | 1994-12-27 | 1996-07-30 | Intel Corporation | Method and apparatus for storing control information in multi-bit non-volatile memory arrays |
US5838832A (en) | 1995-04-03 | 1998-11-17 | Iterated Systems, Inc. | Method and system for representing a data set with a data transforming function and data mask |
WO1996041346A1 (en) | 1995-06-07 | 1996-12-19 | Macronix International Co., Ltd. | Automatic programming algorithm for page mode flash memory with variable programming pulse height and pulse width |
US5860106A (en) | 1995-07-13 | 1999-01-12 | Intel Corporation | Method and apparatus for dynamically adjusting power/performance characteristics of a memory subsystem |
US5801985A (en) | 1995-07-28 | 1998-09-01 | Micron Technology, Inc. | Memory system having programmable control parameters |
US5799200A (en) | 1995-09-28 | 1998-08-25 | Emc Corporation | Power failure responsive apparatus and method having a shadow dram, a flash ROM, an auxiliary battery, and a controller |
US5687114A (en) | 1995-10-06 | 1997-11-11 | Agate Semiconductor, Inc. | Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell |
KR0169412B1 (ko) | 1995-10-16 | 1999-02-01 | 김광호 | 불휘발성 반도체 메모리 장치 |
US5742752A (en) | 1995-12-29 | 1998-04-21 | Symbios Logic Inc. | Method for performing a RAID stripe write operation using a drive XOR command set |
US5675540A (en) | 1996-01-22 | 1997-10-07 | Micron Quantum Devices, Inc. | Non-volatile memory system having internal data verification test mode |
US5682352A (en) | 1996-02-08 | 1997-10-28 | Invoice Technology, Inc. | Digital testing of analog memory devices |
US5867114A (en) | 1996-02-29 | 1999-02-02 | Mitel Corporation | Method and apparatus for performing data compression |
US5748534A (en) | 1996-03-26 | 1998-05-05 | Invox Technology | Feedback loop for reading threshold voltage |
US5748533A (en) | 1996-03-26 | 1998-05-05 | Invoice Technology, Inc. | Read circuit which uses a coarse-to-fine search when reading the threshold voltage of a memory cell |
US5726934A (en) | 1996-04-09 | 1998-03-10 | Information Storage Devices, Inc. | Method and apparatus for analog reading values stored in floating gate structures |
US6073204A (en) | 1997-04-23 | 2000-06-06 | Micron Technology, Inc. | Memory system having flexible architecture and method |
US5815439A (en) | 1996-04-30 | 1998-09-29 | Agate Semiconductor, Inc. | Stabilization circuits and techniques for storage and retrieval of single or multiple digital bits per memory cell |
US5946716A (en) | 1996-05-30 | 1999-08-31 | Hewlett-Packard Company | Sectored virtual memory management system and translation look-aside buffer (TLB) for the same |
JP3202600B2 (ja) | 1996-06-27 | 2001-08-27 | 日本電気株式会社 | 磁気ディスク装置 |
JP3976839B2 (ja) | 1996-07-09 | 2007-09-19 | 株式会社ルネサステクノロジ | 不揮発性メモリシステムおよび不揮発性半導体メモリ |
US6009016A (en) | 1996-07-09 | 1999-12-28 | Hitachi, Ltd. | Nonvolatile memory system semiconductor memory and writing method |
US6134631A (en) | 1996-08-19 | 2000-10-17 | Hyundai Electronics America, Inc. | Non-volatile memory with embedded programmable controller |
US6148360A (en) | 1996-09-20 | 2000-11-14 | Intel Corporation | Nonvolatile writeable memory with program suspend command |
US5864569A (en) | 1996-10-18 | 1999-01-26 | Micron Technology, Inc. | Method and apparatus for performing error correction on data read from a multistate memory |
US5764568A (en) | 1996-10-24 | 1998-06-09 | Micron Quantum Devices, Inc. | Method for performing analog over-program and under-program detection for a multistate memory cell |
WO1998028745A1 (en) | 1996-12-20 | 1998-07-02 | Intel Corporation | Nonvolatile writeable memory with fast programming capability |
US6279069B1 (en) | 1996-12-26 | 2001-08-21 | Intel Corporation | Interface for flash EEPROM memory arrays |
KR100213094B1 (ko) | 1997-02-21 | 1999-08-02 | 윤종용 | 영상 개선장치를 위한 히스토그램 및 cdf 추출방법 및 그 회로 |
US5798966A (en) | 1997-03-31 | 1998-08-25 | Intel Corporation | Flash memory VDS compensation techiques to reduce programming variability |
US6134140A (en) | 1997-05-14 | 2000-10-17 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device with soft-programming to adjust erased state of memory cells |
US5912906A (en) | 1997-06-23 | 1999-06-15 | Sun Microsystems, Inc. | Method and apparatus for recovering from correctable ECC errors |
US6212654B1 (en) | 1997-07-22 | 2001-04-03 | Lucent Technologies Inc. | Coded modulation for digital storage in analog memory devices |
US5930167A (en) | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
US6360346B1 (en) | 1997-08-27 | 2002-03-19 | Sony Corporation | Storage unit, method of checking storage unit, reading and writing method |
US5909449A (en) | 1997-09-08 | 1999-06-01 | Invox Technology | Multibit-per-cell non-volatile memory with error detection and correction |
JP4039532B2 (ja) | 1997-10-02 | 2008-01-30 | 株式会社ルネサステクノロジ | 半導体集積回路装置 |
US6041430A (en) | 1997-11-03 | 2000-03-21 | Sun Microsystems, Inc. | Error detection and correction code for data and check code fields |
US5867429A (en) | 1997-11-19 | 1999-02-02 | Sandisk Corporation | High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates |
US6442585B1 (en) | 1997-11-26 | 2002-08-27 | Compaq Computer Corporation | Method for scheduling contexts based on statistics of memory system interactions in a computer system |
US6034891A (en) | 1997-12-01 | 2000-03-07 | Micron Technology, Inc. | Multi-state flash memory defect management |
US6467062B1 (en) | 1997-12-10 | 2002-10-15 | Mordecai Barkan | Digital data (multi-bit) storage with discrete analog memory cells |
US6040993A (en) | 1998-02-23 | 2000-03-21 | Macronix International Co., Ltd. | Method for programming an analog/multi-level flash EEPROM |
US5969986A (en) | 1998-06-23 | 1999-10-19 | Invox Technology | High-bandwidth read and write architectures for non-volatile memories |
US6026042A (en) | 1998-04-10 | 2000-02-15 | Micron Technology, Inc. | Method and apparatus for enhancing the performance of semiconductor memory devices |
US6397364B1 (en) | 1998-04-20 | 2002-05-28 | Mordecai Barkan | Digital data representation for multi-bit data storage and transmission |
US6009014A (en) | 1998-06-03 | 1999-12-28 | Advanced Micro Devices, Inc. | Erase verify scheme for NAND flash |
US6178466B1 (en) | 1998-06-12 | 2001-01-23 | Unisys Corporation | System for maximizing bandpass on an interface directly coupling two units where the interface has independently operative data and address interconnections, and computer sysem employing same. |
US6208542B1 (en) | 1998-06-30 | 2001-03-27 | Sandisk Corporation | Techniques for storing digital data in an analog or multilevel memory |
DE69828966D1 (de) | 1998-09-15 | 2005-03-17 | St Microelectronics Srl | Verfahren zum Schutz des Inhalts nichtflüchtiger Speicherzellen |
US5995417A (en) | 1998-10-20 | 1999-11-30 | Advanced Micro Devices, Inc. | Scheme for page erase and erase verify in a non-volatile memory array |
US6490200B2 (en) | 2000-03-27 | 2002-12-03 | Sandisk Corporation | Non-volatile memory with improved sensing and method therefor |
JP2000132987A (ja) | 1998-10-28 | 2000-05-12 | Neucore Technol Inc | 不揮発性半導体メモリ装置 |
JP2000173289A (ja) | 1998-12-10 | 2000-06-23 | Toshiba Corp | エラー訂正可能なフラッシュメモリシステム |
US6240458B1 (en) | 1998-12-22 | 2001-05-29 | Unisys Corporation | System and method for programmably controlling data transfer request rates between data sources and destinations in a data processing system |
US6975539B2 (en) | 1999-01-14 | 2005-12-13 | Silicon Storage Technology, Inc. | Digital multilevel non-volatile memory system |
US6956779B2 (en) | 1999-01-14 | 2005-10-18 | Silicon Storage Technology, Inc. | Multistage autozero sensing for a multilevel non-volatile memory integrated circuit system |
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 |
US7031214B2 (en) | 1999-01-14 | 2006-04-18 | Silicon Storage Technology, Inc. | Digital multilevel memory system having multistage autozero sensing |
US6405323B1 (en) | 1999-03-30 | 2002-06-11 | Silicon Storage Technology, Inc. | Defect management for interface to electrically-erasable programmable read-only memory |
JP3620992B2 (ja) | 1999-04-23 | 2005-02-16 | 株式会社 沖マイクロデザイン | 半導体記憶装置 |
US6166962A (en) | 1999-06-24 | 2000-12-26 | Amic Technology, Inc. | Circuit and method for conditioning flash memory array |
US6480948B1 (en) | 1999-06-24 | 2002-11-12 | Cirrus Logic, Inc. | Configurable system memory map |
EP1067547A1 (en) | 1999-06-28 | 2001-01-10 | Hewlett-Packard Company | Data set recovery by codeword overlay |
US6708257B2 (en) | 1999-07-12 | 2004-03-16 | Koninklijke Philips Electronics N.V. | Buffering system bus for external-memory access |
EP1189139B1 (en) | 1999-07-28 | 2007-12-12 | Sony Corporation | Recording system, data recording device, memory device, and data recording method |
EP1074995B1 (en) | 1999-08-03 | 2005-10-26 | STMicroelectronics S.r.l. | Method for programming multi-level non-volatile memories by controlling the gate voltage |
US7457897B1 (en) | 2004-03-17 | 2008-11-25 | Suoer Talent Electronics, Inc. | PCI express-compatible controller and interface for flash memory |
JP3888808B2 (ja) | 1999-08-16 | 2007-03-07 | 富士通株式会社 | Nand型不揮発性メモリ |
US6553510B1 (en) | 1999-09-02 | 2003-04-22 | Micron Technology, Inc. | Memory device including redundancy routine for correcting random errors |
US6405342B1 (en) | 1999-09-10 | 2002-06-11 | Western Digital Technologies, Inc. | Disk drive employing a multiple-input sequence detector responsive to reliability metrics to improve a retry operation |
US6141261A (en) | 1999-12-31 | 2000-10-31 | Patti; Robert | DRAM that stores multiple bits per storage cell |
US6304486B1 (en) | 1999-12-20 | 2001-10-16 | Fujitsu Limited | Sensing time control device and method |
JP2001184881A (ja) | 1999-12-28 | 2001-07-06 | Toshiba Corp | 不揮発性半導体メモリの読み出し回路 |
US7847833B2 (en) | 2001-02-07 | 2010-12-07 | Verisign, Inc. | Digital camera device providing improved methodology for rapidly taking successive pictures |
US6532556B1 (en) | 2000-01-27 | 2003-03-11 | Multi Level Memory Technology | Data management for multi-bit-per-cell memories |
US6259627B1 (en) | 2000-01-27 | 2001-07-10 | Multi Level Memory Technology | Read and write operations using constant row line voltage and variable column line load |
US6363008B1 (en) | 2000-02-17 | 2002-03-26 | Multi Level Memory Technology | Multi-bit-cell non-volatile memory with maximized data capacity |
US6219276B1 (en) | 2000-02-25 | 2001-04-17 | Advanced Micro Devices, Inc. | Multilevel cell programming |
US6615307B1 (en) | 2000-05-10 | 2003-09-02 | Micron Technology, Inc. | Flash with consistent latency for read operations |
JP2001291344A (ja) | 2000-04-04 | 2001-10-19 | Hitachi Ltd | 光ディスク装置およびそのデータ再生方法 |
EP1281241A2 (en) | 2000-04-04 | 2003-02-05 | Advanced Hardware Architectures, Inc | Enhanced turbo product code decoder system |
US6774808B1 (en) | 2000-05-17 | 2004-08-10 | Dell Products L.P. | Electromechanical lock for components |
US7032154B2 (en) | 2000-06-05 | 2006-04-18 | Tyco Telecommunications (Us) Inc. | Concatenated forward error correction decoder |
US6622277B1 (en) | 2000-06-05 | 2003-09-16 | Tyco Telecommunications(Us)Inc. | Concatenated forward error correction decoder |
JP2004502264A (ja) | 2000-06-27 | 2004-01-22 | シーゲイト テクノロジー エルエルシー | 連結された誤り訂正コードを有する磁気記録チャンネル内で不等保護により符号化する方法と装置 |
US6292394B1 (en) | 2000-06-29 | 2001-09-18 | Saifun Semiconductors Ltd. | Method for programming of a semiconductor memory cell |
US7065147B2 (en) | 2000-07-12 | 2006-06-20 | Texas Instruments Incorporated | System and method of data communication using turbo trellis coded modulation combined with constellation shaping with or without precoding |
JP2002042495A (ja) | 2000-07-21 | 2002-02-08 | Mitsubishi Electric Corp | 冗長救済回路、方法および半導体装置 |
JP3595495B2 (ja) | 2000-07-27 | 2004-12-02 | Necマイクロシステム株式会社 | 半導体記憶装置 |
US6396742B1 (en) | 2000-07-28 | 2002-05-28 | Silicon Storage Technology, Inc. | Testing of multilevel semiconductor memory |
US6301151B1 (en) | 2000-08-09 | 2001-10-09 | Information Storage Devices, Inc. | Adaptive programming method and apparatus for flash memory analog storage |
US7113432B2 (en) | 2000-09-14 | 2006-09-26 | Sandisk Corporation | Compressed event counting technique and application to a flash memory system |
US6538922B1 (en) | 2000-09-27 | 2003-03-25 | Sandisk Corporation | Writable tracking cells |
DE60045073D1 (de) | 2000-10-13 | 2010-11-18 | St Microelectronics Srl | Verfahren zum Speichern und Lesen von Daten eines nichtflüchtigen Multibitspeichers mit einer nichtbinären Anzahl von Bits pro Zelle |
US7107480B1 (en) | 2000-12-22 | 2006-09-12 | Simpletech, Inc. | System and method for preventing data corruption in solid-state memory devices after a power failure |
US6349056B1 (en) | 2000-12-28 | 2002-02-19 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US6469931B1 (en) | 2001-01-04 | 2002-10-22 | M-Systems Flash Disk Pioneers Ltd. | Method for increasing information content in a computer memory |
US6687155B2 (en) | 2001-01-11 | 2004-02-03 | Oki Electric Industry Co., Ltd. | Analog storage semiconductor memory that uses plural write voltages and plural read voltages having different voltage levels |
WO2002058069A2 (en) | 2001-01-17 | 2002-07-25 | Honeywell International Inc. | Enhanced memory module architecture |
US6466476B1 (en) | 2001-01-18 | 2002-10-15 | Multi Level Memory Technology | Data coding for multi-bit-per-cell memories having variable numbers of bits per memory cell |
US20020156973A1 (en) | 2001-01-29 | 2002-10-24 | Ulrich Thomas R. | Enhanced disk array |
JP3875570B2 (ja) | 2001-02-20 | 2007-01-31 | 株式会社東芝 | 半導体記憶装置のデータ書き込み方法及び半導体記憶装置 |
US6738289B2 (en) | 2001-02-26 | 2004-05-18 | Sandisk Corporation | Non-volatile memory with improved programming and method therefor |
JP3829088B2 (ja) | 2001-03-29 | 2006-10-04 | 株式会社東芝 | 半導体記憶装置 |
ATE492076T1 (de) | 2001-04-04 | 2011-01-15 | Quellan Inc | Verfahren und system zum decodieren von mehrpegelsignalen |
US6757193B2 (en) | 2001-05-31 | 2004-06-29 | Macronix International Co., Ltd. | Coding method of multi-level memory cell |
WO2002100112A1 (en) | 2001-06-03 | 2002-12-12 | Seelive Ltd. | System and method for rapid video compression |
US6731557B2 (en) | 2001-06-21 | 2004-05-04 | Stmicroelectronics S.R.L. | Method of refreshing an electrically erasable and programmable non-volatile memory |
US7343330B1 (en) | 2001-06-26 | 2008-03-11 | Boesjes Eimar M | Systems and methods for acquisition, evaluation, inventory, distribution, and/or re-sale of pre-owned recorded data products |
US6522580B2 (en) | 2001-06-27 | 2003-02-18 | Sandisk Corporation | Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states |
GB2378277B (en) | 2001-07-31 | 2003-06-25 | Sun Microsystems Inc | Multiple address translations |
US6809964B2 (en) | 2001-08-30 | 2004-10-26 | Micron Technology, Inc. | Nonvolatile semiconductor memory device capable of transferring data internally without using an external bus |
US6456528B1 (en) | 2001-09-17 | 2002-09-24 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US6717847B2 (en) | 2001-09-17 | 2004-04-06 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US7170802B2 (en) | 2003-12-31 | 2007-01-30 | Sandisk Corporation | Flexible and area efficient column redundancy for non-volatile memories |
US6643169B2 (en) | 2001-09-18 | 2003-11-04 | Intel Corporation | Variable level memory |
US6560152B1 (en) | 2001-11-02 | 2003-05-06 | Sandisk Corporation | Non-volatile memory with temperature-compensated data read |
US6678192B2 (en) | 2001-11-02 | 2004-01-13 | Sandisk Corporation | Error management for writable tracking storage units |
US7139325B1 (en) * | 2001-12-07 | 2006-11-21 | Applied Micro Circuits Corporation | System and method for five-level non-causal channel equalization |
US6870770B2 (en) | 2001-12-12 | 2005-03-22 | Micron Technology, Inc. | Method and architecture to calibrate read operations in synchronous flash memory |
US6907497B2 (en) | 2001-12-20 | 2005-06-14 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
US6418060B1 (en) | 2002-01-03 | 2002-07-09 | Ememory Technology Inc. | Method of programming and erasing non-volatile memory cells |
US6542407B1 (en) | 2002-01-18 | 2003-04-01 | Sandisk Corporation | Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells |
US6621739B2 (en) | 2002-01-18 | 2003-09-16 | Sandisk Corporation | Reducing the effects of noise in non-volatile memories through multiple reads |
JP2003257192A (ja) | 2002-03-06 | 2003-09-12 | Mitsubishi Electric Corp | 半導体記憶装置および不揮発性半導体記憶装置 |
US6851018B2 (en) | 2002-03-27 | 2005-02-01 | Hewlett-Packard Development Company, L.P. | Exchanging operation parameters between a data storage device and a controller |
KR100476888B1 (ko) | 2002-04-04 | 2005-03-17 | 삼성전자주식회사 | 온도보상기능을 가진 멀티비트 플래쉬메모리 |
US6707748B2 (en) | 2002-05-07 | 2004-03-16 | Ritek Corporation | Back up power embodied non-volatile memory device |
US6751766B2 (en) | 2002-05-20 | 2004-06-15 | Sandisk Corporation | Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data |
FR2842344A1 (fr) | 2002-07-11 | 2004-01-16 | St Microelectronics Sa | Procede de commande d'une memoire electronique non volatile et dispositif associe |
US6781880B2 (en) | 2002-07-19 | 2004-08-24 | Micron Technology, Inc. | Non-volatile memory erase circuitry |
US6941412B2 (en) | 2002-08-29 | 2005-09-06 | Sandisk Corporation | Symbol frequency leveling in a storage system |
US6781877B2 (en) | 2002-09-06 | 2004-08-24 | Sandisk Corporation | Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells |
US6987693B2 (en) | 2002-09-24 | 2006-01-17 | Sandisk Corporation | Non-volatile memory and method with reduced neighboring field errors |
FR2845227B1 (fr) | 2002-10-01 | 2005-01-14 | Telediffusion De France Tdf | Procede de reception d'un signal module selon une technique de codage multi-niveaux, procede de decodage, dispositif de reception, systeme de codage-decodage et applications correspondant |
US20040083334A1 (en) | 2002-10-28 | 2004-04-29 | Sandisk Corporation | Method and apparatus for managing the integrity of data in non-volatile memory system |
US8412879B2 (en) | 2002-10-28 | 2013-04-02 | Sandisk Technologies Inc. | Hybrid implementation for error correction codes within a non-volatile memory system |
US6963505B2 (en) | 2002-10-29 | 2005-11-08 | Aifun Semiconductors Ltd. | Method circuit and system for determining a reference voltage |
US7136304B2 (en) | 2002-10-29 | 2006-11-14 | Saifun Semiconductor Ltd | Method, system and circuit for programming a non-volatile memory array |
US6992932B2 (en) | 2002-10-29 | 2006-01-31 | Saifun Semiconductors Ltd | Method circuit and system for read error detection in a non-volatile memory array |
US7218255B1 (en) | 2002-12-04 | 2007-05-15 | Marvell International Ltd. | Methods and apparatus for improving minimum Hamming weights of a sequence |
US7073103B2 (en) | 2002-12-05 | 2006-07-04 | Sandisk Corporation | Smart verify for multi-state memories |
US6882567B1 (en) | 2002-12-06 | 2005-04-19 | Multi Level Memory Technology | Parallel programming of multiple-bit-per-cell memory cells on a continuous word line |
US7158058B1 (en) | 2002-12-09 | 2007-01-02 | Marvell International Ltd. | Method and apparatus for generating a seed set in a data dependent seed selector |
US6829167B2 (en) | 2002-12-12 | 2004-12-07 | Sandisk Corporation | Error recovery for nonvolatile memory |
US6836435B2 (en) | 2002-12-13 | 2004-12-28 | Freescale Semiconductor, Inc. | Compaction scheme in NVM |
DE10300781B4 (de) | 2003-01-11 | 2014-02-06 | Qimonda Ag | Speicherbaustein, Testsystem und Verfahren zum Testen eines oder mehrerer Speicherbausteine |
JP2004253038A (ja) | 2003-02-19 | 2004-09-09 | Renesas Technology Corp | 半導体記憶装置 |
US7469049B1 (en) | 2003-03-04 | 2008-12-23 | Marvell International Ltd. | Data dependent scrambler with reduced overhead |
JP5140235B2 (ja) | 2003-03-19 | 2013-02-06 | 富士通セミコンダクター株式会社 | 半導体装置 |
US7002821B2 (en) | 2003-04-11 | 2006-02-21 | Gerpheide George E | Zero drift analog memory cell, array and method of operation |
JP3913704B2 (ja) | 2003-04-22 | 2007-05-09 | 株式会社東芝 | 不揮発性半導体記憶装置及びこれを用いた電子装置 |
US6975542B2 (en) | 2003-05-08 | 2005-12-13 | Micron Technology, Inc. | NAND flash memory with improved read and verification threshold uniformity |
JP3970283B2 (ja) | 2003-05-20 | 2007-09-05 | 富士通株式会社 | Lsiパッケージ及びlsi素子の試験方法及び半導体装置の製造方法 |
JP2004348817A (ja) | 2003-05-20 | 2004-12-09 | Sharp Corp | 半導体記憶装置、そのページバッファリソース割当方法及び回路、コンピュータシステム並びに携帯電子機器 |
US6845052B1 (en) | 2003-05-30 | 2005-01-18 | Macronix International Co., Ltd. | Dual reference cell sensing scheme for non-volatile memory |
US7254690B2 (en) | 2003-06-02 | 2007-08-07 | S. Aqua Semiconductor Llc | Pipelined semiconductor memories and systems |
US7372731B2 (en) | 2003-06-17 | 2008-05-13 | Sandisk Il Ltd. | Flash memories with adaptive reference voltages |
US7023735B2 (en) | 2003-06-17 | 2006-04-04 | Ramot At Tel-Aviv University Ltd. | Methods of increasing the reliability of a flash memory |
US6988175B2 (en) | 2003-06-30 | 2006-01-17 | M-Systems Flash Disk Pioneers Ltd. | Flash memory management method that is resistant to data corruption by power loss |
ATE443330T1 (de) | 2003-07-30 | 2009-10-15 | Sandisk Il Ltd | Verfahren und system zur optimierung von zuverlässigkeit und leistungsfähigkeit von programmierdaten in nichtflüchtigen speicherbausteinen |
US6903972B2 (en) | 2003-07-30 | 2005-06-07 | M-Systems Flash Disk Pioneers Ltd. | Different methods applied for archiving data according to their desired lifetime |
US7471552B2 (en) | 2003-08-04 | 2008-12-30 | Ovonyx, Inc. | Analog phase change memory |
ITUD20030167A1 (it) * | 2003-08-08 | 2005-02-09 | De Longhi Spa | Raccordo coassiale a giunto. |
JP2005092923A (ja) | 2003-09-12 | 2005-04-07 | Renesas Technology Corp | 半導体記憶装置 |
US7064980B2 (en) | 2003-09-17 | 2006-06-20 | Sandisk Corporation | Non-volatile memory and method with bit line coupled compensation |
US7197594B2 (en) | 2003-09-23 | 2007-03-27 | Infineon Technologies Flash Gmbh & Co. Kg | Circuit, system and method for encoding data to be stored on a non-volatile memory array |
US7057958B2 (en) | 2003-09-30 | 2006-06-06 | Sandisk Corporation | Method and system for temperature compensation for memory cells with temperature-dependent behavior |
US7012835B2 (en) | 2003-10-03 | 2006-03-14 | Sandisk Corporation | Flash memory data correction and scrub techniques |
US6930925B2 (en) | 2003-10-14 | 2005-08-16 | Atmel Corporation | Suspend-resume programming method for flash memory |
US7356755B2 (en) | 2003-10-16 | 2008-04-08 | Intel Corporation | Error correction for multi-level cell memory with overwrite capability |
US7177199B2 (en) | 2003-10-20 | 2007-02-13 | Sandisk Corporation | Behavior based programming of non-volatile memory |
US7301807B2 (en) | 2003-10-23 | 2007-11-27 | Sandisk Corporation | Writable tracking cells |
US7433697B2 (en) | 2003-10-24 | 2008-10-07 | Broadcom Corporation | Synchronized UWB piconets for Simultaneously Operating Piconet performance |
KR100542701B1 (ko) | 2003-11-18 | 2006-01-11 | 주식회사 하이닉스반도체 | 낸드 플래시 메모리 소자의 문턱전압 측정 방법 |
US20090204872A1 (en) | 2003-12-02 | 2009-08-13 | Super Talent Electronics Inc. | Command Queuing Smart Storage Transfer Manager for Striping Data to Raw-NAND Flash Modules |
US20090193184A1 (en) | 2003-12-02 | 2009-07-30 | Super Talent Electronics Inc. | Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System |
JP4319532B2 (ja) | 2003-12-03 | 2009-08-26 | 富士フイルム株式会社 | 帯状体の加熱方法および帯状体加熱装置 |
KR100646940B1 (ko) | 2003-12-15 | 2006-11-17 | 주식회사 하이닉스반도체 | 낮은 첨두 전류치를 가지는 리프레시 제어기 |
US7363420B2 (en) | 2003-12-15 | 2008-04-22 | Nortel Networks Limited | Method and file structures for managing data on a flash disk |
US7657706B2 (en) | 2003-12-18 | 2010-02-02 | Cisco Technology, Inc. | High speed memory and input/output processor subsystem for efficiently allocating and using high-speed memory and slower-speed memory |
US7631138B2 (en) | 2003-12-30 | 2009-12-08 | Sandisk Corporation | Adaptive mode switching of flash memory address mapping based on host usage characteristics |
US6937520B2 (en) | 2004-01-21 | 2005-08-30 | Tsuyoshi Ono | Nonvolatile semiconductor memory device |
US7372730B2 (en) | 2004-01-26 | 2008-05-13 | Sandisk Corporation | Method of reading NAND memory to compensate for coupling between storage elements |
US6937511B2 (en) | 2004-01-27 | 2005-08-30 | Macronix International Co., Ltd. | Circuit and method for programming charge storage memory cells |
US7002843B2 (en) | 2004-01-27 | 2006-02-21 | Sandisk Corporation | Variable current sinking for coarse/fine programming of non-volatile memory |
US7139198B2 (en) | 2004-01-27 | 2006-11-21 | Sandisk Corporation | Efficient verification for coarse/fine programming of non-volatile memory |
US7068539B2 (en) | 2004-01-27 | 2006-06-27 | Sandisk Corporation | Charge packet metering for coarse/fine programming of non-volatile memory |
US7151692B2 (en) | 2004-01-27 | 2006-12-19 | Macronix International Co., Ltd. | Operation scheme for programming charge trapping non-volatile memory |
US7210077B2 (en) | 2004-01-29 | 2007-04-24 | Hewlett-Packard Development Company, L.P. | System and method for configuring a solid-state storage device with error correction coding |
US7266069B2 (en) | 2004-02-06 | 2007-09-04 | Via Technologies, Inc., | Method and apparatus for retry calculation in an optical disk device |
US7177200B2 (en) | 2004-02-10 | 2007-02-13 | Msystems Ltd. | Two-phase programming of a flash memory |
US7716413B2 (en) | 2004-02-15 | 2010-05-11 | Sandisk Il Ltd. | Method of making a multi-bit-cell flash memory |
KR100525004B1 (ko) | 2004-02-26 | 2005-10-31 | 삼성전자주식회사 | 멀티레벨 셀(Multi-level cell)플래쉬메모리장치 및 이의 프로그램 방법 |
US7310347B2 (en) | 2004-03-14 | 2007-12-18 | Sandisk, Il Ltd. | States encoding in multi-bit flash cells |
US20050213393A1 (en) | 2004-03-14 | 2005-09-29 | M-Systems Flash Disk Pioneers, Ltd. | States encoding in multi-bit flash cells for optimizing error rate |
US7071849B2 (en) | 2004-04-04 | 2006-07-04 | Guobiao Zhang | Fractional-Bit Systems |
US7020017B2 (en) | 2004-04-06 | 2006-03-28 | Sandisk Corporation | Variable programming of non-volatile memory |
US7325090B2 (en) | 2004-04-29 | 2008-01-29 | Sandisk Il Ltd. | Refreshing data stored in a flash memory |
DE102004021267B4 (de) | 2004-04-30 | 2008-04-17 | Infineon Technologies Ag | Verfahren zum Testen eines Speicherbausteins und Prüfanordnung |
WO2005111812A1 (ja) | 2004-05-19 | 2005-11-24 | Matsushita Electric Industrial Co., Ltd. | 不揮発性記憶装置のためのエラー訂正方法 |
US7231474B1 (en) | 2004-06-01 | 2007-06-12 | Advanced Micro Devices, Inc. | Serial interface having a read temperature command |
US7447970B2 (en) | 2004-06-16 | 2008-11-04 | Seagate Technology, Inc. | Soft-decision decoding using selective bit flipping |
US7190614B2 (en) | 2004-06-17 | 2007-03-13 | Macronix International Co., Ltd. | Operation scheme for programming charge trapping non-volatile memory |
KR100546415B1 (ko) | 2004-06-25 | 2006-01-26 | 삼성전자주식회사 | 메모리 장치의 파워 노이즈를 방지하는 직렬 웨이크 업 회로 |
US7665007B2 (en) | 2004-06-30 | 2010-02-16 | Seagate Technology, Llc | Retrial and reread methods and apparatus for recording channels |
US7196644B1 (en) | 2004-07-01 | 2007-03-27 | Seagate Technology Llc | Decoupling of analog input and digital output |
US7042766B1 (en) | 2004-07-22 | 2006-05-09 | Spansion, Llc | Method of programming a flash memory device using multilevel charge storage |
US7817469B2 (en) * | 2004-07-26 | 2010-10-19 | Sandisk Il Ltd. | Drift compensation in a flash memory |
US7180775B2 (en) | 2004-08-05 | 2007-02-20 | Msystems Ltd. | Different numbers of bits per cell in non-volatile memory devices |
US7797609B2 (en) | 2004-08-19 | 2010-09-14 | Unisys Corporation | Apparatus and method for merging data blocks with error correction code protection |
JPWO2006025083A1 (ja) | 2004-08-30 | 2008-07-31 | スパンション エルエルシー | 半導体装置、半導体装置の試験方法およびデータ書き込み方法 |
US7200062B2 (en) | 2004-08-31 | 2007-04-03 | Micron Technology, Inc. | Method and system for reducing the peak current in refreshing dynamic random access memory devices |
US7254763B2 (en) | 2004-09-01 | 2007-08-07 | Agere Systems Inc. | Built-in self test for memory arrays using error correction coding |
JP2006115145A (ja) | 2004-10-14 | 2006-04-27 | Nec Electronics Corp | 復号装置及び復号方法 |
US7409623B2 (en) | 2004-11-04 | 2008-08-05 | Sigmatel, Inc. | System and method of reading non-volatile computer memory |
JP4261462B2 (ja) | 2004-11-05 | 2009-04-30 | 株式会社東芝 | 不揮発性メモリシステム |
US7493457B2 (en) | 2004-11-08 | 2009-02-17 | Sandisk Il. Ltd | States encoding in multi-bit flash cells for optimizing error rate |
JP4410188B2 (ja) | 2004-11-12 | 2010-02-03 | 株式会社東芝 | 半導体記憶装置のデータ書き込み方法 |
KR100694418B1 (ko) | 2004-11-15 | 2007-03-12 | 주식회사 하이닉스반도체 | 메모리 장치의 병렬 압축 테스트 회로 |
US7441067B2 (en) | 2004-11-15 | 2008-10-21 | Sandisk Corporation | Cyclic flash memory wear leveling |
US7173859B2 (en) | 2004-11-16 | 2007-02-06 | Sandisk Corporation | Faster programming of higher level states in multi-level cell flash memory |
US7392428B2 (en) | 2004-11-19 | 2008-06-24 | International Business Machines Corporation | Method and system for recovering from abnormal interruption of a parity update operation in a disk array system |
JP4734906B2 (ja) | 2004-12-07 | 2011-07-27 | ソニー株式会社 | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム |
JP4786171B2 (ja) | 2004-12-10 | 2011-10-05 | 株式会社東芝 | 半導体記憶装置 |
US7120051B2 (en) | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
US7420847B2 (en) | 2004-12-14 | 2008-09-02 | Sandisk Corporation | Multi-state memory having data recovery after program fail |
US7558839B1 (en) | 2004-12-14 | 2009-07-07 | Netapp, Inc. | Read-after-write verification for improved write-once-read-many data storage |
KR100664933B1 (ko) | 2004-12-15 | 2007-01-04 | 삼성전자주식회사 | 비휘발성 저장장치에 멀티미디어 데이터를 블록 단위로저장하는 방법 및 장치 |
US7409473B2 (en) | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
US7849381B2 (en) | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7437653B2 (en) | 2004-12-22 | 2008-10-14 | Sandisk Corporation | Erased sector detection mechanisms |
US7230851B2 (en) | 2004-12-23 | 2007-06-12 | Sandisk Corporation | Reducing floating gate to floating gate coupling effect |
US7308525B2 (en) | 2005-01-10 | 2007-12-11 | Sandisk Il Ltd. | Method of managing a multi-bit cell flash memory with improved reliablility and performance |
US7130210B2 (en) | 2005-01-13 | 2006-10-31 | Spansion Llc | Multi-level ONO flash program algorithm for threshold width control |
KR100604930B1 (ko) | 2005-01-19 | 2006-07-28 | 삼성전자주식회사 | 디스크 드라이브의 어드레스 변환 방법 및 그 방법을사용하는 디스크 드라이브 |
US7725779B2 (en) | 2005-01-25 | 2010-05-25 | Ternarylogic Llc | Multi-valued scrambling and descrambling of digital data on optical disks and other storage media |
US7421598B2 (en) | 2005-02-09 | 2008-09-02 | International Business Machines Corporation | Dynamic power management via DIMM read operation limiter |
US7221592B2 (en) | 2005-02-25 | 2007-05-22 | Micron Technology, Inc. | Multiple level programming in a non-volatile memory device |
US7379368B2 (en) | 2005-02-25 | 2008-05-27 | Frankfurt Gmbh, Llc | Method and system for reducing volatile DRAM power budget |
US7224604B2 (en) | 2005-03-14 | 2007-05-29 | Sandisk Il Ltd. | Method of achieving wear leveling in flash memory using relative grades |
US7574555B2 (en) | 2005-03-18 | 2009-08-11 | Emc Corporation | Memory system having daisy chained memory controllers |
US7627712B2 (en) | 2005-03-22 | 2009-12-01 | Sigmatel, Inc. | Method and system for managing multi-plane memory devices |
US7430138B2 (en) | 2005-03-31 | 2008-09-30 | Sandisk Corporation | Erasing non-volatile memory utilizing changing word line conditions to compensate for slower erasing memory cells |
JP2006286118A (ja) | 2005-04-01 | 2006-10-19 | Matsushita Electric Ind Co Ltd | 閾値電圧制御機能を有する不揮発性記憶装置 |
US7187585B2 (en) | 2005-04-05 | 2007-03-06 | Sandisk Corporation | Read operation for non-volatile storage that includes compensation for coupling |
US7196946B2 (en) | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling in non-volatile storage |
US7196928B2 (en) | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling during read operations of non-volatile memory |
KR100680479B1 (ko) | 2005-04-11 | 2007-02-08 | 주식회사 하이닉스반도체 | 비휘발성 메모리 장치의 프로그램 검증 방법 |
KR100754894B1 (ko) | 2005-04-20 | 2007-09-04 | 삼성전자주식회사 | 더미 메모리 셀을 가지는 낸드 플래시 메모리 장치 |
US7596707B1 (en) | 2005-05-06 | 2009-09-29 | Sun Microsystems, Inc. | System and method for efficient power throttling in multiprocessor chip |
US7370261B2 (en) | 2005-05-09 | 2008-05-06 | International Business Machines Corporation | Convolution-encoded raid with trellis-decode-rebuild |
US7269066B2 (en) | 2005-05-11 | 2007-09-11 | Micron Technology, Inc. | Programming memory devices |
US7793037B2 (en) | 2005-05-31 | 2010-09-07 | Intel Corporation | Partial page scheme for memory technologies |
US7353361B2 (en) | 2005-06-06 | 2008-04-01 | International Business Machines Corporation | Page replacement policy for systems having multiple page sizes |
ITRM20050310A1 (it) | 2005-06-15 | 2006-12-16 | Micron Technology Inc | Convergenza a programmazione selettiva lenta in un dispositivo di memoria flash. |
US7239557B2 (en) | 2005-06-17 | 2007-07-03 | Micron Technology, Inc. | Program method with optimized voltage level for flash memory |
US7193898B2 (en) | 2005-06-20 | 2007-03-20 | Sandisk Corporation | Compensation currents in non-volatile memory read operations |
JP4282636B2 (ja) | 2005-06-22 | 2009-06-24 | 株式会社東芝 | 不揮発性半導体記憶装置とそのデータ書き込み方法 |
KR100719368B1 (ko) | 2005-06-27 | 2007-05-17 | 삼성전자주식회사 | 플래시 메모리 장치의 적응적 프로그램 방법 및 장치 |
KR100694968B1 (ko) | 2005-06-30 | 2007-03-14 | 주식회사 하이닉스반도체 | 비휘발성 메모리 장치와 그것의 멀티-페이지 프로그램,독출 및 카피백 프로그램 방법 |
KR100609621B1 (ko) | 2005-07-19 | 2006-08-08 | 삼성전자주식회사 | 메모리 블락별로 레이턴시 제어가 가능한 동기식 반도체메모리 장치 |
JP4728726B2 (ja) | 2005-07-25 | 2011-07-20 | 株式会社東芝 | 半導体記憶装置 |
KR100712596B1 (ko) | 2005-07-25 | 2007-04-30 | 삼성전자주식회사 | 플래시 메모리 장치의 리페어 및 트리밍 방법 및 장치 |
US7660183B2 (en) | 2005-08-01 | 2010-02-09 | Rambus Inc. | Low power memory device |
US7502921B2 (en) | 2005-08-02 | 2009-03-10 | Sandisk Corporation | Situation sensitive memory performance |
JP2007059024A (ja) | 2005-08-26 | 2007-03-08 | Micron Technol Inc | 温度補償された読み出し・検証動作をフラッシュ・メモリにおいて生成するための方法及び装置 |
US7292476B2 (en) | 2005-08-31 | 2007-11-06 | Micron Technology, Inc. | Programming method for NAND EEPROM |
JP2007066459A (ja) | 2005-09-01 | 2007-03-15 | Matsushita Electric Ind Co Ltd | 不揮発性半導体記憶装置及びその書き換え方法 |
US7853749B2 (en) | 2005-09-01 | 2010-12-14 | Cypress Semiconductor Corporation | Flash drive fast wear leveling |
US7752382B2 (en) | 2005-09-09 | 2010-07-06 | Sandisk Il Ltd | Flash memory storage system and method |
KR100705220B1 (ko) | 2005-09-15 | 2007-04-06 | 주식회사 하이닉스반도체 | 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법 |
JP4410178B2 (ja) | 2005-09-22 | 2010-02-03 | 富士通株式会社 | Raid装置におけるライトバック方法 |
US7631245B2 (en) | 2005-09-26 | 2009-12-08 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
US7328384B1 (en) | 2005-09-29 | 2008-02-05 | Xilinx, Inc. | Method and apparatus using device defects as an identifier |
US7644347B2 (en) | 2005-09-30 | 2010-01-05 | Intel Corporation | Silent data corruption mitigation using error correction code with embedded signaling fault detection |
US7661054B2 (en) | 2005-09-30 | 2010-02-09 | Intel Corporation | Methods and arrangements to remap degraded storage blocks |
US7529905B2 (en) | 2005-10-13 | 2009-05-05 | Sandisk Corporation | Method of storing transformed units of data in a memory system having fixed sized storage blocks |
US7681109B2 (en) | 2005-10-13 | 2010-03-16 | Ramot At Tel Aviv University Ltd. | Method of error correction in MBC flash memory |
CN101529525B (zh) | 2005-10-17 | 2016-03-30 | 特拉维夫大学拉莫特有限公司 | 每单元多位的闪速存储器的概率错误校正 |
US7526715B2 (en) | 2005-10-17 | 2009-04-28 | Ramot At Tel Aviv University Ltd. | Probabilistic error correction in multi-bit-per-cell flash memory |
US7954037B2 (en) | 2005-10-25 | 2011-05-31 | Sandisk Il Ltd | Method for recovering from errors in flash memory |
KR100660544B1 (ko) | 2005-10-25 | 2006-12-22 | 삼성전자주식회사 | 신뢰성을 향상시킬 수 있는 플래시 메모리 장치 |
US7301817B2 (en) | 2005-10-27 | 2007-11-27 | Sandisk Corporation | Method for programming of multi-state non-volatile memory using smart verify |
US7447066B2 (en) | 2005-11-08 | 2008-11-04 | Sandisk Corporation | Memory with retargetable memory cell redundancy |
US8218546B2 (en) | 2005-11-10 | 2012-07-10 | Broadcom Corporation | Interleaved processing of dropped packets in a network device |
US7289344B2 (en) | 2005-11-10 | 2007-10-30 | Sandisk Corporation | Reverse coupling effect with timing information for non-volatile memory |
US7739472B2 (en) | 2005-11-22 | 2010-06-15 | Sandisk Corporation | Memory system for legacy hosts |
US7497181B2 (en) | 2005-11-30 | 2009-03-03 | Autotether, Inc | Sailboat safety system for a person falling overboard |
US20070143531A1 (en) | 2005-12-15 | 2007-06-21 | Atri Sunil R | Power loss recovery for bit alterable memory |
US20070143378A1 (en) | 2005-12-21 | 2007-06-21 | Gorobets Sergey A | Non-volatile memories with adaptive file handling in a directly mapped file storage system |
US7310255B2 (en) | 2005-12-29 | 2007-12-18 | Sandisk Corporation | Non-volatile memory with improved program-verify operations |
US7349260B2 (en) | 2005-12-29 | 2008-03-25 | Sandisk Corporation | Alternate row-based reading and writing for non-volatile memory |
KR100684907B1 (ko) | 2006-01-09 | 2007-02-22 | 삼성전자주식회사 | 파워 업 시에 피크 전류를 줄이는 멀티 칩 패키지 |
KR100683856B1 (ko) | 2006-01-12 | 2007-02-15 | 삼성전자주식회사 | 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리의 프로그램 방법 |
KR100683858B1 (ko) | 2006-01-12 | 2007-02-15 | 삼성전자주식회사 | 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리의 프로그램 방법 |
US7783955B2 (en) | 2006-01-18 | 2010-08-24 | Sandisk Il Ltd. | Method for implementing error-correction codes in flash memory |
US7844879B2 (en) | 2006-01-20 | 2010-11-30 | Marvell World Trade Ltd. | Method and system for error correction in flash memory |
US8055979B2 (en) | 2006-01-20 | 2011-11-08 | Marvell World Trade Ltd. | Flash memory with coding and signal processing |
KR100732631B1 (ko) | 2006-02-01 | 2007-06-27 | 삼성전자주식회사 | 전하 손실로 인해 감소된 읽기 마진을 보상할 수 있는플래시 메모리 장치의 프로그램 방법 |
US7400532B2 (en) | 2006-02-16 | 2008-07-15 | Micron Technology, Inc. | Programming method to reduce gate coupling interference for non-volatile memory |
US7408810B2 (en) | 2006-02-22 | 2008-08-05 | Micron Technology, Inc. | Minimizing effects of program disturb in a memory device |
US20070208904A1 (en) | 2006-03-03 | 2007-09-06 | Wu-Han Hsieh | Wear leveling method and apparatus for nonvolatile memory |
US7436733B2 (en) | 2006-03-03 | 2008-10-14 | Sandisk Corporation | System for performing read operation on non-volatile storage with compensation for coupling |
US7388781B2 (en) | 2006-03-06 | 2008-06-17 | Sandisk Il Ltd. | Multi-bit-per-cell flash memory device with non-bijective mapping |
US7929549B1 (en) | 2006-03-06 | 2011-04-19 | Advanced Micro Devices, Inc. | Method and apparatus for scrambling data for control of high-speed bidirectional signaling |
US7810017B2 (en) | 2006-03-20 | 2010-10-05 | Micron Technology, Inc. | Variable sector-count ECC |
US8091009B2 (en) | 2006-03-23 | 2012-01-03 | Broadcom Corporation | Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise |
US7561469B2 (en) | 2006-03-28 | 2009-07-14 | Micron Technology, Inc. | Programming method to reduce word line to word line breakdown for NAND flash |
US7551492B2 (en) | 2006-03-29 | 2009-06-23 | Mosaid Technologies, Inc. | Non-volatile semiconductor memory with page erase |
US7680987B1 (en) | 2006-03-29 | 2010-03-16 | Emc Corporation | Sub-page-granular cache coherency using shared virtual memory mechanism |
KR100763353B1 (ko) | 2006-04-26 | 2007-10-04 | 삼성전자주식회사 | 인접하는 메모리셀과의 커플링 노이즈를 저감시키는불휘발성 반도체 메모리 장치 |
US7433231B2 (en) | 2006-04-26 | 2008-10-07 | Micron Technology, Inc. | Multiple select gates with non-volatile memory cells |
US8560829B2 (en) | 2006-05-09 | 2013-10-15 | Broadcom Corporation | Method and system for command interface protection to achieve a secure interface |
KR100766241B1 (ko) | 2006-05-10 | 2007-10-10 | 주식회사 하이닉스반도체 | 플래쉬 메모리 소자의 프로그램 방법 |
DE102006021731B4 (de) | 2006-05-10 | 2015-07-30 | Peri Gmbh | Verfahren zur Herstellung eines Gitterträgers aus Holz für den Baubereich |
WO2007132452A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
WO2007132458A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device programming using combined shaping and linear spreading |
CN103258572B (zh) | 2006-05-12 | 2016-12-07 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
WO2007132456A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device with adaptive capacity |
US7551486B2 (en) | 2006-05-15 | 2009-06-23 | Apple Inc. | Iterative memory cell charging based on reference cell value |
US7568135B2 (en) | 2006-05-15 | 2009-07-28 | Apple Inc. | Use of alternative value in cell detection |
US7613043B2 (en) | 2006-05-15 | 2009-11-03 | Apple Inc. | Shifting reference values to account for voltage sag |
US8185711B2 (en) | 2006-05-16 | 2012-05-22 | Samsung Electronics Co., Ltd. | Memory module, a memory system including a memory controller and a memory module and methods thereof |
US7882320B2 (en) | 2006-05-23 | 2011-02-01 | Dataram, Inc. | Multi-processor flash memory storage device and management system |
US7440331B2 (en) | 2006-06-01 | 2008-10-21 | Sandisk Corporation | Verify operation for non-volatile storage using different voltages |
US7457163B2 (en) | 2006-06-01 | 2008-11-25 | Sandisk Corporation | System for verifying non-volatile storage using different voltages |
US7450421B2 (en) | 2006-06-02 | 2008-11-11 | Sandisk Corporation | Data pattern sensitivity compensation using different voltage |
US7310272B1 (en) | 2006-06-02 | 2007-12-18 | Sandisk Corporation | System for performing data pattern sensitivity compensation using different voltage |
US7952922B2 (en) | 2006-06-06 | 2011-05-31 | Micron Technology, Inc. | Method for programming a non-volatile memory device to reduce floating-gate-to-floating-gate coupling effect |
US20070291571A1 (en) | 2006-06-08 | 2007-12-20 | Intel Corporation | Increasing the battery life of a mobile computing system in a reduced power state through memory compression |
US7342831B2 (en) | 2006-06-16 | 2008-03-11 | Sandisk Corporation | System for operating non-volatile memory using temperature compensation of voltages of unselected word lines and select gates |
US7486561B2 (en) | 2006-06-22 | 2009-02-03 | Sandisk Corporation | Method for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages |
US7742351B2 (en) | 2006-06-30 | 2010-06-22 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor device and electronic device |
US7721059B2 (en) | 2006-07-06 | 2010-05-18 | Nokia Corporation | Performance optimization in solid-state media |
US7894269B2 (en) | 2006-07-20 | 2011-02-22 | Sandisk Corporation | Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells |
US7885119B2 (en) | 2006-07-20 | 2011-02-08 | Sandisk Corporation | Compensating for coupling during programming |
KR100744013B1 (ko) | 2006-07-31 | 2007-07-30 | 삼성전자주식회사 | 플래시 메모리 장치 및 그것의 소거 방법 |
US7567461B2 (en) | 2006-08-18 | 2009-07-28 | Micron Technology, Inc. | Method and system for minimizing number of programming pulses used to program rows of non-volatile memory cells |
US8060806B2 (en) | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
US20080052446A1 (en) | 2006-08-28 | 2008-02-28 | Sandisk Il Ltd. | Logical super block mapping for NAND flash memory |
US7280398B1 (en) | 2006-08-31 | 2007-10-09 | Micron Technology, Inc. | System and memory for sequential multi-plane page memory operations |
KR100771883B1 (ko) | 2006-09-06 | 2007-11-01 | 삼성전자주식회사 | 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법 |
US7593259B2 (en) | 2006-09-13 | 2009-09-22 | Mosaid Technologies Incorporated | Flash multi-level threshold distribution scheme |
JP4331189B2 (ja) | 2006-09-20 | 2009-09-16 | 株式会社東芝 | 不揮発性半導体メモリ |
US7904783B2 (en) | 2006-09-28 | 2011-03-08 | Sandisk Corporation | Soft-input soft-output decoder for nonvolatile memory |
US7761624B2 (en) | 2006-09-28 | 2010-07-20 | Virident Systems, Inc. | Systems and apparatus for main memory with non-volatile type memory modules, and related technologies |
US7573744B2 (en) | 2006-09-29 | 2009-08-11 | Kabushiki Kaisha Toshiba | Semiconductor memory device having different capacity areas |
KR100764749B1 (ko) | 2006-10-03 | 2007-10-08 | 삼성전자주식회사 | 멀티-칩 패키지 플래시 메모리 장치 및 그것의 카피 백방법 |
US7365671B1 (en) | 2006-10-10 | 2008-04-29 | Seagate Technology Llc | Communication channel with undersampled interpolative timing recovery |
US7594093B1 (en) | 2006-10-12 | 2009-09-22 | Foundry Networks, Inc. | Virtual memory mapping for efficient memory usage |
CN101601094B (zh) | 2006-10-30 | 2013-03-27 | 苹果公司 | 使用多个门限读取存储单元的方法 |
WO2008053472A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
KR100771521B1 (ko) | 2006-10-30 | 2007-10-30 | 삼성전자주식회사 | 멀티 레벨 셀을 포함하는 플래시 메모리 장치 및 그것의데이터 쓰기 방법 |
US8145941B2 (en) | 2006-10-31 | 2012-03-27 | Hewlett-Packard Development Company, L.P. | Detection and correction of block-level data corruption in fault-tolerant data-storage systems |
US7468911B2 (en) | 2006-11-02 | 2008-12-23 | Sandisk Corporation | Non-volatile memory using multiple boosting modes for reduced program disturb |
KR100789406B1 (ko) | 2006-11-03 | 2007-12-28 | 삼성전자주식회사 | 플래시 메모리 시스템 및 그것의 가비지 컬렉션 방법 |
US7558109B2 (en) | 2006-11-03 | 2009-07-07 | Sandisk Corporation | Nonvolatile memory with variable read threshold |
US7508710B2 (en) | 2006-11-13 | 2009-03-24 | Sandisk Corporation | Operating non-volatile memory with boost structures |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US7706182B2 (en) | 2006-12-03 | 2010-04-27 | Anobit Technologies Ltd. | Adaptive programming of analog memory cells using statistical characteristics |
US7900102B2 (en) | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US7593263B2 (en) | 2006-12-17 | 2009-09-22 | Anobit Technologies Ltd. | Memory device with reduced reading latency |
US7539062B2 (en) | 2006-12-20 | 2009-05-26 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
CN100576357C (zh) | 2006-12-21 | 2009-12-30 | 中芯国际集成电路制造(上海)有限公司 | 减小存储单元写入扰乱的方法 |
US8370561B2 (en) | 2006-12-24 | 2013-02-05 | Sandisk Il Ltd. | Randomizing for suppressing errors in a flash memory |
US8127200B2 (en) | 2006-12-24 | 2012-02-28 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
KR101087308B1 (ko) | 2006-12-27 | 2011-11-25 | 인텔 코오퍼레이션 | 비휘발성 메모리에 대한 초기 웨어 레벨링 |
US7570520B2 (en) | 2006-12-27 | 2009-08-04 | Sandisk Corporation | Non-volatile storage system with initial programming voltage based on trial |
WO2008083131A2 (en) | 2006-12-27 | 2008-07-10 | Sandisk Corporation | Method for programming with initial programming voltage based on trial |
US7619918B2 (en) | 2006-12-29 | 2009-11-17 | Intel Corporation | Apparatus, method, and system for flash memory |
US7616498B2 (en) | 2006-12-29 | 2009-11-10 | Sandisk Corporation | Non-volatile storage system with resistance sensing and compensation |
US7440324B2 (en) | 2006-12-29 | 2008-10-21 | Sandisk Corporation | Apparatus with alternating read mode |
US7590002B2 (en) | 2006-12-29 | 2009-09-15 | Sandisk Corporation | Resistance sensing and compensation for non-volatile storage |
US7564722B2 (en) | 2007-01-22 | 2009-07-21 | Micron Technology, Inc. | Memory system and method having volatile and non-volatile memory devices at same hierarchical level |
US7751240B2 (en) | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
JP4498370B2 (ja) | 2007-02-14 | 2010-07-07 | 株式会社東芝 | データ書き込み方法 |
CN101715595A (zh) | 2007-03-12 | 2010-05-26 | 爱诺彼得技术有限责任公司 | 存储器单元读取阈的自适应估计 |
JP2008251138A (ja) | 2007-03-30 | 2008-10-16 | Toshiba Corp | 不揮発性半導体メモリ、不揮発性半導体メモリの制御方法、不揮発性半導体メモリシステム、及びメモリカード |
WO2008124760A2 (en) | 2007-04-10 | 2008-10-16 | Sandisk Corporation | Non-volatile memory and method for predictive programming |
US8904552B2 (en) | 2007-04-17 | 2014-12-02 | Samsung Electronics Co., Ltd. | System and method for protecting data information stored in storage |
US8001320B2 (en) | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
US8332574B2 (en) | 2007-04-30 | 2012-12-11 | Sandisk Il Ltd. | Method for efficient storage of metadata in flash memory |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
US7899987B2 (en) | 2007-05-15 | 2011-03-01 | Sandisk Il Ltd. | File storage in a computer system with diverse storage media |
US7656734B2 (en) | 2007-06-29 | 2010-02-02 | Sandisk 3D Llc | Methods and apparatus for extending the effective thermal operating range of a memory |
US8065583B2 (en) | 2007-07-06 | 2011-11-22 | Micron Technology, Inc. | Data storage with an outer block code and a stream-based inner code |
US8051358B2 (en) | 2007-07-06 | 2011-11-01 | Micron Technology, Inc. | Error recovery storage along a nand-flash string |
US7898863B2 (en) | 2007-08-01 | 2011-03-01 | Micron Technology, Inc. | Method, apparatus, and system for improved read operation in memory |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US20090043831A1 (en) | 2007-08-11 | 2009-02-12 | Mcm Portfolio Llc | Smart Solid State Drive And Method For Handling Critical Files |
KR101498673B1 (ko) | 2007-08-14 | 2015-03-09 | 삼성전자주식회사 | 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템 |
KR101393622B1 (ko) | 2007-08-30 | 2014-05-13 | 삼성전자주식회사 | 멀티 비트 플래시 메모리 장치를 포함하는 시스템 및그것의 데이터 처리 방법 |
US7869273B2 (en) | 2007-09-04 | 2011-01-11 | Sandisk Corporation | Reducing the impact of interference during programming |
WO2009037691A2 (en) | 2007-09-19 | 2009-03-26 | Anobit Technologies | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
WO2009095902A2 (en) | 2008-01-31 | 2009-08-06 | Densbits Technologies Ltd. | Systems and methods for handling immediate data errors in flash memory |
US8650352B2 (en) | 2007-09-20 | 2014-02-11 | Densbits Technologies Ltd. | Systems and methods for determining logical values of coupled flash memory cells |
TWI372396B (en) | 2007-09-28 | 2012-09-11 | Phison Electronics Corp | Method of protecting data for power failure and controller using the same |
US7894263B2 (en) | 2007-09-28 | 2011-02-22 | Sandisk Corporation | High voltage generation and control in source-side injection programming of non-volatile memory |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US7639532B2 (en) | 2007-10-10 | 2009-12-29 | Micron Technology, Inc. | Non-equal threshold voltage ranges in MLC NAND |
US8068360B2 (en) | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
WO2009050703A2 (en) | 2007-10-19 | 2009-04-23 | Anobit Technologies | Data storage in analog memory cell arrays having erase failures |
WO2009053963A2 (en) | 2007-10-22 | 2009-04-30 | Densbits Technologies Ltd. | Methods for adaptively programming flash memory devices and flash memory systems incorporating same |
WO2009053962A2 (en) | 2007-10-22 | 2009-04-30 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
US8443242B2 (en) | 2007-10-25 | 2013-05-14 | Densbits Technologies Ltd. | Systems and methods for multiple coding rates in flash devices |
US7895242B2 (en) | 2007-10-31 | 2011-02-22 | Microsoft Corporation | Compressed storage management |
WO2009063450A2 (en) | 2007-11-13 | 2009-05-22 | Anobit Technologies | Optimized selection of memory units in multi-unit memory devices |
US8046542B2 (en) | 2007-11-21 | 2011-10-25 | Micron Technology, Inc. | Fault-tolerant non-volatile integrated circuit memory |
US7633798B2 (en) | 2007-11-21 | 2009-12-15 | Micron Technology, Inc. | M+N bit programming and M+L bit read for M bit memory cells |
US7945825B2 (en) | 2007-11-25 | 2011-05-17 | Spansion Isreal, Ltd | Recovery while programming non-volatile memory (NVM) |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
WO2009072104A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory device with physical cell value deterioration accommodation and methods useful in conjunction therewith |
WO2009072103A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells |
US8607128B2 (en) | 2007-12-05 | 2013-12-10 | Densbits Technologies Ltd. | Low power chien-search based BCH/RS decoding system for flash memory, mobile communications devices and other applications |
US20090150894A1 (en) | 2007-12-10 | 2009-06-11 | Ming Huang | Nonvolatile memory (NVM) based solid-state disk (SSD) system for scaling and quality of service (QoS) by parallelizing command execution |
US8276051B2 (en) | 2007-12-12 | 2012-09-25 | Densbits Technologies Ltd. | Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8359516B2 (en) | 2007-12-12 | 2013-01-22 | Densbits Technologies Ltd. | Systems and methods for error correction and decoding on multi-level physical media |
US8185685B2 (en) | 2007-12-14 | 2012-05-22 | Hitachi Global Storage Technologies Netherlands B.V. | NAND flash module replacement for DRAM module |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8327246B2 (en) | 2007-12-18 | 2012-12-04 | Densbits Technologies Ltd. | Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith |
US8085586B2 (en) | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US7934052B2 (en) | 2007-12-27 | 2011-04-26 | Pliant Technology, Inc. | System and method for performing host initiated mass storage commands using a hierarchy of data structures |
US8301912B2 (en) | 2007-12-31 | 2012-10-30 | Sandisk Technologies Inc. | System, method and memory device providing data scrambling compatible with on-chip copy operation |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US7924587B2 (en) | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8059457B2 (en) | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
US7733712B1 (en) | 2008-05-20 | 2010-06-08 | Siliconsystems, Inc. | Storage subsystem with embedded circuit for protecting against anomalies in power signal from host |
US7877522B2 (en) | 2008-05-27 | 2011-01-25 | Sandisk Il Ltd. | Method of monitoring host activity |
US8621144B2 (en) | 2008-06-26 | 2013-12-31 | Intel Corporation | Accelerated resume from hibernation in a cached disk system |
US7808831B2 (en) | 2008-06-30 | 2010-10-05 | Sandisk Corporation | Read disturb mitigation in non-volatile memory |
KR101671313B1 (ko) | 2008-07-01 | 2016-11-01 | 엘에스아이 코포레이션 | 플래시 메모리 디바이스 판독 방법 및 시스템 |
US8037380B2 (en) | 2008-07-08 | 2011-10-11 | International Business Machines Corporation | Verifying data integrity of a non-volatile memory system during data caching process |
US20100017650A1 (en) | 2008-07-19 | 2010-01-21 | Nanostar Corporation, U.S.A | Non-volatile memory data storage system with reliability management |
US7930515B2 (en) | 2008-07-29 | 2011-04-19 | International Business Machines Corporation | Virtual memory management |
US7876611B2 (en) | 2008-08-08 | 2011-01-25 | Sandisk Corporation | Compensating for coupling during read operations in non-volatile storage |
US20100057976A1 (en) | 2008-08-26 | 2010-03-04 | Menahem Lasser | Multiple performance mode memory system |
US8130552B2 (en) | 2008-09-11 | 2012-03-06 | Sandisk Technologies Inc. | Multi-pass programming for memory with reduced data storage requirement |
US20100083247A1 (en) | 2008-09-26 | 2010-04-01 | Netapp, Inc. | System And Method Of Providing Multiple Virtual Machines With Shared Access To Non-Volatile Solid-State Memory Using RDMA |
TWI467369B (zh) | 2008-10-01 | 2015-01-01 | A Data Technology Co Ltd | 混合密度記憶體系統及其控制方法 |
JP2010108568A (ja) | 2008-10-31 | 2010-05-13 | Toshiba Corp | 磁気ディスク装置 |
US9141475B2 (en) | 2008-11-23 | 2015-09-22 | Sandisk Technologies | Methods for tag-grouping of blocks in storage devices |
KR101066746B1 (ko) | 2008-12-08 | 2011-09-22 | 주식회사 하이닉스반도체 | 페이지 버퍼 회로 및 이를 구비한 불휘발성 메모리 소자와 그 동작 방법 |
TWI387023B (zh) | 2008-12-25 | 2013-02-21 | Silicon Motion Inc | 防止迴焊過程中資料遺失之方法及使用該方法之記憶體裝置 |
US8438455B2 (en) | 2008-12-31 | 2013-05-07 | Intel Corporation | Error correction in a solid state disk |
US8244960B2 (en) | 2009-01-05 | 2012-08-14 | Sandisk Technologies Inc. | Non-volatile memory and method with write cache partition management methods |
US8040744B2 (en) | 2009-01-05 | 2011-10-18 | Sandisk Technologies Inc. | Spare block management of non-volatile memories |
US20100287217A1 (en) | 2009-04-08 | 2010-11-11 | Google Inc. | Host control of background garbage collection in a data storage device |
TWI400707B (zh) | 2009-07-09 | 2013-07-01 | Phison Electronics Corp | 快閃記憶體邏輯區塊管理方法及其控制電路與儲存系統 |
KR20120059506A (ko) | 2009-08-25 | 2012-06-08 | 샌디스크 아이엘 엘티디 | 플래시 저장 디바이스로의 데이터 복원 |
US8014094B1 (en) | 2009-08-31 | 2011-09-06 | Western Digital Technologies, Inc. | Disk drive expediting defect scan when quality metric exceeds a more stringent threshold |
US8743629B2 (en) | 2009-08-31 | 2014-06-03 | Sandisk Il Ltd. | Preloading data into a flash storage device |
US8402217B2 (en) | 2009-09-15 | 2013-03-19 | Marvell International Ltd. | Implementing RAID in solid state memory |
US8179717B2 (en) | 2009-09-29 | 2012-05-15 | Sandisk Technologies Inc. | Maintaining integrity of preloaded content in non-volatile memory during surface mounting |
KR20110048304A (ko) | 2009-11-02 | 2011-05-11 | 삼성전자주식회사 | 솔더 리플로우에서 코드 데이터의 손실을 방지할 수 있는 방법과 그 장치들 |
US8301828B2 (en) | 2010-06-02 | 2012-10-30 | Conexant Systems, Inc. | Systems and methods for reliable multi-level cell flash storage |
-
2008
- 2008-03-11 CN CN200880005741A patent/CN101715595A/zh active Pending
- 2008-03-11 WO PCT/IL2008/000329 patent/WO2008111058A2/en active Application Filing
- 2008-03-11 US US12/522,175 patent/US8369141B2/en active Active
-
2013
- 2013-01-04 US US13/734,335 patent/US8547740B2/en active Active
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107094370A (zh) * | 2012-05-04 | 2017-08-25 | 希捷科技有限公司 | 固态硬盘控制器的0‑1平衡管理 |
CN104756194A (zh) * | 2012-10-31 | 2015-07-01 | 英特尔公司 | 基于估计概率密度函数的中心读取参考电压确定 |
CN104756194B (zh) * | 2012-10-31 | 2018-09-07 | 英特尔公司 | 基于估计概率密度函数的中心读取参考电压确定 |
CN105453053A (zh) * | 2013-08-13 | 2016-03-30 | 英派尔科技开发有限公司 | 存储器系统 |
CN105453053B (zh) * | 2013-08-13 | 2018-10-09 | 英派尔科技开发有限公司 | 存储器系统 |
TWI559689B (zh) * | 2013-10-25 | 2016-11-21 | 三菱電機股份有限公司 | 發信器 |
CN110277127A (zh) * | 2018-03-14 | 2019-09-24 | 三星电子株式会社 | 非易失性存储器件 |
CN110232948A (zh) * | 2019-05-28 | 2019-09-13 | 华中科技大学 | 一种ufs存储设备中ufs芯片健康度的度量方法及系统 |
CN111522687A (zh) * | 2020-04-16 | 2020-08-11 | 江苏芯盛智能科技有限公司 | 数据处理方法、装置、固态硬盘及计算机可读存储介质 |
CN111522687B (zh) * | 2020-04-16 | 2022-10-14 | 江苏芯盛智能科技有限公司 | 数据处理方法、装置、固态硬盘及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US8369141B2 (en) | 2013-02-05 |
WO2008111058A2 (en) | 2008-09-18 |
US20130121080A1 (en) | 2013-05-16 |
US20100091535A1 (en) | 2010-04-15 |
US8547740B2 (en) | 2013-10-01 |
WO2008111058A3 (en) | 2010-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101715595A (zh) | 存储器单元读取阈的自适应估计 | |
US8000135B1 (en) | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals | |
US10388394B2 (en) | Syndrome weight based evaluation of memory cells performance using multiple sense operations | |
US9153336B1 (en) | Decoder parameter estimation using multiple memory reads | |
US10115457B2 (en) | Threshold voltage distribution determination by sensing common source line currents | |
US9318223B2 (en) | Programming nonvolatile memory based on statistical analysis of charge level distributions of memory cells | |
EP2776929B1 (en) | Soft information generation for memory systems | |
CN101501779B (zh) | 具有自适应容量的存储设备 | |
US10884855B1 (en) | Performance in reading memory cells affected by neighboring memory cells | |
US11086569B2 (en) | Memory system and method | |
CN103219041A (zh) | 用于模拟存储单元的增强编程和擦除方案 | |
US8482978B1 (en) | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals | |
CN105097028A (zh) | 包括非易失性存储器件的存储装置和该器件的读取方法 | |
US9136001B2 (en) | Signal-to-Noise Ratio (SNR) estimation in analog memory cells based on optimal read thresholds | |
TWI546807B (zh) | 在讀取臨限值錯誤的存在下從類比記憶體胞之軟讀出 | |
CN101601094A (zh) | 使用多个门限读取存储单元的方法 | |
CN102171767A (zh) | 用于存储装置的基于性能因素调节的软数据生成方法装置 | |
KR101485727B1 (ko) | 메모리로부터의 특정 데이터 양자화의 출력 | |
CN109841237A (zh) | 用于非易失性存储器的利用负阈值感测的感测放大器 | |
US9583207B2 (en) | Adaptive data shaping in nonvolatile memory | |
TW201423747A (zh) | 使用同時多電壓感測之類比記憶體胞中的讀取臨限値估計 | |
US9779818B2 (en) | Adaptation of high-order read thresholds | |
US11295819B2 (en) | Dual sense bin balancing in NAND flash | |
CN104067348B (zh) | 用于模拟存储器单元的编程及擦除方案 | |
Prodromakis et al. | MLC NAND flash memory: Aging effect and chip/channel emulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
ASS | Succession or assignment of patent right |
Owner name: APPLE INC. Free format text: FORMER OWNER: ANOBIT TECHNOLOGIES LTD. Effective date: 20130105 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20130105 Address after: American California Applicant after: Apple Computer, Inc. Address before: Israel Hertz Leah Applicant before: Anobit Technologies Ltd. |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100526 |