半导体存储装置、其擦除方法及编程方法与流程

文档序号:11546357阅读:324来源:国知局
半导体存储装置、其擦除方法及编程方法与流程

本发明涉及一种半导体存储装置、其擦除方法及编程方法,尤其涉及一种与非(nand)型快闪存储器的编程及擦除。



背景技术:

在快闪存储器的编程中,电子蓄积于浮动栅极,使存储胞元的阈电压向正方向转变(shift),在擦除中,自浮动栅极释放电子,使存储胞元的阈电压向负方向转变。这种编程及擦除必须以存储胞元的阈值进入“0”、“1”的分布范围内的方式进行控制,通过编程校验及擦除校验进行编程及擦除的合格与否判定(专利文献1)。

[现有技术文献]

[专利文献]

[专利文献1]日本专利特开2014-78308号公报

[发明所要解决的问题]

图1为现有的快闪存储器的擦除动作的流程。对选择块施加擦除脉冲(步骤s10),其次,进行选择块的擦除校验(verify)(步骤s20)。在擦除校验中,对选择块的所有字线施加校验电压,判定所有位线的合格与否。通常,为了减少消耗电力,擦除校验为自共用源极线对选择块的各nand串供给vcc电压而进行读出的反向读出。若nand串中的所有存储胞元的阈值处于“1”的分布内,则nand串导通,位线为高电平(h电平),若即便有一个存储胞元的阈值不处于“1”的分布内,则nand串不导通,位线为低电平(l电平)。如此,若选择块的所有位线为h电平,则判定为合格(步骤s30),擦除结束。若任一位线为l电平,则判定为不合格,然后判定擦除脉冲的施加次数是否达到nmax(步骤s40)。所谓nmax,是指擦除所容许的最大擦除脉冲的施加次数。在达到nmax的情况下,将擦除失败的状态告知于外部的控制器,且将所述块作为坏块(badblock)而进行管理。若未达到nmax,则依据增量步进擦除脉冲(incrementalsteperasepulse,ispe),生成比上一次的擦除脉冲大δv的具有步进电压(stepvoltage)的擦除脉冲(步骤s50),从而将该擦除脉冲施加至选择块。

图2为现有的擦除校验的判定电路。例如,当页面缓冲器/读出电路的尺寸为2kb时,在校验判定线vl与节点(node)n之间并联连接分别连接于锁存(latch)电路的节点sls_0、sls_1、sls_2、…sls_2048×8的校验用晶体管,进而在节点n与gnd之间连接用以使校验能够进行(judgeon为h电平)的晶体管。在擦除校验时,对校验判定线vl供给h电平的电压,若擦除校验为合格,则所有位为h电平,所有的锁存电路的节点sls_0、节点sls_1、节点sls_2、…节点sls_2048×8成为l电平,校验判定线vl维持h电平。另一方面,若擦除校验为不合格,则节点sls_0、节点sls_1、节点sls_2、…节点sls_2048×8中的任意一个成为h电平,相对应的校验用晶体管导通,校验判定线vl成为l电平。

如上所述,现有的擦除校验是对所有的nand串是否导通进行检测,若存在即便一个不导通的nand串,则将所述块作为坏块而进行管理。在擦除校验中,nand串可能变成不良的原因在于存储胞元的制造缺陷、随着反复进行编程/擦除而出现的存储胞元的劣化等,但坏块的增加会使快闪存储器的良率降低,或者使存储器阵列的利用效率降低。



技术实现要素:

本发明的目的在于解决所述现有的问题,并提供一种可使良率提高、从而可使存储器阵列的利用效率提高的半导体存储装置。

[解决问题的技术手段]

本发明的半导体存储装置的擦除方法包括以下步骤:对选择块施加擦除脉冲;在选择块的擦除校验为不合格、且擦除脉冲的施加次数达到预先决定的次数的情况下,检测选择块的nand串的不良数;以及当所检测出的nand串的不良数为固定数以下时,以能够使用所述选择块的状态结束擦除,当不良数超过固定数时,将所述选择块作为不能够使用的坏块而进行管理。

优选的是,所述固定数为能够通过差错检测·校正来修复的位数以下。

本发明的半导体存储装置的编程方法包括以下步骤:检测选择块的nand串的不良数;基于所检测出的nand串的不良数,来决定编程校验中能够容许的不合格位数;对选择块的选择页面施加编程脉冲;以及基于所述能够容许的不合格位数来进行选择页面的编程校验。

优选的是,所述能够容许的不合格位数为能够通过差错检测·校正来修复的位数以下。优选的是,所述能够容许的不合格位数与nand串的不良数的增加相应地而减少。优选的是,所述编程校验在选择页面的编程不良位数为所述能够容许的不合格位数以下时判定为疑似合格。优选的是,检测nand串的不良数的步骤包括进行反向读出的步骤,所述反向读出的步骤自选择块的共用源极线对nand串施加电压而进行读出。优选的是,编程方法还包括进行应编程的数据的差错检测·校正处理的步骤,且由nand串的不良导致的差错在数据的读出时通过所述差错检测·校正处理而校正。

本发明的半导体存储装置包含:存储器阵列,包含多个nand串;输出电路,经由位线而连接于所述存储器阵列的nand串,并输出nand串的不良的有无;以及检测电路,连接于多个所述输出电路,并检测选择块的nand串的不良数。

