JP2008544435A - プログラミングに失敗したことが検出されたビットの数に応じて最適化された電圧レベルによってフラッシュメモリーにプログラムする方法。 - Google Patents

プログラミングに失敗したことが検出されたビットの数に応じて最適化された電圧レベルによってフラッシュメモリーにプログラムする方法。 Download PDF

Info

Publication number
JP2008544435A
JP2008544435A JP2008517039A JP2008517039A JP2008544435A JP 2008544435 A JP2008544435 A JP 2008544435A JP 2008517039 A JP2008517039 A JP 2008517039A JP 2008517039 A JP2008517039 A JP 2008517039A JP 2008544435 A JP2008544435 A JP 2008544435A
Authority
JP
Japan
Prior art keywords
programming
data bits
volatile memory
memory device
program
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.)
Granted
Application number
JP2008517039A
Other languages
English (en)
Other versions
JP4640660B2 (ja
Inventor
ハ,チャン,ワン
Original Assignee
マイクロン テクノロジー, インク.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マイクロン テクノロジー, インク. filed Critical マイクロン テクノロジー, インク.
Publication of JP2008544435A publication Critical patent/JP2008544435A/ja
Application granted granted Critical
Publication of JP4640660B2 publication Critical patent/JP4640660B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • 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/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed 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/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits
    • 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
    • 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
    • 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

Abstract

不揮発性メモリーデバイスおよび書き込みプロセスが、説明され、それは、その書き込みプロセスは、以前の書き込みサイクル中に書き込み検証に不合格でありかつメモリーアレイ内に正しく書き込まれなかったデータビットの割合に基づいて連続する書き込みサイクルのプログラミング電圧を増加させる。これは、平均してより高速のプログラム動作を可能にし、また、プログラミング電圧をその後に増加させることを、不揮発メモリーデバイス、プログラムされる特定の領域または行、および、デバイスの摩損のよる何らかの変化により正確に適合させることを可能にする。本発明の一実施形態においては、製造プロセス/設計、および/または、特定のメモリーデバイスは、望ましいプログラミング電圧増分/増加量を設定するために、プログラミング電圧増加プロファイルに対する不合格ビット割合を生成することによって特性を決定される。本発明の別の実施形態においては、方法および装置は、データを不揮発性メモリーデバイス、とりわけ、NANDおよびNORアーキテクチャーフラッシュメモリー内に書き込むことに関連する。
【選択図】図7

Description

本発明は、一般的には、メモリーデバイスに関し、より詳細には、本発明は、フラッシュメモリーデバイスに関する。
メモリーデバイスは、典型的には、コンピュータにおける内部記憶領域として提供される。メモリーという用語は、集積回路チップの形で供給されるデータ記憶装置を意味する。いくつかの異なる種類のメモリーが、最近の電子機器に使用され、1つの一般的な種類は、RAM(ランダムアクセスメモリー)である。RAMは、その特徴として、コンピュータ環境においてメインメモリーとして使用されることが知られている。RAMは、読み出し書き込みメモリーを意味する。すなわち、RAMにデータを書き込むことができ、また、RAMからデータを読み出すこともできる。これは、データを読み出すことしかできないROMとは対照的なことである。ほとんどのRAMは、揮発性であり、これは、RAMの内容を保持するために電気を定常的に流さなければならないことを意味する。電源が切れるとすぐに、RAM内に存在するすべてのデータは消失する。
コンピュータは、ほとんどの場合、コンピュータを起動するための命令を保持する少量のリードオンリーメモリー(ROM)を含む。RAMとは違って、ROMは、それに書き込むことができない。電源が切れたときにメモリーセルのデータ内容が消失しないメモリーデバイスは、一般的には、不揮発性メモリーと呼ばれている。EEPROM(電気的消去可能ROM)は、それを電荷に暴露することによって消去することのできる特別な種類の不揮発性ROMである。EEPROMは、電気的に絶縁されたゲート(フローティングゲート)を有する多数のメモリーセルを備える。データは、フローティングゲート上に存在する電荷の形でメモリーセルに記憶される。典型的なフローティングゲートメモリーセルは、集積回路基板内に製造され、ソース領域とそのソース領域から所定の距離を置いて配置されたドレイン領域とを含み、中間チャンネル領域を形成する。典型的にはドープトポリシリコンからなるフローティングゲートは、チャンネル領域上に配置され、典型的には酸化物である誘電体材料によってその他のセル構成要素から電気的に絶縁される。例えば、ゲート酸化物が、フローティングゲートとチャンネル領域との間に形成されてもよい。コントロールゲートが、フローティングゲート上に配置され、そのコントロールゲートもまた、典型的には、ドープトポリシリコンからなる。コントロールゲートは、別の誘電体層によって、フローティングゲートから電気的に分離される。したがって、フローティングゲートは、誘電体内に“浮遊”したものであり、それによって、フローティングゲートは、チャンネルおよびコントロールゲートの両方から絶縁される。電荷が、特有のプログラミング動作によってフローティングゲートへ輸送され、あるいは、特有の消去動作によってフローティングゲートから除去される。その他の種類の不揮発性メモリーには、限定はされないが、ポリマーメモリー、強誘電性ランダムアクセスメモリー(FeRAM)、相変化記録メモリー(Ovionics Unified Memory:OUM)、および、磁気抵抗ランダムアクセスメモリー(MRAM)が、含まれる。
さらに別の種類の不揮発性メモリーは、フラッシュメモリーである。典型的なフラッシュメモリーは、メモリーアレイを備え、そのメモリーアレイは、多数のメモリーセルを含む。メモリーセルのそれぞれは、電界効果トランジスタ(FET)内に埋め込まれるフローティングゲートまたは電荷捕獲層を含む。セルは、通常、“消去ブロック”と呼ばれるセクション内にグループ化される。消去ブロック内に存在するセルのそれぞれは、選択的に、フローティングゲートへ電荷がトンネリングすることよって電気的にプログラムされることが可能である。負の電荷は、典型的には、ブロック消去動作によってフローティングゲートから除去され、消去ブロック内に存在するすべてのフローティングゲートメモリーセルは、単一動作で消去される。最近のフラッシュメモリーデバイスでは、複数のしきい値レベルまたは非導電性電荷捕獲層を使用しかつ電荷として捕獲されたデータをメモリーセルFETのソース/ドレインのそれぞれの近傍に記憶することによって、複数のビットが、単一セルに記憶されるようになったことが知られている。
2つの一般的な種類のフラッシュメモリーアレイアーキテクチャーは、“NAND”アーキテクチャーおよび“NOR”アーキテクチャーであり、それぞれのアーキテクチャーの基本メモリーセル構造がそれぞれNANDゲート回路またはNORゲート回路に似ているので、そのように呼ばれている。NORアレイアーキテクチャーにおいては、メモリーアレイに含まれるフローティングゲートメモリーセルは、行列として配置される。アレイ行列のそれぞれのフローティングゲートメモリーセルのゲートは、行ごとに、ワード選択線(ワード線)に接続され、それらのソース/ドレインは、列ビット線および/または列ソース線に接続される。また、NANDアレイアーキテクチャーは、フローティングゲートメモリーセルからなるそれのアレイを行列として配置し、それによって、アレイに含まれるそれぞれのフローティングゲートメモリーセルのゲートは、行ごとに、ワード線に接続される。しかしながら、それぞれのメモリーセルは、ソース線および列ビット線に直接に接続されない。その代わりに、アレイに含まれるメモリーセルは、典型的には、8個、16個、32個、または、それ以上をお互いにまとめて、ストリングとして配置され、ストリング内に存在するメモリーセルは、共通ソース線と列ビット線との間にお互いに直列にソースをドレインに接続される。そして、NANDアーキテクチャーフローティングゲートメモリーアレイのメモリーセルは、それらのゲートに接続されたワード選択線を選択することによって、選択されたメモリーセルに結合されたフローティングゲートメモリーセルの行を駆動することによってアクセスされる。さらにまた、ストリングに含まれる非選択メモリーセルのゲートに接続されたワード線が、駆動され(高い電圧に)、それらを通過モードにセットし、選択されたメモリーセルにアクセスするのを可能にする。
フラッシュメモリーのための一般的なプログラミング技術は、プログラムするか(論理“0”にセットされる)または禁止する(プログラムするのではなく、通常、セルを消去されたままにするためのものであり、論理“1”にセットされる)ために、1つのプログラミング電圧パルスまたは一連のプログラミング電圧パルスをコントロールゲートに印加し、選択されたメモリーセルにプログラムするかまたは禁止することによって、メモリーの行(ページ)にプログラムする。これらのプログラミング電圧および/またはパルスは、典型的には、設計によって設定され、場合によっては、製造プロセス中に調整または選択され、製造コストをさらに増加させる。しかしながら、メモリーアレイのチップごとに、それどころか、領域ごとに、あるいは、行ごとに様々に異なる製造プロセスの変動のために、すべてのフラッシュメモリーまたはフラッシュメモリーセルが、印加される所定のプログラミング電圧に対して同じものをプログラムするとは限らない。さらに、プログラミング電圧が個々のメモリーデバイスの製造中に選択されたとしても、メモリーデバイスのプログラミング特性は、複数のプログラム/消去サイクルの後あるいは、電源電圧または温度の変化の後には変化、することがある。
上述した理由のために、また、当業者が本明細書を読んで理解すればわかる以下で説明されるその他の理由のために、フラッシュメモリーアレイにプログラムするための新しい方法が、この分野において必要とされている。
フラッシュメモリーにプログラムすることに関する上述した問題およびその他の問題が、本発明によって目的とされ、以下の説明を読みかつ検討することによって理解することができる。
様々な実施形態は、不揮発性メモリーデバイスにプログラムすることに関し、データは、メモリーアレイの行をプログラムするような並列動作でメモリーのアレイ内にプログラムされ、プログラミングサイクルは、以前のサイクルにおいて正しくプログラムするのに失敗したデータのいずれかのビットをプログラムするために、プログラミング電圧レベルを増加させながら繰り返される。本発明の実施形態においては、連続するプログラミングサイクルのプログラミング電圧は、以前のプログラミングサイクル中にプログラミング検証に不合格でありしたがってメモリーアレイ内に正しくプログラムされなかったデータビットの割合に基づいて増加させられる。これは、平均してより高速のプログラム動作を可能にし、また、その後にプログラミング電圧を増加させることを、特定の不揮発性メモリーデバイス、プログラムされる特定の領域または行、および、デバイスの使用および摩損によるプログラミング特性の何らかの変化により正確に適合させることを可能にする。本発明の一実施形態においては、製造プロセス/設計、および/または、特定のメモリーデバイスは、データビットの与えられた不合格割合に対する望ましいプログラミング電圧増分/増加量を設定するために、プログラミング電圧増加プロファイルに対する不合格ビット割合を生成することによって特性を決定される。本発明の一実施形態においては、方法および装置は、データを不揮発性メモリーデバイス、とりわけ、NANDおよびNORアーキテクチャーフラッシュメモリーアレイおよびデバイス内にプログラムすることに関連する。
一実施形態として、本発明は、不揮発性メモリーデバイスを動作させる方法を提供し、この方法は、プログラミングサイクル中に、複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、不揮発性メモリーデバイスの不揮発性メモリーアレイ内に複数のデータビットをプログラムするステップと、プログラミングサイクル中に不揮発性メモリーアレイの複数のメモリーセル内に正しくプログラムするのに失敗した複数のデータビットの割合との選択された関係に基づいてプログラミング電圧を増加させるステップと、正しくプログラムされた1つかまたはそれ以上のセルにプログラムするのをディスイネーブルするステップと、正しくプログラムするのに失敗したデータの1つかまたはそれ以上のビットをプログラムするために、増加されたプログラミング電圧を印加するステップとを備える。
別の実施形態においては、本発明は、データをプログラムする方法を提供し、この方法は、プログラミングコマンドと複数のデータビットを含むプログラムデータとを受信するステップと、プログラミングサイクル中に、複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、不揮発性メモリーアレイ内に複数のデータビットをプログラムするステップと、不揮発性メモリーアレイの複数のメモリーセル内にプログラムされた複数のデータビットからなるプログラムデータを検証し、複数のメモリーセル内に正しくプログラムするのに失敗した複数のデータビットの割合との選択された関係に基づいてプログラミング電圧を増加させ、正しくプログラムされた1つかまたはそれ以上のメモリーセルにプログラムするのをディスイネーブルし、データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、増加させたプログラミング電圧を印加し、1つかまたはそれ以上の繰り返しサイクルを反復することによって、正しくプログラムするのに失敗した複数のメモリーセルの中のいずれか(またはいずれもの)のメモリーセルにプログラムすることを試みるステップとを備える。
本発明のさらに別の実施形態においては、本発明は、フラッシュメモリーデバイスを動作させる方法を提供し、この方法は、プログラミングコマンドと複数のデータビットを含むプログラムデータとをフラッシュメモリーデバイスのインタフェース上で受信するステップと、プログラムデータをデータキャッシュへ転送するステップと、プログラムデータを書き込みデータラッチへ転送するステップと、データキャッシュ内に保持されたプログラムデータ内に含まれるプログラムされるべきビットの数を計算するステップと、プログラミングサイクル中に、複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、フラッシュメモリーアレイ内に複数のデータビットをプログラムするステップと、フラッシュメモリーアレイの複数のメモリーセル内にプログラムされた複数のデータビットからなるプログラムデータを検証し、正しくプログラムするのに失敗したメモリーセルの数を計算し、データキャッシュ内に保持されたプログラムされるべきビットの数に関連して複数のメモリーセル内に正しくプログラムするのに失敗した複数のデータビットの割合を計算し、複数のメモリーセル内に正しくプログラムするのに失敗した複数のデータビットの割合との選択された関係に基づいてプログラミング電圧を増加させ、正しくプログラムされた1つかまたはそれ以上のメモリーセルにプログラムするのをディスイネーブルし、データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、増加させたプログラミング電圧を印加し、1つかまたはそれ以上の繰り返しサイクルを反復することによって、正しくプログラムするのに失敗した複数のメモリーセルの中のいずれか(またはいずれもの)のメモリーセルにプログラムすることを試みるステップとを備える。
さらなる実施形態においては、本発明は、不揮発性メモリーデバイスに接続されたホストを備えたシステムを提供する。不揮発性メモリーデバイスは、不揮発性メモリーアレイと、制御ステートマシーン回路とを備え、制御ステートマシーン回路は、プログラミング動作中に、複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、かつ、不揮発性メモリーアレイの複数のメモリーセル内にプログラムされた複数のデータビットを検証し、複数のメモリーセル内に正しくプログラムするのに失敗した複数のデータビットの割合との選択された関係に基づいてプログラミング電圧を増加させ、正しくプログラムされた1つかまたはそれ以上のメモリーセルにプログラミングするのをディスイネーブルし、データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、増加させたプログラミング電圧を印加し、1つかまたはそれ以上の繰り返しサイクルを反復することによって、正しくプログラムするのに失敗した複数のメモリーセルの中のいずれか(またはいずれもの)のメモリーセルにプログラムすることを試みることによって、複数のデータビットを不揮発性メモリーアレイ内にプログラムするように構成される。
またさらなる実施形態においては、本発明は、不揮発性メモリーデバイスを動作させる方法を提供し、この方法は、プログラム動作において不揮発性メモリーアレイ内にプログラムされるべきプログラムデータから期待データビットの数を計算するステップと、プログラム動作においてプログラミングに失敗した不合格データビットの数を計算するステップと、期待データビットの数と不合格データビットの数とを比較した結果に応答してプログラミング電圧を増加させるステップとを備える。
本発明のさらなる実施形態は、様々な範囲を有する方法および装置を含む。
好ましい実施形態の以下の詳細な説明においては、本明細書の一部を構成する添付の図面が、参照され、それらの図面には、本発明が実施されてもよい特定の好ましい実施形態が、例として示される。これらの実施形態は、当業者が本発明を実施できるように十分に詳細に説明され、そして、別の実施形態が、本発明の精神および範囲を逸脱することなく、使用されてもよいこと、および、論理的、機械的、および、電気的な変更がなされてもよいことを理解すべきである。したがって、以下の詳細な説明は、限定するような意味にとるべきではなく、本発明の範囲は、特許請求の範囲によってしか規定されない。
本発明の実施形態は、例えば、メモリーアレイの行のプログラミングなど、データを不揮発性アレイ内に並列動作でプログラムする不揮発性メモリーデバイスを含み、プログラミングサイクルは、以前のサイクルで正しくプログラムすることができなかったデータのいずれかのビットをプログラムするためのプログラミング電圧レベルを増大させて、繰り返す。本発明の実施形態においては、連続するプログラミングサイクルのプログラミング電圧は、以前のプログラミングサイクル中のプログラミング検証に不合格となりメモリーアレイ内に正しくプログラムされなかったデータビットの割合に基づいて増加する。これは、平均してより高速のプログラム動作を可能にし、かつ、プログラミング電圧をその後に増加させることを、特定の不揮発性メモリーデバイス、プログラムされる特定の領域または行、および、デバイスの使用および摩損によるプログラミング特性の何らかの変化に、より正確に適合させることができる。本発明の一実施形態においては、製造プロセス/設計、および/または、特定のメモリーデバイスは、プログラミング電圧増加プロファイルに対する不合格ビット割合を生成し、データビットの与えられた不合格割合のための望ましいプログラミング電圧の増分/増加量を設定することを特徴とする。本発明の一実施形態においては、方法および装置は、データを不揮発性メモリーデバイス、より詳細には、NANDアーキテクチャーおよびNORアーキテクチャーのフラッシュメモリーアレイおよびデバイス内にプログラミングすることに関する。
図1は、典型的には処理装置またはメモリーコントローラであるホスト102に接続された本発明の実施形態の不揮発性メモリーデバイス100を含むシステム128を説明する概略ブロック図である。フラッシュメモリーデバイスのような不揮発性メモリー100は、制御インタフェース106およびアドレス/データインタフェース108を有し、それらは、それぞれ、処理装置102に接続され、メモリー読み出し書き込みアクセスを可能にする。別の実施形態においては、アドレス/データインタフェース108は、別個のインタフェースに分割されてもよいことがわかる。不揮発性メモリーデバイスの内部において、制御ステートマシーン/制御回路110が、内部動作を指示し、不揮発性メモリーアレイ112を管理し、RAM制御レジスタおよび消去ブロック管理レジスタ114を更新する。RAM制御レジスタおよびテーブル114は、不揮発性メモリー100の動作中に、制御ステートマシーン110によって使用される。不揮発性メモリーアレイ112は、一連のメモリーバンクまたはセグメント116を含み、それぞれのバンク116は、一連の消去ブロック(図示しない)内に論理的に編成される。メモリーアクセスアドレスは、不揮発性メモリー100のアドレス/データインタフェース108上で受信され、行アドレス部と列アドレス部とに分割される。読み出しアクセス時、行アドレスが、ラッチされ、行デコード回路120によってデコードされ、その行デコード回路120は、メモリーセルおよび選択されたメモリーバンクを横切るそれらの関連するストリング内に存在するその他のメモリーセルの行ページ(図示しない)を選択および駆動する。メモリーセルの選択された行の出力内にエンコードされたビット値は、ローカルビット線/ストリング(図示しない)からグローバルビット線(図示しない)に結合され、メモリーバンクに関連するセンスアンプ122によって検出される。また、センスアンプ122は、典型的には、データキャッシュおよび書き込みデータラッチ回路(図示しない)を含む。アクセスの列アドレスは、列デコード回路124によってラッチおよびデコードされる。列デコード回路の出力は、望ましい列データ出力をセンスアンプから選択し、メモリーデバイスからアドレス/データインタフェース108を介して転送するために、データバッファー126に結合される。書き込みアクセス時、行デコード回路120が、行ページを選択し、列デコード回路が、書き込みセンスアンプ122を選択する。書き込まれるべきデータ値は、データバッファー126からデータキャッシュに、そして、列デコード回路124によって選択された書き込みセンスアンプ122の書き込みデータラッチに結合され、メモリーアレイ112の選択されたフローティングゲートメモリーセル(図示しない)に書き込まされる。そして、書き込まれたセルは、再度、行デコード回路120および列デコード回路124とセンスアンプ122とによって選択され、それによって、それらは、正しい値が選択されたメモリーセルにプログラムされたかを検証するために読み出すことができる。本発明の一実施形態においては、列デコード124は、メモリーアレイ112とセンスアンプ122との間に随意的に配置されてもよいことがわかる。
上述したように、2つの一般的な種類の不揮発性メモリーEEPROMおよびフラッシュメモリーアレイアーキテクチャーは、“NAND”アーキテクチャーおよび“NOR”アーキテクチャーであり、それぞれの基本メモリーセル構造が対応する論理ゲート設計に似ているので、そのように呼ばれている。NORアレイアーキテクチャーにおいては、メモリーアレイに含まれるフローティングゲートメモリーセルは、RAMまたはROMに類似する行列として配置される。アレイ行列のそれぞれのフローティングゲートメモリーセルのゲートは、行ごとに、ワード選択線(ワード線)に接続され、それらのドレインは、列ビット線に接続される。それぞれのフローティングゲートメモリーセルのソースは、典型的には、共通ソース線に接続される。NORアーキテクチャーフローティングゲートメモリーアレイは、それらのゲートに接続されたワード線を選択することによって、フローティングゲートメモリーセルの行を駆動する行デコーダーによってアクセスされる。そして、選択されたメモリーセルの行は、それらのプログラムされた状態に応じて、異なる電流を接続されたソース線から接続された列ビット線に流すことによって、それらの記憶されたデータ値を列ビット線上にセットする。ビット線の列ページが、選択およびセンスされ、個々のデータワードが、列ページからのセンスされたデータワードから選択され、メモリーから伝達される。
また、NANDメモリーアレイアーキテクチャーは、アレイに含まれるそれぞれのフローティングゲートメモリーセルのゲートが行ごとにワード線に接続されるように、それのフローティングゲートメモリーセルのアレイを行列として配置する。しかしながら、それぞれのメモリーセルは、ソース線および列ビット線に直接に接続されない。その代わりに、アレイに含まれるメモリーセルは、典型的には、8個、16個、32個、または、それ以上をお互いにまとめて、ストリングとして配置され、ストリング内に存在する複数のメモリーセルは、共通ソース線と列ビット線との間にお互いに直列にソースをドレインに接続される。これは、NANDアレイアーキテクチャーが、類似するNORアレイよりも大きなメモリーセル密度を有することを可能にするが、一般的には、より遅いアクセス速度および書き込みの複雑さを伴う。
NANDアーキテクチャーフローティングゲートメモリーアレイは、それらのゲートに接続されたワード選択線を選択することによってフローティングゲートメモリーセルの行を駆動する行デコーダーによって、アクセスされる。さらにまた、それぞれのストリングに含まれる非選択メモリーセルのゲートに接続されたワード線が、駆動される。しかしながら、それぞれのストリングに含まれる非選択メモリーセルは、それらをパストランジスタとして動作させ、かつ、それらの記憶されたデータ値によって制限されないような形でそれらに電流が流れるようにするために、典型的には、より高いゲート電圧によって駆動される。そして、電流は、ソース線から直列に接続されたストリングのそれぞれのフローティングゲートメモリーセルを介して列ビット線に流れ、読み込むために選択されたそれぞれのストリングに含まれるメモリーセルによってしか制限されない。これは、選択されたメモリーセルの行の電流エンコード記憶データ値を列ビット線上にセットする。ビット線の列ページは、選択およびセンスされ、そして、個々のデータワードが、列ページからセンスされたデータワードから選択され、メモリーデバイスから伝達される。
図2は、本発明の実施形態によるEEPROMまたはフラッシュメモリーデバイスのNORフローティングゲートメモリーアレイ200を説明する概略図である。図2において、フローティングゲートメモリーセル202は、ビット線212、ソース線214、ワード線206、および、基板コネクション222を有するNORアーキテクチャーメモリーアレイ内にまとめて結合される。それぞれのフローティングゲートメモリーセル202は、ドレイン領域とソース領域との間に形成されたゲート絶縁膜スタックを備えたフローティングゲート電界効果トランジスタ(FET)を有し、それらのドレイン領域およびソース領域は、それぞれ、ビット線212およびソース線214に接続される。
図3は、本発明の実施形態によるEEPROMまたはフラッシュメモリーデバイスのNANDフローティングゲートメモリーアレイストリング304を説明する概略図である。図3において、一連のフローティングゲートメモリーセル302は、NANDストリング304(典型的には、8個、16個、32個、または、それ以上のセルからなる)内において、お互いにソースをドレインに直列に接続される。それぞれのフローティングゲートメモリーセル302は、基板の上部に存在するトンネル絶縁膜からなるゲート絶縁膜スタック、トンネル絶縁膜上に形成されたフローティングゲート、フローティングゲート上に形成されたゲート間/ポリ間絶縁膜、および、それぞれのフローティングゲートメモリーセル302のゲート間/ポリ間絶縁膜上に形成されたコントロールゲート306(典型的には、ワード線の一部として形成される)を有する。不純物ドープト領域(典型的には、N型FETメモリーセルの場合にはN+)が、それぞれのゲート絶縁膜スタック間に形成され、隣接するフローティングゲートメモリーセルのソース領域およびドレイン領域を形成し、また、それらのソース領域およびドレイン領域は、NANDストリング304のセルをお互いに結合するコネクタとしても動作する。さらに、基板接続部322が、示される。選択ゲート310が、NANDフローティングゲートストリング304の両側の端部に形成され、NANDフローティングゲートストリング304の両側の端部をビット線コンタクト312およびソース線コンタクト314に選択的に結合する。
フラッシュメモリーのための一般的なプログラミング技術は、それらのチャンネルをプログラム電圧かまたは禁止電圧に結合することによってプログラムするか(論理“0”にセット)または禁止する(プログラムすることはなく、通常、セルを消去されたままにするためのものであり、論理“1”にセットされる)ために、1つのプログラミング電圧または一連のプログラミング電圧パルスをメモリーセルのコントロールゲートに印加し、選択されたメモリーセルにプログラムするかまたは禁止することによって、メモリーの行(一般的には、ページと呼ばれる)をプログラムする。残念ながら、メモリーセルのこのプログラミングは、一般的には、メモリーアレイのそれぞれの行において均一ではない。このようにメモリーセルのフローティングゲート内へキャリアを不均一に注入することは、図4に示されるように、それぞれのプログラムされたセルにおいてそれぞれにシフトしたしきい電圧の分布をもたらす。図4には、消去された状態402およびプログラムされた状態406におけるフローティングゲートメモリーセルのしきい電圧(Vt)の分布が、示される。プログラムされたように読み出されなければならないメモリーセルの場合、それは、それのしきい電圧を、プログラミングセルしきい電圧限界404よりも高いレベルにシフトさせていなければならない。しかしながら、チップごとの、それどころか、メモリーアレイの領域ごとのデバイス摩損レベル(メモリーセル書き込み疲労)および製造プロセス変動のために、すべてのフラッシュメモリーまたはフラッシュメモリーセルが、与えられた印加プログラミング電圧、パルス、および、期間に対して、同じものをプログラミングするとは限らず、図4に示されるように、プログラムサイクルの後に、プログラミングセルしきい電圧分布406の大きな変動をもたらす。結果として、セルに印加されたプログラミング電圧を有するセルの多くは、それらの個々のしきい電圧がプログラムされるセルしきい電圧限界404よりも上昇していなければ、検証のためにその後に照合されたとき、プログラムされたように読み出されることはない。
このために、最初にプログラミングを試みた後、行に記憶されたデータは、再び、その行から読み出され、正しくプログラミングされたかどうかを検証するために、元々のデータと照合される。そして、意図した通りにプログラムされなかったセルがあれば、所定の数のプログラミングサイクル繰り返し回数だけさらなるプログラミングパルスをそれらのセルのコントロールゲートに印加することによって、それらのセルを訂正しようとする努力がなされる。また、これらのさらなるプログラミング電圧パルスは、典型的には、メモリーデバイスのための最大プログラミング電圧に達するまで、選択された電圧増加率で徐々に増大する。図5において、波形図500が、不揮発性メモリーデバイスのそのようなプログラミング動作を詳細に示しており、増加する電圧プログラミングパルス502、504、506、508が、初期プログラミング電圧502からメモリーデバイスにおいて可能な最大プログラミング電圧508まで、印加され、それぞれのパルスの後に、プログラミング結果検証パルス510が、印加される。
図6は、NAND型不揮発性メモリーデバイスまたは並列プログラミング不揮発性メモリーデバイスにおける従来技術によるプログラミングアルゴリズム600のフローチャートを示す。図6において、プログラミング動作は、NANDアーキテクチャーフラッシュメモリーデバイスのような不揮発性メモリーデバイスのアドレスを含むプログラムコマンドを受信する符号602から開始する。そして、プログラムコマンドに続いて、プログラムデータ(典型的には、2kバイト)が、メモリーデバイス内にロードされ、データキャッシュに記憶される(604)。そして、データは、不揮発性メモリーアレイの行にプログラムする準備として、書き込みセンスアンプのデータラッチへ転送される(606)。そして、初期プログラミングゲート電圧(例えば、15V)が、設定され、プログラミングサイクルループカウンタが、1に設定される(608)。そして、行のデータが、そのプログラミング電圧を備えたパルスをコントロールゲートに送出し、それらのチャンネルをプログラミングム電圧かまたは禁止電圧に結合することによって、不揮発性メモリーアレイの選択された行にプログラムされる(610)。プログラミングパルスが印加され、かつ、データが行にプログラムされた後、そのデータが、再び、読み出され、データキャッシュに保持されている元々のデータと比較され、それが正しくプログラムされたかどうかが検証される(612)。プログラムデータが、検証に合格すれば(614)、プログラミング動作は、完了し、そして、終了する(616)。プログラムデータが、検証に不合格であれば、かつ、最大プログラミングサイクル回数に到達していなければ(ループカウンタがそれの最大値に達していなければ)(618)、プログラミング動作は、継続し、データを再度プログラムすることを試みる。最大プログラミングサイクル回数に到達していれば(ループカウンタがそれの最大値に達していれば)、プログラミング動作は、不合格となる(620)。
検証に不合格となったデータビットを再びプログラムすることを試みるループにおいて、このアルゴリズムは、ループカウンタをインクリメントし(622)、プログラミング検証に合格したデータの行に存在するビットのプログラミングをディスイネーブルまたは禁止し、これらのセルの限度を超えたプログラミングおよび不揮発性メモリーデバイスの余計な書き込み疲労を防止する(624)。ゲートプログラミング電圧が、それの最大レベルになければ(626)、その電圧は、所定の増分だけ増加させられる(プログラムされないセルが、不合格セルであることはほとんどなく、典型的には、ほんのたまに、低い電圧における遅いプログラミングのセルであり、そのために、メモリーデバイスは、典型的には、これらのセル上の電圧を増加させ、再度、試みる)(630)。ゲートプログラミング電圧が、すでに、最大レベルにあれば、それは、増加させられることはなく、最大レベルのままである(628)。そして、アルゴリズムは、符号632へループし、再び、データ行をプログラムする(610)。アルゴリズムのこのループは、継続し、プログラムされたデータが検証に最終的に合格するか(616)または最大プログラミングサイクルループ回数を超えてプログラミング動作が不合格となる(630)まで、それぞれのループにおけるプログラミング電圧を所定の増分だけ増加させる。
上述したように、プログラミングプロセスが繰り返しを反復されることおよびゲートプログラミング電圧が所定の増分だけ増加させられることによって、従来技術によるプログラミングプロセスは、高速プログラミング動作には適していない。さらに、従来技術によるプログラミングプロセスは、その後にプログラミング電圧を増加させることを、特定の不揮発性メモリーデバイス、プログラムされる特定の領域または行、または、デバイスの使用および摩損によるメモリーセルプログラミング特性の何らかの変化に正確に適合させることができない。
本発明の実施形態は、全般的により高速のプログラミング動作を提供するための、かつ、特定の不揮発性メモリーデバイスおよびデバイスの使用および摩損によるメモリーセルプログラミング特性の何らかの変化にプログラミング動作をより良好に適合させることのできる、改善されたプログラミング方法を使用する。本発明の実施形態においては、連続するプログラミングサイクルのプログラミング電圧は、以前のプログラミングサイクル中にプログラミング検証に不合格となりかつメモリーアレイ内に正しくプログラムされなかったデータビットの割合に基づいて増加させられる。これは、より高速のプログラミング動作を可能にし、かつ、その後にプログラミング電圧を増加させることを、特定の不揮発性メモリーデバイス、プログラムされる特定の領域または行、および、デバイスの使用および摩損によるプログラミング特性の何らかの変化により正確に適合させることを可能にする。
本発明の実施形態のプログラミング方法は、プログラミング速度を改善するために、また、それのプログラミングサイクルを特定のメモリーデバイスにより良好に適合させるために、NAND型フラッシュメモリーデバイス、NOR型フラッシュメモリーデバイス、および、並列にデータを大量にプログラムする何らかの不揮発性メモリーデバイスに使用されてもよいことがわかる。
図7は、本発明の実施形態によるプログラミングプロセスのフローチャートを示す。図7において、プログラミング動作は、NANDアーキテクチャーフラッシュメモリーデバイスのような不揮発性メモリーデバイスのアドレスを含むプログラムコマンドを受信する符号702から開始する。そして、プログラムコマンドに続いて、プログラムデータ(典型的には、2kバイト)が、メモリーデバイス内にロードされ、データキャッシュに記憶される(704)。そして、データキャッシュ内のデータは、プログラムデータ内に存在するプログラムされるべきデータビットの総数を決定してそれを記憶するために、メモリーデバイスによって解析される(734)。そして、このデータは、不揮発性メモリーアレイの行内にプログラムする準備として、書き込みセンスアンプのデータラッチへ転送される(706)。そして、初期プログラミングゲート電圧が、(例えば、15Vに)設定され、プログラミングサイクルループカウンタが、1に設定される(708)。そして、データの行が、そのプログラミング電圧を有するパルスをコントロールゲートに送出し、それらのチャンネルをプログラム電圧かまたは禁止電圧に結合することによって、不揮発性メモリーアレイの選択された行にプログラムされる(710)。プログラミングパルスが印加され、かつ、データが行にプログラムされた後、そのデータが、再び、読み出され、データキャッシュに保持されている元々のデータと比較され、正しいプログラミングがなされたかどうかが検証される(712)。プログラムデータが、検証に合格すれば(714)、プログラミング動作は、完了し、そして、終了する(716)。プログラムデータが、検証に不合格であれば、かつ、最大プログラミングサイクル回数に到達していなければ(ループカウンタがそれの最大値に達していなければ)(718)、プログラミング動作は、継続し、プログラムに失敗したデータビットを再度プログラムすることを試みる。最大プログラミングサイクル回数に到達していれば(ループカウンタがそれの最大値に達していれば)、プログラミング動作は、不合格となり、そして、終了する(720)。
検証に不合格となったデータビットを再びプログラムすることを試みるループにおいて、このアルゴリズムは、プログラムされるデータの中に含まれる不合格のプログラムされるビット総数を検査し(736)、そして、メモリーセル数/不合格プログラムビット数で表現される割合を計算する(738)。そして、ループカウンタが、インクリメントされ(722)、検証に合格したデータビットが、ディスイネーブルまたは禁止され、これらのセルの限度を超えたプログラミングを防止する(724)。ゲートプログラミング電圧が、それの最大レベルになければ(726)、その電圧は、不合格ビットが全体に占める割合に基づいて増加させられ(730)、不合格ビットの割合が大きければ、プログラミング電圧は、より大きな変化率で増加させられ、不合格ビットの割合が、小さければ、プログラミング電圧は、より小さい変化率で増加させられる。ゲートプログラミング電圧が、すでに、最大レベルにあれば、それは、増加させられることはなく、最大レベルのままである(728)。そして、アルゴリズムは、符号732へループし、再び、データ行をプログラムする(710)。アルゴリズムのこのループは、継続し、プログラムされたデータが検証に最終的に合格するか(716)または最大プログラミングサイクルループ回数を超えてプログラム動作が不合格となる(720)まで、プログラムされるビットに対する不合格ビットの割合に基づいてそれぞれのループにおけるプログラミング電圧を増加させる。
本発明の一実施形態においては、与えられた割合の不合格ビットに必要とされる電圧増加の変化量/増分が正確に適合することを向上させるために、メモリーデバイスの製造プロセスおよび設計が、プロファイリングされる。そのような電圧増加に対する不合格ビット割合のプロファイル曲線は、典型的には、与えられた電源電圧またはメモリーデバイスの摩損および使用のレベルに対して異なることはなくあるいは変化することはないことがわかっており、そのために、正確な電圧増加マップを提供する。そして、このプロファイルは、メモリーデバイスが製造されるときにそのメモリーデバイスに取り込まれ/プログラムされる。この電圧増加に対する不合格ビット割合をプロファイリングすることは、個々のメモリーデバイスごとになされてもよく、また、全体的なメモリーデバイスおよび/またはメモリーアレイの個々の領域をプロファイリングすることを可能にし、それによって、電圧増加プロファイルを個々のメモリーデバイスごとに調節するのを可能にすることがわかる。しかしながら、また、これは、典型的には、製造をきわめて複雑なものにし、かつ、結果として得られるメモリーデバイスはより高い単価を有することがわかる。さらに、本発明の一実施形態においては、メモリーデバイスは、全体的なメモリーデバイスおよび/またはメモリーアレイの個々の領域におけるメモリーセルの疲労および摩損に関する内部プログラミング統計値を維持し、個々のメモリーデバイスの摩損レベルごとに電圧増加プロファイルを調節するのを可能にする。
プログラミング電圧をより速くかつより正確に増加させるために、本発明の不揮発性メモリーデバイスのプログラミング動作は、典型的には、従来技術によるメモリーデバイスのプログラミングサイクル回数よりも少ないプログラミングサイクル回数によって、与えられた行のデータをプログラムする。これは、より高速の書き込み、および、より少ないプログラミングサイクル回数によるより少ない電力消費量を可能にし、その結果として、不揮発性メモリーデバイスのより高速の全体的動作をもたらす。
図8は、本発明の実施形態によるメモリーデータキャッシュおよびセンスアンプ回路800の概略部分図を示す。図8において、プログラムされるべきデータは、I/Oバッファー(図示しない)816からそれぞれのセンスアンプ802のデータキャッシュラッチ804へロードされ、そして、プログラミングのために、センスアンプ802のデータ書き込みラッチ806へ転送される。それぞれの書き込みデータラッチは、ビット線808に接続され(随意的に、この接続は、列デコーダ(図示しない)を介してなされる)、プログラミングのために行デコーダ(図示しない)によって選択された不揮発性メモリー行のビット線808を介して接続されたメモリーセルにプログラムするかまたは禁止するのに使用される。ビット加算回路810が、データキャッシュラッチ804に接続され、データキャッシュラッチ804内にロードされたプログラムデータ内に含まれるプログラムされるべきビットの数の合計を計算する。検証不合格ビット加算回路812が、書き込みデータラッチ806に接続され、検証に不合格であったビットの数の合計を計算するように適合される。そして、比較および電圧調節回路814が、プログラムされるべきビットの数と検証に不合格であったビットの数とを比較し、データキャッシュラッチ804に保持された現在のプログラムデータからプログラムされたビットの割合を計算し、プログラミングに失敗したビットの相対的割合に比例してゲートプログラミング電圧レベルを調節することによって、あるいは、不合格ビットのために、増加ゲートプログラミング電圧プロファイルテーブルを参照することによって、次のゲートプログラミング電圧レベルを設定する。
NANDおよびNORアーキテクチャー不揮発性メモリーデバイスプログラミング方法およびアレイの実施形態のための本発明によるその他のプログラミング電圧レベルおよびシーケンスも可能であり、かつ、本明細書から当業者には明白であることがわかる。
[結論]
不揮発性メモリーデバイスおよびプログラミングプロセスが、説明され、それは、連続するプログラミングサイクルのプログラミング電圧を、以前のプログラミングサイクル中にプログラミング検証に不合格でありかつメモリーアレイに正しくプログラムされなかったデータビットの割合に基づいて増加させるものである。これは、平均してより高速のプログラム動作を可能にし、また、その後にプログラミング電圧を増加させることを、特定の不揮発性メモリーデバイス、プログラムされる特定の領域または行、および、デバイスの使用および摩損によるプログラミング特性の何らかの変化により正確に適合させるのを可能にする。本発明の一実施形態においては、製造プロセス/設計、および/または、特定のメモリーデバイスは、プログラミング電圧増加プロファイルに対する不合格ビット割合を生成し、データビットの与えられた不合格割合のための望ましいプログラミング電圧の増分/増加量を設定することを特徴とする。本発明のさらなる実施形態においては、方法および装置は、データを不揮発性メモリーデバイス、より詳細には、NANDアーキテクチャーおよびNORアーキテクチャーのフラッシュメモリーアレイおよびデバイス内にデータをプログラミングすることに関する。
ここで、特定の実施形態が、図示されかつ説明されたが、当業者には、同じ目的を達成すると思われる何らかの構成が図示された特定の実施形態と置き換えられてもよいことは明白なことである。当業者は、本発明の多くの改造を考え出すことができる。したがって、本出願は、本発明のあらゆる改造または変形を網羅しようとするものである。本発明は添付の特許請求の範囲およびそれに均等なものによってしか限定されないことが明白に意図される。
本発明の実施形態による不揮発性メモリーデバイスを含むシステムの概略ブロック図である。 本発明の実施形態によるNORアーキテクチャーフラッシュメモリーアレイの概略ブロック図である。 本発明の実施形態によるNANDアーキテクチャーフラッシュメモリーアレイのフローティングゲートメモリーセルからなる一連のストリングの概略ブロック図である。 フローティングゲートメモリーセルの消去およびプログラミング電圧Vtの分布を詳細に示す図である。 本発明の実施形態による不揮発性メモリーデバイスのプログラミング動作を説明する波形図である。 従来技術によるNANDアーキテクチャーフラッシュメモリープログラミング動作のフローチャートである。 本発明の実施形態によるNANDアーキテクチャーフラッシュメモリーのプログラミング動作のフローチャートである。 本発明の実施形態によるセンスアンプ回路および制御回路の概略ブロック図である。

Claims (23)

  1. 不揮発性メモリーデバイスを動作させる方法であって、
    プログラム動作において不揮発性メモリーアレイ内にプログラムされるべきプログラムデータから期待データビットの数を計算するステップと、
    前記プログラム動作においてプログラムに失敗した不合格データビットの数を計算するステップと、
    前記期待データビットの数と前記不合格データビットの数とを比較した結果に応答してプログラミング電圧を増加させるステップと、
    を備えた方法。
  2. 前記期待データビットの数と前記不合格データビットの数とを比較した結果に基づいてプログラミング電圧を増加させるステップが、前記プログラミング動作中に前記不揮発性メモリーアレイ内に正しくプログラムするのに失敗した前記期待データビットの割合に基づいてプログラミング電圧を増加させるステップをさらに備えた請求項1に記載の方法。
  3. 正しくプログラムされた1つかまたはそれ以上のメモリーセルのプログラミングをディスイネーブルするステップと、
    正しくプログラムするのに失敗した前記データの中の1つかまたはそれ以上のビットをプログラムするために、前記増加させたプログラミング電圧を印加するステップと、
    をさらに備えた請求項1に記載の方法。
  4. 1つかまたはそれ以上の繰り返しサイクルを反復するステップと、
    プログラム動作中に前記不揮発性メモリーアレイ内にプログラムされるべきプログラムデータから期待データビットの数を計算するステップと、
    プログラム動作においてプログラムに失敗した不合格データビットの数を計算するステップと、
    前記期待データビットの数と前記不合格データビットの数とを比較した結果に応答してプログラミング電圧を増加させるステップと、
    をさらに備えた請求項1に記載の方法。
  5. 1つかまたはそれ以上の繰り返しサイクルを反復するステップが、最大繰り返し回数に到達するかまたは前記不合格データビットの数がゼロになるまで繰り返すステップをさらに備えた請求項4に記載の方法。
  6. 前記期待データビットの数と前記不合格データビットの数とを比較した結果に基づいてプログラミング電圧を増加させるステップが、前記期待データビットの数と前記不合格データビットの数とを比較した結果に応答してプログラミング電圧を増加させ、プログラミング電圧の全体的な増加が、所定の最大プログラミング電圧レベルによって制限されるようにするステップをさらに備える請求項1に記載の方法。
  7. 前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために、前記不揮発性メモリーデバイスをプロファイリングするステップ、
    をさらに備えた請求項1に記載の方法。
  8. 前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために前記不揮発性メモリーデバイスをプロファイリングするステップが、前記不揮発性メモリーデバイスの製造プロセスに関して前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために前記不揮発性メモリーデバイスをプロファイリングすること、前記不揮発性メモリーデバイスの設計に関する特性を決定すること、特定のメモリーデバイスに関して前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために前記不揮発性メモリーデバイスをプロファイリングすること、特定のメモリーアレイ領域に関して前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために前記不揮発性メモリーデバイスをプロファイリングすること、および、特定のメモリーセル摩損レベルに関して前記期待データビットの数と前記不合格データビットの数との与えられた比較に対するプログラミング電圧増加のプロファイルを決定するために前記不揮発性メモリーデバイスをプロファイリングすることの中の1つによって、前記不揮発性メモリーデバイスをプロファイリングするステップをさらに備えた請求項7に記載の方法。
  9. 前記不揮発性メモリーデバイスが、フラッシュメモリーデバイス、EEPROMメモリーデバイス、ポリマーメモリーデバイス、強誘電性ランダムアクセスメモリー(FeRAM)デバイス、Ovionics Unified Memory(OUM)デバイス、および、磁気抵抗ランダムアクセスメモリー(MRAM)デバイスの中の1つである請求項1に記載の方法。
  10. 前記不揮発性メモリーアレイが、NANDアーキテクチャーメモリーアレイおよびNORアーキテクチャーメモリーアレイの中の1つである請求項1に記載の方法。
  11. プログラミングサイクル中に、複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、前記不揮発性メモリーデバイスの前記不揮発性メモリーアレイ内に前記複数のデータビットをプログラムするステップと、
    前記プログラミングサイクル中に前記不揮発性メモリーアレイの前記複数のメモリーセル内に正しくプログラムするのに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させるステップと、
    正しくプログラムされた1つかまたはそれ以上のセルのプログラミングをディスイネーブルするステップと、
    正しくプログラムするのに失敗したデータの1つかまたはそれ以上のビットをプログラムするために、前記増加されたプログラミング電圧を印加するステップと、
    をさらに備えた請求項1に記載の方法。
  12. 不揮発性メモリーデバイスを動作させる方法が、
    プログラミングコマンドと複数のデータビットを含むプログラムデータとを受信するステップと、
    プログラミングサイクル中に、前記複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、前記不揮発性メモリーアレイ内に前記複数のデータビットをプログラムするステップと、
    前記不揮発性メモリーアレイの前記複数のメモリーセル内にプログラムされた前記複数のデータビットからなるプログラムデータを検証し、
    前記複数のメモリーセル内に正しくプログラムすることに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させ、
    正しくプログラムされた1つかまたはそれ以上のメモリーセルのプログラミングをディスイネーブルし、
    データの中の正しくプログラムすることに失敗した1つかまたはそれ以上のビットをプログラムするために、前記増加させたプログラミング電圧を印加し、
    1つかまたはそれ以上の繰り返しサイクルを反復する、
    ことによって、正しくプログラムすることに失敗した前記複数のメモリーセルの中のいずれかのメモリーセルにプログラムすることを試みるステップと、
    をさらに備えた請求項1に記載の方法。
  13. 不揮発性メモリーデバイスを動作させる方法が、
    プログラミングコマンドと複数のデータビットを含むプログラムデータとを前記不揮発性メモリーデバイスのインタフェース上で受信するステップと、
    前記プログラムデータをデータキャッシュへ転送するステップと、
    前記プログラムデータを書き込みデータラッチへ転送するステップと、
    前記データキャッシュ内に保持された前記プログラムデータ内に含まれるプログラムされるべきビットの数を計算するステップと、
    前記複数のデータビットをプログラムするために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、プログラミングサイクル中に、前記不揮発性メモリーアレイ内に前記複数のデータビットをプログラムするステップと、
    前記不揮発性メモリーアレイの前記複数のメモリーセル内にプログラムされた前記複数のデータビットからなるプログラムデータを検証し、
    正しくプログラムすることに失敗したメモリーセルの数を計算し、
    前記データキャッシュ内に保持されたプログラムされるべき前記ビットの数に関連して前記複数のメモリーセル内に正しくプログラムするのに失敗した前記複数のデータビットの割合を計算し、
    前記複数のメモリーセル内に正しくプログラムするのに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させ、
    正しくプログラムされた1つかまたはそれ以上のメモリーセルのプログラミングをディスイネーブルし、
    データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、前記増加させたプログラミング電圧を印加し、
    1つかまたはそれ以上の繰り返しサイクルを反復する、
    ことによって、正しくプログラムするのに失敗した前記複数のメモリーセルの中のいずれかのメモリーセルにプログラムすることを試みるステップと、
    をさらに備えた請求項1に記載の方法。
  14. 不揮発性メモリーデバイスをプロファイリングする方法であって、
    前記不揮発性メモリーデバイス内にプログラムされるデータビットの与えられた不合格割合に対するその後のプログラミングサイクルのための望ましいプログラミング電圧の増分を特定するために、前記不揮発性メモリーデバイスをプロファイリングするステップ、
    を備えた方法。
  15. 前記不揮発性メモリーデバイス内にプログラムされるデータビットの与えられた不合格割合に対するその後のプログラミングサイクルのための望ましいプログラミング電圧の増分を特定するために前記不揮発性メモリーデバイスをプロファイリングするステップが、データビットの与えられた不合格割合に対する前記望ましいプログラミング電圧の増分/増加量のためのプロファイルを選択するために、前記不揮発性メモリーデバイスの製造プロセスに関する特性を決定すること、前記不揮発性メモリーデバイスの設計に関する特性を決定すること、特定のメモリーアレイに関する特性を決定すること、特定のメモリーアレイ領域に関する特性を決定すること、および、特定のメモリーセル摩損レベルに関する特性を決定することの中の1つによって、前記不揮発性メモリーデバイスをプロファイリングするステップをさらに備えた請求項14に記載の方法。
  16. 不揮発性メモリーデバイスであって、
    不揮発性メモリーアレイと、
    制御回路と、
    を備え、
    前記制御回路が、プログラミング動作中に、複数のデータビットを書き込むために選択された複数のメモリーセルに初期プログラミング電圧を印加することによって、かつ、
    前記不揮発性メモリーアレイの前記複数のメモリーセル内にプログラムされた前記複数のデータビットを検証し、
    前記複数のメモリーセル内に正しくプログラムすることに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させ、
    正しくプログラムされた1つかまたはそれ以上のメモリーセルのプログラミングをディスイネーブルし、
    データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、前記増加させたプログラミング電圧を印加し、
    1つかまたはそれ以上の繰り返しサイクルを反復する、
    ことによって、正しくプログラムするのに失敗した前記複数のメモリーセルの中のいずれかのメモリーセルにプログラムすることを試みることによって、複数のデータビットを前記不揮発性メモリーアレイ内にプログラムするように構成された、
    不揮発性メモリーデバイス。
  17. 前記制御回路が、前記複数のデータビットのすべてが検証に合格するまで、または、繰り返しの最大回数に到達するまで、1つかまたはそれ以上の繰り返しサイクルを反復するように構成された請求項16に記載の不揮発性メモリーデバイス。
  18. 前記プログラミングサイクル中に前記不揮発性メモリーアレイの前記複数のメモリーセル内に正しくプログラムするのに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させるように構成された前記制御回路が、全体的なプログラミング電圧レベルを所定の最大プログラミング電圧レベルに制限することをさらに備えた請求項16に記載の不揮発性メモリーデバイス。
  19. 前記制御回路が、データビットの与えられた不合格割合に対する前記望ましいプログラミング電圧の増分を特定する前記不揮発性メモリーアレイのプロファイルに基づいて、前記プログラミング電圧を増加させるように構成された請求項16に記載の不揮発性メモリーデバイス。
  20. 前記不揮発性メモリーデバイスが、NANDアーキテクチャーフラッシュメモリーデバイス、NORアーキテクチャーフラッシュメモリーデバイス、EEPROMメモリーデバイス、ポリマーメモリーデバイス、強誘電性ランダムアクセスメモリー(FeRAM)デバイス、Ovionics Unified Memory(OUM)デバイス、および、磁気抵抗ランダムアクセスメモリー(MRAM)、分子メモリーデバイスの中の1つである請求項16に記載の不揮発性メモリーデバイス。
  21. 前記不揮発性メモリーデバイスが、
    複数のセンスアンプと、
    I/Oバッファーと、
    メモリーインタフェースと、
    をさらに備え、
    前記制御回路が、前記不揮発性メモリーアレイ、前記I/Oバッファー、前記複数のセンスアンプ、および、前記メモリーインタフェースに接続された制御ステートマシーンであり、前記制御ステートマシーンが、プログラミング動作中に、前記複数のデータビットをプログラムするために選択された複数の不揮発性メモリーセルに初期プログラミング電圧を印加することによって、かつ、
    前記不揮発性メモリーアレイの前記複数のメモリーセル内にプログラムされた前記複数のデータビットを検証し、
    前記複数のメモリーセル内に正しくプログラムするのに失敗した前記複数のデータビットの割合との選択された関係に基づいて前記プログラミング電圧を増加させ、
    正しくプログラムされた1つかまたはそれ以上のメモリーセルのプログラミングをディスイネーブルし、
    データの中の正しくプログラムするのに失敗した1つかまたはそれ以上のビットをプログラムするために、前記増加させたプログラミング電圧を印加し、
    1つかまたはそれ以上の繰り返しサイクルを反復する、
    ことによって、正しくプログラムするのに失敗した前記複数のメモリーセルの中のいずれかのメモリーセルにプログラムすることを試みることによって、前記メモリーインタフェースにおいて受信された前記複数のデータビットを前記不揮発性メモリーアレイ内にプログラムするように構成された、
    請求項16に記載の不揮発性メモリーデバイス。
  22. 前記不揮発性メモリーデバイスが、システムをさらに備え、前記システムが、
    前記不揮発性メモリーデバイスに接続されたホスト、
    を備えた請求項16に記載の不揮発性メモリーデバイス。
  23. 前記ホストが、プロセッサーおよびメモリーコントローラの中の1つである請求項22に記載の不揮発性メモリーデバイス。
JP2008517039A 2005-06-17 2006-06-13 プログラミングに失敗したことが検出されたビットの数に応じて最適化された電圧レベルによってフラッシュメモリーにプログラムする方法。 Expired - Fee Related JP4640660B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/156,223 US7239557B2 (en) 2005-06-17 2005-06-17 Program method with optimized voltage level for flash memory
PCT/US2006/023086 WO2006138333A1 (en) 2005-06-17 2006-06-13 Program method for flash memory with optimized voltage level dependent of the number of bits detected to have failed programming

Publications (2)

Publication Number Publication Date
JP2008544435A true JP2008544435A (ja) 2008-12-04
JP4640660B2 JP4640660B2 (ja) 2011-03-02

Family

ID=37084634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008517039A Expired - Fee Related JP4640660B2 (ja) 2005-06-17 2006-06-13 プログラミングに失敗したことが検出されたビットの数に応じて最適化された電圧レベルによってフラッシュメモリーにプログラムする方法。

Country Status (9)

Country Link
US (4) US7239557B2 (ja)
EP (1) EP1894207B1 (ja)
JP (1) JP4640660B2 (ja)
KR (1) KR100956709B1 (ja)
CN (1) CN101268520B (ja)
AT (1) ATE425539T1 (ja)
DE (1) DE602006005664D1 (ja)
TW (1) TWI305918B (ja)
WO (1) WO2006138333A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010040144A (ja) * 2008-08-07 2010-02-18 Toshiba Corp 不揮発性半導体記憶システム
JP2011513885A (ja) * 2008-02-29 2011-04-28 マイクロン テクノロジー, インク. メモリ素子のプログラミング中の電荷損失補償
JP2012014808A (ja) * 2010-07-02 2012-01-19 Toshiba Corp 不揮発性半導体記憶装置
JP2021523511A (ja) * 2018-05-01 2021-09-02 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリの高電圧生成のための方法及び装置

Families Citing this family (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7656710B1 (en) * 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
US7395466B2 (en) * 2005-12-30 2008-07-01 Intel Corporation Method and apparatus to adjust voltage for storage location reliability
US20070174641A1 (en) * 2006-01-25 2007-07-26 Cornwell Michael J Adjusting power supplies for data storage devices
US7702935B2 (en) * 2006-01-25 2010-04-20 Apple Inc. Reporting flash memory operating voltages
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory
US7564718B2 (en) * 2006-04-12 2009-07-21 Infineon Technologies Flash Gmbh & Co. Kg Method for programming a block of memory cells, non-volatile memory device and memory card device
WO2007132453A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US8156403B2 (en) 2006-05-12 2012-04-10 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
US20080036487A1 (en) * 2006-08-09 2008-02-14 Arm Limited Integrated circuit wearout detection
US8060806B2 (en) 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7821826B2 (en) 2006-10-30 2010-10-26 Anobit Technologies, Ltd. Memory cell readout using successive approximation
US8037231B2 (en) * 2006-11-28 2011-10-11 Intel Corporation Memory architecture for separation of code and data in a memory device
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US20080141082A1 (en) * 2006-12-06 2008-06-12 Atmel Corporation Test mode multi-byte programming with internal verify and polling function
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
CN101715595A (zh) 2007-03-12 2010-05-26 爱诺彼得技术有限责任公司 存储器单元读取阈的自适应估计
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US20080288712A1 (en) 2007-04-25 2008-11-20 Cornwell Michael J Accessing metadata with an external host
US7913032B1 (en) 2007-04-25 2011-03-22 Apple Inc. Initiating memory wear leveling
KR100927119B1 (ko) * 2007-05-10 2009-11-18 삼성전자주식회사 불 휘발성 반도체 메모리 장치 및 그것의 프로그램 방법
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US7697365B2 (en) * 2007-07-13 2010-04-13 Silicon Storage Technology, Inc. Sub volt flash memory system
US7729161B2 (en) * 2007-08-02 2010-06-01 Macronix International Co., Ltd. Phase change memory with dual word lines and source lines and method of operating same
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
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
KR101506655B1 (ko) * 2008-05-15 2015-03-30 삼성전자주식회사 메모리 장치 및 메모리 데이터 오류 관리 방법
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
JP2010211883A (ja) * 2009-03-11 2010-09-24 Toshiba Corp 不揮発性半導体記憶装置
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8243520B2 (en) * 2009-11-02 2012-08-14 Infineon Technologies Ag Non-volatile memory with predictive programming
US8130553B2 (en) * 2009-12-02 2012-03-06 Seagate Technology Llc Systems and methods for low wear operation of solid state memory
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US9741436B2 (en) 2010-07-09 2017-08-22 Seagate Technology Llc Dynamically controlling an operation execution time for a storage device
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8310870B2 (en) * 2010-08-03 2012-11-13 Sandisk Technologies Inc. Natural threshold voltage distribution compaction in non-volatile memory
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
KR101201582B1 (ko) * 2010-09-06 2012-11-14 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8842469B2 (en) * 2010-11-09 2014-09-23 Freescale Semiconductor, Inc. Method for programming a multi-state non-volatile memory (NVM)
TWI447731B (zh) * 2010-12-01 2014-08-01 Phison Electronics Corp 資料讀取方法、記憶體儲存裝置及其控制器
US8605531B2 (en) * 2011-06-20 2013-12-10 Intel Corporation Fast verify for phase change memory with switch
JP5950591B2 (ja) * 2012-01-31 2016-07-13 エスアイアイ・セミコンダクタ株式会社 ボルテージレギュレータ
US9355688B2 (en) 2012-05-08 2016-05-31 Intel Corporation Adaptive voltage input to a charge pump
KR101996004B1 (ko) 2012-05-29 2019-07-03 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법 및 그것의 메모리 시스템
US8724404B2 (en) 2012-10-15 2014-05-13 United Microelectronics Corp. Memory, supply voltage generation circuit, and operation method of a supply voltage generation circuit used for a memory array
KR102221752B1 (ko) 2014-03-20 2021-03-02 삼성전자주식회사 메모리 장치의 프로그램 방법 및 이를 포함하는 데이터 독출 방법
KR20150130849A (ko) * 2014-05-14 2015-11-24 에스케이하이닉스 주식회사 반도체 장치의 동작 방법
KR102314135B1 (ko) 2015-06-22 2021-10-18 삼성전자 주식회사 적응적인 루프를 수행하는 플래시 메모리 장치, 메모리 시스템 및 그 동작방법
KR102251815B1 (ko) 2015-07-02 2021-05-13 삼성전자주식회사 메모리 장치 및 메모리 시스템
US9489990B1 (en) * 2015-11-17 2016-11-08 Atmel Corporation Adaptive non-volatile memory programming
US10082964B2 (en) 2016-04-27 2018-09-25 Micron Technology, Inc Data caching for ferroelectric memory
KR20180096845A (ko) * 2017-02-20 2018-08-30 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
CN110232945B (zh) * 2018-03-06 2021-04-27 华邦电子股份有限公司 存储器装置以及其写入/擦除方法
JP2020009511A (ja) 2018-07-05 2020-01-16 キオクシア株式会社 メモリシステム及び不揮発性半導体メモリ
US10741256B2 (en) * 2018-09-18 2020-08-11 Western Digital Technologies, Inc. Data storage systems and methods for improved recovery after a write abort event
US10614898B1 (en) 2018-09-19 2020-04-07 Sandisk Technologies Llc Adaptive control of memory cell programming voltage
US11081170B2 (en) 2018-12-19 2021-08-03 Micron Technology, Inc. Apparatus and methods for programming memory cells responsive to an indication of age of the memory cells
CN111951857B (zh) * 2019-05-15 2023-06-09 兆易创新科技集团股份有限公司 一种非易失性存储器的编程方法及控制装置
CN111951870B (zh) * 2019-05-15 2023-06-20 兆易创新科技集团股份有限公司 一种非易失性存储器的编程方法及控制装置
US10964402B1 (en) * 2020-02-19 2021-03-30 Sandisk Technologies Llc Reprogramming memory cells to tighten threshold voltage distributions and improve data retention
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11749346B2 (en) * 2021-05-19 2023-09-05 Micron Technology, Inc. Overwrite mode in memory programming operations
WO2023272548A1 (en) * 2021-06-30 2023-01-05 Yangtze Memory Technologies Co., Ltd. Data protection for three-dimensional nand memory
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11176175A (ja) * 1997-12-11 1999-07-02 Toshiba Corp 不揮発性半導体記憶装置
JP2002025283A (ja) * 2000-06-27 2002-01-25 Hynix Semiconductor Inc フラッシュメモリ素子の消去方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257225A (en) * 1992-03-12 1993-10-26 Micron Technology, Inc. Method for programming programmable devices by utilizing single or multiple pulses varying in pulse width and amplitude
US5357463A (en) * 1992-11-17 1994-10-18 Micron Semiconductor, Inc. Method for reverse programming of a flash EEPROM
DE19542029C1 (de) * 1995-11-10 1997-04-10 Siemens Ag Verfahren zum selbsttätigen Ermitteln der nötigen Hochspannung zum Programmieren/Löschen eines EEPROMs
KR100208433B1 (ko) * 1995-12-27 1999-07-15 김영환 플래쉬 메모리 소자 및 그를 이용한 프로그램 방법
US5768287A (en) * 1996-10-24 1998-06-16 Micron Quantum Devices, Inc. Apparatus and method for programming multistate memory device
US6188613B1 (en) * 1998-10-08 2001-02-13 Micron Technology, Inc. Device and method in a semiconductor memory for erasing/programming memory cells using erase/program speeds stored for each cell
US6493270B2 (en) * 1999-07-01 2002-12-10 Micron Technology, Inc. Leakage detection in programming algorithm for a flash memory device
JP4250325B2 (ja) * 2000-11-01 2009-04-08 株式会社東芝 半導体記憶装置
US6466480B2 (en) * 2001-03-27 2002-10-15 Micron Technology, Inc. Method and apparatus for trimming non-volatile memory cells
KR100496866B1 (ko) * 2002-12-05 2005-06-22 삼성전자주식회사 미프로그램된 셀들 및 과프로그램된 셀들 없이 균일한문턱 전압 분포를 갖는 플레쉬 메모리 장치 및 그프로그램 검증 방법
US6882567B1 (en) * 2002-12-06 2005-04-19 Multi Level Memory Technology Parallel programming of multiple-bit-per-cell memory cells on a continuous word line
US7392436B2 (en) * 2003-05-08 2008-06-24 Micron Technology, Inc. Program failure recovery
KR100505707B1 (ko) * 2003-08-26 2005-08-03 삼성전자주식회사 프로그램 동작시 가변되는 비트 라인의 전압 레벨을조절하는 플래쉬 메모리 장치의 프로그램 제어회로 및 그제어방법
US6977842B2 (en) * 2003-09-16 2005-12-20 Micron Technology, Inc. Boosted substrate/tub programming for flash memories
US6898126B1 (en) * 2003-12-15 2005-05-24 Powerchip Semiconductor Corp. Method of programming a flash memory through boosting a voltage level of a source line

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11176175A (ja) * 1997-12-11 1999-07-02 Toshiba Corp 不揮発性半導体記憶装置
JP2002025283A (ja) * 2000-06-27 2002-01-25 Hynix Semiconductor Inc フラッシュメモリ素子の消去方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011513885A (ja) * 2008-02-29 2011-04-28 マイクロン テクノロジー, インク. メモリ素子のプログラミング中の電荷損失補償
JP2010040144A (ja) * 2008-08-07 2010-02-18 Toshiba Corp 不揮発性半導体記憶システム
US7952958B2 (en) 2008-08-07 2011-05-31 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage system
JP2012014808A (ja) * 2010-07-02 2012-01-19 Toshiba Corp 不揮発性半導体記憶装置
JP2021523511A (ja) * 2018-05-01 2021-09-02 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリの高電圧生成のための方法及び装置
JP7288461B2 (ja) 2018-05-01 2023-06-07 シリコン ストーリッジ テクノロージー インコーポレイテッド 深層学習人工ニューラルネットワークにおけるアナログニューラルメモリの高電圧生成のための方法及び装置
US11727989B2 (en) 2018-05-01 2023-08-15 Silicon Storage Technology, Inc. Programming analog neural memory cells in deep learning artificial neural network

Also Published As

Publication number Publication date
TW200713284A (en) 2007-04-01
KR100956709B1 (ko) 2010-05-06
US20090073772A1 (en) 2009-03-19
TWI305918B (en) 2009-02-01
US20060285396A1 (en) 2006-12-21
ATE425539T1 (de) 2009-03-15
DE602006005664D1 (de) 2009-04-23
EP1894207A1 (en) 2008-03-05
US20080031047A1 (en) 2008-02-07
CN101268520B (zh) 2012-03-28
KR20080019713A (ko) 2008-03-04
US20100142283A1 (en) 2010-06-10
EP1894207B1 (en) 2009-03-11
CN101268520A (zh) 2008-09-17
WO2006138333A1 (en) 2006-12-28
US7239557B2 (en) 2007-07-03
US7453737B2 (en) 2008-11-18
JP4640660B2 (ja) 2011-03-02
US7876623B2 (en) 2011-01-25
US7663934B2 (en) 2010-02-16

Similar Documents

Publication Publication Date Title
JP4640660B2 (ja) プログラミングに失敗したことが検出されたビットの数に応じて最適化された電圧レベルによってフラッシュメモリーにプログラムする方法。
USRE46264E1 (en) Verification process for non-volatile storage
JP4901348B2 (ja) 半導体記憶装置およびその制御方法
US8085591B2 (en) Charge loss compensation during programming of a memory device
EP2427885B1 (en) Multiple level program verify in a memory device
US20080158980A1 (en) Non-volatile storage system with initial programming voltage based on trial
US20130163344A1 (en) Programming to mitigate memory cell performance differences
US8213233B2 (en) Reduction of quick charge loss effect in a memory device
US20080158979A1 (en) Method for programming with initial programming voltage based on trial
US8391080B2 (en) Erase voltage reduction in a non-volatile memory device
US7733705B2 (en) Reduction of punch-through disturb during programming of a memory device
US7468924B2 (en) Non-volatile memory device capable of reducing threshold voltage distribution
US7944755B2 (en) Erase verify in memory devices
US9343168B2 (en) Multiple step programming in a memory device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100924

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100924

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: 20101102

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101118

R150 Certificate of patent or registration of utility model

Ref document number: 4640660

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131210

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees