CN101009137A - 补偿存储单元编程状态之间的读余量减少的闪存系统 - Google Patents
补偿存储单元编程状态之间的读余量减少的闪存系统 Download PDFInfo
- Publication number
- CN101009137A CN101009137A CNA2007100037449A CN200710003744A CN101009137A CN 101009137 A CN101009137 A CN 101009137A CN A2007100037449 A CNA2007100037449 A CN A2007100037449A CN 200710003744 A CN200710003744 A CN 200710003744A CN 101009137 A CN101009137 A CN 101009137A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- word line
- programming
- storage unit
- programming operation
- 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
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23K—SOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
- B23K37/00—Auxiliary devices or processes, not specially adapted to a procedure covered by only one of the preceding main groups
- B23K37/04—Auxiliary devices or processes, not specially adapted to a procedure covered by only one of the preceding main groups for holding or positioning work
- B23K37/0426—Fixtures for other work
- B23K37/0435—Clamps
- B23K37/0443—Jigs
-
- 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/5628—Programming or writing circuits; Data input circuits
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- B23Q17/00—Arrangements for observing, indicating or measuring on machine tools
- B23Q17/006—Arrangements for observing, indicating or measuring on machine tools for indicating the presence of a work or tool in its holder
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25B—TOOLS OR BENCH DEVICES NOT OTHERWISE PROVIDED FOR, FOR FASTENING, CONNECTING, DISENGAGING OR HOLDING
- B25B11/00—Work holders not covered by any preceding group in the subclass, e.g. magnetic work holders, vacuum work holders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Mechanical Engineering (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Optics & Photonics (AREA)
- Read Only Memory (AREA)
Abstract
存储系统包括:闪存;以及存储控制器,被配置为控制闪存。所述存储控制器确定在编程操作期间从主机提供的编程数据是否都被存储在闪存中。当确定结果是该编程数据都被存储在所述闪存中时,所述存储控制器控制所述闪存,以便对其中存储了编程数据的最终字线的下一个字线执行伪编程操作。
Description
技术领域
本发明的实施例涉及一种闪存系统。更具体地,本发明的实施例涉及能够补偿存储单元编程状态之间的减少的读余量(read margin)的闪存系统。
本专利申请要求2006年1月24提交的韩国专利申请2006-07414在35U.S.C.§119下的优先权,通过引用将其全部内容合并于此。
背景技术
近年来,诸如易失性存储装置和非易失性存储装置之类的存储装置已经逐渐应用到MP3播放器和移动仪器,诸如便携式多媒体播放器(PMP)、蜂窝电话、笔记本计算机、和个人数字助理(PDA)。该MP3播放器和该移动仪器需要大容量存储装置来提供各种功能(例如,活动画面重放)。已经作出了很多努力来满足该需求。这些努力之一是提出了一种多位存储装置,其中将至少2位数据存储在一个存储单元中。例如,示范的多位存储装置公开在美国专利第6,122,188、6,075,734、和5,923,587号中,通过引用将它们合并于此。
当在一个存储单元中存储1位数据时,该存储单元具有属于两个阈值电压分布之一的阈值电压,即,该存储单元具有指示数据“0”和数据“1”的两个状态中的一个。另一方面,当在一个存储单元中存储2位数据时,该存储单元具有属于四个阈值电压分布之一的阈值电压,即,该存储单元具有指示数据“11”、数据“10”、数据“00”、和数据“01”这四个状态之一。图1示出了与四个状态对应的阈值电压分布。
应该小心地控制与四个状态对应的阈值电压分布,使得每个阈值电压分布存在于确定的阈值电压窗口内。为了实现这一点,已经提出了使用增量阶跃脉冲编程(ISPP)方案的编程方法。在ISPP方案中,阈值电压根据编程循环的重复而改变编程电压增量。通过将编程电压增量设置为小的值,可以精密地控制阈值电压分布,以保证状态之间的充分余量。不幸的是,这导致增加了对存储单元进行编程以达到期望状态所需要的时间。因此,可根据编程时间来确定编程电压的增量。
尽管采用这样的ISPP方案,但由于各种原因使得生成的每个状态的阈值电压分布宽于期望窗口。例如,如图1的虚线10、11、12和13所指示,在编程操作中由于相邻存储单元之间的耦合而加宽了阈值电压分布。这样的耦合被称为“电场耦合”或者“多F耦合(F-poly coupling)”。例如,如图2所示,假设存储单元MCA是已被编程为具有四个状态之一的单元,而存储单元MCB是将被编程为具有四个状态之一的单元,当存储单元MCB被编程时,电荷在浮置栅极(FG)中聚集。当存储单元MCB被编程时,相邻存储单元MCA的浮置栅极FG的电压由于存储单元MCA和MCB的浮置栅极FG之间的耦合而上升。即使在编程存储单元MCB之后,由于浮置栅极之间的耦合而维持上升的阈值电压。存储单元MCB包括相对于存储单元MCA沿字线方向和/或位线方向排列的存储单元。由于这样的耦合,已编程存储单元MCA的阈值电压上升,并且阈值电压分布如图1的虚线10、11、12和13所指示的被加宽。因此,减少了状态之间的余量,如图1所示这是读余量(在确定存在“1”还是“0”方面的电压差)的减少。
在美国专利第5,867,429号中公开了一种用于防止阈值电压分布由于耦合而被加宽的传统技术。
当存储单元的阈值电压随着时间流逝而下降时,不仅电场耦合/多F耦合而且状态之间的读余量都被减少,下文中将这称为“高温应力(HTS:hottemperature stress)”。HTS指的是将在存储单元的浮置栅极中聚集的电荷泄漏到基底中。当浮置栅极的电荷减少时,如图3的虚线20、21、和22所指示的,处于相应状态中的存储单元的阈值电压下降。因此,阈值电压由于电场耦合/多F耦合而增加,并且阈值电压由于HTS而降低,这使得难以保证状态之间的读余量。具体地,难以知道已编程的存储单元的状态。随着半导体制造工艺最近趋于更复杂,这个问题变得严重。
因此,存在这样的需求,即使阈值电压由于电场耦合/多F耦合而增加并且阈值电压由于HTS而降低,也要保证状态之间的读余量。
发明内容
本发明的示范实施例针对一种存储系统。在示范实施例中,该存储系统可包括闪存;和存储控制器,被配置为控制闪存。该存储控制器确定在编程操作期间从主机提供的编程数据是否都被存储在闪存中。当确定结果是该编程数据都被存储在闪存中时,该存储控制器控制闪存,以对于其中存储了编程数据的最终字线的下一字线执行伪(dummy)编程操作。
附图说明
图1图示了与电场耦合/多F耦合相关联的加宽阈值电压分布;
图2图示了在存储单元之间生成的电场耦合/多F耦合;
图3图示了由于高温应力(HTS)而加宽的加宽阈值电压分布;
图4是根据本发明的闪存装置的框图;
图5是图4所示的存储单元阵列的电路图;
图6A和图6B图示了根据本发明的多位编程操作;
图7是图示了根据本发明实施例的闪存装置的编程方法的流程图;
图8A和图8B是图示了图7所示的副编程方法的流程图;
图9图示了当执行根据本发明的闪存装置的编程操作时的验证电压;
图10图示了在执行了根据本发明的闪存装置的编程操作之后的阈值电压分布;以及
图11是根据本发明的存储系统的框图。
具体实施方式
现在,将结合其中示出了本发明的优选实施例的附图,在下文中更全面地描述本发明。然而,这个发明可以以许多不同形式实施,并且不应被解释为限于这里提出的实施例。而是,提供这些实施例是为了使得这个公开彻底和完全,并且将向本领域的技术人员全面转达本发明的范围。在这些图中,相同的附图标记始终指的是相同的元件。
图4是根据本发明的实施例的闪存装置的框图,其包括用于存储数据信息的存储单元阵列100。该存储单元阵列100包括多个存储块,每一个存储块都具有图5所示的存储单元配置。
图5是图4所示的存储单元阵列的电路图,其包括含有多个串(string)101的存储块MB,每一串101都具有串选择晶体管SST、地选择晶体管GST、和存储单元MC31-MC0。串选择晶体管SST由串选择线SSL控制,并且其漏极连接到了对应的位线。存储单元MC31-MC0串联地耦接在串选择晶体管SST的源极和地选择晶体管GST的漏极之间,并分别由对应的字线WL31-WL0控制。本领域的技术人员将理解,字线数目不限于此。每个存储单元将包括浮置栅极晶体管。
返回图4,行选择器电路(X-SEL)110由控制逻辑150控制。行选择器电路110响应于通过输入/输出接口(I/O)140提供的地址(ADD)来选择存储块之一,并控制所选择的存储块的行(包括字线和选择线)。寄存器块120由控制逻辑150控制,并根据操作模式而用作读出放大器或者写入驱动器。尽管在图中没有示出,但是寄存器块120可包括页面缓冲器。每个页面缓冲器都电连接到一个位线或者一对位线之一,并通过位线从存储单元中读取数据或者将数据存储到存储单元中。
列选择器电路(Y-SEL)130由控制逻辑控制,并响应于通过I/O接口140提供的地址ADD,而向I/O接口140或者控制逻辑150输出在寄存器块120中存储的数据。例如,在正常的读操作中,列选择器电路130向I/O接口140输出在寄存器块120中存储的数据。在验证(verify)正常读操作中,列选择器电路130向控制逻辑150输出在寄存器块120中存储的数据,并且控制逻辑150判断从列选择器电路130提供的数据是否是通行数据(pass data)。在编程操作的数据装载期间,列选择器电路130向寄存器块120输出通过I/O接口140传输的编程数据。控制逻辑150被配置为控制闪存装置的一般操作。电压发生器160由控制逻辑150控制,并被配置为生成进行编程/擦除/读操作所需要的电压(例如,字线电压、体电压(bulk voltage)、读电压、通行电压等)。
如上所述,根据本发明的一方面的闪存装置采用新编程技术,以便即使存储单元经受电场耦合/多F耦合和HTS,也充分确保状态之间的读余量。根据本发明的编程,将2位数据存储在所选择页面的各个存储单元中,从而使用各个期望状态的目标阈值电压来编程存储单元。下文中将这称为“第一编程操作”。在第一编程操作完成之后,执行读操作以从各个状态的存储单元中检测在预定的阈值电压区域内排列的存储单元。所检测的存储单元被编程为具有比各个状态的目标阈值电压更高的阈值电压。下文中将这称为“第二编程操作”。
用于存储2位数据的第一编程操作随着寄存器块120的配置而变化。侧如,在将LSB和MSB数据位装载到寄存器块120上之后,可执行第一编程操作。可替换地,可在编程MSB数据位(下文中称为“MSB编程操作”)之后,编程LSB数据位(下文中称为“LSB编程操作”)。现在,将结合图6A和图6B简要描述作为示范编程方法的后一编程方法。
一个存储单元被编程为具有状态“11”、“10”、“00”、和“01”之一。为了描述的方便,假设状态“11”、“10”、“00”、和“01”分别对应于ST0、ST1、ST2、和ST3。具有状态“11”的存储单元是已擦除的存储单元,具有状态“10”的存储单元的阈值电压高于具有状态“11”的存储单元的阈值电压。具有状态“00”的存储单元的阈值电压高于具有状态“10”的存储单元的阈值电压。此外,具有状态“01”的存储单元的阈值电压高于具有状态“00”的存储单元的阈值电压。如果在前述条件下执行LSB编程操作,则如图6A所示,存储单元具有已擦除状态或者状态“10”。如果在LSB编程操作之后执行MSB编程操作,则如图6B所示,具有状态“11”的存储单元具有已擦除状态或者状态“01”,而具有状态“10”的存储单元具有状态“10”或者“00”。
在本发明中,当选择任一个字线时,执行两个编程操作。更具体地,在用于连接到所选择的字线和偶数位线BLe0-BLe(n-1)的存储单元的编程操作之后进行用于连接到所选择的字线和奇数位线BLo0-BLo(n-1)的存储单元的编程操作。为了描述的方便,将根据上面的顺序描述根据本发明的编程操作。然而,本领域的技术人员应该理解,可以在用于连接到所选择的字线和奇数位线BLo0-BLo(n-1)的存储单元的编程操作之后进行用于连接到所选择的字线和偶数位线BLe0-BLe(n-1)的存储单元的编程操作。
图7是图示了根据本发明实施例的闪存装置的编程方法的流程图。当编程操作开始时,控制逻辑150在步骤S100中确定是否选择了在所选择的字线(例如,第N条字线)上的偶数位线BLe0-BLe(n-1)(S100)。这个确定是基于通过输入/输出接口(I/O接口)140提供的地址信息来执行的。当选择了偶数位线BLe0-BLe(n-1)时,控制逻辑150在步骤(S110)中执行用于与所选择的字线WLn和偶数位线BLe0-BLe(n-1)连接的存储单元的主编程操作。在执行主编程操作时,将所选择的存储单元分别编程到图9所示状态ST1、ST2和ST3之一。根据与状态ST1、ST2和ST3对应的验证电压Vvfy11、Vvfy12、和Vvfy13,确定是否将存储单元编程为各个状态。例如,验证电压Vvfy11用于确定是否将存储单元编程为状态ST1;验证电压Vvfy12用于确定是否将存储单元编程到了状态ST2;以及验证电压Vvfy13用于确定是否将存储单元编程为状态ST3。一旦验证了这些状态,就结束主编程过程。
如在步骤S100确定的,当选择了奇数位线BLo0-BLo(n-1)时,在步骤S120中,控制逻辑150执行用于与所选择的字线WLn和奇数位线BLo0-BLo(n-1)连接的存储单元的主编程操作。如上所述执行主编程操作。一旦结束了用于与所选择的字线WLn和奇数位线BLo0-BLo(n-1)连接的存储单元的编程操作,则执行用于紧靠所选择的字线WLn下面的字线WL(n-1)的编程操作(即,副编程操作)。首先,在步骤S160对与字线WL(n-1)和偶数位线BLe0-BLe(n-1)连接的存储单元执行副编程操作(或者重新编程操作)。此后,对与字线WL(n-1)和奇数位线BLo0-BLo(n-1)连接的存储单元执行副编程操作(或者重新编程操作)(S180)。如后面将描述的,通过副编程操作重新编程在各个状态的阈值电压区域之中的预定区域内排列的存储单元,以使其具有更高的阈值电压。与参考图7的描述不同的是,可以在用于连接到字线WL(n-1)和奇数位线BLo0-BLo(n-1)的存储单元的副编程操作之后,进行用于连接到字线WL(n-1)和偶数位线BLe0-BLe(n-1)的存储单元的副编程操作。
图8是图示了根据本发明的闪存装置的副编程的流程图。图9图示了当执行根据本发明的闪存装置的编程操作时的验证电压。
如结合图7所描述的,如果完成了用于2位数据的主编程操作,则对与直接布置在所选择的字线WLn下面的字线WL(n-1)连接的存储单元执行第二编程操作。下面将描述用于与字线WL(n-1)和奇数位线BLo0-BLo(n-1)连接的存储单元的副编程操作。当将验证电压Vvfy11(或者读电压VRead1)施加到了所选择的字线WL(n-1)上时,通过寄存器块120来执行读操作。此后,当将比验证电压Vvfy11高的验证电压Vvfy12施加到所选择的字线WL(n-1)时,如图8A所示在步骤S200中通过寄存器块120执行读操作。通过在步骤S200和S210中两次执行读操作,而检测到具有位于验证电压Vvfy11和Vvfy12(或者读电压VRead1和验证电压Vvfy12)(见图9)之间的阈值电压的存储单元。本领域的技术人员将理解,用于检测具有位于验证电压Vvfy11和Vvfy12(或者读电压VRead1和验证电压Vvfy12)之间的阈值电压的存储单元的方法可随着寄存器块120的配置而改变。
如果检测到具有位于验证电压Vvfy11和Vvfy12(或者读电压VRead1和验证电压Vvfy12)之间的阈值电压的存储单元,则在步骤S220对所检测到的存储单元执行编程操作(即,副编程操作)。在执行编程操作之后,在步骤S230,在将用作读电压的验证电压Vvfy12施加到所选择的字线WL(n-1)的同时,执行验证读操作。在步骤S240确定是否将所检测的存储单元编程为具有与验证电压Vvfy12对应的阈值电压(S240)。当确定结果是没有用需要的阈值电压对所有检测到的存储单元进行编程时,在步骤S250,施加到所选择的字线WL(n-1)上的编程电压增加预定增量,并且例程返回到步骤S220。从步骤S220到步骤S250的编程循环重复预定的次数或者直到所有检测到的存储单元被编程为止。
当确定结果是用需要的阈值电压对所有检测到的存储单元进行编程时,对步骤S240的答复为“是”,并且编程前进到步骤S260,其中当将验证电压Vvfy21(或者读电压VRead2)施加到所选择的字线WL(n-1)时,通过寄存器块120执行读操作。此后,在步骤S270,当比验证电压Vvfy21高的验证电压Vvfy22被施加到所选择的字线WL(n-1)时,通过寄存器块120执行读操作。通过在步骤S260和S270执行读操作两次,而检测具有位于验证电压Vvfy21和Vvfy22(或者读电压VRead2和验证电压Vvfy22)(见图9)之间的阈值电压的存储单元。如果检测到具有位于验证电压Vvfy21和Vvfy22(或者读电压VRead2和验证电压Vvfy22)(见图9)之间的阈值电压的存储单元,则在步骤S280对所检测到的存储单元执行编程操作(即,副编程操作)。在执行编程操作之后,在步骤S290,在用作读电压的验证电压Vvfy22被施加到所选择的字线WL(n-1)时,执行验证读操作。在步骤S300确定所检测的存储单元是否被编程为具有与验证电压Vvfy22对应的阈值电压(S300)。当确定结果是没有用要求的阈值电压对所有检测到的存储单元进行编程时,施加到所选择的字线上的编程电压增加预定增量(S310)。这个例程返回到步骤S280,重复该过程,直到包括步骤S280-S310的编程循环运行预定次数或者利用要求的阈值电压对存储单元全部进行了编程为止。
当确定结果是用要求的阈值电压对所有检测到的存储单元进行了编程时,在步骤S320,当将验证电压Vvfy31(或者读电压VRead3)施加到所选择的字线WL(n-1)时,通过寄存器块120执行读操作。此后,当将比验证电压Vvfy31高的验证电压Vvfy32施加到所选择的字线WL(n-1)时,通过寄存器块120执行读操作(S330)。通过在步骤S320和S330执行读操作两次,而检测具有位于验证电压Vvfy31和Vvfy32(或者读电压VRead3和验证电压Vvfy32)(见图9)之间的阈值电压的存储单元。如果检测到具有位于验证电压Vvfy31和Vvfy32(或者读电压VRead3和验证电压Vvfy32)(见图9)之间的阈值电压的存储单元,则在步骤S340对所检测到的存储单元执行编程操作(即,副编程操作)。在执行了编程操作之后,在用作读电压的验证电压Vvfy32被施加到所选择的字线WL(n-1)时,执行验证读操作(S350)。在步骤S360确定所检测到的存储单元是否被编程为具有与验证电压Vvfy32对应的阈值电压。当确定结果是没有用要求的阈值电压对所有检测到的存储单元进行编程时,在步骤S370将要施加到所选择字线上的编程电压增加预定增量(S370)。这个例程前进到步骤S340,重复该过程,直到用步骤S340-S370限定的编程循环被重复预定次数或者存储单元都被编程为止。
当确定结果是用要求的阈值电压对所有已检测到的存储单元进行编程时,对与字线WL(n-1)和奇数位线BLo0-BLo(n-1)连接的已编程存储单元执行副编程操作。这与上述的实行方式相同,并不再进一步详细描述。
图10图示了在结束了根据本发明的编程过程之后的阈值电压分布。在对应于状态ST1的阈值电压分布中,位于验证电压Vvfy11和Vvfy12(或者读电压VRead1和验证电压Vvfy12)之间的存储单元被编程为具有验证电压Vvfy12或者比验证电压Vvfy12高的电压。如图9和图3所示,状态ST0和ST1之间的余量增加。在与状态ST2对应的阈值电压分布中,存在于验证电压Vvfy21和Vvfy22(或者读取和验证电压VRead2和Vvfy22)之间的存储单元被编程为具有验证电压Vvfy22或者比验证电压Vvfy22高的电压。如图1和图3所示,状态ST1和ST2之间的余量增加。类似地,在与状态ST3对应的阈值电压分布中,存在于验证电压Vvfy31和Vvfy32(或者读取和验证电压VRead3和Vvfy32)之间的存储单元被编程为具有验证电压Vvfy32或者比验证电压Vvfy32更高的电压。如图10和图3所示,状态ST2和ST3之间的余量增加。也就是说,相邻状态之间的读余量增加到大于图3所示的读余量。这样,尽管阈值电压分布由于电场耦合/多F耦合和HTS而加宽,但是可使用根据本发明的编程方法来充分保证相邻状态之间的读余量。
图11是根据本发明的存储系统的框图。该存储系统包括闪存1000和存储控制器2000。闪存1000实质上等同于图4中所图示的闪存。此外,闪存装置1000被配置为根据上述编程方法执行编程操作。
存储控制器2000包括主机接口2100、闪存接口2200、状态机2300、和RAM2400。主机接口2100被配置为向主机(未示出)提供接口,而闪存接口2200被配置为向闪存1000提供接口。从主机提供的编程数据通过主机接口2100而被暂时存储在RAM2400中。在状态机2300的控制下,将存储在RAM2400中的编程数据通过闪存接口2200而传输到闪存1000中。
状态机2300被配置为确定从主机提供的所有编程数据是否都已存储在闪存1000中。如果编程数据包括多个页面数据,则顺序地将页面数据编程到已选择存储块的行中。将其中有最终页面数据(下文中称为“最终编程数据”)的页面或字线称为“最终字线”。要注意的是,最终字线不是指示存储块的最后一条字线。该最终字线可以是所选择存储块的多条字线之一。如果将编程数据都存储在闪存1000中,则状态机2300控制执行用于直接布置在最终字线上的字线的主编程操作。例如,如果将编程数据都存储在闪存1000中,则状态机2300通过闪存接口2200向闪存1000输出伪编程命令和地址。从状态机2300输出的地址是用于寻址直接布置在最终字线之上的字线的地址。响应于来自存储控制器2000的伪编程命令和地址,闪存1000对与输入地址对应的字线(即直接布置在最终字线之上的字线)中的存储单元(即,偶数页面中的存储单元)执行主编程操作。如果完成了主编程操作,则闪存1000根据上述相同方法对最终字线的存储单元执行副编程操作。
在存储控制器2000的控制下,存储要存储到闪存1000中的编程数据。在这点上,闪存1000根据上面详细描述的方法自动执行主和副编程操作。该主和副编程操作实质上等同于上面描述的那些编程操作,并将不进行进一步详细描述。如果编程数据都被存储在闪存1000中,则存储控制器2000向闪存1000输出伪编程命令和地址。与伪编程命令一起提供的该地址是用于选择直接布置在最终字线之上的字线的地址。
闪存1000响应于从存储控制器2000提供的伪编程命令,对与输入地址对应的字线执行主编程操作。执行主编程操作,以保持各个存储单元的擦除状态。也就是说,在初始化寄存器块120的页面缓冲器时,执行编程操作。换言之,执行编程操作,以使得所选择字线的存储单元保持在擦除状态。在这个情况中,通过单个编程循环结束主编程操作。如果基于伪编程命令的第一编程操作结束,则闪存1000对最终字线(或者最终字线的偶数页面和/或偶数和奇数页面)执行副编程操作。用于最终字线的该副编程操作实质上等同于上述的编程操作,并将不进行进一步详细描述。以这个方式,将从主机传输的编程数据存储在直接布置在经过主编程操作的字线之上的字线的存储单元中。
根据本发明,在经过主编程操作之后,在各个状态的特定区域内排列的存储单元经过副编程操作,以具有等于或高于主编程操作的验证电压的阈值电压。这样,尽管阈值电压分布由于电场耦合/多F耦合和HTS而被加宽,但可以使用根据本发明的编程方法来充分保证相邻状态之间的读余量。
尽管已经结合在附图中图示的本发明的实施例描述了本发明,但是本发明不限于此。对本领域的技术人员显而易见的是,可以在不脱离本发明的范围和精神的情况下,对本发明进行各种替换、修改和改变。
Claims (10)
1.一种存储系统,包括:
闪存,具有用于存储数据的存储单元阵列;以及
存储控制器,被配置为控制数据在闪存中的存储,所述存储控制器被配置为确定在编程操作期间是否将从主机提供的编程数据都存储在闪存中,当确定结果是该编程数据都存储在所述闪存中时,所述存储控制器向所述闪存输出伪编程命令和与所述闪存单元阵列的至少一部分相关联的地址。
2.如权利要求1所述的存储系统,其中,存储了所述编程数据的所述闪存响应于从所述存储控制器提供的所述伪编程命令,对在与所述输入地址对应的所述存储阵列上的字线执行所述编程操作。
3.如权利要求1所述的存储系统,其中所述存储控制器还包括:
主机接口,被配置为从主机接收编程数据;
临时存储装置,与所述主机接口进行通信,用于临时存储所述编程数据;
闪存接口,与所述临时存储装置和所述闪存进行通信,所述闪存接口将所述编程数据从所述临时存储装置传输到所述闪存;以及
状态机,与所述闪存接口和所述临时存储装置进行通信,所述状态机控制编程数据从所述临时存储装置到所述闪存的所述传输。
4.如权利要求3所述的存储系统,其中所述状态机进一步被配置为确定从所述主机提供的所述编程数据是否都被存储在所述闪存中。
5.如权利要求3所述的存储系统,其中所述状态机控制用于直接布置在所述最终字线之上的所述存储阵列的字线的所述编程操作的执行。
6.如权利要求3所述的存储系统,其中所述状态机通过所述闪存接口而输出所述伪编程命令以及与所述闪存单元阵列的至少一部分相关联的所述地址。
7.如权利要求3所述的存储系统,其中从所述状态机输出的所述地址是与直接布置在最终字线上的所述存储阵列的字线相关联的地址。
8.如权利要求1所述的存储系统,其中所述闪存被配置为执行所述编程操作,以便使与所述地址对应的所述存储阵列的字线中的存储单元能够保持在擦除状态。
9.如权利要求1所述的存储系统,其中所述编程操作是主编程操作,所述闪存被配置为在基于所述伪编程命令执行所述主编程操作之后,对第一和第二位线与用于存储指示多个状态之一的多位数据的所述多个存储单元相连的、直接位于所选择字线之下的字线执行副编程操作。
10.如权利要求2所述的存储系统,其中当在所述编程操作之后从所述主机重新提供编程数据时,所述存储控制器被配置为控制所述闪存,以便将所述重新提供的编程数据编程到经历所述伪编程操作的、在与所述输入地址对应的所述存储阵列上的所述字线的下一字线的存储单元中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060007414A KR100841336B1 (ko) | 2006-01-24 | 2006-01-24 | 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리를 구비한 메모리 시스템 |
KR7414/06 | 2006-01-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101009137A true CN101009137A (zh) | 2007-08-01 |
CN101009137B CN101009137B (zh) | 2012-01-25 |
Family
ID=38285383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100037449A Active CN101009137B (zh) | 2006-01-24 | 2007-01-24 | 补偿存储单元编程状态之间的读余量减少的闪存系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7734880B2 (zh) |
JP (1) | JP5354857B2 (zh) |
KR (1) | KR100841336B1 (zh) |
CN (1) | CN101009137B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101640072A (zh) * | 2008-08-01 | 2010-02-03 | 海力士半导体有限公司 | 闪速存储设备的编程方法 |
CN103971739A (zh) * | 2013-02-04 | 2014-08-06 | 三星电子株式会社 | 包括非易失性存储设备的存储系统及其编程方法 |
CN110956990A (zh) * | 2018-09-26 | 2020-04-03 | 展讯通信(上海)有限公司 | Sram读取延时控制电路及sram |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100885783B1 (ko) * | 2007-01-23 | 2009-02-26 | 주식회사 하이닉스반도체 | 플래시 메모리 장치 및 동작 방법 |
KR101656384B1 (ko) * | 2010-06-10 | 2016-09-12 | 삼성전자주식회사 | 불휘발성 메모리 장치의 데이터 기입 방법 |
KR102025251B1 (ko) | 2012-10-31 | 2019-09-25 | 삼성전자주식회사 | 메모리 시스템 및 그것의 프로그램 방법 |
KR102089532B1 (ko) | 2013-02-06 | 2020-03-16 | 삼성전자주식회사 | 메모리 컨트롤러, 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102102224B1 (ko) * | 2013-10-01 | 2020-04-20 | 삼성전자주식회사 | 저장 장치 및 그것의 프로그램 방법 |
KR102117919B1 (ko) * | 2013-10-24 | 2020-06-02 | 삼성전자주식회사 | 저장 장치 및 그것의 프로그램 방법 |
KR102318561B1 (ko) | 2014-08-19 | 2021-11-01 | 삼성전자주식회사 | 스토리지 장치, 스토리지 장치의 동작 방법 |
US12014772B2 (en) | 2021-11-17 | 2024-06-18 | Samsung Electronics Co., Ltd. | Storage controller and storage device including the same |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6347051B2 (en) * | 1991-11-26 | 2002-02-12 | Hitachi, Ltd. | Storage device employing a flash memory |
KR100383774B1 (ko) * | 2000-01-26 | 2003-05-12 | 삼성전자주식회사 | 공통 인터페이스 방식의 메모리 장치들을 구비한 시스템 |
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 |
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 |
US7020017B2 (en) * | 2004-04-06 | 2006-03-28 | Sandisk Corporation | Variable programming of non-volatile memory |
JP4410188B2 (ja) * | 2004-11-12 | 2010-02-03 | 株式会社東芝 | 半導体記憶装置のデータ書き込み方法 |
US7196946B2 (en) * | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling in non-volatile storage |
-
2006
- 2006-01-24 KR KR1020060007414A patent/KR100841336B1/ko active IP Right Grant
- 2006-11-13 US US11/595,925 patent/US7734880B2/en active Active
-
2007
- 2007-01-22 JP JP2007011910A patent/JP5354857B2/ja active Active
- 2007-01-24 CN CN2007100037449A patent/CN101009137B/zh active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101640072A (zh) * | 2008-08-01 | 2010-02-03 | 海力士半导体有限公司 | 闪速存储设备的编程方法 |
CN103971739A (zh) * | 2013-02-04 | 2014-08-06 | 三星电子株式会社 | 包括非易失性存储设备的存储系统及其编程方法 |
CN103971739B (zh) * | 2013-02-04 | 2019-07-16 | 三星电子株式会社 | 包括非易失性存储设备的存储系统及其编程方法 |
CN110956990A (zh) * | 2018-09-26 | 2020-04-03 | 展讯通信(上海)有限公司 | Sram读取延时控制电路及sram |
CN110956990B (zh) * | 2018-09-26 | 2022-03-01 | 展讯通信(上海)有限公司 | Sram读取延时控制电路及sram |
Also Published As
Publication number | Publication date |
---|---|
KR100841336B1 (ko) | 2008-06-26 |
US7734880B2 (en) | 2010-06-08 |
JP2007200531A (ja) | 2007-08-09 |
JP5354857B2 (ja) | 2013-11-27 |
KR20070087895A (ko) | 2007-08-29 |
CN101009137B (zh) | 2012-01-25 |
US20070171722A1 (en) | 2007-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101009137B (zh) | 补偿存储单元编程状态之间的读余量减少的闪存系统 | |
CN101000803B (zh) | 能够补偿状态间读取裕度减小的闪速存储器编程方法 | |
US7489558B2 (en) | Program method of flash memory capable of compensating read margin reduced due to charge loss | |
US7463526B2 (en) | Programming method for flash memory capable of compensating reduction of read margin between states due to high temperature stress | |
CN101009139B (zh) | 能补偿由于高温应力状态间读出边界减小的闪存编程方法 | |
US8059460B2 (en) | Method of programming nonvolatile memory device | |
US8897066B2 (en) | Method of programming nonvolatile memory device | |
US7599222B2 (en) | Semiconductor memory device using pipelined-buffer programming and related method | |
US8582371B2 (en) | Semiconductor memory device and method of operating the same | |
US8559233B2 (en) | Semiconductor memory device | |
US20140043904A1 (en) | Memory system comprising nonvolatile memory device and related method of operation | |
CN101009138B (zh) | 用于快闪存储器件的编程方法 | |
US7826276B2 (en) | Non-volatile memory device reducing data programming and verification time, and method of driving the same | |
KR20130072669A (ko) | 반도체 메모리 장치 및 그의 동작 방법 | |
US20140185387A1 (en) | Semiconductor memory device and method of operating the same | |
KR20120005823A (ko) | 플래시 메모리 장치 및 그의 동작 방법 | |
KR20070094706A (ko) | 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리를 구비한 메모리 시스템 |
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 |