优选的是,所述检测电路包含:第1电路,生成与多个所述输出电路的nand串的不良的有无相应的检测电压;第2电路,生成基准电压;及比较电路,比较所述检测电压与所述基准电压,且所述比较电路检测连接于多个所述输出电路的nand串的不良数。优选的是,半导体存储装置还包含通过自选择块的共用源极线对nand串施加电压,并对选择块的所有页面施加校验电压而进行选择块的多个nand串的反向读出的部件,所述输出电路基于所述反向读出部件的读出结果来输出nand串的不良的有无。优选的是,半导体存储装置还包含擦除选择块的擦除部件,且在选择块的擦除校验为不合格、且擦除脉冲的施加次数达到预先决定的次数的情况下,当由所述检测电路所检测出的nand串的不良数为固定数以下时,所述擦除部件以能够使用所述选择块的状态结束擦除,当不良数超过固定数时,所述擦除部件将所述选择块作为不能够使用的坏块而进行管理。优选的是,半导体存储装置还包含对选择块的选择页面进行编程的编程部件,且所述编程部件基于能够容许的不合格位数来进行选择页面的编程校验,所述能够容许的不合格位数是基于由所述检测电路所检测出的nand串的不良数而设定。优选的是,半导体存储装置还包含进行应编程的数据及所述存储器阵列读出的数据的差错检测·校正的电路,且所述不合格位数为能够通过所述进行差错检测·校正的电路来修复的位数以下。优选的是,所述输出电路包含页面缓冲器/读出电路。

[发明的效果]

根据本发明,通过检测选择块的nand串的不良数,可实现能够使用包含固定数以下的nand串的不良的块。进而根据本发明,通过与所检测出的nand串的不良数相应地来决定编程校验时判定为疑似合格的不合格位数,将随着nand串的擦除不良而出现的的数据的差错自编程时的编程不良中除外,能够维持疑似合格的判定精度,且能够对包含一部分nand串的不良的块进行编程。

附图说明

图1为对现有的快闪存储器的擦除动作进行说明的流程图;

图2为表示现有的擦除校验的判定电路的图;

图3为表示本发明的实施例中的nand型快闪存储器的整体的概略构成的图;

图4为表示本发明的实施例中的存储胞元阵列的nand串的构成的电路图;

图5为对本发明的实施例的编程动作时的普通区域的ecc处理进行说明的图;

图6为对本发明的实施例的编程动作时的备用区域的ecc处理进行说明的图;

图7为表示本发明的实施例中的判定疑似合格的判定电路与页面缓冲器/读出电路的连接关系的图;

图8为表示本发明的实施例中的判定电路与页面缓冲器/读出电路的构成的图;

图9表示本发明的实施例中的自所连接的晶体管中选择进行动作的晶体管的数量的方法的图;

图10为对本发明的实施例中的擦除动作进行说明的流程图;

图11为对本发明的实施例中的编程动作进行说明的流程图;

图12为对本发明的实施例中的编程动作进行说明的流程图。

图13为表示分别在nand串存在不良的情况、无不良的情况下输入数据时的各节点的逻辑值的图。

图14为表示分别在nand串存在不良的情况、无不良的情况下输入数据时的各节点的逻辑值的图。

附图标记:

100:快闪存储器

110:存储器阵列

120、120-0、120-1、120-7:输入/输出缓冲器

130:ecc电路

140:地址寄存器

150:控制部

160:字线选择电路

170、170_1、170_2、170_3、170_256×8:页面缓冲器/读出电路

180:列选择电路

190:内部电压产生电路

200:判定电路

300:普通区域

310:备用区域

311、312、313、314、315:区域

ax:行地址信息

ay:列地址信息

blcd、blclamp、blpre、csl、dtg、eq_en、q1、q2、q3、q4、q5、q6、q7、q8、q8_1、q8_2、q10、q11、reg:晶体管

blk(0)、blk(1)、blk(m-1):存储块

cmp:比较器

en_1、en_2:使能信号

gbl0、gbl1、gbln-1、gbln:位线

iref:基准电流

judgeon:信号

mc0、mc1、mc2、mc31:存储胞元

n、n1、n2、n3、sls_0、sls_1、sls_2、sls_2048×8、vg:节点

nu:串单元

p-0、p-1、p-7:外部输入/输出端子

pb_dis、pb_mg、pb_up:配线

r1、r2:可变电阻

s10、s20、s30、s40、s50、s60、s70、s100、s110、s112、s114、s120、s122、s130、s132、s134、s140、s142、s144、s146、s150、s152、s154、s200、s210、s220、s230、s240、s250、s260:步骤

sgd、sgs:选择栅极线

sl:源极线

slr、sls:锁存节点

sns:读出节点

td:位线侧选择晶体管

ts:源极线侧选择晶体管

v1、v2:电压供给部

vers:擦除电压

vl:校验判定线

vpass:通过电压

vpgm:写入电压(编程电压)

vread:读出通过电压

vref:基准电压

w:尺寸

wl0、wl1、wl2、wl31:字线

具体实施方式

其次,参照附图来详细说明本发明的实施形态。此处,例示nand型的快闪存储器作为优选形态。再者,应留意的是,附图中,为了便于理解而强调表示了各部分,与实际元件的比例(scale)并不相同。

[实施例]

