JP5536245B2 - アナログメモリセルのための改良型プログラミング及び消去機構 - Google Patents

アナログメモリセルのための改良型プログラミング及び消去機構 Download PDF

Info

Publication number
JP5536245B2
JP5536245B2 JP2013024933A JP2013024933A JP5536245B2 JP 5536245 B2 JP5536245 B2 JP 5536245B2 JP 2013024933 A JP2013024933 A JP 2013024933A JP 2013024933 A JP2013024933 A JP 2013024933A JP 5536245 B2 JP5536245 B2 JP 5536245B2
Authority
JP
Japan
Prior art keywords
memory cells
group
programming
memory
analog
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.)
Active
Application number
JP2013024933A
Other languages
English (en)
Other versions
JP2013157076A (ja
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.)
Apple Inc
Original Assignee
Apple Inc
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
Priority claimed from US13/356,694 external-priority patent/US9009547B2/en
Priority claimed from US13/471,483 external-priority patent/US8649200B2/en
Application filed by Apple Inc filed Critical Apple Inc
Publication of JP2013157076A publication Critical patent/JP2013157076A/ja
Application granted granted Critical
Publication of JP5536245B2 publication Critical patent/JP5536245B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing 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/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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Description

本発明は、一般的に、データ記憶装置に関するもので、より詳細には、アナログメモリセルをプログラミング及び消去するための方法及びシステムに関する。
関連出願の相互参照:本願は、同日に出願された“Programming and erasure schemes for analog memory cells”と題する米国特許出願(代理人管理番号1007−1130.1)に関するもので、その開示は、参考としてここに援用される。本願は、2011年5月16日に出願された米国プロビジョナル特許出願第61/486,341号の利益を主張するもので、その開示は、参考としてここに援用される。又、本願は、2012年1月24日に出願された米国特許出願第13/356,694号の一部継続出願であり、その開示は、参考としてここに援用される。
フラッシュメモリのような多数の形式のメモリ装置は、データを記憶するためにアナログメモリセルのアレイを使用している。各アナログメモリセルは、セルに記憶されるデータを表わす電荷又は電圧のようなあるレベルの所与の物理量を保持する。この物理量のレベルは、記憶値又はアナログ値とも称される。例えば、フラッシュメモリでは、各アナログメモリセルは、ある量の電荷を保持する。考えられるアナログ値の範囲は、典型的に、1つ以上のデータビット値を表わすプログラミング状態に各々対応する領域へと分割される。データは、望ましいビット(1つ又は複数)に対応する公称アナログ値を書き込むことによりアナログメモリセルに書き込まれる。
シングルレベルセル(SLC)装置と一般的に称されるあるメモリ装置は、単一の情報ビットを各メモリセルに記憶し、即ち各メモリセルは、2つのあり得るメモリ状態をとるようにプログラムすることができる。マルチレベルセル(MLC)装置とも称される高密度装置は、メモリセル当たり2つ以上のビットを記憶し、即ち3つ以上のあり得るメモリ状態をとるようにプログラムすることができる。
フラッシュメモリ装置は、例えば、ベズ氏等の“Introduction to Flash Memory”、Proceedings of the IEEE、第91巻、第4号、2003年4月、第489−502ページに掲載されており、これは、参考としてここに援用される。マルチレベルフラッシュセル及び装置は、例えば、エイタン氏等の“Multilevel Flash Cell and their Trade-Offs”、IEEE International Electron Devices Meeting (IEDM)、ニューヨーク州ニューヨーク、第169−172ページに掲載されており、これも、参考としてここに援用される。この論文は、共通接地、DINOR、AND、NOR及びNANDセルのような多数の種類のマルチレベルフラッシュセルを比較している。
エイタン氏等は、ニトライドリードオンリメモリ(NROM)と称される別の形式のアナログメモリセルを、“Can NROM, a 2-bit, Trapping Storage NVM Cell, Give a Real Challenge to Floating Gate Cells?”、Proceedings of the 1999 International Conference on Solid State Devices and Materials (SSDM)、日本国東京、1999年9月21−24日、第522−524ページに掲載しており、これも、参考としてここに援用される。又、NROMセルは、マーヤン氏等により、“A 512 Mb NROM Flash Data Storage Memory with 8 MB/s Data Rate”、Proceedings of the 2002 IEEE International Solid-State Circuit Conference (ISSCC) 2002、カリフォルニア州サンフランシスコ、2002年2月3−7日、第100−101ページにも掲載されており、これも、参考としてここに援用される。他の規範的形式のアナログメモリセルは、フローティングゲート(FG)セル、強誘電RAM(FRAM)セル、磁気RAM(MRAM)セル、電荷トラップフラッシュ(CTF)及び相変化RAM(PRAM、相変化メモリPCMとも称される)セルである。FRAM、MRAM及びPRAMセルは、例えば、キム及びコー氏により、“Future Memory Technology including Emerging New Memories”、Proceedings of the 24 International Conference on Microelectronics (MIEL)、ニース、セルビア及びモンテネグロ、2004年5月16−19日、第1巻、第377−384ページに掲載されており、これも、参考としてここに援用される。
アナログメモリセルをプログラミングし及び消去するための種々の方法がこの技術で知られている。あるメモリ装置は、パルスのシーケンスをメモリセルのグループに印加し、そしてそのシーケンス中にプログラムされた値を検証する反復プログラミング・検証(P&V)プロセスを使用している。
ここに述べる本発明の一実施形態は、データを記憶する方法を提供する。この方法は、アナログメモリセルのグループを、このグループ内のメモリセルにパルスのシーケンスを印加する反復プロセスを遂行することにより、各アナログ値にセットすることを含む。その反復プロセスの間に、反復プロセスの進行が評価され、その評価された進行に応答して反復プロセスのパラメータが変更される。その変更されたパラメータに基づいて反復プロセスが続けられる。
ある実施形態では、反復プロセスを遂行することは、グループ内のメモリセルをデータでプログラミングすることを含む。他の実施形態では、反復プロセスを遂行することは、メモリセルのグループを消去することを含む。
一実施形態において、進行を評価することは、パルスの結果として各意図されたアナログ値に到達するグループ内のメモリセルの数が規定数を越えるのを評価することを含む。パラメータを変更することは、シーケンス内の次々のパルス間の振幅又は期間の増加分を変更することを含む。別の実施形態では、進行を評価することは、グループ内のメモリセルに印加されるパルスの数が規定数を越えるのを評価することを含む。
ここに開示する実施形態において、パラメータを変更することは、シーケンス内の次々のパルス間の振幅又は期間の増加分、シーケンス内の初期パルスの振幅又は期間、メモリセルのグループに印加されるプログラミングワードライン電圧、メモリセルの別のグループに印加される非選択のワードライン電圧、後続パルスを受け取るように意図されたグループ内のメモリセルに印加されるプログラミングビットライン電圧、及び/又は後続パルスの受け取りが禁止されるよう意図されたグループ内のメモリセルに印加される禁止ビットライン電圧を変更することを含む。
パラメータを変更することは、後続パルスを受け取るように意図されたグループ内のメモリセルに印加されるプログラミングビットライン電圧に基づいて、メモリセルのグループに印加されるプログラミングワードライン電圧、メモリセルの別のグループに印加される非選択のワードライン電圧、又は後続パルスの受け取りが禁止されるよう意図されたグループ内のメモリセルに印加される禁止ビットライン電圧を変更することを含む。
更に、本発明の一実施形態によれば、メモリ及び記憶回路を備えたデータ記憶のための装置が提供される。メモリは、複数のアナログメモリセルを含む。記憶回路は、アナログメモリセルのグループを、このグループ内のメモリセルにパルスのシーケンスを印加する反復プロセスを遂行することにより、各アナログ値にセットし、その反復プロセスの進行を評価し、その評価された進行に応答して反復プロセスのパラメータを変更し、その変更されたパラメータに基づいて反復プロセスの遂行を続けるように構成される。
又、本発明の一実施形態によれば、複数のアナログメモリセルを備えたメモリにデータを記憶する方法も提供される。この方法は、メモリセルのグループに適用される反復プロセスのパラメータを、メモリ内のメモリセルの少なくとも1つに記憶された1つ以上のデータ値に基づいてセットすることを含む。そのセットされたパラメータに基づいてメモリセルのグループにおいて反復プロセスが遂行される。
一実施形態では、反復プロセスを遂行することは、グループ内のメモリセルをデータでプログラミングすることを含む。別の実施形態では、反復プロセスを遂行することは、メモリセルのグループを消去することを含む。一実施形態では、パラメータをセットすることは、メモリセルの少なくとも1つから別の記憶位置へデータ値をコピーし、そのコピーされたデータ値に基づいてパラメータをセットすることを含む。
別の実施形態では、パラメータをセットすることは、反復プロセスにおける次々のパルス間の振幅又は期間の増加分、反復プロセスにおける初期パルスの振幅又は期間、メモリセルのグループに印加されるプログラミングワードライン電圧、メモリセルの別のグループに印加される非選択のワードライン電圧、後続パルスを受け取るように意図されたグループ内のメモリセルに印加されるプログラミングビットライン電圧、及び/又は後続パルスの受け取りが禁止されるよう意図されたグループ内のメモリセルに印加される禁止ビットライン電圧をセットすることを含む。
本発明の一実施形態によれば、メモリ及び記憶回路を備えたデータ記憶のための装置が提供される。メモリは、複数のアナログメモリセルを含む。記憶回路は、メモリセルのグループに適用される反復プロセスのパラメータを、そのメモリ内のメモリセルの少なくとも1つに記憶された1つ以上のデータ値に基づいてセットし、そのセットされたパラメータに基づきメモリセルのグループにおいて反復プロセスを遂行するように構成される。
更に、本発明の一実施形態によれば、複数のアナログメモリセルを備えたメモリにデータを記憶する方法も提供される。この方法は、プログラミング動作を遂行することによりメモリセルの1つ以上をデータでプログラミングすることを含む。プログラムされたメモリセルにおいて遂行されるプログラミング動作の性能尺度が評価される。プログラミング動作を遂行した後、プログラミング動作の性能尺度に基づいて消去動作が構成され、その構成された消去動作を遂行することによりメモリのメモリセルのグループが消去される。
ある実施形態では、性能尺度を評価することは、プログラミング動作の期間を測定することを含む。一実施形態では、消去動作を構成することは、消去動作における次々の消去パルス間の振幅又は期間の増加分、消去動作における初期パルスの振幅又は期間、消去動作中に印加されるワードライン電圧、及び/又は消去動作中に印加されるビットライン電圧をセットすることを含む。
一実施形態において、性能尺度を推定することは、プログラムされたメモリセルに印加されるプログラミング及び消去サイクルの数を決定することを含み、消去動作を構成することは、プログラミング及び消去サイクルの決定された数に基づいて消去動作を構成することを含む。
又、本発明の一実施形態によれば、メモリ及び記憶回路を備えたデータ記憶装置も提供される。メモリは、複数のアナログメモリセルを含む。記憶回路は、プログラミング動作を遂行することによりメモリセルの1つ以上をデータでプログラムし、プログラムされたメモリセルにおいて遂行されるプログラミング動作の性能尺度を評価し、プログラミング動作を遂行した後に、プログラミング動作の性能尺度に基づいて消去動作を構成し、そしてその構成された消去動作を遂行することによりメモリのメモリセルのグループを消去するように構成される。
更に、本発明の一実施形態によれば、複数のアナログメモリセルを備えたメモリにデータを記憶する方法が提供される。この方法は、メモリセルのグループに、そのグループのメモリセルを各アナログ値にセットする動作を適用することを含む。メモリセルのグループに適用された動作の性能尺度が評価される。前記動作の評価された性能尺度に基づき、そのグループを含むメモリ内のメモリブロックの健全状態が評価される。
前記動作を適用することは、グループ内のメモリセルをデータでプログラミングすることを含む。或いは又、動作を適用することは、メモリセルのグループを消去することを含んでもよい。一実施形態において、性能尺度を評価することは、動作の期間を測定することを含む。別の実施形態では、健全状態を評価することは、性能尺度が規定の範囲からずれるときにメモリブロックを不良とマークすることを含む。更に別の実施形態では、健全状態を評価することは、性能尺度が規定の範囲からずれるときにメモリブロックを、付加的な評価を受けるものとマークすることを含む。更に別の実施形態では、健全状態を評価することは、メモリブロックにおける後続データ記憶に対する記憶構成を性能尺度に基づいてセットすることを含む。
更に、本発明の一実施形態によれば、メモリ及び記憶回路を備えたデータ記憶装置が提供される。メモリは、複数のアナログメモリセルを含む。記憶回路は、メモリセルのグループに、そのグループのメモリセルを各アナログ値にセットする動作を適用し、そのメモリセルのグループに適用された動作の性能尺度を評価し、そしてグループを含むメモリ内のメモリブロックの健全状態を、前記動作の評価された性能尺度に基づいて評価するように構成される。
本発明は、添付図面を参照したその実施形態の以下の詳細な説明から充分に理解されるであろう。
本発明の一実施形態によるメモリシステムを概略的に示すブロック図である。 本発明の一実施形態によるアナログメモリセルのアレイを概略的に示す回路図である。 本発明の一実施形態によりアナログメモリセルのグループをプログラミングするプロセスを概略的に示す図である。 本発明の一実施形態によりアナログメモリセルのグループを消去するプロセスを概略的に示す図である。 本発明の一実施形態によりアナログメモリセルのグループをプログラミング又は消去する方法を概略的に示すフローチャートである。 本発明の一実施形態によりアナログメモリセルのグループをプログラミングする方法を概略的に示すフローチャートである。 本発明の一実施形態によりアナログメモリセルのグループを消去する方法を概略的に示すフローチャートである。 本発明の一実施形態によりアナログメモリセルのグループの健全レベルを評価する方法を概略的に示すフローチャートである。
概略
フラッシュメモリのようなメモリ装置では、典型的に、記憶されるビット値を表わす各アナログ値にメモリセルをプログラミングすることにより、アナログメモリセルにデータが記憶される。各ビット値は、ある領域のアナログ値で表された各プログラミングレベル又はプログラミング状態に対応する。
あるメモリ装置では、アナログメモリセルのグループが反復プログラミング・検証(P&V)プロセスにおいてプログラムされ、このプロセスでは、グループ内のメモリセルにプログラミングパルスのシーケンスが印加される。メモリセルのアナログ値は、そのシーケンス中に、各アナログ値を、プログラムされるメモリセルの意図されたプログラミング状態に対応する各検証スレッシュホールドと比較することにより、検証される。アナログ値がまだ各検証スレッシュホールドより低いメモリセルについてのみプログラミングが続けられる。他のメモリセルは、正しくプログラムされたと仮定され、後続プログラミングパルスを受け取ることが禁止される。典型的に、フラッシュメモリセルのブロックが反復消去プロセスを使用して消去され、このプロセスでは、ブロック内のメモリセルに消去パルスのシーケンスが印加される。メモリセルのアナログ値は、そのシーケンス中に、それらを消去スレッシュホールドと比較することにより照合される。
以下に述べる本発明の実施形態は、フラッシュセルのようなアナログメモリセルをプログラミング及び消去するための改良された方法及びシステムを提供する。従来のプログラミング及び消去機構に比して、ここに開示する技術は、短いプログラミング及び消去時間と、高いプログラミング及び消去信頼性とを達成する。
ある実施形態では、記憶回路(例えば、メモリセル又はメモリコントローラに結合された読み取り/書き込み回路)は、反復プログラミング又は消去プロセスの進行を評価し、そしてその評価された進行に基づいて反復プロセスの1つ以上のパラメータを変更する。この進行は、例えば、意図されたアナログ値に到達するメモリセルのパーセンテージに関して、又はメモリセルに印加されるプログラミング又は消去パルスの数に関して評価される。
種々のプログラミング又は消去パラメータは、例えば、次々のプログラミング又は消去パルス間の振幅又は期間の増加分、初期パルス振幅、或いはプログラミング又は消去プロセス中に印加される種々のワードライン又はビットライン電圧のような進行状態に基づいて変更することができる。
別の実施形態では、記憶回路は、プログラミング又は消去プロセスの1つ以上のパラメータを、1つ以上のメモリセルに記憶されたデータに基づいてセットする。他の実施形態では、記憶回路は、プログラミング動作の性能に基づいて消去動作の1つ以上のパラメータを構成する。例えば、記憶回路は、あるメモリブロック内のページに対する平均プログラミング時間を測定し、そしてその測定されたプログラミング時間に基づいてそのブロックに対する消去動作を構成する。
更に別の実施形態では、記憶回路は、メモリブロックの健全状態を、ブロックにおいて遂行されるプログラミング又は消去動作の性能尺度に基づいて(例えば、プログラミング又は消去時間に基づいて)評価する。
システムの説明
図1は、本発明の一実施形態によるメモリシステム20を概略的に示すブロック図である。システム20は、種々のホストシステム及び装置、例えば、コンピューティング装置、セルラーホン又は他の通信ターミナル、取り外し可能なメモリモジュール(「USBフラッシュドライブ」とも称される)、ソリッドステートディスク(SSD)、デジタルカメラ、音楽及び他のメディアプレーヤ、及び/又はデータが記憶され検索される他のシステム又は装置に使用することができる。
システム20は、メモリセルアレイ28にデータを記憶するメモリ装置24を備えている。メモリアレイは、複数のメモリブロック34を含む。各メモリブロック34は、複数のアナログメモリセル32を含む。本特許出願及び特許請求の範囲において、「アナログメモリセル」という語は、電圧又は電荷のような物理的パラメータの連続的なアナログ値を保持するメモリセルを説明するために使用される。アレイ28は、例えば、NAND、NOR及びチャージトラップフラッシュ(CTF)フラッシュセル、相変化RAM(PRAM、相変化メモリPCMとも称される)、ニトライドリードオンリメモリ(NROM)、強誘電RAM(FRAM)、磁気RAM(MRAM)、及び/又はダイナミックRAM(DRAM)セルのような任意の種類のアナログメモリセルを含む。
セルに記憶される電荷レベル、及び/又はセルに書き込まれ及びセルから読み出されるアナログ電圧又は電流は、ここでは、総体的に、アナログ値、アナログ記憶値又は記憶値と称される。記憶値は、例えば、スレッシュホールド電圧、又は他の適当な種類の記憶値を含む。システム20は、プログラミングレベルとも称される各プログラミング状態をとるようにセルをプログラミングすることによりアナログメモリセルにデータを記憶する。プログラミング状態は、あり得る状態の限定セットから選択され、そして各プログラミング状態は、ある公称記憶値に対応する。例えば、3ビット/セルMLCは、8つのあり得る公称記憶値の1つをセルに書き込むことにより、8つのあり得るプログラミング状態の1つをとるようにプログラムすることができる。
メモリ装置24は、読み取り/書き込み(R/W)ユニット36を備え、これは、メモリ装置に記憶するためのデータをアナログ記憶値に変換してメモリセル32へ書き込む。別の実施形態では、R/Wユニットは、変換を行わず、電圧サンプル、即ちセルに記憶するための記憶値が与えられる。アレイ28からデータを読み取るときに、R/Wユニット36は、メモリセル32の記憶値を、1ビット以上の解像度をもつデジタルサンプルへと変換する。データは、典型的に、ページと称されるグループにおいてメモリセルへ書き込まれそしてメモリセルから読み取られる。ある実施形態では、R/Wユニットは、セルに1つ以上の負の消去パルスを印加することによりセル32のグループを消去することができる。消去は、典型的に、全メモリブロックで行われる。
メモリ装置24へのデータの記憶及びそこからのデータの検索は、メモリコントローラ40によって行われる。メモリコントローラは、メモリ装置24と通信するためのインターフェイス44と、種々のメモリ管理機能を実行するプロセッサ48とを備えている。メモリコントローラ40は、メモリ装置に記憶するためのデータを受け容れ及びメモリ装置から検索されるデータを出力するためにホスト52と通信する。メモリコントローラ40及び特にプロセッサ48は、ハードウェアで具現化される。或いは又、メモリコントローラは、適当なソフトウェアを実行し、又はハードウェアとソフトウェア要素を組み合わせて実行するマイクロプロセッサを含んでもよい。
図1の構成は、単に概念を明瞭にするためにのみ示された規範的なシステム構成である。他の適当なメモリシステム構成も使用できる。本発明の原理を理解する上で必要のない要素、例えば、種々のインターフェイス、アドレス回路、タイミング及びシーケンシング回路、並びにデバッグ回路は、明瞭化のために図から省略されている。
図1の例は、単一のメモリ装置24を示すが、システム20は、メモリコントローラ40によりコントロールされる複数のメモリ装置を備えてもよい。図1に示す規範的なシステム構成において、メモリ装置24及びメモリコントローラ40は、2つの別々の集積回路(IC)として具現化される。しかしながら、別の実施形態では、メモリ装置及びメモリコントローラは、単一のマルチチップパッケージ(MCP)又はシステムオンチップ(SoC)内の個別の半導体ダイに一体化されて、内部バスにより相互接続されてもよい。又、それとは別に、メモリコントローラ回路のある部分又は全部が、メモリアレイが配置される同じダイに存在してもよい。更に、それとは別に、メモリコントローラ40の機能のある部分又は全部がソフトウェアで具現化されて、ホストシステムのプロセッサ又は他の要素により実行されてもよい。ある実施形態では、ホスト44及びメモリコントローラ40は、同じダイに製造されてもよいし、又は同じ装置パッケージ内の個別のダイに製造されてもよい。
ある実施形態では、メモリコントローラ40は、ここに述べる機能を実行するようにソフトウェアでプログラムされる汎用プロセッサを備えている。ソフトウェアは、例えば、ネットワークを経て電子的形態でプロセッサへダウンロードされるか、それに加えて又はそれとは別に、磁気、光学又は電子メモリのような非一時的有形媒体に与えられ及び/又は記憶されてもよい。
アレイ28の規範的構成において、メモリセル32は、複数の行及び列に配列され、各メモリセルは、フローティングゲートトランジスタより成る。各行のトランジスタのゲートは、ワードラインにより接続され、そして各列のトランジスタのソースは、ビットラインにより接続される。メモリアレイは、典型的に、複数のページ、即ち同時にプログラムされ及び読み取られるメモリセルのグループへと分割される。ページは、時々、セクターへと細分化される。ある実施形態では、各ページは、アレイの全行より成る。別の実施形態では、各行(ワードライン)を2つ以上のページへ分割することができる。例えば、ある装置では、各行が2つのページに分割され、その一方は、奇数順のセルより成り、そしてその他方は、偶数順のセルより成る。
典型的に、メモリコントローラ40は、データをページ単位でプログラムするが、消去はメモリブロック34全体で行う。典型的に、必ずしもそうでないが、1メモリブロックは、ほぼ106個のメモリセルであり、一方、1ページは、ほぼ103−104個のメモリセルである。
以下の説明は、アレイ28のメモリセル32をプログラミング及び消去するための多数の規範的な技術について述べる。ここに開示する技術は、メモリコントローラ40及び/又はR/Wユニット36により実行することができる。明瞭化のために、以下の説明は、メモリ装置においてR/Wユニット36により遂行されるプログラミング及び消去プロセスについて言及する。しかしながら、一般的には、ここに開示するプログラミング及び消去技術を構成する種々のタスクは、メモリコントローラとR/W回路との間で適当な仕方で分割することもできるし、又はそれら要素の任意の1つにより遂行することもできる。従って、本特許出願及び特許請求の範囲では、メモリコントローラ40及びR/W回路36は、一緒に、ここに開示する技術を実行する記憶回路と称される。
図2は、本発明の一実施形態によりアレイ28を具現化するのに使用できるアナログメモリセルのアレイを概略的に示す回路図である。この実施形態において、アレイは、ワードライン64及びビットライン68により接続される複数のフラッシュメモリセル(フローティングゲートトランジスタとして図示された)を備えている。
ある実施形態において、R/W回路36は、反復プログラミング・検証(P&V)プロセスを使用して、所与のワードライン64におけるメモリセルのグループ(ワードラインにおける全てのメモリセル、奇数順のセル又は偶数順のセル)をデータでプログラムする。そのようなプロセスにおいて、ユニット36は、プログラミングパルスのシーケンスをセルのグループに印加し、そして各パルスの後にセルのスレッシュホールド電圧を検証する。ユニット36は、意図されたスレッシュホールド電圧に到達したセルのその後のプログラミングを禁止して、意図されたスレッシュホールド電圧にまだ到達していないセルにのみ後続パルスが選択的に印加されるようにする。
P&Vプロセス中に、ユニット36は、種々のワードライン64及びビットライン68を適当な電圧でバイアスする。図2の例は、3本のワードライン64を示しており、そのうちの中間のワードラインがプログラミングされる。ここに示す例では、P&Vプロセスの間にメモリセル72をプログラミングすべき(その意図されたスレッシュホールド電圧に到達していないために)特定の瞬間が示されている。同時に、同じワードラインのメモリセル80は、その意図されたスレッシュホールド電圧に既に到達しているために、プログラミングされるのを禁止すべきである。他のワードラインにおけるメモリセル、例えば、メモリセル80は、プログラミングされるべきでない。
適当なメモリセルをプログラミングするために、R/Wユニット36は、中間のワードラインを、Vpgmと示されたプログラミング電圧でバイアスし、そしてブロック内の他のワードラインを、Vpass_pgmと示されたパス電圧でバイアスする。ユニット36は、プログラミングされるべきビットラインを、Vbitline_pgmと示されたビットラインプログラミング電圧でバイアスし、そしてプログラミングすることが禁止されるべきビットラインを、Vbitline_inhibitと示されたビットライン禁止電圧でバイアスする。
図3Aは、本発明の一実施形態によりアナログメモリセル28のグループをプログラミングするプロセスを概略的に示す図である。この例は、データでプログラミングされる2ビット/セルメモリセルのグループ(例えば、ワードラインにおける全てのメモリセル、奇数順のセル又は偶数順のセル)を示している。各セルは、4つのスレッシュホールド電圧分布84A・・・84Dに対応する4つのあり得るプログラミングレベル(プログラミング状態とも称される)のうちの1つにプログラムすることができる。各プログラミングレベルは、各2ビットデータ値に対応する。負のスレッシュホールド電圧に対応するプログラミングレベル84Aは、消去レベルとしても働く。プログラミングが禁止される前に、グループ内の全てのメモリセルが消去レベルにセットされる。
ある実施形態では、R/Wユニット36は、上述したように、反復P&Vプロセスを使用してグループ内のメモリセルをプログラムする。所与のプログラミングパルスの後にセルスレッシュホールド電圧を検証するときに、ユニット36は、セルスレッシュホールド電圧を1つ以上の検証スレッシュホールドと比較する。この例では、ユニット36は、プログラミングレベル84B・・・84Dに各々対応する3つの検証スレッシュホールド88A・・・88Cを使用する。あるプログラミングレベルにプログラミングされることが意図されたあるメモリセルのスレッシュホールド電圧がそのプログラミングレベルの検証スレッシュホールドを越えると、メモリセルは、後続プログラミングパルスを受け取ることが禁止される。この禁止は、典型的に、セルのビットライン電圧をVbitline_pgmからVbitline_inhibitへ切り換えることにより遂行される。
(この例は、明瞭化のために4つのプログラミングレベル全部を同時にプログラムするプログラミングプロセスを示す。ある実施形態では、ユニット36は、メモリセルのグループを2つの段階において2ページでプログラムし、即ち1つの段階は、2つのプログラミングレベルを使用して第1ページをプログラムし、そして第2の段階は、4つ全部のプログラミングレベルを使用して第2ページをプログラムする。)
図3Bは、本発明の一実施形態によりアナログメモリセル28のグループを消去するプロセスを概略的に示す図である。その消去プロセスは、典型的に、全ブロック34に同時に適用される。消去プロセスでは、ユニット36は、消去パルスのシーケンスをメモリセルに印加し、それを消去スレッシュホールド92と比較することによりセルスレッシュホールド電圧を検証する。この消去手順は、ブロック内の全メモリセル(又はある実施形態では、コントロールされた規定数のセル)がスレッシュホールド92より低いスレッシュホールド電圧をもつまで続けられる。
図3A及び3Bの実施形態は、2ビット/セルメモリセルのプログラミング及び消去について言及するものである。しかしながら、ここに開示する技術は、望ましい数及び構成のプログラミングレベルをもつ他の適当な形式のメモリセルにも適用することができる。
プログラミング/消去の進行に基づくプログラミング/消去反復プロセスパラメータ
の適応型変更
ある実施形態において、アナログメモリセルのグループをプログラミング又は消去するとき、R/Wユニット36は、反復プログラミング又は消去プロセスの進行を評価する。その進行があるスイッチング条件を満足するとき、ユニット36は、プロセスのパラメータの1つ以上を変更する。
ユニット36は、進行を種々の仕方で評価し、即ち色々の種類のスイッチング条件を定義しそして評価する。例えば、ユニット36は、グループ内のメモリセルの規定のパーセンテージがそれらの意図されたスレッシュホールド電圧に到達したかどうかチェックする(例えば、プログラミング動作について適切な検証スレッシュホールドを越えたか、又は消去動作について消去スレッシュホールドより下がったか)。消去動作では、ユニット36は、第1の消去パルスの後、又は2つの消去パルスの後に充分に消去されたセルの数を評価する。別の実施形態では、ユニット36は、反復プロセスの2つ以上の異なる検証段階からのセルカウントを結合する。
この種の条件を使用するとき、R/Wユニット36は、データがプログラミングレベルの間でスクランブルされるか、さもなければ、等分配されると仮定する。別の実施形態では、R/W回路は、プログラミング動作を開始する前に各プログラミングレベルにおけるセルの数を決定するか、又はこの情報を他の適当な仕方で得る。
別の例のスイッチング条件は、規定数の反復を遂行した後に、即ち規定数のプログラミング又は消去パルスを印加した後にプログラミング又は消去パラメータを変更することである。更に、それとは別に、R/Wユニットは、プログラミング又は消去に関連したあるパラメータの絶対値を決定することによりスイッチング条件を評価してもよい。
種々の実施形態において、R/Wユニットは、スイッチング条件が満足されたときに、反復プログラミング又は消去プロセスの適当なパラメータを変更する。パラメータは、例えば、(インクリメンタルステップパルスプログラミングISPPとも称される)シーケンスにおける次々のプログラミング/消去パルス間の振幅又は期間、及び/又はシーケンスにおける初期パルスの振幅又は期間の増加分を含む。
それに加えて又はそれとは別に、プログラミング動作において、変更されるパラメータは、非選択のワードラインに印加されるパス電圧(Vpass_pgm)、選択されたワードラインに印加されるワードライン電圧(Vpgm)、プログラムされたセルに印加されるビットライン電圧(Vbitline_pgm)、禁止されたセルに印加されるビットライン電圧(Vbitline_inhibit)、及び/又は他の適当なパラメータを含む。更に、それに加えて又はそれとは別に、消去動作では、変更されるパラメータは、例えば、消去されるブロックにおいて印加されるワードライン電圧及び/又はビットライン電圧を含む。
規範的実施形態において、ユニット36は、意図されたプログラミングレベルに到達したグループ内のメモリセルの数を評価する。そのパーセンテージが規定値を越えると、ユニット36は、次々のパルス間の振幅増加分を変更する。
別の規範的実施形態において、ユニット36は、大きな消去パルス電圧で消去プロセスを開始する。首尾良く消去されたメモリセルのパーセンテージがある規定値に到達したときに、ユニット36は、後続パルスのための消去パルス電圧を減少する。
別の実施形態において、R/Wユニット36は、バイアス電圧の1つ以上(例えば、Vbitline_pgm、Vbitline_inhibit、Vpass_pgm)をVpgmの関数として変更する。この種のプログラミングは、ユニット36がワードライン及び/又はビットライン電圧を最適化し、そしてメモリセルを効率的にプログラムできるようにする。
電圧の最適化は、例えば、(隣接ワードライン及び/又は隣接ビットライン上の)隣接メモリセルからのプログラム妨害を最小にするように実行することができる。ある実施形態では、最適化は、Vpgmの絶対値の関数として遂行される。
図4は、本発明の一実施形態によりアナログメモリセル32のグループをプログラミング又は消去する方法を概略的に示すフローチャートである。この方法は、R/Wユニット36が、初期化ステップ96において、メモリセルのグループに反復プログラミング又は消去プロセスを開始することで始まる。
プログラミング又は消去プロセス中のある時点で、ユニット36は、進行評価ステップ100において、プロセスの進行を評価する。ユニット36は、完了チェックステップ104において、プロセスが完了したかどうかチェックする。ユニット36は、例えば、全てのセルがそれらの意図されたスレッシュホールド電圧に到達したかどうかチェックする。プロセスが完了した場合には、この方法は、終了ステップ108において終了となる。
さもなければ、ユニット36は、スイッチング条件評価ステップ112において、規定のスイッチング条件(前記ステップ100で評価された進行に基づく)を満足するかどうかチェックする。反復プロセスの進行がスイッチング条件を満足する場合には、ユニット36は、パラメータ変更ステップ116において、反復プロセスのパラメータの1つ以上を変更する。次いで、この方法は、前記ステップ100へループバックし、ユニット36は、反復プロセスの進行を追跡し続ける。
データに基づくプログラミングプロセスパラメータの適応型セッティング
ある実施形態において、R/Wユニット36は、1つ以上のメモリセルに現在記憶されているデータに基づいて反復プログラミング又は消去プロセスの1つ以上のパラメータをセットする。上述したパラメータ(例えば、ISPP、シーケンスにおける初期パルスの振幅又は期間、及び/又はワードライン又はビットライン電圧)のような適当なプログラミング又は消去プロセスパラメータをこのようにセットすることができる。
例えば、メモリセルのグループ(例えば、ページ)をプログラミングするときに、ユニット36は、プログラムされたグループと同じワードラインに記憶されたデータに基づいて、及び/又は1つ以上の他の(例えば、隣接する)ワードラインに記憶されたデータに基づいて、プログラミングパラメータをセットする。例えば、ユニット36は、プログラムされたグループのワードラインの上又は下の隣接ワードラインにおける対応セルのデータ(又はスレッシュホールド電圧)に基づいてVbitline_pgmをセットする。ある実施形態では、ユニット36は、先ず、プログラミングパラメータをセットするのに使用されるデータを読み取り、そしてそれをプログラミングの前に別の位置に記憶する。
別の例として、ブロックを消去するときに、ユニット36は、消去プロセスの1つ以上のパラメータを、ブロックに記憶されたデータに基づいてセットする。例えば、ユニット36は、消去プロセスのパラメータを、消去前にブロック内のプログラムされるワードラインの数の関数としてセットする。規範的実施形態において、ユニット36は、ブロックの全てのワードラインがプログラムされる場合には1つの消去電圧(Verase)を、そしてワードラインの一部分しかプログラムされない場合には異なる消去電圧をセットする。ある実施形態では、プログラムされたワードラインの数に関する指示がメモリコントローラ40によりユニット36に与えられる。他の実施形態では、ユニット36は、メモリコントローラとは独立して、プログラムされたワードラインの数を決定する。ある実施形態では、ユニット36は、ブロック内のプログラムされたワードラインの数に基づき、プログラミングプロセスの1つ以上のパラメータを変更する。
更に別の例として、ブロックが、高いスレッシュホールド電圧へプログラムされる多数のメモリセルを含む場合には、ユニット36は、消去パルスの初期振幅を高い値にセットし、そしてその逆のことも言える。
図5は、本発明の一実施形態によりアナログメモリセル32のグループをプログラミングする方法を概略的に示すフローチャートである。図5の説明は、メモリセルのグループにおけるプログラミングプロセスを言及するが、消去プロセスにも同様の方法を使用することができる。
この方法は、読み出しステップ120において、ユニット36が1つ以上のメモリセルからデータを読み出すことで始まる。読み取られるメモリセルは、プログラムされるべきメモリセルのグループに属してもよいし、属さなくてもよい。ステップ120で読み取られたデータに基づいて、ユニット36は、パラメータセッティングステップ124において、プログラミングプロセスの1つ以上のパラメータをセットする。次いで、ユニット36は、プログラミングステップ128において、セットされたパラメータを有する反復プログラミングプロセスを使用して、メモリセルのグループにデータを記憶する。
プログラミングプロセスの性能に基づく消去プロセスパラメータのセッティング
ある実施形態において、ユニット36は、メモリセルのグループに適用されるべき消去動作を、メモリに適用されるプログラミング動作の性能に基づいて構成する。典型的に、必ずしもそうでないが、所与のセルグループ(例えば、ブロック)に対する消去動作は、そのグループ内の1つ以上のメモリセル(例えば、ブロック内のページ)に適用されるプログラミング動作の性能に基づいて構成される。
この技術は、プログラミング動作(典型的に正電圧プログラミングパルスの印加)に対するメモリセルの応答が、消去動作(典型的に負電圧プログラミングパルスの印加)に対するメモリセルの応答を表わすという事実に基づくものである。ユニット36は、プログラミング動作の適当な種類の性能尺度を評価し、そしてその評価された性能尺度に基づいて消去動作を適当な仕方で構成する。
例えば、ユニット36は、プログラミング動作のプログラミング時間(期間)、例えば、動作の開始と完了との間に経過する時間、又はプログラミング動作において遂行されるP&Vの繰り返し数を測定する。次いで、ユニット36は、その測定されたプログラミング時間に基づいて消去動作を構成する。規範的実施形態において、ユニット36は、意図されたプログラミングレベルに到達したセルの数又はパーセンテージを反復回数の関数として測定する。換言すれば、ユニット36は、首尾良くプログラムされたセルの数の累積分布関数(CDF)を評価する。
ユニット36は、プログラミング動作の性能、例えば、消去パルスの初期の大きさ又は期間、次々の消去パルス間の増加分、及び/又は消去中に印加されるビットライン又はワードライン電圧に基づいて適当な消去パラメータをセットすることにより消去動作を構成する。
図6は、本発明の一実施形態によりアナログメモリセル32のグループを消去する方法を概略的に示すフローチャートである。図6の説明は、メモリセルの同じグループのプログラミング及び消去を言及する。しかしながら、一般的に、ここに開示する技術は、別のグループをプログラミングする性能に基づいてメモリセルのあるグループを消去するのに使用することができる。2つのグループは、メモリセルを共通に有してもよいし、そうでなくてもよい。
この方法は、プログラミングステップ132において、ユニット36がプログラミング動作(例えば、P&Vプロセス)を遂行することによりメモリセルのグループをデータでプログラミングすることで始まる。ユニット36は、性能推定ステップ136において、プログラミング動作の性能尺度を推定する。例えば、ユニット36は、プログラミング時間(プログラミング期間)又は他の適当な性能尺度を推定する。
プログラミング動作の推定された性能尺度に基づいて、ユニット36は、消去構成ステップ140において、メモリセルのグループに適用されるべき消去動作を構成する。ユニット36は、消去ステップ144において、その構成された消去動作を使用してメモリセルのグループを消去する。
ある実施形態において、ユニット36又はメモリコントローラ40は、他の性能尺度に基づき、例えば、ブロックに適用したプログラミング及び消去(P/E)サイクルの数に基づき、あるメモリブロックに対する消去動作を構成する。1つの実施形態では、プログラミングの後に、ユニット36又はメモリコントローラ40は、ブロックの年齢の何らかの指示を記録し、そして消去の前にこの支持を検索し、消去動作を構成する。
プログラミング又は消去性能に基づく健全レベル評価
ある実施形態において、ユニット36は、メモリセルのグループに適用される反復プログラミング又は消去プロセスの性能を測定し、そしてその測定された性能に基づいてメモリセルの健全状態を評価する。以下の説明は、プログラミング又は消去プロセスの期間を測定することを言及するが、ここに開示する技術は、他の適当な性能尺度で使用することもできる。
一実施形態において、ユニット36は、メモリセルの異なるグループのプログラミング又は消去時間を測定する。規定の範囲からずれた(例えば、ある下限スレッシュホールドより低い及び/又はある上限スレッシュホールドより高い)プログラミング又は消去時間は、メモリセルの健全性が悪く且つ信頼性が低いか又は間もなく欠陥となることを示す。
ある実施形態において、メモリコントローラ40は、ブロック(又はブロック内のメモリセルグループ)のプログラミング又は消去時間が規定の範囲からずれる場合に、所与のメモリブロックを不良又は疑わしいとマークする。不良ブロックは、典型的に、サービスから除外される。疑わしいブロックは、典型的に、不良とマークする前に付加的な評価を受ける。メモリコントローラは、ブロックに対する平均プログラミング又は消去時間、ブロックに対する最大又は最小プログラミング又は消去時間、或いはブロックに関連したプログラミング又は消去時間の他の適当な尺度に基づいて、ブロックを不良又は疑わしいとマークする。
一実施形態において、メモリコントローラは、意図されたプログラミングレベルに到達したセルの数又はパーセンテージを、反復回数、又は首尾良くプログラムされたセルの数のCDFの関数として測定し、そしてこの評価をブロックの健全性の尺度として使用することができる。
ある実施形態では、メモリコントローラは、ブロックのP&Vプロセスが首尾良く完了しても、プログラミング時間基準に基づいてブロックを不良とマークする。ある実施形態では、メモリコントローラは、プログラミング時間が規定範囲からずれるブロックについてのみ、P&Vに続いて検証技術を適用する。この目的で使用できるP&V後の検証技術の例は、前記米国特許出願第13/356,694号に述べられている。
消去動作において、ユニット36又はメモリコントローラ40は、ブロックの評価された健全状態に基づき種々のアクションをとる。例えば、R/Wユニット又はメモリコントローラは、ブロックの評価された健全状態に基づいてブロックにおける後続プログラミングコマンド(例えば、エラー修正コード及び/又はセル当たりのビット数)に対する記憶構成をセットする。
図7は、本発明の一実施形態によりアナログメモリセルのグループの健全レベルを評価する方法を概略的に示すフローチャートである。この方法は、R/Wユニット36又はメモリコントローラ40が、動作ステップ148において、メモリセルのグループにプログラミング又は消去動作を適用することで始まる。ユニット36又はメモリコントローラ40は、性能推定ステップ152において、プログラミング又は消去動作の性能尺度を推定する。性能尺度は、例えば、プログラミング又は消去動作の期間を含む。ユニット36又はコントローラ40は、健全性評価ステップ156において、性能尺度に基づきメモリセルのグループの健全性状態を評価する。
上述した実施形態は、例示に過ぎず、本発明は、特に図示して以上に述べたものに限定されないことが明らかであろう。むしろ、本発明の範囲は、上述した種々の特徴の組み合わせ及びサブ組み合わせと、従来技術に開示されておらず且つ以上の説明を読んだときに当業者に明らかとなるその変更及び修正の両方を包含する。本特許出願に参照として援用された文書は、本出願の一体的部分とみなすべきであるが、本明細書に明示的又は暗示的になされた定義と矛盾するようにそれら援用文書に用語が定義されている限り、本明細書の定義のみを考慮すべきである。
20:メモリシステム
24:メモリ装置
28:メモリセルアレイ
32:メモリセル
34:メモリブロック
36:読み取り/書き込み(R/W)ユニット
40:メモリコントローラ
44:インターフェイス
48:プロセッサ
52:ホスト

