具有写入/擦除中止检测机制的快闪存储系统的制作方法

文档序号:6756201阅读:180来源:国知局
专利名称:具有写入/擦除中止检测机制的快闪存储系统的制作方法
技术领域
本发明大体而言涉及非易失性存储器及其操作,且更具体而言涉及决定所中止的写入及擦除操作。
背景技术
快闪EEPROM装置的常见应用是用作电子装置的大量数据存储子系统。通常将此类子系统构建为可插入多个主机系统内的可更换存储卡或构建为主机系统内的非可更换嵌入式存储器。在这两种构建方案中,子系统皆包括一个或多个快闪装置且通常还包括一子系统控制器。
快闪EEPROM装置由一个或多个晶体管单元阵列组成,每一个单元均能够以非易失性方式存储一个或多个数据位。因此快闪存储器不需要使用功率来保持编程至其中的数据。然而,一旦得到编程,就必须在可使用新数据值对一单元重新编程之前擦除该单元。所述单元阵列分割成若干个群组,以便有效地实施读取、编程及擦除功能。用于大量存储器的典型快闪存储器架构将大量单元群组布置成可擦除的区块,其中一区块包含可一次擦除的最小数量的单元(擦除单位)。
在一市售形式中,每一区块均包含足够的单元,以存储一个扇区的使用者数据加上与所述使用者数据及/或存储其的区块有关的某些开销数据。一扇区内所包括的用户数据的数量在一种类别的此种存储系统中为标准512个字节,但也可具有其他大小。由于各个单元区块的彼此隔离(以便使其可分别加以擦除)占用集成电路芯片上的空间,因而另一类别的快闪存储器的区块明显变大,以使此种隔离所需要的空间变小。但由于还期望在更小的扇区内处理用户数据,因而通常将每一较大区块进一步分割为可分别定址的页面,所述可分别定址的页面是读取及编程用户数据的基本单位。每一页面通常存储一个扇区的用户数据,但一页面也可存储一不完整扇区或多个扇区。本文所使用的「扇区」是指作为一个单位传输至主机及从主机传输的用户数据数量。
大区块系统内的子系统控制器执行许多功能,包括在由存储器子系统自主机接收的逻辑位址与存储单元阵列内的实体位址之间进行转译。此种转译通常涉及到对逻辑区块编号(logical block number;LBN)与逻辑页面使用中间项。控制器还通过一系列其经由接口母线发送至快闪存储器装置的命令来管理低层次快闪电路操作。控制器所执行的另一功能是保持通过各种方式(例如通过使用错误修正码(error correction code;ECC))存储于子系统中的数据的完整性。
倘若在此一存储器电路的操作过程中停电,例如如果从主机移出记忆卡或一具有集成存储器的装置掉电,则存储器可在写入或擦除操作中间中断,导致操作不能完成。例如,如果在一编程过程中当正得到写入的一群组的大部分但非全部单元已到达其目标状态时存储器系统掉电,则所述写入群组可包含大量错误。如在所属技术领域中所熟知,一般在存储器系统内并入错误修正码(ECC)来确定及修正数据错误。在完成编程操作之前停电可导致在读取被中断的写入群组时所述写入群组将处于以下三种状况中(1)可由ECC修正;(2)无法由ECC修正;以及(3)可发生ECC误检测。在第一种情形中,错误范围足够小,此时错误修正码可抢救所述数据。在第二种情形中,数据将是错误的,但系统会确定出此种状况。在第三种情形中,数据同样将是错误的,但由于ECC误检测,因而系统并不知道此种状况。
如果(例如)ECC能够修正最多比如4个位的错误、但所述写入群组内有7位数据未被正确写入,就可能发生此最后一种情形,即ECC误检测。因而系统将不知道被不正确写入的数据,并且其工作方式彷佛其已修正了所述写入群组内的任何错误一般,但所述数据仍为错误数据。如果在擦除过程期间发生掉电,也可出现类似情况。所述情形使得ECC写入及擦除中止检测远不够理想,并且对于其中知道数据是否已正确输入将非常重要的紧要任务情况尤其讨厌。因此,存储器系统在这一方面还有改进余地。

发明内容
依据第一方面,本发明提供一种非易失性存储器及其操作方法,其以最小的系统性能损失在非易失性存储器编程及擦除过程中掉电情况下确保具有用于写入及擦除中止检测的可靠机制。在一示范性具体实施例中,为确保能以最小的性能影响可靠地检测写入中止故障,引入一种新的写入中止检测机制。该演算法包括扇区开销信息内一前一扇区状态旗标(Previous Sector Status;PSS)及一最末扇区状态旗标(Last SectorStatus;LSS),其中所述前一扇区状态旗标(PSS)可通过ECC保护。
在一向一区块内的扇区0至x进行写入的多扇区写入过程中,在编程扇区0内的数据后,所述演算法将写入扇区1的PSS以及扇区1内的数据,以指示扇区0已完成编程并且未发生写入中止;在对扇区1编程后,所述演算法将写入扇区2的PSS以及扇区2内的数据,以指示扇区1已完成编程并且未发生写入中止;依此类推,直至最末扇区得到编程为止。为指示最末扇区已完成编程而无写入中止,写入最末扇区的LSF。因此,仅主机程式命令内的最末扇区需要进行两次编程操作来确保写入中止检测。
在本发明的另一方面中,所述机制通过查看下一实体扇区的PSS及当前扇区的LSS所述扇区是否是区块内的最末编程扇区或区块的最末实体扇区,来确保写入中止故障检测。
在本发明的另一方面中,可在一成功的擦除操作后标记所述区块的第一扇区内的一擦除中止旗标(erase abort flag;EAF)。借助所述旗标,系统可在下一次通电的下一次初始化过程中成功地检测写入中止或擦除中止。写入中止检测方案对于多状态存储器尤其有效(1)由于所需编程时间更长,因而设计用于处理多状态系统的硬体会更加困难及昂贵,以及(2)同样由于所需编程时间更长,在多状态系统中因不对每个单一扇区进行两次编程而获得的性能要大得多。
本发明的其他方面、特征与优点包括于以下对范例性具体实施例的说明中,该说明应结合附图进行阅读。