将本发明的实施例中的快闪存储器的典型构成示于图3。但是,此处所示的快闪存储器的构成为例示,本发明未必限定于此种构成。本实施例的快闪存储器100包含以下而构成:存储器阵列110,其中多个存储胞元排列成矩阵状;输入/输出缓冲器120,连接于外部输入/输出端子i/o,保持输入/输出数据;ecc电路130,进行在存储器阵列110中进行编程的数据或自存储器阵列110读出的数据的差错检测·校正;地址寄存器(addressregister)140,接收来自输入/输出缓冲器120的地址数据;控制部150,接收来自输入/输出缓冲器120的命令数据或来自外部的控制信号来控制各部;字线选择电路160,自地址寄存器140接收行地址信息ax,对行地址信息ax进行解码(decode),并基于解码结果来进行块的选择及字线的选择等;页面缓冲器/读出电路170,保持自由字线选择电路160所选择的页面读出的数据,或保持针对所选择的页面的写入数据;列选择电路180,自地址寄存器140接收列地址信息ay,对列地址信息ay进行解码,并基于该解码结果来进行页面缓冲器/读出电路170内的数据的选择等;以及内部电压产生电路190,生成数据的读出、编程及擦除等所需的各种电压(写入电压vpgm、通过电压vpass、读出通过电压vread、擦除电压vers等)。

存储器阵列110具有沿列方向配置的m个存储块blk(0)、存储块blk(1)、…、存储块blk(m-1)。接近存储块blk(0)而配置有页面缓冲器/读出电路170。在一个存储块中,例如如图4所示,形成多个将多个存储胞元串联连接而成的nand串单元nu,在一个存储块内沿行方向排列有n+1个串单元nu。串单元nu包含:串联连接的多个存储胞元mci(i=0、1、…、31);连接于作为其中一个端部的存储胞元mc31的漏极侧的选择晶体管td;以及连接于作为其中另一个端部的存储胞元mc0的源极侧的选择晶体管ts,选择晶体管td的漏极连接于位线gbl0~gbln中相对应的一条位线,选择晶体管ts的源极连接于共用的源极线sl。

存储胞元mci的控制栅极连接于字线wli,选择晶体管td、选择晶体管ts的栅极连接于与字线wli并排的选择栅极线sgd、选择栅极线sgs。当字线选择电路160基于行地址信息ax或经转换的地址信息来选择块时,经由块的选择栅极线sgs、选择栅极线sgd而选择性地对选择晶体管td、选择晶体管ts进行驱动。图4表示典型的串单元的构成,但串单元也可在nand串内包含一个或多个虚设胞元。

典型的是,存储胞元具有金属氧化物半导体(metaloxidesemiconductor,mos)结构,该mos结构包括:作为n型扩散区域的源极/漏极,形成在p阱内;穿隧氧化膜,形成在源极/漏极间的沟道上;浮动栅极(floatinggate)(电荷蓄积层),形成在穿隧氧化膜上;以及控制栅极,经由电介质膜而形成在浮动栅极上。当在浮动栅极中未蓄积电荷时,即写入有数据“1”时,阈值处于负状态,存储胞元为常通(normallyon)。当浮动栅极中蓄积有电荷时,即写入有数据“0”时,阈值转变为正,存储胞元为常关(normallyoff)。但是,存储胞元可为存储1位(二进制数据)的单层胞元(singlelevelcell,slc)型,也可为存储多位的多层胞元(multi-levelcell,mlc)型。

表1为表示在快闪存储器进行各动作时施加的偏电压的一例的表。在读出动作时,对位线施加某正电压,对所选择的字线施加某电压(例如0v),对非选择字线施加通过电压vpass(例如4.5v),对选择栅极线sgd、选择栅极线sgs施加正电压(例如4.5v),使位线侧选择晶体管td、源极线侧选择晶体管ts导通,对共用源极线施加0v。在编程(写入)动作时,对所选择的字线施加高电压的编程电压vpgm(15v~20v),对非选择的字线施加中间电位(例如10v),使位线侧选择晶体管td导通,使源极线侧选择晶体管ts断开,将与数据“0”或“1”相应的电位供给至位线gbl。在擦除动作时,对块内的所选择的字线施加0v,对p阱施加高电压(例如21v),将浮动栅极的电子抽出至基板,由此以块为单位来擦除数据。

表1

当在编程动作时经由输入/输出缓冲器120而输入数据(应编程的数据)di被加载至页面缓冲器/读出电路170时,ecc电路130对自页面缓冲器/读出电路170转送的输入数据di进行运算,来生成编程数据的差错检测校正所需的差错校正符号或奇偶检验位(paritybit)。ecc的运算例如利用汉明码(hammingcode)或里德·索罗门(reed-solomon)等公知的方法来进行,将所输入的k位或k字节的输入数据di转换为p=k+q。“q”为输入数据di的差错检测校正所需的差错校正符号或奇偶检验位。在一优选例中,ecc电路130将差错校正符号设置于页面缓冲器/读出电路170的备用区域。如此,在存储器阵列110的选择页面对页面缓冲器/读出电路170中所设置的输入数据di与差错校正符号进行编程。

当在读出动作时自存储器阵列110的选择页面读出的数据由页面缓冲器/读出电路170保持时,ecc电路130基于自页面缓冲器/读出电路170转送的差错校正符号来进行读出数据的差错的检测,在检测出差错的情况下,将校正的数据设置于页面缓冲器/读出电路170。而且,由页面缓冲器/读出电路170所保持的数据经由输入/输出缓冲器120而输出。

在图5中表示ecc处理的一例。当控制部150经由输入/输出缓冲器120而接收编程命令时,开始用以编程的序列。当快闪存储器100具有×8的外部输入/输出端子时,输入数据di自外部输入/输出端子p-0~外部输入/输出端子p-7经由各输入/输出缓冲器120-1~输入/输出缓冲器120-7而被加载至页面缓冲器/读出电路170。页面缓冲器/读出电路170例如具有被分割为扇区0~扇区7这八个扇区的普通区域300,以及被分割为备用0、备用1、备用2、备用3这四个扇区的备用区域310。

普通区域300的一个扇区例如由256字节构成,在该情况下,普通区域300的八个扇区整体可保持约2k字节的编程数据。备用区域310的一个扇区例如由16字节构成,在该情况下,四个扇区(备用0~备用3)整体可保持64字节的数据。备用区域310的一个扇区例如具有:区域311,存储对包含不良存储胞元的坏块进行辨别的信息;区域312,存储与用户数据有关的信息;区域313、区域314,存储关于普通区域300的两个扇区的差错校正符号(奇偶检验位);以及区域315,存储对备用区域310进行ecc运算时的差错校正符号(奇偶检验位)。备用区域310的备用0的区域313、区域314分别存储普通区域300的扇区0、扇区1的差错校正符号(奇偶检验位),备用区域310的备用1的区域313、区域314存储普通区域300的扇区2、扇区3的差错校正符号(奇偶检验位)。同样地,备用区域310的备用2存储普通区域300的扇区4、扇区5的奇偶检验位,备用区域310的备用3存储普通区域300的扇区6、扇区7的奇偶检验位。

在普通区域300的一个扇区中分配有输入/输出缓冲器120-0~输入/输出缓冲器120-7,即,在一个外部输入/输出端子中分配有256位(256bit×8=1扇区)。列选择电路180对编程动作时所接收的列地址信息ay进行解码,并基于该解码结果来选择加载有外部输入/输出端子p-0~外部输入/输出端子p-7中所输入的数据的扇区。图5表示外部输入/输出端子p-0~外部输入/输出端子p-7所接收的数据依据列地址信息ay而加载至扇区0的例子。

在此处所示的例子中,ecc电路130包含用以写入差错校正符号的写入电路。优选的是,ecc电路130可对与普通区域300的一个扇区相等的字节数的数据进行ecc运算。若普通区域300的一个扇区为256字节,则ecc电路对256字节的数据进行ecc运算,例如生成对1位的差错进行校正的差错校正符号。在该情况下,整体的八个扇区可最大校正8位的差错。

ecc电路130将所生成的差错校正符号写入至备用区域310的相对应的扇区的区域313或区域314。在图5所示的例子中,编程数据被加载至普通区域300的扇区0,故将差错校正符号写入至存储备用0的奇偶的区域313。

图6中例示备用区域310的数据的ecc处理。当对普通区域300的各扇区而结束ecc处理时,继而,对备用区域310的各扇区进行ecc处理。进行备用区域310的一个扇区内所包含的哪个数据的ecc处理是任意的,但在本例中,设为对区域312至区域314的数据进行ecc处理。因此,备用0的区域312至区域314的数据被转送至ecc电路130,通过ecc处理而生成的差错校正符号利用ecc电路130而被写入至备用0的区域315。对其他的备用1至备用3也进行同样的处理。当ecc处理结束时,开始针对存储器阵列110的选择页面的编程。

在如本实施例般以芯片搭载ecc电路的快闪存储器、或者利用搭载于外部的控制器等的ecc功能的快闪存储器中,即便在编程校验中存在一部分的不合格位(“0”编程不合格的存储胞元),也能够通过ecc来修复所述情况。例如,若能够通过ecc来进行ncc位的差错检测·校正,则理论上可最大修复ncc位的不合格位。在利用这种将不合格位判定为合格的疑似合格的判定方案的情况下,在编程校验中判定不合格位数n是否实现疑似合格。当将疑似合格的判定中能够容许的位数设为np时,若n≤np,则判定为疑似合格(再者,处于np≤ncc的关系)。当完成疑似合格的判定时,结束编程动作,“0”不良的不合格位直接被存储于选择页面。在进行选择页面的读出的情况下,选择页面中所包含的不合格位作为差错而被检测出,对该数据进行校正。通过利用疑似合格的判定方案,减少编程失败或坏块,使良率提高,进而通过抑制编程脉冲的施加次数,可减少编程干扰。

其次,对本实施例的判定疑似合格的判定电路进行说明。图7为表示判定疑似合格的判定电路与页面缓冲器/读出电路的连接关系的图。在一个优选的实施方式中,当以扇区为单位来进行ecc处理时,在一个扇区中准备一个判定电路200。例如,当如图5所示,一个页面被分割为八个扇区,一个扇区由256字节构成时,一个判定电路连接于一个扇区、即256×8个页面缓冲器/读出电路170_1、页面缓冲器/读出电路170_2、页面缓冲器/读出电路170_3~170_256×8。因此,在一个页面中准备八个判定电路。

如图7所示,判定电路200经由节点n1、节点n2、节点n3连接于配线pb_up、配线pb_mg、配线pb_dis,这些配线pb_up、配线pb_mg、配线pb_dis以256×8个页面缓冲器/读出电路170_1~170_256×8成为并联的方式共用地连接。当ecc电路130对256字节的数据进行ecc运算时,若例如能够最大修复4位的差错,则判定电路200容许将最大4位的不合格位(数据“0”的编程不良)判定为疑似合格。

在其他优选的实施方式中,当ecc处理并非以扇区为单位,而是以页面为单位来进行时,也可在一个页面中准备一个判定电路。在该情况下,一个判定电路可将能够由ecc电路修复的差错位的最大值作为能够容许的不合格位来判定是否实现疑似合格。