Claims (20)

  1. データを記憶する方法において、
    アナログメモリセルの第1のグループからデータを読み出す段階と、
    アナログメモリセルの第2のグループを、そのグループ内のメモリセルにパルスのシーケンスを印加する反復プロセスを遂行することにより、各アナログ値にセットする段階と、
    反復プロセス中に、反復プロセスの進行を評価し、その評価された進行に応答し、前記アナログメモリセルの第1のグループの読み出したデータに基づく反復プロセスのパラメータを変更する段階と、
    前記変更されたパラメータに基づいて反復プロセスの遂行を続ける段階と、
    を備えた方法。
  2. 前記反復プロセスを遂行することは、前記グループ内のメモリセルをデータでプログラミングすることを含む、請求項1に記載の方法。
  3. 前記反復プロセスを遂行することは、前記メモリセルのグループを消去することを含む、請求項1に記載の方法。
  4. 前記進行を評価することは、パルスの結果として各意図されたアナログ値に到達した前記グループ内のメモリセルの数が規定数を越えるのを評価することを含む、請求項1に記載の方法。
  5. 前記パラメータを変更することは、前記シーケンス内の次々のパルス間の振幅又は期間の増加分を変更することを含む、請求項4に記載の方法。
  6. 前記進行を評価することは、前記グループ内のメモリセルに印加されるパルスの数が規定数を越えるのを評価することを含む、請求項1に記載の方法。
  7. 前記パラメータを変更することは、前記シーケンス内の次々のパルス間の振幅又は期間の増加分、前記シーケンス内の初期パルスの振幅又は期間、前記メモリセルのグループに印加されるプログラミングワードライン電圧、前記メモリセルの別のグループに印加される非選択のワードライン電圧、後続パルスを受け取るように意図された前記グループ内のメモリセルに印加されるプログラミングビットライン電圧、及び後続パルスの受け取りが禁止されるように意図された前記グループ内のメモリセルに印加される禁止ビットライン電圧より成る形式のグループから選択された少なくとも1つのパラメータ形式を変更することを含む、請求項1に記載の方法。
  8. 前記パラメータを変更することは、後続パルスを受け取るように意図された前記グループ内のメモリセルに印加されるプログラミングビットライン電圧に基づいて、前記メモリセルのグループに印加されるプログラミングワードライン電圧、前記メモリセルの別のグループに印加される非選択のワードライン電圧、又は後続パルスの受け取りが禁止されるよう意図された前記グループ内のメモリセルに印加される禁止ビットライン電圧を変更することを含む、請求項1に記載の方法。
  9. 複数のアナログメモリセルを含むメモリと、
    前記アナログメモリセルの第1のグループからデータを読み出し、前記アナログメモリセルの第2のグループを、そのグループ内のメモリセルにパルスのシーケンスを印加する反復プロセスを遂行することにより、各アナログ値にセットし、前記反復プロセスの進行を評価し、その評価された進行に応答し、前記アナログメモリセルの第1のグループから読み出したデータに基づく前記反復プロセスのパラメータを変更し、その変更されたパラメータに基づいて前記反復プロセスの遂行を続けるように構成された記憶回路と、
    を備えた装置。
  10. 前記反復プロセスは、前記グループ内のメモリセルをデータでプログラムするプログラミングプロセスを含む、請求項9に記載の装置。
  11. 前記反復プロセスは、前記メモリセルのグループを消去する消去プロセスを含む、請求項9に記載の装置。
  12. 前記記憶回路は、パルスの結果として各意図されたアナログ値に到達した前記グループ内のメモリセルの数が規定数を越えるのを評価することにより進行を評価するように構成された、請求項9に記載の装置。
  13. 前記記憶回路は、前記シーケンス内の次々のパルス間の振幅又は期間の増加分を変更することによりパラメータを変更するよう構成される、請求項12に記載の装置。
  14. 前記記憶回路は、前記グループ内のメモリセルに印加されるパルスの数が規定数を越えるのを評価することにより進行を評価するように構成された、請求項9に記載の装置。
  15. 前記記憶回路は、前記シーケンス内の次々のパルス間の振幅又は期間の増加分、前記シーケンス内の初期パルスの振幅又は期間、前記メモリセルのグループに印加されるプログラミングワードライン電圧、前記メモリセルの別のグループに印加される非選択のワードライン電圧、後続パルスを受け取るように意図された前記グループ内のメモリセルに印加されるプログラミングビットライン電圧、及び後続パルスの受け取りが禁止されるように意図された前記グループ内のメモリセルに印加される禁止ビットライン電圧より成る形式のグループから選択された少なくとも1つのパラメータ形式を変更するように構成された、請求項9に記載の装置。
  16. 前記記憶回路は、後続パルスを受け取るように意図された前記グループ内のメモリセルに印加されるプログラミングビットライン電圧に基づいて、前記メモリセルのグループに印加されるプログラミングワードライン電圧、前記メモリセルの別のグループに印加される非選択のワードライン電圧、又は後続パルスの受け取りが禁止されるよう意図された前記グループ内のメモリセルに印加される禁止ビットライン電圧を変更するように構成された、請求項9に記載の装置。
  17. 複数のアナログメモリセルを含むメモリと、
    前記複数のアナログメモリセルの第1のグループからデータを読み出し、前記複数のアナログメモリセルの第1のグループから読み出されたデータに基づくプログラミング動作を遂行することにより前記複数のアナログメモリセルの第2のグループをデータでプログラムし、そのプログラムされたメモリセルにおいて遂行されるプログラミング動作の性能尺度を評価し、プログラミング動作を遂行した後、プログラミング動作の性能尺度に基づいて消去動作を構成し、その構成された消去動作を遂行することによりメモリのメモリセルのグループを消去するように構成された記憶回路と、
    を備えたデータ記憶装置。
  18. 前記記憶回路は、前記プログラミング動作の期間を測定することにより性能尺度を評価するように構成される、請求項17に記載の装置。
  19. 前記記憶回路は、消去動作における次々の消去パルス間の振幅又は期間の増加分、消去動作における初期パルスの振幅又は期間、消去動作中に印加されるワードライン電圧、及び消去動作中に印加されるビットライン電圧より成る形式のグループから選択される少なくとも1つのパラメータ形式をセットするように構成された、請求項17に記載の装置。
  20. 前記記憶回路は、プログラムされたメモリセルに印加されるプログラミング及び消去サイクルの数を決定することにより性能尺度を推定し、そしてプログラミング及び消去サイクルの前記決定された数に基づいて消去動作を構成するようにされた、請求項17に記載の装置。
JP2013024933A 2012-01-24 2013-01-24 アナログメモリセルのための改良型プログラミング及び消去機構 Active JP5536245B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/356,694 US9009547B2 (en) 2011-01-27 2012-01-24 Advanced programming verification schemes for analog memory cells
US13/356,694 2012-01-24
US13/471,483 2012-05-15
US13/471,483 US8649200B2 (en) 2011-01-27 2012-05-15 Enhanced programming and erasure schemes for analog memory cells

Publications (2)

Publication Number Publication Date
JP2013157076A JP2013157076A (ja) 2013-08-15
JP5536245B2 true JP5536245B2 (ja) 2014-07-02

Family

ID=47598717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013024933A Active JP5536245B2 (ja) 2012-01-24 2013-01-24 アナログメモリセルのための改良型プログラミング及び消去機構

Country Status (6)

Country Link
EP (1) EP2620946A3 (ja)
JP (1) JP5536245B2 (ja)
KR (1) KR101412418B1 (ja)
CN (1) CN103219041B (ja)
TW (1) TWI501232B (ja)
WO (1) WO2013112332A1 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8621137B2 (en) 2007-12-27 2013-12-31 Sandisk Enterprise Ip Llc Metadata rebuild in a flash memory controller following a loss of power
US8938658B2 (en) 2011-11-07 2015-01-20 Sandisk Enterprise Ip Llc Statistical read comparison signal generation for memory systems
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9136877B1 (en) 2013-03-15 2015-09-15 Sandisk Enterprise Ip Llc Syndrome layered decoding for LDPC codes
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9361221B1 (en) 2013-08-26 2016-06-07 Sandisk Technologies Inc. Write amplification reduction through reliable writes during garbage collection
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
KR102480015B1 (ko) 2015-12-11 2022-12-21 삼성전자 주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 동작 방법
US11017866B2 (en) * 2019-09-03 2021-05-25 Silicon Storage Technology, Inc. Method of improving read current stability in analog non-volatile memory using final bake in predetermined program state

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748530A (en) * 1993-05-11 1998-05-05 Nkk Corporation Non-voltile memory device, non-volatile memory cell and method of adjusting the threshold value of the non-volatile memory cell and each of plural transistors
US6044004A (en) * 1998-12-22 2000-03-28 Stmicroelectronics, Inc. Memory integrated circuit for storing digital and analog data and method
JP2001093287A (ja) 1999-09-24 2001-04-06 Sony Corp 不揮発性半導体記憶装置
US6928001B2 (en) * 2000-12-07 2005-08-09 Saifun Semiconductors Ltd. Programming and erasing methods for a non-volatile memory cell
US6621742B1 (en) * 2002-04-29 2003-09-16 Fujitsu Limited System for programming a flash memory device
US6836435B2 (en) * 2002-12-13 2004-12-28 Freescale Semiconductor, Inc. Compaction scheme in NVM
JP2005235287A (ja) * 2004-02-19 2005-09-02 Nec Electronics Corp 不揮発性半導体記憶装置のプログラミング方法、プログラミング装置、及び、不揮発性半導体記憶装置
US7415646B1 (en) * 2004-09-22 2008-08-19 Spansion Llc Page—EXE erase algorithm for flash memory
CN1838328A (zh) * 2005-01-19 2006-09-27 赛芬半导体有限公司 擦除存储器阵列上存储单元的方法
US7656710B1 (en) * 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
US7499338B2 (en) * 2006-10-13 2009-03-03 Sandisk Corporation Partitioned soft programming in non-volatile memory
US7751240B2 (en) * 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
EP2122627B1 (en) 2007-02-20 2013-01-30 SanDisk Technologies Inc. Dynamic verify based on threshold voltage distribution
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8527819B2 (en) * 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
KR101448851B1 (ko) * 2008-02-26 2014-10-13 삼성전자주식회사 비휘발성 메모리 장치에서의 프로그래밍 방법
US7633804B2 (en) * 2008-03-20 2009-12-15 Micron Technology, Inc. Adjusting programming or erase voltage pulses in response to the number of programming or erase failures
US8351276B2 (en) * 2010-07-13 2013-01-08 Freescale Semiconductor, Inc. Soft program of a non-volatile memory block

Also Published As

Publication number Publication date
EP2620946A2 (en) 2013-07-31
KR101412418B1 (ko) 2014-06-25
EP2620946A3 (en) 2013-10-23
CN103219041B (zh) 2016-02-03
TWI501232B (zh) 2015-09-21
CN103219041A (zh) 2013-07-24
JP2013157076A (ja) 2013-08-15
KR20130086317A (ko) 2013-08-01
TW201346908A (zh) 2013-11-16
WO2013112332A1 (en) 2013-08-01

Similar Documents

Publication Publication Date Title
JP5536245B2 (ja) アナログメモリセルのための改良型プログラミング及び消去機構
US7864573B2 (en) Programming analog memory cells for reduced variance after retention
KR101379543B1 (ko) 감소된 감지 시간 판독을 하는 메모리 장치
US7924587B2 (en) Programming of analog memory cells using a single programming pulse per state transition
US8000135B1 (en) Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8085586B2 (en) Wear level estimation in analog memory cells
US9153329B2 (en) Selective re-programming of analog memory cells
US8228701B2 (en) Selective activation of programming schemes in analog memory cell arrays
US8493781B1 (en) Interference mitigation using individual word line erasure operations
US9293194B2 (en) Programming and erasure schemes for analog memory cells
US8482978B1 (en) Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8824214B2 (en) Inter-word-line programming in arrays of analog memory cells
JP6001093B2 (ja) アナログメモリセルのプログラミング及び消去の方式
US8649200B2 (en) Enhanced programming and erasure schemes for analog memory cells
US9530516B2 (en) Readout of interfering memory cells using estimated interference to other memory cells
US20140340951A1 (en) Applications for inter-word-line programming

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140423

R150 Certificate of patent or registration of utility model

Ref document number: 5536245

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250