欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

以高分辨率可變初始編程脈沖對非易失性存儲器編程的制作方法

文檔序號:6768330閱讀:209來源:國知局
專利名稱:以高分辨率可變初始編程脈沖對非易失性存儲器編程的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及非易失性存儲器。
背景技術(shù)
半導體存儲器器件由于用于各種電子器件中而變得更為流行。例如,非易失性半導體存儲器用于蜂窩電話、數(shù)碼相機、個人數(shù)字助理、移動計算設(shè)備、非移動計算設(shè)備和其它設(shè)備中。電可擦除可編程只讀存儲器(EEPROM)和閃速存儲器是其中最流行的非易失性半導體存儲器。
EEPROM和閃速存儲器二者皆利用了位于半導體襯底中的溝道區(qū)域之上并與之隔離的浮置柵極。浮置柵極位于源區(qū)與漏區(qū)之間??刂茤艠O設(shè)在浮置柵極之上且與之隔離。 晶體管的閾值電壓受浮置柵極上保持的電荷量控制。也就是說,在晶體管被導通以允許其源極與漏極之間傳導之前必須施加到控制柵極的電壓的最小量受浮置柵極上的電荷水平控制。
在對EEPROM或閃速存儲器器件編程時,通常對控制柵極施加編程電壓且將比特線接地。來自溝道的電子被注入浮置柵極中。當電子在浮置柵極中累積時,浮置柵極變?yōu)閹ж撾娗掖鎯ζ鲉卧拈撝惦妷荷?,使得存儲器單元處于被編程狀態(tài)。在題為“Source Side Self Boosting Technique For Non-Volatile Memory” 的第 6,859,397 號美國專利和題為“Detecting Over Programmed Memory”的第6,917,542號美國專利中具有更多關(guān)于編程的信息,這些專利通過引用而全部并入本文。
—些EEPROM和閃速存儲器器件具有用于存儲兩個電荷范圍的浮置柵極,因此,存儲器單元可在兩個狀態(tài)(例如對應于數(shù)據(jù)“1”和數(shù)據(jù)“0”的被擦除狀態(tài)和被編程狀態(tài))之間被進行編程/擦除。這樣的器件被稱為二進制器件。
通過標識多個不同的容許閾值電壓范圍,可實現(xiàn)多狀態(tài)閃速存儲器單元。每一不同的閾值電壓范圍與關(guān)于數(shù)據(jù)比特集合的預定值對應。在編程至存儲器單元中的數(shù)據(jù)與存儲器單元的閾值電壓范圍之間的特定關(guān)系取決于為存儲器單元采用的數(shù)據(jù)編碼方案。例如,第6,222,762號美國專利和美國專利申請公布No. 2004/0255090描述了用于多狀態(tài)閃速存儲器單元的多種數(shù)據(jù)編碼方案,該專利和專利申請公布通過引用而整體并入本文。
在一些實施例中,施加至控制柵極的編程電壓包括幅值隨著每一相繼脈沖而增加預定步長大小(例如0.2¥,0.3¥,0.斬,或其它值)的一系列脈沖。編程電壓幅值的選擇需折衷。幅值太高會導致一些存儲器單元被過度編程,而幅值太低會導致較長的編程時間。通常,非易失性存儲器的使用者希望存儲器編程較快。
在現(xiàn)有技術(shù)器件中,對于未被明顯使用的新器件(也稱為全新器件)和繁重使用的器件采用相同的編程信號。但是,隨著非易失性存儲器器件經(jīng)過很多編程周期,電荷陷入浮置柵極與溝道區(qū)之間的絕緣體中。電荷的這種陷入將閾值電壓偏移至更高的電平,這使得存儲器單元的編程更快。如果編程電壓的幅值被設(shè)置成太高,那么,即使該編程電壓未導致全新器件的過度編程,但是隨著該器件的使用變得更加繁重,該器件可能受到過度編程。 因此,新器件的編程電壓設(shè)置得足夠低,以防止在該器件變舊時出現(xiàn)過度編程。這樣降低編程電壓的幅值會降低全新器件對數(shù)據(jù)編程時的速度。

發(fā)明內(nèi)容
本發(fā)明公開的技術(shù)用于增加編程速度,同時降低過度編程的風險。
一個實施例包括對多個非易失性存儲器元件執(zhí)行多階段編程處理的一個階段。 該多階段編程處理將所述多個非易失性存儲器元件編程至一個或多個最終目標條件。所述一個階段包括使用第一編程脈沖集合將所述多個非易失性存儲器元件編程至一個或多個第一中間目標條件。執(zhí)行所述一個階段包括標識與實現(xiàn)特定結(jié)果相關(guān)的編程脈沖;關(guān)于所述非易失性存儲器元件的一個或多個可替選結(jié)果執(zhí)行一個或多個感測操作;如果所述感測操作確定出大于預定數(shù)量的非易失性存儲器元件實現(xiàn)了所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則存儲基于所述第一可替選結(jié)果和所標識的編程脈沖的標識;以及如果所述感測操作未確定出有足夠數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果,則存儲基于所標識的編程脈沖的標識。該方法還包括執(zhí)行所述多階段編程處理的附加階段,包括施加第二編程脈沖集合,該第二編程脈沖集合的初始脈沖具有基于所存儲的標識而設(shè)置的幅值。
一個實施例包括關(guān)于多個非易失性存儲器元件執(zhí)行多個編程處理。每個所述編程處理用于使用編程脈沖至少將所述非易失性存儲器元件的子集編程至相應的目標條件集合。對于至少所述編程處理的子集,該方法包括標識與實現(xiàn)相應編程處理的特定結(jié)果相關(guān)的編程脈沖,在用于非易失性存儲器元件的一個或多個可替選結(jié)果處執(zhí)行一個或多個感測操作,如果所述一個或多個感測操作確定出多于預定數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則使用所述第一可替選結(jié)果和編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程,并且,如果所述一個或多個感測操作確定出少于所需數(shù)量的非易失性存儲器元件實現(xiàn)任一所述可替選結(jié)果,則使用編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程。
一個實施例包括對多個非易失性存儲器元件執(zhí)行多階段編程處理的第一階段。 該多階段編程處理將所述多個非易失性存儲器元件編程至一個或多個最終目標條件。所述第一階段至少將所述非易失性存儲器元件的子集編程至一個或多個第一中間目標條件。 執(zhí)行第一階段包括以編程脈沖之間的第一增量,將第一編程脈沖集合施加至所述非易失性存儲器元件;響應于第一編程脈沖集合的第η個編程脈沖,確定至少預定數(shù)量的非易失性存儲器元件的子集已達到用于該第一階段的中間條件(用于該第一階段的中間條件不同于所述一個或多個第一階段目標條件);響應于確定至少預定數(shù)量的非易失性存儲器元件的子集已達到中間條件,以用于所述非易失性存儲器元件的子集的可替選條件執(zhí)行感測操作;如果感測操作發(fā)現(xiàn)大于預定數(shù)量的非易失性存儲器元件處于所述可替選條件,則存儲基于所述可替選條件的標識;如果感測操作未發(fā)現(xiàn)處于所述可替選條件的大于預定數(shù)量的非易失性存儲器元件,則存儲基于所述中間條件的標識;響應于確定至少預定數(shù)量的非易失性存儲器元件的子集已達到用于第一階段的中間條件,則改變第一編程電壓集合以在編程脈沖之間具有第二增量(在編程脈沖之間的第二增量小于在編程脈沖之間的第一增量);以及在足夠數(shù)量的非易失性存儲器元件已達到相應的一個或多個第一階段目標條件時結(jié)束第一階段。該方法還包括執(zhí)行多階段編程處理的附加階段,包括施加第二編程脈沖集合至所述多個非易失性存儲器元件。第二編程脈沖集合的初始脈沖具有基于所存儲的標識而設(shè)置的幅值。
一個實施例包括多個非易失性存儲器元件以及與所述多個非易失性存儲器元件通信的一個或多個管理電路。所述一個或多個管理電路關(guān)于所述多個非易失性存儲器元件執(zhí)行多個編程處理,每個所述編程處理用于使用編程脈沖至少將所述非易失性存儲器元件的子集編程至相應的目標條件集合。對于至少所述編程處理的子集,所述一個或多個管理電路標識與實現(xiàn)相應編程處理的特定結(jié)果相關(guān)的編程脈沖并且在用于所述非易失性存儲器元件的一個或多個可替選結(jié)果處執(zhí)行一個或多個感測操作。如果所述一個或多個感測操作確定出多于預定數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則所述一個或多個管理電路使用所述第一可替選結(jié)果和編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程。如果所述一個或多個感測操作確定出少于所需數(shù)量的非易失性存儲器元件實現(xiàn)任一所述可替選結(jié)果,則所述一個或多個管理電路使用編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程。
一個實施例包括多個非易失性存儲器元件以及與所述多個非易失性存儲器元件通信的一個或多個管理電路。所述一個或多個管理電路對所述多個非易失性存儲器元件執(zhí)行多階段編程處理的一個階段。該多階段編程處理將所述多個非易失性存儲器元件編程至一個或多個最終目標條件。所述一個階段包括所述一個或多個管理電路使用第一編程脈沖集合將所述非易失性存儲器元件編程至一個或多個第一中間目標條件,并且標識與實現(xiàn)特定結(jié)果相關(guān)的編程脈沖。所述一個或多個管理電路在所述一個階段期間關(guān)于所述非易失性存儲器元件的一個或多個可替選結(jié)果執(zhí)行一個或多個感測操作。如果所述感測操作確定出大于預定數(shù)量的非易失性存儲器元件實現(xiàn)了所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則所述一個或多個管理電路存儲基于所述第一可替選結(jié)果和所標識的編程脈沖的標識。如果所述感測操作未確定出有足夠數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果,則所述一個或多個管理電路存儲基于所標識的編程脈沖的標識。所述一個或多個管理電路執(zhí)行所述多階段編程處理的附加階段,包括施加第二編程脈沖集合,該第二編程脈沖集合的初始脈沖具有基于所存儲的標識而設(shè)置的幅值。


