CN102483951A - 可中断的nand闪存 - Google Patents

可中断的nand闪存 Download PDF

Info

Publication number
CN102483951A
CN102483951A CN2010800381041A CN201080038104A CN102483951A CN 102483951 A CN102483951 A CN 102483951A CN 2010800381041 A CN2010800381041 A CN 2010800381041A CN 201080038104 A CN201080038104 A CN 201080038104A CN 102483951 A CN102483951 A CN 102483951A
Authority
CN
China
Prior art keywords
register
command
address register
action
address
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.)
Granted
Application number
CN2010800381041A
Other languages
English (en)
Other versions
CN102483951B (zh
Inventor
J·G·贝内特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102483951A publication Critical patent/CN102483951A/zh
Application granted granted Critical
Publication of CN102483951B publication Critical patent/CN102483951B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/20Suspension of programming or erasing cells in an array in order to read other cells in it

Landscapes

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

Abstract

一种NAND闪存逻辑单元。NAND闪存逻辑单元包括对命令作出响应并准许编程和/或擦除命令可被读取命令中断的控制电路。该控制电路包括一组用于执行当前命令的内部寄存器,以及一组用于接收命令的外部寄存器。控制电路还包括可使NAND闪存逻辑单元具有冗余以正确地保持被中断的编程或擦除命令的状态的一组补充寄存器。当被中断的编程或擦除命令是恢复时,NAND闪存逻辑单元由此可以快速地恢复被暂停的编程或擦除操作。这在NAND闪存逻辑单元的上下文中提供对读取响应时间的显著改进。

Description

可中断的NAND闪存
背景
闪存是在大部分擦除的固态非易失性存储器,并在许多种电子器件中是流行的。闪存由多个存储器单元组成,每一个存储器单元都包括浮动栅晶体管。存储器单元的状态受相对应的浮动栅上的电荷量的控制。可以向浮动栅中添加(通过编程)或从其中去除(通过擦除)电子,以便改变存储器单元的状态。传统上,每一个存储器单元都通过只具有两个有区别的状态来包含单比特信息,每一个状态对应于浮动栅上的不同的电荷范围。较新的闪存单元可以各自通过具有更多有区别的状态(例如,对于两比特信息,四个状态)包含多个比特的信息。
有两种类型的闪存,NOR闪存和NAND闪存。与NOR闪存相比,NAND闪存具有较短的擦除时间,且每秒钟编程更多数据,每个存储器单元要求较少的空间。定义NAND闪存的组织以及用于与NAND闪存进行通信的通信协议的一个常规规范被称为开放NAND闪存接口(ONFI)标准。
根据ONFI标准,NAND闪存被组织成逻辑单元。每一个逻辑单元都包括存储器单元阵列以及相对应的用于对从存储器阵列的诸部分读取和写入到该诸部分的命令作出响应的控制电路。ONFI标准将这些逻辑单元称为“逻辑单元号”或“LUN”。根据ONFI标准,每一个NAND闪存LUN都被组织成块,其中,每一个LUN包含多个块。此外,每一个块都还包含多个页,而每一个页都包含多个存储器单元。
简要概述
此处所描述的实施例涉及NAND闪存逻辑单元以及其操作。NAND闪存逻辑单元包括对命令作出响应并准许编程和/或擦除命令可被读取命令中断的控制电路。控制电路包括一组内部寄存器,这些内部寄存器是用于执行当前活动的进程中(in-process)的命令的直接可使用的存储器单元。控制电路还包括一组用于与外部命令源进行通信的外部寄存器。控制电路还包括在较高优先级中断前进以使用正常工作的寄存器的同时允许NAND闪存逻辑单元正确地保持被中断的编程或擦除命令的状态的一组补充寄存器。当被中断的编程或擦除命令是恢复时,NAND闪存逻辑单元可以利用补充寄存器的内容快速地恢复被暂停的编程或擦除操作。
这在NAND闪存逻辑单元的上下文中提供对读取响应时间的显著改进。如此,即使外部命令电路预先将编程或擦除命令提供到控制电路,控制电路也可以通过保持编程操作或擦除操作来快速地对来自外部命令源的随后的读取命令作出响应。
本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图简述
为了描述可以获得本发明的上文所列举的及其他优点和特征的方式,下面将通过参考附图来呈现对各实施例的更具体的描述。可以理解,这些图形只描绘了示例实施例,并且因此不被认为是对其范围的限制,将通过使用图形并利用附加特征和细节来描述和解释各实施例,在图形中:图1示出了根据现有技术的一系列示例NAND闪存单元;
图2示出了包含两个NAND闪存逻辑单元的NAND闪存模块的框图,其中NAND闪存逻辑单元包含能够利用读取命令中断擦除或编程命令的控制电路;
图3示出了能够中断擦除或编程命令的NAND闪存逻辑单元的示例控制电路的框图;
图4示出了根据此处所描述的一个实施例的图3的控制电路对命令作出响应的方法的流程图,其中补充(supplemental)寄存器充当读取命令的专用内部寄存器;
图5示出了根据此处所描述的另一实施例的图3的控制电路对命令作出响应的方法的流程图,其中补充寄存器充当用于被中断的进程中的命令的备份寄存器;以及
图6示出了外部命令源与图3的控制电路进行通信的方法的流程图。
详细描述
根据此处所描述的实施例,描述了NAND闪存技术,该技术准许中断进程中的非读取命令,以便更快速地完成读取命令,从而改善较高优先级读取时间。首先,将参考图1来描述NAND闪存的基本存储器单元。然后,参考图2示出和描述NAND闪存模块。然后,参考图3示出和描述控制NAND存储器逻辑单元的控制电路。最后,将参考图4到6示出和描述控制电路的操作原理。
图1示出了三个NAND闪存单元101、102和103的系列100的横截面。图1示出了现有技术的NAND闪存单元,且只是为参考而提供的。此处所描述的原理可以适用于任何NAND闪存单元阵列,而不管NAND闪存单元的结构或设计如何。图1不是按比例绘制的而只包括主结构,并且只是为了对NAND闪存单元的操作的一般描述而提供的。虽然为清楚起见,在图1中只示出了三个NAND存储器单元,但是,许多市场上可买到的NAND闪存阵列包括上亿的存储器单元。
每一个NAND闪存单元101、102和103分别具有相对应的导电浮动栅111、121和131。浮动栅111、121和131可以由各种导电材料制成,通常使用多晶或非晶硅。栅被叫做“浮动的”,因为它们在各个方向被诸如氮化硅或二氧化硅之类的高度有效并且纯净的绝缘体104围绕。此绝缘体足够好,以至于可能在浮动栅上的过剩电子在正常电压和温度下平均起来将要花许多年才能泄漏到绝缘体之外。
此浮动栅是存储单元的存储器部分。由存储器单元存储的值取决于相对应的浮动栅上的电荷量(即,电子的数量)。传统上,每一个存储器单元都通过存储两种可能的状态中的一种来保持一个比特的信息。在该情况下,电路只能够辨别浮动栅上的两种可能的电荷范围,每一个可能的范围解析为比特的两个可能值中的一个。然而,更现代的NAND闪存单元被能够辨别和编程超过两个,或许四个或更多个可能的状态的电路读取,从而允许每一个存储器单元存储甚至更多信息,或许对于每一个存储器单元,两个比特或更多。
存储器单元101、102和103在绝缘或弱的半导体衬底105上实现。例如,衬底105可以是硅晶体或诸如二氧化硅之类的绝缘体上的硅。电路元件被植入、蚀刻到或层叠在衬底之上。通过植入或蚀刻以添加掺杂原子,来创建导电通道106。每一个存储器单元101、102和103还具有分别由导电材料(通常是铝或非晶硅)制成的控制栅112、122和132。
流过导电通道106的电流通过附近的控制栅和浮动栅上的电荷来调节,构成了用于检测存储器的状态的基础。在NAND闪存中,若干个栅共享同一个通道,从而产生了增大的电路密度。例如,在图1中,存储器单元101、102和103各自共享导电通道106。这增大了容许的存储器单元的密度,但也使感测任何一个栅的状态的任务复杂化。这是因为信号更微弱,因此,必须随着时间的推移被放大和采样,以分隔信号与噪声。
控制栅具有两个功能。首先,控制栅可以擦除或编程相对应的浮动栅。例如,控制栅112可以擦除或编程相对应的浮动栅111,控制栅122可以擦除或编程相对应的浮动栅121,而控制栅132可以擦除或编程相对应的浮动栅131。这通过在控制栅上设置足够的电压来起作用,以使得控制栅和浮动栅之间的电压微分导致足够强的电场,该电场导致电子跨围绕浮动栅的绝缘体隧穿。虽然绝缘体几乎完美,但是,仍可以发生跨控制栅和浮动栅之间的非常薄的纳米标度的隔离层的电子量子隧穿。如果电压差足够大,那么,可以擦除(过剩电子被从浮动栅中移除)或编程(过剩电子被注入到浮动栅中)浮动栅。每一个电子分别地在大约几个飞秒内进行跳跃(一旦跳跃开始),其中需要擦除或编程的所有电子的运动长得多(例如,根据常规的擦除和编程技术,几个毫秒),因为每一个电子将在不同的时间进行跳跃。
控制栅的另一个用途将是选择多个存储器单元中的哪一个将被附连到共享导电通道的感测电路测量。浮动栅上的电荷的不存在或存在允许或抑制控制栅对通道中的电流的调节,从而允许感测电路检测相对应的存储器单元的状态。
图2示出了NAND闪存模块200的框图。虽然常规NAND闪存模块可以如图2所示的那样构建,但是,根据此处所描述的原理的NAND闪存模块也可以如此来构建。然而,此处所描述的原理提供允许读取操作中断诸如编程和擦除操作之类的非读取操作的显著不同的控制电路,从而显著缩短与读取操作相关联的平均等待时间。
图2的NAND闪存模块200包括通过单个通信总线接口203与外部命令源204通信地耦合的两个NAND闪存逻辑单元201和202。这样的外部命令源204的特征对本发明的原理来说不是重要的,但是,源204可以是可以用于与诸如NAND闪存之类的非易失性存储器进行通信的任何设备或系统,无论是常规的,或者无论是尚未开发的。命令源204被标记为“外部”,只是因为它通过通信总线接口203进行通信以便与NAND闪存模块200进行通信。术语“外部”不要求命令源204一定在与NAND闪存模块200不同的芯片上。
与NAND闪存逻辑单元进行通信的总线可以使用ONFI协议进行通信,诸如该协议的版本1.0、2.0或2.1,或该协议的后续版本,或替换协议,或者用于与NAND闪存进行通信的任何其他协议。下面,ONFI协议版本1.0、2.0、2.1和后续版本将在权利要求书中统称为“ONFI协议”。然而,此处所描述的原理不仅限于任何总线通信协议。将来,此处所描述的原理在应用于目前甚至还没有开发的NAND闪存通信协议时也会是有益的。
每一个NAND闪存模块都可以具有任何数量的逻辑单元。然而,NAND闪存模块还可只包含一个逻辑单元,如在图2的情况下包含两个逻辑单元,或两个以上的逻辑单元。如果NAND闪存芯片使用多个总线,那么,每一个总线和连接到该总线的相对应的逻辑单元可以被视为单独的模块。如此,单一NAND闪存芯片可以具有多个NAND闪存模块(和单独的总线一样多)。图2只示出了一个NAND闪存模块200,因为只有一个总线203。虽然NAND闪存芯片可包括多个NAND闪存模块,但是,相反的也是可以成立的。即,单个NAND闪存模块可以由多个芯片组成。另外,或许NAND闪存芯片只包括一个NAND闪存模块。
每一个NAND闪存逻辑单元201和202分别具有相对应的控制电路211和221。每一个控制电路都对被定向到相对应的存储器单元阵列的命令作出响应。例如,控制电路211对读取、擦除或编程存储器阵列212的存储器单元的命令作出响应。控制电路211对读取、擦除或编程存储器阵列222的存储器单元的命令作出响应。每一个存储器阵列212和222都由NAND存储器单元组成,NAND存储器单元的示例是图1的NAND存储器单元101、102和103。
每一个NAND闪存逻辑单元201和202可包括保持还没有准备被处理的命令的队列(未示出)。替换地或另外地,队列可以在与NAND闪存逻辑单元200进行通信的命令源204上实现。典型的数据存储系统可以具有用来向其中写入数据和从其中读取数据的可用的多个NAND闪存模块。向NAND闪存写入数据涉及首先擦除存储器阵列的一部分,根据ONFI一次擦除存储器的一个块,然后编程存储器阵列,通常一次一个页。如此,在写入操作中,对一个块的单个擦除操作接下来是多个编程操作以重新填充该块。也就是说,此处所描述的原理不仅限于对应于单个擦除、写入或读取命令的数据的大小。擦除是重要的,因为浮动栅应该在与电子基本上被移除的大致相同的状态开始编程操作,以便获得对作为编程操作的结果将在浮动栅上累积的电荷量的可预测性。擦除还确保将不被编程的存储器单元具有适当的状态。
与读取操作相比,擦除和编程是相对慢的操作。同样,在一般用途的存储系统中,读取活动的量一般远远多于写入活动的量。因此,在常规设计中,系统一般将被设计成缓冲正在等待被写入的数据,并在任一时刻将慢擦除和编程操作限制到小的逻辑单元子集,以便最小化它们对读取的干扰。
令人遗憾的是,干扰仍将以很高的比率发生,这将损坏系统响应时间。考虑当只有一个逻辑单元201被擦除或编程操作占用的情况。该慢的操作将处在该逻辑单元201的操作队列的前面。由于所谓“条带(striping)”的过程,单个文件级别的读取可以导致多个段读取,每一个段读取都要求在不同的逻辑单元上执行读取操作。条带模式增大了平均读取请求中所包括的逻辑单元的比例,并因此增大一个逻辑单元上的至少一个读取操作被延迟到慢擦除或编程命令后面的机率。总的文件读取请求没有完成,直到所有其段完成,如此,总的文件读取请求与具有正在被作为总的文件读取请求的一部分读取的段的最慢的逻辑单元一样慢。
以此方式,甚至许多逻辑单元中的一个逻辑单元上的慢的擦除和编程操作仍可以作为高读取等待时间和降低的系统速度的主要因素。假设其中平均条带导致单个文件的数据被跨数据存储系统中的25%的逻辑单元扩散的情况。现在假设擦除操作比读取操作慢50倍。在此情况下,仅仅一个逻辑单元上的擦除操作的存在将导致对于在擦除操作过程中发生的读取请求的6.25倍的平均减慢。例如,对于给定读取请求,读取操作中的一个将在目前正在执行擦除操作的逻辑单元上的机率为25%。在25%的发生这种情况的似然性中,平均起来,擦除操作将在半途中,这要求读取操作的时间的25倍才能完成擦除。如此,对读取请求的总的系统响应相应地大致减慢6.25倍(如果正在发生擦除操作的25倍乘以25%的需要被作为总的读取操作的一部分读取的在逻辑单元上发生的擦除操作的机率)。注意,发明人认识到此处所提及的现有技术所存在的此问题及其他问题并不以任何方式构成相对应的问题一般性地被认识到的许可,本领域技术人员也不会认识到。
在任何情况下,此处所描述的原理为NAND闪存逻辑单元提供显著改善的控制电路。图3示出了表示改进的控制电路的一个实施例的控制电路300的框图。控制电路300是图2的控制电路201或控制电路202的示例。控制电路300包括寄存器310和命令电路320。寄存器310包括内部数据寄存器311A、内部地址寄存器311B、外部数据寄存器312A、外部地址寄存器312B、补充数据寄存器313A以及补充地址寄存器313B。控制电路还包括:感测放大器阵列304——从该感测放大器阵列304,来自存储器单元的读取信息可被应用于内部数据寄存器311A;以及写入放大器阵列305——通过该写入放大器阵列305,写入程序数据。下面,寄存器311A和311B的组合可以被称为“寄存器311”、寄存器312A和312B的组合可以被称为“寄存器312”,而寄存器313A和313B的组合可以被称为“寄存器313”。
内部数据寄存器311A用于通过感测放大器阵列304接收活动读取命令的数据,并用于通过写入放大器阵列305断言活动编程命令的数据。内部地址寄存器311B驱动适当的电路以寻址作为命令的目标的适当的存储器单元。例如,如果有读取命令,则地址寄存器311B中的地址导致来自相对应的存储器单元的值来以相对应的值驱动感测放大器阵列304,从而导致值被存储在内部数据寄存器311A中。同样,如果有编程命令,则内部地址寄存器311B中的地址导致写入放大器阵列305和相对应的被寻址的存储器单元之间的连接。这导致内部数据寄存器311A中的数据通过写入放大器阵列305被写入到地址存储器单元。如果有擦除命令,则相对应的电路寻址由内部地址寄存器311B中的地址寻址的存储器段,并导致该段中的所有存储器单元的值被复位。
外部数据寄存器312A用于从通信总线接口203接收与命令相关联的数据,并用于通过通信总线接口203将由已经执行的命令所产生的数据提供回外部命令源204。外部地址寄存器312B用于从通信总线接口203接收与命令相关联的地址。
补充数据寄存器313A和补充地址寄存器313B以将更详细地描述的方式促进活动的进程中的命令的暂停和恢复。下面将描述两个具体的实施例。取决于实施例,补充寄存器313A和313B的行为和功能会有所不同。
第一实施例—专用内部寄存器
在现在将描述的控制电路300的操作的第一实施例中,补充数据寄存器313A和补充地址寄存器313B可以是额外的一组内部寄存器。这可使内部数据寄存器311A和内部地址寄存器311B被预留用于非读取操作(例如,编程和擦除操作)。同时,补充数据寄存器313A和补充地址寄存器313B可以是用于读取操作的专用内部寄存器。
当读取命令被加载到补充寄存器313中时,如果命令逻辑320确定读取命令将获得优先级,则寄存器313被给予处理优先级。如此,寄存器311A和311B用于潜在可中断的命令,而寄存器313A和313B用于可能中断存在于寄存器311A和311B中的命令的命令。图3的寄存器大小不是按比例绘制的。通常,数据寄存器将与能够在单个命令中被编程和/或读取的存储器大小一样大,无论后者有多大。此大小此处被称为“页”。地址寄存器可以与唯一地标识正在被编程和/或读取的存储器部分所需的一样大。
图4示出了当使用补充寄存器作为专用寄存器时图3的控制电路处理命令的方法400的流程图。方法400在将命令接收到外部寄存器312时启动(动作401)。如果此命令是编程命令,那么,程序数据(即,将被写入的数据)被加载到外部数据寄存器312A,而对应于将被编程的存储器单元的地址被加载到外部地址寄存器312B中。如果命令是擦除命令,则这意味着,对应于将被擦除的存储器单元的擦除地址被加载到外部地址寄存器312B中。如果命令是读取命令,则这意味着,对应于将被读取的存储器单元的读取地址被加载到外部地址寄存器312B中。
命令电路320检测与刚刚加载到外部寄存器312中的命令相关联的命令的类型(判断框402)。例如,命令类型可以是编程命令类型(在判断框402中为“编程”),擦除命令类型(在判断框402中为“擦除”),或读取命令类型(在判断框402中为“读取”)。
如果命令类型是编程命令类型(在判断框402中为“编程”),那么,命令电路320确定专用非读取内部寄存器311是否可用(判断框411)。如果专用非读取内部寄存器311还不可用(在判断框411中为“否”),那么,命令电路等待(动作412),直到它可用(在判断框411中为“是”)。如果专用非读取内部寄存器311可用(在判断框411中为“是”),则程序数据被从外部数据寄存器312A移到专用非读取内部数据寄存器311A(动作413),而程序地址被从外部地址寄存器312B移到专用非读取内部地址寄存器(动作414)。然后,编程操作等待对读取内部寄存器313的清除(动作415)。一旦没有读取操作要被执行,编程操作就启动(动作416)。如果在读取内部寄存器313中没有读取操作,那么,编程操作就可以立即启动。
如果命令类型是擦除命令类型(在判断框402中为“擦除”),则命令电路320还确定专用非读取内部寄存器311是否可用(判断框421)。如果专用非读取寄存器311还不可用(在判断框421中为“否”),那么,命令电路等待(动作422),直到它可用(在判断框421中为“是”)。如果专用非读取内部寄存器311可用(在判断框421中为“是”),则一旦可用,擦除地址就被从外部地址寄存器312B移到专用非读取内部地址寄存器(动作423)。然后,编程操作等待对读取内部寄存器313的清除(动作424)。一旦没有读取操作要被执行,擦除操作就启动(动作425)。如果在读取内部寄存器313中没有读取操作,那么,擦除操作就可以立即启动。
如果命令类型是读取命令类型(在判断框402中为“读取”),则命令电路确定专用读取内部寄存器313是否可用(判断框431)。如果寄存器313不可用(在判断框431中为“否”),那么,命令电路等待(动作432),直到它可用(在判断框431中为“是”)。如果专用读取内部寄存器313可用(在判断框431中为“是”),则读取地址被从外部地址寄存器312B移到专用读取内部地址寄存器313B(动作433)。如果有活动的进程中的非读取命令(在判断框434中为“是”),则非读取内部数据寄存器311A和非读取内部地址寄存器311B被禁用(动作435),以使得编程或擦除操作暂停。此禁用以命令电路判断进程中的非读取命令的中断是适当的为条件。如果命令电路继续执行中断进程中的非读取命令,则读取操作开始(动作436)。这可以通过启用读取内部寄存器313以使得被寻址的储存器单元的内容被读取到专用读取内部数据寄存器313A来完成。在读取操作完成之后(在动作436之后),恢复被中断的命令(动作437)。例如,读取内部寄存器313可以被禁用,而非读取内部寄存器311可以被启用,以使得编程或擦除命令恢复执行。
在一个实施例中,并非自动禁用非读取命令(动作435),而是命令电路可以等待适当的时间以中断非读取命令。这可以是在捕捉非读取命令的状态更加容易的时间期间。例如,如果编程或擦除命令是使用验证阶段序列发生的——其中通过简短地切换来检查编程或擦除命令的进度,以测量存储单元内容,则中断可以等待下一个验证阶段,然后,在验证阶段期间、紧接着验证阶段的前面,和/或紧接着验证阶段的后面执行。如果编程或擦除操作按计时器进行操作,则当非读取操作被中断时,命令电路可以暂停计时器,而当非读取操作恢复时,重新启动计时器。这些特点在便于保存被暂停的操作的状态和要求最少的新电路或逻辑以帮助被中断的操作的安全恢复方面提供特殊的优点。
第二实施例—备份寄存器
在控制电路300的操作的第二实施例中,补充内部数据寄存器313A是备份数据寄存器,而补充内部地址寄存器313B是备份地址寄存器。在该情况下,内部寄存器311用于各种类型的命令,包括读取命令、编程命令,以及擦除命令。在该情况下,命令电路320被构建为,当命令电路320确定读取命令将中断进程中的非读取命令时将进程中的编程或擦除命令的数据和地址状态从内部寄存器311备份到备份寄存器313。然后,中断读取命令的数据和地址被提供到中的内部寄存器311,以由此执行读取命令。在中断读取命令完成之后,被中断的非读取命令的数据和地址随后被从备份寄存器313恢复到内部寄存器311,以便对编程或擦除命令进行进一步的处理。编程或擦除命令完成而不会有进一步的中断是有可能的,但是,或许在编程或擦除命令完成之前编程或擦除命令被中断多次。
图5示出了当使用补充寄存器313作为备份寄存器时控制电路处理命令的方法500的流程图。每当命令被控制电路300接收到外部寄存器312中时可以启动方法500(动作501)。此动作可以类似于为图4的动作401所描述的动作。然后,命令电路320确定命令的类型(判断框502),该判断可以以与为图4的判断框402执行的相同的方式进行。
第二实施例中的编程和擦除命令响应类似于图4的第一实施例。即,如果编程命令被接收到外部寄存器312(在判断框502中为“编程”),那么,命令电路320确定内部寄存器311是否可用(判断框511)。如果内部寄存器311还不可用(在判断框511中为“否”),那么,命令电路等待(动作512),直到它可用(在判断框511中为“是”)。如果内部寄存器311可用(在判断框511中为“是”),则程序数据被从外部数据寄存器312A移到内部数据寄存器311A(动作513),而程序地址被从外部地址寄存器312B移到内部地址寄存器311B(动作514)。然后,启动编程操作(动作515)。
如果命令类型是擦除命令类型(在判断框502中为“擦除”),则命令电路320还确定内部寄存器311是否可用(判断框521)。如果内部寄存器311还不可用(在判断框521中为“否”),那么,命令电路等待(动作522),直到它可用(在判断框521中为“是”)。一旦可用,擦除地址被从外部地址寄存器312B提供到内部地址寄存器311B(动作523)。然后,启动擦除操作(动作524)。
如果命令类型是读取命令类型(在判断框502中为“读取”),则命令电路320还确定内部寄存器311是否可用(判断框531)。如果内部寄存器311不可用(在判断框531中为“否”),那么,命令电路确定内部寄存器311中的进程中的命令是否将要被中断(判断框532)。当确定是否要进行此中断时,可以有各种信息要考虑。然而,将描述若干个示例情况。如果编程或擦除操作具有验证阶段,那么,或许读取操作在下一个验证阶段、其之前或之后中断编程或擦除操作。或许一个附加准则可以是该验证阶段是否验证编程或擦除操作的足够的大多数已经完成(例如,98%的存储器单元已被验证为准确地编程或擦除),以使得不预期编程或擦除操作的其余部分要花费大量的时间。在该情况下,或许命令电路可以放弃中断,而只允许编程或擦除操作完成——即使有读取操作等待完成。替换地,或许编程和擦除操作按计时器进行,而计时器指出在进程中的编程或擦除操作中没有剩余大量的时间来保证中断。
如果进程中的命令目前将不被中断(在判断框532中为“否”),则命令电路等待(动作533)。如果在等待时内部寄存器311变得可用(在判断框531中为“是”),那么,读取地址被提供到内部寄存器311(动作534)。如果命令电路在当进程中的命令仍在被处理时的任何时候判断进程中的命令将被中断(在判断框532中为“是”),那么,命令电路暂停进程中的命令(动作535)。如果按计时器处理进程中的命令,那么,在此阶段可以暂停计时器。然后,进程中的命令的数据和地址信息被备份到补充数据寄存器313A(动作536)以及补充地址寄存器313B(动作537)。在被中断的擦除操作的情形中,不一定有数据要备份,但是,在被中断的编程操作的情形中,将会有数据要备份。在该阶段,读取地址可以被从外部地址寄存器312A提供到内部地址寄存器311A(动作534)。然后,启动读取命令(动作538)。
在读取操作完成之后,或换言之,在由内部地址寄存器311B中的读取地址寻址的存储器单元的内容被读取到内部数据寄存器311A之后,读取数据被从内部数据寄存器311A移到外部数据寄存器312A(动作539)。此时,可以在通信总线203上读取与读取操作相关联的数据。同时,通过将数据从备份数据寄存器313A移至内部数据寄存器311A(动作540),并将地址从备份地址寄存器313B移动到内部地址寄存器311B(动作541),来在随后恢复被中断的进程中的操作(假定没有要比被中断的命令占先的进一步的读取操作)。此时,可以恢复被中断的操作(动作542)。
在恢复进程中的命令之前,并且一旦读取操作完成,可能有需要在恢复被中断的操作之前执行的一个或多个其他读取操作。如果是该情况,则对于每一个读取操作,将通过将读取地址从外部地址寄存器312B提供到内部地址寄存器(动作534),启动读取操作(动作538),以及一旦完成,就将读取数据从内部数据寄存器311A提供到外部数据寄存器312A(动作539),来按顺序执行动作534、538以及539。在完成之前,可以中断单个进程中的非读取命令一次或任何数量的次数,且在非读取命令被恢复之前,任何给定中断都可以导致一个或多个读取操作发生。
参考图2,外部命令源204通过通信总线接口203向NAND闪存模块200提供命令。图6示出了用于操作外部命令源的方法600的流程图,该方法600向通过控制电路控制的NAND闪存逻辑单元提供命令。例如,外部命令源可以是图2的外部命令源204。NAND闪存逻辑单元可以是,例如,图2的逻辑单元201或逻辑单元202。
外部命令源向控制电路提供至少一个编程命令(动作601)和至少一个擦除命令(动作602)。例如,如果与NAND闪存逻辑单元201进行通信,则控制电路可以是控制电路211,或者如果与NAND闪存逻辑单元202进行通信,则是控制电路221。在任一种情况下,外部命令源204可以通过通信总线203向相应的控制电路传递命令。
在编程和擦除操作被提供到NAND闪存逻辑单元之后,随后的读取操作被提供到控制电路(动作603)。此读取操作可以中断NAND闪存逻辑单元中的过程中的前一编程或擦除操作,无论操作是编程操作还是擦除操作。在任一情形中,控制电路可以使用补充寄存器来中断编程命令或者擦除命令。例如,在上文所描述的第一实施例的情形中,补充寄存器可以充当专用读取内部寄存器,或者,在上文所描述的第二实施例的情形中,补充寄存器可以充当备份寄存器。在读取操作中断被中断的操作之后,读取数据被提供回外部命令源204(动作604)。注意,在被中断的命令的执行中,数据被无序地读取。例如,命令源204可以发出编程命令,然后,读取命令,两者都发往同一个逻辑单元。然而,数据可以在编程命令甚至在逻辑单元上完成之前被命令源204读取。类似地,命令源204可以发出擦除命令,然后,读取命令,两者都发往同一个逻辑单元。然而,数据可以在擦除命令甚至在逻辑单元上完成之前被命令源204读取。
现在将参考ONFI规范来描述被中断的擦除和被中断的编程操作的具体实现。让我们从擦除开始。在NAND闪存中,擦除是对可被存储在浮动栅上的电子的移除,该浮动栅是完全被绝缘体包围的导体的一部分(通常是多晶硅,但是,有时是其他材料),并被定位成调节附近半导体通道中的电流,如参考图1所描述的。这通常是通过安排足够大的电场以吸引电子来跨绝缘体量子-隧穿到浮动栅之外来实现的。隧穿过程相对来说比较慢,因为足够强以快速地执行此作业的场还将足够强以激起绝缘中的持久性故障。隧穿速度由指数方程管制,这使得它对绝缘体厚度的变化十分敏感,这些变化由于芯片上的数十亿存储单元上的过程变化而不可避免地存在。在实践中,足够强以跨任何存储单元的最厚的绝缘在2到5毫秒的时间内排出栅极的电子的场还足够弱,不会在甚至任何存储单元的最薄的绝缘中造成损伤。
现在将描述使用此处所描述的原理的擦除操作的示例。此擦除操作只是由此处所描述的更广泛的原理所允许的许多不同的实现中的一个。情况既然这样,为此擦除操作所描述的任何具体特征不应该被解释为对此处所描述的更广泛的实施例施加任何限制。
在此具体示例中,擦除是以块进行的。回想一下,块是多个页的集合,而页是多个存储器单元的集合。擦除操作的最终结果是已知的。具体而言,正在被擦除的块内的所有存储器单元应该在可以接受的容差内没有电荷。在任何验证阶段,不需要数据值用于比较。如此,如果擦除操作使用验证,则将块的存储器单元的内容与已知的所希望的结果进行比较。然而,擦除操作可能没有验证阶段,因为验证花费更多时间和复杂性,并且让擦除操作被计时更简单。选择在统计上足够长的擦除时间,以在可以接受的概率内确保块中的所有存储器单元将是空的。在擦除时间期满之前的很长时间,大多数存储单元将是空的,但是,对已经空的存储单元持续施加擦除操作没有危害。因此,最终,甚至擦除最慢的存储器单元将是空的。
在此具体示例中,擦除过程可能要几个毫秒才能完成。然而,擦除过程使用叫做“量子隧穿”的过程,其中一旦隧穿开始,每一个电子就都在大约几个微微秒内被从浮动栅移除。也就是说,对于每一个电子,隧穿在不同的时间开始。如此,在几乎任何给定时刻,要被移动的每一个电子要么已经隧穿,或者还没有隧穿。因此,在没有显著的效率损失的情况下,可以中断和恢复擦除过程。只要花费在擦除过程中的总时间符合目标擦除时间的总持续时间,就可确保所需的完整擦除的概率。
在擦除过程期间,如果中断和恢复擦除过程,则在系统中有一些长于微微秒规模的成本。例如,可能需要释放(当擦除操作被中断时)和再充电(当擦除操作恢复时)特殊电压源。此外,还可以有与保持和再断言适当的擦除状态(如在图4的动作435和437中,以及图5的动作535、536、537、540、541,以及542)相关联的时间。此外,这些时间成本是总擦除处理时间的微小部分。时间成本短至足以避免读取操作的显著干扰延迟,但是,长至足以确保擦除操作不会因被中断和恢复的开销而显著延长。当控制电路320确定是否要中断擦除操作,或是否让擦除操作完成或前进到后面的阶段时,可以考虑这些时间成本。
当中断擦除操作时,当擦除操作被读取操作中断时,控制电路的内部状态应该能够看到擦除和读取操作两者的状态。虽然本发明的原理不仅限于在通信总线上使用ONFI协议,现在将参考与由ONFI标准所提供的引脚(pin)、信号、命令,以及状态寄存器的兼容性来描述如何实现此状态报告的示例。
在ONFI兼容的芯片中,使用状态寄存器SR的比特(6)来记录状态。此比特将被称为“SR(6)”。ONFI协议假设状态SR(6)将被轮询。有反映SR(6)的状态的输出引脚,但是,如果芯片包含多个逻辑单元,那么,不能依赖轮询方法,因为如果逻辑单元中的任何一个忙着,则SR(6)指示繁忙。
可以作为状态机来实现(例如)的下列过程说明了如何利用ONFI规范兼容地进行此操作。也就是说,本领域的技术人员在阅读此描述之后,将认识到由读取操作来中断擦除操作的过程可以由不同的信令约定来管理,特别是在芯片具有与ONFI不同的连接和命令标准的情况下。
首先,一旦擦除操作被NAND闪存模块命令和接受,包含要被擦除的块的逻辑单元断言“未准备好”。现在可以在逻辑单元的SR(6)比特被观测为“未准备好”之后的任何时间命令读取操作。如果读取地址是针对要被擦除的块内的位置的,那么,芯片的行为可以是未定义的,但是,大多数可能将利用错误指示拒绝读取命令。这可以是为什么命令电路320可以选择不利用读取操作来中断擦除操作的一个原因(参见判断框532中的“否”)。可以在判断框434中的“是”和图4的动作435之间作出类似的判断。例如,如果读取内部寄存器中的读取命令是针对非读取内部寄存器中的擦除命令中正在被擦除的块内的地址的,那么,读取操作可能失败。如果读取操作被逻辑单元的控制电路接受,那么,擦除操作的寄存器的块地址保持不受干扰,并且对读取操作进行排队。
逻辑单元保持“未准备好”。在此示例过程中,擦除操作被周期性地以短于或同逻辑单元的典型读取等待时间相当的某一时间间隔来暂停。状态保持“未准备好”。在这样的暂停的任何一个期间,读取操作现在可以使用其自己的读取地址继续进行。然后,存储单元值被感测放大器确定,结果值被放入内部数据寄存器中,然后,被移至外部数据寄存器。此时,当读取选项完成并且数据已准备好读出到通信总线上时,SR(6)比特变为“准备好”。ONFI交错的读取(读取缓存)可以可任选地被用来启动另一个读取操作。
通过外部数据总线来收集读取数据。如果交错的读取缓存挂起,那么,当当前页已被收集时,SR(6)变为“未准备好”,而当交错的(挂起)读取缓存完成时将变为“准备好”。如果交错的读取挂起,那么,在下一个读取操作的下一次完成时,SR(6)断言“准备好”。
如果没有交错的读取挂起,则已经收集了所有读取数据。如果擦除操作没有完成,那么,SR(6)变为“未准备好”,并恢复擦除,于是,如上文所提及的,在另一个读取操作是中断的情况下,擦除周期性地暂停。
如果擦除操作已经结束,则SR(6)保持“准备好”,并且逻辑单元空闲,等待任何命令。
现在将使用ONFI规范来描述编程的非常具体的示例。在擦除块之后,逐页地对数据进行编程。在NAND闪存上,编程操作通过隧穿(与擦除操作的原理相同)来实现,但是,电子在相反方向上流动以便在浮动栅上累积。此过程具有可变的时间,但是通常需要花费数百微秒才能完成。
为编程,向控制栅施加偏压达足够的时间以使得正确数量的电子被写入到每一存储器单元的浮动栅中。为了使此准确地完成,NAND闪存逻辑单元可以暂停并验证页中的每一存储单元的状态。这是通过感测浮动栅中的电子以对照预期模式进行比较的模式来进行的。该过程被称为“验证”,且一般由每一逻辑单元内的命令电路320来监控。这可使电荷被准确地控制,且当最后的存储单元达到其希望的状态时过程结束,这一般比用于确定擦除过程的持续时间的最坏情况时间短得多。
在一些设计中可以不使用验证。而在其他设计中,特别是多级别存储单元设计,它将发生若干次。目标数据值不确定施加于存储单元的偏压,相反,它改变施加偏压的时间长度。在每一验证之后,只对还没有达到它们的预期状态的存储单元(在浮动栅上需要更多电子的存储单元)施加偏压。如此,编程过程一般而言是对需要更多电子的存储单元的子集施加偏压,然后,对在程序数据页寄存器中保存的参考值进行验证的循环。此过程允许编程尽可能快地完成(不管统计上的变化),以及空和满之间的多个状态将准确地实现。如此,存储器单元可以被编程为包含多个比特的信息。
编程过程可以比典型的读取等待时间慢大致一个数量级。如果编程操作在进行中并且希望从同一个逻辑单元执行读取操作,则读取操作的所产生的延迟比当编程不在进行中时的延迟大得多。为了缩短进程中的编程操作所导致的等待时间,一个或多个读取命令可以中断编程操作。如同擦除操作那样,电荷转移是在微微秒规模发生的量子隧穿,并可以利用对效率的微不足道的变化来暂停。当外部控制判断没有更多读取命令正在等待,或者如果外部控制判断编程操作具有较高优先级,则编程操作继续。这消除了编程操作减慢读取操作所导致的大部分等待时间。这些较短的读取等待时间通常比延迟编程的成本更有价值。事实上,有价值的读取操作被给予优先级以中断不太紧急的编程操作。
在此具体示例中,读取操作可以在紧接编程操作的验证阶段的前面或紧接其的后面中断进程中的编程操作。命令电路320可以使用现在将要被描述的过程,利用由ONFI标准所提供的引脚、信号、命令,以及状态寄存器来实现此。熟悉本技术的人员在阅读此描述之后将理解过程可以由不同的信号约定来管理,特别是在芯片具有与ONFI不同的连接和命令标准的情况下。在此示例中,程序数据的寄存器不同于用于保存读取数据的寄存器,如此,使用其中补充寄存器充当第二内部寄存器的上文的第一公开实施例。如此,用于编程的地址被与用于读取的地址分开地闩锁。
编程操作可以在逻辑单元的设计所准许的任何时间开始。在编程操作期间,SR(6)状态比特指示“未准备好”。编程操作被周期性地以同设备的典型的页读取等待时间相当的某一短时间间隔(例如,以10微秒的时间间隔)来暂停。此暂停可以是纯粹地允许读取操作中断,或者它可以是变换到验证的前奏。状态SR(6)仍保持“未准备好”。
任何挂起的读取操作现在可以使用其自己的读取地址来继续进行,且存储单元值由感测放大器来确定,结果值被放入页寄存器中当阵列读取完成并且数据是已准备好从读取页寄存器中读出时,LUN的SR(6)变为“准备好”。
ONFI交错的读取(读取缓存)可以任选地被用来启动另一个读取操作。通过外部数据总线来收集读取数据。如果交错的读取缓存挂起,那么,当当前页已被收集时,SR(6)变为“未准备好”,而当交错的(挂起)读取缓存完成时将变为“准备好”。如果交错的读取操作挂起,则执行读取操作,并等待SR(6)是“准备好”——指示下一个读取操作已经完成。
当读取了最后的读取操作的数据并且没有交错的读取是挂起的时,芯片恢复被中断的编程操作。再次断言状态SR(6)“未准备好”。如果暂停是纯粹地允许读取操作,那么,编程操作在数据阵列中恢复。如果暂停是验证的前奏,则现在开始编程操作的验证阶段。如果并非全部比特都处于它们的所希望的状态,则验证可以导致写入的恢复。此过程循环,直到验证操作验证所有存储器单元达所需值都适当地完成。在此阶段,LUN空闲,并等待任何命令。
如果读取操作被允许插入在验证阶段之前,则此状态序列适用,但是,步骤的顺序可以被更改,以允许读取操作插入在验证之后,或者实际上读取操作可以有用地介入验证阶段的之前和之后,因为验证阶段本身是在持续时间方面类似于读取操作的步骤。每当读取操作插入时,保存编程-验证周期的状态是重要的,允许该状态不受中断读取操作的干扰。这允许编程-验证周期在插入的读取操作完成时恢复到该状态。
在某些情况下,编程-验证循环可以稍微长于读取等待时间,但是一个隐含结论是,使循环停止更频繁可能是有价值的。这将降低平均读取等待时间,因为读取操作可以具有更频繁的机会来中断,其二由于在每一个编程-验证周期中预期的电荷变化的更频繁的验证和更细的细粒度,还将准许更准确的编程。如果编程-验证周期不能被中断,则这样的折衷不是如此有吸引力,因为额外的验证将添加到编程时间。使编程可中断允许芯片设计者提供可靠性和准确的信号的不同的平衡,而同时仍以在没有可中断的编程的情况下不可能的方式符合总体系统性能目标。自相矛盾地,较慢的但是可中断的编程操作可以导致更快的,更可靠的系统,且每个存储单元带有更好的设备耐久性,以及更多电压电平。
此折衷可能对于允许每个存储单元带有两个、三个或更多比特的多级别电荷芯片被作为高性能芯片来接受而言特别有价值。目前,闪存芯片在存储新的数据时的吞吐量大大地超出许多应用所需的平均速率。然而,只要编程操作干扰读取操作,并且那些相同应用程序通常要求低等待时间,就有使擦除和编程操作更快的需求。通过使擦除和操作可中断,有更好的系统级别的折衷,这些折衷可以使得设备设计者不必考虑交换每个存储单元的更高密度的比特和在多个周期和多年内的改进的设备耐久性,而不会损失总体系统性能。
作为一个额外的优点,由于可以使编程和擦除周期可中断,因此,可以减小编程和擦除电压。这具有增大编程和擦除操作所需的时间的效果,但也可延长芯片的寿命,因为高电压差随着时间的推移往往在设备组件上产生磨损。然而,编程和擦除操作所需的增大时间的是可以接受的——考虑到它们是可中断的。如此,可以延长芯片寿命。
本发明可具体化为其它具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变应被权利要求书的范围所涵盖。

Claims (15)

1.一种物理NAND闪存逻辑单元(201),包括:
多个存储器单元(212),其是可编程且可擦除的;
控制电路(211,300),其被配置成对多个命令作出响应,所述多个命令至少包括被定向到所述多个存储器单元的读取命令、编程命令,以及擦除命令;
通信地耦合到所述控制电路的通信总线接口(203),用于从外部命令源向所述控制电路提供读取、编程以及擦除命令,
其中所述控制电路包括:
多个寄存器(310),包括内部数据寄存器(311A)、内部地址寄存器(311B)、外部数据寄存器(312A)、外部地址寄存器(312B)、补充数据寄存器(313A),以及补充地址寄存器(313B);以及
用于通过控制所述多个寄存器来对所述多个命令作出响应的命令电路(320)。
2.如权利要求1所述的物理NAND闪存逻辑单元,
其特征在于,所述内部数据寄存器是第一内部数据寄存器,而所述内部地址寄存器是第一内部地址寄存器,其中所述第一内部数据寄存器和所述第一内部地址寄存器专门用于非读取命令;以及
其中所述补充数据寄存器是第二内部数据寄存器,而所述补充地址寄存器是第二内部地址寄存器,其中所述第二内部数据寄存器和所述第二内部地址寄存器专门用于读取命令。
3.如权利要求2所述的物理NAND闪存逻辑单元,
其特征在于,所述非读取命令包括编程命令和擦除命令。
4.如权利要求3所述的物理NAND闪存逻辑单元,
其特征在于,当在所述多个存储器单元上执行命令时,所述第二内部数据寄存器和所述第二内部地址寄存器至少在某些情况下相对于所述第一内部数据寄存器和所述第一内部地址寄存器具有处理优先级。
5.如权利要求4所述的物理NAND闪存逻辑单元,
其特征在于,所述命令电路被配置成检测与所述外部地址寄存器中的所述地址相关联的命令的类型,
并且如果所述命令类型是编程命令类型,则被配置成一旦可用,就将数据从所述外部数据寄存器移至所述第一内部数据寄存器,以及一旦可用,就将所述外部地址寄存器中的所述地址移至所述第一内部地址寄存器,
并且如果所述命令类型是擦除命令类型,则被配置成一旦可用,就将所述外部地址寄存器中的所述地址移至所述第一内部地址寄存器,
并且如果所述命令类型是读取命令类型,则被配置成将所述外部地址寄存器中的所述地址移至所述第二内部地址寄存器。
6.如权利要求1所述的NAND闪存逻辑单元,其特征在于,所述命令电路确定:读取命令是在对应于进程中的编程命令的所述编程操作的验证阶段期间,以所述读取命令中断所述进程中的编程命令的方式,所述中断进程中的编程命令。
7.如权利要求1所述的NAND闪存逻辑单元,其特征在于,如果在对应于所述进程中的编程命令的所述编程操作中剩余多于定义的时间量,则所述命令电路确定读取命令是中断进程中的编程命令。
8.如权利要求1所述的物理NAND闪存逻辑单元,
其特征在于,所述内部数据寄存器和所述内部地址寄存器被用于读取命令和非读取命令;以及
其中所述补充数据寄存器是备份数据寄存器,而所述补充地址寄存器是备份地址寄存器,
其中所述命令电路被构建为:
a)当所述命令电路确定读取命令是中断进程中的编程命令时,将所述进程中的编程命令的数据和地址状态从所述内部数据寄存器和内容地址寄存器备份到所述备份数据寄存器和所述备份地址寄存器;
b)将所述中断读取命令的所述地址提供到所述内部地址寄存器,以便在所述多个存储器单元上执行由所述中断读取命令指定的所述读取;以及
c)在所述中断读取命令完成之后的某一时刻,将所述进程中的编程命令的所述数据和地址恢复到所述内部数据寄存器和所述内部地址寄存器,以便对所述编程命令进行进一步的处理。
9.如权利要求8所述的物理NAND闪存逻辑单元,其特征在于,所述读取命令是第一读取命令,其中所述命令电路被进一步构建为:
d)当所述命令电路确定第二读取命令是中断进程中的擦除命令时,将所述进程中的擦除命令的状态备份到至少所述备份地址寄存器;
e)将所述中断第二读取命令的所述地址提供到所述内部地址寄存器,以便在所述多个存储器单元上执行由所述中断第二读取命令指定的所述读取;以及
f)在所述中断第二读取命令完成之后的某一时刻,将所述进程中的擦除命令的所述状态恢复到至少所述内部地址寄存器,以便对所述擦除命令进行进一步的处理。
10.如权利要求1所述的物理NAND闪存逻辑单元,
其特征在于,所述内部数据寄存器和所述内部地址寄存器被用于读取命令和非读取命令;以及
其中所述补充数据寄存器是备份数据寄存器,而所述补充地址寄存器是备份地址寄存器,
其中所述命令电路被构建为:
a)当所述命令电路确定读取命令是中断进程中的擦除命令时,将所述进程中的擦除命令的状态备份到至少所述备份地址寄存器;以及
b)将所述中断读取命令的所述地址提供到所述内部地址寄存器,以便在所述多个存储器单元上执行由所述中断读取命令指定的所述读取;以及
c)在所述中断读取命令完成之后的某一时刻,将所述进程中的擦除命令的所述状态恢复到至少所述内部地址寄存器,以便对所述擦除命令进行进一步的处理。
11.如权利要求1所述的物理NAND闪存逻辑单元,其特征在于,所述多个存储器单元中的每一个是多比特存储器单元。
12.如权利要求1所述的物理NAND闪存逻辑单元,其特征在于,所述多个命令排他地包括与ONFI协议兼容的命令。
13.一种用于操作物理NAND闪存逻辑单元(201)的控制电路(211,300)的方法(400,500),所述方法包括:
通过将与编程命令相关联的数据置于外部数据寄存器(312A)中并将与所述编程命令相关联的地址置于外部地址寄存器(312B)中来接收(401,501)所述编程命令的动作;
确定(411,511)内部数据寄存器(311A)和内部地址寄存器(311B)准备好接收所述编程命令的准备就绪状态的动作;
响应于所述确定准备就绪状态的动作,通过将所述与编程命令相关联的数据提供(413,513)到内部数据寄存器,以及将所述与编程命令相关联的地址提供(414,514)到内部地址寄存器,来将所述编程命令提供到所述内部数据寄存器和所述内部地址寄存器的动作;
在将所述编程命令提供到所述内部数据寄存器和所述内部地址寄存器的所述动作之后,启动对由所述与编程命令相关联的地址寻址的多个存储器单元(212)的一部分上的所述编程命令的处理(416,515)的动作;
在仍在处理所述编程命令的同时,确定(502,532)接收到所述外部地址寄存器的读取命令是中断对所述编程命令的处理的动作;
使用(536,537)补充数据寄存器和补充地址寄存器来中断对所述编程命令的处理的动作;
在所述多个存储器单元上处理(538)所述读取命令的动作;以及
在处理所述读取命令之后,恢复(437,542)对所述编程命令的处理的动作。
14.如权利要求13所述的方法,
其特征在于,使用所述补充数据寄存器和所述补充地址寄存器来中断对所述编程命令的处理的动作包括:
将与所述编程命令相关联的所述数据从所述内部数据寄存器备份到所述补充数据寄存器的动作;
将与所述编程命令相关联的所述地址从所述内部地址寄存器备份到所述补充地址寄存器的动作;以及
在所述备份动作之后,将与所述读取命令相关联的所述地址从所述外部地址寄存器提供到所述内部地址寄存器的动作;
其中处理所述读取命令的动作包括:
将由与所述读取命令相关联的所述地址寻址的所述多个存储器单元的一部分的内容读取到所述内部数据寄存器中的动作;以及
将所述读取数据从所述内部数据寄存器提供到所述外部数据寄存器的动作;以及
其中恢复对所述编程命令的处理的动作包括:
将与所述编程命令相关联的所述数据从所述补充数据寄存器提供到所述内部数据寄存器的动作;以及
将与所述编程命令相关联的所述地址从所述补充地址寄存器提供到所述内部地址寄存器的动作。
15.如权利要求13所述的方法,
其特征在于,使用所述补充数据寄存器和所述补充地址寄存器来中断对所述编程命令的处理的动作包括:
将与所述读取命令相关联的地址从所述外部地址寄存器提供到所述补充地址寄存器的动作;以及
禁用所述内部数据寄存器和所述内部地址寄存器以使得所述编程操作暂停的动作;
其中,处理所述读取命令的动作包括:
启用所述补充数据寄存器和所述补充地址寄存器以使得由与所述读取命令相关联的所述地址寻址的所述多个存储器单元的一部分的所述内容被读取到所述补充数据寄存器的动作;以及
将所述读取数据从所述补充数据寄存器提供到所述外部数据寄存器的动作;以及
其中恢复对所述编程命令的处理的动作包括:
禁用所述补充数据寄存器和所述补充地址寄存器的动作;
启用所述内部数据寄存器和所述内部地址寄存器以使得所述编程命令恢复执行的动作。
CN201080038104.1A 2009-08-28 2010-08-06 可中断的nand闪存 Active CN102483951B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/549,897 2009-08-28
US12/549,897 US8850103B2 (en) 2009-08-28 2009-08-28 Interruptible NAND flash memory
PCT/US2010/044785 WO2011031398A2 (en) 2009-08-28 2010-08-06 Interruptible nand flash memory

