JP5559778B2 - フラッシュメモリにおける高速低電力のデータ読み出し - Google Patents

フラッシュメモリにおける高速低電力のデータ読み出し Download PDF

Info

Publication number
JP5559778B2
JP5559778B2 JP2011514151A JP2011514151A JP5559778B2 JP 5559778 B2 JP5559778 B2 JP 5559778B2 JP 2011514151 A JP2011514151 A JP 2011514151A JP 2011514151 A JP2011514151 A JP 2011514151A JP 5559778 B2 JP5559778 B2 JP 5559778B2
Authority
JP
Japan
Prior art keywords
bit line
memory
cells
bit
command
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.)
Expired - Fee Related
Application number
JP2011514151A
Other languages
English (en)
Other versions
JP2011525681A (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.)
Western Digital Israel Ltd
Original Assignee
SanDisk IL 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 SanDisk IL Ltd filed Critical SanDisk IL Ltd
Publication of JP2011525681A publication Critical patent/JP2011525681A/ja
Application granted granted Critical
Publication of JP5559778B2 publication Critical patent/JP5559778B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/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
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory

Landscapes

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

Description

本発明は、フラッシュメモリに関し、特に、エラー訂正で使用するソフトビットの特定の応用において、フラッシュメモリに格納されたデータを高速かつ低電力で読み出すことに関する。
本願は、2008年6月23日に出願された米国仮特許出願第61/074,684号(特許文献1)の利益を主張する。
フラッシュメモリストレージシステムには、メモリから読み出したデータのエラーを訂正しようとする際に、「ソフトビット」を使用するものがある。「ソフトビット」という用語は、メモリセルからの高分解能読み出しについて言及したものであり、この読み出しは、メモリセルに格納されたデータの実際の分解能を超えるものである。例えば、2ビット/セルメモリの場合、セルのしきい値電圧ウィンドウは、4つの非重複領域に分割され、各領域は、セルに格納された4つの可能なデータ値{「00」、「01」、「10」、「11」}の1つに対応する。各領域は、セルの1つの状態に対応する。
(ソフトビットを用いない)通常の読み出しは、各読み出しセルを4つの状態の1つにあるものとして特定し、4つのデータ値の1つをセルに関連付ける。(この例において)メモリからソフトビットを読み出すということは、言い換えれば、4つの状態より多い状態のうちの1つにあるものとして、例えば、8つの状態の1つにあるものとして各セルを特定するということであり、この場合、4つの元の状態の各々は、2つの高分解能状態に分解されるということである。
読み出しセルの状態を特定する最も単純で一般的な方法として(唯一の方法ではない)、4つの非重複しきい値電圧領域の各々の中間に基準読み出し電圧をかけて、セルが領域の上半分にあるか、または下半分にあるかを特定する方法がある。
ストレージシステムの中には、1つより多いソフトビット、例えば、元の状態の各々を4つの新しい状態に分割する2つのソフトビットを使用するものもある。また、ソフトビットの使用は、2ビット/セルフラッシュメモリに限定されるものではなく、4ビット/セルメモリ(最初は16個の状態を有する)を使用することもでき、16個の状態のトップに1つ以上のソフトビットを適用して、32個以上の新しい状態を生成することもできる。
フラッシュメモリからのデータの読み出し時にソフトビットを使用する利点は、データのエラー訂正が必要な場合、特に、エラー数が比較的多い場合に有効なことである。
ソフトビットは、異なるエラーがデータに出現する確率に基づいて、フラッシュデバイスに格納された各ビットの信頼性を良好に評価できるため、元の書き込みデータを再構築しようとするデコーダに有用な情報を与える。
このようなソフトビットの使用は、ソフトデコーダ(ソフトビットと混同しないこと)との使用に特に有用であり、利便性が高い。ソフトデコーダは、各データビットに信頼性の程度を付与することによって、データのエラーを訂正するデコーダである。各データビットに信頼性の程度を付与したが、ソフトデコーダを動作させるためのいくつかのオプションがある。一般的な方法の中には、以下のものがある。
・成功テスト(または失敗テスト)が復号プロセスを終了するまで、通常、反復的に、信頼性値の演算を行い、信頼性値の精度向上および改善を行う方法。
・読み出しデータに適合する最も確率の高いプログラムされたコードワードを判定するメトリックを計算する方法。
・全読み出しデータに従って、読み出しワードの各ビットに対してメトリックを別々に計算し、このメトリックを使用して各ビットの値に対して別個に判定を行う方法。
ソフトビットは、ソフトデコーダが最初の信頼性の程度を利用でき、場合によっては、復号化プロセス全体の成功と失敗との差を与えるため、必然的にソフトデコーダと一致するものである。また、ソフトビットを使用することで、復号化計算の収束が高速化する場合もある。
しかし、ソフトビットは、ハードデコーダ(ソフトデコーダではないデコーダ)とともに使用されてもよく、本願明細書に記載する技術は、両方のタイプのエラー訂正デコーダに等しく適用される。
ソフトビットは、格納データのエラー訂正に非常に有用であるが、費用がかる。ソフトビットを読み出すには、メモリセルからのさらなる読み出し演算が必要であり、読み出し演算の速度が遅くなる。低速化の理由として、メモリセルにおいて、基準電圧を読み出すための追加の比較を行った後、検出した値を、メモリダイからECCデコーダを含むフラッシュコントローラへ転送しなければならないためであることは容易に理解できる。ソフトビットを読み出す演算は、「ハードビット」しか読み出さない場合よりさらに時間がかかり、電力コストが高くなることもあるが、これは、読み出すソフトビットの数に依存する。
これらのソフトビット(高分解能ビット)は、復号化以外でも使用される。例えば、採用された読み出ししきい値パラメータを改善するために、データに対する統計パラメータが採用されうる。
他のケース(例えば、通信チャネルのECC)では、通例、まずすべてのソフトビットが読み出されるが、最初に「ハード」ビットしか読み出さない場合、典型的には、メモリからデータを読み出すためにソフトビットを使用するデコーダの場合である。次に、生データの雑音が多すぎて、復号化がうまくいかないことが判明すれば、ソフトビットが読み出され、復号化の計算に付加される。また、複数の段階を踏む「試行錯誤」方法、すなわち、最初に、第1のソフトビットを読み出し、復号化がうまくいかなければ、第2のソフトビットを読み出し、以降も同じように続ける方法を用いることも可能である。この方法の場合、ソフトビットなしでも復号化がうまくいけば、ソフトビットを読み出す時間がかからない。しかし、ソフトビットを読み出す必要があると分かれば、時間コストが高くつくという基本的な問題は依然として残る。
加えて、実際には必要ではないソフトビットを検知し、セルのアレイからフラッシュデータレジスタへソフトビット値を読み出すことに、不要な電力が費やされる。また、実際には不要なソフトビットをデータレジスタからフラッシュコントローラへ転送する場合、さらなる不要な電力が費やされる。
米国仮特許出願第61/074,684号
本願明細書において提供される一実施形態は、複数のワード線および複数の配列されたビット線の交点にあり、直列に接続された共通のビット線を共有するセルのアレイを含むメモリにおいて、ワード線を共有するセルを読み出す方法であって、(a)ワード線のセルの少なくとも一部分を実質的に同時にプログラムするステップと、(b)実質的に同時にプログラムされたセルの少なくとも一部分でワード線と交差するビット線の一部分のみを選択するステップと、(c)ワード線とビット線の一部分との交点にあるワード線のセルのみを検知するステップと、を含む方法である。
本願明細書において提供される別の実施形態は、メモリであって、(a)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、(b)ワード線の1つを選択するためのワード線選択機構と、(c)選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、(d)実質的に同時にプログラムされたセルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ選択されたワード線とビット線の選択された一部分との交点にある、選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、を含むメモリである。
本願明細書において提供される別の実施形態は、メモリデバイスであって、(a)メモリであって、(i)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、(ii)ワード線の1つを選択するためのワード線選択機構と、(iii)選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、(iv)実質的に同時にプログラムされたセルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ選択されたワード線とビット線の選択された一部分との交点にある、選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、を含むメモリと、(b)ビット線の一部分を選択するようにビット線選択機構に命令するための、メモリのコントローラと、を備えるメモリデバイスである。
本願明細書において提供される別の実施形態は、システムであって、(a)第1のメモリであって、(i)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、(ii)ワード線の1つを選択するためのワード線選択機構と、(iii)選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、(iv)実質的に同時にプログラムされたセルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ選択されたワード線とビット線の選択された一部分との交点にある、選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、を含む第1のメモリと、(b)第1のメモリのホストであって、(i)ビット線の一部分を選択するようにビット線選択機構に命令するためのコードを格納する第2のメモリと、(ii)コードを実行するためのプロセッサと、を含む第1のメモリのホストと、を備えるシステムである。
本願明細書において提供される別の実施形態は、メモリを管理するためのコンピュータ可読コードが具現化されたコンピュータ可読記憶媒体であって、(a)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、(b)ワード線の1つを選択するためのワード線選択機構と、(c)選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、(d)実質的に同時にプログラムされたセルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ選択されたワード線とビット線の選択された一部分との交点にある、選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、を備え、コンピュータ可読コードが、ビット線の一部分を選択するようにビット線選択機構に命令するためのプログラムコードを含むコンピュータ可読記憶媒体である。
本願明細書において提供される別の実施形態は、メモリのセルの物理ページを読み出す方法であって、(a)物理ページのすべてのセルからハードビットを検知するステップと、(b)ソフトビットを検知するための物理ページのセルの一部分のみを選択するステップと、(c)物理ページのセルの選択された一部分のみからソフトビットを検知するステップと、を含む方法である。
本願明細書において提供される別の実施形態は、メモリのコントローラであって、メモリが、(a)セルの物理ページと、(b)セルを検知するための検知機構と、(c)検知するための物理ページのセルを選択する選択機構と、を含み、コントローラが、(i)物理ページのすべてのセルからハードビットを検知するために検知機構を使用し、(ii)ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用し、かつ(iii)物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するように動作するコントローラである。
本願明細書において提供される別の実施形態は、メモリデバイスであって、(a)メモリであって、(i)セルの物理ページと、(ii)セルを検知するための検知機構と、(iii)検知するための物理ページのセルを選択する選択機構と、を含むメモリと、(b)コントローラであって、(i)物理ページのすべてのセルからハードビットを検知するために検知機構を使用し、(ii)ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用し、かつ(iii)物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するためのコントローラと、を備えるメモリデバイスである。
本願明細書において提供される別の実施形態は、システムであって、(a)第1のメモリであって、(i)セルの物理ページと、(ii)セルを検知するための検知機構と、(iii)検知するための物理ページのセルを選択する選択機構と、を含む第1のメモリと、(b)第1のメモリのホストであって、(i)第2のメモリであって、(A)物理ページのすべてのセルからハードビットを検知するために検知機構を使用し、(B)ソフトビットを検知するために物理ページのセルの一部分のみを選択するために選択機構を使用し、かつ(C)物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するためのコードを格納する第2のメモリと、(ii)コードを実行するためのプロセッサと、を含む第1のメモリのホストと、を備えるシステムである。
本願明細書において提供される別の実施形態は、メモリを管理するためのコンピュータ可読コードが具現化されたコンピュータ可読記憶媒体であって、メモリが、(a)セルの物理ページと、(b)セルを検知するための検知機構と、(c)検知するための物理ページのセルを選択する選択機構と、を含み、コンピュータ可読コードが、(a)物理ページのすべてのセルからハードビットを検知するために検知機構を使用するためのプログラムコードと、(b)ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用するためのプログラムコードと、(c)物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するためのプログラムコードと、を含むコンピュータ可読記憶媒体である。
本願明細書において提供される別の実施形態は、メモリの複数のセルを読み出す方法であって、(a)複数のセルのすべてからハードビットを検知するステップと、(b)複数のセルのすべてからソフトビットを検知するステップと、(c)メモリからエクスポートするためにソフトビットの一部分のみを選択するステップと、を含む方法である。
本願明細書において提供される別の実施形態は、メモリのコントローラであって、メモリが、(a)複数のセルと、(b)複数のセルからハードビットおよびソフトビットを検知するための検知機構と、(c)検知されたビットをエクスポートするためのエクスポート機構と、(d)エクスポートするビットを選択するための選択機構と、を含み、コントローラが、(i)ハードビットおよびソフトビットを検知するために検知機構を使用し、(ii)メモリからすべてのハードビットを受信するためにエクスポート機構を使用し、(iii)メモリから受信するようにソフトビットの一部分のみを選択するために選択機構を使用し、かつ(iv)ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するように動作するコントローラである。
本願明細書において提供される別の実施形態は、メモリデバイスであって、(a)メモリであって、(i)複数のセルと、(ii)複数のセルからハードビットおよびソフトビットを検知するための検知機構と、(iii)検知されたビットをエクスポートするためのエクスポート機構と、(iv)エクスポートするビットを選択するための選択機構と、を含むメモリと、(b)コントローラであって、(i)ハードビットおよびソフトビットを検知するために検知機構を使用し、(ii)メモリからすべてのハードビットを受信するためにエクスポート機構を使用し、(iii)メモリから受信するようにソフトビットの一部分のみを選択するために選択機構を使用し、かつ(iv)ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するためのコントローラと、を備えるメモリデバイスである。
本願明細書において提供される別の実施形態は、システムであって、(a)第1のメモリであって、(i)複数のセルと、(ii)複数のセルからハードビットおよびソフトビットを検知するための検知機構と、(iii)検知されたビットをエクスポートするためのエクスポート機構と、(iv)エクスポートするビットを選択するための選択機構と、を含む第1のメモリと、(b)第1のメモリのホストであって、(i)第2のメモリであって、(A)ハードビットおよびソフトビットを検知するために検知機構を使用し、(B)メモリからすべてのハードビットを受信するためにエクスポート機構を使用し、(C)メモリから受信するようにソフトビットの一部分のみを選択するために選択機構を使用し、かつ(D)ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するためのコードを格納する第2のメモリと、(ii)コードを実行するためのプロセッサと、を含む第1のメモリのホストと、を備えるシステムである。
本願明細書において提供される別の実施形態は、メモリを管理するためのコンピュータ可読コードが具現化されたコンピュータ可読記憶媒体であって、メモリが、(a)複数のセルと、(b)複数のセルからハードビットおよびソフトビットを検知するための検知機構と、(c)検知されたビットをエクスポートするためのエクスポート機構と、(d)エクスポートするビットを選択するための選択機構と、を含み、コンピュータ可読コードが、(a)ハードビットおよびソフトビットを検知するために検知機構を使用するためのプログラムコードと、(b)メモリからすべてのハードビットを受信するためにエクスポート機構を使用するためのプログラムコードと、(c)メモリから受信するようにソフトビットの一部分のみを選択するために選択機構を使用するためのプログラムコードと、(d)ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するためのプログラムコードと、を含むコンピュータ可読記憶媒体である。
本願明細書において、フラッシュメモリなどのメモリを読み出す際の2つの一般的な省電力化方法と、フラッシュメモリなどのメモリを読み出す際の一般的な時間短縮方法が提示される。 第1の一般的な省電力化方法は、複数のワード線および複数の配列されたビット線の交点にあり、直列に接続された共通のビット線を共有するセルのアレイを含むメモリにおいて使用することを意図したものである。ワード線のセルの一部またはすべて(すなわち、ワード線を共有するセル)が、実質的に同時にプログラムされる。セルが「実質的に同時に」プログラムされるという意味は、セルに格納されるデータを表すそれぞれの物理状態にセルが成るようにセルが物理的にまとめて動作されるということである。フラッシュセルの場合、セルをプログラムするための典型的な物理動作は、セルのフローティングゲートに電子を注入することである。同時にプログラムされたセルでワード線と交差するビット線の一部分のみが読み出し用に選択される。これらのセルのみが検知される。
この方法のいくつかの実施形態において、検知されるビット線の選択は、ビット線の選択された一部分の開始ビット線を特定することを含むステップによって実行される。次に、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線およびより高次の(すなわち、ビット線の配列において後続する)ビット線のすべてを含む。
この方法の他の実施形態において、検知されるビット線の選択は、ビット線の選択された一部分の終了ビット線を特定することを含むステップによって実行される。次に、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する終了ビット線およびより低次の(すなわち、ビット線の配列において先行する)ビット線のすべてを含む。
この方法のさらなる他の実施形態において、検知されるビット線の選択は、ビット線の選択された一部分の開始ビット線および終了ビット線を特定することを含むステップによって実行される。「開始」ビット線が、ビット線の配列において「終了」ビット線より先行すれば、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から終了ビット線を通るすべてのビット線を含む。「開始」ビット線が、ビット線の配列において「終了」ビット線に後続すれば、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する第1のビット線から終了ビット線を通るすべてのビット線と、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から最終ビット線を通るすべてのビット線とを含む。
この方法のいくつかの実施形態において、ビット線は、複数の非同一セットにグループ分けされる。原則的に、各セットは、1つのみのビット線を含みうるが、通常、各セットは、いくつかのビット線を含む。選択は、1つ以上の非同一セットを特定することによって実行される。次に、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する(1つまたは複数の)特定のセットの(1つまたは複数の)ビット線を含む。
第1の一般的な省電力化方法に対応するメモリが、複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルを含む。このメモリは、ワード線の1つを選択するためのワード線選択機構と、選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、ワード線が実質的に同時にプログラムされた選択されたワード線と交差するビット線の一部分のみを選択し、かつワード線およびビット線の選択された一部分の交点にある実質的に同時にプログラムされたセルのみを検知するためのビット線選択機構とを含む。
メモリのいくつかの実施形態において、ビット線選択機構は、グループごとではなく個別にビット線を選択する。
メモリのいくつかの実施形態において、ビット線選択機構は、ビット線の選択された一部分を示すための複数のビットを含むレジスタを含む。
第1の一般的な省電力化方法に対応するメモリデバイスが、第1の一般的な省電力化方法に対応するメモリと、ビット線の一部分を選択するようにビット線選択機構に命令するためのメモリコントローラとを含む。メモリデバイスのいくつかの実施形態において、ビット線選択機構が、ビット線の一部分を選択するように命令するために、コントローラは、ビット線の一部分の開始ビット線か、ビット線の一部分の終了ビット線のいずれかを特定する単一のビット線選択パラメータ値を含むコマンドを発行する。メモリデバイスの他の実施形態において、ビット線選択機構が、ビット線の一部分を選択するように命令するために、コントローラは、ビット線の範囲を特定する2つのビット線選択パラメータ値を含むコマンドを発行する。例えば、コマンドは、第1のビット線選択パラメータが、開始ビット線のインデックスであり、第2のビット線選択パラメータ値が、終了ビット線のインデックスであるように規定されてもよい。第1のビット線選択パラメータ値が、第2のビット線選択パラメータ値より小さければ、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から終了ビット線を通るすべてのビット線である。第1のビット線選択パラメータ値が、第2のビット線選択パラメータ値より大きければ、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する第1のビット線から終了ビット線を通るすべてのビット線と、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から最終ビット線を通るすべてのビット線とを含む。
メモリデバイスのいくつかの実施形態において、ビット線は、複数の非同一セットにグループ分けされる。ビット線選択機構は、検知用に選択された非同一セットの少なくとも1つにフラグを立てるためのレジスタを含む。好ましくは、ビット線の一部分を選択するようにビット線選択機構に命令するために、コントローラは、レジスタにフラグが立てられる複数の非同一セットの少なくとも1つのセットを特定するビット線選択コマンドを発行する。
メモリデバイスのいくつかの実施形態において、ビット線の一部分を選択するようにビット線選択機構に命令するために、コントローラは、選択されたビット線が選択されたワード線と交差する実質的に同時にプログラムされたセルを検知するためにコントローラによって発行された単一のコマンドに対してビット線の一部分を特定するコマンドを発行する。特定化コマンドは、後続する読み出しコマンドの1つのみに有効なビット線選択コマンドか、またはビット線の選択がそれ自体にのみ有効な読み出しとビット線選択が組み合わされたコマンドのいずれかである。いずれの場合も、後続する読み出しコマンドが、ビット線を選択せず、ビット線を選択するコマンドによって先行されなければ、その後続する読み出しコマンドは、ワード線の同時にプログラムされたセルのすべてを検知する。
メモリデバイスの他の実施形態において、ビット線の一部分を選択するようにビット線選択機構に命令するために、コントローラは、選択されたビット線が選択されたワード線と交差する実質的に同時にプログラムされたセルを検知するためにコントローラによって引き続き発行されるコマンドがあれば、コマンドごとにビット線の一部分を特定するコマンドを発行し、コントローラがビット線の一部分を特定する別のコマンドを発行するまで続ける。(第2の特定化コマンドは、第1の特定化コマンドをオーバーライドする。)特定化コマンドは、特定化コマンドがオーバーライドされるまですべての後続する読み出しコマンドに有効なビット線選択コマンドか、または特定化コマンドがオーバーライドされるまでビット線選択が有効な読み出しとビット線選択が組み合わされたコマンドのいずれかである。
第1の一般的な省電力化方法に対応するシステムが、第1の一般的な省電力化方法に対応する第1のメモリを含み、ビット線の一部分を選択するようにビット線選択機構に命令するためのコードを格納する第2のメモリと、コードを実行するためのプロセッサとを含む第1のメモリのホストを含む。
このシステムのいくつかの実施形態において、コードは、ビット線選択機構に、ビット線の一部分の開始ビット線か、またはビット線の一部分の終了ビット線のいずれかを特定する単一のビット線選択パラメータ値を含むコマンドを発行するためのコードを含む。このシステムの他の実施形態において、コードは、ビット線選択機構に、ビット線の範囲を特定する2つのビット線選択パラメータ値を含むコマンドを発行するためのコードを含む。例えば、コマンドは、第1のビット線選択パラメータが、開始ビット線のインデックスであり、第2のビット線選択パラメータ値が、終了ビット線のインデックスであるように規定されてもよい。第1のビット線選択パラメータ値が、第2のビット線選択パラメータ値より小さければ、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から終了ビット線を通るすべてのビット線である。第1のビット線選択パラメータ値が、第2のビット線選択パラメータ値より大きければ、ビット線の選択された一部分は、実質的に同時にプログラムされたセルでワード線と交差する第1のビット線から終了ビット線を通るすべてのビット線と、実質的に同時にプログラムされたセルでワード線と交差する開始ビット線から最終ビット線を通るすべてのビット線とを含む。
このシステムのいくつかの実施形態において、ビット線は、複数の非同一セットにグループ分けされる。ビット線選択機構は、検知用に選択された非同一セットの少なくとも1つにフラグを立てるためのレジスタを含む。好ましくは、ビット線の一部分を選択するようにビット線選択機構に命令するために、コードは、ビット線選択機構に、レジスタにフラグが立てられる複数の非同一セットの少なくとも1つのセットを特定するビット線選択コマンドを発行するためのコードを含む。
このシステムのいくつかの実施形態において、ビット線選択機構に、選択されたビット線が選択されたワード線と交差する実質的に同時にプログラムされたセルの単一検知に対してビット線の一部分を特定するコマンドを発行するためのコードを含む。コマンドは、後続する読み出しコマンドの1つのみに有効なビット線選択コマンドか、またはビット線の選択がそのもの自体にのみ有効な読み出しとビット線選択が組み合わされたコマンドのいずれかである。いずれの場合も、後続する読み出しコマンドが、ビット線を選択せず、ビット線を選択するコマンドによって先行されなければ、その後続する読み出しコマンドは、ワード線の同時にプログラムされたセルのすべてを検知する。
このシステムの他の実施形態において、コードは、ビット線選択機構に、選択されたビット線が選択されたワード線と交差する実質的に同時にプログラムされたセルを引き続き検知するごとにビット線の一部分を特定するコマンドを、ビット線の一部分を特定する別のコマンドが発行されるまで、発行するためのコードを含む。(第2の特定化コマンドは、第1の特定化コマンドをオーバーライドする。)特定化コマンドは、特定化コマンドがオーバーライドされるまですべての後続する読み出しコマンドに有効なビット線選択コマンドか、または特定化コマンドがオーバーライドされるまでビット線選択が有効な読み出しとビット線選択が組み合わされたコマンドのいずれかである。
第1の一般的な省電力化方法に対応するコンピュータ可読記憶媒体には、ビット線の一部分を選択するように、第1の一般的な省電力化方法に対応するメモリのビット線選択機構に命令するためのプログラムコードを含むコンピュータ可読コードが具現化される。
第2の一般的な省電力化方法は、メモリのセルの物理ページを読み出すためのものである。物理ページのすべてのセルからハードビットが検知される。ソフトビットの検知には、物理ページのセルの一部分のみしか選択されない。ソフトビットは、物理ページのセルの選択された一部分のみから検知される。
好ましくは、ハードビットのエラーが、ソフトビットに従って訂正される。最も好ましくは、エラーの訂正は、1つ以上のソフトビットが検知された1つ以上のセルの各々に対して、ソフトビットに応じて該当するセルから検知された少なくとも1つのハードビットの信頼性の程度を計算することを含む。
好ましくは、物理ページのセルの一部分は、ハードビットに応じて選択される。
好ましくは、物理ページのセルの選択された一部分は、物理ページに格納されたコードワードの単一の選択されたサブワードを格納した物理ページのセルのみを含む。
好ましくは、選択は、物理ページのセルの選択された一部分から、1つ以上のコードワードが格納された物理ページのセルを排除する。
好ましくは、ソフトビットに基づいて、全物理ページの少なくとも1つの統計パラメータ値が推定される。
第2の一般的な省電力化方法に対応するコントローラが、セルの物理ページと、セルを検知するための検知機構と、検知するための物理ページのセルを選択するための選択機構とを含むメモリを制御する。コントローラは、物理ページのすべてのセルからハードビットを検知するために検知機構を使用する。コントローラは、ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用する。コントローラは、物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用する。第2の一般的な省電力化方法に対応するメモリデバイスが、メモリおよびコントローラの両方を含む。
第2の一般的な省電力化方法に対応するシステムが、第1のメモリと、第1のメモリのホストとを含む。第1のメモリは、セルの物理ページと、セルを検知するための検知機構と、検知するための物理ページのセルを選択するための選択機構とを含む。ホストは、第2のメモリと、プロセッサとを含む。第2のメモリは、コードを格納するためのものである。コードは、物理ページのすべてのセルからハードビットを検知するための検知機構を使用し、ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用し、物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するためのものである。プロセッサは、コードを実行するためのものである。
第2の一般的な省電力化方法に対応するコンピュータ可読記憶媒体には、セルの物理ページと、セルを検知するための検知機構と、検知するための物理ページのセルを選択するための選択機構とを含むメモリを管理するためのコンピュータ可読コードが具現化される。コンピュータ可読コードは、物理ページのすべてのセルからハードビットを検知するための検知機構を使用するためのプログラムコードと、ソフトビットを検知するための物理ページのセルの一部分のみを選択するために選択機構を使用するためのプログラムコードと、物理ページのセルの選択された一部分のみからソフトビットを検知するために検知機構を使用するためのプログラムコードとを含む。
一般的な時間短縮方法は、メモリの複数のセルを読み出すためのものである。ハードビットおよびソフトビットの両方が、複数のすべてのセルから検知される。ソフトビットの一部分のみが、メモリからエクスポートするために選択される。
好ましくは、ソフトビットの一部分は、ハードビットに応じて選択される。
好ましくは、ハードビットのエラーは、ソフトビットに従って訂正される。
好ましくは、選択されたソフトビットは、複数のセルに格納されたコードワードの単一のサブワードのソフトビットである。
好ましくは、選択は、複数のセルに格納された1つ以上のコードワードのソフトビットを排除する。
一般的な時間短縮方法に対応するコントローラが、複数のセルと、複数のセルからハードビットおよびソフトビットを検知するための検知機構と、検知されたビットをエクスポートするためのエクスポート機構と、エクスポートするビットを選択するための選択機構とを含むメモリを制御する。コントローラは、ハードビットおよびソフトビットを検知するために検知機構を使用する。コントローラは、メモリからすべてのハードビットを受信するためにエクスポート機構を使用する。コントローラは、メモリから受信するソフトビットの一部分のみを選択するために選択機構を使用する。コントローラは、ソフトビットの選択された一部分を受信するためにエクスポート機構を使用する。一般的な時間短縮方法に対応するメモリデバイスが、メモリおよびコントローラの両方を含む。
一般的な時間短縮方法に対応するシステムが、第1のメモリと、第1のメモリのホストとを含む。第1のメモリは、複数のセルと、複数のセルからハードビットおよびソフトビットを検知するための検知機構と、検知されたビットをエクスポートするためのエクスポート機構と、エクスポートするビットを選択するための選択機構とを含む。ホストは、第2のメモリと、プロセッサとを含む。第2のメモリは、コードを格納するためのものである。コードは、ハードビットおよびソフトビットを検知するために検知機構を使用し、メモリからすべてのハードビットを受信するためにエクスポート機構を使用し、メモリから受信するためにソフトビットの一部分のみを選択するために選択機構を使用し、ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するためのものである。プロセッサは、コードを実行するためのものである。
一般的な時間短縮方法に対応するコンピュータ可読記憶媒体には、複数のセルと、複数のセルからハードビットおよびソフトビットを検知するための検知機構と、検知されたビットをエクスポートするためのエクスポート機構と、エクスポートするビットを選択するための選択機構とを含むメモリを管理するためのコンピュータ可読コードが具現化される。コンピュータ可読コードは、ハードビットおよびソフトビットを検知するために検知機構を使用するためのプログラムコードと、メモリからすべてのハードビットを受信するためのエクスポート機構を使用するためのプログラムコードと、メモリから受信するためにソフトビットの一部分のみを選択するために選択機構を使用するためのプログラムコードと、ソフトビットの選択された一部分を受信するためにエクスポート機構を使用するためのプログラムコードとを含む。
本願明細書において、添付の図面を参照しながら、例示的にのみさまざまな実施形態について記載する。
フラッシュメモリの例示的な内部アーキテクチャを示す。 図1のフラッシュメモリのメモリコントロール回路の簡略化されたブロック図である。 図1のフラッシュメモリと、コントローラとを含むフラッシュメモリデバイスのハイレベルな概略ブロック図である。 図3のコントローラの機能のほとんどが、ソフトウェアによってエミュレートされるメモリシステムのハイレベルなブロック図である。
図面および以下の記載を参照しながら、フラッシュメモリの高速、低電力読み出し原理および動作がさらに深く理解できるはずである。
図1は、フラッシュメモリ100の例示的な内部アーキテクチャを示す。主要な特徴は、外部コントローラのインターフェイスとなる入出力(I/O)バス102および制御信号104と、コマンド、アドレス、および状態信号のレジスタで内部メモリ動作を制御するためのメモリコントロール回路106とを含む。行デコーダ(XDEC)110および列デコーダ(YDEC)112と、センス増幅器群およびプログラム制御回路(SA/PROG)114と、データレジスタ116とを各々が有するフラッシュEEPROMセルの1つ以上のアレイ108が含まれる。現在、メモリセルは、通例、記憶素子として1つ以上の導電性フローティングゲートを含むが、代わりに、他の長期間電子電荷蓄積素子が使用されてもよい。メモリセルアレイは、各記憶素子に対して規定された2つの電荷レベルで動作されることで、各素子に1ビットデータを格納する。あるいは、各記憶素子に対して3つ以上の記憶状態が規定されてもよく、その場合、各素子に2ビット以上のデータが格納される。
外部インターフェイスI/Oバス102および制御信号104は、以下のものを含みうる。
CS(チップセレクト)−フラッシュメモリインターフェイスのアクティブ化に使用される。
CLE−メモリコントロール回路106のコマンドレジスタに送信されるコマンドのアクティブ化経路を制御する。
ALE−メモリコントロール回路106のアドレスレジスタへのアドレスのアクティブ化経路を制御する。
RE(シリアルデータ出力制御)−アクティブ時、I/Oバス102にデータを駆動する。
WE−I/Oポートへの書き込みを制御する。
AD[7:0]アドレス/このI/Oバスは、データバスコントローラとメモリコントローラ106のフラッシュメモリコマンド、アドレスおよびデータレジスタとの間でのデータ転送に使用される。
また、これらの信号に加えて、ストレージサブシステムコントローラが、メモリが何らかのタスクを実行中であるかを決定しうる手段をメモリが有することは典型的である。このような手段は、メモリがビジー中にアクセス可能な内部メモリレジスタに専用信号または状態ビットを含みうる。
同じ機能性を与えるために、他の信号構成も使用可能であるため、このインターフェイスは、一例としてのみ与えられる。図1は、関連するコンポーネントとともにフラッシュメモリアレイ108を1つのみ示すが、複数のこのようなアレイが、共通のインターフェイスおよびメモリコントロール回路を共有する単一のフラッシュメモリチップ上に存在しうるが、並列読み出しおよびプログラム動作を可能にするために、別々のXDEC110、YDEC112、SA/PROG14、およびデータレジスタ116の回路を有しうる。
メモリアレイからデータレジスタ116を通り、I/OバスAD[7:0]102へのデータレジスタの結合を介して外部コントローラへデータが転送される。添付の特許請求の範囲において、このデータ転送のことを、フラッシュメモリ100からのデータの「エクスポート」と呼ぶ。データレジスタ116はまた、センス増幅器/プログラミング回路114に結合される。各センス増幅器/プログラミング回路素子に結合されたデータレジスタ116の素子数は、メモリセルの各記憶素子、記憶素子として1つ以上のフローティングゲートを各々が含むフラッシュEEPROMセルに格納されたビットの数に依存するものであってもよい。各記憶素子は、メモリセルが多状態モードで動作すれば、2ビットまたは4ビットなどの複数のビットを格納してもよい。あるいは、メモリセルは、1つの記憶素子につき1ビットのデータを格納するようにバイナリモードで動作されてもよい。
行デコーダ110は、アクセスされる物理ページを選択するために、アレイ108の行アドレスを復号化する。行デコーダ110は、メモリコントロールロジック106から内部行アドレス線118を介して行アドレスを受信する。列デコーダ112は、メモリコントロールロジック106から内部列アドレス線120を介して列アドレスを受信する。また、本願明細書において、アレイ108の行124を「ワード線」と呼ぶ。また、本願明細書において、アレイ108の列126を、「ビット線」と呼ぶ。説明を簡潔にするために、アレイ108の最初の4行124、最後の4行124、最初の4列126、および最後の4列126を、アレイ108に明確に示す。
アレイ108のセルは、ワード線124とビット線126の交点にある。各ビット線126において、セルは、NORフラッシュメモリと並列ではなく、NANDフラッシュメモリと直列に接続される。ビット線126は、例えば、左から右方向に向かって、左端のビット線126に順序数「1」が割り当てられ、左端の隣のビット線126の順序数「2」が割り当てられ、以下同様になるように順序付けされる。
以下、フラッシュメモリアレイ108からのデータの読み出し時およびフラッシュメモリアレイ108へのデータの書き込み時のメモリコントロール回路106の動作について記載する。
図2は、メモリコントロール回路106の簡略化されたブロック図である。レジスタイネーブル回路204が、アドレスレジスタ206、コマンドレジスタ202、およびラッチイネーブル回路210に結合された入力を有する。アドレス記述子が続くことを示すALE制御信号104を外部コントローラから受信すると、レジスタイネーブル回路204は、イネーブル線PADRをアクティブ化することで、I/Oバス102上で外部コントローラから後続のチャンクアドレス記述子が、アドレスレジスタ206にラッチされる。その後、アドレスレジスタ206に結合されたラッチイネーブル回路210が、アドレスレジスタ206に格納されたチャンクアドレスをアドレスラッチ212の適切な行および列のラッチにラッチするように、ラッチイネーブル線XおよびYをアクティブ化する。次に、アドレスラッチ212に格納されたチャンクアドレスは、内部行アドレス線118の適切な線上にわたって行デコーダ110に与えられ、内部列アドレス線120上にわたって列デコーダ112に与えられる。
データが続くことを示す制御信号104を外部コントローラから受信すると(外部コントローラが、データをフラッシュメモリアレイ108に書き込もうとするため)、レジスタイネーブル回路204は、I/Oバス102上のデータチャンクをデータレジスタ116内にラッチさせるイネーブル線PDATをアクティブ化する。
コマンドが続くことを示すCLE制御信号104を外部コントローラから受信すると、レジスタイネーブル回路204は、イネーブル線PCMDをアクティブ化することで、I/Oバス102上で外部コントローラから後続の読み出しまたは書き込みコマンドが、コマンドレジスタ202内にラッチされる。その後、コマンドデコーダ208は、コマンドレジスタ202に格納されたコマンドを読み出す。
コマンドが書き込みコマンドであれば、コマンドデコーダ208は、プログラム線PGMを活性化するようにコマンドを復号化する。プログラムイネーブル回路216が、プログラム線PGMと、アドレスレジスタ206に格納されたチャンクアドレスから最上位のビットとを受信し、それに応答して、センス増幅器/プログラミング回路114に与えられたプログラムイネーブル線123をアクティブ化して、データレジスタ116のデータをフラッシュメモリアレイ108にプログラムするようにプログラム/ベリファイモードを選択的にアクティブ化する。
コマンドが読み出しコマンドであれば、コマンドデコーダ208は、センスイネーブル回路214をアクティブ化するためにコマンドを復号化し、その後、センスイネーブル回路214は、センス増幅器/プログラミング回路114に与えられたセンスイネーブル線122をアクティブ化して動作検知モードを選択的にアクティブ化し、フラッシュメモリアレイ108のラッチされた行124およびラッチされた列126の交点にあるセルに格納されたしきい値電圧を検知する。検知結果は、データレジスタ116にロードされた後、外部コントローラによって読み出される。
外部コントローラからの各読み出しコマンドにより、チャンクアドレス記述子による指定通りに、フラッシュメモリアレイ108の単一の行124からデータが読み出される。このように、アドレスラッチ212の各行の値は、フラッシュメモリアレイ108のそれぞれの行124に対するものである。アドレスラッチ212の列ラッチは、フラッシュメモリアレイ108の列126のグループに対するものであり、列126は、従来、ソフトビットの検知時に費やされていた電力を節約する方法で、列ラッチごとにグループ分けされる。
従来、列ラッチの各グループは、フラッシュメモリアレイ108の各行124の全物理ページに対応する。メモリ100の構成の状態に応じて、セルの各行124そのものが、単一の物理ページでありえて、あるいは、セルの各行124が、2つまたは3つ以上の物理ページを含みうる。物理ページにデータを書き込むための外部コントローラからのコマンドにより、センス増幅器/プログラミング回路114が、ターゲットの物理ページのすべてのセルをプログラムする。物理ページのハードビットを読み出すための外部コントローラからのコマンドにより、センス増幅器/プログラミング回路114が、ターゲットの物理ページのすべてのセルのハードビットを検知する。物理ページのソフトビットを読み出すための外部コントローラからのコマンドにより、センス増幅器/プログラミング回路114が、ターゲットの物理ページのすべてのセルのソフトビットを読み出す。
図3は、フラッシュメモリ100が外部コントローラ302によって制御されるフラッシュメモリデバイス300のハイレベルな概略ブロック図である。コントローラ302は、パーソナルコンピュータ、デジタルカメラ、個人用携帯情報端末(PDA)などのホストシステムに接続されるかまたは接続可能である。ホストは、例えば、メモリアレイ108との間でデータの格納または読み出しをするためにコマンドを始動させ、このようなデータをそれぞれ送信または受信する。コントローラ302は、このようなコマンドを、メモリコントロール回路106によって解読および実行可能なコマンド信号に変換する。コントローラ302はまた、典型的に、ユーザデータがメモリアレイ108に書き込まれるかまたはメモリアレイ108から読み出されるバッファメモリを含む。典型的なメモリデバイス300は、コントローラ302を含む1つの集積回路チップ304と、各々がメモリ100を含む1つ以上の集積回路306とを含む。このようなメモリデバイスのメモリアレイおよびコントローラ回路を1つ以上の集積回路チップ上にまとめて集積する傾向にあることは言うまでもない。メモリデバイス300は、ホストシステムの一部として混載されてもよいし、あるいはホストシステムの勘合ソケットに取り外し可能に差し込み可能なメモリカードに含まれてもよい。このようなカードがメモリデバイス全体を含んでもよいし、あるいは関連する周辺回路とともにコントローラおよびメモリアレイが別々のカードに設けられてもよい。
ハードビットおよびソフトビットの検知および読み出しに費やされる電力は、2つの部分からなる。第1の電力は、データレジスタ116内のメモリセルの検知にかかる電力であり(すなわち、基準電圧をセルにかけ、基準電圧に対する比較の結果を検知する際に電力を費やす)、第2の電力は、データレジスタ116からバス102上にわたって外部コントローラ302(エラー訂正デコーダおよび他の推定機能が典型的に設置される)内に読み出し値を転送(「エクスポート」)するのにかかる電力である。本願明細書に記載されるフラッシュメモリアレイ108の列126の列ラッチごとにグループ分けすることで、第1の部分、すなわち、メモリセルの検知の電力が低減される。
前述したように、従来では、物理ページのソフトビットを読み出すための外部コントローラ302からのコマンドにより、センス増幅器/プログラミング回路114が、ターゲットの物理ページのすべてのセルのソフトビットを読み出す。実際には、物理ページのすべてのメモリセルに対してソフトビット値を必要とせず、メモリセルの一部のみでよい場合もある。それにもかかわらず、従来では、読み出された物理ページのすべてのセルのすべてのソフトビット値が、データレジスタ116内で検知される。しかし、これらの値がすべて必要でなければ、これにより電力が不必要に無駄になる。
例えば、フラッシュメモリセルが、検知時に100[ナノアンペア]の電流を消費し、復号化の計算に加わるセルの数が、16K(簡略化するために、パリティビットおよび管理ビットは無視する)であれば、単一のソフトビット検知に対して検知動作(しきい値電圧の比較)が行われるたびに、検知されたビットの半分しかデコーダによって必要とされず、フラッシュメモリは、8K×100=800K[ナノアンペア]=0.8[ミリアンペア]が無駄になる。
ソフトビットには、各セルに対して2回以上の検知動作を必要とするものもあることに留意するべきである。典型的に、第1のソフトビットは、1つのセル状態ごとに1回のしきい値電圧比較を必要とし、第2のソフトビットは、1つのセル状態ごとにさらに2回のしきい値電圧比較を必要とし、第3のソフトビットは、1つのセル状態ごとにさらに4回のしきい値電圧比較を必要とするなど、以下同様である。
物理ページのセルの一部のみのソフトビットを検知することが、以下のいずれかの状況の場合のセルに要求されることもある。
・セルのハードビットがすでに事前に検知され、セルの一部のソフトビットしか必要でない場合。
・読み出し中、いくつかのセルのデータが、ハードビットもソフトビットも、まったく必要とされない場合。
本願明細書において記載されるソフトビットの選択的検知の有用性を示すために記述すべき唯一の残りの点は、すべてのソフトビット値を必要とせず、その一部分のみでいい場合はどんな状況のときかを説明することである。実際、これは、以下の4つの例の場合である。
A.フラッシュメモリセルにエラーを引き起こす物理的現象が、セルの異なる状態で異なりうる。例えば、エラーの主な発生源として、セルのフローティングゲートからの電子の漏出が原因となって、時間の経過とともにメモリセルのしきい値電圧が変動することがある。これは、典型的に、高状態(すなわち、高いしきい値電圧に相当する状態)にあるセルが、低状態(すなわち、低いしきい値電圧に相当する状態)にあるドリフト現象に非常に影響を受ける場合である。このドリフト現象を、データ保持と呼ぶこともある。
したがって、低状態にあるセルが、非常に信頼性が高く、1つ以上の追加のソフトビットからあまり利益を享受しないことが予想される。一方で、高状態にあるセルは、信頼性が低く、1つまたは複数のソフトビットによって与えられる追加の情報から利益を享受しうる。したがって、デコーダの設計者は、以下の規則を実装することもある。すなわち、ソフトビットを読み出すとき(ハードビットのみを使用するときに、復号化が失敗するかまたは指定の時間フレームで収束しなかったため)、状態グループの上側半分(例えば、4ビット/セルフラッシュメモリにおいて16個の状態の高状態から8個の状態)にあるセルに対応するソフトビット値のみを検知する。
B.1つのタイプのデコーダが、フルワードのサブワードを復号化することによってコードワードの復号化の特性を有する。1つのこのようなサブワードが、独自に復号化できなければ、そのサブワードを復号化しやすいようにする他のサブワードからの情報である(復号化がうまくいかなかったサブワードと、サブコード、すなわち、うまく復号化されたサブワードの両方)。
サブワードの復号化の試みが失敗した後で、他のサブワードからの情報が採用される前に、このようなデコーダを用いてソフトビットが使用されてもよい。ソフトビットは、他のサブワードからの外部情報とは関係なく、失敗サブワードの復号化を試みるために、失敗サブワードに対して読み出されてもよい。しかし、わずか1つのサブワードが失敗し、ソフトビットを必要とすれば、他のすべてのサブワード、特に、うまく復号化された他のサブワードのソフトビットを検知および転送する必要がない。したがって、このようなデコーダの設計者は、本願明細書に記載されるフラッシュメモリアレイ108の列126の列ラッチごとにグループ分けすることを利用し、実際に必要とするサブワードのソフトビット値のみを検知することもある。
C.いくつかのフラッシュストレージシステムにおいて、メモリからユニットとして読み出されたデータのチャンク(フラッシュメモリの用語における「ページ」)は、エラー訂正プロセスに使用されるデータのチャンクより大きい。言い換えれば、データのチャンクは、メモリの物理ページに対応するセルグループに格納される(各セルが1つ以上のデータビットを格納する)が、データを復号化する目的で、チャンクは、別々のコードワードに分割される。
典型的な例は、32K個のセルの物理ページであり、各セルは、2つのデータビットを格納し(全部で64Kビットに対して)、各セルは、8K個のセルに格納された16Kビットを各々が含む4つのコードワードに分割される。このようなコードワードの各々は、独立して復号化される。したがって、コードワードの1つが、うまく復号化するためにソフトビットを必要とするが、他のコードワードは必要としない場合であってもよい。このような場合、ストレージシステムの設計者が、本願明細書に記載されるフラッシュメモリアレイ108の列126の列ラッチごとにグループ分けすることを採用し、データレジスタ116に対して、最初は失敗したコードワードを格納するセルに対応するソフトビット値のみ検知してもよい。
D.いくつかのフラッシュストレージシステムにおいて、メモリからユニットとして読み出されるデータのチャンク(フラッシュメモリの用語における「ページ」)は、例えば、セル間のクロスカップリングの統計的推定に使用されるデータのチャンクより大きい。クロスカップリング係数を十分に高精度に推定するために、ページの一部しか要求されないこともある。前述した「C.」の場合の典型的なケースでは、ワード線のすべての32K個のセルに対して採用されうるクロスカップリング係数を推定するために、32K個のセルから10K個のセルしか必要とされないこともある。
この場合、ワード線nおよびワード線n+1のハードビットおよびセル当たり2つのソフトビットの両方に対して、最初の10K個のセルのみが検知される。これらのビットに基づいて、クロスカップリング係数が生成される。引き続き、生成されたクロスカップリング係数を使用してクロスカップリングを補償するために、ワード線n+1のハードビットおよびワード線nのハードビットおよびセル当たり1つのソフトビットのみが採用される。結果として、ワード線n+1のソフトビットおよびワード線nの最後の22K個のセルの各々の第2のソフトビットが検知されず、この検知に関連する電力が節約され、場合によっては、時間が短縮される。
原則的に、アドレスラッチ212が、ビット線126当たり1つの列ラッチを含みうる。各列ラッチは、対応するビット線126が読み出し検知段階中に動作しているか、およびそのビット線126に電流が流れているかを決定しうる。しかし、このような設計は、多くのラッチを必要とするために高コストであるとともに、コントローラ302が各ラッチの所望の状態を特定する必要があるため、フラッシュメモリ100と外部フラッシュコントローラ302との相互作用が複雑である。
非常に好ましい設計では、1つの信号で多くのビット線グループ126の電力消費が有効および無効にされる。例えば、例Bのサブワードの1つに対応するビット線126の各グループは、アドレスラッチ212の単一のそれぞれの列ラッチによって制御されうる。あるいは、例Cのコードワードに対応するビット線126の各グループまたは例Dのグループが、アドレスラッチ212の単一の列ラッチによって制御されうる。
例Aは、好ましい実施例によって十分にサポートされていないが、それでも、この例に対してもある程度の省電力化が図られうる。4ビット/セルの例のハードビットの1つが、セルが8個の上側状態または8個の下側状態に属するかを示すとすると、単一の検知動作において、セルが上側または下側の8個の状態に属するかが決定される。このビットは、VBL(ビット線ドレイン側電圧)をゼロに変え、すべての非関連ビット線を抑制するように使用されうる。しかし、これは、ハードビットが読み出される前では上側および下側の8個のレベルを区別することができないため、この場合、ハードビットとともにではなく、ハードビットの後にソフトビットが読み出されるべきであることを意味する。これは限定的であるように見えるが、ソフトビットがエラー訂正とともに考慮される場合に典型的である。
外部コントローラ302が、ビット線126の各グループを有効または無効にする必要がある場合、メモリコントロール回路106によって認識されるアドレス記述子に対して、以下のオプションが利用可能である。
1.フラッシュメモリの典型的な読み出しコマンドが、特定のバイト(またはあまり一般的ではない16ビットフラッシュメモリでは、ワード)を指し示すアドレスを含む。アドレスの最上位ビットは、読み出されるページを規定し、最下位バイトは、連続読み出しが望ましいバイトを規定する。読み出しコマンドが、例えば、ページにおいて4,096バイトのうちバイト3,072を指し示せば、コントローラ302は、ページの上4分の1のみを読み出そうとしていることを指し示すものとして考慮されうる。フラッシュメモリ100は、このような場合(読み出しアドレスが、アドレス指定されたページ内のオフセットNを指し示す場合)、Nより小さなオフセットを有するすべてのビット線の検知を回避するように構成されてもよい。
2.前のオプションは、検知するための開始オフセットを設定するが、終了オフセットは設定しない。開始オフセットと終了オフセットの両方の設定が望ましければ、フラッシュメモリ100は、2つの番号、1つは下側の検知アドレス、もう1つは上側の検知アドレスを明確に設定するコマンド(読み出しコマンドの前に発行される)をサポートしてもよい。次に、特定の範囲外にある任意のビット線126は検知されない。
3.外部コントローラ302による高分解能のセル検知制御が望ましければ、フラッシュメモリ100は、各ビットがページの1つのセクションを制御する数ビットの「検知制御レジスタ」を含むように構成されてもよい。例えば、4KBページが、8個の512バイトセクタに分割されてもよく、各セクタは、8ビットレジスタから1ビットによって制御される。フラッシュメモリ100がこのように構成されれば、検知制御レジスタを任意の所望のビットパターンに設定するコマンド(読み出しコマンドの前に発行される)をサポートするため、セクタの任意の組み合わせが検知されるが、すべての他のセクタは検知されない。
方法2における限界値の設定および方法3におけるレジスタの設定は、1回の読み出しに対してのみのものであり、各ページの読み出しに対して繰り返されてもよく、または事実上、デフォルト値に変更またはリセットされるまで維持されてもよい。
ハードビットおよびソフトビットを検知し読み出すために、フラッシュメモリ100および外部コントローラ302によって費やされた電力のように、フラッシュメモリ100からソフトビットを読み出す際に外部コントローラ302が費やす時間は、2つの部分からなる。すなわち、第1の時間は、メモリセルをデータレジスタ116に検知するのにかかる時間(すなわち、基準電圧をセルにかけ、基準電圧に対する比較の結果を検知するのにかかる時間)であり、第2の時間は、データレジスタ116からバス102にわたって外部コントローラ302に読み出し値を転送(「エクスポート」)するのにかかる時間である。
実際には、物理ページのすべてのメモリセルに対してソフトビット値を必要とせず、メモリセルの一部のみでよい場合もある。それにもかかわらず、従来のシステムは、常に、すべてのセルのすべてのソフトビット値を外部コントローラ302に転送する。しかし、これらの値がすべて実際に必要でなければ、これにより不必要に時間が無駄になる。典型的なフラッシュバスサイクルは、30〜50ナノ秒であってもよく、その時間で、8ビット(または16ビットフラッシュデバイスのあまり一般的ではない場合では、16ビット)が転送される。復号化の計算に関与するセルの数が16K(簡潔にするためにパリティビットおよび管理ビットは無視する)であり、ビットの半分しかデコーダに必要とされていなければ、バスサイクルが50ナノ秒の8ビットフラッシュデバイスは、ソフトビットが読み出されるたびに、8×1,024×50/8=51,200ナノ秒=51.2マイクロ秒を無駄にする。
NANDフラッシュメモリのデータレジスタ(例えば、フラッシュメモリ100のデータレジスタ116)にあるデータの一部のみの転送では、フラッシュメモリに任意のさらなる回路またはコマンドを必要とせず、すなわち、ソフトビットの読み出しをサポートするすべてのフラッシュメモリには、(標準的に利用可能なコマンドを使用して)データレジスタの任意のアドレスからのデータ転送を開始する機能、開始アドレスから連続して任意の所望の数のバイトを転送し、データレジスタの任意の所望の第2のアドレスへの転送ポインタを再位置付けする機能、任意の数のバイトを連続して転送する機能などがある。
データレジスタ116などのデータレジスタの部分的データ転送の実現性および有用性を示すために記述すべき唯一の残りの点は、すべてのソフトビット値を必要とせず、その一部分のみでいいのはどんな場合かを説明することである。実際、これは、以下の例の場合である。
A.フラッシュメモリセルにエラーを引き起こす物理的影響が、セルの異なる状態にさまざまな影響を及ぼす。例えば、エラーの主な発生源として、セルのフローティングゲートからの電子の漏出が原因となって、時間の経過とともにメモリセルのしきい値電圧が変動することがある。これは、典型的に、高状態(すなわち、高いしきい値電圧に相当する状態)にあるセルが、低状態(すなわち、低いしきい値電圧に相当する状態)にあるドリフト現象に非常に影響を受ける場合である。したがって、低状態において(ハードビットのみを使用して)読み出されるセルは、非常に信頼性が高く、1つ以上の追加のソフトビットからそれほど利益を享受しないことが予想される。一方で、高状態において(ハードビットのみを使用して)読み出されるセルは、信頼性が高く、ソフトビットによって与えられる追加の情報から利益を享受しうる。したがって、デコーダの設計者は、以下の規則を実装することもある。すなわち、ソフトビットを読み出すとき(ハードビットのみを使用するときに、復号化が失敗したため)、状態グループの上側半分(例えば、4ビット/セルフラッシュメモリにおいて16個の状態の高状態から8個の状態)にあるセルに対応するソフトビット値のみを読み出す。
B.前述したように、1つのタイプのデコーダが、フルコードワードのサブワードでコードワードの復号化を開始する特性を有する。1つのこのようなサブワードが、独自に復号化できなければ、そのサブワードを復号化しやすいようにする他のサブワードからの情報である(復号化がうまくいかなかったサブワードと、サブコード、すなわち、うまく復号化されたサブワードの両方)。サブワードの復号化が失敗した後で、他のサブワードからの情報が使用される前に、このようなデコーダを用いてソフトビットが使用されてもよい。ソフトビットは、他のサブワードからの外部情報なしに、失敗するサブワードの復号化を局所的に試みるために、失敗するサブワードに対して読み出されてもよい。しかし、わずか1つのサブワードが失敗し、ソフトビットを必要とすれば、他の(失敗していない)サブワードのソフトビットを転送する必要がない。したがって、このようなデコーダの設計者は、実際にソフトビット値を必要とするサブワードのソフトビット値のみを転送することもある。
C.いくつかのフラッシュストレージシステムにおいて、メモリからユニットとして読み出されたデータのチャンク(フラッシュメモリの用語における「ページ」)は、エラー訂正プロセスに使用されるデータのチャンクより大きい。言い換えれば、データのチャンクは、メモリの物理ページに対応するセルグループに格納される(各セルが1つ以上のデータビットを格納する)が、データを復号化する目的で、チャンクは、別々のコードワードに分割される。典型的な例は、32K個のセルの物理ページであり、各セルは、2つのデータビットを格納し(全部で64Kビットに対して)、各セルは、8K個のセルに格納された16Kビットを各々が含む4つのコードワードに分割される。このようなコードワードの各々は、独立して復号化される。したがって、コードワードの1つが、復号化を成功させるためのソフトビットを必要とするが、他のコードワードは必要としない場合であってもよい。このような場合、ストレージシステムの設計者は、全物理ページのソフトビットが、メモリセルからデータレジスタへ同時に読み出され、コントローラへの転送の準備が整ったとしても、外部コントローラ302へ、最初に失敗したコードワードを格納するセルに対応するソフトビット値のみを転送してもよい。
図4は、コントローラ302の機能のほとんどがソフトウェアによって実行されるシステム400のハイレベルなブロック図である。システム400は、プロセッサ402と、4つのメモリデバイス、すなわち、RAM404、ブートROM406、大容量ストレージデバイス(ハードディスク)408、およびフラッシュメモリデバイス412として図3のフラッシュメモリを修正したものを含み、すべてが共通バス414を介して連通状態にある。図3のフラッシュメモリデバイス300とフラッシュメモリデバイス412の相違点は、フラッシュメモリデバイス412のコントローラが、バス414へのインターフェイスとしてのみ機能し、前述したような図3のコントローラ302の機能性の残りは、大容量ストレージデバイス408に格納され、プロセッサ402によって実行されたユーザアプリケーションとフラッシュメモリデバイス412との間のインターフェイスになり、フラッシュメモリデバイス412のフラッシュメモリを管理するようにプロセッサ402によって実行されるフラッシュメモリドライバコード410によってエミュレートされることである。このようなフラッシュ管理ドライバコードの従来の機能に加えて、ドライバコード410は、前述したように、フラッシュメモリデバイス412のフラッシュセルを読み出す際に、省電力化および時間短縮に関して、図3のコントローラ302の機能をエミュレートする。ドライバコード410は、典型的に、システム400のオペレーティングシステムコードに含まれるが、独立したコードであってもよい。
フラッシュメモリデバイス412以外のシステム400のコンポーネントは、フラッシュメモリデバイス412のホスト420を構成する。大容量ストレージデバイス408は、フラッシュメモリアレイの参照セルとして、いかなる目的に対しても使用されないであろうフラッシュメモリアレイのセルを使用するためのコンピュータ可読ドライバコードを有するコンピュータ可読記憶媒体の一例である。このようなコンピュータ可読記憶媒体の他の例は、このようなコードを有するCDなどの読み出し専用メモリを含む。
フラッシュメモリのセルを読み出す際の時間を短縮しかつ省電力化する方法、およびこの方法を使用するメモリ、デバイス、およびシステムの限られた数の実施形態について説明してきた。これらの方法、デバイス、およびシステムの多数の変形、修正、および他の応用がなされてもよいことは明らかである。