圖1是NAND串的俯視圖。
圖2是NAND串的等效電路圖。
圖3是非易失性存儲器系統(tǒng)的框圖。
圖4是示出存儲器陣列的一個實施例的框圖。
圖5是示出感測塊的一個實施例的框圖。
圖6示出閾值電壓分布的示例性集合且示出示例性編程處理。
圖7示出閾值電壓分布的示例性集合且示出示例性編程處理。
圖8A-圖8C示出閾值電壓分布的示例以及示例性編程處理。
圖9A-圖9C示出閾值電壓分布的示例以及示例性編程處理。
圖IOA-圖IOD示出閾值電壓分布的示例以及示例性編程處理。
圖IlA和圖IlB示出閾值電壓分布的示例以及示例性編程處理。
圖12A-圖12D示出閾值電壓分布的示例以及示例性編程處理。
圖13A-圖13D示出閾值電壓分布的示例以及示例性編程處理。
圖14是描述用于操作非易失性存儲器的一個實施例過程的流程圖。
圖15是描述用于對非易失性存儲器編程的一個實施例過程的流程圖。
圖16是描述用于對非易失性存儲器編程的一個實施例過程的流程圖。
圖17示出編程脈沖的示例性集合。
圖18示出編程脈沖的示例性集合。
圖19-26是描述用于執(zhí)行編程處理的不同實施例的流程圖。
圖27A-圖27C以及圖28A-圖28C是說明粗略/精細編程方案的曲線圖。
圖四是描述用于對非易失性存儲器編程的處理的一個實施例的流程圖。
圖30-圖32是示出閾值電壓分布的曲線圖。
圖33是描述用于感測關(guān)于非易失性存儲器元件組的信息的處理的一個實施例的流程圖。
圖34是描述用于感測關(guān)于非易失性存儲器元件組的信息的處理的一個實施例的流程圖。
具體實施例方式閃速存儲器系統(tǒng)的一個示例使用NAND結(jié)構(gòu),其包括布置串聯(lián)的多個晶體管,夾于兩個選擇柵極之間。串聯(lián)的晶體管和所述選擇柵極被稱為NAND串。圖1是示出一個NAND 串的俯視圖。圖2是其等效電路。圖1和圖2中所示的NAND串包括串聯(lián)且夾在第一(漏極側(cè))選擇柵極120與第二(源極側(cè))選擇柵極122之間的四個晶體管100、102、104和106。 選擇柵極120通過比特線接觸1 將NAND串與比特線連接。選擇柵極122將NAND串與源極線1 連接。通過將適當?shù)碾妷菏┘拥竭x擇線S⑶控制選擇柵極120。通過將適當?shù)碾妷菏┘拥竭x擇線SGS控制選擇柵極122。晶體管100、102、104和106中的每一個具有控制柵極和浮置柵極。例如,晶體管100具有控制柵極100CG和浮置柵極10(FG。晶體管102包括控制柵極102CG和浮置柵極102TO。晶體管104包括控制柵極104CG和浮置柵極104TO。 晶體管106包括控制柵極106CG和浮置柵極106TO。控制柵極IOOCG連接到字線WL3,控制柵極102CG連接到字線WL2,控制柵極104CG連接到字線WL1,且控制柵極106CG連接到字線虬0。
注意,雖然圖1和圖2示出在NAND串中有四個存儲器單元,但是使用四個存儲器單元僅為示例。NAND串可具有少于四個存儲器單元或多于四個存儲器單元。例如,一些 NAND串會包括八個存儲器單元、16個存儲器單元、32個存儲器單元、64個存儲器單元、1 個存儲器單元,等等。本文的討論并不限于NAND串中任何特定數(shù)量的存儲器單元。一個實施例使用具有66個存儲器單元的NAND串,其中64個存儲器單元用于存儲數(shù)據(jù),而兩個存儲器單元由于不存儲數(shù)據(jù)而被稱為啞元存儲器單元。
使用NAND結(jié)構(gòu)的閃速存儲器系統(tǒng)的典型架構(gòu)包括若干NAND串。每一 NAND串通過其受選擇線SGS控制的源極選擇柵極而連接至共同源極線,并且通過其受選擇線SGD控制的漏極選擇柵極而連接至其所關(guān)聯(lián)的比特線。每一比特線以及經(jīng)由比特線接觸部連接到該比特線的相應NAND串包括存儲器單元陣列的列。多個NAND串共享比特線。通常,比特線在垂直于字線的方向上在NAND串的頂部走線,并且連接到感測放大器。
在以下美國專利/專利申請中提供了 NAND型閃速存儲器的有關(guān)示例及其操作第 5,570,315號美國專利;第5,774,397號美國專利;第6,046,935號美國專利;第6,456,528 號美國專利;以及美國專利公開NO.US2003/0002348,所有這些專利/專利申請通過引用并入本文。
除了 NAND閃速存儲器之外,也可以使用其它類型的非易失性存儲設(shè)備。例如, 也可以由使用電介質(zhì)層用于存儲電荷的存儲器單元制造非易失性存儲器器件。使用電介質(zhì)層,而不是先前描述的導電性浮置柵極元件。這種使用電介質(zhì)存儲元件的存儲器器
Eitan ^Λ "NROM :A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell” (IEEE Electron Device Letters,卷 21,第 11 號,2000 年 11 月,第 543-545 頁)加以描述。0N0電介質(zhì)層延伸跨過源極擴散與漏極擴散之間的溝道。用于一個數(shù)據(jù)比特的電荷位于與漏極相鄰的電介質(zhì)層,而用于另一個數(shù)據(jù)比特的電荷位于與源極相鄰的電介質(zhì)層。第5,768,192號美國專利和第6,011,725號美國專利公開一種具有夾置于兩個二氧化硅層之間的陷阱電介質(zhì)的非易失性存儲器單元。通過單獨讀取電介質(zhì)中在空間上分離的電荷存儲區(qū)域的二進制狀態(tài),可實現(xiàn)多狀態(tài)數(shù)據(jù)存儲。還可以使用基于M0N0S或TANOS型結(jié)構(gòu)或納米晶體的非易失性存儲器。也可以使用其他類型的非易失性存儲器。
圖3示出存儲器器件210,該器件具有用于對一頁(或其他單位的)存儲器單元 (例如,NAND多狀態(tài)閃速存儲器)進行并行讀取和編程的讀取/寫入電路。存儲器器件210 可包括一個或多個存儲器管芯或芯片212。存儲器管芯212包括存儲器單元的(二維或三維)陣列200、控制電路220以及讀取/寫入電路230A和230B。在一個實施例中,通過各種外圍電路對存儲器陣列200的存取是以對稱方式(在該陣列的相對兩側(cè))實現(xiàn)的,使得每側(cè)的存取線和電路的密度減少一半。讀取/寫入電路230A和230B包括多個感測塊300, 所述感測塊允許并行讀取存儲器單元的頁面或者對其進行編程。存儲器陣列200可經(jīng)由行解碼器MOA和MOB由字線尋址以及經(jīng)由列解碼器M2A和M2B由比特線尋址。字線和比特線是控制線的示例。在典型實施例中,控制器244與一個或多個存儲器管芯212包括在同一存儲器器件210(例如可移動存儲卡或封裝)中。命令和數(shù)據(jù)經(jīng)由線232在主機與控制器244之間傳輸并且經(jīng)由線234在控制器與一個或多個存儲器片212之間傳輸。
控制電路220與讀取/寫入電路230A和230B協(xié)作,以對存儲器陣列200執(zhí)行存儲器操作??刂齐娐?20包括狀態(tài)機222、片上地址解碼器2 和功率控制模塊226。狀態(tài)機222提供存儲器操作的芯片級控制。片上地址解碼器2M提供由主機或存儲器控制器使用的地址與由解碼器M0A、240B、M2A和M2B使用的硬件地址之間的地址接口。功率控制模塊2 控制在存儲器操作期間供應給字線和比特線的功率和電壓。在一個實施例中,功
9率控制模塊2 包括一個或多個電荷泵,所述電荷泵可形成比電源電壓高的電壓。控制電路220提供通向行解碼器M0A、240B以及列解碼器M2A和M2B的地址線ADDR。列解碼器 242A.242B通過被標記為“數(shù)據(jù)I/O”的信號線向控制器244提供數(shù)據(jù)。
在一個實施例中,控制電路220、功率控制電路226、解碼器電路224、狀態(tài)機電路 222、解碼器電路M2A、解碼器電路M2B、解碼器電路Μ0Α、解碼器電路240B、讀取/寫入電路230A、讀取/寫入電路230B和/或控制器244中的一個或其任何組合可以被稱為一個或多個管理電路。該一個或多個管理電路執(zhí)行本文描述的處理。
圖4描述存儲器單元陣列200的示例性結(jié)構(gòu)。在一個實施例中,存儲器單元陣列劃分為大量的存儲器單元塊(例如,塊0-1-23,或另一數(shù)目的存儲器單元塊)。對于閃速存儲器系統(tǒng),通常,塊是擦除的單位。也就是說,每個塊包含被一起擦除的最小數(shù)量的存儲器單元。也可以使用其他擦除單位。
塊包含可通過比特線(例如,比特線BL0-BL69,623)和字線(WL0,WLl, WL2, WL3) 訪問的NAND串集合。圖4示出串聯(lián)以形成NAND串的四個存儲器單元。盡管圖中示出在每個NAND串中包含4個單元,但是可以使用更多或更少的單元(例如,在NAND串上可使用 16,32,64,128或其它數(shù)量的存儲器單元)。NAND串的一個端子通過(連接至選擇柵極漏極線SGD的)漏極選擇柵極連接至對應的比特線,而另一個端子通過(連接至選擇柵極源極線SGS的)源極選擇柵極連接至源極線。
每個塊通常劃分為多個頁面。在一個實施例中,頁面是編程的單位。也可以使用其它的編程單位。通常,在一行存儲器單元中存儲一個或多個頁面的數(shù)據(jù)。例如,在連接至共同字線的存儲器單元中可存儲一個或多個數(shù)據(jù)頁面。頁面可存儲一個或多個扇區(qū)。扇區(qū)包括用戶數(shù)據(jù)和開銷數(shù)據(jù)(也稱為系統(tǒng)數(shù)據(jù))。開銷數(shù)據(jù)通常包括頭部信息和從扇區(qū)的用戶數(shù)據(jù)計算出的糾錯碼(ECC)。當數(shù)據(jù)被編程到陣列中時,控制器(或其它部件)計算ECC, 并且當從陣列中讀取數(shù)據(jù)時也對ECC進行檢查?;蛘?,ECC和/或其它開銷數(shù)據(jù)存儲在與其所屬的用戶數(shù)據(jù)不同的頁面或甚至不同的塊中。用戶數(shù)據(jù)扇區(qū)通常是512字節(jié),對應于磁盤驅(qū)動器中扇區(qū)的大小。大量的頁面形成塊,例如為從8個頁面直至32、64、1觀或更多個頁面中的任何數(shù)量。也可以使用不同大小的塊、頁面和扇區(qū)。另外,塊可具有多于或少于 696 個比特線。
圖5是單個感測塊300的框圖,該感測塊被分區(qū)為核心部分(稱為感測模塊480) 和公共部分490。在一個實施例中,關(guān)于每一比特線具有單獨的感測模塊480且關(guān)于多個感測模塊480的集合具有一個公共部分490。在一個示例中,感測塊將包括一個公共部分490 和八個感測模塊480。在組中的每個感測模塊將經(jīng)由數(shù)據(jù)總線472與關(guān)聯(lián)的公共部分通信。 在美國專利申請公布2006/0140007中具有一個示例,該申請通過引用全部并入本文。
感測模塊480包括感測電路470,其確定連接的比特線中的傳導電流是大于還是小于預定電平。在一些實施例中,感測模塊480包括通常稱為感測放大器的電路。感測模塊480還包括比特線鎖存器482,其用于設(shè)置關(guān)于所連接的比特線的電壓狀況。例如,比特線鎖存器482中鎖存的預定狀態(tài)將導致所連接的比特線被拉到指出編程禁止的狀態(tài)(例如 Vdd),以鎖定存儲器單元不被編程。公共部分490包括處理器492、數(shù)據(jù)鎖存器494的集合和耦合在數(shù)據(jù)鎖存器494的集合與數(shù)據(jù)總線420之間的I/O接口 496。處理器492執(zhí)行計算。例如,其功能之一在于,確定感測到的存儲器單元中存儲的數(shù)據(jù),并且將確定的數(shù)據(jù)存儲在數(shù)據(jù)鎖存器的集合中。數(shù)據(jù)鎖存器494的集合用于在讀取操作期間存儲由處理器492 確定的數(shù)據(jù)比特。其還用于在編程操作期間存儲從數(shù)據(jù)總線420導入的數(shù)據(jù)比特。導入的數(shù)據(jù)比特代表要被編程到存儲器中的寫入數(shù)據(jù)。I/O接口 496在數(shù)據(jù)鎖存器494與數(shù)據(jù)總線420之間提供接口。
在讀取或感測期間,系統(tǒng)的操作受狀態(tài)機222控制,該狀態(tài)機222控制將不同控制柵極電壓供應給尋址到的存儲器單元。隨著遍歷與存儲器所支持的不同存儲器狀態(tài)對應的各預定控制柵極電壓,感測模塊480可在這些電壓之一處跳變,并且將從感測模塊480經(jīng)由總線472向處理器492提供輸出。此時,處理器492通過考慮感測模塊的跳變事件以及關(guān)于從狀態(tài)機通過輸入線493施加的控制柵極電壓的信息確定所得存儲器狀態(tài)。然后計算存儲器狀態(tài)的二進制編碼并將所得數(shù)據(jù)比特存儲在數(shù)據(jù)鎖存器494中。在核心部分的另一實施例中,比特線鎖存器482具有雙重職責,既作為用于對感測模塊480的輸出進行鎖存的鎖存器,又作為如上所述的比特線鎖存器。
可以想到,一些實現(xiàn)方式可包括多個處理器492。在一個實施例中,每一處理器 492包括輸出線(圖5中未示出),使得每一輸出線是線或(wired-OR)在一起的。在一些實施例中,輸出線在連接到線或的線之前被反轉(zhuǎn)。因為接收該線或的線的狀態(tài)機能夠確定被編程的所有比特何時已達到期望電平,所以這種配置使得能夠在編程驗證處理期間快速確定編程處理何時已完成。例如,當每一比特均已達到其期望電平時,會向線或的線發(fā)送關(guān)于該比特的邏輯0(或數(shù)據(jù)1被反轉(zhuǎn))。當所有比特輸出數(shù)據(jù)0(或反轉(zhuǎn)的數(shù)據(jù)1)時,于是狀態(tài)機獲知要終止編程處理。在每一處理器與八個感測模塊通信的實施例中,狀態(tài)機可能 (在一些實施例中)需要八次讀取線或的線,或者在處理器492中添加邏輯以累加關(guān)聯(lián)的比特線的結(jié)果,使得狀態(tài)機僅需讀取線或的線一次。
數(shù)據(jù)鎖存器棧494包含對應于感測模塊的一組數(shù)據(jù)鎖存器。在一個實施例中,針對每個感測模塊480具有三個(或者四個或另一數(shù)量的)數(shù)據(jù)鎖存器。在一個實施例中, 鎖存器各自為一個比特。
在編程或驗證期間,待編程的數(shù)據(jù)來自數(shù)據(jù)總線420并存儲在數(shù)據(jù)鎖存器494的集合中。在驗證處理期間,處理器492相對于期望的存儲器狀態(tài)來監(jiān)視被驗證的存儲器狀態(tài)。當這二者吻合時,處理器492設(shè)置比特線鎖存器482,從而使得該比特線被拉到指出編程禁止的狀態(tài)。這樣,即使耦合到該比特線的存儲器單元在其控制柵極上受到編程脈沖,也能禁止該單元被進一步編程。在其它實施例中,處理器在初始時加載比特線鎖存器482,且感測電路在驗證處理期間將其設(shè)置為禁止值。
在一些實現(xiàn)方式中(但不要求),數(shù)據(jù)鎖存器被實現(xiàn)為移位寄存器,從而其中存儲的并行數(shù)據(jù)被轉(zhuǎn)換為用于數(shù)據(jù)總線420的串行數(shù)據(jù),反之亦然。在一個優(yōu)選實施例中,與存儲器單元的讀取/寫入塊對應的所有數(shù)據(jù)鎖存器可被鏈接在一起以形成塊移位寄存器,從而數(shù)據(jù)塊可通過串行傳送而輸入或輸出。具體地說,調(diào)整一排讀取/寫入模塊,從而其數(shù)據(jù)鎖存器集合中的每一個會仿佛它們?yōu)檎麄€讀取/寫入塊的移位寄存器的一部分那樣將數(shù)據(jù)依次移入或者移出數(shù)據(jù)總線。
在(1)2004年 3 月 25 日公開的題為 “Non-Volatile Memory And Method With Reduced Source Line Bias Errors”的美國專利申請公布 No. 2004/0057287,( 2004 年 6 月 10 日公開的題為“Non-Volatile Memory And Method with Improved Sensing”的美國專利申請公布No. 2004/0109357, (3)美國專利申請公布No. 20050169082,(4) 2005年4月5 臼提交的題為"Compensating for Coupling During Read Operations of Non-Volatile Memory” (發(fā)明人為Jian Chen)的美國專利公布No. 2006/0221692,以及(5)2005年12月沘日提交的題為 “Reference Sense Amplifier For Non-Volatile Memory”(發(fā)明人為 Siu Lung Chan和RauI-AdrianCernea)的美國專利申請公布No. 2006/0158947中具有關(guān)于讀取操作和感測放大器的更多信息。所有這五個剛列出的專利文獻通過引用而全部并入本文。
在成功編程過程(帶有驗證)結(jié)束時,存儲器單元的閾值電壓根據(jù)情況應當在被編程的存儲器單元的閾值電壓的一個或多個分布之內(nèi)或者在被擦擦的存儲器單元的閾值電壓的分布之內(nèi)。圖6示出在每個存儲器單元存儲兩比特數(shù)據(jù)時存儲器單元陣列的示例性閾值電壓分布(與數(shù)據(jù)狀態(tài)對應)。但是在其它實施例中,對于每個存儲器單元可使用多于兩比特數(shù)據(jù)或少于兩比特數(shù)據(jù)(例如,每個存儲器單元三比特數(shù)據(jù)、四比特數(shù)據(jù)或更多比特的數(shù)據(jù))。
圖6示出關(guān)于被擦擦的存儲器單元的第一閾值電壓分布E。另外還示出關(guān)于被編程的存儲器單元的三個閾值電壓分布A、B、C。在一個實施例中,在分布E中的閾值電壓是負值,而在分布A、B、C中的閾值電壓是正值。圖6中每個不同的閾值電壓分布與數(shù)據(jù)比特集合的預定值對應。在被編程至存儲器單元中的數(shù)據(jù)與該存儲器單元的閾值電壓電平之間的特定關(guān)系取決于為存儲器單元采用的數(shù)據(jù)編碼方案。例如,第6,222,762號美國專利與美國專利申請公布No. 2004/0255090描述了用于多狀態(tài)閃速存儲器單元的多種數(shù)據(jù)編碼方案,該專利與專利申請公布通過引用而全部并入本文。在一個實施例中,使用格雷碼分配將數(shù)據(jù)值分配給閾值電壓范圍,使得如果浮置柵極的閾值電壓錯誤地偏移至其相鄰的物理狀態(tài),僅有一個比特會受影響。在一個示例中,將“11”分配給閾值電壓范圍E (狀態(tài)E),將 “10”分配給閾值電壓范圍A (狀態(tài)A),將“00”分配給閾值電壓范圍B (狀態(tài)B),以及將“01” 分配給閾值電壓范圍C(狀態(tài)C)。但是,在其它實施例中未使用格雷碼。盡管圖6示出四個狀態(tài),但是本發(fā)明也可以與其它多狀態(tài)結(jié)構(gòu)、包括多于四個狀態(tài)或少于四個狀態(tài)的多狀態(tài)結(jié)構(gòu)一起使用。
圖6示出用于從存儲器單元讀取數(shù)據(jù)的三個讀取參考電壓Vra、Vrb和Vrc。通過測試指定存儲器單元的閾值電壓是在Vra、Vrb和Vrc之上還是之下,系統(tǒng)能夠確定該存儲器單元所處的狀態(tài)。圖6還示出三個驗證參考電壓Vva、Vvb和Vvc。在將存儲器單元編程至狀態(tài)A時,系統(tǒng)會測試這些存儲器單元是否具有大于或等于Vva的閾值電壓。在將存儲器單元編程至狀態(tài)B時,系統(tǒng)會測試這些存儲器單元是否具有大于或等于Vvb的閾值電壓。 在將存儲器單元編程至狀態(tài)C時,系統(tǒng)會測試這些存儲器單元是否具有大于或等于Vvc的閾值電壓。在一個稱為全序列編程的實施例中,能夠?qū)⒋鎯ζ鲉卧獜谋徊敛翣顟B(tài)E直接編程至任一被編程狀態(tài)A、B或C。例如,可首先擦擦要進行編程的一組存儲器單元,使得該組中的所有存儲器單元處于被擦除狀態(tài)E。然后,使用編程處理將存儲器單元直接編程至狀態(tài) A、B或C。雖然有些存儲器單元從狀態(tài)E被編程至狀態(tài)A,但是其他存儲器單元可從狀態(tài)E 被編程至狀態(tài)B和/或從狀態(tài)E被編程至狀態(tài)C。
圖7示出對多狀態(tài)存儲器單元進行編程的雙階段技術(shù)的一個示例,該多狀態(tài)存儲器單元存儲用于兩個不同頁面(即,下頁面和上頁面)的數(shù)據(jù)。其中示出了四個狀態(tài)狀態(tài)E (11)、狀態(tài)A(10)、狀態(tài)B (00)和狀態(tài)C(01)。對于狀態(tài)E,兩個頁面均存儲“ 1”。對于狀態(tài) A,下頁面存儲“0”而上頁面存儲“1”。對于狀態(tài)B,兩個頁面均存儲“0”。對于狀態(tài)C,下頁面存儲“1”而上頁面存儲“0”。注意,盡管為每個狀態(tài)指定了特定的比特模式,但是也可以指定不同的比特模式。在第一編程階段,根據(jù)要被編程至下邏輯頁面中的比特,設(shè)置存儲器單元的閾值電壓電平。如果該比特為邏輯“1”,則由于各存儲器單元因為已被預先擦除而處于適當狀態(tài),所以閾值電壓不變。但是,如果要被編程的比特是“0”,則將存儲器單元的閾值電壓提升至狀態(tài)A,如箭頭504所示。至此,第一編程階段結(jié)束。
在第二編程階段,根據(jù)被編程至上邏輯頁面的比特,設(shè)置存儲器單元的閾值電壓電平。如果上邏輯頁面比特要存儲邏輯“ 1 ”,則由于存儲器單元處于狀態(tài)E和狀態(tài)A之一 (這取決于下頁面比特的編程),其中狀態(tài)E和狀態(tài)A均攜帶為“ 1,,的上頁面比特,所以不進行編程。如果上頁面比特要成為邏輯“0”,則使閾值電壓偏移。如果第一階段導致存儲器單元保持在被擦除狀態(tài)E,則在第二階段中對存儲器單元編程,使得閾值電壓被提升至狀態(tài)C內(nèi),如箭頭502所示。如果存儲器單元已由于第一編程階段而被編程至狀態(tài)A,則存儲器單元在第二階段中被進一步編程,使得閾值電壓被提升至狀態(tài)B內(nèi),如箭頭506所示。第二階段的結(jié)果是在未改變下頁面的數(shù)據(jù)的情況下將存儲器單元編程至被指定來將邏輯“0” 存儲于上頁面的狀態(tài)。
在一個實施例中,可將系統(tǒng)建立成如果寫入足夠數(shù)據(jù)以填滿整個頁面,則執(zhí)行全序列寫入。如果對于完整的頁面而言未寫入足夠的數(shù)據(jù),則編程處理可用接收的數(shù)據(jù)執(zhí)行下頁面編程。當接收到后續(xù)數(shù)據(jù)時,系統(tǒng)于是會對上頁面編程。在又一實施例中,系統(tǒng)能夠在開始時以對下頁面編程的模式寫入,并在后續(xù)接收到足夠數(shù)據(jù)來填滿整個(或大部分) 字線的存儲器單元時轉(zhuǎn)換成全序列編程模式。在美國專利申請2006/0126390中公開了這樣的實施例的更多細節(jié),該專利申請通過引用全部并入本文。
圖8A-圖8C描述用于對非易失性存儲器編程的另一多階段編程處理。對于任一特定存儲器單元,通過在針對在先頁面寫相鄰存儲器單元之后關(guān)于特定頁面寫該特定存儲器單元,圖8A-圖8C的處理降低浮置柵極與浮置柵極的耦合。在圖8A-圖8C所示處理的實現(xiàn)方式的一個示例中,非易失性存儲器單元使用四個數(shù)據(jù)狀態(tài)在每個存儲器單元存儲兩比特數(shù)據(jù)。例如,假設(shè)狀態(tài)E為被擦除狀態(tài)而狀態(tài)A、B和C為被編程狀態(tài)。狀態(tài)E存儲數(shù)據(jù)11。狀態(tài)A存儲數(shù)據(jù)01。狀態(tài)B存儲數(shù)據(jù)10。狀態(tài)C存儲數(shù)據(jù)00。由于在相鄰的狀態(tài) A與B之間兩個比特均發(fā)生變化,所以這是非格雷碼編碼的示例。也可以使用將數(shù)據(jù)編碼至物理數(shù)據(jù)狀態(tài)的其他方式。每個存儲器單元存儲兩個數(shù)據(jù)頁面。出于標記目的,這些數(shù)據(jù)頁面將被稱為上頁面和下頁面;但是,也可以賦予這些頁面以其他標記。關(guān)于圖8A至圖8C 所示處理的狀態(tài)A,上頁面存儲比特0而下頁面存儲比特1。關(guān)于狀態(tài)B,上頁面存儲比特1 而下頁面存儲比特0。關(guān)于狀態(tài)C,上、下頁面均存儲比特數(shù)據(jù)0。圖8A至圖8C所示編程處理為雙階段編程處理;但是,圖8A至圖8C所示處理也可用于實現(xiàn)三階段處理、四階段處理, 等等。在第一階段中,對下頁面進行編程。如果下頁面是要保持數(shù)據(jù)1,則存儲器單元狀態(tài)保持狀態(tài)E。如果該數(shù)據(jù)要被編程為0,則升高存儲器單元的電壓閾值,使得存儲器單元被編程至狀態(tài)B’。因此,圖8A示出將存儲器單元從狀態(tài)E編程至狀態(tài)E’。圖8A所示的狀態(tài) B’是中間狀態(tài)B ;因此,驗證點被示為Vvb’,其低于Vvb。
在一個實施例中,在存儲器單元從狀態(tài)E被編程至狀態(tài)B ’后。于是相對于其下頁面對其在NAND串中(在字線WLn+Ι上的)的相鄰存儲器單元進行編程。在對相鄰存儲器單元編程后,浮置柵極與浮置柵極的耦合作用可提升前一被編程的存儲器單元的表觀閾值電壓。這會具有將狀態(tài)B’的閾值電壓分布展寬至如圖8B中的閾值電壓分布520所示的作用。當對上頁面編程時,閾值電壓分布的這種明顯展寬會得到補償。
圖8C示出對上頁面編程的處理。如果存儲器單元處于被擦除狀態(tài)E且上頁面要保持處于1,則存儲器單元會保持于狀態(tài)E。如果存儲器單元處于狀態(tài)E且其上頁面數(shù)據(jù)要被編程至0,則會提升存儲器單元的閾值電壓使得存儲器單元處于狀態(tài)A。如果存儲器單元處于中間閾值電壓分布520中且上頁面數(shù)據(jù)要保持于1,則存儲器單元會被編程至最終狀態(tài)B。如果存儲器單元處于中間閾值電壓分布520中且上頁面數(shù)據(jù)要變?yōu)閿?shù)據(jù)0,則會提升存儲器單元的閾值電壓使得存儲器單元處于狀態(tài)C。因為僅相鄰存儲器單元的上頁面編程會對指定存儲器單元的表觀閾值電壓有作用,所以圖8A至圖8C的處理會降低浮置柵極與浮置柵極的耦合作用。交替狀態(tài)編碼的示例是在上頁面數(shù)據(jù)為1時從分布520移至狀態(tài)C, 而在上頁面數(shù)據(jù)為0時移至狀態(tài)B。
盡管圖8A至圖8C提供關(guān)于四個數(shù)據(jù)狀態(tài)和兩個數(shù)據(jù)頁面的示例,但是圖8A至圖 8C指出的構(gòu)思可應用于具有多于或少于四個狀態(tài)以及除兩個以外的頁面的其他實現(xiàn)。在第7,196,928號美國專利中具有更多關(guān)于圖8A至圖8C所示編程處理的細節(jié),該專利通過引用并入本文。
圖9A至圖9C提供多階段編程處理的另一示例。圖9A示出四個閾值電壓分布E、 A、B和C。閾值電壓分布E表示被擦除的存儲器單元。閾值電壓分布A、B和C表示被編程的存儲器單元。在初始時,所有存儲器單元被擦除至閾值電壓分布E。在第一編程階段中, 要被編程至閾值電壓分布C的存儲器單元被編程至閾值電壓分布C。圖9B示出第一編程階段。在第二編程階段中,要被編程至閾值電壓分布A和B的存儲器單元被編程至適當?shù)姆植迹鐖D9C所示。
在圖9A至圖9C所示處理的一些實施例中,在針對第一存儲器單元集合執(zhí)行第一階段之后且在針對該第一存儲器單元集合執(zhí)行第二階段之前,對第二存儲器單元集合執(zhí)行該第一階段。在一個實現(xiàn)中,第一存儲器單元集合連接至第一字線,且第二存儲器單元集合連接至第二字線。
圖IOA至圖IOD示出對連接至共同字線的存儲器單元編程且能夠以與圖9A至圖 9C所示處理類似的方式使用的另一多階段編程處理。圖IOA至圖IOD所示處理的第一階段包括首先將目標為閾值電壓分布B和C的存儲器單元編程至中間閾值電壓分布B’,如圖 IOA中的閾值電壓分布530所示。然后,對相鄰字線執(zhí)行該第一階段,這使得該中間閾值電壓分布由于來自鄰近浮置柵極的耦合而展寬(見圖10B)。第二編程階段包括對目標為從閾值電壓分布B’到閾值電壓分布C的存儲器單元進行編程(見圖10C)。該編程處理的第三階段包括對存儲器單元從分布E編程至分布A以及從分布B’編程至分布B (見圖10D)。
圖IlA和圖IlB描述另一個雙階段編程處理。在第一階段中,以全序列將存儲器單元從被擦除狀態(tài)E同時編程至中間狀態(tài)A*、B*和Cf(見圖11A)。在第二階段中,處于中間狀態(tài)k*的存儲器單元被編程至狀態(tài)A,而處于中間狀態(tài)B*的存儲器單元被編程至狀態(tài)B,并且處于中間狀態(tài)Cf的存儲器單元被編程至狀態(tài)C(見圖11B)。關(guān)于狀態(tài)A、B和C的驗證點 Vva, Vvb和Vvc高于狀態(tài)A*、B*和C*的驗證點。因此,在第一階段期間,第一存儲器單元集合被編程至相比最終目標閾值電壓更低的較低閾值電壓。在第二編程階段期間,該第一存儲器單元集合將其閾值電壓提升至最終目標閾值電壓。在一個實施例中,在針對第一存儲器單元集合的第一階段之后,且在針對第一存儲器單元集合的第二階段之前,對與第一存儲器單元集合連接至相同字線或者與第一存儲器單元相比連接至不同字線的第二存儲器單元集合執(zhí)行該第一階段。在一個示例中,第一階段為粗略階段,而第二階段為精細階段, 因此,中間狀態(tài)IC、B*和Cf可比最終目標狀態(tài)A、B和C更寬。
圖12A至圖12D公開用于對非易失性存儲器編程的三階段處理。圖12A至圖12D 的處理是針對每個存儲器單元存儲三比特數(shù)據(jù)的非易失性存儲器單元執(zhí)行的。在編程之前,所有存儲器單元被擦擦至狀態(tài)SO (見圖12A)。圖12B示出第一階段,該第一階段包括將最終要被編程至狀態(tài)S4-S7的存儲器單元編程至狀態(tài)S4’。圖12C示出第二階段,該第二階段包括從狀態(tài)S4’編程至狀態(tài)S4-S7。在一個實施例中,由于來自在第一階段與第二階段之間被部分或全部編程的、相鄰字線上的存儲器單元的耦合,在圖2C中S4’更寬。圖 12D示出第三階段,該第三階段包括從狀態(tài)SO編程至狀態(tài)S1、S2和S3。當根據(jù)圖12A至圖 12D的處理對第一存儲器單元集合編程時,在關(guān)于第一存儲器單元集合的各階段之間,可全部或部分地對其他存儲器單元(與第一存儲器單元集合連接至相同字線或連接至一個或多個不同字線的存儲器單元)編程。
圖13A至圖13D示出用于對每個存儲器單元存儲四比特數(shù)據(jù)的存儲器單元編程的三階段編程處理。因此,最終的存儲器單元集合可被分成16個閾值電壓分布。在三階段編程處理的第一階段(圖13A至圖13B)期間,存儲器單元被編程至四個中間閾值電壓分布 E2、A2、B2和C2之一。于是在第二階段期間,存儲器單元從這四個中間閾值電壓分布被編程至16個分布O-F (圖1 至圖13C)。在第三階段(圖13C至圖13D)中,將這16個分布 O-F中的每一個緊縮。在根據(jù)圖13A至圖14D的處理對第一存儲器單元集合編程時,在關(guān)于第一存儲器單元集合的各階段之間,可全部或部分地對其他存儲器單元(與第一存儲器單元集合連接至相同字線或連接至一個或多個不同字線的存儲器單元)編程。
圖14是描述用于操作非易失性存儲器(諸如圖3的系統(tǒng),或者其他系統(tǒng))的處理的一個實施例的流程圖。在步驟600中,接收數(shù)據(jù)編程請求。該請求可來自主機,另一器件或控制器。該請求可在控制器、控制電路、狀態(tài)機或其他器件接收。響應于該請求,控制器、控制電路、狀態(tài)機或其他器件會在步驟602中確定使用哪個閃速存儲器單元塊來存儲數(shù)據(jù)。在步驟604中,使用任一上述編程處理(或其他編程處理)將數(shù)據(jù)編程至所確定的塊中。在步驟606中,一次或多次讀取所編程的數(shù)據(jù)。因為在步驟604與步驟606之間可經(jīng)歷不可預知的時長,所以在這兩個步驟之間具有虛線,并且步驟606并非是響應于步驟604 而執(zhí)行的,而是響應于讀取該數(shù)據(jù)的請求或其他事件而執(zhí)行的。
圖15是描述用于對塊中的存儲器單元進行編程的編程處理的流程圖。圖15是圖 14的步驟604的一個實施例。在步驟632中,在編程之前(以塊為單位或以其他單位)擦除存儲器單元。在一個實施例中,通過在源極和比特線浮置時將P阱提升至擦除電壓持續(xù)足夠的一段時間并且將所選擇的塊的字線接地,擦除存儲器單元。因此,所選擇的存儲器單元的隧道氧化物層被施加強電場,并且隨著浮置柵極的電子通常通過i^owler-Nordheim隧穿機制被發(fā)射到襯底側(cè),所選擇的存儲器單元被擦除。隨著電子從浮置柵極被傳送到P阱區(qū)域,被選擇的存儲器單元的閾值電壓降低。可以對整個存儲器陣列、單獨的塊或另一單位的存儲器單元執(zhí)行擦除。也可以使用其他的擦除技術(shù)。在步驟634中,執(zhí)行軟編程以將被擦除的存儲器單元的閾值電壓分布變窄。由于該擦除處理,一些存儲器單元可處于比所需更深的擦除狀態(tài)。軟編程可施加編程脈沖以將被更深擦除的存儲器單元的閾值電壓移至仍處于該擦除狀態(tài)的有效范圍內(nèi)的較高閾值電壓。在步驟636中,如本文所述對塊中的存儲器單元編程。圖15所示處理的執(zhí)行可由狀態(tài)機、控制器或者狀態(tài)機與控制器的組合來指導。 例如,控制器可向狀態(tài)機發(fā)出命令和數(shù)據(jù)以對該數(shù)據(jù)編程。作為響應,狀態(tài)機可操作上述電路以執(zhí)行編程操作。
圖16是說明用于對連接至共同字線的存儲器單元編程的處理的一個實施例的流程圖。圖16在圖15的步驟636期間執(zhí)行。在一個實施例中,圖16的處理用于對連接至共同字線的所有存儲器單元編程。在其它實施例中,圖16的處理用于對連接至共同字線的存儲器單元的子集進行編程。因此,對于包括多個字線的存儲器塊,圖15的步驟636包括針對每個字線執(zhí)行圖16的處理一次或多次,以對塊中的存儲器單元編程。
在一個示例中,對存儲器單元根據(jù)包括如下的順序進行編程對連接至WLO的存儲器單元編程,然后對連接至WLl的存儲器單元編程,然后對連接至WL2的存儲器單元編程,等等。也可以使用其它順序。
在其它實施例中,對連接至第一字線的第一存儲器單元集合進行多階段編程處理的一部分階段,接著對連接至第二字線的第二存儲器單元集合進行該多階段編程處理的一部分階段,接著可對連接至第一字線的第一存儲器單元集合進行該多階段編程處理的一個或多個其它階段。在這樣的實施例中,在圖15的步驟636期間,針對該多階段編程處理的每個階段,每存儲器單元集合執(zhí)行圖16的處理一次。
在圖16的步驟660中,系統(tǒng)會讀取所存儲的、初始編程脈沖的幅值(在下文中稱為“Vpgm_VStart”,其可能基于前一編程值或默認值)的標識。如上所述,編程處理包括 每個脈沖的幅值增加的編程脈沖集合。例如,圖17示出包括編程脈沖集合的編程電壓的示例,其初始編程脈沖的幅值由Vpgm_VStart表示,而代表脈沖之間的增量的步長大小由 AVpgm表示。在步驟660中讀取第一脈沖Vpgm_VStart的幅值。在一個實施例中,根據(jù)一個或多個在先編程處理確定該幅值。如果這是首次進行編程,則可從寄存器讀取Vpgm_VStart 的默認值。初始編程脈沖的幅值Vpgm_VStart也可以存儲在閃速存儲器陣列、ROM或其他地方。
圖16的處理使用兩個不同的步長大小AVpgml和AVpgm2。在一個實施例中, AVpgml大于AVpgm2。通過這種方式,圖16的編程處理以較大的步長大小AVpgml開始, 使得編程的執(zhí)行較快。當預定數(shù)量的存儲器單元達到用于圖16所示處理的相應性能的中間結(jié)果或條件時,則針對圖16所示處理的剩余部分,所述處理切換至較小的步長大小以更加精確地繼續(xù)將存儲器單元編程至關(guān)于圖16所示處理的特定性能的目標條件。例如,圖18 示出包括編程脈沖集合的編程電壓,該編程脈沖集合具有初始編程脈沖幅值Vpgm_VStart, 并且在初始時具有步長大小AVpgml。在第6個脈沖之后,步長大小變?yōu)锳Vpgm2。在一個實施例中,如下所述,未預先確定步長大小發(fā)生改變時的脈沖。在預定數(shù)量的存儲器單元達到中間條件(從而引起步長大小發(fā)生改變)時的編程脈沖的值用于精細調(diào)整初始編程脈沖的幅值Vpgm_VStart,用于進一步編程。也就是說,存儲器單元的當前行為(例如,當該預定數(shù)量的存儲器單元達到中間條件時)用于設(shè)置初始編程脈沖的幅值以在不引起過度編程的情況下增加編程處理的速度。在一個實施例中,AVpgml等于AVpgm2。
回到圖16,在步驟662中,關(guān)于該特定頁面或字線加載數(shù)據(jù)。在步驟664中,將第一編程脈沖的幅值設(shè)置為在步驟660中讀取的Vpgm_VStart的值。另外,將編程步長大小 AVpgm設(shè)置為AVpgml,且編程計數(shù)器PC被初始化為零。在步驟666中,施加第一編程脈沖。如上所述,在一個實施例中,通過圖16所示處理進行編程的存儲器單元被連接至共同字線,從而在它們各自的控制柵極接收相同的編程脈沖。在編程脈沖之后,在步驟668中對照電壓Vvstart驗證存儲器單元。該電壓值Vvstart是根據(jù)器件特征選擇的,使得在一個 (或其他不同數(shù)量的)編程脈沖之后經(jīng)過Vvstart的任何存儲器單元被認為是快速存儲器單元。Vvstart的閾值電壓電平是上述中間條件的一個示例。如果不到N個被進行編程的存儲器單元具有大于Vvstart的閾值電壓(步驟670),則在步驟671中,確定編程計數(shù)器是否小于20 (或其他適當?shù)闹?。如果編程計數(shù)器不小于20,則已進行了太多的重復,且編程處理已失敗。如果編程計數(shù)器小于20(或其他適當?shù)闹?,則在步驟672中,編程電壓遞增Δ Vpgml,且編程計數(shù)器PC遞增1。注意,在一些實施例中,可能優(yōu)選將編程計數(shù)器增加不同于1的值,以反映更大的步長大小。例如,如果較大的步長大小是較小的步長大小的兩倍大,則循環(huán)計數(shù)器可增加2。在步驟672后,所述處理環(huán)回到步驟666并且施加下一編程脈沖。重復步驟666-672,直到至少N個存儲器單元具有大于Vvstart的閾值電壓。在一個實施例中,N的值可以是15個存儲器單元,在其它實施例中,N可以小于15(例如1或另一個數(shù))或大于15。在一些實現(xiàn)中,可使用器件特征或其它仿真來確定適當?shù)腘值。但是,N 的值可以是比進行編程的存儲器單元總數(shù)更小的數(shù)。
在步驟670中,當確定N個或更多存儲器單元具有大于Vvstart的閾值電壓時, 則所述處理進到步驟678,在該步驟678,將(前一)剛剛施加的編程脈沖的幅值存儲在寄存器、閃速存儲器位置中或其他地方,以用作用于后續(xù)編程的初始編程脈沖的幅值Vpgm_ vstart或者用于確定用于后續(xù)編程的初始編程脈沖的幅值Vpgm_VStart。在一個實施例中,將剛剛施加的編程脈沖的幅值用作用于后續(xù)編程的初始編程脈沖的幅值Vpgm_VStart。 在另一實施例中,將偏移量(正偏移量或負偏移量)加到剛剛施加的編程脈沖的幅值上以確定用于后續(xù)編程的初始編程脈沖的幅值Vpgm_VStart。在一些實施例中,在步驟678中存儲剛剛施加的編程脈沖的幅值,稍后施加偏移量。在其它實施例中,對剛剛施加的編程脈沖的幅值使用該偏移量,并且在步驟678中存儲該結(jié)果。在其它實施例中,關(guān)于用于后續(xù)編程的初始編程脈沖使用的值Vpgm_VStart基于剛剛施加的編程脈沖的幅值的數(shù)學函數(shù)或者剛剛施加的編程脈沖的序列號。所有上述這些實施例中,與剛剛施加的編程脈沖相關(guān)聯(lián)地確定用于后續(xù)編程的初始編程脈沖的幅值Vpgm_VStart?;氐綀D17,如果在第6個編程脈沖之后,確定出N個存儲器單元具有大于Vvstart的閾值電壓,則在步驟678中存儲第6個編程脈沖(V_at_VStart)的幅值或該脈沖的其它相關(guān)指標(帶偏移量會不帶偏移量)。
在步驟680中,編程計數(shù)器PC被重置為0,并且所述處理進到步驟692,此時,對照用于不同編程狀態(tài)的不同目標驗證電平,驗證所有的存儲器單元。如果所有存儲器單元經(jīng)驗證已達到其期望目標電平(步驟682),則所述處理完成并且狀態(tài)被設(shè)為“通過”(步驟 684)。在一些實施例中,如果并非所有存儲器單元都達到其期望目標,該編程處理也可能成功完成。例如,在一些實施例中,如果幾乎所有存儲器單元都達到其期望的目標(例如,不超過預定數(shù)量的存儲器單元來達到其目標),則該處理成功。未達到其目標的存儲器單元可在讀取操作期間使用糾錯來糾正,或者,如果太多的存儲器單元無法達到其目標,則數(shù)據(jù)可能被編程至存儲器陣列中的其它地方。
如果并非所有存儲器單元經(jīng)驗證(其很可能是首次執(zhí)行步驟692),則已達到各自的目標閾值電壓的存儲器單元被鎖定不進行進一步編程。在一個實施例中,如本領(lǐng)域所知的那樣,通過施加足夠大的比特線電壓(例如Vdd),鎖定存儲器單元不對其進一步編程。
在一個實施例中,Vvstart被設(shè)置為足夠低,使得當步驟670由于多于N個存儲器單元已達到Vvstart而通過且所述處理從步驟670進入步驟678時,在施加至少一個其它附加編程脈沖之前,沒有一個存儲器單元已達到其目標電平。通過這種方式,在任何存儲器單元被鎖定不進行編程之前,編程步長大小AVpgm從AVpgml變?yōu)锳Vpgn^。
如果并非所有存儲器單元經(jīng)驗證,則在步驟686中確定編程計數(shù)器是否小于 20(或另一適當?shù)闹?。如果編程計數(shù)器為20(或任何其他適當?shù)闹?或更大,則已執(zhí)行太多的步驟并且所述處理失敗(步驟694)。如果編程計數(shù)器仍小于20(或另一其他適當?shù)闹?或更大,則在步驟688中,編程電壓遞增AVpgm2且編程計數(shù)器遞增1。在步驟690中, 施加另一編程脈沖并且所述處理進入步驟692,對存儲器單元進行驗證。在一些實施例中, 在步驟688中編程計數(shù)器可遞增不同于1的值,以考慮步長大小的差異。注意,AVpgm2是比AVpgml更小的步長大小。因此,與步驟690-688的循環(huán)期間較慢的編程電壓Vpgm上升相比,在步驟666-672的循環(huán)期間,編程電壓Vpgm增加快得多。
在一個實施例中,在步驟680中不重置編程計數(shù)器。在這樣的實施例中,可改變步驟680中的測試,以確定編程計數(shù)器是否比高于20的數(shù)目小。
在一個示例中,圖16所示處理與圖6的全序列編程方案一起使用。在該實施例中, Vva可用作Vvstart,或者小于Vva的值可用作Vvstart。
存在以如下方式對第一存儲器單元集合進行操作的多階段編程處理,在該方式中,在對第一存儲器單元集合進行操作的多階段編程處理的階段之間,可對第二存儲器單元集合進行編程。但是,在一個實施例中,一旦針對一組存儲器單元開始圖16的處理,則在圖16的處理結(jié)束之前,不會對其他存儲器單元編程。
在步驟692的驗證操作和步驟606的讀取操作期間,選擇的字線連接至一電壓,該電壓的電平是針對每個讀取操作和驗證操作而特別指定的(例如,參見圖6的讀取比較電平Vra、Vrb和Vrc,圖6的驗證電平Vva、Vvb和Vvc),以確定所關(guān)注的存儲器單元的閾值電壓是否已達到這樣的電平。在施加字線電壓后,測量存儲器單元的傳導電流,以確定存儲器單元是否相應于施加至字線的電壓而導通。如果測量出該傳導電流大于特定值,則認為存儲器單元導通且施加至字線的電壓大于存儲器單元的閾值電壓。如果測量出傳導電流不大于該特定值,則認為存儲器單元未導通且施加至字線的電壓不大于存儲器單元的閾值電壓。
存在許多方式用于在讀取操作或驗證操作期間測量存儲器單元的傳導電流。在一個示例中,通過存儲器單元對感測放大器中的專用電容器放電或充電的速率,測量存儲器單元的傳導電流。在另一示例中,選中的存儲器單元的傳導電流使得(或無法使得)包括該存儲器單元的NAND串使相應的比特線放電。在一段時間后測量該比特線上的電壓, 以查看該比特線是否已被放電。應當注意,這里描述的技術(shù)能夠與本領(lǐng)域中已知的用于驗證/讀取的不同方法一起使用。在以下通過引用而全部并入本文的專利文獻中有更多關(guān)于驗證/讀取的信息(1)美國專利申請公布No. 2004/0057287 ; (2)美國專利申請公布 No. 2004/0109357 ; (3)美國專利申請公布No. 2005/0169082 ;以及(4)美國專利申請公布 No. 2006/0221692。上述擦除、讀取和驗證操作可根據(jù)本領(lǐng)域已知的技術(shù)執(zhí)行。因此,本領(lǐng)域技術(shù)人員可修改這里描述的很多細節(jié)。也可以使用本領(lǐng)域中已知的其他擦除、讀取和驗證技術(shù)。
圖19-26是說明用于實現(xiàn)圖15的步驟636、對存儲器單元編程、使用圖16的處理的不同實施例的流程圖。
圖19描述用于實現(xiàn)多階段編程處理(或者多個編程處理)的實施例,該多階段編程處理包括任一上述多階段編程處理。在圖19的實施例中,Vpgm_VStart在多階段編程處理的第一階段期間更新,并且同一多階段編程處理的其它階段使用來自第一階段的Vpgm_ Vstart0在步驟702中,執(zhí)行該多階段編程處理的第一階段,包括執(zhí)行根據(jù)圖16所示的處理。如上所述,執(zhí)行圖16的處理包括在圖16的步驟678中更新Vpgm_VStart的值。在步驟704,執(zhí)行該多階段編程處理的第二階段,包括執(zhí)行圖16的處理,其中用于初始編程脈沖的幅度Vpgm_VStart的值為(或者基于)在步驟702中更新和存儲的值。在執(zhí)行步驟704 時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692 (或者,在一些實施例中,進入步驟680)。通過這種方式,在步驟704的執(zhí)行期間不更新Vpgm_VStart。在步驟706中,執(zhí)行多階段編程處理的第三階段,包括執(zhí)行圖16的處理,其中用于初始編程脈沖的幅度Vpgm_VStart的值為 (或者基于)在步驟702中更新和存儲的值。在執(zhí)行步驟706時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟 670進入步驟692 (或者,在一些實施例中,進入步驟680)。通過這種方式,在步驟706的執(zhí)行期間不更新Vpgm_vstart。
在步驟708中,執(zhí)行多階段編程處理的第四階段,包括執(zhí)行圖16的處理,其中用于初始編程脈沖的幅度Vpgm_VStart的值為(或者基于)在步驟702中更新和存儲的值。在執(zhí)行步驟708時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692 (或者,在一些實施例中,進入步驟680)。通過這種方式,在步驟708的執(zhí)行期間不更新Vpgm_VStart。在圖19的流程圖中,在多階段編程處理中示出四個階段。但是,通過增加另外的步驟例如步驟708,圖19的處理能夠擴展至多于四個階段?;蛘撸ㄟ^僅僅執(zhí)行步驟702、704和706,圖19的處理能夠與具有僅僅三個階段的多階段編程處理一起使用。通過僅僅執(zhí)行步驟702和704,圖19的處理能夠與具有僅僅兩個階段的多階段編程處理一起使用。應當注意,在一些實施例中,可針對多階段編程處理的每個階段改變AVpgn^的值。在其它實施例中,每個階段使用相同的AVpgm2。類似地,在一些實施例中,可針對多階段編程處理的每個階段改變AVpgml的值。在其它實施例中,每個階段使用相同的AVpgrnl。
在另一實施例集合中,步驟702包括執(zhí)行圖16所示處理并且為Vpgm_VStart存儲新的值。但是,步驟704、706和708會執(zhí)行圖19A的處理,而不是圖16的處理。圖19A與圖16類似,但是不執(zhí)行步驟666、668、670、671、672、678和680。步驟660和662與圖16中的相同。在步驟664a中,Δ Vpgm設(shè)置為Δ Vpgm2,然后所述處理進入步驟690并且施加編程脈沖。步驟682、684、686、688、690、692和694與圖16中的相同。利用該實施例,由于早已找到最優(yōu)Vpgm_VStart,所以不存在用于搜索最優(yōu)Vpgm_VStart的時間。注意,在一些實施例中,可針對多階段編程處理的每個階段改變AVpgn^的值。在其它實施例中,每個階段使用相同的AVpgm2。
在一個示例中,圖19的處理與圖7的編程方案一起使用。在該實施例中,Vra或低于Vva的另一個值可用作Vvstart。當圖19的處理與圖8的編程方案一起使用時,可將低于Vvb’的值用作Vvstart。當將圖19的處理與圖9A-9C的編程方案一起使用時,在將數(shù)據(jù)編程至C狀態(tài)時可將Vva、低于Vva的值或低于Vvc的值用作Vvstart。當將圖19的處理與圖10A-10D的編程方案一起使用時,在將數(shù)據(jù)編程至B’時可將低于Vvb’的值用作 Vvstart0當將圖19的處理與圖11A-11B的編程方案一起使用時,在將數(shù)據(jù)編程至A*、B*或 C*時可將位于或低于Vvf的值用作Vvstart。當將圖19的處理與圖12A-12E的編程方案一起使用時,在將數(shù)據(jù)編程至S4’時可將低于Vvs4’的值用作Vvstart。當將圖19的處理與圖13A-13D的編程方案一起使用時,在將數(shù)據(jù)編程至A2、B2和C2時可將位于或低于VvA2 的值用作Vvstart。另外,也可使用其他用于Vvstart的值。這些Vvstart值也可與以下描述的其他實施例一起使用。
圖20描述用于實現(xiàn)多階段編程處理(或者多個編程處理)的實施例,該多階段編程處理包括任一上述多階段編程處理。在圖20的實施例中,Vpgm_VStart在多階段編程處理的每一階段期間更新。在步驟724中,執(zhí)行該多階段編程處理的第一階段,包括執(zhí)行圖16 的處理。如上所述,執(zhí)行圖16的處理包括在圖16的步驟678中更新Vpgm_VStart的值。 在步驟726中,執(zhí)行該多階段編程處理的第二階段,包括執(zhí)行圖16的處理,其中用于Vpgm_ vstart的值為(或者基于)在步驟724中更新和存儲的值。步驟726可包括更新圖16的步驟678中的Vpgm_VStart的值。在步驟728中,執(zhí)行多階段編程處理的第三階段,包括執(zhí)行圖16的處理,其中用于Vpgm_VStart的值為(或者基于)在步驟726中更新和存儲的值。 步驟728可包括在圖16的步驟678中更新Vpgm_VStart的值。在步驟730中,執(zhí)行多階段編程處理的第四階段,包括執(zhí)行圖16的處理,其中用于Vpgm_VStart的值為(或者基于)在步驟728中更新和存儲的值。步驟730可包括在圖16的步驟678中更新Vpgm_VStart的值。
在圖20的流程圖中,在多階段編程處理中示出四個階段。但是,通過增加與步驟 730類似的另外的步驟,圖20的處理能夠擴展至多于四個階段。或者,通過僅僅執(zhí)行步驟 724,726和728,圖20的處理能夠與具有僅僅三個階段的多階段編程處理一起使用。通過僅僅執(zhí)行步驟724和726,圖20的處理能夠與具有僅僅兩個階段的多階段編程處理一起使用。
圖21描述用于實現(xiàn)多編程處理的另一實施例。在圖21的實施例中,在對第一頁面編程時更新Vpgm_VStart,并且對以后頁面的編程使用在對第一頁面編程時確定的Vpgm_ vstart.在步驟760中,使用圖16的處理對第一數(shù)據(jù)頁面編程,包括在圖16的步驟678中更新Vpgm_VStart的值。在步驟762中,使用圖16的處理對第二頁面編程,其中用于Vpgm_ vstart的值為(或者基于)在步驟760中更新和存儲的值。在執(zhí)行步驟762時,修改圖16 的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692。通過這種方式,在步驟762的執(zhí)行期間不更新Vpgm_ vstart.在步驟764中,使用圖16的處理對第三頁面編程,其中用于Vpgm_VStart的值為(或者基于)在步驟760中更新和存儲的值。在執(zhí)行步驟764時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟 670進入步驟692。通過這種方式,在步驟764的執(zhí)行期間不更新Vpgm_VStart。如果需要對更多的數(shù)據(jù)頁面編程,則以與步驟764類似的步驟繼續(xù)所述處理,但是是對不同的數(shù)據(jù)頁面進行操作。如果僅僅對兩個數(shù)據(jù)頁面編程,則僅僅需要執(zhí)行步驟760和762。在另一實施例中,通過使用來自步驟760的Vpgm_VStart,步驟762、764和用于其它頁面的步驟基于圖19A的處理(而不是上述經(jīng)修改的圖16的版本)進行編程。
圖22描述用于實現(xiàn)多編程處理的另一實施例。在圖19的實施例中,在每個數(shù)據(jù)頁面的編程期間更新Vpgm_VStart。在步驟782中,使用圖16的處理對第一數(shù)據(jù)頁面編程, 包括在圖16的步驟678中更新Vpgm_VStart的值。在步驟784中,對第二數(shù)據(jù)頁面編程, 包括執(zhí)行圖16的處理,其中,用于Vpgm_VStart的值為(或者基于)在步驟782中更新和存儲的值。步驟784可包括在圖16的步驟678中更新Vpgm_VStart的值。在步驟786中, 對第三數(shù)據(jù)頁面編程,包括執(zhí)行圖16的處理,其中,用于Vpgm_VStart的值為(或者基于) 在步驟784中更新和存儲的值。步驟786可包括在圖16的步驟678中更新Vpgm_VStart 的值。如果需要對更多的數(shù)據(jù)頁面編程,則以與步驟786類似的步驟繼續(xù)所述處理,但是是對不同的數(shù)據(jù)頁面進行操作。如果僅僅對兩個數(shù)據(jù)頁面編程,則僅僅需要執(zhí)行步驟782和 784。
圖23描述用于實現(xiàn)多個編程處理的實施例。在圖23的實施例中,在對連接至第一字線的存儲器單元編程時更新Vpgm_VStart,且對其它字線上的存儲器單元的編程使用在對連接至第一字線的存儲器單元編程時確定的Vpgm_VStart。在步驟800中,使用圖16 的處理對連接至第一字線的存儲器單元編程,包括在圖16的步驟678中更新Vpgm_VStart 的值。在步驟802中,使用圖19A的處理或圖16的處理對連接至第二字線的存儲器單元編程,其中,用于Vpgm_VStart的值為(或者基于)在步驟800中更新和存儲的值。在使用圖 16的處理執(zhí)行步驟802時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692。通過這種方式,在步驟802的執(zhí)行期間不更新Vpgm_VStart。在步驟804中,使用圖19A的處理或圖16的處理對連接至第三字線的存儲器單元編程,其中,用于Vpgm_VStart的值為(或者基于)在步驟800中更新和存儲的值。在使用圖16的處理執(zhí)行步驟804時,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟 670進入步驟692。通過這種方式,在步驟804的執(zhí)行期間不更新Vpgm_VStart。如果需要對更多的字線編程,則以與步驟804類似的其他步驟繼續(xù)所述處理,但是是對不同的字線進行操作。如果僅僅對兩個字線編程,則僅僅需要執(zhí)行步驟800和802。
在一些實施例中,也可以針對偶數(shù)字線和奇數(shù)字線單獨確定初始編程脈沖賦值。 如果由于制造處理不同而導致偶數(shù)字線和奇數(shù)字線具有不同的編程特征,則該方案是有益的。
圖24描述用于實現(xiàn)多個編程處理的實施例。在圖24的實施例中,周期性更新 Vpgm_vstart0在更新之間,使用先前確定的Vpgm_vstart的值。在步驟820中,使用圖16 的處理對存儲器單元編程,包括在圖16的步驟678中更新Vpgm_VStart的值。在下次需要對數(shù)據(jù)編程時,在步驟822中,系統(tǒng)確定從存儲最近確定的Vpgm_VStart值時開始經(jīng)過的時間是否大于預定時間段。如果不大于預定時間段,則接下來的步驟824編程處理使用圖16 的處理,但不更新Vpgm_VStart。也就是說,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692?;蛘撸軌蛲ㄟ^執(zhí)行步驟19A的處理實施步驟824。如果在步驟822中確定從存儲最近確定的Vpgm_VStart值時開始經(jīng)過的時間大于預定時間段,則在步驟826中,使用圖16的方法執(zhí)行下一編程處理,包括在圖16的步驟678中更新Vpgm_VStart的值。
圖25描述用于實現(xiàn)多個編程處理的實施例。在該實施例中,在試驗編程期間,在執(zhí)行圖16的處理時更新Vpgm_VStart的值。在試驗編程中,不對用戶數(shù)據(jù)編程。相反,使用圖16的處理對啞元數(shù)據(jù)和/或啞元存儲器單元進行編程,并且在該處理期間更新Vpgm_ Vstart0接著,在編程用戶數(shù)據(jù)時,使用圖16的處理,其中,Vpgm_VStart為(或者基于)基于試驗編程的值,并且在對用戶數(shù)據(jù)編程期間不更新Vpgm_VStart。例如,在步驟840中, (通過使用圖16的處理)執(zhí)行試驗編程并且更新Vpgm_VStart。在步驟842中,使用圖16 的處理以及基于試驗編程的Vpgm_VStart對用戶數(shù)據(jù)編程。在步驟842期間不更新Vpgm_ vstart.也就是說,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692。在步驟844中,使用圖16 的處理以及基于試驗編程的Vpgm_VStart對用戶數(shù)據(jù)編程。在步驟844期間不更新Vpgm_ vstart.也就是說,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692。在不更新Vpgm_VStart的情況下,也可以執(zhí)行對用戶數(shù)據(jù)編程的其他步驟。在一些實施例中,在步驟842后可停止圖25 的處理。在可替選實施例中,可通過執(zhí)行圖19A的處理(包括不更新Vpgm_VStart)而不是對圖16所示處理的上述修改實現(xiàn)步驟842和844。
應當注意,本文描述的用于執(zhí)行多個編程處理的方法可用于執(zhí)行一個或多個多階段編程處理的多個階段。
圖26描述用于實現(xiàn)多階段編程處理(包括任一上述多階段編程處理)的另一個實施例。在圖26的實施例中,在多階段編程處理的第二階段中更新Vpgm_VStart。在步驟 846中,使用不更新Vpgm_VStart的圖16的處理執(zhí)行多階段編程處理的第一階段。也就是說,修改圖16的處理以省略步驟678,使得如果多于N個存儲器單元具有大于Vvstart的閾值電壓,則所述處理從步驟670進入步驟692?;蛘撸墒褂脠D19A的處理。在步驟848 中,使用圖16的處理執(zhí)行多階段編程處理的第二階段,其中更新Vpgm_VStart。在步驟850 中,使用圖16的處理執(zhí)行多階段編程處理的第三階段,其中,用于Vpgm_VStart的值為(或者基于)在步驟848期間執(zhí)行的步驟678中存儲的值。在一些實施例中,步驟890可包括更新Vpgm_vstart,而在其他實施例中,在步驟890中不會更新Vpgm_vstart。在圖26的處理中可添加類似步驟890的其他步驟。
通常,粗略/精細編程包括雙階段編程方式。第一階段為粗略階段,其中,重點在于快速編程,所需精度較低。第二階段為精細階段,其中,重點在于精確地編程。在一個實施例中,粗略階段包括編程至一個或多個粗略驗證電平,而精細階段包括編程至一個或多個精細驗證電平,其中,精細驗證電平對應于用于編程的目標電平。
上述圖IlA和圖IlB提供了使用兩個階段的粗略/精細編程的一個示例。在第一趟(圖11A)中實現(xiàn)粗略階段。在第二趟(圖11B)中實現(xiàn)第二階段。圖27和圖28包括的曲線示出使用僅僅一個階段的粗略/精細編程的實施例,在該一個階段期間,粗略階段和精細階段兩者均執(zhí)行。
圖27A、27B和27C示出快速存儲器單元的行為,該快速存儲器單元的閾值電壓在同一脈沖中通過粗略驗證電平和精細驗證電平兩者,使得該存儲器單元不進入精細模式。 圖28A、28B和28C示出參與粗略模式和精細模式兩者的較慢存儲器單元。圖27A和圖28A 示出施加到正被編程的存儲器單元控制柵極的編程脈沖Vpgm。注意,圖27A和圖28A彼此相鄰地示出編程脈沖,以使得曲線更易于讀懂。但是,在編程脈沖之間實際上具有脈沖,以允許實現(xiàn)驗證操作。圖27B和圖28B示出正被編程的存儲器單元的比特線電壓Vbl。圖27C 和圖28C示出正被編程的存儲器單元的閾值電壓。
關(guān)于圖27A、27B和27C,示出快速存儲器單元。響應于始于時間t0的第一脈沖, 存儲器單元的閾值電壓被提升至Vver3之上。在一個實施例中,驗證電平Vver3對應于圖 16的Vvstart。在tl與t2之間,存儲器單元的閾值電壓升至Vver2 (粗略驗證電平)和 Vverl (精細驗證電平)之上。在t2,比特線電壓會升至Vinhibit,以禁止(例如鎖定)不進行進一步編程。注意,在一個實施例中,Vver3可以是0. 2V至0. 3V,低于用于最低被編程狀態(tài)的Vver2。
關(guān)于圖28A至圖28C的較慢存儲器單元,在t2與t3之間的時間段之前,存儲器單元的閾值電壓不會升至Vver3之上。因此,在t3之前,編程脈沖遞增Δ Vpgml。如果在t3 時頁面中多于N個存儲器單元中的閾值電壓大于Vver3,則脈沖遞增值在t3變?yōu)椤?Vpgm2, 且后續(xù)脈沖的幅值增加Δ Vpgm2。在t3與t4之間,存儲器單元中的閾值電壓增加至Vver2 之上,因此,存儲器單元進入精細編程階段并且比特線在t4升至Vs (例如 .2-, 5V,或者另一合適的值)。在t4與t5之間,由于比特線電壓升高且由于Vpgm遞增值降低,閾值電壓上升變慢。但是,在t4與t5之間,閾值電壓未變得大于Vverl ;因此,閾值電壓已達到其目標電平并且比特線電壓被提升至Vinhibit以禁止在t5進一步編程。粗略/精細編程技術(shù)可與上述各種編程處理結(jié)合使用。
圖29提供用于編程的另一個實施例。圖29示出圖16所示處理的可替選實施例, 該實施例包括用于在該處理后期更加精確地確定后續(xù)Vpgm_VStart值的步驟922和步驟 924。圖29的步驟900-912與圖16的步驟660-672相同。步驟926、928、930、938、932和 934與圖16的步驟682、684、686、694、688和690相同。如果在圖29的步驟910中確定N 個或更多存儲器單元具有大于Vvstart的閾值電壓,則圖29的處理從步驟910進入步驟 914,并且將編程計數(shù)器PC重置為零。在步驟914之后,所述處理進入步驟920。圖29的步驟920與圖16的步驟692相同。在步驟920中驗證存儲器單元之后,步驟922包括確定是否有至少M個存儲器單元已達到它們的目標閾值電壓電平并且已被鎖定不進行其他編程。在一個實施例中,M可等于15個存儲器單元。在其他實施例中,可使用多于或少于15 個。如果至少M個存儲器單元未達到它們的閾值電壓電平且已被鎖定不進行其他編程,則所述處理繼續(xù)進入步驟926。但是,如果已鎖定M個存儲器單元,則記錄在最近期所施加的脈沖的脈沖幅值并且所述處理繼續(xù)進入步驟926。注意,系統(tǒng)僅在首次確定M個存儲器單元已達到它們的閾值電壓電平且已被鎖定不進行其他編程時記錄幅值(或其他數(shù)據(jù))。
步驟924的一個實施例包括將剛剛施加的編程脈沖的幅值存儲在寄存器、閃速存儲器位置中或其他地方,以用作初始編程脈沖的幅值或者確定初始編程脈沖的幅值Vpgm_VStart,用于后續(xù)編程。在一個實施例中,剛剛施加的編程脈沖的幅值被用作初始編程脈沖的幅值Vpgm_VStart,用于后續(xù)編程。在另一實施例中,將偏移量(正偏移量或負偏移量)加到剛剛施加的編程脈沖的幅值上以確定用于后續(xù)編程的初始編程脈沖的幅值 Vpgm_vstart0在一些實施例中,在步驟924中存儲剛剛施加的編程脈沖的幅值,稍后施加偏移量。在其它實施例中,對剛剛施加的編程脈沖的幅值使用該偏移量,并且在步驟924 中存儲該結(jié)果。在其它實施例中,通過使用數(shù)學公式或其他方式,使用剛剛施加的編程脈沖的幅值或剛剛施加的該脈沖的標識來確定用于后續(xù)編程的初始編程脈沖的幅值Vpgm_ vstarto 使用來自步驟924的脈沖幅值的一個優(yōu)勢在于如果AVpgm2小于AVpgmlJ^i 于步驟924中存儲的脈沖幅值,分辨率會更高。圖29的處理可與上述實施例、包括圖6-13 中示出的實施例一起使用。
以上描述提供了會基于先前的編程處理而動態(tài)調(diào)整初始編程脈沖的幅值的系統(tǒng)的示例。在一些實施例中,編程處理包括多個階段,其中,第一階段會包括設(shè)置用于后續(xù)階段的初始編程脈沖幅值。通過以最優(yōu)的初始幅值對后續(xù)階段編程,能夠縮短編程時間(較少的編程循環(huán))。再未如上所述動態(tài)設(shè)置初始編程電壓的一些在先的系統(tǒng)中,通常將初始編程電壓設(shè)置為比優(yōu)化值小很多,以為器件中的循環(huán)和編程速度變化留有余量。
在一些上述實施例中,在第一編程階段期間的編程脈沖之間,第一編程階段使用較大的步長大小(AVpgm)以節(jié)省編程時間。但是,為檢測用于后續(xù)階段的最優(yōu)的初始編程電壓Vpgm_VStart,因為通常以較小的大小對后續(xù)階段編程,所以期望較小的步長大小。使用較小的步長大小來確定Vpgm_VStart可提供更大的分辨率。但是,使用較小的步長大小也增加執(zhí)行編程所需的時間。
下面描述使得能夠關(guān)于Vpgm_VStart實現(xiàn)更高的分辨率的實施例,但沒有緣于使用較小的步長大小引起的全部時間損失。在一個實施例中,當所需最小數(shù)量的存儲器單元已經(jīng)過用于確定用于后續(xù)編程的Vpgm_VStart的第一驗證電平Vvstart (或另一條件)時, 可在與第一驗證電平不同的電平執(zhí)行一個或多個附加的(或可替選的)驗證操作(以測試一個或多個可替選的條件),以增加確定初始編程脈沖Vpgm_VStart時的分辨率。在一個示例中,在與Vvstart相差當前步長大小的一半(或另一比例)的第二驗證電平(例如, Vvstart-2)執(zhí)行一個附加驗證步驟,在這樣的情況下,能夠以分辨率AVpgm/2確定新的初始編程脈沖。在其他實施例中,可進行多于一個附加驗證操作,以進一步增加確定初始編程脈沖時的分辨率。該技術(shù)的一個優(yōu)勢在于為了獲取更高的分辨率,不必減小在第一階段編程期間的步長大小。僅有的編程時間增加是由一個或更多附加驗證操作引起的,這不會顯著增加編程時間。
圖30示出在直到系統(tǒng)檢測出要在圖16的步驟678中存儲的編程脈沖幅值之前響應于編程處理的第一階段的最初5個編程脈沖的閾值電壓分布移動的圖形表示。在圖30的示例中,在直到足夠數(shù)量的存儲器單元(例如,15個)已達到Vvstart之前,施加了 5個編程脈沖??梢钥闯?,由陰影區(qū)域表示的一些存儲器單元具有大于Vvstart的閾值電壓。在步驟678中,所施加的最末編程脈沖(第5個編程脈沖)的幅值存儲為Vpgm_VStart,或者用于計算Vpgm_vstarto 圖31示出在直到檢測出多于N個存儲器單元具有大于Vvstart的閾值電壓之前響應于編程處理的最初3個編程脈沖(脈沖1、脈沖2、脈沖3)的閾值電壓分布移動的圖形表示。在這種情況下,也出現(xiàn)多于N個存儲器單元具有大于Vvstart-2的閾值電壓。在這種情況下,執(zhí)行一個或多個附加的/可替選的驗證操作。例如,可在Vstart-2(可替選的結(jié)果)執(zhí)行一個附加的/可替選的驗證操作。當執(zhí)行該附加的/可替選的驗證操作時, 確定出多于N個存儲器單元具有大于Vvstart-2的閾值電壓。在該示例中,Vvstart比 Vvstart-2大Δ Vpgm/2 (但是也可能是其他值)。在這種情況下,用于確定用于后續(xù)階段的初始編程電壓Vpgm_VStart的編程脈沖幅值會從脈沖3的幅值下降Δ Vpgm/2 (但是也可能是其他值)。也就是說,存儲為下一初始編程脈沖幅值的值等于第三編程脈沖的幅值減去 Δ verify或者由第三編程脈沖的幅值減去Averify定義,其中,Δ verify被定義為兩個驗證電平Vvstart與Vvstart-2之間的差。
圖32提供關(guān)于與圖31所示示例相比編程較慢的存儲器單元的集合的另一示例。 在該示例中,在第三編程脈沖(脈沖3)之后,足夠數(shù)量的存儲器單元已經(jīng)過Vvstart,但是, 未有足夠數(shù)量的存儲器單元經(jīng)過Vvstart-2。因此,用于確定用于后續(xù)階段的初始編程電壓 Vpgm_vstart的編程脈沖幅值將是第二編程脈沖的幅值。
在其他實施例中,可使用多于一個附加的/可替選的驗證操作,以進一步增加確定初始編程脈沖時的分辨率。例如,系統(tǒng)能夠測試存儲器單元,以確定是否有多于N(或另一數(shù)目)個存儲器單元具有大于Vvstart-2和Vvstart-3的閾值電壓,其中,這兩個驗證電平Vvstart與Vvstart-2之間的差為AVpgm/3,且兩個驗證電平Vvstart-2與 Vvstart-3之間的差也為AVpgm/3。因此,兩個驗證電平Vvstart與Vvstart-3之間的差為 (2) * Δ Vpgm/3。如果使用X個附加的/可替選的驗證操作,則系統(tǒng)會在Vvstart、Vvstart-2、
Vvstart-3,......,Vvstart-X 處進行驗證,其中,Vvstart-X 與 Vvstart 相差(X) * Δ Vpgm/
(1+Χ)。
該技術(shù)的優(yōu)勢在于不必減小在第一階段編程期間的編程脈沖的步長大小??墒褂门c未采用該技術(shù)時相同的步長大小,從而第一階段的編程循環(huán)的數(shù)量不會增加。
在一些實施例中,Vvstart是要在第一階段期間編程的最低閾值電壓分布(例如, 分布Α)的驗證電平。在一些實施例中,Vvstart-2是要在第一階段期間編程的最低閾值電壓分布(例如,分布A)的驗證電平,而Vvstart小于最低閾值電壓分布的驗證電平。在其他實施例中,Vvstart和Vvstart-2可均小于第一分布的驗證電平。在一些實施例中,Vvstart 為要在第一階段期間編程的最低閾值電壓分布的粗略/精細編程中使用的最低驗證電平, 而Vvstart-2可以等于要在第一階段期間編程的最低閾值電壓分布的驗證電平。在檢測到初始編程幅值用于后續(xù)編程階段后,可以以相同的步長大小繼續(xù)編程,以將分布編程為等于或大于Vvstart-2。在一些情況下,可能期望在檢測到初始編程脈沖后降低步長大小,以允許更精確的編程。這里描述的技術(shù)可與第7,092,290號美國專利的處理結(jié)合。
上述關(guān)于使用附加的/可替選的驗證電平來增加分辨率的技術(shù)可與圖16的處理一起使用。圖33是描述要加入到圖16的處理中的流程圖。圖33的流程圖中示出的步驟代替圖16的步驟678。例如,在圖16的步驟670確定出N個或更多存儲器單元具有大于 Vvstart的閾值電壓之后,在圖33的步驟970繼續(xù)進行處理。在步驟970中,系統(tǒng)確定是否有P個或更多存儲器單元具有大于Vvstart-2的閾值電壓(其中,P可與N相同或不同)。 如果有P個或更多存儲器單元具有大于Vvstart-2的閾值電壓,則在步驟972中,用于確定下一個Vpgm_VStart的幅值為(施加的最后脈沖的幅值)_( Δ verify)。步驟972包括存儲(施加的最后脈沖的幅值)-(AVerify),如上文關(guān)于步驟678所述。或者,步驟972包括存儲(施加的最后脈沖的幅值)-(AVerify) + (偏移量)。在另一可替選方式中,系統(tǒng)可存儲(施加的最后脈沖的幅值)-(AVerify)的另一函數(shù),施加的最后脈沖的標識與Averify 的函數(shù),施加的最后脈沖的標識與Averify的函數(shù),或者以上的組合或子集。也可使用除 Averify外的值。在步驟972之后,在圖16的步驟692繼續(xù)進行處理。
如果在步驟970中確定出未有P個具有大于Vvstart-2的閾值電壓的存儲器單元,則在步驟974中,用于確定下一個Vpgm_VStart的幅值為施加的最后脈沖的幅值。步驟 974包括存儲施加的最后脈沖的幅值,如上文中關(guān)于步驟678所述。或者,步驟972包括存儲(施加的最后脈沖的幅值)+ (偏移量)。在另一個可替選方式中,系統(tǒng)可存儲所施加的最后脈沖的幅值、施加的最后脈沖的標識、施加的最后脈沖的標識的函數(shù)、或者以上的組合或子集的另一函數(shù)。在步驟974之后,在圖16的步驟692繼續(xù)進行處理。
類似地,圖29的步驟924可用圖33的處理代替。也就是說,如果已鎖定M個存儲器單元,則在步驟970繼續(xù)進行處理。在步驟972或974之后,在圖29的步驟926中繼續(xù)進行處理。
圖34是描述在系統(tǒng)執(zhí)行兩個額外驗證操作以測試兩個可替選結(jié)果時要被加入到圖16中的處理的流程圖。注意,可調(diào)整圖34的處理以測試多于兩個可替選結(jié)果。在圖34 的流程圖中示出的步驟代替圖16的步驟678。例如,在圖16的步驟670確定出N個或更多存儲器單元具有大于Vvstart的閾值電壓之后,在圖34的步驟980中繼續(xù)進行處理。在步驟980中,系統(tǒng)確定是否有P個或更多存儲器單元具有大于Vvstart-2的閾值電壓(其中,P可與N相同或不同)。如果確定出未有P個具有大于Vvstart-2的閾值電壓的存儲器單元,則在步驟982中,用于確定下一個Vpgm_VStart的幅值或脈沖為所施加的最后脈沖的幅值。步驟982包括存儲所施加的最后脈沖的幅值,如上文關(guān)于步驟678所述?;蛘?,步驟 982包括存儲(施加的最后脈沖的幅值)+ (偏移量)。在另一可替選方式中,系統(tǒng)可存儲所施加的最后脈沖的幅值、最后脈沖的標識或者最后脈沖的標識的函數(shù)的另一個函數(shù)。在步驟982之后,在圖16的步驟692繼續(xù)進行處理。
如果P個或更多存儲器單元具有大于Vvstart-2的閾值電壓,則在步驟984中,確定是否有T個或更多具有大于Vvstart-3的閾值電壓的存儲器單元。T的值可與N相同或不同。如果確定出未有T個具有大于Vvstart-3的閾值電壓的存儲器單元,則在步驟988 中,用于確定下一個Vpgm_VStart的幅值為(施加的最后脈沖的幅值)_ ( Δ verifyl)。步驟 986包括存儲(施加的最后脈沖的幅值)_ ( △ verifyl),如上文關(guān)于步驟678所述。或者,步驟988包括存儲(施加的最后脈沖的幅值)-(Averifyl) + (偏移量)。在另一可替選方式中,系統(tǒng)可存儲(施加的最后脈沖的幅值)_( Δ verifyl)、最后脈沖的標識與(Δ verifyl) 的函數(shù)、最后脈沖的標識與(Averifyl)的函數(shù)、或者以上的組合或子集的另一個函數(shù)。也可使用不同于Averifyl的值。在步驟988之后,在圖16的步驟692繼續(xù)進行處理。在該實施例中,Averifyl被定義為Vvstart與Vvstart-2之間的差。
如果確定出有T個或更多具有大于Vvstart-3的閾值電壓的存儲器單元, 則在步驟986中,用于確定下一個Vpgm_VStart的幅值為(施加的最后脈沖的幅值)-(AVerify2)。步驟986包括存儲(施加的最后脈沖的幅值)-(AVerify2),如上文關(guān)于步驟678所述?;蛘撸襟E986包括存儲(施加的最后脈沖的幅值)_(Averify2) + (偏移量)。在另一可替選方式中,系統(tǒng)可存儲(施加的最后脈沖的幅值)-(Averify2)、最后脈沖的標識與(AVerify2)的函數(shù)、最后脈沖的標識與(AVerify2)的函數(shù)、或者以上的組合或子集的另一個函數(shù)。在步驟986之后,在圖16的步驟692繼續(xù)進行處理。在該實施例中,Δ verify2被定義為Vvstart與Vvstart-3之間的差。
類似地,圖29的步驟924可用圖34的處理代替。也就是說,如果已鎖定M個存儲器單元,則在步驟980繼續(xù)進行處理。在步驟982、986或988之后,在圖29的步驟926中繼續(xù)進行處理。
圖33和圖34的處理可與圖29或圖16的處理一起使用,以實現(xiàn)任一上述編程方案。在圖33或圖34的處理可與圖29的處理一起使用以實現(xiàn)圖8A-圖8C的編程方案的一個示例中,第一編程階段可包括編程至閾值電壓Vvb’以及確定用于Vpgm_VStart的新的值。使用來自第一階段的Vpgm_VStart (具有偏移量),第二階段可使用圖29的處理以編程至A、B和C狀態(tài),如圖8C所示。
上文中提供了對本發(fā)明的具體描述以用于進行闡述和說明。但并非要窮舉或者將本發(fā)明限于所公開的精確形式。根據(jù)以上教導,可實現(xiàn)很多修改和變型。上述實施例被選取用于最佳地解釋本發(fā)明的原理及其實際應用,從而使得本領(lǐng)域技術(shù)人員能夠以不同的實施例并利用適于特定預期用途的不同變型來最佳地利用本發(fā)明。本發(fā)明的范圍要由所附權(quán)利要求來定義。
權(quán)利要求
1.一種對非易失性存儲器編程的方法,包括對多個非易失性存儲器元件執(zhí)行多階段編程處理的一個階段,該多階段編程處理將所述多個非易失性存儲器元件編程至一個或多個最終目標條件,所述一個階段包括使用第一編程脈沖集合將所述多個非易失性存儲器元件編程至一個或多個第一中間目標條件,執(zhí)行所述一個階段包括標識與實現(xiàn)特定結(jié)果相關(guān)的編程脈沖;關(guān)于所述非易失性存儲器元件的一個或多個可替選結(jié)果執(zhí)行一個或多個感測操作;如果所述感測操作確定出大于預定數(shù)量的非易失性存儲器元件實現(xiàn)了所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則存儲基于所述第一可替選結(jié)果和所標識的編程脈沖的標識;以及如果所述感測操作未確定出有足夠數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果,則存儲基于所標識的編程脈沖的標識;以及執(zhí)行所述多階段編程處理的附加階段,該附加階段包括施加第二編程脈沖集合,該第二編程脈沖集合的初始脈沖具有基于所存儲的標識而設(shè)置的幅值。
2.根據(jù)權(quán)利要求1所述的方法,其中所述一個階段還包括響應于實現(xiàn)所述特定結(jié)果,降低所述第一編程脈沖集合的脈沖之間的增量。
3.根據(jù)權(quán)利要求2或3所述的方法,其中所述標識與實現(xiàn)特定結(jié)果相關(guān)的編程脈沖包括執(zhí)行感測操作以確定是否有預定數(shù)量的非易失性存儲器元件已實現(xiàn)所述特定結(jié)果, 以及標識使得所述預定數(shù)量的非易失性存儲器元件已實現(xiàn)所述特定結(jié)果的特定編程脈沖, 該特定編程脈沖是與實現(xiàn)所述特定結(jié)果相關(guān)的編程脈沖;以及第一可替選結(jié)果與所述特定結(jié)果相差所述第一編程脈沖集合的脈沖之間的增量的一部分。
4.根據(jù)權(quán)利要求1、2或3所述的方法,其中所述特定結(jié)果為第一閾值電壓值;所述第一可替選結(jié)果為與所述特定結(jié)果相差所述第一編程脈沖集合的脈沖之間的增量的所述一部分的第二閾值電壓值;并且該方法還包括如果所存儲的標識基于所標識的編程脈沖,則將所述第二編程脈沖集合的初始脈沖的幅值設(shè)置為第一電平,并且,如果所存儲的標識基于所述第一可替選結(jié)果和所標識的編程脈沖,則將所述第二編程脈沖集合的初始脈沖的幅值設(shè)置為第二電平,該第二電平低于該第一電平。
5.根據(jù)任一前述權(quán)利要求所述的方法,其中所述多個非易失性存儲器元件連接至共同字線。
6.根據(jù)任一前述權(quán)利要求所述的方法,還包括在執(zhí)行所述一個階段之后且在執(zhí)行所述附加階段之前,在并非所述多階段編程處理的一部分的另一編程處理中執(zhí)行對其他非易失性存儲器元件的編程,所述其他非易失性存儲器元件不同于所述多個非易失性存儲器元件。
7.根據(jù)任一前述權(quán)利要求所述的方法,其中所述特定結(jié)果為足夠數(shù)量的非易失性存儲器元件達到一個或多個第一中間目標條件。
8.根據(jù)權(quán)利要求1-6中任一項所述的方法,其中所述特定結(jié)果為足夠數(shù)量的非易失性存儲器元件達到介于所述第一中間目標條件的條件。
9.根據(jù)權(quán)利要求1所述的方法,其中關(guān)于所述非易失性存儲器元件的一個或多個可替選結(jié)果執(zhí)行一個或多個感測操作包括關(guān)于所述第一可替選結(jié)果的測試,以及關(guān)于第二可替選結(jié)果的測試;該方法還包括如果所述感測操作確定出足夠的非易失性存儲器元件達到所述第二可替選結(jié)果,則基于所述第二可替選結(jié)果和所標識的編程脈沖存儲所述標識;所述特定結(jié)果為第一閾值電壓值;所述第一可替選結(jié)果為與所述特定結(jié)果相差所述第一編程脈沖集合的脈沖之間的增量的所述一部分的第二閾值電壓值;所述第二可替選結(jié)果為與所述特定結(jié)果相差所述第一編程脈沖集合的脈沖之間的增量的所述一部分的第三閾值電壓值;該方法還包括如果所存儲的標識基于所標識的編程脈沖,則將所述第二編程脈沖集合的初始脈沖的幅值設(shè)置為第一電平,并且,如果所存儲的標識基于所述第一可替選結(jié)果和所標識的編程脈沖,則將所述第二編程脈沖集合的初始脈沖的幅值設(shè)置為第二電平,如果所存儲的標識基于所述第二可替選結(jié)果和所標識的編程脈沖,則將所述第二編程脈沖集合的初始脈沖的幅值設(shè)置為第三電平;并且該第二電平低于該第一電平,且第三電平低于第二電平。
10.一種非易失性存儲器裝置,包括多個非易失性存儲器元件;以及與所述多個非易失性存儲器元件通信的一個或多個管理電路,所述一個或多個管理電路關(guān)于多個非易失性存儲器元件執(zhí)行多個編程處理,每個所述編程處理用于使用編程脈沖至少將所述非易失性存儲器元件的子集編程至相應的目標條件集合,對于至少所述編程處理的子集,所述一個或多個管理電路標識與實現(xiàn)相應編程處理的特定結(jié)果相關(guān)的編程脈沖并且在用于所述非易失性存儲器元件的一個或多個可替選結(jié)果處執(zhí)行一個或多個感測操作,如果所述一個或多個感測操作確定出多于預定數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則所述一個或多個管理電路使用所述第一可替選結(jié)果和編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程,如果所述一個或多個感測操作確定出少于所需數(shù)量的非易失性存儲器元件實現(xiàn)任一所述可替選結(jié)果,則所述一個或多個管理電路使用編程脈沖的標識,以調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程。
11.根據(jù)權(quán)利要求10所述的非易失性存儲器裝置,還包括第一字線,所述多個非易失性存儲器元件與該第一字線連接,所述一個或多個管理電路將編程脈沖施加至該第一字線,并且所述多個非易失性存儲器元件為多狀態(tài)閃速存儲器器件。
12.根據(jù)權(quán)利要求10或11所述的非易失性存儲器裝置,其中所述特定結(jié)果包括足夠數(shù)量的非易失性存儲器元件達到相應編程處理的中間條件;并且在每個所述編程處理的子集中,所述一個或多個管理電路響應于實現(xiàn)所述特定結(jié)果而降低編程脈沖之間的增量。
13.根據(jù)權(quán)利要求10、11或12所述的非易失性存儲器裝置,其中通過執(zhí)行感測操作以確定是否有預定數(shù)量的非易失性存儲器元件已實現(xiàn)所述特定結(jié)果以及標識緊挨著的前一編程脈沖,所述一個或多個管理電路標識與實現(xiàn)所述特定結(jié)果相關(guān)的編程脈沖;以及第一可替選結(jié)果與所述特定結(jié)果相差編程脈沖之間的編程增量的一部分。
14.根據(jù)權(quán)利要求10-13中任一項所述的非易失性存儲器裝置,其中所述特定結(jié)果為第一閾值電壓值;所述第一可替選結(jié)果為與所述特定結(jié)果相差脈沖之間的編程增量的所述一部分的第二閾值電壓值;并且如果所述感測操作未確定出多于預定數(shù)量的非易失性存儲器元件具有高于所述第二閾值電壓值的較高閾值電壓,則通過將后續(xù)編程處理的初始脈沖的幅值設(shè)置為第一電平, 所述一個或多個管理電路使用所述編程脈沖的標識來調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程;并且如果所述感測操作確定出多于預定數(shù)量的非易失性存儲器元件具有高于所述第二閾值電壓值的較高閾值電壓,則通過將后續(xù)編程處理的初始脈沖的幅值設(shè)置為第二電平,所述一個或多個管理電路使用所述第一可替選結(jié)果和所述編程脈沖的標識來調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程,該第二電平不同于該第一電平。
15.根據(jù)權(quán)利要求10-14中任一項所述的非易失性存儲器裝置,其中如果所述一個或多個感測操作確定出多于預定數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果的第二可替選結(jié)果,則所述一個或多個管理電路使用所述第二可替選結(jié)果和所述編程脈沖的標識來調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程。
16.根據(jù)權(quán)利要求10所述的非易失性存儲器裝置,其中通過基于所述第一可替選結(jié)果和所述編程脈沖的標識設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值,所述一個或多個管理電路使用所述第一可替選結(jié)果和所述編程脈沖的標識來調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程;通過基于所述編程脈沖的標識設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值,所述一個或多個管理電路使用所述編程脈沖的標識來調(diào)整用于所述非易失性存儲器元件的后續(xù)編程處理的編程;通過基于與實現(xiàn)所述特定結(jié)果相關(guān)的編程脈沖的電壓電平設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值,所述一個或多個管理電路基于所述編程脈沖的標識設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值;以及通過基于與實現(xiàn)所述特定結(jié)果相關(guān)的編程脈沖的電壓電平以及緣于第一可替選結(jié)果的校正因子設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值,所述一個或多個管理電路基于所述可替選結(jié)果和所述編程脈沖的標識設(shè)置用于后續(xù)編程處理的初始編程脈沖的幅值。
全文摘要
對于多個非易失性存儲器元件執(zhí)行多個編程處理。每個所述編程處理用于使用編程脈沖至少將非易失性存儲器元件的子集編程至相應的目標條件集合。至少所述編程處理的子集包括標識與實現(xiàn)相應編程處理的特定結(jié)果相關(guān)的編程脈沖并且在用于非易失性存儲器元件的一個或多個可替選結(jié)果處執(zhí)行一個或多個感測操作、如果所述一個或多個感測操作確定出多于預定數(shù)量的非易失性存儲器元件實現(xiàn)所述一個或多個可替選結(jié)果的第一可替選結(jié)果,則基于所述第一可替選結(jié)果和編程脈沖的標識,調(diào)整后續(xù)編程處理。如果所述一個或多個感測操作確定出少于所需數(shù)量的非易失性存儲器元件實現(xiàn)任一所述可替選結(jié)果,則基于編程脈沖的標識,調(diào)整后續(xù)編程處理。
文檔編號G11C16/10GK102203874SQ200980142518
公開日2011年9月28日 申請日期2009年9月29日 優(yōu)先權(quán)日2008年10月24日
發(fā)明者格里特·簡·海明克 申請人:桑迪士克股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
深州市| 历史| 黄梅县| 濮阳市| 运城市| 赤水市| 江源县| 新乡县| 河曲县| 江西省| 和田市| 绵竹市| 明星| 二连浩特市| 通化县| 洮南市| 冕宁县| 资兴市| 安新县| 太原市| 威信县| 大理市| 泸水县| 大名县| 瑞金市| 两当县| 高碑店市| 锦州市| 永修县| 边坝县| 道真| 闻喜县| 阿合奇县| 晴隆县| 阿坝县| 沙坪坝区| 砀山县| 射阳县| 永宁县| 旌德县| 吉首市|