其次,对判定电路的详细情况进行说明。图8表示一个判定电路及与其连接的一个页面缓冲器/读出电路170的构成。典型的是,页面缓冲器/读出电路170包含:用以将来自电压供给部v1的电压预充电(precharge)至位线的晶体管blpre、用以夹住(clamp)位线的晶体管blclamp、用以使读出节点sns与锁存节点slr间的电荷转送成为可能的晶体管blcd、用以将锁存节点slr的电位转送至连接于电压供给部v2的节点vg的晶体管dtg、以及用以将电压供给部v2结合于读出节点sns的晶体管reg。例如,当在编程校验等中需要将读出节点sns自l电平反转为h电平时,晶体管dtg进行动作,或者除此以外,在将读出节点sns自h电平反转为l电平的情况下,晶体管dtg也进行动作。页面缓冲器/读出电路170进而包含将一对反相器交叉耦合所得的锁存电路,锁存电路包含:用以使节点slr/sls等价的晶体管eq_en、用以将节点slr/sls结合至数据线的晶体管csl、结合于节点sls的晶体管q1、以及串联连接于晶体管q1的晶体管q2。

页面缓冲器/读出电路170进而包含用以将编程校验的合格与否的结果输出的电路。该电路包含串联连接于配线pb_up与配线pb_dis之间的两个nmos晶体管q1、nmos晶体管q2。对晶体管q1的栅极供给锁存节点sls,将配线pb_mg连接于晶体管q2的栅极。配线pb_up连接于判定电路200的节点n1,配线pb_mg连接于节点n2,配线pb_dis连接于节点n3。如下文所述,晶体管q2由与晶体管q5、晶体管q8相同的尺寸w的晶体管构成,当晶体管q1导通时,晶体管q2中流动基准电流iref。当编程校验为合格时,锁存节点sls成为l电平,晶体管q1断开,自配线pb_up至配线pb_dis中未流动电流,因此配线pb_up的电压不发生变动。当编程校验为不合格时,锁存节点sls成为h电平,晶体管q1导通,此时晶体管q2中流动基准电流iref,因此配线pb_up的电压由于基准电流iref而下降。

判定电路200包含:连接于电压供给源的pmos晶体管q3、pmos晶体管q4、可变电阻r1、可变电阻r2、比较器cmp、nmos晶体管q5、nmos晶体管q6、nmos晶体管q7、nmos晶体管q8。pmos晶体管q3、pmos晶体管q4作为电流源发挥功能,对可变电阻r1、可变电阻r2分别以自可变电阻r1、可变电阻r2输出的电压变得相等的方式进行调整。即,作为初期设定,以配线pb_up的电压与基准电压vref变得相等的方式来调整电阻r1、电阻r2。可变电阻r1的输出、即配线pb_up的电压连接于比较器cmp的其中一个输入端子(+),可变电阻r2的输出、即基准电压vref连接于比较器cmp的另一个输入端子(-)。比较器cmp比较两个输入电压,输出h电平或l电平的电压。h电平表示疑似合格,l电平表示不合格。

晶体管q5连接于定电流源,流动基准电流iref。晶体管q5的栅极连接于节点n2、即配线pb_mg。晶体管q6串联连接于可变电阻r2,其栅极连接于节点n2。在晶体管q6与gnd之间串联连接晶体管q7,对晶体管q7的栅极供给judgeon信号。当进行编程校验时,judgeon信号被驱动为h电平,晶体管q7成为导通状态。晶体管q6与晶体管q7的连接节点连接于节点n3、即配线pb_dis。此处,晶体管q6的尺寸(w/2)为晶体管q5、晶体管q2的尺寸(w)的一半,因此,当晶体管q7导通时,晶体管q6中流动1/2的iref。

晶体管q8是与通过判定电路200来判定是否为疑似合格的不合格位数n相应地来设置。在通过判定电路200来判定是否实现疑似合格的不合格位数为0位的情况下,晶体管q8事实上并不需要,或者,即便设置有晶体管q8,晶体管q8的动作也禁能(disable)(n=0)。若对1位的不合格位是否实现疑似合格进行判定,则需要一个晶体管q8(n=1),若对2位的不合格位是否实现疑似合格进行判定,则需要两个并联连接的晶体管q8(n=2)。可通过判定电路200来判定是否实现疑似合格的不合格位数的最大值为通过ecc电路130所修复的位数的最大值。

图8中例示一个晶体管q8,如上所述,晶体管q8是与判定是否实现疑似合格的不合格位的数量n相应地来设置。晶体管q8连接于基准电压vref与配线pb_dis之间,其栅极连接于配线pb_mg。晶体管q8的尺寸(w)与晶体管q5、晶体管q2为相同尺寸(w),当晶体管q7导通时,晶体管q8中流动基准电流iref。

晶体管q8是与判定是否实现疑似合格的不合格位的数量(n)相应地来准备,也可与n的数量相应地来连接晶体管q8,使这些晶体管q8均进行动作,或者,也可自所连接的多个晶体管q8中任意地选择进行动作的晶体管q8的数量。图9表示自所连接的晶体管q8中选择进行动作的晶体管q8的数量的方法的一例。在基准电压vref与配线pb_dis之间串联连接晶体管q8_1与晶体管q10,进而与这些晶体管并联地串联连接晶体管q8_2与晶体管q11。对晶体管q10、晶体管q11的栅极供给使能(enable)信号en_1、使能信号en_2,当将使能信号en_1、使能信号en_2驱动为h电平时,晶体管q8_1、晶体管q8_2以流动基准电流iref的方式进行动作。通过使使能信号en_1或使能信号en_2的其中之一为l电平,一个晶体管q8以流动基准电流iref的方式进行动作,通过使使能信号en_1、使能信号en_2两者为l电平,两个晶体管q8_1、晶体管q8_2不进行动作。使能信号en_1、使能信号en_2例如是响应于来自控制部150的控制信号来进行驱动。此处,通过开关晶体管q10、晶体管q11而使得能够实现晶体管q8_1、晶体管q8_2的选择,但也能够较以晶体管q10、晶体管q11替换例如保险丝(fuse)的情况而持久地固定所选择的晶体管q8。

其次,对判定电路200的动作进行说明。表2为表示判定电路判定0位、1位或2位的不合格位的疑似合格时的各部的电流值及电流值的差分的表。

表2

(1)判定0位的不合格位的情况:

首先,对0位的不合格位的判定进行说明。其是对所有位的编程是否成功进行判定,在该情况下,晶体管q8完全不需要,或者,晶体管q8禁能(n=0)。除对选择字线施加校验电压以外,编程校验与通常的读出动作同样,在所有位的编程成功的情况下,选择存储胞元未导通,所有位线的电位不放电而为经预充电的电位。因此,锁存节点sls为l电平,晶体管q1断开,配线pb_up的电压不发生变动。另外,校验时,judgeon信号被驱动为h电平,晶体管q7导通,配线pb_dis成为gnd电平。此时,晶体管q6中流动1/2iref的电流,因此基准电压vref成为与1/2iref的电压下降相应的值。结果,配线pb_up的电压比基准电压vref高1/2iref的量,因此比较器cmp输出h电平的信号、即合格。

另一方面,当存在1位的不合格位时,一个页面缓冲器/读出电路170的锁存节点sls成为h电平,晶体管q1导通,晶体管q2中流动iref的电流。因此,配线pb_up的电压成为下降了iref量的值。结果,配线pb_up的电压比基准电压vref小1/2iref的量,因此比较器cmp输出l电平的信号、即不合格。

(2)判定1位的不合格位的情况:

在判定1位的不合格位的情况(n=1)下,将一个晶体管q8配置为能够进行动作的状态。例如,若为图9,则en_1被驱动为h电平,en_2被驱动为l电平。如上所述,在所有位的编程成功的情况下,晶体管q1断开,配线pb_up的电压不发生变动,在存在1位的不合格位的情况下,一个页面缓冲器/读出电路的晶体管q1导通,配线pb_up的电压下降iref的量。当judgeon信号被驱动为h电平,晶体管q7导通,配线pb_dis成为gnd电平时,晶体管q6中流动1/2iref的电流,进而,晶体管q8中流动iref的电流。因此,基准电压vref成为下降了1/2iref+iref量的值。结果,配线pb_up的电压比基准电压vref高,比较器cmp输出h电平。

另一方面,在存在2位的不合格位的情况下,两个页面缓冲器/读出电路的晶体管q1导通,配线pb_up的电压下降2×iref的量。因此,配线pb_up的电压变得小于基准电压vref,比较器cmp输出l电平。

(3)判定2位的不合格位的情况:

在判定2位的不合格位的情况(n=2)下,将两个晶体管q8配置为能够进行动作的状态。例如,若为图9,则en_1被驱动为h电平,en_2被驱动为h电平。如上所述,在存在2位的不合格位的情况下,两个页面缓冲器/读出电路的晶体管q1导通,配线pb_up的电压下降2×iref的量。当judgeon信号被驱动为h电平,晶体管q7导通,配线pb_dis成为gnd电平时,晶体管q6中流动1/2iref的电流,进而,两个晶体管q8中流动2×iref的电流。因此,基准电压vref成为下降了1/2iref+2×iref量的值。结果,配线pb_up的电压比基准电压vref高,比较器cmp输出h电平。

另一方面,在存在3位的不合格位的情况下,三个页面缓冲器/读出电路的晶体管q1导通,配线pb_up的电压下降3×iref。因此,配线pb_up的电压变得小于基准电压vref,比较器cmp输出l电平。

如上所述,判定电路可通过对由与不合格位数相应的基准电流所生成的电压、及由与不合格位数相应的基准电流+1/2基准电流所生成的基准电压进行比较,而进行不合格位的疑似合格的判定。

用于疑似合格的判定方案的判定电路200也可用作检测选择块的nand串的不良数ns的检测电路。nand串的不良数ns例如在选择块的擦除动作时被检测出,或者在针对选择块的选择页面的编程动作时被检测出。例如,现有的选择块的擦除是以选择块的所有nand串合格为前提。即,通过对选择块内的所有字线施加擦除校验电压,并自共用源极线对nand串供给vcc来进行反向读出,若所有位线的读出节点为vcc或h电平,则擦除校验为合格,若即便有一个位线为0v或l电平,则擦除校验为不合格。

另一方面,在本实施例中,通过判定电路200来检测选择块内的nand串的不良数ns,若不良数ns为固定数以下,则能够将所述块直接用作能够编程的块,而非认为所述块作为坏块而无法使用。

图10表示本实施例的擦除动作的流程。步骤s10至步骤s50的流程与图1所示的流程相同。判定擦除脉冲的施加次数是否达到擦除所允许的最大擦除脉冲施加次数即nmax(s40),在达到的情况下,进而判定nand串的不良数ns是否为固定数以下(s60)。固定数是基于能够通过ecc电路130来修复的位数ncc或可判定为疑似合格的最大位数np来决定,例如为固定数≤np≤ncc的关系。在串的不良数ns为固定数以下的情况下,结束擦除动作,即,该块之后也继续使用。另一方面,在串不良数ns超过固定数的情况下,将擦除失败的状态告知于外部的控制器,且将该块作为无法使用的坏块而进行管理(s70)。

其次,对nand串的不良数ns的检测方法进行说明。nand串的不良数的检测通过图8所示的页面缓冲器/读出电路170及与其连接的判定电路200来进行。在判定电路200中,例如如图9所示连接有两个晶体管q8,且与其串联地连接有选择用的晶体管q10、晶体管q11。

(1)0位的串不良的检测:

通过控制部150而将使能信号en_1、使能信号en_2驱动为l电平,将晶体管q8_1、晶体管q8_2配置为不能进行动作的状态。此处,进行选择块的反向读出。若所有的nand串的擦除成功(所有的存储胞元的阈值分布为“0”),则所有的页面缓冲器/读出电路170的读出节点sns为h电平,晶体管q1断开,比较器cmp输出h电平。该输出表示选择块的擦除中串不良数ns为零。另一方面,若1位的nand串的擦除为不良(存储胞元的阈值分布并非为“1”),则一个页面缓冲器/读出电路170的读出节点sns为l电平,晶体管q1导通,配线pb_up的电压比基准电压vref低1/2iref,比较器cmp输出l电平。该输出表示选择块的擦除中串不良数ns为1位。

(2)1位的串不良的检测:

通过控制部150而将使能信号en_1或使能信号en_2的其中之一驱动为h电平,将晶体管q8_1或晶体管q8_2的其中之一配置为能够进行动作的状态。在反向读出中,当存在1位的nand串的不良时,比较器cmp输出h电平,当存在2位的串不良时,比较器cmp输出l电平。

(3)2位的串不良的检测:

通过控制部150而将使能信号en_1及使能信号en_2两者驱动为h电平,将晶体管q8_1及晶体管q8_2两者配置为能够进行动作的状态。在反向读出中,当存在2位的nand串的不良时,比较器cmp输出h电平,当存在3位的串不良时,比较器cmp输出l电平。

其次,对本实施例的编程动作进行说明。关于本实施例的编程动作,在进行编程之前,检测nand串的不良数ns,并基于所检测出的不良数ns来决定进行疑似合格的判定的不合格位数n。在擦除选择块时,擦除不良的nand串包含数据“0”的存储胞元。在使用这种选择块来进行编程的情况下,不论输入数据di为“0”或“1”,在编程校验中,判定nand串不良的位线为合格,无法保证输入数据di是否正确地进行编程。因此,在包含nand串的不良的情况下,必须与所述不良数ns的数量相应地来减少判定为疑似合格的不合格位数。

图11、图12为对本实施例的编程动作进行说明的流程图。当控制部150经由输入/输出缓冲器120而接收编程命令、地址信息、数据di时,开始用以编程的序列。输入数据di被加载至页面缓冲器/读出电路170,继而,利用ecc电路130来进行输入数据di的ecc处理(s100)。

当ecc处理结束时,在进行编程之前,进行选择块的nand串的不良数ns的检测。首先,通过图8所示的页面缓冲器/读出电路170而以扇区为单位进行反向读出(s110)。图13、图14为表示分别在nand串存在不良的情况、无不良的情况下输入数据“0”、“1”时的各节点的逻辑值的图。

当应编程的数据di被加载至锁存电路时,锁存节点slr为与输入数据相应的逻辑电平。其次,晶体管dtg导通固定期间,锁存节点slr的电荷被转送至节点vg,并由节点vg保持。换句话说,节点vg在反向读出期间暂时地保持应编程的数据。其次,进行反向读出(步骤s110)。反向读出是自连接于选择块的共用源极线对nand串供给例如vcc电压。若在nand串中无不良,则构成nand串的存储胞元的阈值为“1”,nand串导通,读出节点sns成为h电平。另一方面,若在nand串中存在不良,则构成nand串的至少一个存储胞元的阈值并非为“1”,故nand串不导通,读出节点sns成为l电平。其次,晶体管blcd导通固定期间,读出节点sns的电荷被转送至锁存节点slr(步骤s112)。当锁存节点slr为h电平时,锁存节点sls成为l电平,晶体管q1断开,相反地,当锁存节点slr为l电平时,锁存节点sls成为h电平,晶体管q1导通。

此处,当判定电路200判定例如最大2位的不合格位的疑似合格时,如上所述,在判定电路200中,如图9所示连接有两个晶体管q8_1、晶体管q8_2。控制部150通过使能信号en_1、使能信号en_2将两个晶体管q8_1、晶体管q8_2配置成能够进行动作的状态,判定nand串的不良数ns是否为2位(步骤s114)。若比较器cmp的输出为l电平(步骤s120),则串的不良数ns为3位,在该情况下,控制部150将疑似合格的不合格位数设定为0位(n=0)(步骤s122)。即,将使能信号en_1、使能信号en_2两者驱动为l电平,将晶体管q8_1、晶体管q8_2配置成不能进行动作的状态(步骤s122)。从而,在编程校验中,判定选择页面的所有位是否实现合格。

若比较器cmp的输出为h电平,则串的不良数ns为2位以下,在该情况下,其次,判定串的不良数ns是否为1位(步骤s130)。控制部150将晶体管q8_1、晶体管q8_2的任一者配置成能够进行动作的状态,判定是否为1位。若比较器cmp的输出为l电平(步骤s132),则串的不良数ns为2位,在该情况下,控制部150也将疑似合格的不合格位数设定为0位(n=0)(步骤s134)。

