本發(fā)明涉及一種半導(dǎo)體存儲裝置、其擦除方法及編程方法,尤其涉及一種與非(nand)型快閃存儲器的編程及擦除。
背景技術(shù):
在快閃存儲器的編程中,電子蓄積于浮動?xùn)艠O,使存儲胞元的閾電壓向正方向轉(zhuǎn)變(shift),在擦除中,自浮動?xùn)艠O釋放電子,使存儲胞元的閾電壓向負(fù)方向轉(zhuǎn)變。這種編程及擦除必須以存儲胞元的閾值進(jìn)入“0”、“1”的分布范圍內(nèi)的方式進(jìn)行控制,通過編程校驗(yàn)及擦除校驗(yàn)進(jìn)行編程及擦除的合格與否判定(專利文獻(xiàn)1)。
[現(xiàn)有技術(shù)文獻(xiàn)]
[專利文獻(xiàn)]
[專利文獻(xiàn)1]日本專利特開2014-78308號公報
[發(fā)明所要解決的問題]
圖1為現(xiàn)有的快閃存儲器的擦除動作的流程。對選擇塊施加擦除脈沖(步驟s10),其次,進(jìn)行選擇塊的擦除校驗(yàn)(verify)(步驟s20)。在擦除校驗(yàn)中,對選擇塊的所有字線施加校驗(yàn)電壓,判定所有位線的合格與否。通常,為了減少消耗電力,擦除校驗(yàn)為自共用源極線對選擇塊的各nand串供給vcc電壓而進(jìn)行讀出的反向讀出。若nand串中的所有存儲胞元的閾值處于“1”的分布內(nèi),則nand串導(dǎo)通,位線為高電平(h電平),若即便有一個存儲胞元的閾值不處于“1”的分布內(nèi),則nand串不導(dǎo)通,位線為低電平(l電平)。如此,若選擇塊的所有位線為h電平,則判定為合格(步驟s30),擦除結(jié)束。若任一位線為l電平,則判定為不合格,然后判定擦除脈沖的施加次數(shù)是否達(dá)到nmax(步驟s40)。所謂nmax,是指擦除所容許的最大擦除脈沖的施加次數(shù)。在達(dá)到nmax的情況下,將擦除失敗的狀態(tài)告知于外部的控制器,且將所述塊作為壞塊(badblock)而進(jìn)行管理。若未達(dá)到nmax,則依據(jù)增量步進(jìn)擦除脈沖(incrementalsteperasepulse,ispe),生成比上一次的擦除脈沖大δv的具有步進(jìn)電壓(stepvoltage)的擦除脈沖(步驟s50),從而將該擦除脈沖施加至選擇塊。
圖2為現(xiàn)有的擦除校驗(yàn)的判定電路。例如,當(dāng)頁面緩沖器/讀出電路的尺寸為2kb時,在校驗(yàn)判定線vl與節(jié)點(diǎn)(node)n之間并聯(lián)連接分別連接于鎖存(latch)電路的節(jié)點(diǎn)sls_0、sls_1、sls_2、…sls_2048×8的校驗(yàn)用晶體管,進(jìn)而在節(jié)點(diǎn)n與gnd之間連接用以使校驗(yàn)?zāi)軌蜻M(jìn)行(judgeon為h電平)的晶體管。在擦除校驗(yàn)時,對校驗(yàn)判定線vl供給h電平的電壓,若擦除校驗(yàn)為合格,則所有位為h電平,所有的鎖存電路的節(jié)點(diǎn)sls_0、節(jié)點(diǎn)sls_1、節(jié)點(diǎn)sls_2、…節(jié)點(diǎn)sls_2048×8成為l電平,校驗(yàn)判定線vl維持h電平。另一方面,若擦除校驗(yàn)為不合格,則節(jié)點(diǎn)sls_0、節(jié)點(diǎn)sls_1、節(jié)點(diǎn)sls_2、…節(jié)點(diǎn)sls_2048×8中的任意一個成為h電平,相對應(yīng)的校驗(yàn)用晶體管導(dǎo)通,校驗(yàn)判定線vl成為l電平。
如上所述,現(xiàn)有的擦除校驗(yàn)是對所有的nand串是否導(dǎo)通進(jìn)行檢測,若存在即便一個不導(dǎo)通的nand串,則將所述塊作為壞塊而進(jìn)行管理。在擦除校驗(yàn)中,nand串可能變成不良的原因在于存儲胞元的制造缺陷、隨著反復(fù)進(jìn)行編程/擦除而出現(xiàn)的存儲胞元的劣化等,但壞塊的增加會使快閃存儲器的良率降低,或者使存儲器陣列的利用效率降低。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于解決所述現(xiàn)有的問題,并提供一種可使良率提高、從而可使存儲器陣列的利用效率提高的半導(dǎo)體存儲裝置。
[解決問題的技術(shù)手段]
本發(fā)明的半導(dǎo)體存儲裝置的擦除方法包括以下步驟:對選擇塊施加擦除脈沖;在選擇塊的擦除校驗(yàn)為不合格、且擦除脈沖的施加次數(shù)達(dá)到預(yù)先決定的次數(shù)的情況下,檢測選擇塊的nand串的不良數(shù);以及當(dāng)所檢測出的nand串的不良數(shù)為固定數(shù)以下時,以能夠使用所述選擇塊的狀態(tài)結(jié)束擦除,當(dāng)不良數(shù)超過固定數(shù)時,將所述選擇塊作為不能夠使用的壞塊而進(jìn)行管理。
優(yōu)選的是,所述固定數(shù)為能夠通過差錯檢測·校正來修復(fù)的位數(shù)以下。
本發(fā)明的半導(dǎo)體存儲裝置的編程方法包括以下步驟:檢測選擇塊的nand串的不良數(shù);基于所檢測出的nand串的不良數(shù),來決定編程校驗(yàn)中能夠容許的不合格位數(shù);對選擇塊的選擇頁面施加編程脈沖;以及基于所述能夠容許的不合格位數(shù)來進(jìn)行選擇頁面的編程校驗(yàn)。
優(yōu)選的是,所述能夠容許的不合格位數(shù)為能夠通過差錯檢測·校正來修復(fù)的位數(shù)以下。優(yōu)選的是,所述能夠容許的不合格位數(shù)與nand串的不良數(shù)的增加相應(yīng)地而減少。優(yōu)選的是,所述編程校驗(yàn)在選擇頁面的編程不良位數(shù)為所述能夠容許的不合格位數(shù)以下時判定為疑似合格。優(yōu)選的是,檢測nand串的不良數(shù)的步驟包括進(jìn)行反向讀出的步驟,所述反向讀出的步驟自選擇塊的共用源極線對nand串施加電壓而進(jìn)行讀出。優(yōu)選的是,編程方法還包括進(jìn)行應(yīng)編程的數(shù)據(jù)的差錯檢測·校正處理的步驟,且由nand串的不良導(dǎo)致的差錯在數(shù)據(jù)的讀出時通過所述差錯檢測·校正處理而校正。
本發(fā)明的半導(dǎo)體存儲裝置包含:存儲器陣列,包含多個nand串;輸出電路,經(jīng)由位線而連接于所述存儲器陣列的nand串,并輸出nand串的不良的有無;以及檢測電路,連接于多個所述輸出電路,并檢測選擇塊的nand串的不良數(shù)。
優(yōu)選的是,所述檢測電路包含:第1電路,生成與多個所述輸出電路的nand串的不良的有無相應(yīng)的檢測電壓;第2電路,生成基準(zhǔn)電壓;及比較電路,比較所述檢測電壓與所述基準(zhǔn)電壓,且所述比較電路檢測連接于多個所述輸出電路的nand串的不良數(shù)。優(yōu)選的是,半導(dǎo)體存儲裝置還包含通過自選擇塊的共用源極線對nand串施加電壓,并對選擇塊的所有頁面施加校驗(yàn)電壓而進(jìn)行選擇塊的多個nand串的反向讀出的部件,所述輸出電路基于所述反向讀出部件的讀出結(jié)果來輸出nand串的不良的有無。優(yōu)選的是,半導(dǎo)體存儲裝置還包含擦除選擇塊的擦除部件,且在選擇塊的擦除校驗(yàn)為不合格、且擦除脈沖的施加次數(shù)達(dá)到預(yù)先決定的次數(shù)的情況下,當(dāng)由所述檢測電路所檢測出的nand串的不良數(shù)為固定數(shù)以下時,所述擦除部件以能夠使用所述選擇塊的狀態(tài)結(jié)束擦除,當(dāng)不良數(shù)超過固定數(shù)時,所述擦除部件將所述選擇塊作為不能夠使用的壞塊而進(jìn)行管理。優(yōu)選的是,半導(dǎo)體存儲裝置還包含對選擇塊的選擇頁面進(jìn)行編程的編程部件,且所述編程部件基于能夠容許的不合格位數(shù)來進(jìn)行選擇頁面的編程校驗(yàn),所述能夠容許的不合格位數(shù)是基于由所述檢測電路所檢測出的nand串的不良數(shù)而設(shè)定。優(yōu)選的是,半導(dǎo)體存儲裝置還包含進(jìn)行應(yīng)編程的數(shù)據(jù)及所述存儲器陣列讀出的數(shù)據(jù)的差錯檢測·校正的電路,且所述不合格位數(shù)為能夠通過所述進(jìn)行差錯檢測·校正的電路來修復(fù)的位數(shù)以下。優(yōu)選的是,所述輸出電路包含頁面緩沖器/讀出電路。
[發(fā)明的效果]
根據(jù)本發(fā)明,通過檢測選擇塊的nand串的不良數(shù),可實(shí)現(xiàn)能夠使用包含固定數(shù)以下的nand串的不良的塊。進(jìn)而根據(jù)本發(fā)明,通過與所檢測出的nand串的不良數(shù)相應(yīng)地來決定編程校驗(yàn)時判定為疑似合格的不合格位數(shù),將隨著nand串的擦除不良而出現(xiàn)的的數(shù)據(jù)的差錯自編程時的編程不良中除外,能夠維持疑似合格的判定精度,且能夠?qū)Π徊糠謓and串的不良的塊進(jìn)行編程。
附圖說明
圖1為對現(xiàn)有的快閃存儲器的擦除動作進(jìn)行說明的流程圖;
圖2為表示現(xiàn)有的擦除校驗(yàn)的判定電路的圖;
圖3為表示本發(fā)明的實(shí)施例中的nand型快閃存儲器的整體的概略構(gòu)成的圖;
圖4為表示本發(fā)明的實(shí)施例中的存儲胞元陣列的nand串的構(gòu)成的電路圖;
圖5為對本發(fā)明的實(shí)施例的編程動作時的普通區(qū)域的ecc處理進(jìn)行說明的圖;
圖6為對本發(fā)明的實(shí)施例的編程動作時的備用區(qū)域的ecc處理進(jìn)行說明的圖;
圖7為表示本發(fā)明的實(shí)施例中的判定疑似合格的判定電路與頁面緩沖器/讀出電路的連接關(guān)系的圖;
圖8為表示本發(fā)明的實(shí)施例中的判定電路與頁面緩沖器/讀出電路的構(gòu)成的圖;
圖9表示本發(fā)明的實(shí)施例中的自所連接的晶體管中選擇進(jìn)行動作的晶體管的數(shù)量的方法的圖;
圖10為對本發(fā)明的實(shí)施例中的擦除動作進(jìn)行說明的流程圖;
圖11為對本發(fā)明的實(shí)施例中的編程動作進(jìn)行說明的流程圖;
圖12為對本發(fā)明的實(shí)施例中的編程動作進(jìn)行說明的流程圖。
圖13為表示分別在nand串存在不良的情況、無不良的情況下輸入數(shù)據(jù)時的各節(jié)點(diǎn)的邏輯值的圖。
圖14為表示分別在nand串存在不良的情況、無不良的情況下輸入數(shù)據(jù)時的各節(jié)點(diǎn)的邏輯值的圖。
附圖標(biāo)記:
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:內(nèi)部電壓產(chǎn)生電路
200:判定電路
300:普通區(qū)域
310:備用區(qū)域
311、312、313、314、315:區(qū)域
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:基準(zhǔn)電流
judgeon:信號
mc0、mc1、mc2、mc31:存儲胞元
n、n1、n2、n3、sls_0、sls_1、sls_2、sls_2048×8、vg:節(jié)點(diǎn)
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:鎖存節(jié)點(diǎn)
sns:讀出節(jié)點(diǎn)
td:位線側(cè)選擇晶體管
ts:源極線側(cè)選擇晶體管
v1、v2:電壓供給部
vers:擦除電壓
vl:校驗(yàn)判定線
vpass:通過電壓
vpgm:寫入電壓(編程電壓)
vread:讀出通過電壓
vref:基準(zhǔn)電壓
w:尺寸
wl0、wl1、wl2、wl31:字線
具體實(shí)施方式
其次,參照附圖來詳細(xì)說明本發(fā)明的實(shí)施形態(tài)。此處,例示nand型的快閃存儲器作為優(yōu)選形態(tài)。再者,應(yīng)留意的是,附圖中,為了便于理解而強(qiáng)調(diào)表示了各部分,與實(shí)際元件的比例(scale)并不相同。
[實(shí)施例]
將本發(fā)明的實(shí)施例中的快閃存儲器的典型構(gòu)成示于圖3。但是,此處所示的快閃存儲器的構(gòu)成為例示,本發(fā)明未必限定于此種構(gòu)成。本實(shí)施例的快閃存儲器100包含以下而構(gòu)成:存儲器陣列110,其中多個存儲胞元排列成矩陣狀;輸入/輸出緩沖器120,連接于外部輸入/輸出端子i/o,保持輸入/輸出數(shù)據(jù);ecc電路130,進(jìn)行在存儲器陣列110中進(jìn)行編程的數(shù)據(jù)或自存儲器陣列110讀出的數(shù)據(jù)的差錯檢測·校正;地址寄存器(addressregister)140,接收來自輸入/輸出緩沖器120的地址數(shù)據(jù);控制部150,接收來自輸入/輸出緩沖器120的命令數(shù)據(jù)或來自外部的控制信號來控制各部;字線選擇電路160,自地址寄存器140接收行地址信息ax,對行地址信息ax進(jìn)行解碼(decode),并基于解碼結(jié)果來進(jìn)行塊的選擇及字線的選擇等;頁面緩沖器/讀出電路170,保持自由字線選擇電路160所選擇的頁面讀出的數(shù)據(jù),或保持針對所選擇的頁面的寫入數(shù)據(jù);列選擇電路180,自地址寄存器140接收列地址信息ay,對列地址信息ay進(jìn)行解碼,并基于該解碼結(jié)果來進(jìn)行頁面緩沖器/讀出電路170內(nèi)的數(shù)據(jù)的選擇等;以及內(nèi)部電壓產(chǎn)生電路190,生成數(shù)據(jù)的讀出、編程及擦除等所需的各種電壓(寫入電壓vpgm、通過電壓vpass、讀出通過電壓vread、擦除電壓vers等)。
存儲器陣列110具有沿列方向配置的m個存儲塊blk(0)、存儲塊blk(1)、…、存儲塊blk(m-1)。接近存儲塊blk(0)而配置有頁面緩沖器/讀出電路170。在一個存儲塊中,例如如圖4所示,形成多個將多個存儲胞元串聯(lián)連接而成的nand串單元nu,在一個存儲塊內(nèi)沿行方向排列有n+1個串單元nu。串單元nu包含:串聯(lián)連接的多個存儲胞元mci(i=0、1、…、31);連接于作為其中一個端部的存儲胞元mc31的漏極側(cè)的選擇晶體管td;以及連接于作為其中另一個端部的存儲胞元mc0的源極側(cè)的選擇晶體管ts,選擇晶體管td的漏極連接于位線gbl0~gbln中相對應(yīng)的一條位線,選擇晶體管ts的源極連接于共用的源極線sl。
存儲胞元mci的控制柵極連接于字線wli,選擇晶體管td、選擇晶體管ts的柵極連接于與字線wli并排的選擇柵極線sgd、選擇柵極線sgs。當(dāng)字線選擇電路160基于行地址信息ax或經(jīng)轉(zhuǎn)換的地址信息來選擇塊時,經(jīng)由塊的選擇柵極線sgs、選擇柵極線sgd而選擇性地對選擇晶體管td、選擇晶體管ts進(jìn)行驅(qū)動。圖4表示典型的串單元的構(gòu)成,但串單元也可在nand串內(nèi)包含一個或多個虛設(shè)胞元。
典型的是,存儲胞元具有金屬氧化物半導(dǎo)體(metaloxidesemiconductor,mos)結(jié)構(gòu),該mos結(jié)構(gòu)包括:作為n型擴(kuò)散區(qū)域的源極/漏極,形成在p阱內(nèi);穿隧氧化膜,形成在源極/漏極間的溝道上;浮動?xùn)艠O(floatinggate)(電荷蓄積層),形成在穿隧氧化膜上;以及控制柵極,經(jīng)由電介質(zhì)膜而形成在浮動?xùn)艠O上。當(dāng)在浮動?xùn)艠O中未蓄積電荷時,即寫入有數(shù)據(jù)“1”時,閾值處于負(fù)狀態(tài),存儲胞元為常通(normallyon)。當(dāng)浮動?xùn)艠O中蓄積有電荷時,即寫入有數(shù)據(jù)“0”時,閾值轉(zhuǎn)變?yōu)檎?,存儲胞元為常關(guān)(normallyoff)。但是,存儲胞元可為存儲1位(二進(jìn)制數(shù)據(jù))的單層胞元(singlelevelcell,slc)型,也可為存儲多位的多層胞元(multi-levelcell,mlc)型。
表1為表示在快閃存儲器進(jìn)行各動作時施加的偏電壓的一例的表。在讀出動作時,對位線施加某正電壓,對所選擇的字線施加某電壓(例如0v),對非選擇字線施加通過電壓vpass(例如4.5v),對選擇柵極線sgd、選擇柵極線sgs施加正電壓(例如4.5v),使位線側(cè)選擇晶體管td、源極線側(cè)選擇晶體管ts導(dǎo)通,對共用源極線施加0v。在編程(寫入)動作時,對所選擇的字線施加高電壓的編程電壓vpgm(15v~20v),對非選擇的字線施加中間電位(例如10v),使位線側(cè)選擇晶體管td導(dǎo)通,使源極線側(cè)選擇晶體管ts斷開,將與數(shù)據(jù)“0”或“1”相應(yīng)的電位供給至位線gbl。在擦除動作時,對塊內(nèi)的所選擇的字線施加0v,對p阱施加高電壓(例如21v),將浮動?xùn)艠O的電子抽出至基板,由此以塊為單位來擦除數(shù)據(jù)。
表1
當(dāng)在編程動作時經(jīng)由輸入/輸出緩沖器120而輸入數(shù)據(jù)(應(yīng)編程的數(shù)據(jù))di被加載至頁面緩沖器/讀出電路170時,ecc電路130對自頁面緩沖器/讀出電路170轉(zhuǎn)送的輸入數(shù)據(jù)di進(jìn)行運(yùn)算,來生成編程數(shù)據(jù)的差錯檢測校正所需的差錯校正符號或奇偶檢驗(yàn)位(paritybit)。ecc的運(yùn)算例如利用漢明碼(hammingcode)或里德·索羅門(reed-solomon)等公知的方法來進(jìn)行,將所輸入的k位或k字節(jié)的輸入數(shù)據(jù)di轉(zhuǎn)換為p=k+q?!皅”為輸入數(shù)據(jù)di的差錯檢測校正所需的差錯校正符號或奇偶檢驗(yàn)位。在一優(yōu)選例中,ecc電路130將差錯校正符號設(shè)置于頁面緩沖器/讀出電路170的備用區(qū)域。如此,在存儲器陣列110的選擇頁面對頁面緩沖器/讀出電路170中所設(shè)置的輸入數(shù)據(jù)di與差錯校正符號進(jìn)行編程。
當(dāng)在讀出動作時自存儲器陣列110的選擇頁面讀出的數(shù)據(jù)由頁面緩沖器/讀出電路170保持時,ecc電路130基于自頁面緩沖器/讀出電路170轉(zhuǎn)送的差錯校正符號來進(jìn)行讀出數(shù)據(jù)的差錯的檢測,在檢測出差錯的情況下,將校正的數(shù)據(jù)設(shè)置于頁面緩沖器/讀出電路170。而且,由頁面緩沖器/讀出電路170所保持的數(shù)據(jù)經(jīng)由輸入/輸出緩沖器120而輸出。
在圖5中表示ecc處理的一例。當(dāng)控制部150經(jīng)由輸入/輸出緩沖器120而接收編程命令時,開始用以編程的序列。當(dāng)快閃存儲器100具有×8的外部輸入/輸出端子時,輸入數(shù)據(jù)di自外部輸入/輸出端子p-0~外部輸入/輸出端子p-7經(jīng)由各輸入/輸出緩沖器120-1~輸入/輸出緩沖器120-7而被加載至頁面緩沖器/讀出電路170。頁面緩沖器/讀出電路170例如具有被分割為扇區(qū)0~扇區(qū)7這八個扇區(qū)的普通區(qū)域300,以及被分割為備用0、備用1、備用2、備用3這四個扇區(qū)的備用區(qū)域310。
普通區(qū)域300的一個扇區(qū)例如由256字節(jié)構(gòu)成,在該情況下,普通區(qū)域300的八個扇區(qū)整體可保持約2k字節(jié)的編程數(shù)據(jù)。備用區(qū)域310的一個扇區(qū)例如由16字節(jié)構(gòu)成,在該情況下,四個扇區(qū)(備用0~備用3)整體可保持64字節(jié)的數(shù)據(jù)。備用區(qū)域310的一個扇區(qū)例如具有:區(qū)域311,存儲對包含不良存儲胞元的壞塊進(jìn)行辨別的信息;區(qū)域312,存儲與用戶數(shù)據(jù)有關(guān)的信息;區(qū)域313、區(qū)域314,存儲關(guān)于普通區(qū)域300的兩個扇區(qū)的差錯校正符號(奇偶檢驗(yàn)位);以及區(qū)域315,存儲對備用區(qū)域310進(jìn)行ecc運(yùn)算時的差錯校正符號(奇偶檢驗(yàn)位)。備用區(qū)域310的備用0的區(qū)域313、區(qū)域314分別存儲普通區(qū)域300的扇區(qū)0、扇區(qū)1的差錯校正符號(奇偶檢驗(yàn)位),備用區(qū)域310的備用1的區(qū)域313、區(qū)域314存儲普通區(qū)域300的扇區(qū)2、扇區(qū)3的差錯校正符號(奇偶檢驗(yàn)位)。同樣地,備用區(qū)域310的備用2存儲普通區(qū)域300的扇區(qū)4、扇區(qū)5的奇偶檢驗(yàn)位,備用區(qū)域310的備用3存儲普通區(qū)域300的扇區(qū)6、扇區(qū)7的奇偶檢驗(yàn)位。
在普通區(qū)域300的一個扇區(qū)中分配有輸入/輸出緩沖器120-0~輸入/輸出緩沖器120-7,即,在一個外部輸入/輸出端子中分配有256位(256bit×8=1扇區(qū))。列選擇電路180對編程動作時所接收的列地址信息ay進(jìn)行解碼,并基于該解碼結(jié)果來選擇加載有外部輸入/輸出端子p-0~外部輸入/輸出端子p-7中所輸入的數(shù)據(jù)的扇區(qū)。圖5表示外部輸入/輸出端子p-0~外部輸入/輸出端子p-7所接收的數(shù)據(jù)依據(jù)列地址信息ay而加載至扇區(qū)0的例子。
在此處所示的例子中,ecc電路130包含用以寫入差錯校正符號的寫入電路。優(yōu)選的是,ecc電路130可對與普通區(qū)域300的一個扇區(qū)相等的字節(jié)數(shù)的數(shù)據(jù)進(jìn)行ecc運(yùn)算。若普通區(qū)域300的一個扇區(qū)為256字節(jié),則ecc電路對256字節(jié)的數(shù)據(jù)進(jìn)行ecc運(yùn)算,例如生成對1位的差錯進(jìn)行校正的差錯校正符號。在該情況下,整體的八個扇區(qū)可最大校正8位的差錯。
ecc電路130將所生成的差錯校正符號寫入至備用區(qū)域310的相對應(yīng)的扇區(qū)的區(qū)域313或區(qū)域314。在圖5所示的例子中,編程數(shù)據(jù)被加載至普通區(qū)域300的扇區(qū)0,故將差錯校正符號寫入至存儲備用0的奇偶的區(qū)域313。
圖6中例示備用區(qū)域310的數(shù)據(jù)的ecc處理。當(dāng)對普通區(qū)域300的各扇區(qū)而結(jié)束ecc處理時,繼而,對備用區(qū)域310的各扇區(qū)進(jìn)行ecc處理。進(jìn)行備用區(qū)域310的一個扇區(qū)內(nèi)所包含的哪個數(shù)據(jù)的ecc處理是任意的,但在本例中,設(shè)為對區(qū)域312至區(qū)域314的數(shù)據(jù)進(jìn)行ecc處理。因此,備用0的區(qū)域312至區(qū)域314的數(shù)據(jù)被轉(zhuǎn)送至ecc電路130,通過ecc處理而生成的差錯校正符號利用ecc電路130而被寫入至備用0的區(qū)域315。對其他的備用1至備用3也進(jìn)行同樣的處理。當(dāng)ecc處理結(jié)束時,開始針對存儲器陣列110的選擇頁面的編程。
在如本實(shí)施例般以芯片搭載ecc電路的快閃存儲器、或者利用搭載于外部的控制器等的ecc功能的快閃存儲器中,即便在編程校驗(yàn)中存在一部分的不合格位(“0”編程不合格的存儲胞元),也能夠通過ecc來修復(fù)所述情況。例如,若能夠通過ecc來進(jìn)行ncc位的差錯檢測·校正,則理論上可最大修復(fù)ncc位的不合格位。在利用這種將不合格位判定為合格的疑似合格的判定方案的情況下,在編程校驗(yàn)中判定不合格位數(shù)n是否實(shí)現(xiàn)疑似合格。當(dāng)將疑似合格的判定中能夠容許的位數(shù)設(shè)為np時,若n≤np,則判定為疑似合格(再者,處于np≤ncc的關(guān)系)。當(dāng)完成疑似合格的判定時,結(jié)束編程動作,“0”不良的不合格位直接被存儲于選擇頁面。在進(jìn)行選擇頁面的讀出的情況下,選擇頁面中所包含的不合格位作為差錯而被檢測出,對該數(shù)據(jù)進(jìn)行校正。通過利用疑似合格的判定方案,減少編程失敗或壞塊,使良率提高,進(jìn)而通過抑制編程脈沖的施加次數(shù),可減少編程干擾。
其次,對本實(shí)施例的判定疑似合格的判定電路進(jìn)行說明。圖7為表示判定疑似合格的判定電路與頁面緩沖器/讀出電路的連接關(guān)系的圖。在一個優(yōu)選的實(shí)施方式中,當(dāng)以扇區(qū)為單位來進(jìn)行ecc處理時,在一個扇區(qū)中準(zhǔn)備一個判定電路200。例如,當(dāng)如圖5所示,一個頁面被分割為八個扇區(qū),一個扇區(qū)由256字節(jié)構(gòu)成時,一個判定電路連接于一個扇區(qū)、即256×8個頁面緩沖器/讀出電路170_1、頁面緩沖器/讀出電路170_2、頁面緩沖器/讀出電路170_3~170_256×8。因此,在一個頁面中準(zhǔn)備八個判定電路。
如圖7所示,判定電路200經(jīng)由節(jié)點(diǎn)n1、節(jié)點(diǎn)n2、節(jié)點(diǎn)n3連接于配線pb_up、配線pb_mg、配線pb_dis,這些配線pb_up、配線pb_mg、配線pb_dis以256×8個頁面緩沖器/讀出電路170_1~170_256×8成為并聯(lián)的方式共用地連接。當(dāng)ecc電路130對256字節(jié)的數(shù)據(jù)進(jìn)行ecc運(yùn)算時,若例如能夠最大修復(fù)4位的差錯,則判定電路200容許將最大4位的不合格位(數(shù)據(jù)“0”的編程不良)判定為疑似合格。
在其他優(yōu)選的實(shí)施方式中,當(dāng)ecc處理并非以扇區(qū)為單位,而是以頁面為單位來進(jìn)行時,也可在一個頁面中準(zhǔn)備一個判定電路。在該情況下,一個判定電路可將能夠由ecc電路修復(fù)的差錯位的最大值作為能夠容許的不合格位來判定是否實(shí)現(xiàn)疑似合格。
其次,對判定電路的詳細(xì)情況進(jìn)行說明。圖8表示一個判定電路及與其連接的一個頁面緩沖器/讀出電路170的構(gòu)成。典型的是,頁面緩沖器/讀出電路170包含:用以將來自電壓供給部v1的電壓預(yù)充電(precharge)至位線的晶體管blpre、用以夾住(clamp)位線的晶體管blclamp、用以使讀出節(jié)點(diǎn)sns與鎖存節(jié)點(diǎn)slr間的電荷轉(zhuǎn)送成為可能的晶體管blcd、用以將鎖存節(jié)點(diǎn)slr的電位轉(zhuǎn)送至連接于電壓供給部v2的節(jié)點(diǎn)vg的晶體管dtg、以及用以將電壓供給部v2結(jié)合于讀出節(jié)點(diǎn)sns的晶體管reg。例如,當(dāng)在編程校驗(yàn)等中需要將讀出節(jié)點(diǎn)sns自l電平反轉(zhuǎn)為h電平時,晶體管dtg進(jìn)行動作,或者除此以外,在將讀出節(jié)點(diǎn)sns自h電平反轉(zhuǎn)為l電平的情況下,晶體管dtg也進(jìn)行動作。頁面緩沖器/讀出電路170進(jìn)而包含將一對反相器交叉耦合所得的鎖存電路,鎖存電路包含:用以使節(jié)點(diǎn)slr/sls等價的晶體管eq_en、用以將節(jié)點(diǎn)slr/sls結(jié)合至數(shù)據(jù)線的晶體管csl、結(jié)合于節(jié)點(diǎn)sls的晶體管q1、以及串聯(lián)連接于晶體管q1的晶體管q2。
頁面緩沖器/讀出電路170進(jìn)而包含用以將編程校驗(yàn)的合格與否的結(jié)果輸出的電路。該電路包含串聯(lián)連接于配線pb_up與配線pb_dis之間的兩個nmos晶體管q1、nmos晶體管q2。對晶體管q1的柵極供給鎖存節(jié)點(diǎn)sls,將配線pb_mg連接于晶體管q2的柵極。配線pb_up連接于判定電路200的節(jié)點(diǎn)n1,配線pb_mg連接于節(jié)點(diǎn)n2,配線pb_dis連接于節(jié)點(diǎn)n3。如下文所述,晶體管q2由與晶體管q5、晶體管q8相同的尺寸w的晶體管構(gòu)成,當(dāng)晶體管q1導(dǎo)通時,晶體管q2中流動基準(zhǔn)電流iref。當(dāng)編程校驗(yàn)為合格時,鎖存節(jié)點(diǎn)sls成為l電平,晶體管q1斷開,自配線pb_up至配線pb_dis中未流動電流,因此配線pb_up的電壓不發(fā)生變動。當(dāng)編程校驗(yàn)為不合格時,鎖存節(jié)點(diǎn)sls成為h電平,晶體管q1導(dǎo)通,此時晶體管q2中流動基準(zhǔn)電流iref,因此配線pb_up的電壓由于基準(zhǔn)電流iref而下降。
判定電路200包含:連接于電壓供給源的pmos晶體管q3、pmos晶體管q4、可變電阻r1、可變電阻r2、比較器cmp、nmos晶體管q5、nmos晶體管q6、nmos晶體管q7、nmos晶體管q8。pmos晶體管q3、pmos晶體管q4作為電流源發(fā)揮功能,對可變電阻r1、可變電阻r2分別以自可變電阻r1、可變電阻r2輸出的電壓變得相等的方式進(jìn)行調(diào)整。即,作為初期設(shè)定,以配線pb_up的電壓與基準(zhǔn)電壓vref變得相等的方式來調(diào)整電阻r1、電阻r2??勺冸娮鑢1的輸出、即配線pb_up的電壓連接于比較器cmp的其中一個輸入端子(+),可變電阻r2的輸出、即基準(zhǔn)電壓vref連接于比較器cmp的另一個輸入端子(-)。比較器cmp比較兩個輸入電壓,輸出h電平或l電平的電壓。h電平表示疑似合格,l電平表示不合格。
晶體管q5連接于定電流源,流動基準(zhǔn)電流iref。晶體管q5的柵極連接于節(jié)點(diǎn)n2、即配線pb_mg。晶體管q6串聯(lián)連接于可變電阻r2,其柵極連接于節(jié)點(diǎn)n2。在晶體管q6與gnd之間串聯(lián)連接晶體管q7,對晶體管q7的柵極供給judgeon信號。當(dāng)進(jìn)行編程校驗(yàn)時,judgeon信號被驅(qū)動為h電平,晶體管q7成為導(dǎo)通狀態(tài)。晶體管q6與晶體管q7的連接節(jié)點(diǎn)連接于節(jié)點(diǎn)n3、即配線pb_dis。此處,晶體管q6的尺寸(w/2)為晶體管q5、晶體管q2的尺寸(w)的一半,因此,當(dāng)晶體管q7導(dǎo)通時,晶體管q6中流動1/2的iref。
晶體管q8是與通過判定電路200來判定是否為疑似合格的不合格位數(shù)n相應(yīng)地來設(shè)置。在通過判定電路200來判定是否實(shí)現(xiàn)疑似合格的不合格位數(shù)為0位的情況下,晶體管q8事實(shí)上并不需要,或者,即便設(shè)置有晶體管q8,晶體管q8的動作也禁能(disable)(n=0)。若對1位的不合格位是否實(shí)現(xiàn)疑似合格進(jìn)行判定,則需要一個晶體管q8(n=1),若對2位的不合格位是否實(shí)現(xiàn)疑似合格進(jìn)行判定,則需要兩個并聯(lián)連接的晶體管q8(n=2)??赏ㄟ^判定電路200來判定是否實(shí)現(xiàn)疑似合格的不合格位數(shù)的最大值為通過ecc電路130所修復(fù)的位數(shù)的最大值。
圖8中例示一個晶體管q8,如上所述,晶體管q8是與判定是否實(shí)現(xiàn)疑似合格的不合格位的數(shù)量n相應(yīng)地來設(shè)置。晶體管q8連接于基準(zhǔn)電壓vref與配線pb_dis之間,其柵極連接于配線pb_mg。晶體管q8的尺寸(w)與晶體管q5、晶體管q2為相同尺寸(w),當(dāng)晶體管q7導(dǎo)通時,晶體管q8中流動基準(zhǔn)電流iref。
晶體管q8是與判定是否實(shí)現(xiàn)疑似合格的不合格位的數(shù)量(n)相應(yīng)地來準(zhǔn)備,也可與n的數(shù)量相應(yīng)地來連接晶體管q8,使這些晶體管q8均進(jìn)行動作,或者,也可自所連接的多個晶體管q8中任意地選擇進(jìn)行動作的晶體管q8的數(shù)量。圖9表示自所連接的晶體管q8中選擇進(jìn)行動作的晶體管q8的數(shù)量的方法的一例。在基準(zhǔn)電壓vref與配線pb_dis之間串聯(lián)連接晶體管q8_1與晶體管q10,進(jìn)而與這些晶體管并聯(lián)地串聯(lián)連接晶體管q8_2與晶體管q11。對晶體管q10、晶體管q11的柵極供給使能(enable)信號en_1、使能信號en_2,當(dāng)將使能信號en_1、使能信號en_2驅(qū)動為h電平時,晶體管q8_1、晶體管q8_2以流動基準(zhǔn)電流iref的方式進(jìn)行動作。通過使使能信號en_1或使能信號en_2的其中之一為l電平,一個晶體管q8以流動基準(zhǔn)電流iref的方式進(jìn)行動作,通過使使能信號en_1、使能信號en_2兩者為l電平,兩個晶體管q8_1、晶體管q8_2不進(jìn)行動作。使能信號en_1、使能信號en_2例如是響應(yīng)于來自控制部150的控制信號來進(jìn)行驅(qū)動。此處,通過開關(guān)晶體管q10、晶體管q11而使得能夠?qū)崿F(xiàn)晶體管q8_1、晶體管q8_2的選擇,但也能夠較以晶體管q10、晶體管q11替換例如保險絲(fuse)的情況而持久地固定所選擇的晶體管q8。
其次,對判定電路200的動作進(jìn)行說明。表2為表示判定電路判定0位、1位或2位的不合格位的疑似合格時的各部的電流值及電流值的差分的表。
表2
(1)判定0位的不合格位的情況:
首先,對0位的不合格位的判定進(jìn)行說明。其是對所有位的編程是否成功進(jìn)行判定,在該情況下,晶體管q8完全不需要,或者,晶體管q8禁能(n=0)。除對選擇字線施加校驗(yàn)電壓以外,編程校驗(yàn)與通常的讀出動作同樣,在所有位的編程成功的情況下,選擇存儲胞元未導(dǎo)通,所有位線的電位不放電而為經(jīng)預(yù)充電的電位。因此,鎖存節(jié)點(diǎn)sls為l電平,晶體管q1斷開,配線pb_up的電壓不發(fā)生變動。另外,校驗(yàn)時,judgeon信號被驅(qū)動為h電平,晶體管q7導(dǎo)通,配線pb_dis成為gnd電平。此時,晶體管q6中流動1/2iref的電流,因此基準(zhǔn)電壓vref成為與1/2iref的電壓下降相應(yīng)的值。結(jié)果,配線pb_up的電壓比基準(zhǔn)電壓vref高1/2iref的量,因此比較器cmp輸出h電平的信號、即合格。
另一方面,當(dāng)存在1位的不合格位時,一個頁面緩沖器/讀出電路170的鎖存節(jié)點(diǎn)sls成為h電平,晶體管q1導(dǎo)通,晶體管q2中流動iref的電流。因此,配線pb_up的電壓成為下降了iref量的值。結(jié)果,配線pb_up的電壓比基準(zhǔn)電壓vref小1/2iref的量,因此比較器cmp輸出l電平的信號、即不合格。
(2)判定1位的不合格位的情況:
在判定1位的不合格位的情況(n=1)下,將一個晶體管q8配置為能夠進(jìn)行動作的狀態(tài)。例如,若為圖9,則en_1被驅(qū)動為h電平,en_2被驅(qū)動為l電平。如上所述,在所有位的編程成功的情況下,晶體管q1斷開,配線pb_up的電壓不發(fā)生變動,在存在1位的不合格位的情況下,一個頁面緩沖器/讀出電路的晶體管q1導(dǎo)通,配線pb_up的電壓下降iref的量。當(dāng)judgeon信號被驅(qū)動為h電平,晶體管q7導(dǎo)通,配線pb_dis成為gnd電平時,晶體管q6中流動1/2iref的電流,進(jìn)而,晶體管q8中流動iref的電流。因此,基準(zhǔn)電壓vref成為下降了1/2iref+iref量的值。結(jié)果,配線pb_up的電壓比基準(zhǔn)電壓vref高,比較器cmp輸出h電平。
另一方面,在存在2位的不合格位的情況下,兩個頁面緩沖器/讀出電路的晶體管q1導(dǎo)通,配線pb_up的電壓下降2×iref的量。因此,配線pb_up的電壓變得小于基準(zhǔn)電壓vref,比較器cmp輸出l電平。
(3)判定2位的不合格位的情況:
在判定2位的不合格位的情況(n=2)下,將兩個晶體管q8配置為能夠進(jìn)行動作的狀態(tài)。例如,若為圖9,則en_1被驅(qū)動為h電平,en_2被驅(qū)動為h電平。如上所述,在存在2位的不合格位的情況下,兩個頁面緩沖器/讀出電路的晶體管q1導(dǎo)通,配線pb_up的電壓下降2×iref的量。當(dāng)judgeon信號被驅(qū)動為h電平,晶體管q7導(dǎo)通,配線pb_dis成為gnd電平時,晶體管q6中流動1/2iref的電流,進(jìn)而,兩個晶體管q8中流動2×iref的電流。因此,基準(zhǔn)電壓vref成為下降了1/2iref+2×iref量的值。結(jié)果,配線pb_up的電壓比基準(zhǔn)電壓vref高,比較器cmp輸出h電平。
另一方面,在存在3位的不合格位的情況下,三個頁面緩沖器/讀出電路的晶體管q1導(dǎo)通,配線pb_up的電壓下降3×iref。因此,配線pb_up的電壓變得小于基準(zhǔn)電壓vref,比較器cmp輸出l電平。
如上所述,判定電路可通過對由與不合格位數(shù)相應(yīng)的基準(zhǔn)電流所生成的電壓、及由與不合格位數(shù)相應(yīng)的基準(zhǔn)電流+1/2基準(zhǔn)電流所生成的基準(zhǔn)電壓進(jìn)行比較,而進(jìn)行不合格位的疑似合格的判定。
用于疑似合格的判定方案的判定電路200也可用作檢測選擇塊的nand串的不良數(shù)ns的檢測電路。nand串的不良數(shù)ns例如在選擇塊的擦除動作時被檢測出,或者在針對選擇塊的選擇頁面的編程動作時被檢測出。例如,現(xiàn)有的選擇塊的擦除是以選擇塊的所有nand串合格為前提。即,通過對選擇塊內(nèi)的所有字線施加擦除校驗(yàn)電壓,并自共用源極線對nand串供給vcc來進(jìn)行反向讀出,若所有位線的讀出節(jié)點(diǎn)為vcc或h電平,則擦除校驗(yàn)為合格,若即便有一個位線為0v或l電平,則擦除校驗(yàn)為不合格。
另一方面,在本實(shí)施例中,通過判定電路200來檢測選擇塊內(nèi)的nand串的不良數(shù)ns,若不良數(shù)ns為固定數(shù)以下,則能夠?qū)⑺鰤K直接用作能夠編程的塊,而非認(rèn)為所述塊作為壞塊而無法使用。
圖10表示本實(shí)施例的擦除動作的流程。步驟s10至步驟s50的流程與圖1所示的流程相同。判定擦除脈沖的施加次數(shù)是否達(dá)到擦除所允許的最大擦除脈沖施加次數(shù)即nmax(s40),在達(dá)到的情況下,進(jìn)而判定nand串的不良數(shù)ns是否為固定數(shù)以下(s60)。固定數(shù)是基于能夠通過ecc電路130來修復(fù)的位數(shù)ncc或可判定為疑似合格的最大位數(shù)np來決定,例如為固定數(shù)≤np≤ncc的關(guān)系。在串的不良數(shù)ns為固定數(shù)以下的情況下,結(jié)束擦除動作,即,該塊之后也繼續(xù)使用。另一方面,在串不良數(shù)ns超過固定數(shù)的情況下,將擦除失敗的狀態(tài)告知于外部的控制器,且將該塊作為無法使用的壞塊而進(jìn)行管理(s70)。
其次,對nand串的不良數(shù)ns的檢測方法進(jìn)行說明。nand串的不良數(shù)的檢測通過圖8所示的頁面緩沖器/讀出電路170及與其連接的判定電路200來進(jìn)行。在判定電路200中,例如如圖9所示連接有兩個晶體管q8,且與其串聯(lián)地連接有選擇用的晶體管q10、晶體管q11。
(1)0位的串不良的檢測:
通過控制部150而將使能信號en_1、使能信號en_2驅(qū)動為l電平,將晶體管q8_1、晶體管q8_2配置為不能進(jìn)行動作的狀態(tài)。此處,進(jìn)行選擇塊的反向讀出。若所有的nand串的擦除成功(所有的存儲胞元的閾值分布為“0”),則所有的頁面緩沖器/讀出電路170的讀出節(jié)點(diǎn)sns為h電平,晶體管q1斷開,比較器cmp輸出h電平。該輸出表示選擇塊的擦除中串不良數(shù)ns為零。另一方面,若1位的nand串的擦除為不良(存儲胞元的閾值分布并非為“1”),則一個頁面緩沖器/讀出電路170的讀出節(jié)點(diǎn)sns為l電平,晶體管q1導(dǎo)通,配線pb_up的電壓比基準(zhǔn)電壓vref低1/2iref,比較器cmp輸出l電平。該輸出表示選擇塊的擦除中串不良數(shù)ns為1位。
(2)1位的串不良的檢測:
通過控制部150而將使能信號en_1或使能信號en_2的其中之一驅(qū)動為h電平,將晶體管q8_1或晶體管q8_2的其中之一配置為能夠進(jìn)行動作的狀態(tài)。在反向讀出中,當(dāng)存在1位的nand串的不良時,比較器cmp輸出h電平,當(dāng)存在2位的串不良時,比較器cmp輸出l電平。
(3)2位的串不良的檢測:
通過控制部150而將使能信號en_1及使能信號en_2兩者驅(qū)動為h電平,將晶體管q8_1及晶體管q8_2兩者配置為能夠進(jìn)行動作的狀態(tài)。在反向讀出中,當(dāng)存在2位的nand串的不良時,比較器cmp輸出h電平,當(dāng)存在3位的串不良時,比較器cmp輸出l電平。
其次,對本實(shí)施例的編程動作進(jìn)行說明。關(guān)于本實(shí)施例的編程動作,在進(jìn)行編程之前,檢測nand串的不良數(shù)ns,并基于所檢測出的不良數(shù)ns來決定進(jìn)行疑似合格的判定的不合格位數(shù)n。在擦除選擇塊時,擦除不良的nand串包含數(shù)據(jù)“0”的存儲胞元。在使用這種選擇塊來進(jìn)行編程的情況下,不論輸入數(shù)據(jù)di為“0”或“1”,在編程校驗(yàn)中,判定nand串不良的位線為合格,無法保證輸入數(shù)據(jù)di是否正確地進(jìn)行編程。因此,在包含nand串的不良的情況下,必須與所述不良數(shù)ns的數(shù)量相應(yīng)地來減少判定為疑似合格的不合格位數(shù)。
圖11、圖12為對本實(shí)施例的編程動作進(jìn)行說明的流程圖。當(dāng)控制部150經(jīng)由輸入/輸出緩沖器120而接收編程命令、地址信息、數(shù)據(jù)di時,開始用以編程的序列。輸入數(shù)據(jù)di被加載至頁面緩沖器/讀出電路170,繼而,利用ecc電路130來進(jìn)行輸入數(shù)據(jù)di的ecc處理(s100)。
當(dāng)ecc處理結(jié)束時,在進(jìn)行編程之前,進(jìn)行選擇塊的nand串的不良數(shù)ns的檢測。首先,通過圖8所示的頁面緩沖器/讀出電路170而以扇區(qū)為單位進(jìn)行反向讀出(s110)。圖13、圖14為表示分別在nand串存在不良的情況、無不良的情況下輸入數(shù)據(jù)“0”、“1”時的各節(jié)點(diǎn)的邏輯值的圖。
當(dāng)應(yīng)編程的數(shù)據(jù)di被加載至鎖存電路時,鎖存節(jié)點(diǎn)slr為與輸入數(shù)據(jù)相應(yīng)的邏輯電平。其次,晶體管dtg導(dǎo)通固定期間,鎖存節(jié)點(diǎn)slr的電荷被轉(zhuǎn)送至節(jié)點(diǎn)vg,并由節(jié)點(diǎn)vg保持。換句話說,節(jié)點(diǎn)vg在反向讀出期間暫時地保持應(yīng)編程的數(shù)據(jù)。其次,進(jìn)行反向讀出(步驟s110)。反向讀出是自連接于選擇塊的共用源極線對nand串供給例如vcc電壓。若在nand串中無不良,則構(gòu)成nand串的存儲胞元的閾值為“1”,nand串導(dǎo)通,讀出節(jié)點(diǎn)sns成為h電平。另一方面,若在nand串中存在不良,則構(gòu)成nand串的至少一個存儲胞元的閾值并非為“1”,故nand串不導(dǎo)通,讀出節(jié)點(diǎn)sns成為l電平。其次,晶體管blcd導(dǎo)通固定期間,讀出節(jié)點(diǎn)sns的電荷被轉(zhuǎn)送至鎖存節(jié)點(diǎn)slr(步驟s112)。當(dāng)鎖存節(jié)點(diǎn)slr為h電平時,鎖存節(jié)點(diǎn)sls成為l電平,晶體管q1斷開,相反地,當(dāng)鎖存節(jié)點(diǎn)slr為l電平時,鎖存節(jié)點(diǎn)sls成為h電平,晶體管q1導(dǎo)通。
此處,當(dāng)判定電路200判定例如最大2位的不合格位的疑似合格時,如上所述,在判定電路200中,如圖9所示連接有兩個晶體管q8_1、晶體管q8_2??刂撇?50通過使能信號en_1、使能信號en_2將兩個晶體管q8_1、晶體管q8_2配置成能夠進(jìn)行動作的狀態(tài),判定nand串的不良數(shù)ns是否為2位(步驟s114)。若比較器cmp的輸出為l電平(步驟s120),則串的不良數(shù)ns為3位,在該情況下,控制部150將疑似合格的不合格位數(shù)設(shè)定為0位(n=0)(步驟s122)。即,將使能信號en_1、使能信號en_2兩者驅(qū)動為l電平,將晶體管q8_1、晶體管q8_2配置成不能進(jìn)行動作的狀態(tài)(步驟s122)。從而,在編程校驗(yàn)中,判定選擇頁面的所有位是否實(shí)現(xiàn)合格。
若比較器cmp的輸出為h電平,則串的不良數(shù)ns為2位以下,在該情況下,其次,判定串的不良數(shù)ns是否為1位(步驟s130)??刂撇?50將晶體管q8_1、晶體管q8_2的任一者配置成能夠進(jìn)行動作的狀態(tài),判定是否為1位。若比較器cmp的輸出為l電平(步驟s132),則串的不良數(shù)ns為2位,在該情況下,控制部150也將疑似合格的不合格位數(shù)設(shè)定為0位(n=0)(步驟s134)。
若比較器cmp的輸出為h電平,則串的不良數(shù)ns為1位以下,在該情況下,其次,判定串的不良數(shù)ns是否為0位(步驟s140)。控制部150將晶體管q8_1、晶體管q8_2兩者配置成不能進(jìn)行動作的狀態(tài),判定是否為0位。若比較器cmp的輸出為l電平(步驟s142),則串的不良數(shù)ns為1位,在該情況下,控制部150將疑似合格的不合格位數(shù)設(shè)定為1位(n=1)(步驟s144)。即,以晶體管q8_1、晶體管q8_2的任一者成為能夠進(jìn)行動作的狀態(tài)的方式將使能信號en_1、使能信號en_2的其中之一設(shè)置成h電平。
若比較器cmp的輸出為h電平,則串的不良數(shù)ns為0位,在該情況下,控制部150將疑似合格的不合格位數(shù)設(shè)定為2位(n=2)(步驟s146)。即,以晶體管q8_1、晶體管q8_2兩者成為能夠進(jìn)行動作的狀態(tài)的方式將使能信號en_1、使能信號en_2兩者設(shè)置成h電平。
當(dāng)與nand串的不良數(shù)ns相應(yīng)的疑似合格的不合格位數(shù)n的設(shè)置結(jié)束時,其次,將由節(jié)點(diǎn)vg保持的數(shù)據(jù)恢復(fù)至鎖存節(jié)點(diǎn)slr。首先,通過將電壓供給部v1設(shè)為gnd,且將晶體管blpre導(dǎo)通固定期間,而將讀出節(jié)點(diǎn)sns設(shè)為gnd后(步驟s150),將電壓供給部v2自0v設(shè)為vdd,使晶體管reg導(dǎo)通固定期間。當(dāng)在節(jié)點(diǎn)vg為h電平時,若電壓供給部v2轉(zhuǎn)變至vdd,則通過自舉升壓(bootstrap)而節(jié)點(diǎn)vg的電位進(jìn)一步提升,對應(yīng)的晶體管被強(qiáng)烈地導(dǎo)通,讀出節(jié)點(diǎn)sns被充電至h電平(步驟s152)。另一方面,在節(jié)點(diǎn)vg為l電平的情況下,由于對應(yīng)的晶體管未導(dǎo)通,故讀出節(jié)點(diǎn)sns保持l電平的狀態(tài)。其次,讀出節(jié)點(diǎn)sns的電荷被轉(zhuǎn)送至鎖存節(jié)點(diǎn)slr,輸入數(shù)據(jù)被恢復(fù)(步驟s154),然后開始編程動作。
當(dāng)輸入數(shù)據(jù)的恢復(fù)結(jié)束時,其次,依據(jù)輸入數(shù)據(jù)而開始編程。如圖12所示,利用字線選擇電路160而選擇選擇塊的字線,讀出電路將與輸入數(shù)據(jù)相應(yīng)的電壓施加至位線,并對選擇頁面施加編程脈沖(步驟s200)。其次,進(jìn)行編程校驗(yàn)(步驟s210)。校驗(yàn)的結(jié)果為,若選擇頁面的所有位合格,則編程結(jié)束(步驟s220)。另一方面,在所有位不合格的情況下,控制部150判定編程脈沖的施加次數(shù)是否達(dá)到最佳次數(shù)nop(步驟s230)。此處,所謂最佳次數(shù)nop,為小于編程中所允許的編程脈沖的最大施加次數(shù)nmax的值,優(yōu)選的是,在將存儲胞元判定為編程不合格的情況下為應(yīng)最小限度地施加的編程脈沖的次數(shù)。例如,在編程所容許的最大時間為700μs且將施加一次編程脈沖所需的時間設(shè)為50μs的情況下,nmax=700μs或nmax=14次。最佳次數(shù)nop可基于典型的存儲胞元為編程合格時的編程脈沖的施加次數(shù)而決定。例如,當(dāng)利用統(tǒng)計的方法來算出施加至編程合格的存儲胞元的編程脈沖的平均次數(shù)nav時,最佳次數(shù)nop可設(shè)定為nop=nav。該最佳次數(shù)nop例如能夠利用自外部的控制器收到的命令等進(jìn)行設(shè)定,所設(shè)定的值由控制部150的寄存器等保持。
控制部150在編程脈沖的施加次數(shù)未達(dá)到最佳次數(shù)nop的情況下(步驟s230),依據(jù)增量步進(jìn)編程脈沖(incrementalstepprogrampulse,ispp),將比上一次大δv的編程脈沖施加至選擇頁面(步驟s240)。另一方面,在編程脈沖的施加次數(shù)達(dá)到最佳次數(shù)nop的情況下(步驟s230),控制部150進(jìn)行判定選擇頁面是否為疑似合格的步驟(步驟s250)。視作疑似合格的不合格位數(shù)n如上所述,為可通過ecc而修復(fù)的最大位數(shù)ncc以下,若校驗(yàn)時的不合格位數(shù)、即在選擇頁面實(shí)際產(chǎn)生的不合格位數(shù)為疑似合格的不合格位數(shù)n以下,則判定為疑似合格(步驟s250)。當(dāng)判定為疑似合格時,編程動作結(jié)束,“0”不良的不合格位直接被存儲于選擇頁面。
另一方面,當(dāng)判定為未實(shí)現(xiàn)疑似合格時(步驟s250),控制部150判定編程脈沖的施加次數(shù)是否達(dá)到nmax(步驟s260),若未達(dá)到,則依據(jù)ispp進(jìn)而將編程脈沖施加至選擇頁面(步驟s240、步驟s200)。在編程脈沖的施加次數(shù)達(dá)到nmax的情況下,將編程失敗的狀態(tài)告知于外部的控制器,且將包含該選擇頁面的塊作為壞塊而進(jìn)行管理。在該情況下,將作為壞塊的辨別信息存儲于備用區(qū)域的區(qū)域311。
此處,當(dāng)在選擇塊中nand串的不良數(shù)ns為2位時,如上所述,據(jù)疑似合格而判定的不合格位數(shù)為0位,故在圖12的流程中,事實(shí)上未進(jìn)行疑似合格的判定(步驟s250)。nand串的不良包含閾值并非為“1”的存儲胞元,在反向讀出中為不合格,但在編程校驗(yàn)中為合格。即,不論應(yīng)編程的數(shù)據(jù)如何,不良的nand串的編程校驗(yàn)結(jié)果為“0”,該情況合格。因此,當(dāng)在選擇塊內(nèi)包含nand串的不良時,編程校驗(yàn)可能潛在地包含與nand串的不良數(shù)ns相應(yīng)的差錯(當(dāng)針對不良的nand串的應(yīng)編程的數(shù)據(jù)為“1”時),有可能在編程數(shù)據(jù)與自選擇頁面讀出的數(shù)據(jù)之間產(chǎn)生與串不良數(shù)ns相應(yīng)的不一致(差錯)。該差錯必須通過ecc電路130來修復(fù),相對應(yīng)地,判定電路200以疑似合格而判定的不合格位數(shù)中的比例減少。
如上所述,根據(jù)本實(shí)施例,設(shè)為對選擇塊的nand串的不良數(shù)進(jìn)行檢測,故若nand串的不良數(shù)ns為可通過ecc電路來修復(fù)的位數(shù)以下,則能夠使用從前被記數(shù)為壞塊的塊,可改善存儲器陣列的利用效率及制造良率。
對本發(fā)明的優(yōu)選實(shí)施形態(tài)進(jìn)行了詳述,但本發(fā)明并不限定于特定的實(shí)施形態(tài),在權(quán)利要求書所記載的發(fā)明的主旨的范圍內(nèi),能夠進(jìn)行各種變形、變更。