Claims (21)

  1. 複数のワード線および複数の配列されたビット線の交点にあり、直列に接続された共通のビット線を共有するセルのアレイを含むメモリのデータ読み出しモードにおいて、ワード線を共有するセルを読み出す方法であって、
    (a)前記ワード線のセルの少なくとも一部分を実質的に同時にプログラムするステップと、
    (b)検知するステップの前に、前記セルを検知するためのコントローラによって引き続き発行されたコマンドごとにビット線の一部分を特定するコマンドを発行する前記コントローラによって、実質的に同時にプログラムされた、前記メモリの物理ページのすべてのセルよりも少ない前記セルの少なくとも一部分でワード線と交差する前記ビット線の一部分のみを選択するステップと、
    (c)(b)における選択するステップに基づいて、前記ワード線と前記ビット線の一部分との交点にあるワード線のセルのみを選択的に検知するステップと、
    を含む方法。
  2. 請求項1記載の方法において、
    前記選択するステップが、前記ビット線の一部分の開始ビット線を特定することを含むステップによって実行される方法。
  3. 請求項1記載の方法において、
    前記選択するステップが、前記ビット線の一部分の終了ビット線を特定することを含むステップによって実行される方法。
  4. 請求項1記載の方法において、
    前記選択するステップが、前記ビット線の一部分の開始ビット線および終了ビット線を特定することを含むステップによって実行される方法。
  5. 請求項1記載の方法において、
    (d)前記ビット線を複数の非同一セットのビット線にグループ分けするステップをさらに含み、
    前記選択するステップが、前記非同一セットの少なくとも1つを特定することによって実行される方法。
  6. 請求項1記載の方法において、
    前記メモリが、ホストとインターフェイスで接続される方法。
  7. メモリであって、
    (a)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、
    (b)前記ワード線の1つを選択するためのワード線選択機構と、
    (c)前記選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、
    (d)実質的に同時にプログラムされた、前記メモリの物理ページのすべてのセルよりも少ない前記セルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ前記選択されたワード線と前記ビット線の選択された一部分との交点にある、前記選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、
    (e)前記メモリのデータ読み出しモードにおける検知の前に、前記セルを検知するためのコントローラによって引き続き発行されたコマンドごとにビット線の一部分を特定するコマンドを発行することによって前記ビット線の一部分を選択するように前記ビット線選択機構に命令するためのコントローラと、
    を備えるメモリ。
  8. 請求項7記載のメモリにおいて、
    前記ビット線選択機構が、前記ビット線を個々に選択するメモリ。
  9. 請求項7記載のメモリにおいて、
    前記ビット線選択機構が、前記ビット線の選択された一部分を示すための複数のビットを含むレジスタを含むメモリ。
  10. 請求項7記載のメモリにおいて、
    前記コントローラが、前記ビット線の一部分を選択するように前記ビット線選択機構に命令するために、単一のビット線選択パラメータ値を含むコマンドを発行するメモリ。
  11. 請求項10記載のメモリにおいて、
    前記単一のビット線選択パラメータ値が、前記ビット線の一部分の開始ビット線を特定するメモリ。
  12. 請求項10記載のメモリにおいて、
    前記単一のビット線選択パラメータ値が、前記ビット線の一部分の終了ビット線を特定するメモリ。
  13. 請求項7記載のメモリにおいて、
    前記コントローラが、前記ビット線の一部分を選択するように前記ビット線選択機構に命令するために、2つのビット線選択パラメータ値を含むコマンドを発行するメモリ。
  14. 請求項7記載のメモリにおいて、
    前記ビット線が、複数の非同一セットにグループ分けされ、
    前記ビット線選択機構が、検知用に選択された前記非同一セットの少なくとも1つにフラグを立てるためのレジスタを含むメモリ。
  15. 請求項14記載のメモリにおいて、
    前記コントローラが、前記ビット線の一部分を選択するように前記ビット線選択機構に命令するために、前記レジスタにフラグが立てられる複数の非同一セットの少なくとも1つのセットを特定するビット線選択コマンドを発行するメモリ。
  16. システムであって、
    (a)第1のメモリであって、
    (i)複数のワード線および複数のビット線の交点にあり、直列に接続された共通のビット線を共有する複数のセルと、
    (ii)前記ワード線の1つを選択するためのワード線選択機構と、
    (iii)前記選択されたワード線のセルの少なくとも一部分を実質的に同時にプログラムするためのプログラミング機構と、
    (iv)実質的に同時にプログラムされた、前記メモリの物理ページのすべてのセルよりも少ない前記セルの少なくとも一部分で選択されたワード線と交差するビット線の一部分のみを選択し、かつ前記選択されたワード線と前記ビット線の選択された一部分との交点にある、前記選択されたワード線のセルの少なくとも一部分のセルのみを検知するためのビット線選択機構と、を含む第1のメモリと、
    (b)前記第1のメモリのホストであって、
    (i)前記メモリのデータ読み出しモードにおける検知の前に、前記セルを検知するためのコントローラによって引き続き発行されたコマンドごとにビット線の一部分を特定するコマンドを発行することによって前記ビット線の一部分を選択するように前記ビット線選択機構に命令するためのコードを格納する第2のメモリと、
    (ii)前記コードを実行するためのプロセッサと、を含む前記第1のメモリのホストと、
    を備えるシステム。
  17. 請求項16記載のシステムにおいて、
    前記コードが、前記ビット線選択機構に、単一のビット線選択パラメータ値を含むコマンドを発行するためのコードを含むシステム。
  18. 請求項17記載のシステムにおいて、
    前記単一のビット線選択パラメータ値が、前記ビット線の一部分の開始ビット線を特定するシステム。
  19. 請求項17記載のシステムにおいて、
    前記単一のビット線選択パラメータ値が、前記ビット線の一部分の終了ビット線を特定するシステム。
  20. 請求項16記載のシステムにおいて、
    前記コードが、前記ビット線選択機構に、2つのビット線選択パラメータ値を含むコマンドを発行するためのコードを含むシステム。
  21. 請求項16記載のシステムにおいて、
    前記コードが、前記ビット線選択機構に、前記選択されたワード線と前記ビット線の選択された一部分との交点にある、前記選択されたワード線のセルの少なくとも一部分のセルの単一検知のために前記ビット線の一部分を特定するコマンドを発行するためのコードを含むシステム。
JP2011514151A 2008-06-23 2009-05-05 フラッシュメモリにおける高速低電力のデータ読み出し Expired - Fee Related JP5559778B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US7468408P 2008-06-23 2008-06-23
US61/074,684 2008-06-23
PCT/IB2009/051833 WO2009156876A1 (en) 2008-06-23 2009-05-05 Fast, low-power reading of data in a flash memory

Publications (2)

Publication Number Publication Date
JP2011525681A JP2011525681A (ja) 2011-09-22
JP5559778B2 true JP5559778B2 (ja) 2014-07-23

Family

ID=40821833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011514151A Expired - Fee Related JP5559778B2 (ja) 2008-06-23 2009-05-05 フラッシュメモリにおける高速低電力のデータ読み出し

Country Status (7)

Country Link
US (1) US8433980B2 (ja)
EP (1) EP2301034B1 (ja)
JP (1) JP5559778B2 (ja)
KR (1) KR101674225B1 (ja)
CN (1) CN102132354B (ja)
TW (1) TWI489483B (ja)
WO (1) WO2009156876A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI413897B (zh) * 2010-01-20 2013-11-01 Silicon Motion Inc 快閃記憶體之資料存取方法以及快閃記憶體裝置
US8578246B2 (en) * 2010-05-31 2013-11-05 International Business Machines Corporation Data encoding in solid-state storage devices
US8446786B2 (en) 2011-01-20 2013-05-21 Micron Technology, Inc. Outputting a particular data quantization from memory
JP2012248110A (ja) * 2011-05-30 2012-12-13 Toshiba Corp マルチチャネルを有するメモリ装置及び同装置における誤り訂正チャネル決定を含む書き込み制御方法
US8700972B2 (en) * 2011-08-17 2014-04-15 Broadcom Corporation Adaptive ultra-low voltage memory
US9058880B2 (en) * 2013-02-04 2015-06-16 National Tsing Hua University Unequal bit reliability information storage method for communication and storage systems
US9256276B2 (en) * 2013-09-27 2016-02-09 Intel Corporation Utilization of processor capacity at low operating frequencies
US8988946B1 (en) 2014-07-07 2015-03-24 Sandisk Technologies Inc. Selective sense amplifier enablement
US9594615B2 (en) 2014-09-30 2017-03-14 Apple Inc. Estimating flash quality using selective error emphasis
US9406377B2 (en) * 2014-12-08 2016-08-02 Sandisk Technologies Llc Rewritable multibit non-volatile memory with soft decode optimization
US11115062B2 (en) * 2018-03-16 2021-09-07 SK Hynix Inc. Memory system with adaptive threshold decoding and method of operating such memory system
US10860918B2 (en) * 2018-08-21 2020-12-08 Silicon Storage Technology, Inc. Analog neural memory system for deep learning neural network comprising multiple vector-by-matrix multiplication arrays and shared components
US11257546B2 (en) * 2020-05-07 2022-02-22 Micron Technology, Inc. Reading of soft bits and hard bits from memory cells
KR20220000576A (ko) 2020-06-26 2022-01-04 에스케이하이닉스 주식회사 메모리 장치 및 이의 동작 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002149486A (ja) * 1991-12-19 2002-05-24 Toshiba Corp メモリシステム
JP3348248B2 (ja) * 1992-04-22 2002-11-20 富士通株式会社 半導体記憶装置及びその情報の消去・書き込み方法
KR0169419B1 (ko) * 1995-09-28 1999-02-01 김광호 불휘발성 반도체 메모리의 독출방법 및 장치
US6621739B2 (en) * 2002-01-18 2003-09-16 Sandisk Corporation Reducing the effects of noise in non-volatile memories through multiple reads
US6983428B2 (en) 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US7073103B2 (en) * 2002-12-05 2006-07-04 Sandisk Corporation Smart verify for multi-state memories
US7095644B2 (en) * 2003-12-22 2006-08-22 Unity Semiconductor Corporation Conductive memory array having page mode and burst mode read capability
US7099179B2 (en) * 2003-12-22 2006-08-29 Unity Semiconductor Corporation Conductive memory array having page mode and burst mode write capability
KR100590219B1 (ko) 2004-12-01 2006-06-19 삼성전자주식회사 프로그램 시간을 줄일 수 있는 불 휘발성 메모리 장치
US7301817B2 (en) * 2005-10-27 2007-11-27 Sandisk Corporation Method for programming of multi-state non-volatile memory using smart verify
US7502254B2 (en) * 2006-04-11 2009-03-10 Sandisk Il Ltd Method for generating soft bits in flash memories
JP4874721B2 (ja) * 2006-06-23 2012-02-15 株式会社東芝 半導体記憶装置
JP4896605B2 (ja) * 2006-07-04 2012-03-14 株式会社東芝 不揮発性半導体記憶システム
US20080157169A1 (en) * 2006-12-28 2008-07-03 Yuan Jack H Shield plates for reduced field coupling in nonvolatile memory

Also Published As

Publication number Publication date
WO2009156876A1 (en) 2009-12-30
CN102132354A (zh) 2011-07-20
EP2301034B1 (en) 2014-06-11
KR101674225B1 (ko) 2016-11-08
TW201003666A (en) 2010-01-16
KR20110033222A (ko) 2011-03-30
EP2301034A1 (en) 2011-03-30
US20090319872A1 (en) 2009-12-24
US8433980B2 (en) 2013-04-30
JP2011525681A (ja) 2011-09-22
CN102132354B (zh) 2015-08-26
TWI489483B (zh) 2015-06-21

Similar Documents

Publication Publication Date Title
JP5559778B2 (ja) フラッシュメモリにおける高速低電力のデータ読み出し
KR100842680B1 (ko) 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템
KR100348774B1 (ko) 플래시형코어를갖는소거/기록가능롬어레이
TWI389121B (zh) 具有改良程式化準確性之快閃記憶體及相關方法
KR101736792B1 (ko) 플래시 메모리 및 그것의 셀프 인터리빙 방법
US7406649B2 (en) Semiconductor memory device and signal processing system
EP2187315B1 (en) Method for accessing data in flash memory and data accessing controller
US9281068B2 (en) Nonvolatile memory and related reprogramming method
US20110119436A1 (en) Flash memory system and data writing method thereof
TWI582779B (zh) 讀取電壓準位估測方法、記憶體儲存裝置及記憶體控制電路單元
US8214725B2 (en) Memory access system
US20040030971A1 (en) Flash memory
KR20030068202A (ko) 비휘발성 메모리의 효율적인 데이터 검증 동작을 위한구조 및 방법
JP2003076615A (ja) 不揮発性半導体記憶装置
WO2007116393A2 (en) Method for generating soft bits in flash memories
WO2023134297A1 (en) Memory device, memory system, and method of operating the same
JP2011044200A (ja) 不揮発性半導体記憶装置
JP4256307B2 (ja) メモリカード
JP7018089B2 (ja) 半導体記憶装置および読出し方法
JP2023120450A (ja) 半導体記憶装置および誤り検出訂正方法
US10720943B2 (en) Data storage device, operation method thereof and storage system having the same
JP4582078B2 (ja) メモリコントローラ及びフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2010129154A (ja) 不揮発性半導体記憶装置
JP2004039055A (ja) 不揮発性半導体記憶装置
US20230223085A1 (en) Memory device, memory system, and method of operating the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130514

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130813

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130820

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130912

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130920

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131010

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131018

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140606

R150 Certificate of patent or registration of utility model

Ref document number: 5559778

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees