CN100555454C - 具有扫描电路和方法的非易失性存储器 - Google Patents

具有扫描电路和方法的非易失性存储器 Download PDF

Info

Publication number
CN100555454C
CN100555454C CNB2005100980195A CN200510098019A CN100555454C CN 100555454 C CN100555454 C CN 100555454C CN B2005100980195 A CNB2005100980195 A CN B2005100980195A CN 200510098019 A CN200510098019 A CN 200510098019A CN 100555454 C CN100555454 C CN 100555454C
Authority
CN
China
Prior art keywords
programming
data
response
unit
signal
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.)
Expired - Fee Related
Application number
CNB2005100980195A
Other languages
English (en)
Other versions
CN1758378A (zh
Inventor
郑宰镛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1758378A publication Critical patent/CN1758378A/zh
Application granted granted Critical
Publication of CN100555454C publication Critical patent/CN100555454C/zh
Expired - Fee Related 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
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control 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/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
    • 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 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device

Landscapes

  • Read Only Memory (AREA)

Abstract

发明人描述和要求保护一种加速的比特扫描非易失性存储器和方法。一种非易失性存储器包括:存储单元阵列,它包括多个存储单元,每个存储单元对应于编程数据;数据扫描单元,用于检测具有第一值的编程数据;以及编程单元,用于响应于所述扫描而编程对应于所述编程数据的所检测部分的所述多个存储单元。

Description

具有扫描电路和方法的非易失性存储器
本申请要求2004年9月15日提交的韩国专利申请第2004-73883号在35U.S.C.§119下的优先权,我们将其通过引用包含在此。
技术领域
本发明涉及一种非易失性存储器,具体涉及具有改善的扫描电路和方法的非易失性存储器。
背景技术
非易失性存储器当其电源被切断时在存储单元中保留所存储的数据。由于其电子擦除和存储数据的能力而被广泛地用于计算机、存储卡等中的一种非易失性存储器是快闪存储器。
快闪存储器按照它们的存储单元结构被分类为或非(NOR)或者与非(NAND)类型。NOR型快闪存储器将两个或更多的存储单元并联到每条位线,而NAND型快闪存储器将两个或多个存储单元串联到每条位线。NOR型快闪存储器使用沟道热电子注入来向存储单元存储或编程(program)数据,并且使用Fowler-Nordheim隧道效应(F-N隧道效应)。与非型快闪存储器使用F-N隧道效应来在存储单元中存储和擦除数据。利用沟道热电子注入实现方式,或非型快闪存储器比与非型快闪存储器更快地编程单元。对于这种改善的性能的一种折中是或非型快闪存储器消耗更多的存储单元电流,这对于大规模集成有副作用。
为了在NOR型快闪存储器中编程或存储数据,向所述快闪存储器提供了编程(program)命令、编程地址和编程数据。所述编程命令可以指示要对于快闪存储器执行的操作类型,例如编程操作。在执行所述编程操作之前,通常擦除要被编程的快闪存储器的部分,其中,所述擦除将每个被擦除的存储单元设置为第一预定值,诸如逻辑高或“1”。所述编程地址和编程数据可以响应于所述编程命令而选择要被编程的存储单元。例如,所述编程地址可以激活字线,并且所述编程数据可以指示将编程与所激活的字线耦接的哪个(些)存储单元。通常,编程操作向每个所选择的存储单元编程诸如逻辑低或“0”的第二个预定值,否则保持所擦除的第一预定值。
快闪存储器在内部指定用于完成每个编程操作的预设时间。所述编程操作包括验证操作,用于确定在每个被寻址的存储单元中是否成功地将编程数据编程。在所述预设时间期间,重复所述编程和验证操作,直到在每个被寻址的存储单元中编程了编程数据。
为了执行编程操作,向每条对应的位线施加对应于每个第二预定编程数据值(例如“0”)的编程电压。因为使用沟道热电子注入来编程或非型快闪存储器,因此通常在单个编程操作期间可以通过编程电压同时编程仅仅2-4个存储单元。例如,当可以在单个编程操作期间同步地编程四个存储单元时并且当编程数据是“1001101111110111”时,需要四个编程操作“1001”、“1011”、“1111”和“0111”,即使通过所述编程操作正在物理地改变仅仅四个存储单元,例如对应于在编程数据中的“0”的那些单元。
因此,所述编程时间,或者说将所述编程数据编程到快闪存储器所需要的时间,总是相同的,而不论是否所述编程数据是第一或第二预定值。
发明内容
本发明的一个方面是提供一种能够降低编程时间的非易失性存储器。所述非易失性存储器包括:存储单元阵列,它包括多个存储单元,每个存储单元对应于编程数据的独立部分;数据扫描单元,用于检测具有第一值的编程数据的各部分;以及编程单元,用于响应于预定数量的检测而将对应于编程数据的所检测部分的存储单元编程。
附图说明
我们包括附图以进一步理解本发明,我们并入它们以构成本说明书的一部分。所述附图图解了本发明的示例实施例,并且与说明一起用于解释本发明的原理。
图1是按照本发明的一个例证实施例的非易失性半导体存储器的方框图。
图2和3是图解图1所示的半导体存储器的操作的时序图。
图4是图1所示的扫描时钟产生单元的一个实施例的方框图。
图5是图1所示的数据锁存电路的一个实施例的方框图。
图6是图1所示的编程比特计数器的一个实施例的方框图。
图7是图1所示的编程控制单元的一个实施例的方框图。
图8是图1所示的编程驱动电路的一个实施例的方框图。
具体实施方式
下面我们参照附图来更详细地描述本发明的优选实施例。但是,本发明可以以不同的形式被体现,并且不应当被理解为限制于在此给出的实施例。而且,这些实施例被提供使得本公开彻底和完整,并且向本领域的技术人员完整地提供本发明的范围。在整个说明书中,相同的附图标号表示相同的元件。
图1是按照本发明的一个实施例的非易失性半导体存储器100的方框图。参见图1,非易失性半导体存储器100包括数据扫描单元10、编程单元80和存储单元阵列区域90。
存储单元阵列区域90包括存储单元阵列92、X解码器94、Y解码器96和Y门98。存储单元阵列92包括多个存储单元,它们连接到多条位线BL1-BLN和多条字线WL1-WLj。X解码器94解码存储单元的行地址X_Add。Y解码器96解码列的列地址Y_Add。另外,Y解码器96在存储单元阵列92和编程单元80之间执行数据接口。虽然非易失性半导体存储器100在图1中被示出为或非型快闪存储器。但是可以以其他的非易失性存储器类型来实现本发明。
数据扫描单元10包括扫描时钟产生单元20、缓冲器29、数据锁存单元30。扫描时钟产生单元20响应于内部时钟信号CLK而产生多个扫描时钟信号ScanCLK<N:1>,并且向数据锁存单元30和编程比特计数器40提供所述扫描时钟信号ScanCLK<N:1>。如图1所示,可以以两组
Figure C20051009801900071
来提供扫描时钟信号ScanCLK<N:1>。在一个实施例中,扫描时钟信号ScanCLK<N:1>可以以替代的方式被产生,例如ScanCLK<1>、ScanCLK<N>、ScanCLK<2>、ScanCLK<N-1>等,以
Figure C20051009801900081
作为对于每组编程数据产生的最后扫描时钟信号。扫描时钟产生单元20可以在内部时钟信号CLK的每个间隔中产生两个扫描时钟信号,一个是当所述内部时钟信号CLK在高电平时,另一个是当所述内部时钟信号CLK在低电平时。可以从时钟产生单元(未示出)产生所述内部时钟信号CLK,所述时钟产生单元可以被包括在非易失性半导体存储器100中。缓冲器29缓存编程数据Data<N:1>的多个比特,并且向数据锁存单元30提供所缓存的编程数据Data<N:1>。
数据锁存单元30响应于扫描时钟信号ScanCLK<N:1>而确定编程数据Data<N:1>的那些比特具有值“0”,并且产生对应于具有“0”值的那些比特的位线选择信号BLselect<N:1>和编程计数信号PgmCount<N:1>。数据锁存单元30包括多个数据锁存电路301-30N,其中每个数据锁存电路301-30N接收编程数据Data<N:1>的一个对应比特,并且响应于对应的扫描时钟信号ScanCLK<N:1>而确定是否所述比特具有值“0”。因为可以在内部时钟信号CLK的每个间隔中产生两个或更多的扫描时钟信号,因此数据锁存单元30可以在每个内部时钟信号间隔中确定编程数据的两个或多个比特的值。每个数据锁存电路30_1-30_N响应于编程数据Data<N:1>的一个对应比特的所确定的值而产生一个编程计数信号PgmCount<N:1>并且设置位线选择信号BLselect<N:1>。数据锁存单元30向编程比特计数器40提供编程计数信号PgmCount<N:1>,并且向编程驱动器60提供位线选择信号BLselect<N:1>。
编程单元80响应于所述位线选择信号BLselect<N:1>和编程计数信号PgmCount<N:1>而编程在存储单元阵列区域90内的所选择的存储单元。编程单元80包括编程比特计数器40、编程控制单元50、编程驱动器60和感测单元70。
编程比特计数器40从数据锁存单元30接收编程计数信号PgmCount<N:1>,并且从扫描时钟产生单元20接收扫描时钟信号ScanCLK<N:1>。编程比特计数器40响应于所述编程计数信号PgmCount<N:1>或扫描时钟信号ScanCLK<N:1>而产生同步激活信号BitMax。当接收到最后的扫描时钟信号时或在计数了预定数量的编程计数信号PgmCount<N:1>后,可以产生同步编程激活信号BitMax。对于或非型快闪存储器的沟道热电子注入编程,通常可以同时编程2-4个存储单元,因此,在一个实施例中,所述编程计数信号PgmCount<N:1>的预定数量可以在2和4之间。编程比特计数器40向扫描时钟产生单元20和编程控制单元50提供所述同步编程激活信号BitMax。
扫描时钟产生单元20可以响应于所述同步编程激活信号BitMax而停止产生扫描时钟信号。编程控制单元50响应于所述同步编程激活信号BitMax而产生编程执行信号PgmExecute,并且向编程驱动单元60和编程比特计数器40提供所述编程执行信号PgmExecute。在一个实施例中,所述编程执行信号PgmExecute响应于同步编程激活信号BitMax而被设置为高电平,并且响应于从一个定时控制单元(未示出)产生的编程时间控制信号Time Out而被设置在低电平,所述定时控制单元可以被包括在半导体存储器100中。编程比特计数器40可以复位其本身,并且响应于编程执行信号PgmExecute而产生锁存复位信号LatchReset,用于复位每个数据锁存电路30_1-30_N。
编程驱动器60响应于编程执行信号PgmExecute和位线选择信号BLselect<N:1>、通过选择性地激活位线BL1-BLN而编程存储单元阵列区域90。编程驱动器60包括多个编程驱动电路60_1-60_N,每个编程驱动电路60_1-60_N对应于一条位线BL1-BLN。每个编程驱动电路60_1-60_N接收对应的位线选择信号BLselect<N:1>、来自一个高电压产生单元(未示出)——它可以被包括在半导体存储器100中——的编程电压Vb1、编程执行信号PgmExecute。当数据锁存单元30将对应的位线选择信号BLselect<N:1>设置为高电平时,每个编程驱动电路60_1-60_N向对应的位线BL1-BLN施加编程电压Vb1。
感测单元70包括多个感测电路70_1-70_N,其中,每个感测电路70_1-70_N执行验证操作,即从存储单元阵列92的一条对应的位线BL1-BLN读取数据以确认由编程驱动器60完成了编程。当作为验证操作的结果、对应的存储单元被确认已经被编程时,每个感测电路70_1-70_N将一个对应的验证通过信号VerifyPass<N:1>设置为高电平,用于向对应的数据锁存电路30_1-30_N指示验证通过。当对应的存储单元被确认为未被编程时。每个感测电路70_1-70_N将验证通过信号VerifyPass<N:1>设置为低电平,用于向对应的数据锁存电路301-30N指示验证失败。
在一个实施例中,每个感测电路70_1-70_N可以包括比较器(或比较逻辑电路),它将从存储单元阵列92的对应位线读取的数据与由每个编程驱动电路60_1-60_N编程的数据相比较。当来自对应的比较器的结果指示所述数据相同时,向对应的数据锁存电路30_1-30_N提供一个对应的验证通过信号VerifyPass<N:1>。
如果结果是不同的,每个感测电路70_1-70_N将一个对应的验证通过信号VerifyPass<N:1>设置为低电平以指示对于对应的位线BL1-BLN编程失败。在接收到被设置到低电平的一个对应的验证通过信号VerifyPass<N:1>时,每个数据锁存电路30_1-30_N将编程数据重新编程到存储单元阵列区域90。
图2和3是图解在图1中的半导体存储器100的操作的时序图。参见图2和3,假定编程数据包含8个比特,并且用于产生同步激活信号BitMax所需要的编程计数信号PgmCount<8:1>的预定数量是四。
参见图2,要编程到存储单元阵列区域90的编程数据Data<8:1>是“00000000”。产生一个锁存复位信号LatchReset以初始化数据锁存电路30_1-30_8来进行并列的位扫描,其中,在编程数据的正向扫描中,由数据锁存电路30_1-30_4使用第一组扫描时钟信号ScanCLK<4:1>,在反向扫描中,由数据锁存电路30_5-30_8使用第二组扫描时钟信号ScanCLK<5:8>。在图2所示的实施例中,在内部时钟信号CLK的上升沿产生第一组扫描时钟信号ScanCLK<4:1>,在内部时钟信号CLK的下降沿产生第二组扫描时钟信号ScanCLK<5:8>。
在编程单元80编程存储单元阵列92后,编程比特计数器40产生锁存复位信号LatchReset。在锁存复位信号LatchReset脉动后,每个数据锁存电路30_1-30_8确定对应的位线选择信号BLselect<8:1>和编程计数信号PgmCount<8:1>的电平(高或低)。在一个实施例中,每个数据锁存电路30_1-30_8当对应的编程数据具有“0”值时产生一个被激活的位线选择信号BLselect<i>和一个被激活的编程计数信号PgmCount<i>,当对应的编程数据具有“1”值时产生一个失活的位线选择信号BLselect<i>和一个失活的编程计数信号PgmCount<i>。
当在内部时钟信号CLK的第一周期中产生第一和第八扫描时钟信号ScanCLK<1>和ScanCLK<8>时,数据锁存电路30_1和30_8检测到具有“0”值的编程数据(第一数据0和第二数据0),并且产生第一和第八位线选择信号BLselect<1>和BLselect<8>与第一和第八编程计数信号PgmCount<1>和PgmCount<8>。编程比特计数器40响应于第一和第八编程计数信号PgmCount<1>和PgmCount<8>而将计数器值递增两次。
随后,在内部时钟信号CLK的第二周期中产生第二和第七扫描时钟信号ScanCLK<2>和ScanCLK<7>。响应于所述第二和第七扫描时钟信号ScanCLK<2>和ScanCLK<7>而检测具有“0”值的编程数据(第三数据0和第四数据0),并且产生第二和第七位线选择信号BLselect<2>和BLselect<7>与第二和第七编程计数信号PgmCount<2>和PgmCount<7>。编程比特计数器40响应于所述第二和第七编程计数信号PgmCount<2>和PgmCount<7>而将所述计数器值递增到四。
因为所述计数器值等于编程计数信号的预定数量,因此激活一个同步编程激活信号BitMax来指示具有“0”值的四比特编程数据已经被检测到,并且要同时被编程。当激活所述同步编程激活信号BitMax时,编程控制单元50激活编程执行信号PgmExecute,用于通过编程单元80启动编程操作。
结果,具有“0”值的编程数据的四个比特Data<1>、Data<2>、Data<3>、Data<4>被同时编程到存储单元阵列92。在激活同步编程激活信号BitMax的同时,扫描时钟产生单元20不产生扫描时钟。当编程时间过去时,向编程控制单元50提供编程时间控制信号TimeOut(超时),其中,响应于所述编程时间控制信号TimeOut而将所述编程执行信号PgmExecute去激活,并且响应于所述编程执行信号PgmExecute的去激活而使得同步编程激活信号BitMax去激活。产生一个锁存复位信号LatchReset来初始化编程比特计数器20和数据锁存单元30,并且以如上所述相同的方式来使用编程数据Data<3>、Data<4>、Data<5>、Data<6>执行编程操作。
参见图3,要被编程到存储单元阵列区域90的编程数据Data<8:1>是“10101010”,其中,编程数据Data<2>、Data<4>、Data<6>、Data<8>具有“0”值。图3所示的编程操作类似于图2所示的操作,除了分别响应于扫描时钟信号ScanCLK<2>、ScanCLK<4>、ScanCLK<6>、ScanCLK<8>而产生第二、第四、第六和第八位线选择信号BLselect<2>、BLselect<4>、BLselect<6>、BLselect<8>和第二、第四、第六和第八编程计数信号PgmCount<2>、PgmCount<4>、PgmCount<6>、PgmCount<8>。因为,在图3的编程数据中仅仅存在四个“0”值的比特,因此不需要第二编程操作来将图3的编程数据编程到存储单元阵列92。
因此,与现有技术——通过无条件地将N比特(例如8比特)的编程数据除以能够被同时编程的比特数量(例如4比特)而执行编程操作——相比较,本发明通过扫描具有“0”值的编程数据和响应于扫描的结果而编程存储单元阵列92而将编程时间减半。另外,因为并行执行对于具有“0”值的编程数据的扫描,因此可以进一步降低编程时间。
当编程数据的大小提高时,这种在编程时间上的降低程度也提高。例如,当被提供16比特的编程数据——其中可以同时编程四个比特——时,当编程数据具有四个或更少的“0”值的比特时可以执行一次编程操作,当存在5-8个“0”比特时可以执行两次编程操作,当存在9-12个“0”比特时可以执行三次编程操作,当存在13-16个“0”比特时可以执行四次编程操作。换句话说,可以根据具有“0”值的编程数据比特的数量来将编程时间降低最多75%。因为具有“0”或“1”值的编程数据比特的概率相同,因此平均编程时间降低可以是大约50%.
图4是图1中的扫描时钟产生单元20的一个实施例的方框图。参见图4,扫描时钟产生单元20包括第一扫描时钟产生单元22和第二扫描时钟产生单元24。第一扫描时钟产生单元22产生四个扫描时钟信号ScanCLK<4:1>,第二扫描时钟产生单元24产生四个扫描时钟信号ScanCLK<5:8>。虽然图4示出了扫描时钟产生单元20的一个8扫描时钟信号实现方式,但是可以在扫描时钟产生单元20的其他实施例中按比例增加和减少扫描时钟的数量。
第一扫描时钟产生单元22包括信号输入单元221、计数器单元225和解码单元227。信号输入单元221包括:反相器,用于反相内部时钟信号CLK;或非门,用于对于内部时钟信号CLK的反相值和同步编程激活信号BitMax执行逻辑或非运算。信号输入单元221当同步编程激活信号BitMax在低电平时向计数器单元225提供内部时钟信号CLK,并且当同步编程激活信号BitMax在高电平时提供反相的同步编程激活信号BitMax。计数器单元225包括三比特计数器,并且计数从信号输入单元221接收的时钟信号,其中,所述时钟信号可以是内部时钟信号或反相的同步编程激活信号BitMax。解码单元227解码计数器单元225的输出以依序产生多个扫描时钟信号ScanCLK<1:4>。
信号输入单元221响应于高电平同步编程激活信号BitMax而向计数器单元225提供低电平时钟信号CLK,由此禁止计数器单元225的计数操作。结果,第一扫描时钟产生单元22当同步编程激活信号BitMax在高电平时停止产生扫描时钟信号ScanCLK<1:4>。在一个实施例中,同步编程激活信号BitMax在编程单元80的编程操作期间被设置到高电平。第一扫描时钟产生单元22在完成所述编程操作后开始计数时钟信号,并且同步编程激活信号BitMax被设置到低电平。
第二扫描时钟产生单元24包括信号输入单元241、计数器单元245和解码单元247。第二扫描时钟产生单元24类似于第一扫描时钟产生单元22,除了当同步编程激活信号BitMax被设置为低电平时计数器单元245接收反相的内部时钟信号CLK。向第二扫描时钟产生单元24加上高电平同步编程激活信号BitMax停止了产生扫描时钟信号ScanCLK<5:8>。由于计数器部分225和245的这些组织,第一扫描时钟产生单元22在内部时钟信号CLK的上升沿产生扫描时钟信号ScanCLK<1:4>,并且第二扫描时钟产生单元24在内部时钟信号CLK的下降沿产生扫描时钟信号ScanCLK<5:8>。图5是在图1中的数据锁存电路30_1的实施例的方框图。参见图5,数据锁存电路30_1包括数据检测单元31和数据存储单元35。数据锁存电路30_2-30_N与数据锁存电路30_1类似地工作。数据检测单元31包括或非门、与非门和反相器。数据检测单元31执行对于验证通过信号VerifyPass<1>和编程数据Data<1>的逻辑或非运算,并且执行对于逻辑或非运算的结果和扫描时钟信号ScanCLK<1>的逻辑与非运算。数据检测单元31将逻辑与非运算的结果反相以输出编程计数信号PgmCount<1>。例如,当如高电平验证通过信号VeriftPass<1>所指示的那样来正确地执行编程操作时,数据检测单元31输出低电平编程计数信号PgmCount<1>。当未正确地执行编程操作并且编程数据Data<1>需要重新编程时,向数据检测单元31提供低电平验证通过信号VerifyPass<1>。例如,当编程数据Data<1>的值是“0”时,与扫描时钟信号ScanCLK<1>同步地产生编程计数信号PgmCount<1>。
数据存储单元35可以包括T触发器,用于存储数据。当数据检测单元31检测到具有值“0”的编程数据Data<1>时,编程计数信号PgmCount<1>被设置到高电平,并且数据存储单元35将位线选择信号BLselect<1>设置为高电平。数据存储单元35响应于由编程比特计数器40产生的锁存复位信号LatchReset而被初始化,其中,所述初始化将位线选择信号BLselect<1>设置为低电平,用于防止在随后的编程操作期间的无意中进行的编程。图6是编程比特计数器40的一个实施例的方框图。参见图6,编程比特计数器40包括信号输入单元41、复位控制单元42、计数器单元45、数据输出单元46。
信号输入单元41接收由数据锁存单元30产生的多个计数信号PgmCount<1>到PgmCount<8>。当数据锁存单元30在编程数据中检测到“0”值时,信号输入单元41向计数器单元45提供一个信号。计数器单元45可以包括三比特计数器,用于响应于信号输入单元41接收到每个计数信号PgmCount<1>到PgmCount<8>而递增计数器值。
数据输出单元46响应于计数器值等于预定值或接收到诸如ScanCLK<5>的最后的扫描时钟信号而产生同步编程激活信号BitMax。为了产生同步编程激活信号BitMax,数据输出单元46包括:或非门47,用于对于计数器单元45的输出和所述最后的扫描时钟信号ScanCLK<5>执行逻辑或非运算;锁存单元48,用于锁存或非门47的输出信号;第一反相器49,用于反相和输出锁存单元48的输出。
复位控制单元42复位计数器单元45,并且响应于由编程控制单元50产生的编程执行信号PgmExecute而产生锁存复位信号LatchReset。复位控制单元42包括脉冲产生单元43,用于将反相的编程执行信号PgmExecute转换为脉冲信号;反相器44,用于通过反相所述脉冲信号而产生所述锁存复位信号LatchReset。
图7是图1中图解的编程控制单元50的一个实施例的方框图。参见图7,编程控制单元50包括切换单元55和信号输出单元57。
切换单元55可以包括T触发器,用于通过时钟输入端来接收同步编程激活信号BitMax。当编程比特计数器40将所述同步编程激活信号BitMax设置为高电平时,切换单元55产生编程执行信号PgmExecute。信号输出单元57延迟和输出由切换单元55产生的编程执行信号PgmExecute。在一个实施例中,信号输出单元57通过将编程执行信号PgmExecute反相两次而延迟所述编程执行信号PgmExecute。
切换单元55可以响应于在复位端接收的编程时间控制信号TimeOut而被复位。结果,将编程执行信号PgmExecute设置到低电平。
图8是图1所示的编程驱动电路60_1的一个实施例的方框图。编程驱动电路60_1选择性地施加用于编程存储单元阵列92的位线电压Vb1。在一个实施例中,编程驱动电路60_1在当由位线选择信号BLselect<1>选择位线BL<1>时的编程操作期间施加高电压Vb1以编程到位线BL<1>。编程驱动电路60_2-60_N与编程驱动电路60_1类似地工作。
参见图8,编程驱动电路60_1包括输入数据单元61,用于当编程执行信号PgmExecut和位线选择信号BLselect<1>在高电平时向节点N1提供高电平信号。数据输入单元61可以包括与非门和反相器,用于检测编程执行信号PgmExecut和位线选择信号BLselect<1>的电平。所述高电平信号被施加到第一NMOS晶体管65的控制门,并且通过反相器63被反相到低电平以被发送到第二NMOS晶体管66的控制门。
通过高电平信号来导通第一NMOS晶体管65,通过低电平信号来截止第二NMOS晶体管66。第二节点N2的电压电平被从导通第一NMOS晶体管65产生的放电操作降低到地电平。当第二节点N2的电压被降低到地电平时,向第一PMOS晶体管67的控制端施加低电平信号,因此导通第一PMOS晶体管67。
第三节点N3的电压电平在导通的第一PMOS晶体管67的充电操作中上升到编程电压电平Vb1,并且第二PMOS晶体管68由于上升的第三节点N3电压而保持截止。结果,在第三结果N3的编程电压Vb1被提供到位线BL<1>,并且用于编程对应的存储单元。
如上所述,按照本发明的一个实施例的非易失性存储器100仅仅选择具有“0”值的编程数据,并且响应于所述选择而编程所述存储单元阵列。因此,与传统的编程方法相比较,非易失性存储器100大大地降低了编程时间。
虽然已经结合在附图中图解的本发明的实施例而说明了本发明,但是不限于此。对于本领域的技术人员显然,在不脱离本发明的范围和精神的情况下,可以对于本发明进行各种替代、修改和改变。

Claims (23)

1.一种非易失性存储器,包括:
存储单元阵列,它包括多个存储单元,每个存储单元存储编程数据;
数据扫描单元,用于与特定周期的内部时钟同步地并行产生多个扫描时钟信号,并响应于所述扫描时钟信号而并行检测具有第一值的编程数据;以及
编程单元,用于响应于数据扫描单元而将所述编程数据编程到所述多个存储单元中。
2.按照权利要求1的器件,其中,所述数据扫描单元被适配来将所述编程数据扫描预定次数。
3.按照权利要求1的器件,其中,所述编程单元被适配来响应于扫描时钟信号而编程所述存储单元。
4.按照权利要求1的器件,其中,所述数据扫描单元被适配来通过同时执行编程数据的正向扫描和反向扫描来检测具有第一值的编程数据。
5.按照权利要求1的器件,其中,所述数据扫描单元被适配来在内部时钟的每个周期中产生至少两个扫描时钟信号。
6.按照权利要求3的器件,其中,所述数据扫描单元被适配来响应于存储单元的编程而停止产生所述扫描时钟信号。
7.按照权利要求1的器件,
其中,所述数据扫描单元被适配来响应于每次检测而产生位线激活信号;并且
其中,所述编程单元被适配来响应于预定数量的检测而编程对应于位线激活信号的存储单元。
8.按照权利要求1的器件,
其中,所述数据扫描单元被适配来响应于每次检测而产生同步信号;
其中,所述编程单元包括计数器,用于响应于每个同步信号而递增计数器值;并且
其中,所述编程单元被适配来响应于所述计数器值而编程对应于所检测的编程数据的存储单元。
9.按照权利要求8的器件,其中,所述数据扫描单元被适配来响应于所述计数器值而停止检测具有第一值的编程数据的多个部分。
10.按照权利要求8的器件,其中,所述计数器被适配来响应于存储单元的编程而复位计数器值。
11.按照权利要求1的器件,其中,所述编程单元包括感测单元,用于验证存储单元的编程。
12.按照权利要求11的器件,其中,所述感测单元通过读取对应于所述编程数据的存储单元中存储的数据并将所存储的数据与所述编程数据相比较来验证所述编程。
13.一种方法,包括:
接收对应于多个存储单元的每个的编程数据;
产生多个扫描时钟信号;
通过响应于所述扫描时钟信号扫描所述编程数据而检测第一值;以及
响应于所述检测而编程所述多个存储单元。
14.按照权利要求13的方法,包括:将第一值按预定次数检测。
15.按照权利要求13的方法,其中,响应于扫描时钟信号而进行编程所述存储单元。
16.按照权利要求13的方法,包括:同时执行编程数据的正向扫描和反向扫描。
17.按照权利要求13的方法,包括:响应于所述编程而停止产生扫描时钟信号。
18.按照权利要求13的方法,包括:
响应于每次检测而产生位线激活信号;并且
响应于预定数量的检测而编程对应于位线激活信号的存储单元。
19.按照权利要求13的方法,包括:
响应于所述检测而产生同步信号;
响应于每个同步信号而递增计数器值;并且
响应于所述计数器值而编程对应于所述编程数据的存储单元。
20.按照权利要求19的方法,包括:响应于所述计数器值而停止扫描。
21.按照权利要求19的方法,包括:响应于所述编程而复位计数器值。
22.按照权利要求14的方法,包括:验证所述编程。
23.按照权利要求22的方法,其中,验证所述编程包括:
读取对应于所述编程数据的存储单元中存储的数据;并且
将所读取的数据与所述编程数据相比较。
CNB2005100980195A 2004-09-15 2005-09-01 具有扫描电路和方法的非易失性存储器 Expired - Fee Related CN100555454C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR73883/04 2004-09-15
KR1020040073883A KR100568117B1 (ko) 2004-09-15 2004-09-15 가속화된 비트 스캐닝 프로그램을 수행하는 불휘발성메모리 장치

Publications (2)

Publication Number Publication Date
CN1758378A CN1758378A (zh) 2006-04-12
CN100555454C true CN100555454C (zh) 2009-10-28

Family

ID=36164224

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100980195A Expired - Fee Related CN100555454C (zh) 2004-09-15 2005-09-01 具有扫描电路和方法的非易失性存储器

Country Status (3)

Country Link
JP (1) JP2006085896A (zh)
KR (1) KR100568117B1 (zh)
CN (1) CN100555454C (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100764052B1 (ko) 2006-08-03 2007-10-08 삼성전자주식회사 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법
KR100874914B1 (ko) 2006-12-22 2008-12-19 삼성전자주식회사 데이터 프로그램 및 검증 시간을 단축시킨 불휘발성메모리 장치 및 그 구동방법
JP5702573B2 (ja) 2010-10-20 2015-04-15 スパンション エルエルシー 不揮発性半導体記憶装置およびそのデータ書き込み方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3324666B2 (ja) * 1993-10-25 2002-09-17 シャープ株式会社 不揮発性半導体記憶装置
JPH08321193A (ja) * 1995-05-23 1996-12-03 Sony Corp 半導体不揮発性記憶装置
JP4055103B2 (ja) * 2000-10-02 2008-03-05 株式会社ルネサステクノロジ 不揮発性メモリおよびそれを内蔵した半導体集積回路並びに不揮発性メモリの書込み方法

Also Published As

Publication number Publication date
KR20060024995A (ko) 2006-03-20
CN1758378A (zh) 2006-04-12
JP2006085896A (ja) 2006-03-30
KR100568117B1 (ko) 2006-04-05

Similar Documents

Publication Publication Date Title
US7580322B2 (en) High speed programming for nonvolatile memory
CN1095171C (zh) 非易失性半导体存储器件中的自动编程电路
US6850434B2 (en) Clock synchronized nonvolatile memory device
US8427884B2 (en) Bit scan circuits and method in non-volatile memory
JP2002117699A (ja) 半導体装置及びそのテスト方法
US20040240254A1 (en) Non-volatile semiconductor memory device
CN101261879A (zh) 用于减少编程错误的多位闪存设备的编程方法
US7609548B2 (en) Method of programming a multi level cell
US9767914B1 (en) Durable maintenance of memory cell electric current sense window following program-erase operations to a non-volatile memory
US7102927B2 (en) Memory devices and programming methods that simultaneously store erase status indications for memory blocks
CN100555454C (zh) 具有扫描电路和方法的非易失性存储器
US20120250431A1 (en) Semiconductor memory apparatus and method for driving the same
US8180976B2 (en) Programming non-volatile memory devices based on data logic values
US11119692B2 (en) Storage device having wide input/output and method of operating the same
US7379372B2 (en) Non-volatile memory device with scanning circuit and method
EP1729305A1 (en) Semiconductor device and method for writing data in semiconductor device
JP3544935B2 (ja) 不揮発性半導体記憶装置及びそのオートプログラムの実行方法
JP3540220B2 (ja) フラッシュeepromおよびその記憶データ消去方法
WO2002015193A2 (en) Burst read word line boosting
JPH10320986A (ja) Eeprom装置

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091028

Termination date: 20120901