若比较器cmp的输出为h电平,则串的不良数ns为1位以下,在该情况下,其次,判定串的不良数ns是否为0位(步骤s140)。控制部150将晶体管q8_1、晶体管q8_2两者配置成不能进行动作的状态,判定是否为0位。若比较器cmp的输出为l电平(步骤s142),则串的不良数ns为1位,在该情况下,控制部150将疑似合格的不合格位数设定为1位(n=1)(步骤s144)。即,以晶体管q8_1、晶体管q8_2的任一者成为能够进行动作的状态的方式将使能信号en_1、使能信号en_2的其中之一设置成h电平。

若比较器cmp的输出为h电平,则串的不良数ns为0位,在该情况下,控制部150将疑似合格的不合格位数设定为2位(n=2)(步骤s146)。即,以晶体管q8_1、晶体管q8_2两者成为能够进行动作的状态的方式将使能信号en_1、使能信号en_2两者设置成h电平。

当与nand串的不良数ns相应的疑似合格的不合格位数n的设置结束时,其次,将由节点vg保持的数据恢复至锁存节点slr。首先,通过将电压供给部v1设为gnd,且将晶体管blpre导通固定期间,而将读出节点sns设为gnd后(步骤s150),将电压供给部v2自0v设为vdd,使晶体管reg导通固定期间。当在节点vg为h电平时,若电压供给部v2转变至vdd,则通过自举升压(bootstrap)而节点vg的电位进一步提升,对应的晶体管被强烈地导通,读出节点sns被充电至h电平(步骤s152)。另一方面,在节点vg为l电平的情况下,由于对应的晶体管未导通,故读出节点sns保持l电平的状态。其次,读出节点sns的电荷被转送至锁存节点slr,输入数据被恢复(步骤s154),然后开始编程动作。

当输入数据的恢复结束时,其次,依据输入数据而开始编程。如图12所示,利用字线选择电路160而选择选择块的字线,读出电路将与输入数据相应的电压施加至位线,并对选择页面施加编程脉冲(步骤s200)。其次,进行编程校验(步骤s210)。校验的结果为,若选择页面的所有位合格,则编程结束(步骤s220)。另一方面,在所有位不合格的情况下,控制部150判定编程脉冲的施加次数是否达到最佳次数nop(步骤s230)。此处,所谓最佳次数nop,为小于编程中所允许的编程脉冲的最大施加次数nmax的值,优选的是,在将存储胞元判定为编程不合格的情况下为应最小限度地施加的编程脉冲的次数。例如,在编程所容许的最大时间为700μs且将施加一次编程脉冲所需的时间设为50μs的情况下,nmax=700μs或nmax=14次。最佳次数nop可基于典型的存储胞元为编程合格时的编程脉冲的施加次数而决定。例如,当利用统计的方法来算出施加至编程合格的存储胞元的编程脉冲的平均次数nav时,最佳次数nop可设定为nop=nav。该最佳次数nop例如能够利用自外部的控制器收到的命令等进行设定,所设定的值由控制部150的寄存器等保持。

控制部150在编程脉冲的施加次数未达到最佳次数nop的情况下(步骤s230),依据增量步进编程脉冲(incrementalstepprogrampulse,ispp),将比上一次大δv的编程脉冲施加至选择页面(步骤s240)。另一方面,在编程脉冲的施加次数达到最佳次数nop的情况下(步骤s230),控制部150进行判定选择页面是否为疑似合格的步骤(步骤s250)。视作疑似合格的不合格位数n如上所述,为可通过ecc而修复的最大位数ncc以下,若校验时的不合格位数、即在选择页面实际产生的不合格位数为疑似合格的不合格位数n以下,则判定为疑似合格(步骤s250)。当判定为疑似合格时,编程动作结束,“0”不良的不合格位直接被存储于选择页面。

另一方面,当判定为未实现疑似合格时(步骤s250),控制部150判定编程脉冲的施加次数是否达到nmax(步骤s260),若未达到,则依据ispp进而将编程脉冲施加至选择页面(步骤s240、步骤s200)。在编程脉冲的施加次数达到nmax的情况下,将编程失败的状态告知于外部的控制器,且将包含该选择页面的块作为坏块而进行管理。在该情况下,将作为坏块的辨别信息存储于备用区域的区域311。

此处,当在选择块中nand串的不良数ns为2位时,如上所述,据疑似合格而判定的不合格位数为0位,故在图12的流程中,事实上未进行疑似合格的判定(步骤s250)。nand串的不良包含阈值并非为“1”的存储胞元,在反向读出中为不合格,但在编程校验中为合格。即,不论应编程的数据如何,不良的nand串的编程校验结果为“0”,该情况合格。因此,当在选择块内包含nand串的不良时,编程校验可能潜在地包含与nand串的不良数ns相应的差错(当针对不良的nand串的应编程的数据为“1”时),有可能在编程数据与自选择页面读出的数据之间产生与串不良数ns相应的不一致(差错)。该差错必须通过ecc电路130来修复,相对应地,判定电路200以疑似合格而判定的不合格位数中的比例减少。

如上所述,根据本实施例,设为对选择块的nand串的不良数进行检测,故若nand串的不良数ns为可通过ecc电路来修复的位数以下,则能够使用从前被记数为坏块的块,可改善存储器阵列的利用效率及制造良率。

对本发明的优选实施形态进行了详述,但本发明并不限定于特定的实施形态,在权利要求书所记载的发明的主旨的范围内,能够进行各种变形、变更。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1