Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7814858B2 - マルチページデータをプログラムするための不揮発性メモリ装置の動作方法 - Google Patents
[go: Go Back, main page]

JP7814858B2 - マルチページデータをプログラムするための不揮発性メモリ装置の動作方法 - Google Patents

マルチページデータをプログラムするための不揮発性メモリ装置の動作方法

Info

Publication number
JP7814858B2
JP7814858B2 JP2021130653A JP2021130653A JP7814858B2 JP 7814858 B2 JP7814858 B2 JP 7814858B2 JP 2021130653 A JP2021130653 A JP 2021130653A JP 2021130653 A JP2021130653 A JP 2021130653A JP 7814858 B2 JP7814858 B2 JP 7814858B2
Authority
JP
Japan
Prior art keywords
page data
read
data
sensing
memory cells
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
JP2021130653A
Other languages
English (en)
Other versions
JP2022034536A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2022034536A publication Critical patent/JP2022034536A/ja
Application granted granted Critical
Publication of JP7814858B2 publication Critical patent/JP7814858B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • 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
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/08Address circuits; Decoders; Word-line control 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/26Sensing or reading circuits; Data output 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/30Power supply 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/52Protection of memory contents; Detection of errors in memory contents
    • 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
    • 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
    • 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
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/40Response verification devices using compression techniques
    • G11C2029/4002Comparison of products, i.e. test results of chips or with golden chip
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5623Concurrent multilevel programming and reading
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5644Multilevel memory comprising counting devices
    • 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/025Detection or location of defective auxiliary circuits, e.g. defective refresh counters in signal lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • Non-Volatile Memory (AREA)
  • Memory System (AREA)
  • Computer Security & Cryptography (AREA)

Description

本発明は、半導体装置に関し、さらに詳細には、マルチページデータをプログラムするための不揮発性メモリ装置の動作方法に関する。
半導体メモリは、SRAM、DRAMのように電源供給が遮断されれば、保存していたデータが消滅する揮発性メモリ装置と、フラッシュメモリ装置、PRAM、MRAM、RRAM、FRAMのように電源供給が遮断されても、保存していたデータを保持する不揮発性メモリ装置とに区分される。
不揮発性メモリ装置のうち、フラッシュメモリ装置は、ページ単位またはワードライン単位でプログラム動作を遂行することができる。フラッシュメモリ装置は、選択ワードラインに連結されたメモリセルに複数のページに対応するデータ(以下、マルチページデータと称する)をプログラムすることができる。その場合、メモリセルそれぞれは、複数のビットを保存することができる。
マルチページデータに対するプログラム過程で選択ワードラインに高いプログラム電圧が印加される場合、選択ワードラインに隣接したワードラインに連結されたメモリセルに劣化が発生しうる。このような劣化発生を減少させるために、マルチページデータに対する1つのプログラムサイクルの間、マルチページデータのうち、一部ページデータを先にプログラムし、残りのページデータを後でプログラムするプログラム技法が使用されている。そのようなプログラム技法によれば、一部ページデータに係わるプログラム動作時に発生するエラーのレベルによってフラッシュメモリ装置の信頼性が低下しうる。
本発明が解決しようとする課題は、不揮発性メモリ装置の信頼性を向上させるための不揮発性メモリ装置のプログラム動作方法を提供することである。
本発明の一実施例によるマルチページデータをプログラムするための不揮発性メモリ装置の動作方法は、メモリコントローラから前記マルチページデータを受信する段階、前記マルチページデータのうち、第1ページデータを選択ワードラインに隣接したワードラインに連結された第1メモリセルにプログラムする段階、前記第1ページデータをプログラムした後、前記選択ワードラインに連結された第2メモリセルに予め保存されている以前ページデータを第1センシング値及び第2センシング値に基づいて読み取る段階、及び前記第1センシング値に基づいて読み取られた前記以前ページデータの第1ビットと前記第2センシング値に基づいて読み取られた前記以前ページデータの第2ビットとを比較して算出された第1フェイルビット数によって前記第2メモリセルから読み取られた前記以前ページデータ及び前記マルチページデータのうち、第2ページデータを前記第2メモリセルにプログラムする段階を含む。
本発明の一実施例によるマルチページデータをプログラムするための不揮発性メモリ装置の動作方法は、メモリコントローラから前記マルチページデータのうち、第1ページデータを受信する段階、前記第1ページデータを選択ワードラインに連結されたメモリセルにプログラムする段階、前記第1ページデータをプログラムした後、前記メモリコントローラから前記マルチページデータのうち、第2ページデータを受信する段階、前記第2ページデータを受信した後、前記メモリセルに保存された第1ページデータを第1センシング値及び第2センシング値に基づいて読み取る段階、及び前記第1センシング値に基づいて読み取られた前記第1ページデータの第1ビットと前記第2センシング値に基づいて読み取られた前記第1ページデータの第2ビットとを比較して算出された第1フェイルビット数によって前記メモリセルから読み取られた前記第1ページデータ及び前記第2ページデータを前記メモリセルにプログラムする段階を含む。
本発明の一実施例によるマルチページデータをプログラムするための不揮発性メモリ装置の動作方法は、メモリコントローラから前記マルチページデータを受信する段階、前記マルチページデータのうち、少なくとも1つのページデータを選択ワードラインに隣接したワードラインに連結された第1メモリセルにプログラムする段階、前記少なくとも1つのページデータをプログラムした後、前記選択ワードラインに連結された第2メモリセルに予め保存されている少なくとも1つの以前ページデータを第1読取電圧及び第2読取電圧に基づいて読み取る段階、前記第2メモリセルのうち、前記第1読取電圧と前記第2読取電圧とのしきい値電圧を有する失敗セルの個数が基準値未満である場合、前記第2メモリセルから読み取られた前記少なくとも1つの以前ページデータ及び前記マルチページデータのうち、残りのページデータを前記第2メモリセルにプログラムする段階、及び前記失敗セルの個数が前記基準値以上である場合、前記マルチページデータに対するプログラム失敗を示す状態情報を前記メモリコントローラに伝送する段階を含む。
本発明の一実施例によるメモリ装置は、第1ワードラインに連結された第1メモリセル及び前記第1ワードラインに隣接した第2ワードラインに連結された第2メモリセルを含むメモリセルアレイ、メモリコントローラからのマルチページデータに対するプログラムコマンドに応答して前記マルチページデータのうち、第1ページデータを前記第2メモリセルにプログラムするように構成された制御ロジック回路、前記第1メモリセルに予め保存されている以前ページデータを第1センシング値及び第2センシング値に基づいて読み取るように構成されたページバッファ部、及び前記第1センシング値に基づいて読み取られた前記以前ページデータの第1ビットと前記第2センシング値に基づいて読み取られた前記以前ページデータの第2ビットとを比較して、第1フェイルビット数を算出するように構成されたフェイルビット算出器を含み、前記制御ロジック回路は、前記第1フェイルビット数によって前記第1メモリセルから読み取られた前記以前ページデータ及び前記マルチページデータのうち、第2ページデータを前記第1メモリセルにプログラムするようにさらに構成される。
本発明の実施例によれば、不揮発性メモリ装置は、マルチページデータに係わるプログラム動作を遂行する間、以前プログラムサイクルまたは現在プログラムサイクルでプログラムされた一部ページデータのエラーレベルを判別し、判別されたエラーレベルに基づいてマルチページデータに係わるプログラム動作を遂行することができる。これにより、プログラムされたマルチページデータの信頼性が向上しうる。
本発明の一実施例によるメモリシステムを例示的に示すブロック図である。 図1のメモリコントローラを例示的に示すブロック図である。 図1の不揮発性メモリ装置を例示的に示すブロック図である。 本発明の一実施例によるメモリブロックを例示的に示す回路図である。 本発明の一実施例によるマルチページデータに係わる1つのプログラム技法を説明するための図面である。 本発明の一実施例によるマルチページデータに係わる1つのプログラム技法を説明するための図面である。 本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。 本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。 図5A及び図5Bのプログラム技法による図1の不揮発性メモリ装置のマルチページデータに係わるプログラム動作を示すフローチャートである。 図7のマルチページプログラム動作において以前ページデータを読み取る動作を説明するための図面である。 2個の読取電圧に基づいて以前ページデータを読み取る方法を示す図面である。 選択ワードラインに図9Aの読取電圧を印加する例示を示す図面である。 2個のセンシング時点に基づいて以前ページデータを読み取る方法を示す図面である。 図3のフェイルビット算出器を例示的に示す図面である。 図10のフェイルビット算出器の動作による算出されたフェイルビット数の例示を示す図面である。 図7で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。 図12の不揮発性メモリ装置の動作による2個のセンシング値を調節する例示を示す。 図12のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。 図7で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。 図15のフローチャートによる図1のメモリシステムの例示的な動作を示すフローチャートである。 図15及び図16のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。 本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。 本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。 図18A及び図18Bのプログラム技法による図1の不揮発性メモリ装置のマルチページデータに係わるプログラム動作を示すフローチャートである。 図19で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。 図20のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。 図19で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。 図19及び図22のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。 本発明の一実施例によるメモリ装置の例示的な断面図である。 本発明の実施例によるメモリ装置が適用されたSSDシステムを示すブロック図である。
以下、本発明の技術分野で通常の知識を有する者が本発明を容易に実施可能なように本発明の実施例について明確且つ詳細に記載する。
図1は、本発明の一実施例によるメモリシステムを例示的に示すブロック図である。図1を参照すれば、メモリシステム10は、メモリコントローラ100及び不揮発性メモリ装置200を含んでもよい。メモリシステム10は、個人用コンピュータ、サーバ、データセンター、スマートフォン、タブレットPC、自律型走行自動車、携帯用ゲームコンソール、ウェアラブル機器のような電子装置に含まれたり、装着されたりもする。例えば、メモリシステム10は、SSD(Solid State Drive)のようなストレージ装置によっても具現化される。
メモリコントローラ100は、不揮発性メモリ装置200の全般的な動作を制御することができる。具体的に、メモリコントローラ100は、不揮発性メモリ装置200に制御信号CTRL、コマンドCMD、及び/またはアドレスADDRを提供して不揮発性メモリ装置200を制御することができる。例示的な実施例において、メモリコントローラ100は、外部のホストからの要請に応答して、不揮発性メモリ装置200がデータDATAを保存するか、またはデータDATAを出力するように不揮発性メモリ装置200を制御することができる。
不揮発性メモリ装置200は、メモリコントローラ100の制御によって動作することができる。例示的な実施例において、不揮発性メモリ装置200は、メモリコントローラ100の制御によって保存されたデータDATAを出力するか、またはメモリコントローラ100から提供されたデータDATAを保存することができる。
不揮発性メモリ装置200は、メモリセルアレイ210及びフェイルビット算出器220を含んでもよい。メモリセルアレイ210は、複数のメモリセルを含んでもよい。例えば、複数のメモリセルは、フラッシュメモリセルでもある。しかし、本発明は、それに限定されず、メモリセルは、RRAM(Resistive Random Access Memory)セル、FRAM(Ferroelectric Random Access Memory)セル、PRAM(Phase Change Random Access Memory)セル、TRAM(Thyristor Random Access Memory)セル、MRAM(Magnetic Random Access Memory)セルでもある。以下では、メモリセルがNANDフラッシュメモリセルである実施例を中心に本発明の実施例が説明される。
例示的な実施例において、メモリセルアレイ210に含まれた複数のメモリセルは、それぞれNビットデータを保存することができる(Nは、正の整数)。Nが1である場合、メモリセルは、SLC(Single Level Cell)と指称されうる。Nが2以上である場合、メモリセルは、MLC(Multi Level Cell)と指称されうる。例えば、Nが3である場合、メモリセルは、TLC(Triple Level Cell)と指称されうる。例えば、Nが4である場合、メモリセルは、QLC(Quadruple Level Cell)と指称されうる。
例示的な実施例において、不揮発性メモリ装置200は、1本のワードラインに連結されたメモリセルにマルチページデータをプログラムすることができる。その場合、ワードラインに連結されたメモリセルは、それぞれ2個以上のビットを保存することができる。例えば、TLCモードにおいて、不揮発性メモリ装置200は、メモリセルに3個のページデータをプログラムすることができる。QLCモードにおいて、不揮発性メモリ装置200は、メモリセルに4個のページデータをプログラムすることができる。
例示的な実施例において、不揮発性メモリ装置200は、1つのプログラムサイクルを通じてマルチページデータに係わるプログラム動作(以下、マルチページプログラム動作と称する)を遂行することができる。マルチページプログラム動作のための1つのプログラムサイクルは、マルチページデータのうち、少なくとも1つのページデータに係わるプログラム動作及び残りのページデータに係わるプログラム動作を含んでもよい。すなわち、不揮発性メモリ装置200は、複数のプログラム動作を通じてマルチページプログラム動作を遂行することができる。
不揮発性メモリ装置200は、1本のワードラインに連結されたメモリセルからデータDATAを読み取ることができる。その場合、不揮発性メモリ装置200は、ページ単位でメモリセルに保存されたデータDATA(すなわち、ページデータ)を読み取ることができる。例示的な実施例において、不揮発性メモリ装置200は、2個のセンシング値(すなわち、第1センシングを通じる第1センシング値及び第2センシングを通じる第2センシング値)に基づいて同じワードラインに連結されたメモリセルに保存されたページデータを読み取ることができる。例えば、不揮発性メモリ装置200は、第1レベルを有する第1読取電圧に基づいて特定メモリセルからページデータを読取り、第1ビットを検知し、第2レベルを有する第2読取電圧に基づいて特定メモリセルからページデータを読み取って第2ビットを検知することができる。例示的な実施例において、2個のセンシング値に基づいて遂行される読取動作は、マルチページプログラム動作のための1つのプログラムサイクルにおいて上述した複数のプログラム動作と共に行われる。
フェイルビット算出器220は、2個のセンシング値に基づいて読み取られるページデータに基づいてメモリセルにプログラムされたページデータのフェイルビットの個数(以下、フェイルビット数と称する)を算出することができる。ここで、フェイルビットは、原本ページデータのビットと異なると推定されるページデータのビットでもある。すなわち、算出されたフェイルビット数に基づいてプログラムされたページデータのエラーレベルが判別されうる。例えば、フェイルビット算出器220は、第1センシング値に基づいて読み取られたページデータ(以下、第1センシングデータと称する)の第1ビットと、第2センシング値に基づいて読み取られたページデータ(以下、第2センシングデータと称する)の第2ビットとを比較して、フェイルビット数を算出することができる。
例示的な実施例において、フェイルビット算出器220は、マルチページプログラム動作が行われる間に、プログラムされたページデータのフェイルビット数を算出することができる。その場合、プログラムされるマルチページデータの信頼性が向上するように算出されたフェイルビット数が用いられうる。これにより、不揮発性メモリ装置200の信頼性が向上しうる。
以下、算出されたフェイルビット数を用いるマルチページプログラム動作に係わる実施例が詳細に説明される。
図2は、図1のメモリコントローラを例示的に示すブロック図である。図1及び図2を参照すれば、メモリコントローラ100は、プロセッサ110、RAM 120、エラー訂正コード(ECC; Error Correction Code)回路130、ホストインターフェース回路140、及びメモリインターフェース回路150を含んでもよい。
プロセッサ110は、メモリコントローラ100の諸般の動作を制御することができる。RAM 120は、メモリコントローラ100の動作メモリ、バッファメモリ、キャッシュメモリとしても使用される。RAM 120に含まれた多様な情報、データ、または命令語などはプロセッサ110によって実行されるか、または管理されうる。
例示的な実施例において、RAM 120は、フラッシュ変換階層(FTL; Flash Translation Layer)を含んでもよい。フラッシュ変換階層(FTL)は、ホストHOST及び不揮発性メモリ装置200の間のインターフェース役割を遂行することができる。例えば、フラッシュ変換階層(FTL)は、ホストHOSTによって管理される論理的アドレスを不揮発性メモリ装置200で識別可能な物理的アドレスに変換するアドレス変換を遂行することができる。すなわち、不揮発性メモリ装置200の物理的保存空間は、フラッシュ変換階層(FTL)によって管理されうる。例示的な実施例において、フラッシュ変換階層(FTL)は、RAM 120に保存され、RAM 120に保存されたフラッシュ変換階層(FTL)は、プロセッサ110によって実行されうる。
ECC回路130は、不揮発性メモリ装置200から出力されたデータDATAのエラーを検出し、訂正するように構成される。例えば、ECC回路130は、不揮発性メモリ装置200に保存されるデータDATAに対するエラー訂正コードを生成することができる。生成されたエラー訂正コードは、データDATAと共に不揮発性メモリ装置200に保存されうる。不揮発性メモリ装置200からデータDATAが出力される場合、ECC回路130は、データDATAに対するエラー訂正コードを使用して不揮発性メモリ装置200から出力されたデータDATAに対するエラーを検出し、訂正する。
ホストインターフェース回路140は、メモリコントローラ100とホストHOSTとの通信を支援する。例示的な実施例において、ホストインターフェース回路140は、USB(Universal Serial Bus), SCSI(Small Computer System Interface), PCI express, ATA, PATA(Parallel ATA), SATA(Serial ATA), SAS(Serial Attached SCSI), UFS(Universal Flash Storage), NVMe(Nonvolatile Memory express)のような多様なインターフェースのうち、少なくとも1つを支援することができる。
メモリインターフェース回路150は、メモリコントローラ100と不揮発性メモリ装置200との通信を支援する。例示的な実施例において、メモリインターフェース回路150は、NANDインターフェースを支援することができる。
図3は、図1の不揮発性メモリ装置を例示的に示すブロック図である。図1及び図3を参照すれば、不揮発性メモリ装置200は、メモリセルアレイ210、フェイルビット算出器220、ロウ(row:行)デコーダ230、ページバッファ部240、入出力回路250、及び制御ロジック回路260を含んでもよい。
メモリセルアレイ210は、複数のメモリブロックBLK1~BLKzを含んでもよい(zは、正の整数)。複数のメモリブロックBLK1~BLKzそれぞれは、複数のメモリセルを含んでもよい。メモリセルアレイ210は、ビットラインBLを通じてページバッファ部240に連結され、ワードラインWL、ストリング選択ラインSSL、及びグラウンド選択ラインGSLを通じてロウデコーダ230に連結されうる。
例示的な実施例において、メモリセルアレイ210は、3次元メモリセルアレイを含んでもよく、3次元メモリセルアレイは、複数のNANDストリングを含んでもよい。各NANDストリングは、基板上に垂直に積層されたワードラインにそれぞれ連結されたメモリセルを含んでもよい。米国特許公開公報第7,679,133号、米国特許公開公報第8,553,466号、米国特許公開公報第8,654,587号、米国特許公開公報第8,559,235号、及び米国特許出願公開公報第2011/0233648号は、本明細書に引用形式によって結合される。例示的な実施例において、メモリセルアレイ210は、2次元メモリセルアレイを含んでもよく、2次元メモリセルアレイは、行及び列方向に沿って配置された複数のNANDストリングを含んでもよい。
ロウデコーダ230は、メモリコントローラ100からアドレスADDRを受信する。ロウデコーダ230は、アドレスADDRをデコーディングし、デコーディングされた結果に基づいて、ワードラインWL、ストリング選択ラインSSL、及びグラウンド選択ラインGSLの電圧を制御することができる。例えば、プログラム動作時、ロウデコーダ230は、選択ワードラインにプログラム電圧及びプログラム検証電圧を印加し、読取動作時、ロウデコーダ230は、選択ワードラインに読取電圧を印加することができる。
ページバッファ部240は、複数のページバッファPB1~PBnを含み(nは、3以上の整数)、複数のページバッファPB1~PBnは、複数のビットラインBLを通じてメモリセルとそれぞれ連結されうる。ページバッファ部240は、制御ロジック回路260の制御によってビットラインBLのうち、少なくとも1つのビットラインを選択することができる。ページバッファ部240は、動作モードによって書込ドライバまたは検知増幅器として動作する。例えば、プログラム動作時、ページバッファ部240は、選択されたビットラインにプログラムされるデータDATAに対応するビットライン電圧を印加することができる。読取動作時、ページバッファ部240は、選択されたビットラインの電流または電圧を検知してメモリセルに保存されたデータDATAを読み取ることができる。ページバッファ部240は、プログラムされるデータDATAを一時保存するか、メモリセルから読み取られたデータDATAを一時保存するように構成される。
例示的な実施例において、読取動作時、ページバッファ部240は、2個のセンシング値に基づいて1本のワードラインに連結されたメモリセルに保存されたページデータを読み取ることができる。これにより、ページバッファ部240は、第1センシング値に対応する第1センシングデータ及び第2センシング値に対応する第2センシングデータを一時保存することができる。
入出力回路250は、メモリコントローラ100から受信されたデータDATAをデータラインDLを通じてページバッファ部240に提供するか、またはデータラインDLを通じてページバッファ部240から受信されたデータDATAをメモリコントローラ100に提供する。例示的な実施例において、図3に図示されたコマンドCMD、アドレスADDR、または制御信号CTRLのような信号は、入出力回路250を通じて受信されうる。
制御ロジック回路260は、不揮発性メモリ装置200の諸般動作を制御することができる。例えば、制御ロジック回路260は、メモリコントローラ100からのコマンドCMDまたは制御信号CTRLに基づいて不揮発性メモリ装置200が多様な動作(例えば、プログラム動作、読取動作、消去動作など)を遂行するように、不揮発性メモリ装置200の各構成要素を制御することができる。
フェイルビット算出器220は、ページバッファ部240を通じてメモリセルから読み取られたデータDATAに基づいてメモリセルにプログラムされたデータDATAのフェイルビット数を算出することができる。すなわち、フェイルビット算出器220を通じて、プログラムされたページデータのフェイルビット数が算出されうる。例示的な実施例において、フェイルビット算出器220は、ページバッファ部240を通じて読み取られた第1センシングデータ及び第2センシングデータを比べて、フェイルビット数を算出することができる。算出されたフェイルビット数は、制御ロジック回路260に提供されうる。
例示的な実施例において、制御ロジック回路260は、フェイルビット数に基づいてマルチページプログラム動作を制御することができる。例えば、制御ロジック回路260は、マルチページプログラム動作を行いつつ、先にプログラムされたページデータのフェイルビット数によって先にプログラムされたページデータのエラーレベルを判別することができる。制御ロジック回路260は、判別されたエラーレベルに基づいてマルチページプログラム動作を制御することができる。
図4は、本発明の一実施例によるメモリブロックを例示的に示す回路図である。図4を参照すれば、メモリブロックBLKは、図3のメモリブロックBLK1~BLKzのうち、1つに対応する。メモリブロックBLKは、NANDストリングNS11~NS33を含み、各NANDストリング(例えば、NS11)は、直列に連結されたストリング選択トランジスタSST、複数のメモリセルMCs及びグラウンド選択トランジスタGSTを含んでもよい。
第1ビットラインBL1と共通ソースラインCSLとの間にNANDストリングNS11、NS21、NS31が位置し、第2ビットラインBL2と共通ソースラインCSLとの間にNANDストリングNS12、NS22、NS32が位置し、第3ビットラインBL3と共通ソースラインCSLとの間にNANDストリングNS13、NS23、NS33が位置する。ストリング選択トランジスタSSTは、対応するストリング選択ラインSSL1~SSL3に連結されうる。メモリセルMCsは、対応するワードラインWL1~WL8にそれぞれ連結されうる。グラウンド選択トランジスタGSTは、対応するグラウンド選択ラインGSL1~GSL3に連結されうる。ストリング選択トランジスタSSTは、対応するビットラインBL1~BL3に連結され、グラウンド選択トランジスタGSTは、共通ソースラインCSLに連結されうる。ここで、NANDストリングの本数、ワードラインの個数、ビットラインの個数、グラウンド選択ラインの個数及びストリング選択ラインの個数は、実施例によって多様に変更されうる。
以下、図5Aないし図23を参照して、本発明の多様な実施例によるマルチページプログラム動作が説明される。説明の便宜上、本発明の実施例によるマルチページプログラム動作は、第1ワードラインWL1を示すアドレスADDRに基づいて3個のページデータPD1~PD3をプログラム(すなわち、TLCモードでプログラム)することで仮定する(すなわち、第1ワードラインWL1が選択ワードライン)。しかし、本発明がこれに限定されるものではなく、本発明は、4個以上のページデータに対するマルチページプログラム動作に対しても適用されうる。
図5A及び図5Bは、本発明の一実施例によるマルチページデータに係わる1つのプログラム技法を説明するための図面である。マルチページプログラム動作のための1つのプログラムサイクルにおいて、図5A及び図5Bの動作が行われうる。説明の便宜上、第1ワードラインWL1に連結されたメモリセルは、以前プログラムサイクルで1つの以前ページデータPDpを保存したと仮定する。すなわち、以前プログラムサイクルでプログラムされた3個のページデータのうち、1つの以前ページデータPDpは、第1ワードラインWL1に連結されたメモリセルに予め保存されうる。図5Bに図示された散布図の横軸は、メモリセルのしきい値電圧を示し、縦軸は、メモリセルの個数を示す。
図3、図5A、及び図5Bを参照すれば、不揮発性メモリ装置200は、第1ないし第3ページデータPD1~PD3を受信することができる。例示的な実施例において、受信された第1ないし第3ページデータPD1~PD3は、不揮発性メモリ装置200のページバッファ部240に保存されうる。
不揮発性メモリ装置200は、第1ないし第3ページデータPD1~PD3のうち、1つのページデータ(例えば、第1ページデータPD1)を非選択ワードラインである第2ワードラインWL2に連結されたメモリセルにプログラム(以下、非選択プログラム動作PGM_unselと称する)することができる。例えば、第2ワードラインWL2は、第1ワードラインWL1に隣接したワードラインでもある。図5Bに図示されたように、不揮発性メモリ装置200は、第2ワードラインWL2に連結されたメモリセルが消去状態E及びプログラム状態P01のうち、いずれか1つの状態を有するように非選択プログラム動作PGM_unselを遂行することができる。非選択プログラム動作PGM_unselにおいて、プログラム状態P01を検証するために、非選択プログラム検証電圧VF01が使用されうる。第2ワードラインWL2に対する非選択プログラム動作PGM_unselが完了された場合、第2ワードラインWL2に連結されたメモリセルは、第1ページデータPD1を保存した状態であり、第1ワードラインWL1に連結されたメモリセルは、以前ページデータPDpを保存した状態である。
非選択プログラム動作PGM_unsel以後に、不揮発性メモリ装置200は、第1ワードラインWL1に連結されたメモリセルから以前ページデータPDpを読み取る(以下、以前ページデータ読取動作RD_preと称する)ことができる。図5Bに図示されたように、以前ページデータPDpが保存されたメモリセルそれぞれは、消去状態E及びプログラム状態P01のうち、いずれか1つの状態を有する。不揮発性メモリ装置200は、読取電圧VRD01を用いて以前ページデータ読取動作RD_preを遂行することで、以前ページデータPDpを読み取ることができる。
以前ページデータ読取動作RD_pre以後に、不揮発性メモリ装置200は、第2ページデータPD2、第3ページデータPD3、及び以前ページデータPDpに基づいて第1ワードラインWL1に連結されたメモリセルにプログラム動作(以下、選択プログラム動作PGM_selと称する)を遂行することができる。図5Bに図示されたように、選択プログラム動作PGM_selが行われることで、第1ワードラインWL1に連結されたメモリセルのうち、消去状態Eを有するメモリセルは、消去状態E及び第1ないし第3プログラム状態P1~P3のうち、いずれか1つの状態を有し、プログラム状態P01を有するメモリセルは、第4ないし第7プログラム状態P4~P7のうち、いずれか1つの状態を有することができる。選択プログラム動作PMG_selで、第1ないし第7プログラム状態P1~P7を検証するために、第1ないし第7プログラム検証電圧VF1~VF7が使用されうる。
選択プログラム動作PGM_selが完了された場合、第1ワードラインWL1に連結されたメモリセルは、第2ページデータPD2、第3ページデータPD3、及び以前ページデータPDpを保存し、第2ワードラインWL2に連結されたメモリセルは、第1ページデータPD1を保存することができる。
図6A及び図6Bは、本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。マルチページプログラム動作のための1つのプログラムサイクルにおいて、図6A及び図6Bの動作が行われうる。説明の便宜上、第1ワードラインWL1に連結されたメモリセルは、以前プログラムサイクルで2個の以前ページデータPDp1、PDp2を保存したと仮定する。すなわち、以前プログラムサイクルでプログラムされた3個のページデータのうち、2個のページデータPDp1、PDp2は、第1ワードラインWL1に連結されたメモリセルに予め保存されうる。図6Bに図示された散布図の横軸は、メモリセルのしきい値電圧を示し、縦軸は、メモリセルの個数を示す。
図3、図6A、及び図6Bを参照すれば、不揮発性メモリ装置200は、第1ないし第3ページデータPD1~PD3を受信することができる。不揮発性メモリ装置200は、第1ないし第3ページデータPD1~PD3のうち、2個のページデータ(例えば、第1及び第2ページデータPD1、PD2)を非選択ワードラインである第2ワードラインWL2に連結されたメモリセルにプログラムすることができる。図6Bに図示されたように、不揮発性メモリ装置200は、第2ワードラインWL2に連結されたメモリセルが消去状態E及び第1ないし第3非選択プログラム状態P01~P03のうち、いずれか1つの状態を有するように非選択プログラム動作PGM_unselを遂行することができる。非選択プログラム動作PGM_unselにおいて、非選択プログラム状態P01~P03を検証するために、第1ないし第3非選択プログラム検証電圧VF01~VF03が使用されうる。第2ワードラインWL2に対する非選択プログラム動作PGM_unselが完了された場合、第2ワードラインWL2に連結されたメモリセルは、第1及び第2ページデータPD1、PD2を保存した状態で、第1ワードラインWL1に連結されたメモリセルは、第1及び第2以前ページデータPDp1、PDp2を保存した状態である。
非選択プログラム動作PGM_unsel以後に、不揮発性メモリ装置200は、第1ワードラインWL1に連結されたメモリセルから第1及び第2以前ページデータPDp1、PDp2を読み取ることができる。図6Bに図示されたように、第1及び第2以前ページデータPDp1、PDp2が保存されたメモリセルそれぞれは、消去状態E及び第1ないし第3非選択プログラム状態P01~P03のうち、いずれか1つの状態を有する。不揮発性メモリ装置200は、第1ないし第3読取電圧VRD01~VRD03を用いて以前ページデータ読取動作RD_preを遂行することで、第1及び第2以前ページデータPDp1、PDp2を読み取ることができる。
以前ページデータ読取動作RD_pre以後に、不揮発性メモリ装置200は、第3ページデータPD3、第1以前ページデータPDp1、及び第2以前ページデータPDp2に基づいて第1ワードラインWL1に連結されたメモリセルにプログラム動作を遂行することができる。図6Bに図示されたように、選択プログラム動作PGM_selが行われることで、第1ワードラインWL1に連結されたメモリセルのうち、消去状態Eを有するメモリセルは、消去状態E及び第1プログラム状態P1のうち、いずれか1つの状態を有し、第1プログラム状態P01を有するメモリセルは、第2及び第3プログラム状態P2、P3のうち、いずれか1つの状態を有することができる。同様に、第2非選択プログラム状態P02を有するメモリセルは、第4及び第5プログラム状態P4、P5のうち、いずれか1つの状態を有し、第3非選択プログラム状態P03を有するメモリセルは、第6及び第7プログラム状態P6、P7のうち、いずれか1つの状態を有することができる。
選択プログラム動作PGM_selが完了された場合、第1ワードラインWL1に連結されたメモリセルは、第3ページデータPD3、第1以前ページデータPDp1、及び第2以前ページデータPDp2を保存し、第2ワードラインWL2に連結されたメモリセルは、第1ページデータPD1及び第2ページデータPD2を保存することができる。
例示的な実施例において、選択ワードラインである第1ワードラインWL1は、基板から近く位置するワードラインであり、非選択ワードラインである第2ワードラインWL2は、基板から遠く位置するワードラインでもある。しかし、本発明は、それに限定されるものではない。例えば、第1ワードラインWL1は、基板から遠く位置するワードラインであり、第2ワードラインWL2は、基板から近く位置するワードラインでもある。
上述したように、本発明の実施例によるマルチページプログラム技法は、マルチページデータのうち、少なくとも1つのページデータを選択ワードラインに隣接した非選択ワードラインに連結されたメモリセルにプログラムする動作(すなわち、非選択プログラム動作PGM_unsel)及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムする動作(すなわち、選択プログラム動作PGM_sel)を含んでもよい。例えば、第1ページデータは、選択ワードラインに隣接した非選択ワードラインに連結されたメモリセルにプログラムされ、次いで、第2及び第3ページデータは、選択ワードラインに連結されたメモリセルにプログラムされうる。この場合、選択ワードラインに連結されたメモリセルに予め保存されている少なくとも1つの以前ページデータが読取られ、読み取られた少なくとも1つの以前ページデータ及び残りのページデータに基づいて選択プログラム動作PGM_selが行われうる。このようなプログラム技法によれば、以前プログラムサイクルで以前ページデータに係わるプログラム動作時に発生するエラーレベルによって選択プログラム動作PGM_selを通じてプログラムされるページデータの信頼性が減少しうる。
以下、図7ないし図17を参照し、図5Aないし図6Bを参照して説明されたプログラム技法の信頼性を高めるためのマルチページプログラム動作が詳細に説明される。説明の便宜上、図5A及び図5Bに図示されたように、1つのページデータに対する非選択プログラム動作PGM_unselが行われる実施例を中心にマルチページプログラム動作が説明される。
図7は、図5A及び図5Bのプログラム技法による図1の不揮発性メモリ装置のマルチページデータに係わるプログラム動作を示すフローチャートである。図1、図3、及び図7を参照すれば、S201段階において、不揮発性メモリ装置200は、メモリコントローラ100からマルチページデータを受信することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からマルチページデータと共に選択ワードラインに対応するアドレスADDR及びマルチページデータに対するプログラムコマンドCMDをさらに受信することができる。
S202段階において、不揮発性メモリ装置200は、マルチページデータのうち、1つのページデータを非選択ワードラインに連結されたメモリセルにプログラムすることができる。例えば、第1ページデータPD1は、第2ワードラインWL2にプログラムされうる。
S203段階において、不揮発性メモリ装置200は、選択ワードラインに連結されたメモリセルに予め保存されている以前ページデータを第1センシング値及び第2センシング値に基づいて読み取ることができる。例えば、不揮発性メモリ装置200は、選択ワードラインに第1読取電圧を印加して以前ページデータを読取り、第2読取電圧を印加し、以前ページデータを読み取ることができる。他の例として、不揮発性メモリ装置200は、選択ワードラインに特定読取電圧(例えば、既設定のレベルを有する読取電圧)を印加し、第1センシング時点及び第2センシング時点でページバッファ部240のセンシングノードの電圧または電流を検知することで、以前ページデータを読み取ることができる。具体的に、不揮発性メモリ装置200は、選択ワードラインに特定読取電圧を印加し、第1デベロップ時間及び第2デベロップ時間の間、ページバッファ部240のセンシングノードをデベロップさせることで、以前ページデータを読み取ることができる。これにより、ページバッファ部240は、第1センシング値に基づいて読み取られた第1センシングデータ及び第2センシング値に基づいて読み取られた第2センシングデータを保存することができる。
S204段階において、不揮発性メモリ装置200は、第1センシング値に基づいて読み取られた以前ページデータ(すなわち、第1センシングデータ)の第1ビットと第2センシング値に基づいて読み取られた以前ページデータ(すなわち、第2センシングデータ)の第2ビットに基づいてフェイルビット数を算出することができる。例えば、フェイルビット算出器220は、第1ビットと第2ビットとを比較して互いに異なるビットの個数を判別することができる。フェイルビット算出器220は、判別されたビットの個数をフェイルビット数として算出することができる。
S205段階において、不揮発性メモリ装置200は、フェイルビット数が第1基準値未満であるか否かを判別することができる。ここで、第1基準値は、マルチページプログラム動作を続けて遂行するか否かを判断するための基準値である。例えば、S205段階は、制御ロジック回路260によっても遂行される。
フェイルビット数が第1基準値未満である場合(すなわち、プログラムされた以前ページデータのエラーレベルが低いと判別される場合)、S206段階において、不揮発性メモリ装置200は、読み取られた以前ページデータ及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。例えば、読み取られた以前ページデータは、第1センシング値または第2センシング値に基づいて読み取られたデータでもある。他の例として、読み取られた以前ページデータは、既設定の読取電圧に基づいて読み取られたデータでもある。
フェイルビット数が第1基準値以上である場合(すなわち、プログラムされた以前ページデータのエラーレベルが低くないと判別される場合)、不揮発性メモリ装置200は、S211段階またはS231段階を遂行することができる。S211段階は、図12を参照して後述され、S231段階は、図15を参照して後述される。例えば、不揮発性メモリ装置200は、マルチページプログラム動作を失敗として処理するか、読み取られた以前ページデータのエラーを訂正するか、または他のセンシング値に基づいて以前ページデータを再び読み取ることができる。
図8は、図7のマルチページプログラム動作において以前ページデータを読み取る動作を説明するための図面である。図3及び図8を参照すれば、NANDストリングNS1~NSnは、ビットラインBL1~BLnを通じてページバッファPB1~PBnにそれぞれ連結されうる。NANDストリングNS1~NSnは、メモリセルアレイ210に含まれ、ページバッファPB1~PBnは、ページバッファ部240に含まれうる。
NANDストリングNS1~NSnは、グラウンド選択トランジスタGST1~GSTn、メモリセルMC11~MCn8、及びストリング選択トランジスタSST1~SSTnを含んでもよい。グラウンド選択トランジスタGST1~GSTnは、共通ソースラインCSL及びグラウンド選択ラインGSLに連結され、メモリセルMC11~MCn8は、ワードラインWL1~WL8に連結されうる。ストリング選択トランジスタSST1~SSTnは、ストリング選択ラインSSL及びビットラインBL1~BLnに連結されうる。
図8に図示されたように、第1ワードラインWL1が選択ワードラインであり、第2ワードラインWL2が非選択ワードラインでもある。その場合、第1ワードラインWL1に連結されたメモリセルMC11~MCn1は、以前ページデータがプログラムされた状態であり、図7のS202段階によって第2ワードラインWL2に連結されたメモリセルMC12~MCn2は、マルチページデータのうち、1つのページデータがプログラムされた状態でもある。
図7のS203段階によって第1センシング値及び第2センシング値に基づいて第1ワードラインWL1に連結されたメモリセルMC11~MCn1から以前ページデータが読取される場合、ページバッファPB1~PBnには、第1センシングデータPDS1及び第2センシングデータPDS2が保存されうる。第1センシングデータPDS1は、ページバッファPB1~PBnの第1ラッチL1sに保存され、第2センシングデータPDS2は、ページバッファPB1~PBnの第2ラッチL2sに保存されうる。例えば、第1センシングデータPDS1及び第2センシングデータPDS2は、それぞれnビットデータでもある。その場合、第1センシングデータPDS1のビットPDS1[1:n]は、ページバッファPB1~PBnの第1ラッチL1sにそれぞれ保存され、第2センシングデータPDS2のビットPDS2[1:n]は、ページバッファPB1~PBnの第2ラッチL2sにそれぞれ保存されうる。例えば、第1センシング値に基づいてメモリセルMC11から出力された第1センシングデータPDS1のビットPDS1[1]は、第1ページバッファPB1の第1ラッチL1に保存され、第2センシング値に基づいてメモリセルMC11から出力された第2センシングデータPDS2のビットPDS2[1]は、第1ページバッファPB1の第2ラッチL2に保存されうる。同様に、第1センシング値に基づいてメモリセルMCn1から出力された第1センシングデータPDS1のビットPDS1[n]は、第nページバッファPBnの第1ラッチL1に保存され、第2センシング値に基づいてメモリセルMCn1から出力された第2センシングデータPDS2のビットPDS2[n]は、第nページバッファPBnの第2ラッチL2に保存されうる。
図9Aは、2個の読取電圧に基づいて以前ページデータを読み取る方法を示す図面である。図9Aの散布図の横軸は、メモリセルのしきい値電圧を示し、縦軸は、メモリセルの個数を示す。図9Aを参照すれば、以前ページデータがメモリセルにプログラムされた場合、プログラム正常状態でのメモリセルの散布(distribution:分布)と、プログラム不良状態でのメモリセルの散布とが図示される。プログラム正常状態は、プログラムされた以前ページデータのエラーレベルが相対的に低い状態を示し、プログラム不良状態は、プログラムされた以前ページデータのエラーレベルが相対的に高い状態を示す。図5Bを参照して説明したように、以前ページデータが保存されたメモリセルそれぞれは、消去状態E及びプログラム状態P01のうち、いずれか1つの状態を有することができる。
プログラム正常状態及びプログラム不良状態において、第1センシング値に基づいて以前ページデータを読み取るために、第1読取電圧VS1が図8の選択ワードライン(すなわち、第1ワードラインWL1)に印加され、第2センシング値に基づいて以前ページデータを読み取るために、第2読取電圧VS2が選択ワードラインに印加されうる。第1読取電圧VS1は、基準読取電圧VRDよりも小さく、第2読取電圧VS2は、基準読取電圧VRDよりも大きい。基準読取電圧VRDは、1つのセンシング値に基づいて遂行される一般的な読取動作で以前ページデータを読み取るための電圧でもある。例えば、基準読取電圧VRDは、図5Bの読取電圧VRD01に対応し、既設定のレベルを有することができる。しかし、本発明がこれに限定されるものではなく、第1読取電圧VS1のレベルまたは第2読取電圧VS2のレベルは、基準読取電圧VRDのレベルと同一である。
プログラム正常状態の場合、消去状態Eを有するメモリセルのしきい値電圧とプログラム状態P01を有するメモリセルのしきい値電圧は、互いに異なってもいる。例えば、図9Aに図示されたように、消去状態Eを有するメモリセルのしきい値電圧のうち、最高電圧は、第1読取電圧VS1よりも小さく、プログラム状態P01を有するメモリセルのしきい値電圧のうち、最小電圧は、第2読取電圧VS2よりも大きい。その場合、第1読取電圧VS1と第2読取電圧VS2とのしきい値電圧を有するメモリセルが存在しない。すなわち、第1読取電圧VS1に基づいて読み取られた以前ページデータのビットと第2読取電圧VS2に基づいて読み取られた以前ページデータのビットは、互いに同一でもある。このように、消去状態Eを有するメモリセルは、第1読取電圧VS1及び第2読取電圧VS2によっていずれも第1ビット(例えば、「1」)が保存されたメモリセル(以下、消去セルと称する)と判別され、プログラム状態P01を有するメモリセルは、第1読取電圧VS1及び第2読取電圧VS2によっていずれも第2ビット(例えば、「0」)が保存されたメモリセル(以下、プログラムセルと称する)と判別されうる。その場合、フェイルビット数は、0個と算出されうる。
プログラム不良状態の場合、消去状態Eを有するメモリセルのしきい値電圧のうち、一部とプログラム状態P01を有するメモリセルのしきい値電圧のうち、一部は、同一でもある。すなわち、消去状態Eを有するメモリセルのしきい値電圧のうち、一部は、プログラム状態P01を有するメモリセルのしきい値電圧のうち、一部とオーバーラップされうる。例えば、図9Aに図示されたように、消去状態Eを有するメモリセルのしきい値電圧のうち、最高電圧は、第1読取電圧VS1より大きく、プログラム状態P01を有するメモリセルのしきい値電圧のうち、最小電圧は、第2読取電圧VS2よりも小さい。その場合、第1読取電圧VS1と第2読取電圧VS2とのしきい値電圧を有するメモリセルが存在することができる。すなわち、第1読取電圧VS1に基づいて読み取られた以前ページデータのビットのうち、一部は、第2読取電圧VS2に基づいて読み取られた以前ページデータのビットのうち、一部と互いに異なってもいる。例えば、消去状態Eを有するメモリセルのうち、第1読取電圧VS1よりも大きいしきい値電圧を有するメモリセルにおいて、第1読取電圧VS1に基づいて検知されるビットと第2読取電圧VS2に基づいて検知されるビットは、互いに異なってもいる。また、プログラム状態P01を有するメモリセルのうち、第2読取電圧VS2よりも小さいしきい値電圧を有するメモリセルにおいて、第1読取電圧VS1に基づいて検知されるビットと第2読取電圧VS2に基づいて検知されるビットは、互いに異なってもいる。このように、消去状態Eを有するメモリセルのうち、第1読取電圧VS1よりも小さいしきい値電圧を有するメモリセルは、消去セルと判別され、第1読取電圧VS1よりも大きいしきい値電圧を有するメモリセルは、第1読取電圧VS1及び第2読取電圧VS2によって互いに異なるビットが保存されたメモリセル(以下、失敗セルと称する)と判別されうる。また、プログラム状態P01を有するメモリセルのうち、第2読取電圧VS2よりも大きいしきい値電圧を有するメモリセルは、プログラムセルと判別され、第2読取電圧VS2よりも小さいしきい値電圧を有するメモリセルは、失敗セルと判別されうる。すなわち、失敗セルは、第1読取電圧VS1と第2読取電圧VS2とのしきい値電圧を有するメモリセルでもある。その場合、算出されるフェイルビット数は、失敗セルの個数と同一でもある。
図9Bは、選択ワードラインに図9Aの読取電圧を印加する例示を示す図面である。図9Bを参照すれば、図9Aを参照して説明したように、2個のセンシング値に基づいて第1ワードラインWL1(すなわち、選択ワードライン)に読取電圧VS1、VS2が印加されうる。例えば、第1ワードラインWL1に第1読取電圧VS1及び第2読取電圧VS2が順次に印加されることで、第1センシング及び第2センシングが行われうる。第1センシング及び第2センシングに基づいてフェイルビット数が算出されうる。
図9Cは、2個のセンシング時点に基づいて以前ページデータを読み取る方法を示す図面である。図9Cのグラフの横軸は、時間を示し、縦軸は、メモリセルに保存されたビットを検知するための図3のページバッファ部240のセンシングノードの電圧を示す。図9Cを参照すれば、メモリセルにプログラムされた以前ページデータを読み取るためのプリチャージ区間とデベロッピング区間でセンシングノードの電圧変化が図示される。デベロッピング区間でセンシングノードの電圧変化は、メモリセルのしきい値電圧によっても異なる。
プログラム正常状態及びプログラム不良状態で以前ページデータを読み取るために図9Aの基準読取電圧VRDが図8の選択ワードライン(すなわち、第1ワードラインWL1)に印加されうる。その場合、第1センシング値に基づいて以前ページデータを読み取るために、第1センシング時点tS1でセンシングノード電圧と基準電圧Vrとが比較され、第2センシング値に基づいて以前ページデータを読み取るために、第2センシング時点tS2でセンシングノード電圧と基準電圧Vrとが比較されうる。センシングノード電圧が基準電圧Vrよりも大きい場合、メモリセルは、プログラムセルと判別され、センシングノード電圧が基準電圧Vrよりも小さい場合、メモリセルは、消去セルと判別される。すなわち、第1センシング時点tS1は、図9Aの第1読取電圧VS1に対応し、第2センシング時点tS2は、第2読取電圧VS2に対応しうる。
第1センシング時点tS1は、基準センシング時点tRDよりも早く、第2センシング時点tS2は、基準センシング時点tRDよりも遅い。すなわち、第1センシング時点tS1は、基準センシング時点tRD以前となり、第2センシング時点tS2は、基準センシング時点tRD以後となる。基準センシング時点tRDは、1つのセンシング値に基づいて遂行される一般的な読取動作において以前ページデータを読み取るためのセンシング時点でもあり、既設定の値でもある。しかし、本発明がそれに限定されるものではなく、第1センシング時点tS1または第2センシング時点tS2は、基準センシング時点tRDと同一でもある。
プログラム正常状態の場合、メモリセルそれぞれは、プログラムセル及び消去セルのうち、1つと判別されうる。例えば、図9Cに図示されたように、第1センシング時点tS1及び第2センシング時点tS2において、センシングノード電圧が基準電圧Vrよりも大きい場合、メモリセルは、プログラムセルと判別され、第1センシング時点tS1及び第2センシング時点tS2においてセンシングノード電圧が基準電圧Vrよりも小さい場合、メモリセルは、消去セルと判別されうる。その場合、フェイルビット数は、0個と算出されうる。
プログラム不良状態の場合、メモリセルそれぞれは、プログラムセル、消去セル、及び失敗セルのうち、1つと判別されうる。例えば、図9Cに図示されたように、第1センシング時点tS1及び第2センシング時点tS2においてセンシングノード電圧が基準電圧Vrよりも大きい場合、メモリセルは、プログラムセルと判別され、第1センシング時点tS1及び第2センシング時点tS2でセンシングノード電圧が基準電圧Vrよりも小さい場合、メモリセルは、消去セルと判別されうる。第1センシング時点tS1において、センシングノード電圧が基準電圧Vrよりも大きく、第2センシング時点tS2においてセンシングノード電圧が基準電圧Vrよりも小さい場合、メモリセルは、失敗セルと判別されうる。その場合、算出されるフェイルビット数は、失敗セルの個数でもある。
図10は、図3のフェイルビット算出器を例示的に示す図面である。図10を参照すれば、フェイルビット算出器220は、第1ないし第n比較器221~22n、及びカウンタ270を含んでもよい。比較器221~22nは、図8のページバッファPB1~PBnの第1ラッチL1s及び第2ラッチL2sに保存された第1センシングデータPDS1及び第2センシングデータPDS2を受信することができる。例えば、第1比較器221は、第1センシングデータの第1ビットPDS1[1]及び第2センシングデータの第1ビットPDS2[1]を受信し、第2比較器222は、第1センシングデータの第2ビットPDS1[2]及び第2センシングデータの第2ビットPDS2[2]を受信することができる。同様に、第n比較器22nは、第1センシングデータの第nビットPDS1[n]及び第2センシングデータの第nビットPDS2[n]を受信することができる。
比較器221~22nそれぞれは、受信される2個のビットを比較して比較結果を出力することができる。例えば、第1比較器221は、第1センシングデータの第1ビットPDS1[1]及び第2センシングデータの第1ビットPDS2[1]を比較して第1比較結果CR1を出力することができる。第2比較器222は、第1センシングデータの第2ビットPDS1[2]及び第2センシングデータの第2ビットPDS2[2]を比較して第2比較結果CR2を出力することができる。同様に、第n比較器22nは、第1センシングデータの第nビットPDS1[n]及び第2センシングデータの第nビットPDS2[n]を比較して第n比較結果CRnを出力することができる。比較器221~22nそれぞれは、2個のビットが同一である場合、第1値(例えば、「0」)を比較結果として出力し、2個のビットが互いに異なる場合、第2値(例えば、「1」)を比較結果として出力することができる。例えば、比較器221~22nそれぞれは、XORゲートによって具現化されうるが、本発明が、それに限定されるものではない。
カウンタ270は、比較結果CR1~CRnに基づいてフェイルビット数FBNを算出することができる。例示的な実施例において、カウンタ270は、比較結果CR1~CRnのうち、2個のビットが互いに異なるということを示す特定値(例えば、「1」)の個数をカウントしてフェイルビット数FBNを算出することができる。算出されたフェイルビット数FBNは、制御ロジック回路260に提供されうる。制御ロジック回路260は、算出されたフェイルビット数FBNに基づいてマルチページプログラム動作を遂行することができる。
図11は、図10のフェイルビット算出器の動作による算出されたフェイルビット数の例示を示す図面である。説明の便宜上、図8の選択ワードライン(すなわち、第1ワードラインWL1)に連結されたメモリセルMC11~MCn1が7個(すなわち、nが7)であると仮定する。図10及び図11を参照すれば、フェイルビット算出器220は、第1センシング値に基づいてメモリセルMC11~MC71から読み取られた第1センシングデータPDS1と、第2センシング値に基づいて、メモリセルMC11~MC71から読み取られた第2センシングデータPDS2を受信することができる。例えば、図11に図示されたように、第1センシングデータPDS1は、「0101111」であり、第2センシングデータPDS2は、「0010111」でもある。その場合、フェイルビット算出器220は、第1センシングデータPDS1と第2センシングデータPDS2とを比較して比較結果CRとして「0111000」を獲得することができる。フェイルビット算出器220は、比較結果CRのうち、メモリセルMC11~MC71それぞれから読み取られた2個のビットが互いに異なるということを示す「1」をカウントし、フェイルビット数FBNを算出することができる。これにより、フェイルビット数FBNとして「3」が算出されうる。
図12は、図7で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。図1及び図12を参照すれば、算出されたフェイルビット数が第1基準値以上である場合、S211段階において、不揮発性メモリ装置200は、選択ワードラインに連結されたメモリセルに予め保存されている以前ページデータを第1補正センシング値及び第2補正センシング値に基づいて再び読み取ることができる。ここで、第1補正センシング値及び第2補正センシング値は、プログラムされた以前ページデータのエラーレベルがさらに正確に判別されるように、不揮発性メモリ装置200内部のアルゴリズムを通じて決定されうる。例えば、第1補正センシング値は、第1センシング値(例えば、S204段階に用いられる第1センシング値)と異なり、第2補正センシング値は、第2センシング値(例えば、S204段階に用いられる第2センシング値)と異なってもいる。
S212段階において、不揮発性メモリ装置200は、第1補正センシング値に基づいて読み取られた以前ページデータの第1ビットと、第2補正センシング値に基づいて読み取られた以前ページデータの第2ビットに基づいて、フェイルビット数を算出することができる。図8ないし図11を参照して説明したように、不揮発性メモリ装置200は、再び読み取られた以前ページデータに対応するフェイルビット数を算出することができる。
S213段階において、不揮発性メモリ装置200は、算出されたフェイルビット数が第1基準値未満であるか否かを判別することができる。例えば、第1基準値は、S205段階における第1基準値と同一でもあるが、本発明が、それに限定されるものではない。算出されたフェイルビット数が第1基準値未満である場合(すなわち、再び読み取られた以前ページデータのエラーレベルが相対的に低いと判断される場合)、S214段階において、不揮発性メモリ装置200は、再び読み取られた以前ページデータ及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。
算出されたフェイルビット数が第1基準値以上である場合(すなわち、再び読み取られた以前ページデータのエラーレベルが相対的に高いと判断される場合)、S215段階において、不揮発性メモリ装置200は、メモリコントローラ100にプログラム失敗情報を伝送することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からの状態情報要請に応答してプログラム失敗を示す状態情報をメモリコントローラ100に伝送することができる。
S216段階において、不揮発性メモリ装置200は、読取またはプログラム設定値をアップデートすることができる。例えば、不揮発性メモリ装置200は、多様なワードライン(例えば、図8の第1ないし第8ワードラインWL1~WL8)及び多様なメモリブロックに対してS211ないしS215段階を行いつつ、メモリブロックまたはメモリダイの特性情報を抽出することができる。不揮発性メモリ装置200は、抽出された特性情報に基づいて読取設定値(例えば、読取電圧、デベロップ時間またはセンシング時点)、またはプログラム設定値(例えば、プログラム電圧またはプログラム検証電圧)をアップデートすることができる。例えば、不揮発性メモリ装置200は、抽出されたメモリブロックまたはメモリダイの特性情報に基づいて読取電圧、デベロップ時間またはセンシング時点を減少または増加させうる。不揮発性メモリ装置200は、抽出されたメモリブロックまたはメモリダイの特性情報に基づいてプログラム電圧またはプログラム検証電圧を減少または増加させうる。これにより、図5Bに図示されたように、非選択プログラム動作PGM_unselにおける非選択プログラム検証電圧VF01またはプログラム電圧が変更されるか、以前ページデータ読取動作RD_preにおける読取電圧VRD01が変更されうる。例示的な実施例において、S216段階は、省略されうる。
上述したようにプログラムされた以前ページデータのエラーレベルが相対的に高いと判断される場合、不揮発性メモリ装置200は、2個のセンシング値を調節して以前ページデータを再び読み取ることができる。すなわち、不揮発性メモリ装置200は、読取条件を変更して以前ページデータを再び読み取ることで、以前ページデータを再び獲得し、また獲得された以前ページデータに対してエラーレベルを判別することができる。
図13は、図12の不揮発性メモリ装置の動作による2個のセンシング値を調節する例示を示す。すなわち、図13を参照して第1補正センシング値及び第2補正センシング値を獲得する例示が説明される。図13を参照すれば、以前ページデータPDpがプログラムされたメモリセル(すなわち、選択ワードラインに連結されたメモリセル)の散布図が図示される。散布図の横軸は、しきい値電圧を示し、縦軸は、メモリセルの個数を示す。以前ページデータPDpがプログラムされたメモリセルそれぞれは、消去状態E及びプログラム状態P01のうち、1つの状態を有することができる。
2個のセンシング値を調節するために、不揮発性メモリ装置200は、図9Aを参照して説明したように、一般的な読取動作(すなわち、1つのセンシング値に基づいて遂行される読取動作)で用いられる基準読取電圧VRDを調節して補正基準読取電圧VRD’を獲得することができる。例えば、不揮発性メモリ装置200は、メモリセルによって形成されたしきい値電圧散布の谷(valley)を探索するバレーサーチ動作(valley search operation)を遂行して補正基準読取電圧VRD’を獲得することができる。他の例として、不揮発性メモリ装置200は、非選択ワードラインに連結されたメモリセルのプログラム状態によって基準読取電圧VRDを調節して補正基準読取電圧VRD’を獲得することができる。例えば、非選択ワードラインに連結されたメモリセルがプログラム状態を有する場合、基準読取電圧VRDを増加させ、補正基準読取電圧VRD’を獲得し、非選択ワードラインに連結されたメモリセルが消去状態を有する場合、基準読取電圧VRDを減少させ、補正基準読取電圧VRD’を獲得することができる。
図13に図示されたように、基準読取電圧VRDが調節されることにより、第1センシング値及び第2センシング値が調節されうる。例えば、図9Aを参照して説明したように、2個の読取電圧に基づいて読取動作が行われる場合、基準読取電圧VRDに対応する第1読取電圧VS1及び第2読取電圧VS2は、第1補正読取電圧VS1’及び第2補正読取電圧VS2’に調節されうる。例えば、補正基準読取電圧VRD’が基準読取電圧VRDよりも小さくなる場合、第1補正読取電圧VS1’及び第2補正読取電圧VS2’は、第1読取電圧VS1及び第2読取電圧VS2よりも小さくなる。他の例として、補正基準読取電圧VRD’が基準読取電圧VRDよりも大きい場合、第1補正読取電圧VS1’及び第2補正読取電圧VS2’は、第1読取電圧VS1及び第2読取電圧VS2よりもそれぞれ大きくなる。
例えば、図9Cを参照して説明したように、2個のセンシング時点に基づいて読取動作が行われる場合、基準読取電圧VRDが調節されることにより、2個のセンシング値が調節されうる。例えば、補正基準読取電圧VRD’が選択ワードラインに印加される場合、第1センシング時点tS1は、第1補正読取電圧VS1’に対応し、第2センシング時点tS2は、第2補正読取電圧VS2’に対応することができる。しかし、本発明がこれに限定されるものではなく、基準読取電圧VRDが同一に保持され、第1センシング時点tS1または第2センシング時点tS2が調節されうる。
上述したように、基準読取電圧VRDが補正基準読取電圧VRD’に調節される場合、2個の補正センシング値に基づいて読み取られた以前ページデータPDpに対するフェイルビット数は減少しうる。これにより、不揮発性メモリ装置200は、減少したエラーレベルを有する以前ページデータに基づいてマルチページプログラム動作を遂行することができる。これにより、マルチページプログラム動作に対する信頼性が向上しうる。
図14は、図12のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。図1及び図14を参照すれば、S221段階において、不揮発性メモリ装置200は、メモリコントローラ100からマルチページデータを受信することができる。例えば、不揮発性メモリ装置200は、データ入力コマンドによってマルチページデータを受信することができる。S222段階において、不揮発性メモリ装置200は、メモリコントローラ100からプログラムコマンドを受信することができる。不揮発性メモリ装置200は、プログラムコマンドに応答して受信されたマルチページデータに係わるプログラム動作を遂行することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からデータ入力コマンドまたはプログラムコマンドと共にマルチページデータがプログラムされる1つのアドレスを受信することができる。しかし、本発明は、S221段階以後に、S222段階が行われることに限定されない。例えば、コマンド及びアドレスが送信されるチャネルとデータが送受信されるチャネルが分離される場合、S221段階及びS222段階は、並列的に行われる。他の例として、S222段階によって、プログラムコマンドが先に受信された後、S221段階によってマルチページデータが受信されうる。
不揮発性メモリ装置200は、S221及びS222段階を行いつつ、レディー状態(例えば、ハイ(high)レベル)を示すレディー(ready)/ビジー(busy)信号nR/Bをメモリコントローラ100に伝送することができる。例示的な実施例において、不揮発性メモリ装置200は、マルチページデータを受信する前にプログラムセットアップコマンドを受信し、マルチページデータを受信した後、プログラムコンファームコマンドを受信することができる。
S223段階において、不揮発性メモリ装置200は、非選択プログラム動作PGM_unselを遂行することができる。例えば、不揮発性メモリ装置200は、マルチページデータのうち、1つのページデータを非選択ワードラインに連結されたメモリセルにプログラムすることができる。S224段階において、不揮発性メモリ装置200は、第1以前ページデータ読取動作RD1_preを遂行することができる。例えば、不揮発性メモリ装置200は、第1センシング値及び第2センシング値に基づいて選択ワードラインに連結されたメモリセルに予め保存されている以前ページデータを読み取ることができる。S225段階において、不揮発性メモリ装置200は、第2以前ページデータ読取動作RD2_preを遂行することができる。例えば、不揮発性メモリ装置200は、第1補正センシング値及び第2補正センシング値に基づいて以前ページデータを再び読み取ることができる。その場合、図12を参照して説明したように、S225段階は、以前ページデータに対するフェイルビット数が第1基準値以上である場合に行われる。S226段階において、不揮発性メモリ装置200は、選択プログラム動作PGM_selを行うことができる。例えば、不揮発性メモリ装置200は、再び読み取られた以前ページデータ及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。不揮発性メモリ装置200は、S223及びS226段階の動作を行いつつ、ビジー状態(例えば、ロー(low)レベル)を示すレディー/ビジー信号nR/Bをメモリコントローラ100に伝送することができる。すなわち、本発明の一実施例によるマルチページプログラム動作が行われる間(すなわち、1つのプログラムサイクルの間)、レディー/ビジー信号nR/Bがビジー状態を保持することができる。
図15は、図7で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。図1及び図15を参照すれば、算出されたフェイルビット数が第1基準値以上である場合、S231段階において、不揮発性メモリ装置200は、フェイルビット数が第2基準値未満であるか否かを判別する。ここで、第2基準値は、以前ページデータのエラーを訂正するか否かを判断するための基準値でもあり、第1基準値より大きくもある。すなわち、S231段階において、不揮発性メモリ装置200は、以前ページデータのエラーが訂正されるレベルであるか否かを判別することができる。
フェイルビット数が第2基準値未満である場合(すなわち、以前ページデータのエラーが訂正可能なレベルと判別される場合)、S232段階において、不揮発性メモリ装置200は、読み取られた以前ページデータをメモリコントローラ100に伝送することができる。例えば、読み取られた以前ページデータは、図9A及び図9Cを参照して説明したように、第1センシング値または第2センシング値に基づいて読み取られたデータでもある。しかし、本発明がそれに限定されるものではなく、読み取られた以前ページデータは、基準読取電圧VRD及び基準センシング時点tRDに基づいて読み取られたデータでもある。
S233段階において、不揮発性メモリ装置200は、メモリコントローラ100から以前訂正ページデータを受信することができる。以前訂正ページデータは、メモリコントローラ100に伝送された以前ページデータのエラーが訂正されることで生成されうる。例えば、メモリコントローラ100に伝送された以前ページデータは、図2のECC回路130によってエラーが訂正されうる。
S234段階において、不揮発性メモリ装置200は、以前訂正ページデータ及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。これにより、マルチページプログラム動作が完了しうる。他の実施例において、不揮発性メモリ装置200は、以前訂正ページデータ及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムせず、他のメモリセルにプログラムすることができる。その場合、他のメモリセルは、以前ページデータがプログラムされたメモリブロックと異なるメモリブロックに含まれうる。
フェイルビット数FBNが第2基準値以上である場合(すなわち、以前ページデータのエラーが訂正不可能なレベルと判別される場合)、S235段階において、不揮発性メモリ装置200は、メモリコントローラ100にプログラム失敗情報を伝送することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からの状態情報要請に応答してプログラム失敗を示す状態情報をメモリコントローラ100に伝送することができる。
上述したように、フェイルビット数FBNが読み取られた以前ページデータのエラー訂正が可能であると判断される場合、不揮発性メモリ装置200は、メモリコントローラ100に以前ページデータを伝送し、メモリコントローラ100によって以前ページデータのエラーが訂正される。これにより、エラーが訂正された以前ページデータ(すなわち、以前訂正ページデータ)に基づいてマルチページプログラム動作が行われ、マルチページプログラム動作によってプログラムされたマルチページデータの信頼性が向上しうる。しかし、本発明がこれに限定されるものではなく、読み取られた以前ページデータのエラーは、不揮発性メモリ装置200内部で訂正されうる。
例示的な実施例において、S231ないしS235段階は、図12のS213段階において、フェイルビット数が第1基準値以上であると判別された場合に行われる。すなわち、不揮発性メモリ装置200内部で変更された読取条件(例えば、読取電圧及びセンシング時点)によって再び読み取られた以前ページデータのエラーレベルが減少しない場合(すなわち、以前ページデータのフェイルビット数が第1基準値以上である場合)、メモリコントローラ100によって以前ページデータのエラーが訂正されうる。
図16は、図15のフローチャートによる図1のメモリシステムの例示的な動作を示すフローチャートである。具体的に、図16は、フェイルビット数が第2基準値未満である場合、メモリコントローラ100と不揮発性メモリ装置200の例示的な動作を示す。図16を参照すれば、フェイルビット数が第2基準値未満である場合、S11段階において、不揮発性メモリ装置200は、メモリコントローラ100にレディー状態を示すレディー/ビジー信号nR/B、及び読取失敗を示す読取失敗フラグ(RFF; Read Fail Flag)をメモリコントローラ100に伝送する。例えば、不揮発性メモリ装置200は、メモリコントローラ100からの状態情報要請に応答して読取失敗フラグRFFをメモリコントローラ100に伝送するが、本発明が、それに限定されるものではない。
S12段階において、メモリコントローラ100は、不揮発性メモリ装置200からのレディー/ビジー信号nR/B、及び読取失敗フラグRFFによって中止コマンドsuspend CMDを不揮発性メモリ装置200に伝送する。S13段階において、メモリコントローラ100は、以前ページデータPDpを出力するためのデータ出力コマンドDout CMDを不揮発性メモリ装置200に伝送する。S14段階において、不揮発性メモリ装置200は、データ出力コマンドDout CMDに応答して以前ページデータPDpをメモリコントローラ100に伝送する。
S15段階において、メモリコントローラ100は、不揮発性メモリ装置200からの以前ページデータPDpのエラーを訂正する。これにより、以前訂正ページデータPDpcが生成される。S16段階において、メモリコントローラ100は、データ入力コマンドDin CMDと共に、以前訂正ページデータPDpcを不揮発性メモリ装置200に伝送することができる。S17段階において、メモリコントローラ100は、再開コマンドResume CMDを不揮発性メモリ装置200に伝送する。S18段階において、不揮発性メモリ装置200は、再開コマンドResume CMDに応答し、図15を参照して説明したように、以前訂正ページデータPDpcに基づいて選択プログラム動作PGM_selを遂行する。これにより、マルチページプログラム動作が完了する。
例示的な実施例において、S12段階の中止コマンド送信動作は、省略されうる。その場合、メモリコントローラ100は、不揮発性メモリ装置200からのレディー/ビジー信号nR/B及び読取失敗フラグRFFによって、データ出力コマンドDout CMDを不揮発性メモリ装置200に伝送することができる。
図17は、図15及び図16のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。図1、図16、及び図17を参照すれば、S241ないしS244段階は、図14のS221ないしS224段階に対応するので、以下で重複説明は省略する。
S245段階において、不揮発性メモリ装置200は、読み取られた以前ページデータPDpを出力することができる。出力された以前ページデータPDpは、メモリコントローラ100に伝送されうる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からのデータ出力命令に応答して図3のページバッファ部240に保存された以前ページデータPDpをメモリコントローラ100に伝送することができる。
S246段階において、不揮発性メモリ装置200は、メモリコントローラ100から以前訂正ページデータPDpcを受信することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100からのデータ入力命令に応答して以前訂正ページデータPDpcをページバッファ部240に保存することができる。S247段階において、不揮発性メモリ装置200は、メモリコントローラ100から再開コマンドResume CMDを受信することができる。S245ないしS247段階が行われる間に、レディー/ビジー信号nR/Bは、レディー状態でもある。例えば、レディー/ビジー信号nR/Bは、ハイレベルを有してもよい。
S248段階において、不揮発性メモリ装置200は、選択プログラム動作PGM_selを遂行することができる。例えば、不揮発性メモリ装置200は、以前訂正ページデータPDpc及びマルチページデータのうち、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。S248段階が行われる間にレディー/ビジー信号nR/Bは、ビジー状態でもある。例えば、レディー/ビジー信号nR/Bは、ローレベルを有する。S248段階以後に、レディー/ビジー信号nR/Bは、レディー状態に変更されうる。
上述したようにメモリコントローラ100において以前ページデータPDpに対するエラー訂正が行われる場合、1つのプログラムサイクルにおいて不揮発性メモリ装置200から出力されるレディー/ビジー信号nR/Bは、ビジー状態からレディー状態に変更された後、再びビジー状態に変更されうる。
図18A及び図18Bは、本発明の一実施例によるマルチページデータに係わるプログラム技法を説明するための図面である。マルチページプログラム動作のための1つのプログラムサイクルにおいて、図18A及び図18Bの動作が行われる。図18Bに図示された散布図の横軸は、メモリセルのしきい値電圧を示し、縦軸は、メモリセルの個数を示す。
図3、図18A、及び図18Bを参照すれば、不揮発性メモリ装置200は、第1ページデータPD1を受信することができる。例示的な実施例において、受信された第1ページデータPD1は、不揮発性メモリ装置200のページバッファ部240に保存されうる。
不揮発性メモリ装置200は、第1ページデータPD1を選択ワードラインである第1ワードラインWL1に連結されたメモリセルにプログラム(以下、第1プログラム動作PGM1と称する)することができる。図18Bに図示されたように、不揮発性メモリ装置200は、第1ワードラインWL1に連結されたメモリセルが消去状態E及びプログラム状態P01のうち、いずれか1つの状態を有するように第1プログラム動作PGM1を遂行することができる。第1プログラム動作PGM1において、プログラム状態P01を検証するために、プログラム検証電圧VF01が使用されうる。第1ワードラインWL1に対する第1プログラム動作PGM1が完了された場合、第1ワードラインWL1に連結されたメモリセルは、第1ページデータPD1を保存した状態である。
第1プログラム動作PGM1以後に、不揮発性メモリ装置200は、マルチページデータのうち、残りのページデータ(すなわち、第2ページデータPD2及び第3ページデータPD3)を受信することができる。例示的な実施例において、受信された第2及び第3ページデータPD2、PD3は、不揮発性メモリ装置200のページバッファ部240に保存されうる。
残りのページデータPD2、PD3が受信された以後に、不揮発性メモリ装置200は、第1ワードラインWL1に連結されたメモリセルから第1ページデータPD1を読み取ることができる(以下、中間読取動作RD_midと称する)。図18Bに図示されたように、第1ページデータPD1が保存されたメモリセルそれぞれは、消去状態E及びプログラム状態P01のうち、いずれか1つの状態を有する。不揮発性メモリ装置200は、読取電圧VRD01を用いて中間読取動作RD_midを遂行することで、第1ページデータPD1を読み取ることができる。
中間読取動作RD_mid以後に、不揮発性メモリ装置200は、第2ページデータPD2、第3ページデータPD3、及び読み取られた第1ページデータPD1に基づいて第1ワードラインWL1に連結されたメモリセルにプログラム動作(以下、第2プログラム動作PGM2と称する)を遂行することができる。図18Bに図示されたように、第2プログラム動作PGM2が行われることで、第1ワードラインWL1に連結されたメモリセルのうち、消去状態Eを有するメモリセルは、消去状態E及び第1ないし第3プログラム状態P1~P3のうち、いずれか1つの状態を有し、プログラム状態P01を有するメモリセルは、第4ないし第7プログラム状態P4~P7のうち、いずれか1つの状態を有する。第2プログラム動作PMG2において、第1ないし第7プログラム状態P1~P7を検証するために、第1ないし第7プログラム検証電圧VF1~VF7が使用されうる。第2プログラム動作PGM2が完了された場合、第1ワードラインWL1に連結されたメモリセルは、第1ないし第3ページデータPD1~PD3を保存することができる。
図18A及び図18Bでは、第1プログラム動作PGM1で1つのページデータ(例えば、第1ページデータPD1)がプログラムされ、第2プログラム動作PGM2で残りのページデータ(例えば、第2及び第3ページデータPD2、PD3)がプログラムされると説明されているが、本発明は、それに限定されるものではない。例えば、第1プログラム動作PGM1で2個のページデータ(例えば、第1ページデータPD1及び第2ページデータPD2)がプログラムされ、第2プログラム動作PGM2で残りのページデータ(例えば、第3ページデータPD3)がプログラムされる。または、第1プログラム動作PGM1で1つのページデータ(例えば、第1ページデータPD1)がプログラムされ、第2プログラム動作PGM2で1つのページデータ(例えば、第2ページデータPD2)がプログラムされ、追加プログラム動作で残りのページデータ(例えば、第3ページデータPD3)がプログラムされる。
上述したように本発明の実施例によるマルチページプログラム動作は、マルチページデータのうち、少なくとも1つのページデータを選択ワードラインに連結されたメモリセルにプログラムした後、残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる(すなわち、第1プログラム動作PGM1以後に第2プログラム動作PGM2が行われる)。その場合、選択ワードラインに連結されたメモリセルに保存された少なくとも1つのページデータが読取られ、読み取られた少なくとも1つのページデータ及び残りのページデータに基づいて第2プログラム動作PGM2が行われる。このようなプログラム技法によれば、第1プログラム動作PGM1時に発生するエラーレベルによって、第2プログラム動作PGM2を通じてプログラムされるページデータの信頼性が減少する。
以下では、図19ないし図23を参照して図18A及び図18Bのプログラム技法の信頼性を向上させるためのマルチページプログラム動作が詳細に説明される。説明の便宜上、図18A及び図18Bに図示されたように、1つのページデータに対する第1プログラム動作PGM1が行われる実施例を基準にマルチページプログラム動作が説明される。
図19は、図18A及び図18Bのプログラム技法による図1の不揮発性メモリ装置のマルチページデータに係わるプログラム動作を示すフローチャートである。図1、図3、及び図19を参照すれば、S251段階において、不揮発性メモリ装置200は、メモリコントローラ100からマルチページデータのうち、第1ページデータを受信することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100から第1ページデータと共に選択ワードラインに対応するアドレスADDR及び第1ページデータに対するプログラムコマンドCMDをさらに受信することができる。
S252段階において、不揮発性メモリ装置200は、第1ページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。
S253段階において、不揮発性メモリ装置200は、メモリコントローラ100からマルチページデータのうち、残りのページデータを受信することができる。例えば、不揮発性メモリ装置200は、メモリコントローラ100から残りのページデータと共に、選択ワードラインに対応するアドレスADDR及び残りのページデータに対するプログラムコマンドCMDをさらに受信することができる。
S254段階において、不揮発性メモリ装置200は、選択ワードラインに連結されたメモリセルに保存された第1ページデータを第1センシング値及び第2センシング値に基づいて読み取ることができる。例えば、図8ないし図9Cを参照して説明したように、不揮発性メモリ装置200は、第1及び第2読取電圧に基づいて第1ページデータを読み取るか、第1及び第2センシング時点に基づいて第1ページデータを読み取ることができる。
S255段階において、不揮発性メモリ装置200は、第1センシング値に基づいて読み取られた第1ページデータ(すなわち、第1センシングデータ)の第1ビットと第2センシング値に基づいて読み取られた第2ページデータ(すなわち、第2センシングデータ)の第2ビットに基づいてフェイルビット数を算出することができる。例えば、図10及び図11を参照して説明したように、不揮発性メモリ装置200は、フェイルビット算出器220を通じて第1ビットと第2ビットとを比較して互いに異なるビットの個数を判別し、判別された互いに異なるビットの個数をフェイルビット数として算出することができる。
S256段階において、不揮発性メモリ装置200は、フェイルビット数が第1基準値未満であるか否かを判別することができる。フェイルビット数が第1基準値未満である場合(すなわち、プログラムされた第1ページデータのエラーレベルが低いと判別される場合)、S257段階において、不揮発性メモリ装置200は、読み取られた第1ページデータ及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。例えば、読み取られた第1ページデータは、第1センシング値または第2センシング値に基づいて読み取られたデータでもある。他の例として、読み取られた第1ページデータは、既設定のレベルを有する読取電圧(例えば、図9Aの基準読取電圧VRD)に基づいて読み取られたデータでもある。
フェイルビット数が第1基準値以上である場合(すなわち、プログラムされた以前ページデータのエラーレベルが低くないと判別される場合)、不揮発性メモリ装置200は、S261段階またはS281段階を遂行することができる。S261段階は、図20を参照して後述され、S281段階は、図22を参照して後述される。例えば、不揮発性メモリ装置200は、マルチページプログラム動作を失敗と処理するか、他のセンシング値に基づいて第1ページデータを再び読み取るか、または読み取られた第1ページデータのエラーを訂正することができる。
図20は、図19で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。図20のS261ないしS266段階は、図12のS211ないしS216段階に対応するので、以下では、詳細な説明は省略される。
図1及び図20を参照すれば、図19を参照して説明したように、算出されたフェイルビット数が第1基準値以上である場合、S261段階において、不揮発性メモリ装置200は、選択ワードラインに連結されたメモリセルに保存された第1ページデータを第1補正センシング値及び第2補正センシング値に基づいて再び読み取ることができる。S262段階において、不揮発性メモリ装置200は、第1補正センシング値に基づいて読み取られた第1ページデータの第1ビットと第2補正センシング値に基づいて読み取られた第1ページデータの第2ビットに基づいてフェイルビット数を算出することができる。
S263段階において、不揮発性メモリ装置200は、算出されたフェイルビット数が第1基準値未満であるか否かを判別する。算出されたフェイルビット数が第1基準値未満である場合(すなわち、再び読み取られた第1ページデータのエラーレベルが相対的に低いと判断される場合)、S264段階において、不揮発性メモリ装置200は、再び読み取られた第1ページデータ及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。算出されたフェイルビット数が第1基準値以上である場合(すなわち、再び読み取られた第1ページデータのエラーレベルが相対的に高いと判断される場合)、S265段階において、不揮発性メモリ装置200は、メモリコントローラ100にプログラム失敗情報を伝送することができる。
S266段階において、不揮発性メモリ装置200は、読取またはプログラム設定値をアップデートすることができる。例えば、不揮発性メモリ装置200は、S261ないしS265段階を行いつつ、メモリブロックまたはメモリダイの特性情報を抽出し、抽出された特性情報に基づいて読取設定値(例えば、読取電圧)またはプログラム設定値(例えば、プログラム電圧またはプログラム検証電圧)をアップデートすることができる。例示的な実施例において、S266段階は省略されうる。
上述したようにプログラムされた第1ページデータのエラーレベルが相対的に高いと判断される場合、不揮発性メモリ装置200は、2個のセンシング値を調節して第1ページデータを再び読み取ることができる。すなわち、不揮発性メモリ装置200は、読取条件を変更して第1ページデータを再び読み取ることで、減少したエラーレベルを有する第1ページデータに基づいてマルチページプログラム動作を遂行することができる。これにより、マルチページプログラム動作に対する信頼性が向上しうる。
図21は、図20のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。図1及び図21を参照すれば、S271段階で、不揮発性メモリ装置200は、メモリコントローラ100から第1プログラムコマンドPGM CMD1を受信する。第1プログラムコマンドPGM CMD1は、第1ページデータに対するプログラムコマンドである。これにより、不揮発性メモリ装置200は、第1プログラムコマンドPGM CMD1と共に、第1ページデータを受信することができる。不揮発性メモリ装置200は、第1プログラムコマンドPGM CMD1と共に、第1ページデータがプログラムされる第1アドレスを受信することができる。S271段階において、レディー/ビジー信号nR/Bは、レディー状態を示すことができる。
S272段階において、不揮発性メモリ装置200は、第1プログラムコマンドに応答して第1ページデータに対する第1プログラム動作PGM1を遂行する。S272段階において、レディー/ビジー信号nR/Bは、ビジー状態を示す。S273段階において、不揮発性メモリ装置200は、メモリコントローラ100から第2プログラムコマンドPGM CMD2を受信する。第2プログラムコマンドPGM CMD2は、マルチページデータのうち、残りのページデータに対するプログラムコマンドでもある。これにより、不揮発性メモリ装置200は、第2プログラムコマンドPGM CMD2と共に、残りのページデータを受信する。不揮発性メモリ装置200は、第2プログラムコマンドPGM CMD2と共に、残りのページデータがプログラムされる第2アドレスを受信する。その場合、第2アドレスは、第1アドレスと異なってもいる。S273段階において、レディー/ビジー信号nR/Bは、レディー状態を示す。
S274段階において、不揮発性メモリ装置200は、第1中間読取動作RD1_midを遂行することができる。例えば、不揮発性メモリ装置200は、第1センシング値及び第2センシング値に基づいて選択ワードラインに連結されたメモリセルに保存された第1ページデータを読み取ることができる。S275段階において、不揮発性メモリ装置200は、第2中間読取動作RD2_midを遂行する。例えば、不揮発性メモリ装置200は、第1補正センシング値及び第2補正センシング値に基づいて第1ページデータを再び読み取る。その場合、図20を参照して説明したように、S275段階は、第1ページデータに対するフェイルビット数が第1基準値以上である場合に遂行される。
S276段階において、不揮発性メモリ装置200は、残りのページデータに対する第2プログラム動作PGM2を遂行する。例えば、不揮発性メモリ装置200は、再び読み取られた第1ページデータ及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。
不揮発性メモリ装置200は、S271及びS273段階を行いつつ、レディー状態を示すレディー/ビジー信号nR/Bをメモリコントローラ100に伝送し、S272、S274ないしS276段階を行いつつ、ビジー状態を示すレディー/ビジー信号nR/Bをメモリコントローラ100に伝送することができる。
図22は、図19で算出されたフェイルビット数が第1基準値以上である場合、図1の不揮発性メモリ装置の例示的な動作を示すフローチャートである。図22のS281ないしS285段階は、図15のS231ないしS235段階に対応するので、以下では、詳細な説明は省略する。
図1及び図22を参照すれば、算出されたフェイルビット数が第1基準値以上である場合、S281段階において、不揮発性メモリ装置200は、フェイルビット数が第2基準値未満であるか否かを判別する。ここで、第2基準値は、第1ページデータのエラーを訂正するか否かを判断するための基準値であり、第1基準値よりも大きくなる。
フェイルビット数が第2基準値未満である場合(すなわち、第1ページデータのエラーが訂正可能なレベルと判別される場合)、S282段階において、不揮発性メモリ装置200は、読み取られた第1ページデータをメモリコントローラ100に伝送することができる。S283段階において、不揮発性メモリ装置200は、メモリコントローラ100から第1訂正ページデータを受信することができる。第1訂正ページデータは、メモリコントローラ100に伝送された第1ページデータのエラーが訂正されることで生成されうる。S284段階において、不揮発性メモリ装置200は、第1訂正ページデータ及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。これにより、マルチページプログラム動作が完了しうる。
フェイルビット数が第2基準値以上である場合(すなわち、第1ページデータのエラー訂正ができないと判別される場合)、S285段階において、不揮発性メモリ装置200は、メモリコントローラ100にプログラム失敗情報を伝送することができる。
上述したように、フェイルビット数が読み取られた第1ページデータのエラー訂正が可能であると判断される場合、不揮発性メモリ装置200は、メモリコントローラ100に第1ページデータを伝送し、メモリコントローラ100によって第1ページデータのエラーが訂正されうる。これにより、エラー訂正された第1ページデータ(すなわち、第1訂正ページデータ)に基づいてマルチページプログラム動作が行われ、マルチページプログラム動作によってプログラムされたマルチページデータの信頼性が向上しうる。しかし、本発明は、これに限定されるものではなく、読み取られた第1ページデータのエラーは、不揮発性メモリ装置200の内部で訂正されうる。
例示的な実施例において、S281ないしS285段階は、図20のS263段階において、フェイルビット数が第1基準値以上であると判別された場合に行われる。すなわち、不揮発性メモリ装置200の内部で変更された読取条件(例えば、読取電圧及びセンシング時点)によって読み取られた第1ページデータのエラーレベルが減少しない場合(すなわち、第1ページデータのフェイルビット数が第1基準値以上である場合)、メモリコントローラ100によって読み取られた第1ページデータのエラーが訂正されうる。
図23は、図19及び図22のフローチャートによる不揮発性メモリ装置の例示的な動作を示すタイミング図である。図1及び図23を参照すれば、S291ないしS294段階は、図21のS271ないしS274段階に対応するので、以下で重複説明は省略する。
S295段階において、不揮発性メモリ装置200は、読み取られた第1ページデータPD1を出力することができる。出力された第1ページデータPD1は、メモリコントローラ100に伝送されうる。例えば、S274段階で読み取られた第1ページデータPD1のフェイルビット数が第2基準値未満である場合、図16を参照して説明したように、不揮発性メモリ装置200は、メモリコントローラ100にレディー状態を示すレディー/ビジー信号nR/B及び読取失敗を示す読取失敗フラグRFFをメモリコントローラ100に伝送する。メモリコントローラ100は、不揮発性メモリ装置200からのレディー/ビジー信号nR/B及び読取失敗フラグRFFに応答して不揮発性メモリ装置200にデータ出力コマンドDoutを伝送する。不揮発性メモリ装置200は、メモリコントローラ100からのデータ出力コマンドDoutに応答してページバッファ部240に保存された第1ページデータPD1をメモリコントローラ100に伝送する。
S296段階において、不揮発性メモリ装置200は、メモリコントローラ100から第1訂正ページデータPD1cを受信する。例えば、図16を参照して説明したように、不揮発性メモリ装置200は、メモリコントローラ100からのデータ入力コマンドDinに応答して第1訂正ページデータPD1cをページバッファ部240に保存する。S297段階において、不揮発性メモリ装置200は、メモリコントローラ100から再開コマンドResume CMDを受信することができる。S295ないしS297段階が行われる間にレディー/ビジー信号nR/Bは、レディー状態でもある。すなわち、レディー/ビジー信号nR/Bは、そのような3段階に対してレディー状態を保持することができる。
S298段階において、不揮発性メモリ装置200は、第2プログラム動作PGM2を遂行する。例えば、不揮発性メモリ装置200は、第1訂正ページデータPD1c及び残りのページデータを選択ワードラインに連結されたメモリセルにプログラムすることができる。S298段階が行われる間に、レディー/ビジー信号nR/Bは、ビジー状態でもある。S298段階以後に、レディー/ビジー信号nR/Bは、レディー状態に変更されうる。
図24は、本発明の一実施例によるメモリ装置の例示的な断面図である。図24を参照すれば、メモリ装置300は、C2C(Chip to Chip)構造でもある。C2C構造は、第1ウェーハ上にセル領域CELLを含む上部チップを製作し、第1ウェーハと異なる第2ウェーハ上に周辺回路領域PERIを含む下部チップを製作した後、前記上部チップと前記下部チップとをボンディング(bonding)方式によって互いに連結することを意味する。前記ボンディング方式は、上部チップの最上部メタル層に形成されたボンディングメタルと下部チップの最上部メタル層に形成されたボンディングメタルとを互いに電気的に連結する方式を意味する。例えば、前記ボンディングメタルが銅(Cu)によって形成された場合、前記ボンディング方式は、Cu-Cuボンディング方式でもあり、前記ボンディングメタルは、アルミニウムあるいはタングステンによっても形成される。
メモリ装置300の周辺回路領域PERIとセル領域CELLそれぞれは、外部パッドボンディング領域PA、ワードラインボンディング領域WLBA、及びビットラインボンディング領域BLBAを含んでもよい。
周辺回路領域PERIは、第1基板410、層間絶縁層415、第1基板410に形成される複数の回路素子420a、420b、420c、複数の回路素子420a、420b、420cそれぞれと連結される第1メタル層430a、430b、430c、第1メタル層430a、430b、430c上に形成される第2メタル層440a、440b、440cを含んでもよい。例示的な実施例において、第1メタル層430a、430b、430cは、相対的に抵抗の高いタングステンによって形成され、第2メタル層440a、440b、440cは、相対的に抵抗の低い銅によって形成されうる。
本明細書では、第1メタル層430a、430b、430cと第2メタル層440a、440b、440cのみ図示されているが、これに限定されるものではなく、第2メタル層440a、440b、440c上に少なくとも1つ以上のメタル層がさらに形成されてもよい。第2メタル層440a、440b、440cの上部に形成される1つ以上のメタル層のうち、少なくとも一部は、第2メタル層440a、440b、440cを形成する銅よりもさらに低い抵抗を有するアルミニウムなどによって形成されうる。
層間絶縁層415は、複数の回路素子420a、420b、420c、第1メタル層430a、430b、430c、及び第2メタル層440a、440b、440cをカバーするように第1基板410上に配置され、シリコン酸化物、シリコン窒化物のような絶縁物質を含んでもよい。
ワードラインボンディング領域WLBAの第2メタル層440b上に下部ボンディングメタル471b、472bが形成されうる。ワードラインボンディング領域WLBAにおいて、周辺回路領域PERIの下部ボンディングメタル471b、472bは、セル領域CELLの上部ボンディングメタル371b、372bとボンディング方式によって互いに電気的に連結され、下部ボンディングメタル471b、472bと上部ボンディングメタル371b、372bは、アルミニウム、銅、あるいはタングステンなどによって形成されうる。
セル領域CELLは、少なくとも1つのメモリブロックを提供することができる。セル領域CELLは、第2基板310と共通ソースライン320を含んでもよい。第2基板310上には、第2基板310の上面に垂直方向(Z軸方向)に沿って複数のワードライン331~338;330が積層されうる。ワードライン330の上部及び下部それぞれには、ストリング選択ラインと接地選択ラインが配置され、ストリング選択ラインと接地選択ラインとの間に複数のワードライン330が配置されうる。
ビットラインボンディング領域BLBAにおいて、チャネル構造体CHは、第2基板310の上面に垂直方向に延びてワードライン330、ストリング選択ライン、及び接地選択ラインを貫通することができる。例えば、チャネル構造体CHは、Z軸方向に沿って延びる。チャネル構造体CHは、データ保存層、チャネル層、及び埋込み絶縁層などを含み、チャネル層は、第1メタル層350c及び第2メタル層360cと電気的に連結されうる。例えば、第1メタル層350cは、ビットラインコンタクトでもあり、第2メタル層360cは、ビットラインでもある。本明細書において、第2メタル層360cは、ビットラインとも指称される。例示的な実施例において、ビットライン360cは、第2基板310の上面に平行な第1方向(Y軸方向)に沿って延びる。
例示的な実施例において、チャネル構造体CHやビットライン360cなどが配置される領域がビットラインボンディング領域BLBAと定義されうる。ビットライン360cは、ビットラインボンディング領域BLBAで周辺回路領域PERIのページバッファ393を提供する回路素子420cと電気的に連結されうる。例えば、ビットライン360cは、セル領域CELLの上部ボンディングメタル371c、372cと連結され、上部ボンディングメタル371c、372cは、ページバッファ393の回路素子420cに連結される下部ボンディングメタル471c、472cと連結されうる。
ワードラインボンディング領域WLBAにおいて、ワードライン330は、第2基板310の上面に平行な第2方向(X軸方向)に沿って延び、複数のセルコンタクトプラグ341~347;340と連結されうる。ワードライン330とセルコンタクトプラグ340は、第2方向に沿ってワードライン330のうち、少なくとも一部が互いに異なる長さに延びて提供するパッドにおいて互いに連結されうる。ワードライン330に連結されるセルコンタクトプラグ340の上部には、第1メタル層350bと第2メタル層360bが順次に連結されうる。セルコンタクトプラグ340は、ワードラインボンディング領域WLBAでセル領域CELLの上部ボンディングメタル371b、372bと周辺回路領域PERIの下部ボンディングメタル471b、472bを通じて周辺回路領域PERIと連結されうる。
セルコンタクトプラグ340は、周辺回路領域PERIでロウデコーダ394を提供する回路素子420bと電気的に連結されうる。例示的な実施例において、ロウデコーダ394を提供する回路素子420bの動作電圧は、ページバッファ393を提供する回路素子420cの動作電圧と異なってもいる。例えば、ページバッファ393を提供する回路素子420cの動作電圧がロウデコーダ394を提供する回路素子420bの動作電圧よりも大きくもある。
外部パッドボンディング領域PAには、共通ソースラインコンタクトプラグ380が配置される。共通ソースラインコンタクトプラグ380は、金属、金属化合物、またはポリシリコンなどの導電性物質によって形成され、共通ソースライン320と電気的に連結されうる。共通ソースラインコンタクトプラグ380の上部には、第1メタル層350aと第2メタル層360aが順次に積層されうる。例えば、共通ソースラインコンタクトプラグ380、第1メタル層350a、及び第2メタル層360aが配置される領域は、外部パッドボンディング領域PAと定義されうる。外部パッドボンディング領域PAにおいて、周辺回路領域PERIの下部メタルパターン473aは、ボンディング方式を用いてセル領域CELLの上部ボンディングメタル71a、372aに電気的に連結されうる。
一方、外部パッドボンディング領域PAには、入出力パッド305、405が配置されうる。第1基板410の下部には、第1基板410の下面を覆う下部絶縁膜401が形成され、下部絶縁膜401上に第1入出力パッド405が形成されうる。第1入出力パッド405は、第1入出力コンタクトプラグ403を通じて周辺回路領域PERIに配置される複数の回路素子420a、420b、420cのうち、少なくとも1つと連結され、下部絶縁膜401によって第1基板410と分離されうる。また、第1入出力コンタクトプラグ403と第1基板410との間には、側面絶縁膜が配置され、第1入出力コンタクトプラグ403と第1基板410とを電気的に分離しうる。
第2基板310の上部には、第2基板310の上面を覆う上部絶縁膜301が形成され、上部絶縁膜301上に第2入出力パッド305が配置されうる。第2入出力パッド305は、第2入出力コンタクトプラグ303を通じて周辺回路領域PERIに配置される複数の回路素子420a、420b、420cのうち、少なくとも1つと連結されうる。例えば、第2入出力コンタクトプラグ303は、下部ボンディングメタル472aを通じて回路素子420aに連結されうる。
実施例によって、第2入出力コンタクトプラグ303が配置される領域には、第2基板310及び共通ソースライン320などが配置されない。また、第2入出力パッド305は、第3方向(Z軸方向)において、ワードライン330とオーバーラップされない。第2入出力コンタクトプラグ303は、第2基板310の上面に平行な方向に第2基板310と分離され、セル領域CELLの層間絶縁層を貫通して第2入出力パッド305に連結されうる。
実施例によって、第1入出力パッド405と第2入出力パッド305は、選択的に形成されうる。例えば、メモリ装置300は、第1基板410の上部に配置される第1入出力パッド405のみを含むか、または第2基板310の上部に配置される第2入出力パッド305のみを含んでもよい。または、メモリ装置300が第1入出力パッド405と第2入出力パッド305とをいずれも含む。
セル領域CELLと周辺回路領域PERIそれぞれに含まれる外部パッドボンディング領域PAと、ビットラインボンディング領域BLBAのそれぞれには、最上部メタル層のメタルパターンがダミーパターン(dummy pattern)として存在するか、最上部メタル層が空いている。
メモリ装置300は、外部パッドボンディング領域PAにおいて、セル領域CELLの最上部メタル層に形成された上部メタルパターン372aに対応して周辺回路領域PERIの最上部メタル層に上部メタルパターン372aと同一形態の下部メタルパターン473aを形成することができる。周辺回路領域PERIの最上部メタル層に形成された下部メタルパターン473aは、周辺回路領域PERIで別途のコンタクトと連結されない。同様に、外部パッドボンディング領域PAで周辺回路領域PERIの最上部メタル層に形成された下部メタルパターンに対応して、セル領域CELLの上部メタル層に周辺回路領域PERIの下部メタルパターンと同一形態の上部メタルパターンを形成する。
ワードラインボンディング領域WLBAの第2メタル層240b上には、下部ボンディングメタル471b、472bが形成されうる。ワードラインボンディング領域WLBAにおいて、周辺回路領域PERIの下部ボンディングメタル471b、472bは、セル領域CELLの上部ボンディングメタル371b、372bとボンディング方式によって互いに電気的に連結されうる。
また、ビットラインボンディング領域BLBAにおいて、周辺回路領域PERIの最上部メタル層に形成された下部メタルパターン452に対応してセル領域CELLの最上部メタル層に下部メタルパターン452と同一形態の上部メタルパターン392を形成することができる。セル領域CELLの最上部メタル層に形成された上部メタルパターン392上には、コンタクトを形成しない。
例示的な実施例において、図3のメモリセルアレイ210は、セル領域CELLに配置され、図3のフェイルビット算出器220、ロウデコーダ230、ページバッファ部240、入出力回路250、及び制御ロジック回路260は、周辺回路領域PERIに配置されうる。これにより、メモリ装置300は、図1ないし図23を参照して説明したように、マルチページプログラム動作を遂行することができる。例えば、メモリ装置300は、マルチページプログラム動作を遂行する間、2個のセンシング値に基づいてワードライン330のうち、選択ワードラインに連結されたメモリセルに保存された以前ページデータ(または、マルチページデータのうち、1つのページデータ)を読み取ることができる。例えば、読み取られたデータは、上部ボンディングメタル372c及び下部ボンディングメタル472cを通じてページバッファ393に伝達することができる。メモリ装置300は、読み取られた以前ページデータのエラーレベルを判別し、判別されたエラーレベルによって読取条件を変更して以前ページデータを再び読み取るか、読み取られた以前ページデータのエラーを訂正することができる。例えば、メモリ装置300は、第1入出力パッド405または第2入出力パッド305を通じてメモリコントローラに以前ページデータを伝送し、第1入出力パッド405または第2入出力パッド305を通じてメモリコントローラからエラー訂正された以前ページデータを受信することができる。これにより、メモリ装置300によって遂行されるマルチページプログラム動作の信頼性が向上しうる。
図25は、本発明の実施例によるメモリ装置が適用されたSSDシステムを示すブロック図である。図25を参照すれば、SSDシステム1000は、ホスト1100及びSSD 1200を含む。
SSD 1200は、信号コネクタ1201を通じてホスト1100と信号SGLを送受信し、電源コネクタ1202を通じて電源PWRを入力される。SSD 1200は、SSDコントローラ1210、複数のフラッシュメモリ1221~122m、補助電源装置1230、及びバッファメモリ1240を含んでもよい。複数のフラッシュメモリ1221~122mは、複数のチャネルを通じてSSDコントローラ1210にそれぞれ連結されうる。
SSDコントローラ1210は、ホスト1100から受信された信号SIGに応答して複数のフラッシュメモリ1221~122mを制御することができる。SSDコントローラ1210は、内部で生成されるか、外部から伝達された信号(例えば、ホスト1100から受信された信号SGL)をバッファメモリ1240に保存することができる。SSDコントローラ1210は、図1ないし図23を参照して前述したメモリコントローラ100に対応しうる。
複数のフラッシュメモリ1221~122mは、SSDコントローラ1210の制御によって動作する。補助電源装置1230は、電源コネクタ1202を通じてホスト1100と連結される。複数のフラッシュメモリ1221~122mそれぞれは、図1ないし図23を参照して前述した不揮発性メモリ装置200に対応することができる。例えば、複数のフラッシュメモリ1221~122mそれぞれは、マルチページプログラム動作を遂行する間、2個のセンシング値に基づいて選択ワードラインに連結されたメモリセルに保存された以前ページデータ(または、マルチページデータのうち、1つのページデータ)を読み取ることができる。複数のフラッシュメモリ1221~122mそれぞれは、読み取られた以前ページデータのエラーレベルを判別し、判別されたエラーレベルによって読取条件を変更して以前ページデータを再び読み取るか、読み取られた以前ページデータのエラーを訂正することができる。これにより、複数のフラッシュメモリ1221~122mそれぞれによって行われるマルチページプログラム動作の信頼性が向上しうる。
補助電源装置1230は、電源コネクタ1202を通じてホスト1100と連結されうる。補助電源装置1230は、ホスト1100から電源PWRを入力され、充電することができる。補助電源装置1230は、ホスト1100からの電源供給が円滑ではない場合、SSD 1200の電源を提供することができる。
上述した内容は、本発明を実施するための具体的な実施例である。本発明は、上述した実施例だけではなく、単に設計変更されるか、容易に変更可能である実施例も含みうる。また、本発明は、実施例を用いて容易に変形して実施可能な技術も含まれうる。したがって、本発明の範囲は、上述した実施例に限って決定されてはならず、後述する特許請求の範囲だけではなく、当該発明の特許請求の範囲と均等なものによって決定されねばならない。
10 メモリシステム
100 メモリコントローラ
200 不揮発性メモリ装置
210 メモリセルアレイ
220 フェイルビット算出器

Claims (19)

  1. マルチページデータをプログラムするための不揮発性メモリ装置の動作方法において、
    メモリコントローラから、第1ページデータ及び第2ページデータを含む前記マルチページデータを受信する段階と、
    前記マルチページデータのうち、前記第1ページデータを選択ワードラインに隣接した非選択ワードラインに連結された第1メモリセルにプログラムする段階と、
    前記第1ページデータをプログラムした後、前記選択ワードラインに連結された第2メモリセルに予め保存されている以前ページデータを第1センシング値及び第2センシング値に基づいて読み取る段階と、
    前記第1センシング値に基づいて読み取られた前記以前ページデータの第1ビットと、前記第2センシング値に基づいて読み取られた前記以前ページデータの第2ビットとを比較して、第1フェイルビット数を算出する段階と、
    前記第1フェイルビット数によって前記第2メモリセルから読み取られた前記以前ページデータ及び前記メモリコントローラから受信した前記マルチページデータのうち、第2ページデータを前記第2メモリセルにプログラムする段階と、を含み、
    前記マルチページデータは、現在プログラムサイクルでプログラムされたデータであり、前記以前ページデータは、以前プログラムサイクルで前記第2メモリセルに予め保存されたデータである、動作方法。
  2. 前記メモリコントローラから前記マルチページデータに対するプログラムコマンドを受信する段階をさらに含み、
    前記第1ページデータをプログラムする段階は、前記プログラムコマンドに応答して遂行される、請求項1に記載の動作方法。
  3. 前記以前ページデータを読み取る段階は、前記第1センシング値に対応するレベルを有する第1読取電圧を前記選択ワードラインに印加し、前記第2センシング値に対応するレベルを有する第2読取電圧を前記選択ワードラインに印加する段階を含む、請求項1又は2に記載の動作方法。
  4. 前記以前ページデータを読み取る段階は、前記第1センシング値に対応する第1センシング時点にセンシングノードの電圧を検知し、前記第2センシング値に対応する第2センシング時点に前記センシングノードの電圧を検知する段階を含む、請求項1又は2に記載の動作方法。
  5. 前記第1フェイルビット数が第1基準値未満である場合、前記第2ページデータが前記第2メモリセルにプログラムされる、請求項1乃至4のいずれか一項に記載の動作方法。
  6. 前記第1フェイルビット数が前記第1基準値以上である場合、前記第1センシング値と異なる第1補正センシング値及び前記第2センシング値と異なる第2補正センシング値に基づいて、前記第2メモリセルから前記以前ページデータを再び読み取る段階と、
    前記第1補正センシング値に基づいて読み取られた前記以前ページデータの第3ビットと、前記第2補正センシング値に基づいて読み取られた前記以前ページデータの第4ビットとを比較して算出された第2フェイルビット数が前記第1基準値未満である場合、前記第2メモリセルから再び読み取られた前記以前ページデータ及び前記メモリコントローラから受信した前記第2ページデータを前記第2メモリセルにプログラムする段階と、をさらに含む、請求項5に記載の動作方法。
  7. 前記第2フェイルビット数が前記第1基準値以上である場合、前記マルチページデータに対するプログラム失敗を示す状態情報を前記メモリコントローラに伝送する段階をさらに含む、請求項6に記載の動作方法。
  8. 前記第1ページデータに係わるプログラム動作、前記第1センシング値及び前記第2センシング値に基づいた読取動作、前記第1補正センシング値及び前記第2補正センシング値に基づいた読取動作、及び前記第2ページデータに係わるプログラム動作が行われる間、前記不揮発性メモリ装置から前記メモリコントローラに伝送されるレディー/ビジー信号は、ビジー状態を保持する、請求項6に記載の動作方法。
  9. 前記第1フェイルビット数が前記第1基準値以上であり、前記第1基準値よりも大きい第2基準値未満である場合、前記第2メモリセルから読み取られた前記以前ページデータを前記メモリコントローラに伝送する段階と、
    前記読み取られた以前ページデータのエラーを訂正することで生成された以前訂正ページデータを前記メモリコントローラから受信する段階と、
    前記以前訂正ページデータ及び前記第2ページデータを前記第2メモリセルにプログラムする段階と、をさらに含む、請求項5に記載の動作方法。
  10. 前記メモリコントローラに前記読み取られた以前ページデータを伝送する段階は、
    レディー状態のレディー/ビジー信号及び読取失敗フラグを前記メモリコントローラに伝送する段階と、
    前記レディー/ビジー信号及び前記読取失敗フラグを伝送した後、前記メモリコントローラから前記以前ページデータに対するデータ出力コマンドを受信する段階と、
    前記データ出力コマンドに応答して前記読み取られた以前ページデータを前記メモリコントローラに伝送する段階と、を含む、請求項9に記載の動作方法。
  11. 前記メモリコントローラから再開(resume)コマンドを受信する段階をさらに含み、
    前記以前訂正ページデータ及び前記第2ページデータを前記第2メモリセルにプログラムする段階は、前記再開コマンドに応答して遂行される、請求項9に記載の動作方法。
  12. 前記第1ページデータに係わるプログラム動作、前記第1センシング値及び前記第2センシング値に基づいた読取動作、及び前記第2ページデータに係わるプログラム動作が行われる間、前記不揮発性メモリ装置から前記メモリコントローラに伝送されるレディー/ビジー信号は、ビジー状態を示し、
    前記以前ページデータの伝送動作、前記以前訂正ページデータの受信動作、及び前記再開コマンドの受信動作が行われる間、前記レディー/ビジー信号は、レディー状態を示す、請求項11に記載の動作方法。
  13. 前記第1フェイルビット数が前記第2基準値以上である場合、前記マルチページデータに対するプログラム失敗を示す状態情報を前記メモリコントローラに伝送する段階をさらに含む、請求項9に記載の動作方法。
  14. マルチページデータをプログラムするための不揮発性メモリ装置の動作方法において、
    メモリコントローラから前記マルチページデータのうち、第1ページデータを受信する段階と、
    前記第1ページデータを選択ワードラインに連結されたメモリセルにプログラムする段階と、
    前記第1ページデータをプログラムした後、前記メモリコントローラから前記マルチページデータのうち、第2ページデータを受信する段階と、
    前記第2ページデータを受信した後、前記メモリセルに保存された第1ページデータを第1センシング値及び第2センシング値に基づいて読み取る段階と、
    前記第1センシング値に基づいて読み取られた前記第1ページデータの第1ビットと、前記第2センシング値に基づいて読み取られた前記第1ページデータの第2ビットとを比較して、第1フェイルビット数を算出する段階と、
    前記第1フェイルビット数によって前記メモリセルから読み取られた前記第1ページデータ及び前記メモリコントローラから受信した前記第2ページデータを前記メモリセルにプログラムする段階と、
    前記第1フェイルビット数が第1基準値以上である場合、前記第1センシング値と異なる第1補正センシング値及び前記第2センシング値と異なる第2補正センシング値に基づいて、前記メモリセルから前記第1ページデータを再び読み取る段階と、
    前記第1補正センシング値に基づいて読み取られた前記第1ページデータの第3ビットと、前記第2補正センシング値に基づいて読み取られた前記第1ページデータの第4ビットとを比較して算出された第2フェイルビット数が前記第1基準値未満である場合、前記メモリセルから再び読み取られた前記第1ページデータ及び前記第2ページデータを前記メモリセルにプログラムする段階と、を含む、動作方法。
  15. 前記第1ページデータを読み取る段階は、前記第1センシング値に対応するレベルを有する第1読取電圧を前記選択ワードラインに印加し、前記第2センシング値に対応するレベルを有する第2読取電圧を前記選択ワードラインに印加する段階を含む、請求項14に記載の動作方法。
  16. 前記第1ページデータを読み取る段階は、前記第1センシング値に対応する第1センシング時点でセンシングノードの電圧を検知し、前記第2センシング値に対応する第2センシング時点で前記センシングノードの電圧を検知する段階を含む、請求項14に記載の動作方法。
  17. 前記第1フェイルビット数が第1基準値未満である場合、前記第2ページデータが前記メモリセルにプログラムされる、請求項14に記載の動作方法。
  18. 前記第2フェイルビット数が前記第1基準値以上である場合、前記マルチページデータに対するプログラム失敗を示す状態情報を前記メモリコントローラに伝送する段階をさらに含む、請求項14に記載の動作方法。
  19. マルチページデータをプログラムするための不揮発性メモリ装置の動作方法において、
    メモリコントローラから前記マルチページデータを受信する段階と、
    前記マルチページデータのうち、少なくとも1つのページデータを選択ワードラインに隣接した非選択ワードラインに連結された第1メモリセルにプログラムする段階と、
    前記少なくとも1つのページデータをプログラムした後、前記選択ワードラインに連結された第2メモリセルに予め保存されている少なくとも1つの以前ページデータを第1読取電圧及び第2読取電圧に基づいて読み取る段階と、
    前記第2メモリセルのうち、前記第1読取電圧と前記第2読取電圧との間のしきい値電圧を有する失敗セルの個数が基準値未満である場合、前記第2メモリセルから読み取られた前記少なくとも1つの以前ページデータ及び前記メモリコントローラから受信した前記マルチページデータのうち、残りのページデータを前記第2メモリセルにプログラムする段階と、
    前記失敗セルの個数が前記基準値以上である場合、前記マルチページデータに対するプログラム失敗を示す状態情報を前記メモリコントローラに伝送する段階と、を含み、
    前記マルチページデータは、現在プログラムサイクルでプログラムされたデータであり、前記以前ページデータは、以前プログラムサイクルで前記第2メモリセルに予め保存されたデータである、動作方法。
JP2021130653A 2020-08-18 2021-08-10 マルチページデータをプログラムするための不揮発性メモリ装置の動作方法 Active JP7814858B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200103435A KR102797518B1 (ko) 2020-08-18 2020-08-18 멀티 페이지 데이터를 프로그램하기 위한 불휘발성 메모리 장치의 동작 방법
KR10-2020-0103435 2020-08-18

Publications (2)

Publication Number Publication Date
JP2022034536A JP2022034536A (ja) 2022-03-03
JP7814858B2 true JP7814858B2 (ja) 2026-02-17

Family

ID=75936924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021130653A Active JP7814858B2 (ja) 2020-08-18 2021-08-10 マルチページデータをプログラムするための不揮発性メモリ装置の動作方法

Country Status (5)

Country Link
US (3) US11500706B2 (ja)
EP (1) EP3958265B1 (ja)
JP (1) JP7814858B2 (ja)
KR (1) KR102797518B1 (ja)
CN (1) CN114078529A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102797518B1 (ko) 2020-08-18 2025-04-18 삼성전자주식회사 멀티 페이지 데이터를 프로그램하기 위한 불휘발성 메모리 장치의 동작 방법
US11894080B2 (en) * 2022-04-29 2024-02-06 Sandisk Technologies Llc Time-tagging read levels of multiple wordlines for open block data retention
CN118805223A (zh) 2023-02-14 2024-10-18 长江存储科技有限责任公司 执行读取操作的系统和方法
EP4463860B8 (en) 2023-02-14 2026-04-15 Yangtze Memory Technologies Co., Ltd. System and method of performing a read operation
WO2025085143A1 (en) * 2023-10-18 2025-04-24 Micron Technology, Inc. Programming data in memory
CN120148594A (zh) * 2023-12-12 2025-06-13 长江存储科技有限责任公司 存储器、存储系统、存储器的编程方法及电子设备
KR20260023366A (ko) * 2024-08-09 2026-02-20 삼성전자주식회사 메모리 컨트롤러 및 그의 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160284414A1 (en) 2015-03-23 2016-09-29 Phison Electronics Corp. Data programming method, memory storage device and memory control circuit unit
JP2018005959A (ja) 2016-06-30 2018-01-11 東芝メモリ株式会社 メモリシステムおよび書き込み方法
JP2018142388A (ja) 2017-02-27 2018-09-13 東芝メモリ株式会社 半導体記憶装置及びメモリシステム
US20200005862A1 (en) 2018-06-29 2020-01-02 Micron Technology, Inc. Misplacement mitigation algorithm

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR101422704B1 (ko) * 2008-01-21 2014-07-25 삼성전자주식회사 소거 스트레스를 줄일 수 있는 전하 트랩형 플래시 메모리장치 그리고 그것의 프로그램 및 소거 방법
KR101014926B1 (ko) 2008-05-20 2011-02-15 주식회사 하이닉스반도체 불휘발성 메모리 장치의 프로그램 검증 방법
US9123422B2 (en) 2012-07-02 2015-09-01 Super Talent Technology, Corp. Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells
KR101413137B1 (ko) 2008-07-04 2014-07-01 삼성전자주식회사 메모리 장치 및 메모리 프로그래밍 방법
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
KR101855169B1 (ko) 2011-10-13 2018-05-09 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치의 프로그램 방법, 불휘발성 메모리 장치를 포함하는 메모리 시스템
US8760921B2 (en) 2012-08-28 2014-06-24 Kabushiki Kaisha Toshiba Storage device and control method of nonvolatile memory
KR102025263B1 (ko) 2012-10-05 2019-09-25 삼성전자주식회사 메모리 시스템 및 그것의 읽기 교정 방법
KR102123946B1 (ko) 2012-12-28 2020-06-17 삼성전자주식회사 멀티 레벨 셀 메모리 장치 및 그것의 동작방법
US9026757B2 (en) * 2013-01-25 2015-05-05 Sandisk Technologies Inc. Non-volatile memory programming data preservation
US9607696B2 (en) 2013-04-25 2017-03-28 Technion Research And Development Foundation Ltd. Minimal maximum-level programming
KR102226367B1 (ko) * 2014-01-02 2021-03-12 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 불휘발성 메모리 시스템
WO2015106162A1 (en) 2014-01-09 2015-07-16 SanDisk Technologies, Inc. Selective copyback for on die buffered non-volatile memory
US9619321B1 (en) 2015-10-08 2017-04-11 Seagate Technology Llc Internal copy-back with read-verify
KR102389077B1 (ko) 2015-11-05 2022-04-22 에스케이하이닉스 주식회사 3 차원 비휘발성 메모리 소자의 초기화 방법 및 이의 프로그래밍 방법
KR102606468B1 (ko) * 2015-11-26 2023-11-29 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치에 데이터를 프로그램 하는 프로그램 방법
US10665302B2 (en) * 2016-01-15 2020-05-26 Samsung Electroncis Co., Ltd. Non-volatile memory device and operating method thereof
KR102620820B1 (ko) * 2016-09-23 2024-01-03 삼성전자주식회사 비휘발성 메모리 장치의 데이터 독출 방법
TWI648676B (zh) * 2017-11-30 2019-01-21 群聯電子股份有限公司 資料存取方法、記憶體控制電路單元以及記憶體儲存裝置
US20190042130A1 (en) 2017-12-18 2019-02-07 Intel Corporation Prefix opcode method for slc entry with auto-exit option
KR102471276B1 (ko) 2018-01-08 2022-11-28 삼성전자주식회사 메모리 장치
KR102452512B1 (ko) * 2018-02-26 2022-10-11 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
KR102519572B1 (ko) * 2018-05-11 2023-04-07 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
JP7128088B2 (ja) 2018-11-02 2022-08-30 キオクシア株式会社 メモリシステム
KR102801483B1 (ko) * 2018-12-17 2025-05-02 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 동작 방법
US10937512B2 (en) 2019-01-22 2021-03-02 International Business Machines Corporation Managing programming errors in NAND flash memory
KR102610395B1 (ko) 2019-01-22 2023-12-05 삼성전자주식회사 비휘발성 메모리 장치를 포함하는 메모리 시스템
KR102797518B1 (ko) 2020-08-18 2025-04-18 삼성전자주식회사 멀티 페이지 데이터를 프로그램하기 위한 불휘발성 메모리 장치의 동작 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160284414A1 (en) 2015-03-23 2016-09-29 Phison Electronics Corp. Data programming method, memory storage device and memory control circuit unit
JP2018005959A (ja) 2016-06-30 2018-01-11 東芝メモリ株式会社 メモリシステムおよび書き込み方法
JP2018142388A (ja) 2017-02-27 2018-09-13 東芝メモリ株式会社 半導体記憶装置及びメモリシステム
US20200005862A1 (en) 2018-06-29 2020-01-02 Micron Technology, Inc. Misplacement mitigation algorithm