Publications (2)

Publication Number Publication Date
CN102483951A true CN102483951A (zh) 2012-05-30
CN102483951B CN102483951B (zh) 2015-04-29

Family

ID=43626518

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080038104.1A Active CN102483951B (zh) 2009-08-28 2010-08-06 可中断的nand闪存

Country Status (9)

Country Link
US (1) US8850103B2 (zh)
EP (1) EP2471067B1 (zh)
JP (1) JP5529275B2 (zh)
KR (1) KR101702158B1 (zh)
CN (1) CN102483951B (zh)
AU (1) AU2010292898B2 (zh)
CA (1) CA2768212C (zh)
MX (1) MX2012002118A (zh)
WO (1) WO2011031398A2 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106067321A (zh) * 2015-04-21 2016-11-02 爱思开海力士有限公司 适于存储器编程暂停-恢复的控制器
CN106158026A (zh) * 2015-04-09 2016-11-23 旺宏电子股份有限公司 存储装置与其操作方法
CN106708441A (zh) * 2016-12-29 2017-05-24 忆正科技(武汉)有限公司 一种用于降低固态存储读延迟的操作方法
CN106775503A (zh) * 2017-02-23 2017-05-31 郑州云海信息技术有限公司 一种执行操作指令的方法及装置
CN107045891A (zh) * 2015-11-04 2017-08-15 三星电子株式会社 非易失性存储器装置及其操作方法
CN107818809A (zh) * 2016-09-12 2018-03-20 东芝存储器株式会社 半导体存储装置及存储器系统
CN108713184A (zh) * 2016-03-30 2018-10-26 英特尔公司 在存储器装置中执行擦除暂停操作的方法和设备
CN109407991A (zh) * 2018-10-22 2019-03-01 湖南国科微电子股份有限公司 一种非易失性闪存执行命令的暂停及恢复方法、非易失性闪存及电子设备
CN109410999A (zh) * 2017-08-17 2019-03-01 三星电子株式会社 非易失性存储器器件及操作其的方法
CN109935252A (zh) * 2017-12-15 2019-06-25 旺宏电子股份有限公司 存储器装置及其操作方法
CN110058799A (zh) * 2018-01-18 2019-07-26 爱思开海力士有限公司 存储器装置及操作存储器装置的方法
CN110413535A (zh) * 2018-04-26 2019-11-05 爱思开海力士有限公司 存储器控制器及存储器控制器的操作方法

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120179860A1 (en) * 2009-06-10 2012-07-12 Francesco Falanga Suspension of memory operations for reduced read latency in memory arrays
US8131889B2 (en) 2009-11-10 2012-03-06 Apple Inc. Command queue for peripheral component
JP5441216B2 (ja) 2010-02-24 2014-03-12 ルネサスエレクトロニクス株式会社 半導体装置及びデータ処理システム
WO2012021379A2 (en) 2010-08-10 2012-02-16 Rambus Inc. Verify before program resume for memory devices
JP5378326B2 (ja) 2010-08-17 2013-12-25 株式会社東芝 不揮発性半導体記憶装置とその制御方法
US8819328B2 (en) 2010-12-30 2014-08-26 Sandisk Technologies Inc. Controller and method for performing background operations
US8364888B2 (en) * 2011-02-03 2013-01-29 Stec, Inc. Erase-suspend system and method
US8543758B2 (en) * 2011-05-31 2013-09-24 Micron Technology, Inc. Apparatus including memory channel control circuit and related methods for relaying commands to logical units
US9021146B2 (en) 2011-08-30 2015-04-28 Apple Inc. High priority command queue for peripheral component
US20130179614A1 (en) * 2012-01-10 2013-07-11 Diarmuid P. Ross Command Abort to Reduce Latency in Flash Memory Access
US8918680B2 (en) 2012-01-23 2014-12-23 Apple Inc. Trace queue for peripheral component
US20130318285A1 (en) * 2012-05-23 2013-11-28 Violin Memory Inc Flash memory controller
US9754648B2 (en) 2012-10-26 2017-09-05 Micron Technology, Inc. Apparatuses and methods for memory operations having variable latencies
US9740485B2 (en) * 2012-10-26 2017-08-22 Micron Technology, Inc. Apparatuses and methods for memory operations having variable latencies
CN103809717B (zh) * 2012-11-09 2017-04-12 华为技术有限公司 复位方法和网络设备
US9813080B1 (en) 2013-03-05 2017-11-07 Microsemi Solutions (U.S.), Inc. Layer specific LDPC decoder
US10230396B1 (en) 2013-03-05 2019-03-12 Microsemi Solutions (Us), Inc. Method and apparatus for layer-specific LDPC decoding
US9734097B2 (en) 2013-03-15 2017-08-15 Micron Technology, Inc. Apparatuses and methods for variable latency memory operations
KR20150008671A (ko) * 2013-07-15 2015-01-23 에스케이하이닉스 주식회사 반도체 장치
US9727493B2 (en) 2013-08-14 2017-08-08 Micron Technology, Inc. Apparatuses and methods for providing data to a configurable storage area
US9400745B2 (en) 2013-11-06 2016-07-26 International Business Machines Corporation Physical address management in solid state memory
KR102226367B1 (ko) * 2014-01-02 2021-03-12 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 불휘발성 메모리 시스템
KR102187637B1 (ko) 2014-02-03 2020-12-07 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 소거 방법
KR102203298B1 (ko) * 2014-08-01 2021-01-15 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 구동 방법
US9214045B1 (en) 2014-08-29 2015-12-15 Freescale Semiconductor, Inc. Flash memory express erase and program
TWI582775B (zh) * 2015-04-14 2017-05-11 旺宏電子股份有限公司 記憶體裝置與其操作方法
US10332613B1 (en) 2015-05-18 2019-06-25 Microsemi Solutions (Us), Inc. Nonvolatile memory system with retention monitor
US9799405B1 (en) 2015-07-29 2017-10-24 Ip Gem Group, Llc Nonvolatile memory system with read circuit for performing reads using threshold voltage shift read instruction
US10318193B2 (en) * 2015-09-14 2019-06-11 Sandisk Technologies Llc Systems and methods of command authorization
US9886214B2 (en) 2015-12-11 2018-02-06 Ip Gem Group, Llc Nonvolatile memory system with erase suspend circuit and method for erase suspend management
US9892794B2 (en) 2016-01-04 2018-02-13 Ip Gem Group, Llc Method and apparatus with program suspend using test mode
US9899092B2 (en) 2016-01-27 2018-02-20 Ip Gem Group, Llc Nonvolatile memory system with program step manager and method for program step management
KR102624606B1 (ko) * 2016-07-04 2024-01-15 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
US10157677B2 (en) 2016-07-28 2018-12-18 Ip Gem Group, Llc Background reference positioning and local reference positioning using threshold voltage shift read
US10291263B2 (en) 2016-07-28 2019-05-14 Ip Gem Group, Llc Auto-learning log likelihood ratio
US10236915B2 (en) 2016-07-29 2019-03-19 Microsemi Solutions (U.S.), Inc. Variable T BCH encoding
JP2018156698A (ja) * 2017-03-15 2018-10-04 東芝メモリ株式会社 メモリシステム
TWI696078B (zh) 2017-05-26 2020-06-11 旺宏電子股份有限公司 記憶體裝置及其操作方法
KR102420161B1 (ko) * 2017-12-01 2022-07-12 삼성전자주식회사 메모리 컨트롤러 및 그것의 제어 방법
US10566062B2 (en) 2017-12-14 2020-02-18 Macronix International Co., Ltd. Memory device and method for operating the same
TWI667657B (zh) * 2017-12-14 2019-08-01 旺宏電子股份有限公司 記憶體裝置及其操作方法
US10802756B1 (en) 2018-07-12 2020-10-13 Seagate Technology Llc Flash queue status polling
KR20200057311A (ko) * 2018-11-16 2020-05-26 삼성전자주식회사 통신되는 데이터의 양을 동작의 중단 빈도에 따라 스로틀링하는 스토리지 장치
JP7159069B2 (ja) 2019-01-29 2022-10-24 キオクシア株式会社 メモリシステムおよび制御方法
US11164640B2 (en) 2019-04-30 2021-11-02 Samsung Electronics Co., Ltd. Non-volatile memory device and programming method thereof
US11901012B2 (en) 2019-04-30 2024-02-13 Samsung Electronics Co., Ltd. Non-volatile memory device and programming method thereof
KR20200126609A (ko) 2019-04-30 2020-11-09 삼성전자주식회사 비휘발성 메모리 장치 및 그 프로그래밍 방법
US11061578B2 (en) * 2019-08-05 2021-07-13 Micron Technology, Inc. Monitoring flash memory erase progress using erase credits
KR20210057355A (ko) 2019-11-12 2021-05-21 에스케이하이닉스 주식회사 메모리 장치, 메모리 컨트롤러, 메모리 시스템 및 그 동작 방법
FR3104285B1 (fr) * 2019-12-05 2022-05-27 St Microelectronics Grenoble 2 Contrôle d’intégrité d’une mémoire
US11081187B2 (en) * 2019-12-11 2021-08-03 SanDiskTechnologies LLC Erase suspend scheme in a storage device
US11137936B2 (en) 2020-01-21 2021-10-05 Google Llc Data processing on memory controller
KR20210155467A (ko) 2020-06-16 2021-12-23 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US11625297B2 (en) 2020-08-28 2023-04-11 Samsung Electronics Co., Ltd. Storage device and operating method thereof
KR20220094726A (ko) 2020-12-29 2022-07-06 삼성전자주식회사 메모리 컨트롤러, 비휘발성 메모리 장치 및 그 스토리지 장치
US11604732B1 (en) * 2021-09-02 2023-03-14 Micron Technology, Inc. Memory performance during program suspend protocol
CN115658570B (zh) * 2022-12-14 2023-03-21 杰创智能科技股份有限公司 闪存编程方法和闪存接口电路

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5912848A (en) * 1996-09-30 1999-06-15 Nokia Mobile Phones Limited Methods and apparatus for efficiently managing flash memory
CN1293778A (zh) * 1999-01-27 2001-05-02 松下电器产业株式会社 存取控制装置和存取方法
US20050157560A1 (en) * 2002-02-06 2005-07-21 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
CN101410905A (zh) * 2006-03-28 2009-04-15 诺基亚公司 减小非易失性存储器读取延迟的方法和设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5034922A (en) * 1987-12-21 1991-07-23 Motorola, Inc. Intelligent electrically erasable, programmable read-only memory with improved read latency
US5509134A (en) 1993-06-30 1996-04-16 Intel Corporation Method and apparatus for execution of operations in a flash memory array
JPH07181195A (ja) 1993-12-24 1995-07-21 Kobe Steel Ltd 溶融金属用電磁流速センサ及び流速測定装置並びにそれを用いた流速測定方法
US5559988A (en) * 1993-12-30 1996-09-24 Intel Corporation Method and circuitry for queuing snooping, prioritizing and suspending commands
JPH07254292A (ja) * 1994-03-15 1995-10-03 Mitsubishi Electric Corp 不揮発性メモリおよびこの不揮発性メモリを用いたマイクロコンピュータ
US6201739B1 (en) * 1996-09-20 2001-03-13 Intel Corporation Nonvolatile writeable memory with preemption pin
US5847998A (en) 1996-12-20 1998-12-08 Advanced Micro Devices, Inc. Non-volatile memory array that enables simultaneous read and write operations
US5822244A (en) 1997-09-24 1998-10-13 Motorola, Inc. Method and apparatus for suspending a program/erase operation in a flash memory
US6851026B1 (en) 2000-07-28 2005-02-01 Micron Technology, Inc. Synchronous flash memory with concurrent write and read operation
US7062615B2 (en) * 2003-08-29 2006-06-13 Emulex Design & Manufacturing Corporation Multi-channel memory access arbitration method and system
ITMI20050063A1 (it) * 2005-01-20 2006-07-21 Atmel Corp Metodo e sistema per la gestione di una richiesta di sospensione in una memoria flash
US8200887B2 (en) 2007-03-29 2012-06-12 Violin Memory, Inc. Memory management system and method
US8004884B2 (en) * 2009-07-31 2011-08-23 International Business Machines Corporation Iterative write pausing techniques to improve read latency of memory systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5912848A (en) * 1996-09-30 1999-06-15 Nokia Mobile Phones Limited Methods and apparatus for efficiently managing flash memory
CN1293778A (zh) * 1999-01-27 2001-05-02 松下电器产业株式会社 存取控制装置和存取方法
US20050157560A1 (en) * 2002-02-06 2005-07-21 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
CN101410905A (zh) * 2006-03-28 2009-04-15 诺基亚公司 减小非易失性存储器读取延迟的方法和设备

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106158026A (zh) * 2015-04-09 2016-11-23 旺宏电子股份有限公司 存储装置与其操作方法
CN106067321B (zh) * 2015-04-21 2020-09-15 爱思开海力士有限公司 适于存储器编程暂停-恢复的控制器
CN106067321A (zh) * 2015-04-21 2016-11-02 爱思开海力士有限公司 适于存储器编程暂停-恢复的控制器
CN107045891A (zh) * 2015-11-04 2017-08-15 三星电子株式会社 非易失性存储器装置及其操作方法
CN107045891B (zh) * 2015-11-04 2022-04-12 三星电子株式会社 非易失性存储器装置及其操作方法
CN108713184B (zh) * 2016-03-30 2022-09-20 英特尔公司 在存储器装置中执行擦除暂停操作的方法和设备
US11402996B2 (en) 2016-03-30 2022-08-02 Intel Corporation Methods and apparatus to perform erase-suspend operations in memory devices
CN108713184A (zh) * 2016-03-30 2018-10-26 英特尔公司 在存储器装置中执行擦除暂停操作的方法和设备
CN107818809B (zh) * 2016-09-12 2021-06-25 东芝存储器株式会社 半导体存储装置及存储器系统
CN107818809A (zh) * 2016-09-12 2018-03-20 东芝存储器株式会社 半导体存储装置及存储器系统
CN106708441B (zh) * 2016-12-29 2019-06-21 至誉科技(武汉)有限公司 一种用于降低固态存储读延迟的操作方法
CN106708441A (zh) * 2016-12-29 2017-05-24 忆正科技(武汉)有限公司 一种用于降低固态存储读延迟的操作方法
CN106775503A (zh) * 2017-02-23 2017-05-31 郑州云海信息技术有限公司 一种执行操作指令的方法及装置
CN109410999A (zh) * 2017-08-17 2019-03-01 三星电子株式会社 非易失性存储器器件及操作其的方法
CN109410999B (zh) * 2017-08-17 2023-12-01 三星电子株式会社 非易失性存储器器件及操作其的方法
CN109935252A (zh) * 2017-12-15 2019-06-25 旺宏电子股份有限公司 存储器装置及其操作方法
CN109935252B (zh) * 2017-12-15 2021-03-30 旺宏电子股份有限公司 存储器装置及其操作方法
CN110058799A (zh) * 2018-01-18 2019-07-26 爱思开海力士有限公司 存储器装置及操作存储器装置的方法
CN110413535A (zh) * 2018-04-26 2019-11-05 爱思开海力士有限公司 存储器控制器及存储器控制器的操作方法
CN110413535B (zh) * 2018-04-26 2023-08-11 爱思开海力士有限公司 存储器控制器及存储器控制器的操作方法
CN109407991B (zh) * 2018-10-22 2022-06-07 湖南国科微电子股份有限公司 一种非易失性闪存执行命令的暂停及恢复方法、非易失性闪存及电子设备
CN109407991A (zh) * 2018-10-22 2019-03-01 湖南国科微电子股份有限公司 一种非易失性闪存执行命令的暂停及恢复方法、非易失性闪存及电子设备

Also Published As

Publication number Publication date
EP2471067B1 (en) 2021-09-15
MX2012002118A (es) 2012-03-07
AU2010292898B2 (en) 2014-06-05
WO2011031398A3 (en) 2011-05-05
JP2013503412A (ja) 2013-01-31
EP2471067A2 (en) 2012-07-04
CN102483951B (zh) 2015-04-29
CA2768212A1 (en) 2011-03-17
WO2011031398A2 (en) 2011-03-17
CA2768212C (en) 2016-09-13
EP2471067A4 (en) 2013-08-07
AU2010292898A1 (en) 2012-02-16
US20110055453A1 (en) 2011-03-03
JP5529275B2 (ja) 2014-06-25
US8850103B2 (en) 2014-09-30
KR20120092561A (ko) 2012-08-21
KR101702158B1 (ko) 2017-02-02

Similar Documents

Publication Publication Date Title
CN102483951A (zh) 可中断的nand闪存
CN110088721B (zh) 用于经由命令仲裁进行热节流的存储系统和方法
US8438356B2 (en) Flash memory controller
KR102000307B1 (ko) 메모리 리프레시 방법 및 장치
US9734098B2 (en) Memory bus management
KR101304254B1 (ko) 플래시 메모리 시스템들에서 하우스키핑 동작들의 스케쥴링
US20130265841A1 (en) Immunity Against Temporary and Short Power Drops in Non-Volatile Memory
CN112148627A (zh) 针对分区命名空间的分区形成
US20050024968A1 (en) Apparatus for reducing data corruption in a non-volatile memory
US20160291883A1 (en) Inherent adaptive trimming
JP2009503726A (ja) 状況依存メモリ性能
TW200845016A (en) Non-volatile memory with dynamic multi-mode operation
CN104919438B (zh) 存储器装置中的自动后台操作的主机控制的启用
TW201216058A (en) Use of guard bands and phased maintenance operations to avoid exceeding maximum latency requirements in non-volatile memory systems
KR20170033227A (ko) 전력 관리 메커니즘을 갖는 솔리드 스테이트 메모리 시스템 및 그것의 동작 방법
CN108228093B (zh) 使用后台介质扫描来监控存储器的方法和装置
TW200915072A (en) Managing housekeeping operations in flash memory
TWI833518B (zh) 記憶體裝置、系統及用於操作包括記憶胞陣列的記憶體裝置的方法
TW202410045A (zh) 記憶體裝置、系統及用於操作包括記憶胞陣列的記憶體裝置的方法
CN117636960A (zh) 存储器器件和在其编程操作暂停期间的读取操作
KR20220045549A (ko) 데이터의 메모리로의 예측 기반 선택적 플러시
KR20090106421A (ko) 메모리 시스템
TW202409818A (zh) 記憶體元件及其操作方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150805

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150805

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.