JP2012181909A - 不揮発性メモリ装置、該メモリ装置を制御するコントローラ、及び該コントローラの動作方法 - Google Patents

不揮発性メモリ装置、該メモリ装置を制御するコントローラ、及び該コントローラの動作方法 Download PDF

Info

Publication number
JP2012181909A
JP2012181909A JP2012041220A JP2012041220A JP2012181909A JP 2012181909 A JP2012181909 A JP 2012181909A JP 2012041220 A JP2012041220 A JP 2012041220A JP 2012041220 A JP2012041220 A JP 2012041220A JP 2012181909 A JP2012181909 A JP 2012181909A
Authority
JP
Japan
Prior art keywords
data
read
random sequence
memory device
soft decision
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
JP2012041220A
Other languages
English (en)
Other versions
JP5999926B2 (ja
Inventor
Yong Jun Kim
容俊 金
Hong Rak Son
弘樂 孫
Jae-Hong Kim
宰弘 金
Sangyong Yoon
翔▲ヨン▼ 尹
Ki Jun Lee
起準 李
Jeong-Su Jeong
政秀 鄭
Seong-Hyuk Choi
城赫 崔
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 JP2012181909A publication Critical patent/JP2012181909A/ja
Application granted granted Critical
Publication of JP5999926B2 publication Critical patent/JP5999926B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/108Parity data distribution in semiconductor storages, e.g. in SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • 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/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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

【課題】メモリコントローラの動作によって不揮発性メモリのデータ信頼度を向上させうる方法と、該方法を行う装置とを提供する。
【解決手段】ハードデシジョンリード電圧供給によってリードされたハードデシジョンデータと、ソフトデシジョンリード電圧供給によってリードされたソフトデシジョンデータを保存する少なくとも1つのラッチを含むページバッファ35と、プログラムデータ及びランダムシーケンスをページバッファに選択的に伝達するマルチプレクサ回路91と、ランダムシーケンス発生回路50、ページバッファ、及びマルチプレクサ回路を制御するコントロールロジック31と、を含み、コントロールロジックの制御によって、ページバッファは、ランダムシーケンスを使って、ハードデシジョンデータをデランダマイジングし、ソフトデシジョンデータは、デランダマイジングされない。
【選択図】図10

Description

本発明は、データ処理技術に係り、特に、ソフトデシジョンデータ(soft decision data)に対しては、ランダマイジング(randomizing)を行わないコントローラ(controller)、該コントローラの動作方法、及び不揮発性メモリ装置に関する。
半導体メモリ装置は、DRAM(dynamic random access memory)、またはSRAM(static random access memory)のような揮発性メモリ装置とEEPROM(electrically Erasable Programmable Read−Only Memory)、FRAM(ferroelectrics random access memory)、PRAM(phase change random access memory)、MRAM(magnetoresistive random access memory)、またはフラッシュ(flash)メモリのような不揮発性メモリ装置とに区分することができる。
フラッシュメモリの場合、それぞれのメモリセル(memory cell)に保存されるビット(bit)数によって、前記それぞれのメモリセルに保存可能なデータ状態が決定されうる。1つのメモリセルに1ビットデータを保存するメモリセルを単一ビットセル(single−bit cell)、または単一レベルセル(single−level cell;SLC)と言う。そして、1つのメモリセルにマルチビット(multi−bit)データ(例えば、2ビット以上)を保存するメモリセルをマルチレベルセル(multi−level cell;MLC)と言う。MLCの場合、高容量保存デバイス(storage device)として有利な長所を有する。しかし、1つのメモリセルにプログラムされるビット数が増加するほど信頼性は落ち、判読失敗率は増加する。
本発明は、メモリコントローラの動作によって不揮発性メモリのデータ信頼度を向上させうる方法と、該方法を行う装置とを提供することである。
本発明の実施例による不揮発性メモリ装置は、プログラムデータを保存するメモリセルアレイと、ハードデシジョンリード(hard decision read)電圧及び少なくとも1つ以上のソフトデシジョンリード(soft decision read)電圧を発生させる電圧発生回路と、ランダムシーケンス(random sequence)を発生させるランダムシーケンス発生回路と、ビットラインを通じて前記メモリセルアレイと連結され、前記ランダムシーケンスと前記ハードデシジョンリード電圧供給によってリードされたハードデシジョンデータと、前記ソフトデシジョンリード電圧供給によってリードされたソフトデシジョンデータを保存する少なくとも1つのラッチ(latch)を含むページバッファと、前記プログラムデータ及び前記ランダムシーケンスを前記ページバッファに選択的に伝達するマルチプレクサ回路と、前記ランダムシーケンス発生回路、前記ページバッファ、及び前記マルチプレクサ回路を制御するコントロールロジックと、を含み、前記コントロールロジックの制御によって、前記ページバッファは、前記ランダムシーケンスを使って、前記ハードデシジョンデータをデランダマイジングし、前記ソフトデシジョンデータは、デランダマイジングされない。
前記リードされたデータが、前記ソフトデシジョンデータである場合、前記コントロールロジックの制御によって、前記マルチプレクサ回路は、前記ランダムシーケンスを前記ページバッファに伝送しない。前記ランダムシーケンス発生回路は、初期値(seed)を保存するLFSR(linear feedbakc shift register)を含む。
前記リードされたデータが、前記ソフトデシジョンデータである場合、前記コントロールロジックの制御によって、前記ランダムシーケンス発生回路の初期値を0に初期化して、前記ランダムシーケンスを0に形成する。前記ハードデシジョンデータは、前記メモリセルアレイに保存されたデータとしてランダムデータである。前記ソフトデシジョンデータは、前記ハードデシジョンデータの信頼度を表わす。
本発明の実施例によるメモリコントローラの動作方法は、中央処理装置から出力された第1リード命令語を不揮発性メモリ装置に供給する段階と、前記第1リード命令語に応答して、前記不揮発性メモリ装置から出力された第1データを受信し、該受信された第1データをデランダマイジング(de−randomizing)する段階と、前記中央処理装置から出力された第2リード命令語を前記不揮発性メモリ装置に供給する段階と、前記第2リード命令語に応答して、前記不揮発性メモリ装置から出力された第2データを受信し、該受信された第2データを使って、前記デランダマイズされた第1データをECC(error correction code)デコーディングする段階と、を含む。
前記第1リード命令語は、前記不揮発性メモリ装置に保存された前記第1データをリードするハードデシジョンリード命令語である。前記第2リード命令語は、前記第1データに信頼度を付け加える情報である前記第2データをリードするためのソフトデシジョン(soft decision)リード命令語である。
前記ソフトデシジョンリード命令語供給時に、前記メモリコントローラは、前記第2データをデランダマイジングしない。前記デコーディングする段階は、LDPCコード(low density parity check code)を使う。
本発明の実施例によるメモリコントローラは、中央処理装置と、前記中央処理装置の制御によって供給されたハードデシジョン命令語に応答して、不揮発性メモリ装置からリードされたハードデシジョン(hard decision)データをランダムシーケンスを用いてデランダマイズし、該デランダマイズされたデータを出力するデランダマイザーと、を含む。
前記デランダマイズは、前記ランダムシーケンスを発生させるランダムシーケンス発生回路と、前記ランダムシーケンスと前記ハードデシジョンデータとをXOR演算して、前記デランダマイズされたデータを出力するXORゲートと、を含む。前記ランダムシーケンス発生回路は、初期値を有する複数の線形フィードバックシフトレジスタ(Linear feedback shift registers)を含み、前記中央処理装置の制御によって供給されたソフトデシジョン命令語に応答して、前記不揮発性メモリ装置から出力されたソフトデシジョンデータを処理する時、前記複数の線形フィードバックシフトレジスタのそれぞれの初期値が0に初期化されることによって、前記ランダムシーケンス発生回路は、0である前記ランダムシーケンスを発生させる。
本発明は、不揮発性メモリ、メモリコントローラ、及びメモリコントローラの動作方法は、エラー(error)訂正能力を高めるために、ソフトデシジョンリード(softdecision read)遂行時、デランダマイジングを行わないことによって、ソフトデシジョンデータに損傷を防止させることができる。したがって、ランダマイジングとソフトデシジョンの運用は、マルチビットフラッシュ(multi−bit flash)メモリ装置の信頼度を向上させうる。
3ビットマルチレベルセルフラッシュメモリの正常なプログラム遂行後、プログラム(program)状態とイレーズ(erase)状態とのスレショルド電圧散布を示す。 3ビットマルチレベルセルフラッシュメモリのプログラム遂行後、プログラム及びイレーズを反復して、時間が経過した場合、フラッシュメモリセルの特性劣化によって変形されうるプログラム状態とイレーズ状態とのスレショルド電圧散布を示す。 2ビットソフトデシジョンリード動作でのそれぞれのリード電圧とそれぞれのページバッファから出力されるデータとを示す。 3ビットソフトデシジョンリード動作でのそれぞれのリード電圧とそれぞれのページバッファから出力されるデータとを示す。 本発明の一実施例によるメモリシステムのブロック図である。 本発明の一実施例によるランダマイザー(randomizer)の詳細なブロック図である。 本発明の一実施例によるデランダマイザーの詳細なブロック図である。 図5Bに示されたランダムシーケンス発生回路の他の実施例を示す。 図4のデランダマイザーの詳細なブロック図である。 図4の不揮発性メモリ装置のブロック図である。 図7のランダムデータインターフェース部分の詳細なブロック図である。 図7のページバッファ(page buffer)の詳細なブロック図である。 本発明の他の実施例によるメモリ装置のブロック図である。 本発明の他の実施例によるメモリシステムのブロック図である。 本発明の一実施例によるデータプログラム動作のフローチャートである。 本発明の一実施例によるデータリード動作のフローチャートである。 本発明の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明の他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明のまた他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。 図20に示された電子装置を含むデータ処理システムのブロック図である。
以下、添付した図面を参照して、本発明を詳しく説明する。
図1Aは、3ビットマルチレベルセルフラッシュメモリの正常なプログラム遂行後、プログラム状態とイレーズ状態とのスレショルド電圧散布を示す。MLC(multi level cell)フラッシュメモリの場合、1つのメモリセルにk(kは、自然数)ビットをプログラムするためには、2個のスレショルド(threshold)電圧のうちの何れか1つが、前記メモリセルに形成されなければならない。
複数のメモリセルの間の微細な電気的特性差によって、同じデータがプログラムされた複数のメモリセルのそれぞれのスレショルド電圧は、一定範囲のスレショルド電圧散布(threshold voltage distribution)を形成しうる。それぞれのスレショルド電圧散布は、kビットによって生成されうる2個のデータ値のそれぞれに対応しうる。
3ビットMLCの場合、図1Aに示したように、7個のプログラム状態P1〜P7に相応するスレショルド電圧散布と、1つのイレーズ状態Eに相応するスレショルド電圧散布とが形成される。図1Aに示された各スレショルド電圧散布は、理想的な散布度であって、各散布が1つも重ならず、各スレショルド電圧散布別にリード電圧(read voltage)を有する。
図1Bは、3ビットマルチレベルセルフラッシュメモリのプログラム遂行後、プログラム及びイレーズを反復して、時間が経過した場合、フラッシュメモリセルの特性劣化によって変形されうるプログラム状態とイレーズ状態とのスレショルド電圧散布を示す。
フラッシュメモリの場合、経時的にフローティングゲート(floating gate)またはトンネル酸化物(tunnel oxide)に捕獲(trap)された電子が放出されるチャージロス(charge loss)が発生する。また、プログラムとイレーズとが反復されながら、トンネル酸化物が劣化されて、前記チャージロスがさらに増加することができる。前記チャージロスは、スレショルド電圧を減少させることができて、例えば、スレショルド電圧散布は、左に移動しうる。また、プログラムディスターバンス(program disturbance)、イレーズディスターバンス(erase disturbance)、及び/またはバックパターンディペンデンシー(backpattern dependency)は、スレショルド電圧散布を増加させることができる。したがって、前述した理由によるフラッシュメモリセルの特性劣化に起因して、図1Bに示したように、互いに隣接した各状態E、P1〜P7のスレショルド電圧散布が互いに重畳されうる。
各状態E、P1〜P7のスレショルド電圧散布が互いに重畳されれば、特定リード電圧を用いてデータをリードする時、リードデータに多くのエラーが含まれうる。例えば、リード電圧Vread3がメモリセルに供給される時、前記メモリセルがオン(on)状態であれば、状態P2側にあるリードデータを言い、オフ(off)状態であれば、状態P3側にあるデータを言う。Vread1〜Vread7のそれぞれは、リード電圧を意味する。しかし、重畳された部分の場合、オフ状態でリードされなければならないメモリセルが、オン状態でリードされうる。したがって、スレショルド電圧散布が重畳されることによって、リードデータには、多くのエラービットが含まれうる。
図2は、2ビットソフトデシジョンリード動作でのそれぞれのリード電圧とそれぞれのページバッファから出力されるデータとを示す。本明細書で、リード命令語(read command)は、ハードデシジョンリード命令語(例えば、第1リード命令語)とソフトデシジョンリード命令語(例えば、第2リード命令語)とを含む。
ハードデシジョンリード動作は、正常データリード動作(normal data read operation)を言い、リード電圧が、メモリセルのワードライン(word line)に供給される時、前記メモリセルのオン状態またはオフ状態によって、前記メモリセルに保存されたデータを1または0にリードすることを意味する。
図2に示したように、ハードデシジョンリード電圧は、R1を言い、前記R1が、メモリセルに供給時に、前記メモリセルがオン状態であれば、ハードデシジョンデータ(2−1)は1になり、前記メモリセルがオフ状態であれば、ハードデシジョンデータは0になる。
ソフトデシジョンリード動作は、ハードデシジョンリード電圧R1を基準に一定の電圧差を有する複数のリード電圧(例えば、ソフトデシジョンリード電圧)をメモリセルに供給して、ハードデシジョンリードデータに信頼度を付け加える情報を形成することを意味する。
図2に示したように、2ビットソフトデシジョンリード動作の場合、ソフトデシジョンリード電圧のそれぞれは、R2−1とR2−2とである。R2−1リード電圧がメモリセルに供給時に、前記メモリセルのオンまたはオフによって判断された最初のソフトデシジョンリード値(2−2)は、1、0、0、及び0になりうる。R2−2リード電圧がメモリセルに供給時に、前記メモリセルのオンまたはオフによって判断された二番目のソフトデシジョンリード値(2−3)は、1、1、1、及び0になる。
フラッシュメモリは、最初のソフトデシジョンリード値(2−2)と二番目のソフトデシジョンリード値(2−2)とに対してXNOR(exclusive NOR)演算を行って、ソフトデシジョンデータ(2−4)を形成する。ソフトデシジョンデータ(2−4)は、ハードデシジョンデータ(2−1)に信頼度を付け加えることができる。
すなわち、ソフトデシジョンデータ(2−4)が1であれば、ハードデシジョンデータは、強さ(strong)を意味する。ソフトデシジョンデータ(2−4)が0であれば、ハードデシジョンデータは、弱さ(weak)を意味する。すなわち、最初のソフトデシジョンリード値(2−2)と二番目のソフトデシジョンリード値(2−3)とをページバッファ内でXNOR演算すれば、ソフトデシジョンデータ(2−4)が生成されうる。前記ページバッファ内でのXNOR演算については後述する。
図3は、3ビットソフトデシジョンリード動作でのそれぞれのリード電圧とそれぞれのページバッファから出力されるデータとを示す。図3を参照すると、R1は、ハードデシジョン電圧であり、メモリセルがオン状態であるか、またはオフ状態であるかによって、データ1とデータ0とが出力される(3−1)。ハードデシジョン電圧R1を基準に出力されたデータ1とデータ0は、ハードデシジョンデータ(3−1)を表わす。
ハードデシジョン電圧R1を基準に一定の電圧差を有する複数のリード電圧R2−1及びR2−2のそれぞれが、不揮発性メモリ装置のメモリセルアレイ(memory cell array)に供給される。これは、前述した2ビットソフトデシジョンリード動作と同一である。最初のソフトデシジョンデータ(3−2)は、1、0、0、及び1が形成される。
3ビットソフトデシジョンリード動作の場合、R2−1を基準に一定の電圧差を有する複数のリード電圧R3−1及びR3−2のそれぞれが、前記メモリセルアレイに供給される。また、R2−2を基準に一定の電圧差を有する複数のリード電圧R3−3及びR3−4のそれぞれが、前記メモリセルアレイに供給される。4個のリード電圧R3−1、R3−2、R3−3、及びR3−4のそれぞれが、前記メモリセルアレイに供給されることによって得られたデータに対してページバッファでXNOR演算を行えば、二番目のソフトデシジョンデータ(3−3)は、1、0、1、0、及び1が形成される。この際、二番目のソフトデシジョンデータ(3−3)は、最初のソフトデシジョンデータ(3−2)に加重値を与えることができる。すなわち、最初のソフトデシジョンデータ(3−2)1が強さを表わすならば、二番目のソフトデシジョンデータ(3−3)のうちの1は、非常に強さ(very strong)を表わし、0は、強さを表すことができる。
図4は、本発明の一実施例によるメモリシステムのブロック図である。図4を参照すると、メモリシステム(memory system)10は、メモリコントローラ40と不揮発性メモリ装置30、例えば、フラッシュメモリ装置とを含む。メモリコントローラ40は、マイクロプロセッサ(microprocessor)41、ECC(error correction code)エンコーダ(encoder)42、ECCデコーダ(decoder)42’、ランダマイザー(randomizer)43、及びデランダマイザー(de−randomizer)43’を含み、それぞれ41、42、42’、43、及び43’は、バス(bus)44を通じて電気的に連結されうる。図4には、ランダマイザー43とデランダマイザー43’とが互いに分離された形態で示されたが、実施例によって、1つとして具現可能である。
マイクロプロセッサ41は、メモリコントローラ40の動作を全般的に制御する。マイクロプロセッサ41は、ホスト(host;図示せず)から出力される命令語(command)を解析し、該解析結果によって、不揮発性メモリ装置30の全般的な動作、例えば、プログラム(program)動作、リード(read)動作、またはイレーズ(erase)動作などを制御することができる。
図4を参照すると、上端の矢印は、不揮発性メモリ装置30にデータをプログラムするためのプログラムする動作を表わし、下端の矢印は、不揮発性メモリ装置30にプログラムされたデータをリードする動作を表わす。
まず、図4の上端の矢印によって、プログラム動作を詳しく説明すれば、次の通りである。ECCエンコーダ42は、ホストとインターフェース(interface)するホストインターフェースを通じて入力されるデータに対してエラー訂正エンコーディング(error correction encoding)を行い、これにより、パリティビット(parity bit)が付け加われたデータ、例えば、エンコードされたデータを形成する。前記エンコードされたデータは、ランダマイザー43に入力されうる。ECCエンコーダ42は、エラー訂正のための回路(circuit)、ロジック(logic)、コード(code)、またはこれらの結合を含みうる。
ランダマイザー43は、入力データパターン(data pattern)にデータ1とデータ0とが確率的に一定に保持されるように、前記入力データパターンを変える機能を行う。不揮発性メモリ装置の集積度の向上は、複数のメモリセルの間の干渉(interference)を増加させることができる。すなわち、隣接する複数のメモリセルのそれぞれの状態(すなわち、保存されたデータ値)によって、前記干渉は増減しうる。したがって、ランダム化されたデータ、すなわち、ランダムデータを複数のメモリセルのそれぞれに保存することによって、前記複数のメモリセルのそれぞれのデータ値、すなわち、データパターンの干渉は最小化されうる。
本発明の一実施例による不揮発性メモリ装置30、例えば、フラッシュメモリ装置のフラッシュメモリセルには、プログラム電圧ディスターバンス、パス電圧ディスターバンス、フローティングポリゲート(floating poly gates)の間のカップリング(coupling)、またはバックパターンディペンデンシー(back pattern dependency)などの干渉が存在することができる。ランダムデータをプログラムすることは、複数のメモリセルの間の干渉を最小化することができる。次いで、図4の下端の矢印によって、データリード動作が詳しく説明される。前述したように、ランダムデータは、不揮発性メモリ装置30に保存されている。したがって、データリード動作の間に、ランダムデータは、デランダマイザー43’によってランダム化される以前のオリジナルデータ(original data)に復元またはデランダマイズされなければならない。
データリード動作は、ハードデシジョンリード動作とソフトデシジョンリード動作とを含みうる。言い換えれば、データをリードするハードデシジョンリード動作と、前記ハードデシジョンリード動作に追加的なリード動作とを行って、前記ハードデシジョンリード動作によって、リードされたデータに信頼性を付け加えることができる情報を得るソフトデシジョンリード動作を説明する。前記ハードデシジョンリード動作の場合、不揮発性メモリ装置30からリードされたランダムデータは、デランダマイザー43’によってオリジナルデータに復元されうる。
ソフトデシジョンリード動作は、不揮発性メモリ装置30に保存されたデータをリードする動作ではなく、ハードデシジョンリード電圧(例えば、図2または図3のR1)を基準に一定の電圧差が出る追加的なリード電圧をメモリセルのゲート(gate)に供給して、ハードデシジョンリード動作によってリードされたデータに信頼度を付け加えることができる情報を提供する動作を意味する。図3を参照すると、2ビットソフトデシジョンデータ(2−4)の場合、データ1は、強さを表わし、データ0は、弱さを表わす。
このようなソフトデシジョンデータ(2−4)が、デランダマイザー43’で処理される場合、信頼度を表わす情報が変わりうる問題が発生することがある。したがって、ソフトデシジョンリード命令語によるソフトデシジョンリード動作の場合、出力されるソフトデシジョンデータ(2−4)は、デランダマイザー43’を迂回してバイパス(bypass)されうる。ここで、ランダマイザー43とデランダマイザー43’は、互いに分離された回路またはロジック(logic)であり、また1つの回路またはロジックであり得る。
デランダマイザー43’によって復元された(または、デランダマイズされた)データまたはバイパスされたソフトデシジョンデータは、ECCデコーダ42’に伝送することができる。復元されたオリジナルデータとバイパスされたソフトデシジョンデータとを使って、ECCデコーダ42’は、リードされたデータのエラーを検出し、訂正することができる。ECCデコーダ42’は、エラー訂正のための回路、ロジック、コード、またはこれらの組合わせをいずれも含みうる。
既存のECCデコーダは、ハードデシジョンデータのみを用いてエラー(error)訂正を行ったが、本発明は、ECCデコーダ42’はハードデシジョンデータと、前記ハードデシジョンデータに信頼性を表わす情報、例えば、ソフトデシジョンデータ値を付け加えてエラー訂正を行うので、ECCデコーダ42’のエラー訂正能力を向上させうる長所がある。
ECCエンコーダ42とECCデコーダ42’は、LDPCコード(low density parity check)、BCHコード、ターボコード(turbo code)、リードソロモンコード(Reed−Solomon code)、コンボリューションコード(convolution code)、RSC(recursive systematic code)、TCM(trellis−coded modulation)、BCM(Block coded modulation)などの符号化された変調(coded modulation)を使ってエラー訂正ができ、これに限定されるものではない。
図5Aは、本発明の一実施例によるランダマイザーの詳細なブロック図である。図5Aを参照すると、ランダマイザー43は、ランダムシーケンス発生回路50とXORゲート51とを含みうる。ランダムシーケンス発生回路50は、線形フィードバックシフトレジスタ(linear feedback shift register;LFSR)を使ってランダムシーケンス(random sequence;RS)を生成することができる。
また、線形フィードバックシフトレジスタは、初期値、例えば、シードSEEDを使ってランダムシーケンスRSを形成しうる。例えば、シードSEEDは、レジスタ(register)に保存することができる。ランダムシーケンスRSは、バイナリシーケンス(binary sequence)であり得るが、これに限定されるものではない。ランダムシーケンス発生回路50の線形フィードバックシフトレジスタ(LFSR)の個数がm個である場合、ランダムシーケンスは、(2−1)の周期を有しうる。また、初期にそれぞれの線形フィードバックシフトレジスタ(1〜m)には、初期値が設定しうる。前記初期値は、シード(seed)と呼ばれ、前記シードは、ページアドレス(page address)またはブロックアドレス(block address)などを使って決定されうる。
XORゲート51は、ランダムシーケンス発生回路50によって生成されたランダムシーケンスRSと入力されるオリジナルデータODとをXOR演算して、ランダムデータRDを生成することができる。
図5Bは、本発明の一実施例によるデランダマイザーの詳細なブロック図である。図5Bに示されたデランダマイザー43’は、ランダマイザー43と同様にランダムシーケンス発生回路50とXORゲート51とを含みうる。したがって、ランダマイザー43とデランダマイザー43’は、1つの回路または装置で構成することができる。実施例によって、ランダマイザー43とデランダマイザー43’は、互いに分離された回路または装置で構成することもできる。実施形態によって、ランダマイザー43とデランダマイザー43’は、同一の1つの回路または装置で、または相異なる2個の回路、または装置で構成することができる。また、デランダマイザー43’は、ランダマイザー43で使われたシードと同一のシードを使って、ランダムシーケンスRSを形成しうる。
デランダマイザー43’に伝送されたハードデシジョンデータ、すなわち、ランダムデータRDは、ランダムシーケンス発生回路50によって生成されたランダムシーケンスRSによって、XORゲート51によってオリジナルデータODに変換されうる。デランダマイザー43’は、ランダマイザー43で使われた同一のランダムシーケンスを使うことができる。ランダマイザー43とデランダマイザー43’のそれぞれは、ランダムシーケンス発生回路50とXORゲート51とを含み、データの入出力方向が互いに異なりうる。
図5Cは、図5Bに示されたランダムシーケンス発生回路の他の実施例を示す。前述したように、ソフトデシジョンデータは、デランダマイザー43’によってデランダマイズされる時、変形されうるので、これにより、信頼度の付加情報が歪曲されうる。
図4、図5B、及び図5Cを参照すると、ソフトデシジョンリード動作の間に、マイクロプロセッサ41は、ランダムシーケンス発生回路50のそれぞれの線形フィードバックシフトレジスタ(1〜m)の初期値、すなわち、シードをいずれも0に作ることができる。したがって、ランダムシーケンス発生回路50で生成されたシーケンス(RS)が、いずれも0(all zero)になることによって、ソフトデシジョンデータの変形は防止されうる。すなわち、ソフトデシジョンデータに対しては、デランダマイザー43’によるデランダマイズが行われないことと同じ効果を有する。
図6は、図4のデランダマイザーの詳細なブロック図である。図6には、説明の便宜上、デランダマイザー43’、マイクロプロセッサ41、及びスイッチ(switch)60がともに示されている。デランダマイザー43’は、シーケンス発生回路50とXORゲート51とを含むが、実施例によって、ソフトデシジョンデータを出力する時、スイッチングされるスイッチ60をさらに含みうる。例えば、スイッチ60は、トランジスタ(transistor)として具現可能である。
マイクロプロセッサ41は、ソフトデシジョンリード命令語を発生させる時、デランダマイザー43’にソフトデシジョンリード命令語を伝送しうる。マイクロプロセッサ41の制御によってソフトデシジョンデータが出力される時、ソフトデシジョンデータがデランダマイザー43’に入力されずにバイパスされるように、スイッチ60がスイッチングされるようにする。例えば、ソフトデシジョン命令語による動作が行われる時、スイッチ60は、スイッチング信号、例えば、マイクロプロセッサ41から出力されたスイッチング信号に応答して、ソフトデ−スジョンデータをバイパスすることができる。
マイクロプロセッサ41の制御によって、ソフトデシジョン命令語がデランダマイザー43’に供給され、一定時間が経った後にスイッチ60がスイッチングされうる。また、ソフトデシジョンデータが出力される時、特定信号をスイッチ60に供給して、スイッチ60がスイッチングされるようにできる。スイッチ60がスイッチングされることによって、デランダマイザー43’を迂回してバイパスされたソフトデシジョンデータは、変形されずにバス44を通じてECCデコーダ42’に入力されうる。
図7は、図4の不揮発性メモリ装置のブロック図である。不揮発性メモリ装置30は、フラッシュメモリ装置、例えば、NANDフラッシュメモリ装置として具現可能である。
図7を参照すると、フラッシュメモリ装置30は、複数のワードライン(word lines;W/L)と複数のビットライン(bit lines;B/L)との間に接続された複数のメモリセルを含むメモリセルアレイ34、ローデコーダ(row decoder)33、電圧発生器32、入出力パッド(input/output pad)38、入出力バッファ37、ランダムデータインターフェース(random data interface)36、ページバッファ35、及びコントロールロジック(control logic)31を含みうる。
メモリセルアレイ34は、複数のワードラインW/Lと複数のビットラインB/Lとを含み、各メモリセルは、1ビットデータまたはM(Mは、2以上の自然数)ビットデータを保存することができる。前記各メモリセルは、フローティングゲート(floating gate)または電荷トラップ(trap)層のような電荷保存層を有するメモリセルまたは可変抵抗素子を有するメモリセルとして具現可能である。メモリセルアレイ34は、単層アレイ構造(single−layer array structure;または、2次元アレイ構造)または多層アレイ構造(multi−layer arraystructure;または、3次元アレイ構造)を有するように具現可能である。
回路、ロジック、コード、またはこれらの組合わせとして具現可能なコントロールロジック31は、フラッシュメモリ装置30の動作を全般的に制御する。外部から命令語CMDが入力されれば、コントロールロジック31は、命令語CMDを解析し、フラッシュメモリ装置30が解析された命令語による動作、例えば、プログラム動作、リード動作、またはイレーズ動作を行うようにフラッシュメモリ装置30を制御することができる。
ローデコーダ33は、コントロールロジック31によって制御され、ローアドレス(row address)によってメモリセルアレイ34に具現された複数のワードラインのうちの少なくとも1つのワードラインを駆動する。電圧発生器32は、コントロールロジック31の制御によって、プログラム動作、リード動作、またはイレーズ動作に必要な少なくとも1つの電圧を生成させ、該生成された少なくとも1つの電圧をローデコーダ33によって選択された少なくとも1つのワードラインに供給する。ページバッファ35は、コントロールロジック31によって制御され、動作モード、例えば、リード動作またはプログラム動作によって、感知増幅器として、またはライトドライバー(write driver)として動作することができる。
例えば、リード動作の間に、ページバッファ35は、選択された少なくとも1つのワードラインと少なくとも1つのビットラインとの間に接続された少なくとも1つのメモリセルからリードされたデータを感知する感知増幅器として動作する。プログラム動作の間に、ページバッファ35は、プログラムデータを選択された少なくとも1つのワードラインと少なくとも1つのビットラインとの間に接続された少なくとも1つのメモリセルにライト(write)するためのライトドライバーとして動作する。ページバッファ35は、複数の単位ページバッファを含み、前記複数の単位ページバッファのそれぞれは、少なくとも1つのビットラインに連結されている。したがって、ページバッファ35は、プログラム動作またはリード動作の間に、プログラムデータまたはリードデータを保存することができる。
入出力パッド(または、入出力回路)38、入出力バッファ37は、外部装置、例えば、ホストと不揮発性メモリ装置30との間で送受信するデータの入出力経路になりうる。
ランダムデータインターフェース36は、図5Aに示されたランダマイザー43と同様に、プログラム動作の間に、外部から入力されたオリジナルデータODをランダムデータRDにランダマイズすることができる。また、ランダムデータインターフェース36は、図5Bに示されたデランダマイザー43’と同様に、リード動作の間に、リードされたランダムデータRDをオリジナルデータODにデランダマイズすることができる。
ランダムデータインターフェース36は、コントロールロジック31によって制御され、図5A、図5B、または図6に示したように、ランダムシーケンス発生回路50とXORゲート51とを含みうる。ランダムシーケンス発生回路50は、コントロールロジック31に制御によって、ランダムシーケンスRSを順次に発生する。ランダムデータインターフェース36は、コントロールロジック31の制御によって、ランダムシーケンスRSと入力されたデータ(ODまたはRD)とをXOR演算して、ランダムデータRDまたはオリジナルデータODを生成することができる。このように生成されたランダムデータは、コントロールロジック31の制御によって、ページバッファ35にローディング(loading)されうる。
フラッシュメモリ装置30がリード命令語に応答して、メモリセルアレイ34にプログラムされたランダムデータをリードする場合は、次の通りである。
前述したように、前記リード命令語は、メモリセルアレイ34に保存されたデータにオン状態またはオフ状態と判断して、リードするためのハードデシジョンリード命令語(例えば、第1リード命令語)と、ハードデシジョンリードデータに信頼度を付け加える情報をリードするためのソフトデシジョンリード命令語(例えば、第2リード命令語)とを含む。
ハードデシジョンデータは、ランダムデータインターフェース36によってランダムデータからオリジナルデータに復元される、すなわち、デランダマイズ(randomize)される過程を通さなければならない。図5Bに示したように、ランダムシーケンスRSとランダムデータRD、すなわち、ハードデシジョンデータに対してXOR演算が行われることによって、ランダムデータRDは、オリジナルデータODにデランダマイズされる。しかし、ソフトデシジョンデータは、ランダムデータインターフェース36によって変形されうる。したがって、変形されたソフトデシジョンデータは、ハードデシジョンデータに付け加われた信頼度の情報を変更させることができる。これについては後述する。
図8は、図7のランダムデータインターフェース部分の詳細なブロック図である。図5Aから図6を参照して説明したように、ランダムデータインターフェース(randomdata interface)36は、コントロールロジック31の制御を受け、ランダムシーケンス発生回路50及びXORゲート51を含みうる。プログラム動作の間に、入力バッファ37−1を通じてオリジナルデータODがランダムデータインターフェース36に入力され、XORゲート51は、ランダムシーケンス発生回路50によって発生したランダムシーケンスRSと入力バッファ37−1を通じて入力されたオリジナルデータODとをXOR演算して、ランダムデータRDを生成させる。該生成されたランダムデータRDは、ページバッファ35にローディングされ、メモリセルアレイ34にプログラムされる。
メモリセルアレイ34にプログラムされたデータをリードするリード動作の間に、ページバッファ35は、ハードデシジョンリード動作(例えば、第1リード動作)を通じて前記リード動作の対象となったメモリセルの状態がオンであるか、またはオフであるかを感知して、前記メモリセルにプログラムされたデータが、データ1であるか、またはデータ0であるかを区分することができる。
感知されたランダムデータは、ランダムデータインターフェース36に伝送することができる。ランダムデータインターフェース36のXORゲート51は、ページバッファ35から出力されたランダムデータRDとランダムシーケンス発生回路50から出力されたランダムシーケンスRSとをXOR演算して、ランダムデータRDをオリジナルデータODに復元、すなわち、デランダマイズすることができる。
しかし、ソフトデシジョンリード動作(例えば、第2リード動作)の間に出力されるソフトデシジョンデータは、ランダムインターフェース36によってデランダマイズされる時、信頼度の情報が変形されうる。したがって、ソフトデシジョンデータが出力される時、コントロールロジック31の制御によって、スイッチ83は、前記ソフトデシジョンデータがXORゲート51’に伝送されないように、前記ソフトデシジョンデータを出力バッファ37−2にバイパスする。
図9は、図7のページバッファの詳細なブロック図である。図7から図9を参照すると、ページバッファ35は、少なくとも1つのラッチ90−1〜90−4を含みうる。図9には、例示的に、4個のラッチ(latches)90−1〜90−4が示されたが、これに限定されるものではない。4個のラッチ90−1〜90−4のそれぞれは、電気的に互いに連結されている。第1ラッチ90−1は、メモリセルのデータを感知する感知ラッチになり、第2ラッチ90−2は、特定1ビットデータを保存することができる第1データラッチになりうる。第3ラッチ90−3は、また他の特定1ビットデータを保存することができる第2データラッチになり、第4ラッチ90−4は、入力データ、または出力されるデータをラッチするラッチになりうる。
ページバッファ35は、コントロールロジック31の制御によって、4個のラッチ90−1、90−2、90−3、及び90−4の組合わせを通じてXNOR演算やXOR演算を行うことができる。
例えば、図2に示したように、第1ソフトデシジョン値(2−2)が、第1データラッチ90−2に保存されていて、第2ソフトデシジョン値(2−3)が、第2データラッチ90−3に保存されているならば、コントロールロジック31の制御によって、第1データラッチ90−2に保存された値と第2データラッチ90−3に保存された値は、XNOR演算を通じてソフトデシジョンデータ(2−4)として出力されうる。
また、第1ラッチ90−1に外部から入力されたデータが保存され、第2ラッチ90−2にランダムデータが保存されていれば、コントロールロジック31の制御によって、第1データラッチ90−1に保存された値と第2データラッチ90−3に保存された値は、XOR演算を通じてランダムデータとして出力されうる。ランダムデータを復元する過程も、これと同一であり得る。
図10は、本発明の他の実施例によるメモリ装置のブロック図である。図4に示された不揮発性メモリ装置30の他の実施例である不揮発性メモリ装置30aは、コントロールロジック31、ランダムシーケンス発生回路50、選択信号に応答して、データDATAINとランダムシーケンスRSとをページバッファ35に選択的に伝達するマルチプレクサ(multiplexer)91、及びデータDATA INとランダムシーケンスRSとに対してXOR演算を行うページバッファ35を含みうる。
ランダムシーケンス発生回路50は、不揮発性メモリ装置30aのコントロールロジック31によって制御される。コントロールロジック31の制御によって、ランダムシーケンス発生回路50は、ランダムシーケンスRSを発生させ、該発生したランダムシーケンスRSをマルチプレクサ91に伝送しうる。前述したように、ランダムシーケンス発生回路50は、バイナリランダムシーケンス(binary random sequence)を形成しうるが、これに限定されるものではない。
マルチプレクサ91は、ランダムシーケンス発生回路50、データ移動経路である入力バッファ37−1、及びページバッファ35に連結されうる。マルチプレクサ91は、コントロールロジック31から出力された選択信号によって動作することができる。マルチプレクサ91は、入力バッファ37−1から出力されたデータDATA INをページバッファ35に伝達(または、ローディング(loading))させることができる。ランダムシーケンス発生回路50から出力されたランダムシーケンスRSは、マルチプレクサ91によってページバッファ35に伝達(または、ローディング)されうる。
すなわち、プログラム動作遂行時に、ページバッファ35は、マルチプレクサ91を通じて入力バッファ37−1から出力されたデータDATA INを受信し、ランダムシーケンスRSを受信することができる。ページバッファ35は、データDATA INを保存する少なくとも1つのラッチとランダムシーケンスRSを保存する少なくとも1つのラッチとを含みうる。
ページバッファ35の構成については、図9で既に説明した通りである。ページバッファ35は、コントロールロジック31の制御によって、データDATA IN及びランダムシーケンスRSに対するXOR演算を行い、データDATA INをランダム化(randomizing)できる。したがって、ページバッファ35は、ランダムデータを保存するラッチをさらに含みうる。
プログラム動作と同様に、データリード動作時に、ページバッファ35のXOR演算は、リード動作時にも行われる。ページバッファ35でランダムデータが感知増幅される間に、マルチプレクサ91は、ページバッファ35にランダムシーケンスRSを伝達することができる。ランダムデータに対する感知動作及び増幅動作が完了すれば、ページバッファ35は、コントロールロジック31の制御によって、感知増幅されたランダムデータDATA OUT及びランダムシーケンスRSに対するXOR演算を行うことができる。
ページバッファ35は、ランダムデータ(random data)をデランダマイズして、オリジナルデータを復元することができる。すなわち、ランダムデータに対する感知が完了すれば、コントロールロジック31は、ページバッファ35に保存された感知されたランダムデータとランダムシーケンスに対してXOR演算を行うようにページバッファ35を制御する。前述したように、メモリセルアレイ34からリードされたランダムデータ、すなわち、ハードデシジョンデータは、リード動作の間に、ランダムシーケンスRSとXOR演算を通じてオリジナルデータに復元、すなわち、デランダマイズされうる。しかし、ランダムデータ、すなわち、ソフトデシジョンデータは、デランダマイズされる時、信頼度を付け加える情報が変形されうる。
図10を参照すると、ソフトデシジョンデータ出力時には、コントロールロジック31の制御によって、マルチプレクサ91は、ランダムシーケンスRSをページバッファ35に伝送しない。したがって、ソフトデシジョンデータは、変形されずに出力されうる。または、ランダムシーケンスRSがページバッファ35にローディングされた場合、ソフトデシジョンデータが出力される間に、コントロールロジック31は、ページバッファ35を制御して、ランダムシーケンスRSとソフトデシジョンデータDATA OUTとがXOR演算されないように、複数のラッチ90−1〜90−4のそれぞれを制御することができる。
図2を参照すると、最初のソフトデシジョンリード値(2−2)と二番目のソフトデシジョン値(2−3)は、XNOR演算を通じてソフトデシジョンデータ(2−4)として形成される。最初のソフトデシジョン値(2−2)と二番目のソフトデシジョン値(2−3)のそれぞれに対してXOR演算が先に行われる。そして、最初のソフトデシジョン値(2−2)と二番目のソフトデシジョン値(2−3)とに対してXNOR演算が行われれば、ソフトデシジョンデータ(2−4)は変形されない。
図11は、本発明の他の実施例によるメモリシステムのブロック図である。図11を参照すると、メモリシステム10aは、コントローラ40と不揮発性メモリ装置30とを含みうる。コントローラ40は、マイクロプロセッサ41、ECCエンコーダ42、ECCデコーダ42’、ランダマイザーユニット43、デランダマイザーユニット43’、及び命令語発生器45を含みうる。マイクロプロセッサ41は、メモリシステム10aの動作を全般的に制御することができる。ランダマイザーユニット43とデランダマイザーユニット43’のそれぞれは、図4に示されたランダマイザー43とデランダマイザー43’のそれぞれと実質的に同一である。
ECCエンコーダ42及びECCデコーダ42’は、図4に示されたECCエンコーダ42及びECCデコーダ42’と同一である。命令語発生器45は、マイクロプロセッサ41から出力された命令語を受信して、これを解析し、該解析結果によって、不揮発性メモリ装置30、例えば、NANDフラッシュメモリ装置30の動作に適した命令語を発生させうる。命令語発生器45は、発生した命令語をNANDフラッシュメモリ装置30に供給することができる。
不揮発性メモリ装置30は、メモリセルアレイ34、コントロールロジック31、ローデコーダ33、入出力バッファ38、ランダムシーケンス発生回路50、ページバッファ35を含みうる。メモリセルアレイ34は、複数のブロックを含み、前記複数のブロックのそれぞれは、複数のページを含む。プログラム動作またはリード動作は、ページ単位で行われ、イレーズ動作は、ブロック単位で行われる。
コントロールロジック31、ローデコーダ33、ページバッファ35、ランダムシーケンス発生回路50、及び入出力回路50の構成と動作は、図8ないし図10を参照して説明した通りである。
図4、図6、及び図11を参照すると、コントローラ40内のランダマイザーユニット43の内部にランダムシーケンス発生回路50が具現可能であり、不揮発性メモリ装置30内にランダムシーケンス発生回路50が具現可能である。
すなわち、実施例によって、ランダマイザーユニット43は、コントローラ40の内部に、または不揮発性メモリ装置30の内部に具現可能である。実施例によって、ランダマイザーユニット43またはデランダマイザーユニット43’は、コントローラ40と不揮発性メモリ装置30とのうち何れか1つに、またはいずれもに具現可能である。コントローラ40内にランダムシーケンス発生回路が具現される時、前記ランダムシーケンス発生回路は、不揮発性メモリ装置30内のランダムシーケンス発生回路50よりさらに多い個数の線形フィードバックシフトレジスタを含みうる。したがって、コントローラ40の内部に具現されたランダマイザーユニット43によって形成されたランダムシーケンスは、不揮発性メモリ装置30に具現されたランダマイザーによって形成されたランダムシーケンスより長い周期(long term)を有しうる。
不揮発性メモリ装置30は、多様な形態のパッケージ(package)を用いて実装されうる。例えば、本発明による不揮発性メモリ装置30、及び/またはコントローラ40は、PoP(Package on Package)、Ball grid arrays(BGAs)、Chip scale packages(CSPs)、PlasticLeaded Chip Carrier(PLCC)、Plastic Dual In−Line Package(PDIP)、Chip On Board(COB)、Ceramic Dual In−Line Package(CERDIP)、Plastic Metric Quad Flat Pack(MQFP)、Thin Quad Flatpack(TQFP)、Small Outline(SOIC)、ShrinkSmall Outline Package(SSOP)、Thin Small Outline(TSOP)、Thin Quad Flatpack(TQFP)、System In Package(SIP)、Multi Chip Package(MCP)、Wafer−level Fabricated Package(WFP)、Wafer−Level Processed Stack Package(WSP)のようなパッケージを用いて実装されうる。
図12は、本発明の一実施例によるデータプログラム動作のフローチャートである。図1ないし図12を参照すると、マイクロプロセッサ41の制御によって、コントローラ40は、不揮発性メモリ装置30にプログラム命令語を供給することができる(ステップS11)。コントローラ40は、例えば、ホストから出力され、メモリセルアレイ34にプログラムされるデータを受信することができる(ステップS12)。ECCエンコーダ42は、プログラムされるデータをECCエンコーディング(encoding)して、該エンコードされたデータをランダマイザー43に送ることができる(ステップS13)。ランダマイザー43は、プログラムされるデータをランダムシーケンスを用いてランダムデータにランダマイズすることができる(ステップS14)。
ランダムデータを作る過程は、図4から図11を参照して説明した通りである。コントローラ40は、ランダムデータを不揮発性メモリ装置30に提供することができる。そして、不揮発性メモリ装置30は、コントロールロジック30の制御によってランダムデータをメモリセルアレイ34にプログラムすることができる(ステップS15)。ランダムデータをメモリ装置30のメモリアレイ34にプログラムした後、プログラム動作は終了しうる(ステップS16)。
図13は、本発明の一実施例によるデータリード動作のフローチャートである。図1から図11、及び図13を参照すると、マイクロプロセッサ41の制御によって、コントローラ40は、不揮発性メモリ装置30にリード命令語を供給することができる(ステップS21)。コントローラ40は、ハードデシジョンリード命令語を不揮発性メモリ装置30に供給することができる。コントローラ40は、前記ハードデシジョンリード命令語によって、メモリセルアレイ34からリードされたランダムデータ、例えば、ハードデシジョンデータを受信することができる。
デランダマイザー43は、ランダムシーケンスを用いてランダムデータ、例えば、ハードデシジョンデータをデランダマイズし、該デランダマイズされたデータをECCデコーダ42’に伝送しうる(ステップS22)。ハードデシジョン命令語が供給された後、コントローラ40は、ソフトデシジョン命令語を不揮発性メモリ装置30に供給することができる(ステップS23)。前記ソフトデシジョン命令語が不揮発性メモリ装置30に供給されない場合、コントローラ40は、S22段階でデランダマイズされたデータをECCデコーダ42’に伝送して、ECCデコーディングを行い、エラービットを訂正することができる(ステップS25)。
マイクロプロセッサ41の制御によって、コントローラ40が不揮発性メモリ装置30にソフトデシジョン命令語を供給する場合、コントローラ40は、ソフトデシジョンデータを不揮発性メモリ装置30から受信することができる。前述したように、ソフトデシジョンデータは、不揮発性メモリ装置30にプログラムされたデータではなく、ハードデシジョンデータに信頼度を付け加えるデータである。したがって、再びソフトデシジョンデータに対しては、デランダマイジングを行わず、ECCデコーダ42’に前記ソフトデシジョンデータをそのまま伝送しなければならない。
したがって、デランダマイズされていないソフトデシジョンデータが、ECCデコーダ42’に伝送することができる(ステップS24)。ECCデコーディング時に、復元されたハードデシジョンデータ(例えば、デランダマイズされたデータ)とデランダマイザーにならないソフトデシジョンデータとを使ってエラー訂正が行われる(ステップS25)。ECCデコーディング(decoding)が完了になれば、リードデータがホストに出力され、リード動作が終了しうる(ステップS26)。ECCエンコーダ42とECCデコーダ42’は、LDPC、BCHコード(code)、ターボコード(turbo code)、リードソロモンコード(Reed Solomon code)、コンボリューションコード(convolution code)、RSC(recursive systematic code)、TCM(trellis−coded modulation)、BCM(Block coded modulation)などのコーデッドモジュレーション(coded modulation)を使ってエラー訂正ができ、これに限定されるものではない。
図14は、本発明の実施例による不揮発性メモリ装置を含む電子装置のブロック図である。図14を参照すると、携帯電話(cellular phone)、スマートフォン(smart phone)、またはタブレット(tablet)PCのような電子装置100は、フラッシュメモリ装置として具現可能な不揮発性メモリ装置30と、不揮発性メモリ装置30の動作を制御することができるメモリコントローラ40とを含みうる。
不揮発性メモリ装置30は、プログラム動作またはリード動作時に、データをランダマイジング(randomizing)またはデランダマイジング(derandomizing)ができる。メモリコントローラ40は、電子装置100の全般的な動作を制御するプロセッサ110によって制御される。
不揮発性メモリ装置30に保存されたデータは、プロセッサ110の制御によって動作するメモリコントローラ40の制御によって、ディスプレイ(display)130を通じてディスプレイされる。
無線送受信器120は、アンテナ(antenna)を通じて無線信号を送受信することができる。例えば、無線送受信器120は、アンテナを通じて受信された無線信号をプロセッサ110が処理することができる信号に変換することができる。したがって、プロセッサ110は、無線送受信器120から出力された信号を処理し、該処理された信号をメモリコントローラ40を通じて不揮発性メモリ装置30に保存するか、またはディスプレイ130を通じてディスプレイすることができる。無線送受信器120は、プロセッサ110から出力された信号を無線信号に変換し、該変換された無線信号をアンテナを通じて外部に出力することができる。
入力装置140は、プロセッサ110の動作を制御するための制御信号またはプロセッサ110によって処理されるデータを入力することができる装置であって、タッチパッド(touch pad)とコンピュータマウス(computer mouse)のようなポインティング装置(pointing device)、キーパッド(keypad)、またはキーボード(keyboard)として具現可能である。プロセッサ110は、不揮発性メモリ装置30から出力されたデータ、無線送受信器120から出力された無線信号、または入力装置140から出力されたデータが、ディスプレイ130を通じてディスプレイされるように、ディスプレイ130を制御することができる。
図14には、プロセッサ110とメモリコントローラ40とが互いに独立したチップ(chip)として具現された例を示したが、メモリコントローラ40は、プロセッサ110の一部として具現可能である。
図15は、本発明の他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図15を参照すると、PC(personal computer)、タブレット(tablet)PC、ラップトップコンピュータ(laptop computer)、eリーダー(e−reader)、PDA(personal digital assistant)、PMP(portable multimedia player)、MP3プレーヤー(player)、またはMP4プレーヤーのようなデータ処理装置として具現可能な電子装置200は、フラッシュメモリ装置のような不揮発性メモリ装置30と、不揮発性メモリ装置30の動作を制御することができるメモリコントローラ40とを含む。
電子装置200は、電子装置200の全般的な動作を制御するためのプロセッサ210を含みうる。メモリコントローラ40は、プロセッサ210によって制御される。プロセッサ210は、入力装置220によって発生した入力信号によって、不揮発性メモリ装置30に保存されたデータをディスプレイ230を通じてディスプレイすることができる。例えば、入力装置220は、タッチパッドまたはコンピュータマウスのようなポインティング装置、キーパッド、またはキーボードとして具現可能である。図15には、プロセッサ210とメモリコントローラ40とが互いに独立したチップとして具現された例を示したが、メモリコントローラ40は、プロセッサ210の一部として具現可能である。
図16は、本発明のまた他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図16を参照すると、電子装置300は、カードインターフェース(card interface)310、メモリコントローラ320、及び不揮発性メモリ装置30、例えば、フラッシュメモリ装置を含む。
電子装置300は、カードインターフェース310を通じてホストHOSTとデータを送受信することができる。実施例によって、カードインターフェース310は、SD(secure digital)カードインターフェースまたはMMC(multi−media card)インターフェースであり得るが、これに限定されるものではない。カードインターフェース310は、電子装置300と通信することができるホストHOSTの通信プロトコル(protocol)によって、ホストHOSTとメモリコントローラ320との間でデータ交換をインターフェース(interface)できる。
メモリコントローラ320は、電子装置300の全般的な動作を制御し、カードインターフェース310と不揮発性メモリ装置30との間でデータの交換を制御することができる。また、メモリコントローラ320のバッファメモリ325は、カードインターフェース310と不揮発性メモリ装置30との間で送受信するデータをバッファリング(buffering)できる。メモリコントローラ320は、データバス(data bus)DATA及びアドレスバス(address bus)ADDRESSを通じてカードインターフェース310と不揮発性メモリ30と接続される。実施例によって、メモリコントローラ320は、カードインターフェース310からリードまたはライトしようとするデータのアドレスをアドレスバスADDRESSを通じて受信し、これを不揮発性メモリ装置30に伝送する。
また、メモリコントローラ320は、カードインターフェース310または不揮発性メモリ装置30のそれぞれに接続されたデータバスDATAを通じてリードまたはライトしようとするデータを受信するか、伝送する。実施例によって、図16に示されたメモリコントローラ320は、図4に示されたメモリコントローラ40と同一または類似した機能を行うことができる。
したがって、メモリコントローラ320は、リード動作の間に、ハードデシジョンデータをランダム化以前のデータに復元させることができる。そして、ソフトデシジョンデータは、デランダマイザーを迂回してバイパスさせ、データが変形にならないようにできる。不揮発性メモリ装置30には、各種のデータが保存される。実施例によって、不揮発性メモリ装置30でリード動作とライト動作とが同時に行われる。この際、リード動作が行われる不揮発性メモリ装置30のメモリセルアレイとライト動作が行われる不揮発性メモリ30のメモリセルアレイのそれぞれは、互いに異なりうる。
図16の電子装置300が、PC、タブレットPC、デジタルカメラ、デジタルオーディオプレーヤー、携帯電話、コンソールビデオゲームハードウェア(console video game hardware)、またはデジタルセットトップボックス(digital set−top box)のようなホストHOSTに接続される時、ホストHOSTは、カードインターフェース310とメモリコントローラ320とを通じて不揮発性メモリ装置30に保存されたデータを送受信することができる。
図17は、本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図17を参照すると、電子装置400は、カードインターフェース410、メモリコントローラ420、及び不揮発性メモリ装置30、例えば、フラッシュメモリを含む。
電子装置400は、カードインターフェース410を通じてホストHOSTとデータ通信を行うことができる。実施例によって、カードインターフェース410は、SD(secure digital)カードインターフェース(card interface)またはMMC(multimedia card)インターフェースであり得るが、これに限定されるものではない。カードインターフェース410は、電子装置400と通信することができるホストHOSTの通信プロトコルによって、ホストHOSTとメモリコントローラ420との間でデータ通信を行うことができる。
メモリコントローラ420は、電子装置400の全般的な動作を制御し、カードインターフェース410と不揮発性メモリ装置30との間でデータの交換を制御することができる。また、メモリコントローラ420に含まれたバッファメモリ425は、電子装置400の全般的な動作を制御するために、各種のデータを保存することができる。メモリコントローラ420は、データバスDATA及びロジカルアドレスバス(logical address bus)LOGICAL ADDRESSを通じてカードインターフェース410と不揮発性メモリ30と接続されうる。
実施例によって、メモリコントローラ420は、カードインターフェース410からリードデータまたはライトデータのアドレスをロジカルアドレスバスLOGICAL ADDRESSを通じて受信し、フィジカルアドレスバス(physical address bus)PHYSICAL ADDRESSを通じて不揮発性メモリ30に伝達することができる。
また、メモリコントローラ420は、カードインターフェース410または不揮発性メモリ30のそれぞれに接続されたデータバスDATAを通じてリードデータまたはライトデータを受信するか、伝送しうる。メモリコントローラ420は、図4に示されたメモリコントローラ40と同一または類似した機能を行うことができる。したがって、メモリコントローラ420は、リード動作の間に、ハードデシジョンデータをランダム化以前のデータに復元させることができる。そして、ソフトデシジョンデータは、デランダマイザーを迂回してバイパスさせ、データが変形にならないようにできる。
そして、電子装置400のメモリコントローラ420は、バッファメモリ425内にアドレス変換テーブル(Address Translation Table)426を含みうる。前記アドレス変換テーブル426には、外部から入力されたロジカルアドレスと不揮発性メモリ30にアクセス(access)するためのロジカルアドレスとが含まれうる。ライト動作時に、メモリコントローラ420は、任意のフィジカルアドレスに新たなデータをライトし、前記アドレス変換テーブルをアップデート(up−date)することができる。
メモリコントローラ420は、アドレス変換テーブル426からライト動作が行われるデータのフィジカルアドレスを参照することによって、ライト動作と並行してリード動作を行うフィジカルアドレスを選択することができる。
メモリコントローラ420は、前記ライト動作と前記リード動作とを並行し、前記ライト動作と前記リード動作とによって、アドレス変換テーブル426をアップデートすることができる。したがって、電子装置400の動作時間は短縮されうる。
図17の電子装置400が、PC、タブレットPC、デジタルカメラ、デジタルオーディオプレーヤー、携帯電話、コンソールビデオゲームハードウェア、またはデジタルセットトップボックスのようなホストHOSTに接続される時、ホストHOSTは、カードインターフェース410とメモリコントローラ420とを通じて不揮発性メモリ30に保存されたデータを送受信することができる。
図18は、本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図18を参照すると、電子装置500は、フラッシュメモリ装置のような不揮発性メモリ装置30、不揮発性メモリ装置30のデータ処理動作を制御するためのメモリコントローラ40、及び電子装置500の全般的な動作を制御することができるプロセッサ510を含む。電子装置500のイメージセンサー520は、光学信号をデジタル(digital)信号に変換し、該変換されたデジタル信号は、プロセッサ510の制御下で不揮発性メモリ装置30に保存されるか、またはディスプレイ(display)530を通じてディスプレイされる。また、不揮発性メモリ装置30に保存されたデジタル信号は、プロセッサ510の制御下でディスプレイ530を通じてディスプレイされる。
図19は、本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図19を参照すると、電子装置600は、フラッシュメモリ装置のような不揮発性メモリ装置30、不揮発性メモリ装置30の動作を制御するためのメモリコントローラ40、及び電子装置600の全般的な動作を制御することができるCPU610を含む。
電子装置600は、CPU610の動作メモリ(operation memory)として使われるメモリ650を含む。メモリ650は、ROM(read only memory)のような不揮発性メモリ、またはDRAM(dynamic randomaccess memory)のような揮発性メモリとして具現可能である。
電子装置600に接続されたホストHOSTは、メモリコントローラ40とホストインターフェース640とを通じて不揮発性メモリ装置30とデータを送受信することができる。この際、メモリコントローラ40は、メモリインターフェース、例えば、フラッシュメモリインターフェースの機能を行うことができる。メモリコントローラ40は、図4に示されたメモリコントローラ40と同一または類似した機能を行うことができる。したがって、メモリコントローラ40は、リード動作の間に、ハードデシジョンデータをランダム化以前のデータに復元させることができる。そして、ソフトデシジョンデータは、デランダマイザーを迂回してバイパスさせ、データが変形にならないようにできる。実施例によって、電子装置600は、ECC(error correction code)ユニット630をさらに含みうる。
ECCユニット630は、図4のECCエンコーダ42とECCデコーダ42’とを含みうる。CPU610の制御によって動作するECCブロック630は、メモリコントローラ40を通じて不揮発性メモリ装置30からリードされたデータに含まれたエラーを検出して訂正することができる。
CPU610は、バス601を通じてメモリコントローラ40、ECCブロック630、ホストインターフェース640、及びメモリ650の間でデータの交換を制御することができる。電子装置600は、USB(Universal Serial Bus)メモリドライブまたはメモリスティック(memory stick)などとして具現可能である。
図20は、本発明のさらに他の実施例による不揮発性メモリ装置を含む電子装置のブロック図を示す。図20を参照すると、電子装置700は、SSD(solid state drive)のようなデータ保存装置として具現可能である。
電子装置700は、複数個の不揮発性メモリ装置30−1〜30−jと、複数個の不揮発性メモリ装置30−1〜30−jのそれぞれのデータ処理動作を制御することができるメモリコントローラ40とを含みうる。電子装置700は、メモリシステムまたはメモリモジュールとして具現可能である。実施例によって、メモリコントローラ710は、電子装置700の内部または外部に具現可能である。
図21は、図20に示された電子装置を含むデータ処理システムのブロック図を示す。図20と図21とを参照すると、RAID(redundant array of independent disks)システムとして具現可能なデータ保存装置800は、RAIDコントローラ810と、複数個のメモリシステム700−1〜700−n(nは、自然数)とを含みうる。
複数個のメモリシステム700−1〜700−nのそれぞれは、図20に示された電子装置700であり得る。複数個のメモリシステム700−1〜700−nは、RAIDアレイを構成することができる。データ保存装置800は、PC(personal computer)またはSSD(solid state drive)として具現可能である。
プログラム動作の間に、RAIDコントローラ810は、ホストから出力されたプログラムデータを、複数個のRAIDレベルのうちから前記ホストから出力されたRAIDレベル情報に基づいて選択された何れか1つのRAIDレベルによって、複数個のメモリシステム700−1〜700−nのうちの何れか1つのメモリシステムに出力することができる。
また、リード動作の間に、RAIDコントローラ810は、複数個のRAIDレベルのうちから前記ホストから出力されたRAIDレベル情報に基づいて選択された何れか1つのRAIDレベルによって、複数個のメモリシステム700−1〜700−nのうちの何れか1つのメモリシステムからリードされたデータを前記ホストに伝送しうる。
本発明は、不揮発性メモリ装置とコントローラとに利用されうる。
10:メモリシステム
30:不揮発性メモリ装置
31:コントロールロジック
32:電圧発生器
33:ローデコーダ
34:メモリセルアレイ
40:コントローラ
43:ランダマイザー
43’:デランダマイザー
50:ランダムシーケンス発生回路

Claims (12)

  1. プログラムデータ(program data)を保存するメモリセルアレイ(memory cell array)と、
    ハードデシジョンリード(hard decision read)電圧及び少なくとも1つ以上のソフトデシジョンリード(soft decision read)電圧を発生させる電圧発生回路と、
    ランダムシーケンス(random sequence)を発生させるランダムシーケンス発生回路と、
    ビットライン(bit line)を通じて前記メモリセルアレイと連結され、前記ランダムシーケンスと前記ハードデシジョンリード電圧供給によってリード(read)されたハードデシジョンデータと、前記ソフトデシジョンリード電圧供給によってリードされたソフトデシジョンデータを保存する少なくとも1つのラッチ(latch)とを含むページバッファ(page buffer)と、
    前記プログラムデータ及び前記ランダムシーケンスを前記ページバッファに選択的に伝達するマルチプレクサ(multiplexer)回路と、
    前記ランダムシーケンス発生回路、前記ページバッファ、及び前記マルチプレクサ回路を制御するコントロールロジック(control logic)と、を含み、
    前記コントロールロジックの制御によって、前記ページバッファは、前記ランダムシーケンスを使って、前記ハードデシジョンデータをデランダマイジング(de−randomizing)し、前記ソフトデシジョンデータは、デランダマイジングしない不揮発性メモリ装置。
  2. リードされたデータが、前記ソフトデシジョンデータである場合、前記コントロールロジックの制御によって、前記マルチプレクサ回路は、前記ランダムシーケンスを前記ページバッファに伝送しない請求項1に記載の不揮発性メモリ装置。
  3. 前記ランダムシーケンス発生回路は、初期値を保存するLFSR(linear feedback shift register)を含む請求項1に記載の不揮発性メモリ装置。
  4. リードされたデータが、前記ソフトデシジョンデータである場合、前記コントロールロジックの制御によって、前記ランダムシーケンス発生回路の初期値を0に初期化して、前記ランダムシーケンスを0に形成する請求項1に記載の不揮発性メモリ装置。
  5. 前記ハードデシジョンデータは、前記メモリセルアレイに保存されたデータとしてランダムデータである請求項1に記載の不揮発性メモリ装置。
  6. 前記ソフトデシジョンデータは、前記ハードデシジョンデータの信頼度を表わす請求項1に記載の不揮発性メモリ装置。
  7. 中央処理装置(CPU)から出力された第1リード命令語を不揮発性メモリ装置に供給する段階と、
    前記第1リード命令語に応答して、前記不揮発性メモリ装置から出力された第1データを受信し、該受信された第1データをデランダマイジングする段階と、
    前記中央処理装置から出力された第2リード命令語を前記不揮発性メモリ装置に供給する段階と、
    前記第2リード命令語に応答して、前記不揮発性メモリ装置から出力された第2データを受信し、該受信された第2データを使って、前記デランダマイズされた第1データをECCデコーディング(error correction code decoding)する段階と、
    を含むメモリコントローラ(memory controller)の動作方法。
  8. 前記第1リード命令語は、前記不揮発性メモリ装置に保存された前記第1データをリードするハードデシジョンリード命令語(hard decision read command)である請求項7に記載のメモリコントローラの動作方法。
  9. 前記第2リード命令語は、前記第1データに信頼度を付け加える情報である前記第2データをリードするためのソフトデシジョン(soft decision)リード命令語である請求項7に記載のメモリコントローラの動作方法。
  10. 前記ソフトデシジョンリード命令語供給時に、前記メモリコントローラは、前記第2データをデランダマイジングしない請求項9に記載のメモリコントローラの動作方法。
  11. 前記デコーディングする段階は、LDPCコード(low density parity check code)を使う請求項7に記載のメモリコントローラの動作方法。
  12. 中央処理装置(CPU)と、
    前記中央処理装置の制御によって供給されたハードデシジョン命令語(hard decision command)に応答して、不揮発性メモリ装置からリードされたハードデシジョンデータをランダムシーケンスを用いてデランダマイズ(de−randomize)し、該デランダマイズされたデータを出力するデランダマイザー(de−randomizer)と、を含み、
    前記デランダマイズは、前記ランダムシーケンスを発生させるランダムシーケンス発生回路と、前記ランダムシーケンスと前記ハードデシジョンデータとをXOR演算して、前記デランダマイズされたデータを出力するXORゲートとを含み、
    前記ランダムシーケンス発生回路は、初期値を有する複数の線形フィードバックシフトレジスタ(Linear feedback shift registers)を含み、前記中央処理装置の制御によって供給されたソフトデシジョン命令語に応答して、前記不揮発性メモリ装置から出力されたソフトデシジョンデータを処理する時、前記複数の線形フィードバックシフトレジスタのそれぞれの初期値が0に初期化されることによって、前記ランダムシーケンス発生回路は、0である前記ランダムシーケンスを発生させるコントローラ。
JP2012041220A 2011-02-28 2012-02-28 不揮発性メモリ装置、該メモリ装置を制御するコントローラ、及び該コントローラの動作方法 Active JP5999926B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2011-0017565 2011-02-28
KR1020110017565A KR101736337B1 (ko) 2011-02-28 2011-02-28 비휘발성 메모리 장치, 상기 메모리 장치를 제어하는 컨트롤러, 및 상기 컨트롤러 동작 방법

Publications (2)

Publication Number Publication Date
JP2012181909A true JP2012181909A (ja) 2012-09-20
JP5999926B2 JP5999926B2 (ja) 2016-09-28

Family

ID=46719801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012041220A Active JP5999926B2 (ja) 2011-02-28 2012-02-28 不揮発性メモリ装置、該メモリ装置を制御するコントローラ、及び該コントローラの動作方法

Country Status (3)

Country Link
US (1) US9495518B2 (ja)
JP (1) JP5999926B2 (ja)
KR (1) KR101736337B1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798470B2 (en) 2015-01-23 2017-10-24 Toshiba Memory Corporation Memory system for storing and processing translation information
JP2020064332A (ja) * 2018-10-15 2020-04-23 ルネサスエレクトロニクス株式会社 半導体装置及びその制御方法

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102123946B1 (ko) * 2012-12-28 2020-06-17 삼성전자주식회사 멀티 레벨 셀 메모리 장치 및 그것의 동작방법
US9058880B2 (en) * 2013-02-04 2015-06-16 National Tsing Hua University Unequal bit reliability information storage method for communication and storage systems
CN103218177A (zh) * 2013-04-19 2013-07-24 杭州电子科技大学 具有数据均衡处理功能的NAND Flash存储系统
KR102252379B1 (ko) 2013-06-24 2021-05-14 삼성전자주식회사 메모리 시스템 및 이의 독출 방법
KR20150009105A (ko) * 2013-07-15 2015-01-26 에스케이하이닉스 주식회사 반도체 장치, 반도체 메모리 장치 및 그것의 동작 방법
KR102085127B1 (ko) * 2013-11-13 2020-04-14 삼성전자주식회사 메모리 컨트롤러의 구동 방법 및 메모리 컨트롤러에 의해서 제어되는 비휘발성 메모리 장치
KR102133542B1 (ko) 2013-12-03 2020-07-14 에스케이하이닉스 주식회사 랜더마이저 및 디랜더마이저를 포함하는 메모리 시스템
KR102110767B1 (ko) * 2013-12-24 2020-06-09 삼성전자 주식회사 메모리 컨트롤러 구동방법 및 메모리 컨트롤러
US10320420B2 (en) 2014-01-24 2019-06-11 Hewlett-Packard Enterprise Development LP Bit-flip coding
KR102244617B1 (ko) 2014-03-13 2021-04-26 삼성전자 주식회사 논리 정보와 물리 정보를 이용하여 데이터를 처리할 수 있는 장치와 방법
US9621188B2 (en) 2014-03-17 2017-04-11 Samsung Electronics Co., Ltd. Soft and hard decision message-passing decoding
KR20150122825A (ko) * 2014-04-23 2015-11-03 에스케이하이닉스 주식회사 메모리 컨트롤 유닛 및 그것을 포함하는 데이터 저장 장치
KR102171025B1 (ko) * 2014-04-30 2020-10-29 삼성전자주식회사 비휘발성 메모리 장치
KR20150143150A (ko) * 2014-06-13 2015-12-23 삼성전자주식회사 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법
KR102248207B1 (ko) 2014-10-30 2021-05-06 삼성전자주식회사 저장 장치 및 그것의 동작 방법
KR102370292B1 (ko) 2015-05-07 2022-03-07 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
TWI562152B (en) * 2015-05-29 2016-12-11 Phison Electronics Corp Decoding method, memory storage device and memory control circuit unit
KR102438988B1 (ko) * 2016-04-07 2022-09-02 삼성전자주식회사 랜덤화 연산을 수행하는 불휘발성 메모리 장치
KR102636039B1 (ko) 2016-05-12 2024-02-14 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 읽기 방법 및 카피백 방법
KR102648774B1 (ko) * 2016-11-10 2024-03-19 에스케이하이닉스 주식회사 랜더마이즈 동작을 수행하는 반도체 메모리 장치
KR20190033791A (ko) * 2017-09-22 2019-04-01 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 장치 및 이들을 포함하는 메모리 시스템
KR102496272B1 (ko) * 2017-09-27 2023-02-03 삼성전자주식회사 비휘발성 메모리 장치, 및 이의 동작 방법
US10163500B1 (en) * 2017-09-30 2018-12-25 Intel Corporation Sense matching for hard and soft memory reads
US10621035B2 (en) 2017-10-18 2020-04-14 Intel Corporation Techniques for correcting data errors in memory devices
US10636504B2 (en) * 2017-10-31 2020-04-28 Sandisk Technologies Llc Read verify for improved soft bit information for non-volatile memories with residual resistance
KR20190074890A (ko) 2017-12-20 2019-06-28 에스케이하이닉스 주식회사 메모리 컨트롤러 및 그 동작 방법
TWI722867B (zh) * 2020-04-14 2021-03-21 群聯電子股份有限公司 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元
US11544185B2 (en) 2020-07-16 2023-01-03 Silicon Motion, Inc. Method and apparatus for data reads in host performance acceleration mode
US11429545B2 (en) 2020-07-16 2022-08-30 Silicon Motion, Inc. Method and apparatus for data reads in host performance acceleration mode
US11544186B2 (en) 2020-07-16 2023-01-03 Silicon Motion, Inc. Method and apparatus for data reads in host performance acceleration mode
CN113946278A (zh) * 2020-07-16 2022-01-18 慧荣科技股份有限公司 主机效能加速模式的数据读取方法及装置
US11954360B2 (en) 2020-09-01 2024-04-09 Intel Corporation Technology to provide accurate training and per-bit deskew capability for high bandwidth memory input/output links

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059679A (ja) * 2006-08-31 2008-03-13 Toshiba Corp 不揮発性半導体記憶装置及び不揮発性記憶システム
WO2010019373A2 (en) * 2008-08-12 2010-02-18 Micron Technology, Inc. Memory devices and methods of storing data on a memory device
WO2010147246A1 (en) * 2008-01-03 2010-12-23 Samsung Electronics Co., Ltd. Memory device and error control codes decoding method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6792039B1 (en) * 1997-11-13 2004-09-14 Surf Communication Solutions Ltd. Method for controlled reducing of processor utilization by a soft modem and a soft modem with controlled different processor utilization modes
JP4099844B2 (ja) 1998-01-21 2008-06-11 ソニー株式会社 メモリ装置
CN1256005A (zh) 1998-01-21 2000-06-07 索尼株式会社 编码方法和存储装置
US7526707B2 (en) * 2005-02-01 2009-04-28 Agere Systems Inc. Method and apparatus for encoding and decoding data using a pseudo-random interleaver
KR101147767B1 (ko) * 2005-12-23 2012-05-25 엘지전자 주식회사 디지털 방송 시스템 및 처리 방법
US8370561B2 (en) * 2006-12-24 2013-02-05 Sandisk Il Ltd. Randomizing for suppressing errors in a flash memory
JP5028577B2 (ja) 2007-02-19 2012-09-19 株式会社メガチップス メモリ制御方法およびメモリシステム
JP2008217857A (ja) * 2007-02-28 2008-09-18 Toshiba Corp メモリコントローラ及び半導体装置
US8290035B2 (en) 2007-07-11 2012-10-16 Limberg Allen Leroy Systems for reducing adverse effects of deep fades in DTV signals designed for mobile reception
US8169825B1 (en) * 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
CN102203877B (zh) 2008-09-30 2016-07-06 Lsi公司 使用解码器性能反馈的用于存储器器件的软数据生成的方法和装置
KR101554159B1 (ko) 2008-10-08 2015-09-21 삼성전자주식회사 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템
US8327240B2 (en) * 2008-11-26 2012-12-04 Broadcom Corporation Handling burst error events with interleaved Reed-Solomon (RS) codes
KR20100099961A (ko) * 2009-03-04 2010-09-15 삼성전자주식회사 불휘발성 메모리 장치 및 그 동작 방법
US8578253B2 (en) 2010-01-04 2013-11-05 Lsi Corporation Systems and methods for updating detector parameters in a data processing circuit
TWI455132B (zh) * 2010-06-23 2014-10-01 Phison Electronics Corp 資料讀取方法、控制電路與記憶體控制器

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059679A (ja) * 2006-08-31 2008-03-13 Toshiba Corp 不揮発性半導体記憶装置及び不揮発性記憶システム
WO2010147246A1 (en) * 2008-01-03 2010-12-23 Samsung Electronics Co., Ltd. Memory device and error control codes decoding method
WO2010019373A2 (en) * 2008-08-12 2010-02-18 Micron Technology, Inc. Memory devices and methods of storing data on a memory device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798470B2 (en) 2015-01-23 2017-10-24 Toshiba Memory Corporation Memory system for storing and processing translation information
JP2020064332A (ja) * 2018-10-15 2020-04-23 ルネサスエレクトロニクス株式会社 半導体装置及びその制御方法
JP7018864B2 (ja) 2018-10-15 2022-02-14 ルネサスエレクトロニクス株式会社 半導体装置及びその制御方法

Also Published As

Publication number Publication date
KR20120097963A (ko) 2012-09-05
KR101736337B1 (ko) 2017-05-30
US9495518B2 (en) 2016-11-15
US20120221775A1 (en) 2012-08-30
JP5999926B2 (ja) 2016-09-28

Similar Documents

Publication Publication Date Title
JP5999926B2 (ja) 不揮発性メモリ装置、該メモリ装置を制御するコントローラ、及び該コントローラの動作方法
KR102511459B1 (ko) 비휘발성 메모리 장치 및 그 동작 방법
US9197247B2 (en) Memory system and error correction method
TWI734882B (zh) 儲存裝置及其操作方法
KR101811298B1 (ko) 랜덤마이져로 씨드를 제공하는 씨드 컨트롤러 및 그것을 포함한 메모리 컨트롤러
US10013349B2 (en) Memory controller, method thereof, and electronic devices having the memory controller
CN107133122B (zh) 存储器控制方法
US8788905B2 (en) Flash memory device error correction code controllers and related methods and memory systems
US8140935B2 (en) ECC controller for use in flash memory device and memory system including the same
US8644066B2 (en) Multi-level non-volatile memory device, system and method with state-converted data
US8830743B2 (en) Method of operating memory controller, memory controller, memory device and memory system
US20160070507A1 (en) Memory system and method of controlling memory device
KR20130049332A (ko) 메모리 시스템 및 그것의 동작 방법
US10445002B2 (en) Data accessing method, memory controlling circuit unit and memory storage device
US11003529B2 (en) Encoding method and memory storage apparatus using the same
US10133645B2 (en) Data recovery in three dimensional non-volatile memory array after word line short
US8984036B2 (en) Methods for operating controllers using seed tables
CN111367709A (zh) 错误校正设备及其操作方法和使用该设备的存储器系统
US11082068B2 (en) Error correction circuit, memory controller having error correction circuit, and memory system having memory controller
CN106708649B (zh) 解码方法、存储器储存装置及存储器控制电路单元
US10074433B1 (en) Data encoding method, memory control circuit unit and memory storage device
TW202328927A (zh) 借助侵害位元資訊來進行記憶體裝置的存取控制的方法、記憶體裝置以及記憶體裝置的控制器

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20141226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160708

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160830

R150 Certificate of patent or registration of utility model

Ref document number: 5999926

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250