Also Published As

Publication number Publication date
JP2022034536A (ja) 2022-03-03
CN114078529A (zh) 2022-02-22
US20230044730A1 (en) 2023-02-09
US11815982B2 (en) 2023-11-14
KR102797518B1 (ko) 2025-04-18
EP3958265B1 (en) 2024-10-09
US20220057968A1 (en) 2022-02-24
EP3958265A1 (en) 2022-02-23
KR20220022355A (ko) 2022-02-25
US12181953B2 (en) 2024-12-31
US20240020187A1 (en) 2024-01-18
US11500706B2 (en) 2022-11-15

Similar Documents

Publication Publication Date Title
JP7814858B2 (ja) マルチページデータをプログラムするための不揮発性メモリ装置の動作方法
KR102606490B1 (ko) 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치
US11556415B2 (en) Memory controller, memory device and storage device
US20220180957A1 (en) Non-volatile memory device, controller for controlling the same, storage device having the same, and reading method thereof
US11631466B2 (en) Storage device performing read operation by restoring ON cell count (OCC) from power loss protection area of non-volatile memory
US11514997B2 (en) Controller, a storage device including the controller, and a reading method of the storage device
KR102344380B1 (ko) 비휘발성 메모리 장치, 그것을 제어하는 제어기, 그것을 포함하는 저장 장치 및 그것의 동작 방법
US11682467B2 (en) Nonvolatile memory device, controller for controlling the same, storage device including the same, and reading method of the same
US11163494B2 (en) Memory system, memory controller and operating method
US20210034251A1 (en) Memory controllers for performing state shaping operation, memory systems including the memory controllers, and methods of operating the same
CN114694740A (zh) 存储器设备和存储器控制器以及包括其的存储设备
US20250004645A1 (en) Copyback clear command for performing a scan and read in a memory device
CN112447238A (zh) 存储器控制器及其操作方法
US20230307062A1 (en) Non-volatile memory device, operating method thereof, controller for controlling the same, and storage device including the same
US11966608B2 (en) Memory controller with improved data reliability and memory system including the same
CN116072186A (zh) 存储装置及其操作方法
KR102880015B1 (ko) 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
CN114187949A (zh) 存储器系统及其操作方法
CN119440390A (zh) 存储器控制器、其操作方法及包括其的存储设备
US12217802B2 (en) Non-volatile memory device, storage device including the same, and operating method thereof
KR102959563B1 (ko) 데이터 신뢰성을 향상한 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
KR20230071013A (ko) 데이터 신뢰성을 향상한 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
CN115732008A (zh) 存储器装置中用于检测读取干扰的牺牲串

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20251209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260204

R150 Certificate of patent or registration of utility model

Ref document number: 7814858

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150