图1为一将在其中实施本发明各个方面的非易失性存储器系统的方块图;图2例示图1所示存储器阵列在为NAND型时的现有电路与组织;图3显示形成于半导体衬底上的NAND型存储器阵列沿一列的断面图;图4为图3所示存储器阵列沿其断面4-4截取的断面图;图5为图3所示存储器阵列沿其断面5-5截取的断面图;图6A-C示意性显示依据示范性具体实施例的区块结构;以及图7为示范性写入过程的流程图。
具体实施例方式
范例性非易失性存储器系统参考图1至7,其说明一其中实施本发明的各方面的特定非易失性存储器系统,以提供特定范例。为减少擦除过程中的干扰量,本发明使未选定存储元件的控制栅极保持于与其底部井结构相同的电压电平。在一示范性具体实施例中,在一井结构上形成存储元件。在一擦除过程期间,使位于所述井上面的选定的与未选定的存储元件二者都升高至一擦除电压,同时在所述井中建立此电压电平。然后在所述井及未选定存储元件上保持该电压,从而减小出现任何与擦除相关的干扰的机会,同时允许选定的存储元件放电,从而产生所需的擦除条件。此外,此可在不增加电路的任何间距区域或在存储器阵列中增加新的导线的情况下完成,从而使电路所增加的额外外围区域最小。
为具体起见,本发明针对NAND型EEPROM快闪存储器加以说明,但下文将进一步论述一般化情况。具体而言,本说明将使用在第6,522,580号美国专利以及以引用方式并入上文中的与NAND系统相关的其他申请案中所述的系统类型。当在下文中需要具体的电压时,可认为擦除电压Veras。处于15至20伏特范围内,低逻辑电平视为接地,而高逻辑电平Vdd则视为处于1.5至3伏特范围内,当然也可使用其他的值,此视设计而定。
图1为一快闪存储器系统的方块图。包括复数个布置成矩阵形式的存储单元M的存储单元阵列1是由列控制电路2、行控制电路3、c-源极控制电路4及c-p井控制电路5控制。列控制电路2连接至存储单元阵列1的位线(BL),以便读取存储于存储单元(M)内的数据、在程序作业过程中确定存储单元(M)的状态、以及控制位线(BL)的电位电平以促进编程或抑制编程。行控制电路3连接至字线(WL),以选择其中一条字线(WL)、施加读取电压、施加与由列控制电路2所控制的位线电位电平相结合的编程电压、及施加与上面形成有存储单元(M)的p型区域(在图3中标记为“c-p井”11)的电压相耦合的擦除电压。c-源极控制电路4控制连接至存储单元(M)的共用源极线(在图2中标记为「c-源极」)。c-p井控制电路5控制c-p井的电压。
存储于存储单元(M)内的数据是通过列控制电路2读出并经由I/O线及数据输入/输出缓冲器6输出至外部I/O线。将要存储于存储单元内的程序数据则是经由外部I/O线输入至数据输入/输出缓冲器6,并传输至列控制电路2。所述外部I/O线连接至控制器20。用于控制快闪存储器装置的命令数据输入至一命令接口,所述命令接口连接至外部控制线,所述外部控制线又与控制器20相连。命令数据将所请求的为何种操作通知快闪存储器。输入命令被传输至一状态机8,所述状态机8控制列控制电路2、行控制电路3、c-源极控制电路4、c-p井控制电路5及数据输入/输出缓冲器6。状态机8可输出快闪存储器的状态数据,例如READY(就绪)/BUSY(忙)或PASS(成功)/FAIL(失败)。
控制器20与或可与主机系统相连接,所述主机系统可为个人计算机、数字相机或个人数字助理等。所述主机启用例如用于向存储器阵列1存储数据或从存储器阵列1读取数据的命令,并相应地提供或接收该数据。所述控制器将所述命令转换为可由命令电路7解译及执行的命令信号。所述控制器还通常包含用于写入至或读取自存储器阵列的用户数据的缓冲存储器。典型的存储器系统包括一个包含控制器20的集成电路芯片21、与一个或多个分别包含一存储器阵列及相关控制、输入/输出及状态机电路的集成电路芯片22。当然,目前的趋势是将系统中的存储器阵列与控制器电路一起集成在一个或多个集成电路芯片上。存储器系统可作为主机系统的一部分嵌入主机系统中,或者可包含于一记忆卡中,所述记忆卡可按可移出方式插入主机系统中的配合插座内。此种卡可包括整个存储器系统,或者可在单独的卡中分别提供带有相关联外围电路的控制器与存储器阵列。
参考图2,其中说明存储单元阵列1的一示范性结构。将NAND型快闪EEPROM作为范例来说明。将存储单元(M)分割为若干区块,在一特定范例中为1,024个区块。存储在每一区块中的数据是同时擦除。因此,区块是可同时擦除的单元数量的最小单位。在每一区块中,均具有N个列,在此范例中N=8,512,其分为左侧列与右侧列,如在第6,522,580号美国专利所进一步说明。各位线也分成左侧位线(BLL)及右侧位线(BLR)。在每一栅极电极处连接至字线(WL0至WL3)的四个存储单元串连连接形成一NAND单元。NAND单元的一个端子经由一其栅极电极耦接至第一(漏极)选择栅极线(SGD)的第一选择晶体管(S)连接至对应位线(BL)、且另一端子通过一其栅极电极耦接至第二选择栅极线(SGS)的第二(源极)选择晶体管(S)连接至c-源极。虽然为简明起见,在图中显示在每一单元中包括四个浮动栅极晶体管,然而也可使用其他数目的晶体管,例如8个、16个甚至32个。图2还包括一连接-C-p井,其用于提供井电压。
在此范例中,在每一区块中均将8,512个列分成偶数列及奇数列。位线也分成偶数位线(BLe)及奇数位线(BLo)。在每一栅极电极处连接至字线(WL0至WL3)的四个存储单元串连连接形成一NAND单元。所述NAND单元的一个端子通过一其栅极电极耦接至第一选择栅极线(SGD)的第一选择晶体管(S)连接至对应位线(BL)、且另一端子通过一其栅极电极耦接至第二选择栅极线(SGS)的第二选择晶体管(S)连接至c-源极。虽然为简明起见,在图中显示每一单元中包括四个浮动栅极晶体管,然而也可使用更多数目的晶体管,例如8个、16个或甚至32个。
在一组替代具体实施例中-如在2002年2月27日申请并以引用方式并入本文的第10/086495号美国专利申请案中所述,可将阵列分为左侧部分与右侧部分,而非奇偶布置。左侧及右侧可另外具有独立的井结构,且阵列的右侧及左侧各自形成于所述分离的井结构上,从而使电压电平能够通过图1中的c-p井控制电路5来独立设定。在另一变化形式中,此也可允许擦除一区块中不到全部分区的子区块。在第10/086495号申请案中也说明了与本发明兼容的其他变化形式。
在本示范性具体实施例中,页面大小为512个字节,其小于同一字线上的单元数目。此页面大小是基于用户偏好与惯例。使字线大小对应于多于一个页面的单元可节省X-解码器(行控制电路3)空间,因为不同页面的数据可共享所述解码器。在本范例中,在用户数据读取与编程操作过程中,同时选择N=4,256个单元(M)。所选单元(M)具有同一字线(WL),例如WL2,并具有同一种类的位线(BL)。因此,可同时读取或编程532个字节的数据。同时读取或编程的这532B数据在逻辑上形成一“页面”。所以,一个区块可存储至少八个页面。当每一存储单元(M)存储两位数据(即为一多电平单元)时,在每单元存储两位的情况下,一个区块存储16个页面。在本具体实施例中,每一存储单元的存储元件(在本实例中为每一存储单元的浮动栅极)存储两位用户数据。
图3显示图2中所示意性显示类型的NAND单元单位在位线(BL)方向上的断面图。在一p型半导体衬底9的一表面上,形成一p型区域c-p井11,每一左侧与右侧c-p井均由一n型区域10围起,以使该c-p井与p型衬底电绝缘。n型区域10经由第一接触孔(CB)及n型扩散层12连接至一由第一金属M0形成的c-p井线。p型区域c-p井11也经由第一接触孔(CB)及一p型扩散层13连接至所述c-p井线。所述c-p井线连接至c-p井控制电路5(图1)。
该示范性具体实施例使用快闪EEPROM存储单元,其中每一存储单元具有一浮动栅极(FG),其存储对应于存储于该单元内的数据的电荷量;字线(WL),其形成栅极电极;以及由p型扩散层12形成的漏极和源极电极。浮动栅极(FG)经由一穿隧氧化膜(14)形成于c-p井表面上。字线(WL)通过一绝缘膜(15)堆叠在浮动栅极(FG)上。源极电极通过第二选择晶体管(S)与第一接触孔(CB)连接至由第一金属(M0)形成的共用源极线(c-源极)。所述共用源极线连接至c-源极控制电路(4)。漏极电极经由第一选择晶体管(S)、第一接触孔(CB)、一由第一金属(M0)形成的中间布线及一第二接触孔(V1)连接至由第二金属(M1)形成的位线(BL)。所述位线连接至列控制电路(2)。
图4与5分别显示存储单元(图3中的断面4-4)与选择晶体管(图3中的断面5-5)沿字线(WL2)方向的断面图。每一列均通过一形成于衬底中并填充有隔离材料的沟槽与相邻列隔离,此称为浅沟槽隔离STI)。各浮动栅极(FG)通过STI与绝缘膜15彼此隔离及与字线(WL)隔离。由于选择晶体管(S)的栅极电极(SG)是在与浮动栅极(FG)及字线(WL)相同的形成工艺步骤中形成,故其显示一堆叠的栅极结构。这两个选择栅极线(SG)在线端部处分路。
以引用方式并入上文中的第6,522,580号美国专利说明了为操作存储单元阵列1而施加的各种电压,在一特定范例中,每一存储单元的漂浮栅极存储两个具有其中一种如下状态的位“11”、“10”、“01”、“00”。此处针对其中选择字线“WL2”与位线“Ble”进行擦除、读取或编程的情况来作简要的回顾。通过使c-p井升高至一擦除电压Verase=15~20V并将一选定区块的字线(WL)接地,便可擦除选定区块的数据。由于未选定区块的字线(WL)、位线(BL)、选择线(SG)与c源极全部被置为浮动状态,因而它们也由于与c-p井进行电容性耦合而升高至接近Verase。因此,仅对所选定存储单元(M)的穿隧氧化膜14(图4及5)施加强电场,且在一穿隧电流流过穿隧氧化膜14时擦除选定存储单元的数据。此该范例中,被擦除单元为四种可能的编程状态之一,即「11」。
可使用电荷泵(在图1中未显示)从较低的电源值产生在擦除与编程值中所用的高电压值。所述升高的电压值既可在存储芯片22自身上产生,也可从存储器系统中的另一芯片提供。在以引用方式并入本文的第6,282,130号美国专利中更全面地论述了高电压源的使用与定位,并且在其中引述了其他参考文献。
图6示意性说明此一现有技术配置。三个代表性字线WLA、WLB与WLC连接至线107,由线107分别通过晶体管101、103与105提供不同的电压电平。晶体管101、103与105连同线107将属于图1中行控制电路3的一部分。图1中的c-p井控制电路5为井结构c-p井11提供电压。所述字线随后在井结构11上延续至图2所示存储器1中不同区块的各个字线中的任一字线。在擦除过程中,在字线WLC对应于所选定字线且WLA与WLB二者均未被选定的情况下,将c-p井内的电压升至(例如)17伏特的擦除电压,并将线107设定为接地。将晶体管105的栅极设定为高电平Vdd,将字线WLC接地,同时通过将晶体管101与103二者的栅极设定为接地而关断晶体管101与103二者,从而使WLA与WLB浮动。此会得到上文所述的擦除条件,其中未选定的擦除栅极通过来自所述井的电容性耦合而充电(例如,如在上文所并入的第5,546,341号美国专利中所述),且所选定的擦除栅极被强制接地。在第09/956,201号美国专利申请案中说明了擦除过程的其他方面,该美国专利申请案于2001年9月17日提出申请并以引用方式并入本文中。具体而言,第09/956,201号美国专利申请案说明了一种其中可使未选定字线浮动的方法,该方法也可并入本发明各方面的替代性具体实施例中。
为了在编程操作过程中在浮动栅极(FG)中存储电子,将所选定字线WL2连接至编程脉冲Vpgm,并将所选定的位线BLe接地。另一方面,为了禁止对将不进行编程的存储单元(M)进行编程,将对应位线BLe以及未选定的位线BLo连接至一电源的Vdd,例如3V。将未选定的字线WL0、WL1与WL3连接至10V,将第一选择栅极(SGD)连接至Vdd,并将第二选择栅极(SGS)接地。由此,将正被编程的存储单元(M)的通道电位设定为0V。由于通道电位通过与字线(WL)的电容性耦合而得到上拉,因而编程禁止中的通道电位升至大约6V。如以上所说明,在编程过程中仅向存储单元(M)的穿隧氧化膜14施加强电场,且穿隧电流以与擦除时相反的方向流过穿隧氧化膜14,且然后逻辑状态从“11”变为其他状态“10”、“01”或“00”中的一种。
为了在编程操作过程在浮动栅极(FG)中存储电子,将所选定字线WL2连接至编程脉冲Vpgm,并将所选定的位线BLe接地。另一方面,为了禁止对将不进行编程的存储单元(M)进行编程,将对应位线Ble以及未选定的位线BLo连接至一电源的Vdd,例如3V。将未选定的字线WL0、WL1与WL3连接至10V,将第一选择栅极(SGD)连接至Vdd,并将第二选择栅极(SGS)接地。由此,将正被编程的存储单元(M)的通道电位设定为0V。由于通道电位通过与字线(WL)的电容性耦合而得到上拉,因而编程禁止中的通道电位升至大约6V。如以上所说明,在编程过程中仅向存储单元(M)的穿隧氧化膜14施加强电场,且穿隧电流以与擦除时相反的方向流过穿隧氧化膜14,且然后逻辑状态从“11”变为其他状态“10”、“01”或“00”中的一种。
在读取与验证操作过程中,使选择栅极(SGD与SGS)与未选定的字线(WL0、WL1及WL3)升高至一4.5V的读取通过电压,以使其成为通过栅极。将所选定的字线(WL2)连接至一针对每一读取与验证操作规定的电压电平,以便判定所关心存储单元的阈电压是否达到该电平。例如,在READ 10(读取10)的操作中,将所选定的字线WL2接地,以便检测阈电压是否高于0V。在该读取情况下,可以说读取电平为0V。在VERIFY 01(验证01)操作中,将所选定的字元线WL2连接至2.4V,以便验证阈电压是否达到2.4V。在该验证情况下,可以说验证电平为2.4V。同样,对于所说明的所有过程,所述的电压电平均仅为范例性值。
将所选定的位线(BLe)预充电至一高电平,例如0.7V。如果阈电压高于读取或验证电平,则所关心位线(BLe)的电位电平会保持该高电平,因为存储单元(M)不导通。另一方面,如果阈电压低于读取或验证电平,则所关心位线(BLe)的电位电平会降至一低电平,例如小于0.5V,因为存储单元(M)导通。下面说明读取与验证操作的其他细节。
写入/擦除中止检测机制的范例本发明的一主要方面是以最小的系统性能损失确保在存储器编程及擦除过程中掉电的情况下具有用于写入及擦除中止检测的可靠机制的技术。当使用特定的具体实施例作为参考时,将主要就具有在前一部分中所说明的NAND架构的快闪型存储器来说明本发明,尽管如下文所进一步说明,所述概念也可扩展成更具一般性。
一种已知的防止写入中止的方法是增加额外的硬件来保持存储器Vdd,直至完成存储器操作,例如在第5,418,752号美国专利中所说明,该美国专利以引用方式并入本文中。在一种变化形式中,可使用一具有更快写入时间的非易失性存储器替代形式来存储在掉电情况下原本会丢失的数据。此种方法存在缺点其可能相对昂贵并且并非总能容易地得以实施。写入中止检测的另一方法是在实际编程操作前以及进行实际编程后均在预留区域内标记指定编程扇区的位址,以便再次更新所述预留区域来确认编程操作已完成。包括对数据的实际编程在内,此种方法将需要对用户所执行的每个单一扇区写入进行三次编程操作。另一方法是在对扇区编程后写入预定义的写入中止报头。此种方法将需要对每一所写入的扇区进行两次编程操作。至于擦除操作,可在擦除前将待擦除的区块或扇区的位址写入一预留区域中,并在完成擦除操作后再次将所述位址写入所述预留区域中。本发明的主要方面改良了所述技术。
更具体地说,为确保能以最小的性能损失可靠地检测写入中止故障,引入一种新的写入中止检测机制。在其示范性具体实施例中,所述演算法在扇区开销信息中引入一前一扇区状态旗标(PSS)及一最末扇区状态旗标(LSS)。假定系统正在写入一区块内的扇区0至x,所述演算法将写入扇区1的PSS连同扇区1内的数据,以指示扇区0已完成编程并且未发生写入中止。此使PSS旗标能够由ECC进行保护-在具有此特征的具体实施例中,或者是包括开销在内的整个扇区的ECC,或者是开销ECC。同样,当写入扇区2时,将写入其PSS以指示扇区1已完成编程而无写入中止,依此类推,直至到达所述写入命令的最末扇区为止。当到达最末扇区(即扇区x)时,其将同样地输入对应于扇区(x-1)的PSS旗标同时输入扇区x数据;然而,作为扇区x中的最末扇区,将不存在下一扇区来设定对应于扇区x的PSS旗标。考虑到这一点,使用LSS旗标。扇区的LSS旗标对应于扇区本身并指示包含其的扇区已完成编程而无写入中止。
在对扇区x编程之后,所述演算法可对扇区x的LSS进行编程。此意味着仅主机程编程命令内的最末扇区需要进行两次编程操作来确保写入中止检测。PSS方案应用于由控制器所高速缓存的一主机原子写入命令或一组命令内的全部扇区。LSS方案则应用于主机原子写入命令内的最末扇区以及在如果不允许进行不按顺序的页面编程时应用于一区块中的最末实体页面。存储器系统可根据主机命令确定要编程的扇区数量并通过使用主机快取来以PSS及LSS管理写入操作,从而使对系统性能的影响最小化。例如,控制器可将多个主机原子写入分组成一存储器操作序列,从而在大量扇区中分摊写入LSS的开销并由此减小对性能的影响。所述机制通过在下一实体扇区的PSS及当前扇区的LSS中查看该扇区是否为区块内的最末编程扇区或区块中的最末实体扇区来确保写入中止故障检测。
对于擦除操作,可在一成功的擦除操作后标记一擦除中止旗标(EAF)。可将EAF旗标置于预规定位置上,例如区块中的第一扇区中。应注意,对于PSS旗标及EAF旗标两者(当区块包含不止一个扇区时),对一个扇区内成功操作的指示是保持在另一扇区内。借助所述旗标,系统可在下一次通电时的下一次初始化过程中成功地检测写入中止或擦除中止。所述中止检测方案对于多状态(MLC)存储器特别有效,这是因为由于所需的编程及擦除时间变长,因而设计用于处理MLC的硬件更加更困难且更加昂贵,并且同样由于所需的编程时间通常变长,因而在MLC中因不对每个单一扇区均进行两次编程而获得的性能大得多。
该示范性具体实施例在扇区层基础上使用PSS及LSS旗标。由于扇区是主机所处理的最小数据单位,因而此通常较为方便。更一般而言,可针对数据量为每次成功写入设定PSS及LSS旗标,通常是根据某个实体数据单位或结构来设定。例如,当数据写入单位为一多扇区数据页面时,可将对一数据页面的成功编程记录于与下一页面同时编程的PSS旗标内,任何为成功写入最末页面设定一LSS旗标。尽管对所述示范性具体实施例的本说明是针对扇区-且旗标名称包括「扇区」-来进行,然而所述具体实施例也可全部扩展至更一般的情况中。同样,尽管所述示范性具体实施例的EAF旗标是在区块层上使用-因为这是擦除单位,然而更一般而言,其也可在不同规模上使用,例如对一元区块使用单个擦除旗标。
图6A-C示意性显示一对示范性具体实施例,其中图6A及6C显示扇区结构,而图6B说明各个字段。图6A代表来自存储器阵列1的n个区块-从区块i 601至区块i+n 603。每一区块内均显示若干分别由图中的一行所表示的扇区,例如631及633。图6B说明各字段。
图6B内注释一般扇区的各部分。其由一存储用户数据的数据部分611以及一标头或开销部分623组成,标头或开销部分623包含关于扇区的各种数据,例如对应错误修正码(ECC)615及本技术中所熟知的其他种类的开销(其他数据613)。ECC可用于数据及开销两者,或者这两者可分别具有单独的ECC。尽管出于说明目的,在所述图式中所显示的各区域是分离的,然而在实务中其可混合于实际的存储元件内。此外,也存在分别存储开销的具体实施例,其中实体扇区仅包含数据,其他实体位置则专用于开销。新特征为在开销内包含旗标PSS 617、LSS 619及EAF 621。
返回图6A,各扇区均具有PSS旗标617(其可设定为指示已成功地写入前一扇区)及LSS旗标619(其可设定为指示已正确写入该扇区本身)两者。如下所述,所述旗标中的每一个可由多个位组成。由于在写入扇区之前已知PSS旗标的状态,因而其与数据及开销内容同时写入并且可受到ECC保护。由于LSS旗标是随后写入-依赖于已成功写入的扇区的剩余部分,因而其不受ECC保护-ECC已在此前写入。
由于一区块中的所有内容是一同被擦除,因而本示范性具体实施例可对每一区块仅使用单个擦除中止旗标EAF 621。本发明采用将EAF旗标(同样可由多个位组成)置于区块的第一扇区(例如区块Block i 601内的扇区631)内的规约。在成功完成擦除过程后,将EAF置位。因此,在本示范性具体实施例中,EAF旗标应一直被置位。其唯一不被置位的时候是发生擦除中止时,其中使EAF旗标置位的操作不会在擦除操作后进行。由于其在数据被写入区块之前将已被置位,因而其将不会受ECC保护。(如果需要使EAF旗标受ECC保护,将需要擦除EAF旗标并然后与数据一起重新写入,此会引起额外的编程开销。)尽管本较佳具体实施例既包括用于擦除中止检测的EAF旗标又包括用于写入中止检测的PSS/LSS旗标,然而应注意,所述是本发明的独立的方面并且可独立地并入存储器装置内。
图6A显示在一写入过程成功结束后从区块i 601的扇区0631到区块i+n 603的扇区639的状态扇区旗标PSS 617及LSS 619的布置。所述扇区中每一个的数据部分611均将包含验证其已全部得到成功写入的数据。在开销部分中,仅显示旗标PSS 617、LSS 619及EAF 621的状态,其中X表示一被置位的旗标,空白方框则指示旗标未被置位。图中未显示开销中其他部分(613及615)的内容。数据部分611可存储主机所提供的用户数据或存储系统数据,其范例在国际专利公开案WO 03/027828A1内予以说明,该国际专利公开案以引用方式并入本文中。
随着各区块先前已成功得以擦除而未发生擦除中止,各区块内的EAF旗标621被置位。第一所写入扇区631将既不使其PSS旗标617置位也不使其LSS旗标619置位。下一扇区633将使其PSS旗标617置位以指示前一扇区631已被成功写入。同样,每一随后的扇区-直至并包括最末写入扇区639-均将使其PSS旗标置位。最末写入扇区将另外使其LSS旗标619置位,并且成为所述自主写入过程中唯一使此旗标置位的扇区。(如果仅写入单一扇区,则会发生该扇区的LSS旗标被置位但其PSS旗标不被置位的情况。)图7为一示范性写入过程的流程图。该过程以用于写入多个逻辑数据扇区的写入命令始于步骤701。接着将第一逻辑扇区写入对应实体扇区内(703)。在验证数据得以正确输入后(705),该过程继续至下一扇区。当将数据内容写入下一扇区内时(707),也将PSS旗标在其开销区域内置位,以指示前一扇区得到正确的编程。在步骤709中验证写入。如果此并非最末扇区(711,“否”),则该写入过程继续至下一扇区并重复步骤707及709,响应于前一循环内的步骤709而在步骤707中再次将PSS旗标置位。在最末扇区得到写入及确认(711,“是”)后,由于不再存在下一将PSS旗标置位的扇区,因而在最末扇区内将LSS旗标置位。一区块内各扇区得到写入的次序以及在原子写入过程中各个区块得到写入的次序可为固定的或可变的一例如根据美国专利公开案第US 2003/0065899号内的一指标结构,该美国专利公开案以引用方式并入本文中。(如果次序不固定,将需要保持所述次序以便确定哪个扇区为对应于PSS旗标的前一扇区。由于具有NAND架构的存储器使用循序性扇区写入,结果会得到图7所示方案内所使用的循序性扇区写入。)返回图6A及6B,为确定一写入过程是否成功,仅需要检查PSS 617及LSS 619旗标。所述旗标可用作扇区得到成功写入的保证。如果一扇区的LSS旗标被置位,则该扇区及写入过程中的全部先前扇区均已成功得以编程。例如,如果在写入过程期间掉电,则可扫描各旗标如果LSS旗标619被置位,则编程已完成;如果LSS旗标619未被置位,则往后检查PSS旗标617,第一被置位的PSS旗标将指示在掉电前全部扇区均已在该写入过程中被成功写入。同样,通过检查EAF旗标621就能够确定一擦除过程已成功完成而不必检查整个区块的数据内容。其还使系统可对一所包含的全部有效数据恰好全部为零的区块(也可通过PSS及LSS旗标确定)与实际被擦除的区块进行区分。
图6C为图6B所示具体实施例的一在许多应用中可较佳的变化形式。在此具体实施例中,当写入一完整区块时,即使当继续对其他区块内的更多扇区进行写入时,也将该区块内所写入的最末扇区的LSS旗标置位。因此,图6C内扇区635的LSS旗标被置位。由于将扇区635被成功写入记录至扇区635本身内,因而不必在将作为另一区块中第一扇区的下一所写入扇区内将PSS旗标置位。因此,即使前一扇区得到成功写入(此由前一区块中最末扇区的LSS旗标指示),扇区637也不将其PSS旗标置位。由于各区块内的第一扇区将因此不必将其PSS旗标置位,因而可消除所述扇区的该旗标,如在图6C内的扇区631及637所示。对于扇区0内的所述位,其可用于EAF旗标。因此,尽管图6C内显示的EAF旗标621截然不同,然而在其他扇区内将用于PSS的区域可供用于扇区0内的EAF。
图6C所示方案的优点是可仅通过查看区块内最末扇区的LSS旗标来检查区块内全部扇区的状态。其还具有如下优点一区块内的全部扇区均具有相同数量的数据位,因为不需要扇区0同时具有EAF及PSS旗标两者。
在图6C所示方案中,图7所示的流程图将略有改变,即在步骤707中,如果当前扇区为一区块中的第一扇区,则不将PSS旗标置位。对于区块中的最末扇区,将需要在步骤709与711之间将LSS置位。
考虑到旗标的结构,可存在单位的旗标或多位的旗标。这是一种设计选择且是旗标鲁棒性与所用空间量之间的折衷。还存在如下考虑因素,随着旗标内位数的增加,旗标本身内不良位或写入错误的概率也会增加,由于旗标的作用是确定数据写入是否成功,因而如果旗标本身面临增大的错误危险,这就会产生反作用。本示范性具体实施例使用分别为几个位的的旗标,大致与所使用的ECC相一致。此外,为增加鲁棒性,可按二进制模式存储旗标,甚至在多状态存储器内也是如此。由于PSS旗标是在与实际数据相同的MLC编程操作过程中被置位,因而使用二进制旗标可使编程演算法变得稍微复杂并且在大多数应用中当可使用多位旗标时还变得不必要。在上述示范性具体实施例中,对于上页面/下页面,所述旗标还较佳对应于一上页面旗标及一下页面旗标以多电平方式存储,以便减小操作复杂性。
如上所述,本发明不仅适用于本示范性具体实施例中的NAND型快闪存储器,而且还适用于其他架构及存储器技术。例如,其他EEPROM或电荷存储单元也可受益,例如使用井擦除的NOR型快闪存储器。本发明可同样地扩展至存储元件并非浮动栅极晶体管的情形,例如在名称为“采用介电存储元件的多状态非易失性集成电路存储器系统(Multi-State Non-Volatile Integrated Circuit Memory Systems That EmployDielectric Storage Elements)”的美国专利申请案中所述种类的介电存储元件,该美国专利申请案是由Eliyahou Harari、George Samachisa、Jack H.Yuan与Daniel C.Guterman于2002年10月25日申请并且以引用方式并入本文中。尽管至此为止,本说明着重于采用电荷存储装置(例如浮动栅极EEPROM或FLASH单元)的具体实施例,然而本发明也可应用于其他具体实施例,例如也可使用NROM及MNOS单元-例如在Eitan的第5,768,192号美国专利及Sato等人的第4,630,086号美国专利中所分别说明,或者磁性RAM及FRAM单元-例如在Gallagher等人的第5,991,193号美国专利及Shimizu等人的第5,892,706号美国专利中所分别说明,所有所述美国专利全部以引用方式并入本文中。
虽然上文是参照特定具体实施例说明本发明的各方面,但应了解,本发明在随附权利要求书的整个范围内受到保护。
权利要求
1.一种非易失性存储器,其包括复数个数据存储区域,所述数据存储区域中的每一个均包含一用户数据部分;及一开销数据部分,其中每一数据存储区域的所述开销数据部分均包含一第一旗标以指示所述数据存储区域中的另一个得到正确写入。
2.如权利要求1所述的非易失性存储器,其中所述数据存储区域中每一个的所述开销数据部分进一步包含一第二旗标以用于指示所述数据存储区域本身得到正确写入。
3.如权利要求1所述的非易失性存储器,其中所述数据存储区域中的每一个均对应于一数据扇区。
4.如权利要求1所述的非易失性存储器,其中将所述数据存储区域组织成复数个擦除单位,且其中所述擦除单位的每一个中的一预定数据存储单位的所述开销数据部分进一步包含一第三旗标,以用于指示所述预定数据存储单位所属的所述擦除单位已完成一擦除操作。
5.如权利要求1所述的非易失性存储器,其中将所述数据存储区域组织成复数个擦除单位,且其中所述区块中的每一个进一步包含一额外数据存储区域,所述额外数据存储区域的所述开销数据部分具有所述第二旗标且不具有所述第一旗标。
6.如权利要求5所述的非易失性存储器,其中所述不具有所述第一旗标的数据存储区域中每一个的所述开销数据部分均包含一第三旗标,以用于指示所述不具有所述第一旗标的数据存储区域所属的所述擦除单位已完成一擦除操作。
7.如权利要求6所述的非易失性存储器,其中根据一预定顺序写入所述数据存储区域,其中所述数据存储区域中的所述另一个是所述顺序内的前一数据存储区域,且其中所述不具有所述第一旗标的数据存储区域是其所属的各个区块内所述顺序中的第一数据存储区域。
8.如权利要求1所述的非易失性存储器,其中所述第一旗标各由多个位组成。
9.如权利要求1所述的非易失性存储器,其中根据一预定顺序写入所述数据存储区域,且其中所述数据存储区域中的所述另一个是所述顺序内的前一数据存储区域。
10.如权利要求1所述的非易失性存储器,其中所述第一旗标及所述用户数据部分的内容受错误修正码(ECC)保护。
11.一种非易失性存储器,其包括复数个数据存储区域,所述数据存储区域中的每一个均包含一用户数据部分;及一开销数据部分,其中将所述数据存储区域组织成复数个擦除单位,且其中所述擦除单位的每一个中的一预定数据存储单位的所述开销数据部分进一步包含一旗标,以用于指示所述预定数据存储单位所属的所述擦除单位已完成一擦除操作。
12.如权利要求11所述的方法,其中所述旗标由多个位组成。
13.一种存储器,其包括一非易失性存储器,其包含复数个数据存储区域;及一控制器,其用于对所述存储器进行数据读取及写入,其中在一向所述数据存储区域中的两个或更多个写入数据的循序性数据写入过程期间,对于第一数据存储区域后的每一数据存储区域,均将一对前一数据存储区域的所述写入的指示写入当前数据存储区域内作为其写入过程的一部分。
14.如权利要求13所述的存储器,其中在所述循序性写入过程期间,对于所述循序性过程中所述数据存储区域中的最末一个,将一对所述数据存储区域中所述最末一个的所述写入的指示写入所述数据存储区域中的所述最末一个内。
15.如权利要求14所述的存储器,其中所述数据存储区域中的每一个均包括一数据部分及一开销部分,且其中将所述指示写入所述开销部分内。
16.一种操作一非易失性存储器的方法,其包括将包括用户数据的第一内容编程至一第一数据存储区域内;验证所述第一内容正确编程至所述第一数据存储区域内;随后将包括用户数据的第二内容编程至一第二数据存储区域内;及与所述第二内容的编程同时地,将所述第一数据存储区域得到正确编程的一指示写入所述第二数据存储区域。
17.如权利要求16所述的方法,其进一步包括在所述第二内容的编程之后,验证所述第二内容正确编程至所述第一数据存储区域内;及随后将所述第二数据存储区域得到正确编程的一指示写入所述第二数据存储区域。
18.如权利要求16所述的方法,其中以一预定次序写入所述数据存储区域。
19.如权利要求18所述的方法,其中将数据存储区域分组成擦除单位,所述方法进一步包括在所述第二内容的编程之后,验证所述第二内容正确编程至所述第一数据存储区域内;及当所述第二数据存储区域是以所述预定次序写入所述第二数据存储区域所属的所述擦除单位中的所述数据存储区域中的最末一个时,随后将所述第二数据存储区域正确地得到编程的一指示写入所述第二数据存储区域。
20.如权利要求16所述的方法,其中所述第二内容及所述对所述第一数据存储区域正确得到编程的指示受到错误修正码(ECC)保护。
21.一种确定是否已正确地编程复数个循序写入的扇区的方法,其包含根据后一扇区的内容确定所述顺序中除初始扇区外的每一扇区是否已正确地得到编程;根据随后扇区的内容查找一未指示正确得到编程的第一扇区;及根据所述第一扇区本身的内容,确定所述第一扇区是否正确地得到编程。
22.如权利要求21所述的方法,其中所述后一扇区的所述内容包括一指示前一扇区正确地得到编程的旗标。
23.如权利要求22所述的方法,其中所述指示所述前一扇区正确地得到编程的旗标是由多个位组成。
24.如权利要求22所述的方法,其中所述指示所述前一扇区正确地得到编程的旗标受到错误修正码(ECC)保护。
25.如权利要求21所述的方法,其中所述第一扇区本身的所述内容包括一指示所述第一扇区正确得到编程的旗标。
26.如权利要求25所述的方法,其中所述指示所述第一扇区正确地得到编程的旗标是由多个位组成。
27.一种操作一非易失性存储器的方法,其包括擦除所述非易失性存储器的一区块的数据内容,其中所述区块包含复数个各具有一数据部分及一开销部分的扇区;验证所述区块成功地得到擦除;及将所述区块正确、成功的一指示写入所述扇区中一指定扇区的所述开销部分内。
28.如权利要求27所述的方法,其中所述指示包括一旗标。
29.如权利要求28所述的方法,其中所述旗标由多个位组成。
30.一种操作一具有复数个分别具有一数据部分及一开销部分的扇区的非易失性存储器的方法,所述方法包括改变至少一第一扇区的数据内容;随后验证所述改变至少一第一扇区的所述数据内容已成功完成;及随后将所述改变至少一第一扇区的所述数据内容已成功完成的一指示记录至一第二扇区的所述开销部分内。
31.如权利要求30所述的方法,其中所述改变所述数据内容为一编程操作。
32.如权利要求30所述的方法,其中所述第一及第二扇区属于同一区块且所述改变所述数据内容为一擦除操作。
全文摘要
本发明揭示一种非易失性存储器及其操作方法,其以最小的系统性能损失在非易失性存储器编程及擦除过程中掉电情况下确保具有用于写入及擦除中止检测的可靠机制。在一多扇区写入过程期间,在写入后一扇区的数据内容的同时,将一在一个扇区内成功进行写入的指示写入所述后一扇区的开销中。最末写入的扇区将另外将一其自身成功写入的指示写入至其开销内。对于擦除而言,可在一成功擦除操作后,在所述区块的第一扇区内标记一擦除中止旗标。
文档编号G11C16/10GK1902712SQ200480039311
公开日2007年1月24日 申请日期2004年12月16日 优先权日2003年12月31日
发明者杰森·林, 凯文·M·康利, 罗伯特·C·张 申请人:桑迪士克股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1