(57)【要約】【課題】  異なる信頼性を有するメモリを提供する。【解決手段】  複数のメモリセルを有するメモリを含む回路であって、メモリが、第１の範囲と、第２の範囲とを有し、少なくとも１つのメモリセルが、第１の範囲の一部と、第２の範囲の一部とを含み、第１の範囲が、第２の範囲よりも低い信頼性を有し、回路が、第１のビットが第１の範囲に記憶され、第２のビットが第２の範囲に記憶されるように適合される回路が提案される。さらに、メモリを読み出すための回路、ならびにメモリへの書込みおよび読出しのための方法が提供される。【選択図】      図４
2018045685.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを有するメモリを含む回路であって、
前記メモリが、第１の範囲と、第２の範囲とを有し、
少なくとも１つのメモリセルが、前記第１の範囲の一部と、前記第２の範囲の一部とを含み、
前記第１の範囲が、前記第２の範囲よりも低い信頼性を有し、
前記回路が、第１のビットが前記第１の範囲に記憶され、第２のビットが前記第２の範囲に記憶されるように適合される
回路。
【請求項２】
前記メモリセルが、そこに記憶されているデジタル値に応じた物理的値を取り、前記第２の範囲の異なるデジタル値に対応する前記物理的値の頻度分布が、前記第１の範囲の異なるデジタル値に対応する頻度分布よりも小さい重畳を有する請求項１に記載の回路。
【請求項３】
１つのメモリセルにつき３つ以上の値を記憶可能である請求項１または２に記載の回路。
【請求項４】
前記メモリが不揮発性メモリである請求項１〜３のいずれか一項に記載の回路。
【請求項５】
少なくとも１つの前記第１のビットに対して、同じメモリセルに記憶されている前記第２のビットが存在する請求項１〜４のいずれか一項に記載の回路。
【請求項６】
前記少なくとも１つの第１のビットの各々に対して、同じメモリセルに記憶可能な前記第２のビットが存在する請求項５に記載の回路。
【請求項７】
前記第１のビットと前記第２のビットとが異なる請求項５または６に記載の回路。
【請求項８】
誤りのない場合に、前記メモリに記憶されている前記第１のビットの１つ、および／または前記メモリに記憶されている前記第２のビットの１つが、誤り符号の符号語のビットである請求項１〜７のいずれか一項に記載の回路。
【請求項９】
誤りのない場合に、前記メモリに記憶されている前記第１のビット、アドレスビット、および／またはアドレスビットから導出されたビットに基づいて、誤り符号の符号語が決定可能である請求項８に記載の回路。
【請求項１０】
誤りのない場合に、前記メモリに記憶されている前記第１のビットの１つが、第１の誤り符号の符号語のビットである請求項１〜９のいずれか一項に記載の回路。
【請求項１１】
誤りのない場合に、前記メモリに記憶されている前記第２のビットの１つが、第２の誤り符号の符号語のビットである請求項１〜１０のいずれか一項に記載の回路。
【請求項１２】
前記第１の誤り符号と前記第２の誤り符号とが、異なるまたは同じ誤り符号である請求項１０または１１に記載の回路。
【請求項１３】
前記第１の誤り符号が、前記第２の誤り符号よりも高い訂正性能を有する請求項１０〜１２のいずれか一項に記載の回路。
【請求項１４】
前記第１の範囲からの前記メモリからの読出し時に、前記第１の誤り符号によって訂正された第１のビットが提供されるように適合される請求項１０〜１３のいずれか一項に記載の回路。
【請求項１５】
さらなるメモリを含み、前記回路が、前記訂正された第１のビットが前記さらなるメモリに記憶されるように適合される請求項１４に記載の回路。
【請求項１６】
前記訂正された第１のビットが、さらなる誤り符号を使用して符号化され、前記さらなるメモリに記憶されるように適合される請求項１５に記載の回路。
【請求項１７】
誤りのない場合に、前記さらなるメモリに記憶されているビット、アドレスビット、および／またはアドレスビットから導出されたビットに基づいて、さらなる誤り符号の符号語が決定可能である請求項１６に記載の回路。
【請求項１８】
前記さらなるメモリが揮発性または不揮発性メモリである請求項１５〜１７のいずれか一項に記載の回路。
【請求項１９】
前記メモリの前記メモリセルが、少なくとも３つの参照値Ｒｌ、Ｒｍ、Ｒｒを使用して書き込まれ、または読み出され、ここで、Ｒｌ＜Ｒｍ＜Ｒｒであり、
前記メモリセルに値ｚが記憶され、
前記第２のビットの１つのビットの値が、前記値ｚと参照値Ｒｍとの比較によって決定され、
前記第１のビットの１つのビットの値が、前記値ｚと、前記参照値Ｒｍ、および参照値Ｒｍとは異なる少なくとも１つのさらなる参照値との比較によって決定される
ように適合された請求項１〜１８のいずれか一項に記載の回路。
【請求項２０】
前記メモリセルが、前記値ｚに関して、誤りのない場合に、
ｚ＜Ｒｍに関しては、｜Ｒｌ−ｚ｜＜｜Ｒｍ−ｚ｜、および
ｚ＞Ｒｍに関しては、｜Ｒｒ−ｚ｜＜｜Ｒｍ−ｚ｜
が成り立つように書き込まれる請求項１９に記載の回路。
【請求項２１】
複数のメモリセルを有するメモリを含む回路であって、
前記メモリが、第１の範囲と、第２の範囲とを有し、
少なくとも１つのメモリセルが、前記第１の範囲の一部と、前記第２の範囲の一部とを含み、
前記回路が、前記第１の範囲に関する第１の処理ユニットを含み、ここで、前記第１の処理ユニットが、前記第１の範囲から第１のビットを読み出して処理し、
前記回路が、前記第２の範囲に関する第２の処理ユニットを含み、ここで、前記第２の処理ユニットが、前記第２の範囲から第２のビットを読み出して処理する
回路。
【請求項２２】
前記第１の処理ユニットに基づいて誤り認識および／または誤り訂正が実施可能である請求項２１に記載の回路。
【請求項２３】
前記第１の処理ユニットに基づいて読み出された第１のビットが、誤りのない場合に、第１の誤り符号の符号語である請求項２１に記載の回路。
【請求項２４】
前記第２の処理ユニットに基づいて誤り認識および／または誤り訂正が実施可能である請求項２１〜２３のいずれか一項に記載の回路。
【請求項２５】
前記第２の処理ユニットに基づいて読み出された第２のビットが、誤りのない場合に、第２の誤り符号の符号語である請求項２１に記載の回路。
【請求項２６】
前記第１の範囲が、前記第２の範囲よりも低い信頼性を有する請求項１〜２５のいずれか一項に記載の回路。
【請求項２７】
メモリにビットを記憶するための方法であって、
前記メモリが、複数のメモリセルを有し、
前記メモリが、第１の範囲と、第２の範囲とを有し、
少なくとも１つのメモリセルが、前記第１の範囲の一部と、前記第２の範囲の一部とを含み、
前記第１の範囲が、前記第２の範囲よりも低い信頼性を有し、
前記方法が、第１のビットを前記第１の範囲に記憶し、第２のビットを前記第２の範囲に記憶するステップを含む
方法。
【請求項２８】
前記メモリセルが、そこに記憶されているデジタル値に応じた物理的値を取り、前記第２の範囲の異なるデジタル値に対応する前記物理的値の頻度分布が、前記第１の範囲の異なるデジタル値に対応する頻度分布よりも小さい重畳を有する請求項２７に記載の方法。
【請求項２９】
メモリからのビットを処理するための方法であって、
前記メモリが、複数のメモリセルを有し、
前記メモリが、第１の範囲と、第２の範囲とを有し、
少なくとも１つのメモリセルが、前記第１の範囲の一部と、前記第２の範囲の一部とを含み、
前記方法が、
第１の処理ユニットによって、前記第１の範囲から第１のビットを読み出して処理するステップと、
第２の処理ユニットによって、前記第２の範囲から第２のビットを読み出して処理するステップと
を含む方法。
【請求項３０】
前記処理が、それぞれ、誤り認識および／または誤り訂正を含む請求項２９に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
揮発性または不揮発性メモリの個々のメモリセルに複数の値を記憶することが知られている。
【先行技術文献】
【特許文献】
【０００２】
【特許文献１】米国特許第８，９３５，５９０号明細書
【特許文献２】米国特許第９，２０３，４３７号明細書
【非特許文献】
【０００３】
【非特許文献１】Ｌｉｎ，  Ｓ．，  Ｃｏｓｔｅｌｌｏ，  Ｄ．：  “Ｅｒｒｏｒ  Ｃｏｎｔｒｏｌ  Ｃｏｄｉｎｇ，  Ｆｕｎｄａｍｅｎｔａｌｓ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ“，  Ｐｅａｒｓｏｎ  Ｅｄｕｃａｔｉｏｎ，  Ｌｏｎｄｏｎ，  ２００４，  （２０５〜２１７頁；８５２〜８５５頁）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、１つのメモリでのビットの効率的な記憶に関する可能性を提供することである。
【課題を解決するための手段】
【０００５】
この目的は、独立請求項の特徴に従って解決される。好ましい実施形態は、特に、従属請求項から理解することができる。
【０００６】
この目的を達成するために、
−複数のメモリセルを有するメモリを含む回路であって、
−メモリが、第１の範囲と、第２の範囲とを有し、
−少なくとも１つのメモリセルが、第１の範囲の一部と、第２の範囲の一部とを含み、
−第１の範囲が、第２の範囲よりも低い信頼性を有し、
−回路が、第１のビットが第１の範囲に記憶され、第２のビットが第２の範囲に記憶されるように適合される
回路が提案される。
【０００７】
回路とは、例えば、場合によっては書込みおよび／または読出しの追加の回路を有するメモリ装置でよい。
【０００８】
第１のビットは、第１の情報とみなすこともでき、第２のビットは、第２の情報とみなすこともできる。第１の情報は、第２の情報とは異なることがある。例えば、第１の情報がデータを含み、第２の情報がプログラムコードを含んでいてよく、またはその逆でもよい。メモリセルは、２つの範囲（例えばＬＳＢおよびＭＳＢ）へのその区分により、異なる情報を記憶するために使用することができる。より低い信頼性を有する第１の範囲は、例えば誤り訂正を施すことができる。第２の範囲も（場合によってはより簡単な）誤り訂正を施すことができる。
【０００９】
一改良形態は、メモリセルが、そこに記憶されているデジタル値に応じた物理的値を取り、第２の範囲の異なるデジタル値に対応する物理的値の頻度分布が、第１の範囲の異なるデジタル値に対応する頻度分布よりも小さい重畳を有するものである。
【００１０】
メモリセルの一範囲に記憶されている各デジタル値は、（例えば読出し時に）物理的値の頻度分布に対応する。したがって、読出し時に、記憶されているデジタル値を別のデジタル値と高い安全性で区別することができるように、２つのデジタル値に属する物理的値の頻度分布が重畳を有さない、または小さい重畳しか有さないことが好ましい。より高い信頼性を保証する範囲に関しては、その範囲に記憶されているデジタル値は、互いに十分に離れており読出し時に（より）確実な認識を実現する物理的値に変換される。
【００１１】
それに対応して、より低い信頼性の第１の範囲に記憶されているデジタル値に関しては、これらのデジタル値に属する物理的値の関連の頻度分布がより大きい重畳を有し得ると言える。例えば、（より高い信頼性の第２の範囲と比較して）より低い信頼性で第１の範囲から読み出されることがあるこれらのデジタル値に関して、信頼性を高めるために誤り認識および／または誤り訂正を提供することができる。当然、第２の範囲に関して誤り認識および／または誤り訂正を提供することも可能である。
【００１２】
範囲とは、例えば、メモリセルのＭＳＢまたはＬＳＢである。例えば、ＬＳＢが０であるデジタル値の頻度分布が、ＬＳＢが１であるデジタル値の頻度分布とは異なる限り、ＬＳＢは、ＭＳＢよりも高い信頼性を有することができる。これは、頻度分布が重畳を有さない場合である。したがって、ＬＳＢが値０を有するいくつかの頻度分布を、ＬＳＢ＝０である頻度分布と解釈することができる。同様のことが、ＬＳＢ＝１についても成り立つ。
【００１３】
一改良形態は、１つのメモリセルにつき３つ以上の値を記憶可能であるものである。
【００１４】
特に、１つのオプションは、１つのメモリセルにつき３つ以上のビット、特に５つ以上の値が記憶されることである。
【００１５】
一改良形態は、メモリが不揮発メモリであるものである。
【００１６】
一改良形態は、少なくとも１つの第１のビットに対して、メモリの同じメモリセルに記憶されている第２のビットが存在するものである。
【００１７】
一改良形態は、各第１のビットに対して、メモリの同じメモリセルに記憶可能な第２のビットが存在するものである。
【００１８】
一改良形態は、第１のビットと第２のビットが異なるものである。
【００１９】
一改良形態は、誤りのない場合に、メモリに記憶されている第１のビットの１つ、および／またはメモリに記憶されている第２のビットの１つが、誤り符号の符号語のビットであるものである。
【００２０】
誤り符号は、誤り認識および／または誤り訂正符号でよい。
【００２１】
一改良形態は、誤りのない場合に、メモリに記憶されている第１のビット、アドレスビット、および／またはアドレスビットから導出されたビットに基づいて、誤り符号の符号語が決定可能であるものである。
【００２２】
したがって、特に、メモリは、アドレス指定可能なメモリであり、符号語を決定するときに、アドレスのビットまたはアドレスから導出されるビットを考慮に入れることができる。したがって、誤りのない場合には、第１のビットまたは第１のビットの一部は、アドレスビットおよび／または導出されたビットと共に符号語を表す。それに対して、書込みエラーがある場合、この書込みエラーを誤り符号に基づいて認識し、場合によっては訂正することができる。
【００２３】
特に、１つのオプションは、アドレスビットまたは（アドレスビットから）導出されたビットがメモリに記憶されることである。
【００２４】
アドレスエラーは、例えば符号語が存在しないことによって認識することができる。
【００２５】
一改良形態は、誤りのない場合に、メモリに記憶されている第１のビットの１つが、第１の誤り符号の符号語のビットであるものである。
【００２６】
一改良形態は、誤りのない場合に、メモリに記憶されている第２のビットの１つが、第２の誤り符号の符号語のビットであるものである。
【００２７】
一改良形態は、第１の誤り符号と第２の誤り符号とが、異なるまたは同じ誤り符号であるものである。
【００２８】
一改良形態は、第１の誤り符号が、第２の誤り符号よりも高い訂正性能を有するものである。
【００２９】
第１の範囲が第２の範囲よりも低い信頼性を有するので、第１の誤り符号は、それに対応する、第２の誤り符号よりも高度な誤り訂正を可能にするように構成することができる。
【００３０】
一改良形態は、メモリの第１の範囲からの読出し時に、第１の誤り符号によって訂正された第１のビットが提供されるように回路が適合されるものである。
【００３１】
一改良形態は、回路がさらなるメモリを含み、回路が、訂正された第１のビットがさらなるメモリに記憶されるように適合されるものである。
【００３２】
一改良形態は、訂正された第１のビットが、さらなる誤り符号を使用して符号化され、さらなるメモリに記憶されるように回路が適合されるものである。
【００３３】
ここで、（第１の）メモリの第１の範囲から読み出されたビットが、第１の誤り符号による訂正後に、もう一度、さらなる誤り符号で保護されて、さらなる（第２の）メモリに記憶されることが利点である。したがって、第１のメモリの第１の範囲のより低い信頼性にも関わらず、第１のビットを最終的には誤りのない状態で(場合によっては訂正して)さらに処理することができることが高い確率で保証される。
【００３４】
一改良形態は、誤りのない場合に、さらなるメモリに記憶されているビット、アドレスビット、および／またはアドレスビットから導出されたビットに基づいて、さらなる誤り符号の符号語が決定可能であるものである。
【００３５】
したがって、特に、メモリは、アドレス指定可能なメモリであり、符号語を決定するときに、アドレスのビットまたはアドレスから導出されるビットを考慮に入れることができる。それにより、例えば、誤りのない場合には、第１の誤り符号によって訂正された第１のビットまたはそれらの一部が、アドレスビットおよび／または導出されたビットと組み合わさって、さらなる誤り符号の符号語となる。書込みエラーがある場合、この書込みエラーは、そのようにして符号化されたデータをさらなるメモリから読み出すときに、さらなる誤り符号に基づいて認識し、場合によっては訂正することができる。
【００３６】
特に、１つのオプションは、アドレスビットまたは（アドレスビットから）導出されたビットがメモリに記憶されることである。
【００３７】
一改良形態は、さらなるメモリが揮発性または不揮発性メモリであるものである。
【００３８】
一改良形態は、回路が、
−メモリのメモリセルが、少なくとも３つの参照値Ｒｌ、Ｒｍ、Ｒｒを使用して書き込まれ、または読み出され、ここで、Ｒｌ＜Ｒｍ＜Ｒｒであり、
−メモリセルに値ｚが記憶され、
−第２のビットの１つのビットの値が、値ｚと参照値Ｒｍとの比較によって決定され、
−第１のビットの１つのビットの値が、値ｚと、参照値Ｒｍ、および参照値Ｒｍとは異なる少なくとも１つのさらなる参照値との比較によって決定される
ように適合されるものである。
【００３９】
一改良形態は、メモリセルが、値ｚに関して、誤りのない場合に、以下のことが成り立つように書き込まれるものである：
ｚ＜Ｒｍに関しては、｜Ｒｌ−ｚ｜＜｜Ｒｍ−ｚ｜、および
ｚ＞Ｒｍに関しては、｜Ｒｒ−ｚ｜＜｜Ｒｍ−ｚ｜
【００４０】
さらに、
−複数のメモリセルを有するメモリを含む回路であって、
−メモリが、第１の範囲と、第２の範囲とを有し、
−少なくとも１つのメモリセルが、第１の範囲の一部と、第２の範囲の一部とを含み、
−回路が、第１の範囲に関する第１の処理ユニットを含み、ここで、第１の処理ユニットが、第１の範囲から第１のビットを読み出して処理し、
−回路が、第２の範囲に関する第２の処理ユニットを含み、ここで、第２の処理ユニットが、第２の範囲から第２のビットを読み出して処理する
回路が提案される。
【００４１】
したがって、メモリのメモリセルからのビットの読出しを担当する２つの処理ユニットがあり、ここで、処理ユニットの各１つが、メモリセルの一部からビットを読み出して処理する。処理は、例えば誤り認識および／または誤り訂正を含むことがある。
【００４２】
一改良形態は、第１の処理ユニットに基づいて誤り認識および／または誤り訂正が実施可能であるものである。
【００４３】
一改良形態は、第１の処理ユニットに基づいて読み出された第１のビットが、誤りのない場合に、第１の誤り符号の符号語であるものである。
【００４４】
一改良形態は、第２の処理ユニットに基づいて誤り認識および／または誤り訂正が実施可能であるものである。
【００４５】
一改良形態は、第２の処理ユニットに基づいて読み出された第２のビットが、誤りのない場合に、第２の誤り符号の符号語であるものである。
【００４６】
第１の誤り符号と第２の誤り符号とは、同一の誤り符号でも異なる誤り符号でもよい。
【００４７】
一改良形態は、第１の範囲が第２の範囲よりも低い信頼性を有するものである。
【００４８】
また、メモリにビットを記憶するための方法であって、
−メモリが、複数のメモリセルを有し、
−メモリが、第１の範囲と、第２の範囲とを有し、
−少なくとも１つのメモリセルが、第１の範囲の一部と、第２の範囲の一部とを含み、
−第１の範囲が、第２の範囲よりも低い信頼性を有し、
−方法が、第１のビットを第１の範囲に記憶し、第２のビットを第２の範囲に記憶するステップを含む
方法が提示される。
【００４９】
一改良形態は、メモリセルが、そこに記憶されているデジタル値に応じた物理的値を取り、第２の範囲の異なるデジタル値に対応する物理的値の頻度分布が、第１の範囲の異なるデジタル値に対応する頻度分布よりも小さい重畳を有するものである。
【００５０】
さらに、メモリからのビットを処理するための方法であって、
−メモリが、複数のメモリセルを有し、
−メモリが、第１の範囲と、第２の範囲とを有し、
−少なくとも１つのメモリセルが、第１の範囲の一部と、第２の範囲の一部とを含み、
−方法が、
−第１の処理ユニットによって、第１の範囲から第１のビットを読み出して処理するステップと、
−第２の処理ユニットによって、第２の範囲から第２のビットを読み出して処理するステップと
を含む方法が提案される。
【００５１】
一改良形態は、処理が、それぞれ誤り認識および／または誤り訂正を含むものである。
【００５２】
回路または本明細書で述べる処理ユニットは、例えば、プロセッサユニットおよび／または少なくとも一部が有線の回路構成もしくは論理回路構成を含むことができ、そのような回路構成は、例えば本明細書で述べるように方法を実施可能であるように適合されていることに留意されたい。
【００５３】
特に、回路および／または処理ユニットに関して、各種のプロセッサまたは計算機またはコンピュータに、適宜必要な周辺機器（メモリ、入出力インターフェース、入出力デバイスなど）を提供することができる。
【００５４】
方法に関する上記の説明は、それに対応して装置にも当て嵌まり、逆に、方法の特徴を装置（回路）の特徴と組み合わせることもできる。
【００５５】
さらに、回路は、１つの構成要素に、または複数の構成要素に分散して実装することができる。
【００５６】
また、上記の目的は、本明細書で述べる回路の少なくとも１つを含むシステムによって解決される。
【００５７】
さらに、上記の目的を達成するために、デジタルコンピュータのメモリに直接ロード可能なコンピュータプログラム製品であって、本明細書で述べる方法のステップを実施するのに適したプログラムコード部分を含むコンピュータプログラム製品が提示される。
【００５８】
また、上記の目的を達成するために、コンピュータによって実施可能な命令を含むコンピュータ読出し可能なメモリ媒体であって、命令が、本明細書で述べる方法のステップをコンピュータが実施するのに適している、コンピュータ読出し可能なメモリ媒体が提示される。
【００５９】
以下、本発明の上述した特性、特徴、および利点、ならびにそれらが実現される様式を、例示的実施形態の概略的な記述と共に述べる。それらの例示的実施形態は、図面に関連してより詳細に説明する。ここで、分かりやすくするために、同一または同一の効果をもたらす要素には同じ参照符号を付すことができる。
【図面の簡単な説明】
【００６０】
【図１】２進メモリセルからの読出し時に取得することができるアナログ値の２つの頻度分布、ならびに参照値を含む図であって、頻度分布が重畳範囲を有さない図である。
【図２】２進メモリセルからの読出し時に取得することができる２つの頻度分布、ならびに参照値を含む図であって、頻度分布が重畳範囲を有さない図である。
【図３】２進メモリセルからの読出し時に取得することができる４つの頻度分布と、頻度分布のうちの各２つの間にある３つの参照値と、参照値の領域での３つの重畳範囲とを含む図である。
【図４】２進メモリセルからの読出し時に取得することができる４つの頻度分布と、頻度分布のうちの各２つの間にある３つの参照値と、２つのみの重畳範囲とを含む図である。
【図５】２進メモリセルからの読出し時に取得することができる３つの頻度分布と、頻度分布のうちの各２つの間にある２つの参照値と、ただ１つの重畳範囲とを含む図である。
【図６】メモリの例示的な図であって、ここで、１つのアドレスにつき６４個のメモリセルにデータを記憶することができ、各メモリセルが、４つの異なるデジタル値を記憶することができる図である。
【図７】メモリの代替図であって、ここで、１つのアドレスにつき７２個のメモリセルにデータを記憶することができ、各メモリセルが、４つの異なるデジタル値を記憶することができる図である。
【図８】第２のメモリとして提供することができ、場合によっては第１のメモリから読み出されたＬＳＢを記憶する働きをするメモリの例示的な図である。
【図９】図８による第２のメモリに対して例として提供された第１のメモリの例示的な図である。
【図１０ａ】ＬＳＢがＭＳＢよりも高い信頼性で（第１の）メモリのメモリセルに記憶される例示的な回路構成を示す図である。
【図１０ｂ】図１０ａに基づき、さらにまたＬＳＢが誤り符号および関連の訂正可能性を与えられている、例示的な回路構成を示す図である。
【図１０ｃ】図１０ａまたは図１０ｂに基づく例示的な回路構成であって、第２のメモリに記憶されているデータに関してさらなるエンコーダおよびさらなる訂正ユニットが提供されている図である。
【図１０ｄ】エンコーダおよび訂正ユニットが第１のメモリのアドレスも考慮に入れる、図１０ａに基づく例示的な回路構成を示す図である。
【図１０ｅ】エンコーダおよびＬＳＢの訂正ユニットが、第１のメモリのアドレスから導出される関数も考慮に入れる、図１０ｂに基づく例示的な回路構成を示す図である。
【図１０ｆ】さらなるエンコーダおよびさらなる訂正ユニットが、第２のメモリのアドレスも考慮に入れる、図１０ｃに基づく例示的な回路構成を示す図である。
【図１１】メモリセルの制御ゲートでの電圧ＶＧＳに関してカットオフ電圧Ｖｔｈを表すためのグラフである。
【発明を実施するための形態】
【００６１】
メモリセルは、異なるデジタル値に対応する異なる物理的値または状態を取ることができる。
【００６２】
本明細書では以後、特に以下の略称を使用する：
Ｇ：物理的値、例えば電流、電圧、抵抗；
ＷＧ：メモリセルの物理的値；
ＷＤ：メモリセルに記憶されるデジタル値；
ＷＡ：メモリセルから読み出される物理的値；
ＬＳＢ：最下位ビット（ｌｅａｓｔ  ｓｉｇｎｉｆｉｃａｎｔ  ｂｉｔ）；
ＭＳＢ：最上位ビット（ｍｏｓｔ  ｓｉｇｎｉｆｉｃａｎｔ  ｂｉｔ）
【００６３】
例えば、メモリセルの物理的値は電気抵抗であり得る。その場合、より大きい抵抗がデジタル２進値０に対応し、より小さい抵抗がデジタル２進値１に対応することがある。より大きい抵抗がデジタル２進値１に対応し、より小さい抵抗がデジタル２進値０に対応してもよい。
【００６４】
メモリセルへの情報の記憶または書込み時、メモリセルの物理的値または状態は、記憶されているデジタル値に対応するように決定される。
【００６５】
例えば、メモリセルへの書込みの持続時間および／または書込み電流が、メモリセルの物理的値ＷＧまたは状態、したがってメモリセルに記憶されるデジタル値を決定することが可能である。
【００６６】
メモリセルへの情報の書込み時に決定されたメモリセルの状態ＷＧに応じた物理的なアナログ値ＷＡを、メモリセルからの読出し時に決定することができる。誤りのない場合には、読み出された値ＷＡから、関連の記憶されている値ＷＤが得られる。この値ＷＤは、本明細書では、例えばデジタル値または２進値とも呼ばれる。
【００６７】
例えば、異なる電気抵抗値が異なる状態に対応する場合、メモリセルに記憶されている情報の読出し時に、メモリセルの抵抗、したがって記憶されているデジタル値に応じた電流を出力することができる。例えば、ＷＧは抵抗値であり、ＷＡは電流の強さであり、ＷＤは２進値０または１（または別のデジタル値）である。
【００６８】
メモリセルからの情報の読出し時、読み出された値ＷＡを参照値Ｒと比較することができる。
【００６９】
より大きい抵抗が２進値０に対応し、より小さい抵抗が２進値１に対応する場合、読み出された電流の強さの値ＷＡに関して、以下のことが得られる：より小さい電流の強さの値が２進値０に対応し、より大きい電流の強さの値が２進値１に対応する。
【００７０】
それに対応して、メモリセルからの読出し時、前にメモリセルに２進値０が書き込まれたか２進値１が書き込まれたかに応じた大きさを有する電圧を決定することができる。
【００７１】
代替として、読出し時、前にメモリセルに２進値０が書き込まれたか２進値１が書き込まれたかに応じた別の物理量の値が決定されてもよい。
【００７２】
読み出された値ＷＡと参照値Ｒとの比較によってデジタル値ＷＤが決定される場合、デジタル値ＷＤに関して、以下のことが成立し得る：
【数１】
2018045685.tif 000003
【００７３】
複数のメモリセルに２進値０が書き込まれる場合、これらのメモリセルは、例えばランダム効果により、物理的値ＷＧの異なる値を取り、誤りのない場合には、これらの値は全て２進値ＷＤ＝０を割り当てられる。物理的値ＷＧは、中央値または期待値ＥＧ（０）を有する頻度分布によって表すことができる。同様に、メモリセルから読み出される値ＷＡも異なる値を取り、これらの値は、期待値ＥＡ（０）を有する頻度分布によって表すことができる。
【００７４】
有意には、これは、２進値１が書き込まれるメモリセルにも当て嵌まる。複数のメモリセルに２進値１が書き込まれる場合、これらのメモリセルは、例えばランダム効果により、物理的値ＷＧの異なる値を取り、誤りのない場合には、これらの値は全て２進値ＷＤ＝１に対応し、中央値または期待値ＥＧ（１）を有する頻度分布によって表すことができる。また、メモリセルから読み出される値ＷＡも異なる値を取り、これらの値は、期待値ＥＡ（１）を有する頻度分布によって表すことができる。
【００７５】
１つのメモリセルに複数ビットを記憶することが可能である場合にも、これらの実施形態が同様に成り立つ。
【００７６】
図１は、２進メモリセルからの読出し時に取得することができるアナログ値ＷＡの２つの頻度分布を例として示す。頻度分布ＷＡ（０）は期待値ＥＡ（０）を有し、頻度分布ＷＡ（１）は期待値ＥＡ（１）を有する。頻度分布ＷＡ（０）はデジタル値０に対応し、頻度分布ＷＡ（１）はデジタル値１に対応する。
【００７７】
取り得る物理的値ＷＡの値範囲は、参照値Ｒによって２つの区間に区分される。
【００７８】
図１に示される例では頻度分布ＷＡ（０）と頻度分布ＷＡ（１）は重畳しないので、２進値０または１の誤った割当ては生じない。
【００７９】
図２は、頻度分布ＷＡ（０）および頻度分布ＷＡ（１）を含むアナログ値ＷＡの２つの頻度分布を例として示し、これらの頻度分布は、参照値Ｒによって２つの区間に区分される。ここでも、頻度分布ＷＡ（０）が２進値０に対応し、頻度分布ＷＡ（１）が２進値１に対応する。頻度分布ＷＡ（０）とＷＡ（１）は、重畳範囲２０１（重畳範囲［０，１］とも呼ばれる）を有する。この重畳範囲２０１に関して、その範囲内にあるアナログ値ＷＡが２進値０に割り当てられるか２進値１に割り当てられるかは、最初は一義的には決定されない。
【００８０】
読み出されたアナログ値ＷＡに、ＷＡ＜Ｒが成り立つときには２進値０が割り当てられ、ＷＡ≧Ｒが成り立つときには２進値１が割り当てられる場合、アナログ値ＷＡが重畳範囲２０１内にあると、２進値０または１として記憶されている値が誤って読み出される可能性がある。
【００８１】
図３は、マルチレベルメモリセルからの読出し時に取得することができるアナログ値ＷＡの頻度分布を例として示す。ここでは、４つの異なる値０、１、２、および３をメモリセルに記憶することができると仮定する。それに対応して、図３には、これらの値に関して頻度分布ＷＡ（０）、ＷＡ（１）、ＷＡ（２）、およびＷＡ（３）が示され、ここで、
−頻度分布ＷＡ（０）と頻度分布ＷＡ（１）との間で、重畳範囲３０１内に参照値Ｒ−１、
−頻度分布ＷＡ（１）と頻度分布ＷＡ（２）との間で、重畳範囲３０２内に参照値Ｒ０、
−頻度分布ＷＡ（２）と頻度分布ＷＡ（３）との間で、重畳範囲３０３内に参照値Ｒ１
がある。したがって、アナログ値ＷＡの値範囲は、３つの参照値Ｒ０、Ｒ１、およびＲ−１に基づいて４つの区間に区分されており、ここで、Ｒ−１＜Ｒ０＜Ｒ１が成り立っている。
【００８２】
読み出されたアナログ値ＷＡと参照値Ｒ０、Ｒ１、およびＲ−１との比較によってデジタル値ＷＤが決定される場合、図３に示される例によれば、以下のことが成り立つ：
【数２】
2018045685.tif 000004
【００８３】
図３に示される例では、頻度分布は重畳する：重畳範囲３０１内で、値０と１に対応するアナログ値に関する頻度分布ＷＡ（０）とＷＡ（１）が重畳する；この重畳範囲３０１は、重畳範囲［０，１］とも呼ばれる。重畳範囲３０２内で、値１と２に対応するアナログ値に関する頻度分布ＷＡ（１）とＷＡ（２）が重畳する；この重畳範囲３０２は、重畳範囲［１，２］とも呼ばれる。重畳範囲３０３内で、値２と３に対応するアナログ値に関する頻度分布ＷＡ（２）とＷＡ（３）が重畳する；この重畳範囲３０３は、重畳範囲［２，３］とも呼ばれる。
【００８４】
重畳範囲３０１により、メモリセルに値０が書き込まれたにも関わらず、読み出されたアナログ値から値１が誤って決定されることがある。同様に、逆に、メモリセルに値１が書き込まれたにも関わらず、読み出されたアナログ値から値０が誤って決定されることがある。同様のことが、値［１，２］および［２，３］の各対にも当て嵌まる。
【００８５】
重畳範囲３０１がある場合、重畳範囲３０１がないときよりも、値０および１が正しく記憶される信頼性が低くなる可能性がある。特に、メモリからの読出し時に誤りが生じることがある；これらの誤りは、読出しエラーとも呼ばれる。
【００８６】
アナログ値ＷＡ（０）が重畳範囲３０１内にある相対頻度は、値０の正しい記憶に関する信頼性に影響を及ぼす。同様に、アナログ値ＷＡ（１）が重畳範囲３０１内にある相対頻度は、値１の正しい記憶に関する信頼性に影響を及ぼす。
【００８７】
他に誤りが生じていない場合、アナログ値ＷＡ（０）が重畳範囲３０１内にある相対頻度によって、値０の正しい記憶に関する信頼性が決定される。同様に以下のことも成り立つ：他に誤りが生じていない場合、アナログ値ＷＡ（１）が重畳範囲３０１内にある相対頻度によって、値１の正しい記憶に関する信頼性が決定される。
【００８８】
同様のことが、４つの値０、１、２、または３を取ることができるマルチレベルメモリセル内の４つのデジタル値全ての記憶の信頼性に関して成り立つ。信頼性は、アナログ値ＷＡ（０）、ＷＡ（１）、ＷＡ（２）、およびＷＡ（３）が対応する重畳範囲３０１〜３０３内にある相対頻度によって影響を及ぼされる。
【００８９】
この手法は、任意のマルチレベルメモリセルに拡張可能である：すなわち、８つのデジタル値０、１、２、３、４、５、６、および７を有するマルチレベルメモリセルでのデジタル値の記憶の信頼性は、値ＷＡ（０）、ＷＡ（１）、…、ＷＡ（７）が対応する重畳範囲［０，１］、［１，２］、［２，３］、［３，４］、［４，５］、［５，６］、および［６，７］内にある相対頻度によって影響を及ぼされる。
【００９０】
一般に、Ｎ個のデジタル値０、１、…、Ｎ−１を記憶するためのマルチレベルメモリセルでのデジタル値の記憶に関する信頼性は、アナログ値
ＷＡ（０）、ＷＡ（１）、…、ＷＡ（Ｎ−１）
が、対応するＮ−１個の重畳範囲
［０，１］、［１，２］、…、［Ｎ−２，Ｎ−１］（ここで、Ｎ＝２、３、…）
に属する相対頻度に依存する。
【００９１】
図４は、メモリセルに４つのデジタル値００、１０、０１、および１１が記憶されるときに生じる複数の頻度分布ＷＡ（００）、ＷＡ（１０）、ＷＡ（０１）、およびＷＡ（１１）を例として示す。頻度分布ＷＡ（００）は期待値ＥＡ（００）を有し、頻度分布ＷＡ（０１）は期待値ＥＡ（０１）を有し、頻度分布ＷＡ（１０）は期待値ＥＡ（１０）を有し、頻度分布ＷＡ（１１）は期待値ＥＡ（１１）を有する。
【００９２】
例として、図４では、参照値Ｒ０、Ｒ１、およびＲ−１が与えられており、ここで、
−頻度分布ＷＡ（００）と頻度分布ＷＡ（１０）との間で、重畳範囲４０１（重畳範囲［００，１０］とも呼ばれる）内に参照値Ｒ−１、
−頻度分布ＷＡ（１０）と頻度分布ＷＡ（０１）との間に参照値Ｒ０、
−頻度分布ＷＡ（０１）と頻度分布ＷＡ（１１）の間で、重畳範囲４０２（重畳範囲［０１，１１］とも呼ばれる）内に参照値Ｒ１
があり、ここで、以下のことが成り立つ：
ＥＡ（００）＜Ｒ−１＜ＥＡ（１０）＜Ｒ０＜ＥＡ（０１）＜Ｒ１＜ＥＡ（１１）
【００９３】
図４による例によれば、デジタル値ＷＤは、読み出されるアナログ値の期待値に関して以下のことが成り立つように、アナログ値ＷＧとしてメモリセルに書き込まれる：
｜ＥＡ（０１）−ＥＡ（１０）｜＞｜ＥＡ（１１）−ＥＡ（０１）｜
および
｜ＥＡ（０１）−ＥＡ（１０）｜＞｜ＥＡ（１０）−ＥＡ（００）｜
【００９４】
図４で、頻度分布ＷＡ（００）とＷＡ（１０）は重畳範囲４０１を有し、頻度分布ＷＡ（０１）とＷＡ（１１）は重畳範囲４０２を有する。それに対し、頻度分布ＷＡ（００）およびＷＡ（１０）は、頻度分布ＷＡ（０１）およびＷＡ（１１）との重畳範囲を有さない。
【００９５】
ここで、説明した例では、頻度分布は、重畳範囲が生じるように、または重畳範囲が生じないように表されていることに留意されたい。特に、本明細書で示される実施形態について、「重畳範囲がない」頻度分布に関しては、「重畳範囲がある」頻度分布よりも明らかに小さくまたは弱く特徴付けられた重畳範囲が存在することを意味する。すなわち、選択された例示的実施形態に関して、「重畳範囲がない」は、重畳範囲があるときよりも明らかに高い信頼性の読出しプロセスを可能にする。
【００９６】
重畳範囲４０１により、メモリにデジタル値００が書き込まれ、誤ってデジタル値１０として読み出されることが、いくらかの確率であり得る。逆に、メモリにデジタル値１０が書き込まれ、誤ってデジタル値００として読み出される可能性もある。
【００９７】
重畳範囲４０２により、メモリにデジタル値０１が書き込まれ、誤ってデジタル値１１として読み出されることが、いくらかの確率であり得る。逆に、メモリにデジタル値１１が書き込まれ、誤ってデジタル値０１として読み出される可能性もある。
【００９８】
図４に示される例では、頻度分布ＷＡ（００）およびＷＡ（１０）と頻度分布ＷＡ（０１）およびＷＡ（１１）との重畳範囲がないので、メモリにデジタル値００または１０が書き込まれ、誤ってデジタル値０１または１１が読み出されることは、さらなる誤りが生じていない限り起こり得ない。
【００９９】
デジタル値００および１０の最下位ビット（ＬＳＢとも呼ばれる）は、値０を有する右のビットであり、すなわち、
ＬＳＢ（００）＝ＬＳＢ（１０）＝０
である。
【０１００】
デジタル値０１および１１のＬＳＢは、値１を有する右のビットであり、すなわち、
ＬＳＢ（０１）＝ＬＳＢ（１１）＝１
である。
【０１０１】
デジタル値００の最上位ビット（ＭＳＢとも呼ばれる）は、値０を有する左のビットであり、デジタル値１０のＭＳＢは、値１を有する左のビットであり、すなわち、
ＭＳＢ（００）＝０
ＭＳＢ（１０）＝１
である。
【０１０２】
同様にして以下のことが成り立つ：
ＭＳＢ（０１）＝０
ＭＳＢ（１１）＝１
【０１０３】
図４に示される例では、デジタル値は、異なる信頼性でメモリセルに記憶されるようにメモリセルに書き込まれている。同じＬＳＢ、すなわち、
ＬＳＢ（０１）＝ＬＳＢ（１１）＝１
を有するデジタル値０１と１１に対応するアナログ値ＷＡ（０１）とＷＡ（１１）の分布は、重畳範囲４０２を有する。したがって、メモリに書き込まれているデジタル値０１が、誤って値１１として読み出されることがあり、またはメモリに書き込まれているデジタル値１１が、誤って値０１として読み出されることがある。ここで、ＭＳＢは変化し、ＬＳＢ＝１は変化しない。したがって、誤りはＭＳＢのみに作用する。
【０１０４】
デジタル値００と１０は、同じＬＳＢ、すなわち、
ＬＳＢ（００）＝ＬＳＢ（１０）＝０
を有するデジタル値００と１０に対応するアナログ値ＷＡ（００）とＷＡ（１０）の分布が重畳範囲４０１を有するようにメモリセルに書き込まれて記憶されている。したがって、メモリに書き込まれているデジタル値１０が、誤って値００として読み出されることがあり、またはメモリに書き込まれているデジタル値００が、誤って値１０として読み出されることがある。ここで、ＬＳＢ＝０は変化せず、したがって、誤りはＭＳＢのみに作用する。
【０１０５】
この例では、ＬＳＢ＝０を有するデジタル値００および１０の頻度分布ＷＡ（００）およびＷＡ（１０）は、ＬＳＢ＝１を有するデジタル値０１および１１の分布ＷＡ（０１）およびＷＡ（１１）との重畳範囲を有さないので、メモリに書き込まれているＬＳＢ＝０を有するデジタル値は、頻度分布の重畳により誤ってＬＳＢ＝１を有するデジタル値として読み出されることはない。同様に、メモリに書き込まれているＬＳＢ＝１を有するデジタル値は、頻度分布の重畳により誤ってＬＳＢ＝０を有するデジタル値として読み出されることはなく、したがって、ＬＳＢは、それに対応して高い信頼性で記憶されている。
【０１０６】
それに対し、ＭＳＢは、より低い信頼性で記憶される。なぜなら、異なるＭＳＢを有する頻度分布ＷＡ（０１）とＷＡ（１１）が重畳範囲４０２を有し、異なるＭＳＢを有する頻度分布ＷＡ（００）とＷＡ（１０）が重畳範囲４０１を有するからである。
【０１０７】
ＬＳＢとＭＳＢは、連続するステップでメモリに書き込むことができる。したがって、例えば、ＬＳＢとして、特に高い信頼性を必要とするビットをメモリセルに書き込むことが可能である。例えば、ＬＳＢによってプログラムコードを表すことができる。
【０１０８】
ＭＳＢとして、例えば、プログラムコードと比較して低い信頼性を許容する画像データを記憶することができる。画像データの数個のビットが誤っている場合でも、依然として良好に画像を表現することができ、または数個のビットエラーは画像表現において認識され得ない。それに対し、プログラムコードでの単一の誤りビットにより、プログラム全体が機能しなくなるおそれがある。同様に、誤り耐性がより高いまたは低いデータに関して別の例も知られており、本明細書で述べた手法と組み合わせることができる。
【０１０９】
また、１つのオプションは、例えばＭＳＢおよび／またはＬＳＢの信頼性を誤り符号によって高めることができることである。誤り符号の訂正機能および／または認識性能が十分に高い場合、例えば、そのような誤り訂正を使用して、ＭＳＢおよび／またはＬＳＢの記憶を所定の（高い）信頼性で行うことができる。ＬＳＢおよび／またはＭＳＢに関する誤り訂正および／または誤り認識のための誤り符号は、同じでも異なっていてもよい。
【０１１０】
以下では、例として、メモリセルへのデジタル値の書込み時、対応するアナログ値ＷＡを大きくすることができると仮定する。また、例として、メモリセルの値の削除をブロック毎に行うことができると仮定することができ、ここで、削除時、値を削除されたメモリセルでの対応するアナログ値は、小さい値、例えば最小値を取る。削除プロセスで値を削除することができるブロックは、複数のビットを含む。また、メモリセルが、個々にまたはまとめて（例えばワード毎に）値を削除される、および／または上書きされることも可能である。
【０１１１】
例えば、図４に示される表現に対応して４つのデジタル値００、１０、０１、および１１を記憶することができるメモリセルを考察する。ブロックの値の削除後、このブロックの全てのセルが、頻度分布ＷＡ（００）に対応するアナログ値を有する。これは、誤りが生じていない限り、デジタル値００に対応する。
【０１１２】
値００から始めて、値００、１０、０１、または１１の１つをメモリセルに記憶することが可能である。値００の書込み時には、状態の変化は生じない。値１０、０１、または１１の書込み時には、メモリセルのアナログ値が増加される。これは、デジタル値００が最小のアナログ値に対応し、デジタル値００から、（誤りのない場合には）値１０、０１、または１１の１つをメモリセルが表すようにアナログ値ＷＡを増加させることができるので可能である。
【０１１３】
上記の例では、例としてメモリセルによって４つの値（００、１０、０１、１１）が表されるものとして説明した。これら４つの値は、４つの値それぞれに関して、物理的に記憶されている値の頻度分布が得られるようにメモリセルに書き込まれる；頻度分布は、部分的に重畳を有する。したがって、複数の頻度分布に基づいてメモリセルの値範囲を使用し、それにより、メモリセルに複数の値が記憶されることを可能にすることができる。頻度分布はそれぞれ、デジタル値（００、１０、０１、１１）の１つに割り当てることができる物理的値を表す。
【０１１４】
したがって、頻度分布ＷＡ（１０）は、デジタル値１０に割り当てられた読み出される物理的値に対応する。このデジタル値１０は、２ビット、すなわち値１を有するＭＳＢと、値０を有するＬＳＢとからなる。
【０１１５】
メモリセルへの書込み時、書き込むべきデジタル値１０に関して、期待値ＥＡ（１０）で頻度分布ＷＡ（１０）が生じるように書込み電圧を調整することができる。
【０１１６】
同様のことが、別のデジタル値００、０１、および１１にも当て嵌まる。それにより、書込み時、デジタル値００と１０の間に重畳範囲４０１が生じ、デジタル値０１と１１の間に重畳範囲４０２が生じることが決定される。一方、デジタル値００および１０とデジタル値０１および１１との間には重畳範囲がない。これは、デジタル値のＭＳＢがより高い確率で誤っており、一方、ＬＳＢは（より）高い信頼性で読み出すことができることを意味する。
【０１１７】
したがって、書込みプロセスによって、ある範囲（ここではメモリセルのＬＳＢ）に関して、別の範囲（ここではＭＳＢ）よりも高い信頼性を提供することが定められている。ここで例として述べる範囲（ＬＳＢ、ＭＳＢ）の代わりに、メモリセルに別の区分を提供することもできる。特に、５つ以上の値を記憶することが可能である。例えば、２３＝８の値を、デジタル値０００、００１、０１０、０１１、１００、１０１、１１０、１１１として記憶することができ、ここで、これらのデジタル値は、物理的値のそれぞれの頻度分布が３つのビットの少なくとも１つに関して重畳を有さないように物理的値の値範囲に対応付けることができる。
【０１１８】
フラッシュメモリの従来のメモリセルでは、様々なセル状態がカットオフ電圧Ｖｔｈによって調整される。目標カットオフ電圧Ｖｔｈに合わせてセルをプログラミングするために、対応する電圧ＶＣＧが、メモリセルの制御ゲート（ＣＧ）に印加される。次いで、カットオフ電圧Ｖｔｈは、この電圧ＶＣＧに例えば直接従い、すなわち、
ΔＶｔｈ＝ΔＶＣＧ
である。
【０１１９】
ＬＳＢとＭＳＢに関して異なる信頼性を達成するために、例えば、カットオフ電圧ΔＶｔｈ２は、カットオフ電圧ΔＶｔｈ１およびΔＶｔｈ３よりも明らかに大きく選択することができる。したがって、ＭＳＢ（またはＬＳＢ）に関するカットオフ電圧の変位に対する大きい信号対雑音比およびより高い信頼性、したがってＬＳＢ（またはＭＳＢ）に関するより低い信頼性が実現される。
【０１２０】
図１１は、メモリセルの制御ゲートでの電圧ＶＧＳに関してカットオフ電圧Ｖｔｈを表すためのグラフを例として示す。ｘ軸にプログラム時間、ｙ軸にカットオフ電圧Ｖｔｈがプロットされている。１０μｓのプログラム時間において、制御ゲート電圧ＶＣＧ＝１０Ｖ、１１Ｖ、１２Ｖ、１３Ｖに関して異なるカットオフ電圧ΔＶｔｈ１、ΔＶｔｈ２、およびΔＶｔｈ３が示されている。
【０１２１】
すなわち、書込み時、デジタルで表される値の少なくとも一部（ここでは１ビット）に関して、関連の物理的値の頻度分布が（本質的に）重畳を有さないことが保証される。そのような重畳は、曖昧さをもたらすことになる。
【０１２２】
したがって、２つの値を有することができるそのような高信頼性のビットに関して、以下のことが成り立つ：高い信頼性のビットが第１の値を有する頻度分布は、高信頼性のビットが第２の値を有する頻度分布と重なり合わない。少なくとも１つのさらなる（場合によってはより低い信頼性の）ビットがここでどのような値を有するかは重要でない。したがって、高い信頼性のビットの第１の値は、その第２の値と高い安全性で区別可能である。したがって、この高い信頼性のビットをメモリセルで使用し、そこで、メモリのメモリセルの高い信頼性のビットのみに情報を記憶することができる。
【０１２３】
それに対応して、メモリセルの低い信頼性のビット（この例ではＭＳＢ）に関しては、より低い信頼性を甘受することができる；誤り訂正によって、信頼性を改良することができる。特に、誤り訂正値を、通常の動作で使用される高速メモリに書き込むことができる。
【０１２４】
書込みシーケンス：ＬＳＢ、次いでＭＳＢ
１つのオプションは、第１の書込みプロセスで、ＬＳＢの値をメモリセルに書き込み、その後、第２の書込みプロセスで、前に第１の書込みプロセスで既にＬＳＢを書き込まれたメモリセルに任意のＭＳＢを書き込むことである。
【０１２５】
例えば、値を削除されたメモリセルにＬＳＢの値０が記憶される場合、このメモリセルには値００が書き込まれる。この場合、メモリセルのアナログ値ＷＡ（００）は変更されない。
【０１２６】
値を削除されたメモリセルにＬＳＢの値１が記憶される場合、このメモリセルには値０１が書き込まれ、その結果、メモリセルはアナログ値ＷＡ（０１）を取る。
【０１２７】
次に、状況に応じて、以下のようにＭＳＢを記憶することができる：
１．第１のステップで、値０を有するＬＳＢが書き込まれ、したがって、メモリセルにはデジタル値００が記憶されている。
１．１．ＭＳＢが値０を有する。この場合、メモリセルへの書込みは行われず、記憶されているデジタル値は、引き続き００である。
１．２．ＭＳＢが値１を有する。この場合、メモリセルに値１０が書き込まれる。
２．第１のステップで、値１を有するＬＳＢが書き込まれ、それにより、メモリセルにはデジタル値０１が記憶されている。
２．１．ＭＳＢが値０を有する。この場合、メモリセルへの書込みは行われず、記憶されているデジタル値は、引き続き０１である。
２．２．ＭＳＢが値１を有する。この場合、メモリセルに値１１が書き込まれる。
【０１２８】
値１を有するＭＳＢの書込み時、ＬＳＢの書込み後のメモリセルの状態が、メモリセルにデジタル値１０が書き込まれることになるかデジタル値１１が書き込まれることになるかを決定する。したがって、値１を有するＭＳＢのこの書込みプロセスは、前に書き込まれたメモリセルのＬＳＢの読出しに依存する。値０を有するＭＳＢの書込み時、ＬＳＢとして前にどの値が記憶されたかは重要でない。したがって、ここで、メモリセルに記憶されている（ＬＳＢの）値の読出しを省略することができる。
【０１２９】
書込みシーケンス：ＭＳＢ、次いでＬＳＢ
まず第１の書込みプロセスで、ＭＳＢの値をメモリセルに書き込み、その後、第２の書込みプロセスで、第１の書込みプロセスで既にＭＳＢを書き込まれたメモリセルの１つに任意のＬＳＢを書き込むことも可能である。
【０１３０】
例えば、ＭＳＢの値が０である場合、このメモリセルに値００が書き込まれる。ＭＳＢの値が１である場合、対応するメモリセルに値１０が書き込まれる。
【０１３１】
次に、状況に応じて、以下のようにＬＳＢを記憶することができる：
１．第１のステップで、値０を有するＭＳＢが書き込まれ、したがって、メモリセルにはデジタル値００が記憶されている。
１．１．ＬＳＢが値０を有する。この場合、メモリセルへの書込みは行われず、記憶されているデジタル値は、引き続き００である。
１．２．ＬＳＢが値１を有する。この場合、メモリセルに値０１が書き込まれる。
２．第１のステップで、値１を有するＭＳＢが書き込まれ、したがって、メモリセルにはデジタル値１０が記憶されている。
２．１．ＬＳＢが値０を有する。この場合、メモリセルへの書込みは行われず、記憶されているデジタル値は、引き続き１０である。
２．２．ＬＳＢが値１を有する。この場合、メモリセルに値１１が書き込まれる。
【０１３２】
値１を有するＬＳＢの書込み時、ＭＳＢの書込み後のメモリセルの状態が、セルにデジタル値０１が書き込まれることになるかデジタル値１１が書き込まれることになるかを決定する。したがって、値１を有するＬＳＢのこの書込みプロセスは、前に書き込まれたメモリセルのＭＳＢの読出しに依存する。値０を有するＬＳＢの書込み時、メモリセルのＭＳＢとして前にどの値が記憶されたかは重要でない。この場合、前に記憶されているＭＳＢの値を読み出す必要はない。
【０１３３】
ここで、値を削除されたメモリセルにデジタル値００、１０、０１、または１１がそれぞれ直接書き込まれることも可能であることに留意されたい。特に、１つのオプションは、メモリセルが前にも値００を有しているときでさえ、メモリセルにデジタル値００を書き込むことである。その点で、前述した例の番号１．１．および２．１．の代替形態は、メモリセルの前の状態から変わらないときでさえ、値００が書き込まれるものである。
【０１３４】
さらなる例示的な頻度分布
図５は、３つのデジタル値０、１、および２がメモリセルに記憶されるときに生じ得るアナログ値の例示的な頻度分布ＷＡ（０）、ＷＡ（１）、およびＷＡ（２）を示す。頻度分布ＷＡ（０）は期待値ＥＡ（０）を有し、頻度分布ＷＡ（１）は期待値ＥＡ（１）を有し、頻度分布ＷＡ（２）は期待値ＥＡ（２）を有する。
【０１３５】
例として、図５には参照値Ｒ０およびＲ１が提示されており、ここで、
−頻度分布ＷＡ（０）と頻度分布ＷＡ（１）との間に参照値Ｒ０、
−頻度分布ＷＡ（１）と頻度分布ＷＡ（２）の間で、重畳範囲５０２（重畳範囲［１，２］とも呼ばれる）内に参照値Ｒ１
があり、ここで、以下のことが成り立つ：
ＥＡ（０）＜Ｒ０＜ＥＡ（１）＜Ｒ１＜ＥＡ（２）
【０１３６】
図５で選択された例によれば、頻度分布ＷＡ（０）とＷＡ（１）は重畳範囲を有さず、頻度分布ＷＡ（１）とＷＡ（２）は重畳範囲５０１を有する。
【０１３７】
重畳範囲５０１では、デジタル値１がメモリに書き込まれ、誤ってデジタル値２として読み出されることが、いくらかの確率であり得る。
【０１３８】
頻度分布ＷＡ（０）と頻度分布ＷＡ（１）およびＷＡ（２）との間には重畳範囲がないので、デジタル値０がメモリセルに書き込まれて、この値０とは異なるデジタル値１または２が読み出されることは、低い確率でしか起こり得ない。
【０１３９】
メモリ内のデータのアドレス指定
図６は、アドレス６０１およびデータ６０２を有するメモリの例示的な図を示す。１つのアドレス６０１につき６４個のメモリセルにデータ６０２を記憶することができ、ここで、各メモリセルが４つの異なるデジタル値を記憶することができる。図６に、例として、９つのアドレスａ１、ａ２、…、ａ９に関するメモリの配列が示されている。
【０１４０】
アドレスａｉ（ｉ＝１、２、…、９）はそれぞれ６４個のメモリセルをアドレス指定し、ここで、異なる形で２進符号化された４つの値を１つのメモリセルに記憶することができる。これら４つの異なる値は、２つの２進値ｘおよびｙからのタプルｘｙとして表される。ビットｘは、タプルｘｙのＭＳＢであり、ビットｙは、タプルｘｙのＬＳＢである。したがって、メモリセルに記憶されている値は、ＭＳＢおよびＬＳＢを有する。
【０１４１】
例として、ＬＳＢがＭＳＢよりも高い信頼性で記憶されていると仮定する。
【０１４２】
この例では、アドレスａ１〜ａ４は、以下のように値を設定される：
【数３】
2018045685.tif 000005
【０１４３】
これは、ビットｕおよびｖを有するｘｙタプルであり、ｖビットの値がＭＳＢとして記憶され、ｕビットの値がＬＳＢとして記憶されている。
【０１４４】
アドレスａ１の下でＬＳＢとして高い信頼性で記憶されているビットｕ１は、６４ビットのワード幅を有するデータ語を形成する。これは、同様に、
【数４】
2018045685.tif 000006
に従って、アドレスａ２、ａ３、およびａ４の下で記憶されているＬＳＢ  ｕ２、ｕ３、およびｕ４に関しても当て嵌まる。
【０１４５】
アドレスａ１、ａ２、ａ３、およびａ４の下でＭＳＢとしてより低い信頼性で記憶されているビット
【数５】
2018045685.tif 000007
は、２５６ビットのワード幅の第１のデータ語を形成する。
【０１４６】
例として、ビットｖ１は、２８個のチェックビット
【数６】
2018045685.tif 000008
を有する誤り符号のチェックビットによって保護される。この例では、ビットｕ１、ｕ２、ｕ３、およびｕ４は、追加のチェックビットによって保護されない。
【０１４７】
２８個のチェックビット
【数７】
2018045685.tif 000009
は、アドレスａ５の下で、ＭＳＢとしての３６個のデータビット
【数８】
2018045685.tif 000010
およびＬＳＢとしての６４個のデータビット
【数９】
2018045685.tif 000011
と共に記憶される。
【０１４８】
誤りのない場合、ビット
【数１０】
2018045685.tif 000012
が、第１の誤り符号Ｃｏｄ１の符号語を形成する。
【０１４９】
一般に、誤り符号は、誤り認識および／または誤り訂正符号でよい。
【０１５０】
例えば、誤り符号Ｃｏｄ１は、２５６個のデータビットのための合計２８個のチェックビットを有する追加の全パリティを有するガロア体ＧＦ（２９）による既知の３ビットエラー訂正ＢＣＨ符号でよく、この３ビットエラー訂正ＢＣＨ符号も各４ビットエラーを認識する。
【０１５１】
同様に、アドレスａ５〜ａ９は、以下のように値を設定されている：
【数１１】
2018045685.tif 000013
【０１５２】
アドレスａ５、ａ６、ａ７、ａ８、およびａ９の下でＭＳＢとしてより低い信頼性で記憶されるビット
【数１２】
2018045685.tif 000014
は、ワード幅２５６の第２のデータ語を形成する。これらの２５６個のビットｖ２は、２８個のチェックビット
【数１３】
2018045685.tif 000015
によって保護される。
【０１５３】
誤りのない場合、ビット
【数１４】
2018045685.tif 000016
が、第１の誤り符号Ｃｏｄ１の符号語を形成する。
【０１５４】
アドレスａ５の下でＬＳＢとして高い信頼性で記憶されているビットｕ５は、６４ビットのワード幅を有するデータ語を形成する。これは、同様に、
【数１５】
2018045685.tif 000017
によって、アドレスａ６、ａ７、ａ８、およびａ９の下で記憶されているＬＳＢ  ｕ６、ｕ７、ｕ８、およびｕ９に関しても当て嵌まる。
【０１５５】
この例では、ビットｕ５、ｕ６、ｕ７、ｕ８、およびｕ９は、誤り符号の追加のチェックビットによって保護されない。
【０１５６】
図７は、アドレス７０１およびデータ７０２を有するメモリの例示的な図を示す。１つのアドレス７０１につき７２個のメモリセルにデータ７０２を記憶することができ、ここで、各メモリセルが、４つの異なるデジタル値を記憶することができる。メモリセル当たりに記憶されるデジタル値はそれぞれ、２つの２進値ｘとｙのタプルｘｙとして与えることができる。
【０１５７】
ビットｘは、タプルｘｙのＭＳＢであり、ビットｙは、タプルｘｙのＬＳＢである。したがって、メモリセルに記憶されている値は、ＭＳＢおよびＬＳＢを有する。
【０１５８】
例として、ＭＳＢがＬＳＢよりも高い信頼性で記憶されていると仮定する。
【０１５９】
アドレスａ１〜ａ８の下で、それぞれ７２個のメモリセルが使用可能である。ここで、アドレスａ１〜ａ３は、以下のように値を設定されている：
【数１６】
2018045685.tif 000018
【０１６０】
２５６個のデータビット
【数１７】
2018045685.tif 000019
、および２８個のチェックビット
【数１８】
2018045685.tif 000020
は、誤りのない場合には、第１の誤り符号Ｃｏｄ１の符号語
【数１９】
2018045685.tif 000021
を形成する。これらのビットは、ＬＳＢとして、より低い信頼性で記憶される。上の例では、ビットは、「−」で特徴付けられ、その値設定は重要でない。したがって、アドレスａ４の下で、ＬＳＢの最後の４つの値は不特定である。これら最後の４つの値は、例えば、０または別の２進値に設定することができる。
【０１６１】
ビット
【数２０】
2018045685.tif 000022
は、誤りのない場合には、それぞれ第２の誤り符号Ｃｏｄ２の符号語を形成する。ここで、ｉ＝１、…、４に関して、ビット
【数２１】
2018045685.tif 000023
はデータビットであり、ビット
【数２２】
2018045685.tif 000024
はチェックビットである。
【０１６２】
同様に、アドレスａ５〜ａ８は、以下のように値を設定されている：
【数２３】
2018045685.tif 000025
【０１６３】
２５６個のデータビット
【数２４】
2018045685.tif 000026
、および２８個のチェックビット
【数２５】
2018045685.tif 000027
は、誤りのない場合には、第１の誤り符号Ｃｏｄ１の符号
【数２６】
2018045685.tif 000028
を形成する。これらのビットは、ＬＳＢとして、より低い信頼性で記憶される。
【０１６４】
ビット
【数２７】
2018045685.tif 000029
は、誤りのない場合には、それぞれ、第２の誤り符号Ｃｏｄ２の符号語を形成する。ここで、ｉ＝５、…、８に関して、ビット
【数２８】
2018045685.tif 000030
はデータビットであり、ビット
【数２９】
2018045685.tif 000031
はチェックビットである。
【０１６５】
ここで挙げた例では、アドレスａ８の下で、ＬＳＢの最後の４つの値は不特定のままである；これらのビットは、シンボル「−」で表されている。
【０１６６】
追加のメモリ
図８は、アドレス８０１およびデータ８０２を有するメモリの例示的な図を示す。図８に示されるメモリは、（追加の）第２のメモリとして提供することができる。この第２のメモリは、例えば、第１のメモリから読み出されたＬＳＢを記憶する働きをすることができる。例えば、ＬＳＢは、ＭＳＢよりも低い信頼性で記憶されることがある。
【０１６７】
例えば、場合によっては誤って読み出されたＬＳＢを、第１の誤り符号Ｃｏｄ１を使用して訂正することができ、その結果、訂正されたビットを第２のメモリに記憶することができる。
【０１６８】
任意選択で、ＬＳＢのデータビットを、誤り符号Ｃｏｄ１を使用して訂正することができ、これらの訂正されたデータビットを使用して、第３の誤り符号Ｃｏｄ３のチェックビットを形成することができる。符号Ｃｏｄ１を使用して訂正されたデータビット、およびそこから第３の誤り符号Ｃｏｄ３を使用して形成されたチェックビットは、第２の２進メモリに記憶することができる。
【０１６９】
例えば、図７が、対応する第１のメモリを示し、図８が、第２のメモリを示すと仮定する。第１のメモリに記憶されているデータが、ワード幅２５６の場合によっては誤っているＬＳＢ
【数３０】
2018045685.tif 000032
を形成し、２５６ビット幅のデータｖｉ’のそれぞれに関して、第１の誤り符号Ｃｏｄ１の２８個のチェックビット
【数３１】
2018045685.tif 000033
があり、それにより、誤っているデータビットは、第１のメモリからの読出し時に、訂正ユニットによって、第１の誤り符号Ｃｏｄ１を使用して訂正されて、訂正されたデータビット
【数３２】
2018045685.tif 000034
になる。
【０１７０】
図８に、第１の誤り符号を使用して訂正されたデータビットｖｉｃｏｒが、以下のアドレスＡ１〜Ａ３２の下で、第３の誤り符号Ｃｏｄ３の対応するチェックビットＣｉと共に記憶されることが示されている：
【数３３】
2018045685.tif 000035
【０１７１】
チェックビット
【数３４】
2018045685.tif 000036
は、第３の誤り符号Ｃｏｄ３に関して、エンコーダによって、誤りのない場合には以下のビット組合せがそれぞれ第３の誤り符号Ｃｏｄ３の符号語を形成するように決定される：
【数３５】
2018045685.tif 000037
【０１７２】
第２のメモリは、揮発性メモリ、例えばＳＲＡＭやＭＲＡＭなど、および／または不揮発性メモリを含むことができる。第１のメモリは、不揮発性メモリ、例えばフラッシュメモリなどを含むことができる。特に、１つのオプションは、第１のメモリと第２のメモリが同じまたは異なるタイプの任意のメモリであることである。
【０１７３】
１つのオプションは、より低い信頼性を有する第１のメモリに記憶されているビットが、第１のメモリから大きなワード幅で読み出され、第１の誤り符号Ｃｏｄ１を使用して訂正されることである。ここで、第１の誤り符号Ｃｏｄ１は、多数の誤りを訂正するために比較的大きい符号距離を有することができる。誤りの訂正は、例えばＢＣＨ符号に関して（非特許文献１）に記載されているように順次に行うことができる。
【０１７４】
ここで、利点は、データビットの大きなワード幅に関して、チェックビットの数を比較的小さくすることができることである。したがって、例えば、１０２４個のデータビットを有する３ビットエラー訂正ＢＣＨ符号に関して、３３個のチェックビットが必要とされることがあり、それに対し、２５６個のデータビットに関して、既に２７個のチェックビットが必要である。したがって、データビットの数を７６８個増やすときに、チェックビットの数を６だけ増加させればよい。例えば、２ｎ個のデータビットを有する符号に関して、１ビットエラーを訂正することができるようにするために、ｎ＋１個のチェックビットが必要である。したがって、１０２４個のデータビットに関して、ｎ＝１０であり、１１個のチェックビットとなる。ｔビットエラーが訂正される場合、ｔビットエラー訂正ＢＣＨ符号を使用することができる。例えば、ｔ×（ｎ＋１）個のチェックビットが得られる。３ビットエラー（ｔ＝３）に関して、前述した１０２４個のデータビットに関しては、３３個のチェックビットが必要とされ、２５６個のデータビットに関しては、３×（８＋１）＝２７個のチェックビットが必要とされる。
【０１７５】
また、（非特許文献１）によれば、誤り符号として（例えば、第１の誤り符号Ｃｏｄ１に関して）、いわゆる低密度パリティ符号を使用することも可能である。
【０１７６】
第１の誤り符号Ｃｏｄ１を使用して訂正されたビットを、第３の誤り符号Ｃｏｄ３を使用して第３の誤り符号の符号語として符号化し、それらの符号語を第２のメモリに記憶することが可能である。第２のメモリに記憶されているビットには、例えば動作実行中に高速かつ高信頼性でアクセスすることができ、ここで、第２のメモリでの記憶中に生じた誤りを、第３の誤り符号を使用して訂正することができる。同様に、メモリに記憶されているビットを様々な様式で更新および／または復元することもできる。
【０１７７】
図９は、アドレス９０１およびデータ９０２を有するメモリの例示的な図を示す。図８に示されるメモリを、前の実施形態に対応して第１のメモリとして使用することができる。
【０１７８】
１つのアドレス９０１につき８個のメモリセルにデータ９０２を記憶することができ、ここで、各メモリセルが４つの異なるデジタル値を記憶することができる。メモリセル当たりに記憶されるデジタル値はそれぞれ、２つの２進値ｘとｙのタプルｘｙとして与えることができる。
【０１７９】
ビットｘは、タプルｘｙのＭＳＢであり、ビットｙは、タプルｘｙのＬＳＢである。したがって、メモリセルに記憶される値は、ＭＳＢ（ビットｘ）およびＬＳＢ（ビットｙ）を有する。
【０１８０】
例として、ＬＳＢがＭＳＢよりも高い信頼性で記憶されていると仮定する。
【０１８１】
アドレスａ１〜ａ６の下で、それぞれ８個のメモリセルが使用可能である。ここで、アドレスａ１〜ａ６は、以下のように値を設定される：
【数３６】
2018045685.tif 000038
【０１８２】
データビット
【数３７】
2018045685.tif 000039
およびチェックビット
【数３８】
2018045685.tif 000040
は、誤りのない場合、ＬＳＢの起こり得る誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数３９】
2018045685.tif 000041
を形成する。誤り符号Ｃｏｄ２は、例えば、１ビットエラーを訂正するためのハミング符号でよい。
【０１８３】
データビット
【数４０】
2018045685.tif 000042
およびチェックビット
【数４１】
2018045685.tif 000043
は、誤りのない場合、ＬＳＢの起こり得る誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数４２】
2018045685.tif 000044
を形成する。
【０１８４】
データビット
【数４３】
2018045685.tif 000045
およびチェックビット
【数４４】
2018045685.tif 000046
は、誤りのない場合、ＬＳＢの起こり得る誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数４５】
2018045685.tif 000047
を形成する。
【０１８５】
ビットｖ１、…、ｖ８は、それぞれＭＳＢとして、アドレスａ１、ａ２、およびａ３の下に、したがって３重に（冗長で）記憶されている。ここでは、ＭＳＢを訂正するための誤り符号Ｃｏｄ１として２重の反復符号を使用することができ、それにより、場合によっては誤っている値を例えば多数決によって訂正することができる。
【０１８６】
データビット
【数４６】
2018045685.tif 000048
およびチェックビット
【数４７】
2018045685.tif 000049
は、誤りのない場合、生じていることがあり得るＬＳＢの誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数４８】
2018045685.tif 000050
を形成する。
【０１８７】
データビット
【数４９】
2018045685.tif 000051
およびチェックビット
【数５０】
2018045685.tif 000052
は、誤りのない場合、生じていることがあり得るＬＳＢの誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数５１】
2018045685.tif 000053
を形成する。
【０１８８】
データビット
【数５２】
2018045685.tif 000054
およびチェックビット
【数５３】
2018045685.tif 000055
は、誤りのない場合、生じていることがあり得るＬＳＢの誤りを訂正するための誤り符号Ｃｏｄ２の符号語
【数５４】
2018045685.tif 000056
を形成する。
【０１８９】
ビットｖ９、…、ｖ１６はそれぞれ、ＭＳＢとして、アドレスａ４、ａ５、およびａ６の下に、したがって３重に（冗長で）記憶されている。ここでは、ＭＳＢを訂正するための誤り符号Ｃｏｄ１として２重の反復符号を使用することができる。
【０１９０】
例示的な回路構成
図１０ａは、例示的な回路構成を示し、ここで、ＬＳＢは、メモリ１０３（前の実施形態による第１のメモリ）のメモリセルに、ＭＳＢよりも高い信頼性で記憶されている。
【０１９１】
エンコーダ１０１の入力にデータビットｖが入り、エンコーダ１０１の出力には、データビットｖを有する誤り符号Ｃｏｄ１の符号語が提供される。したがって、エンコーダ１０１は、誤りのない場合にビット組合せｖ，ｃが誤り符号Ｃｏｄ１の符号語になるように、データビットｖに基づいてチェックビットｃを決定する。
【０１９２】
ここで、エンコーダ１０１が、データビットｖを、並列または順次に、誤り符号Ｃｏｄ１の符号語に符号化することも可能である。これらの符号語は、ＭＳＢとしてメモリ１０３に記憶される。
【０１９３】
エンコーダ１０１の出力は、マルチプレクサ１０２の０入力と接続されており、マルチプレクサ１０２の出力は、メモリ１０３のデータ入力と接続されている。マルチプレクサ１０２の１入力にはデータビットｕが入り、これは、ＬＳＢとしてメモリ１０３に記憶される。
【０１９４】
マルチプレクサ１０２は、２進制御信号ｓｔ１によって制御される；制御信号ｓｔ１の値に応じて、マルチプレクサ１０２は、その０入力または１入力をその出力と接続する。
【０１９５】
例えば、ＭＳＢは、ＬＳＢよりも低い信頼性でメモリ１０３のメモリセルに記憶される。
【０１９６】
データビットｖは、誤り符号Ｃｏｄ１の符号語のビットである。それらは、ＭＳＢとしてメモリ１０３に記憶される。誤り符号Ｃｏｄ１による符号化によって、追加のチェックビットが生成され、メモリ１０３のＭＳＢのより低い信頼性が少なくとも一部補償される。したがって、ＭＳＢの記憶中に生じた誤りは、メモリ１０３からのＭＳＢの読出し時に訂正ユニット１０５によって訂正することができる。それに従って、そのようにして訂正されたデータビットがメモリ１０６（前の実施形態による第２のメモリ）に記憶される。
【０１９７】
メモリ１０３は、例えば１つのメモリセルにつき４つのデジタル値を記憶するマルチレベルメモリとして構成することができる。
【０１９８】
ＬＳＢの読出しは、例えば、ただ１つの参照値との比較によって高速で行うことができ、したがって、ＬＳＢは、高信頼性かつ高速でメモリ１０３から読み出すことができる。
【０１９９】
ＭＳＢの読出しは、２つの参照値との比較を必要とし、これは、ＬＳＢに比べて時間がかかる。さらに、ＭＳＢの記憶はＬＳＢの記憶よりも信頼性が低く、これは、場合によっては、マルチビットエラーに関する誤り訂正を必要とする。例えば、マルチビットエラーに関する誤り訂正は順次に行うことができる。
【０２００】
したがって、メモリ１０３に記憶されていたＭＳＢは、その誤り訂正の後にメモリ１０６に記憶することができる。例えば、メモリ１０６は、高速の読出しアクセスを可能にするように構成されている。メモリ１０６は、揮発性メモリ、例えばＳＲＡＭでよい。メモリ１０３は、不揮発性メモリとして構成することができる。
【０２０１】
メモリ１０３の出力は、デマルチプレクサ１０４と接続されている。メモリ１０３からＬＳＢが読み出される場合、デマルチプレクサ１０４は、その入力をその１出力と接続し、それによりＬＳＢ  ｕを出力することができる。メモリ１０３のＭＳＢが読み出される場合、デマルチプレクサ１０４は、その入力をその０出力と接続し、それにより、メモリ１０３から読み出された、場合によっては誤っているＭＳＢ  ｖ’が、訂正ユニット１０５の入力に送られる。訂正ユニット１０５は、場合によっては誤っているビットｖ’を、誤り符号Ｃｏｄ１を使用して訂正し、訂正されたデータビットｖｃｏｒにして、メモリ１０６に記憶することができる。
【０２０２】
デマルチプレクサ１０４は、２進制御信号ｓｔ２によって制御される；制御信号ｓｔ２の値に応じて、デマルチプレクサ１０４は、その入力を０出力または１出力と接続する。
【０２０３】
その結果、訂正されたデータビットをメモリ１０６から読み出すことができる。
【０２０４】
さらに、図１０ａで、メモリ１０３はアドレスａによってアドレス指定可能であり、メモリ１０６はアドレスＡによってアドレス指定可能であることが示唆されている。
【０２０５】
図１０ｂは、概して図１０ａに基づく例示的な回路構成を示す。その点で、同じ参照符号を使用する。図１０ａに関する説明を参照されたい。
【０２０６】
図１０ａとは異なり、ＬＳＢとしてメモリ１０３のメモリセルに記憶されるデータビットｕは、その記憶の前に、エンコーダ１０７によって、誤り符号Ｃｏｄ２を使用してビットシーケンスｕｃｏｄ２に符号化される。ビットシーケンスｕｃｏｄ２は、誤りのない場合には、誤り符号Ｃｏｄ２の符号語に対応する。したがって、メモリから読み出された、場合によっては誤っているビットｕ’ｃｏｄ２が符号Ｃｏｄ２の符号語を表すかどうかを訂正ユニット１０８が判定することによって、メモリ１０３からの読出し時の読出しエラー、メモリ１０３への書込み時の書込みエラー、または別の書込みエラーを認識し、場合によっては訂正することができる。符号語がない場合、ＬＳＢとしてメモリ１０３に記憶されていた誤っているビットｕ’ｃｏｄ２を、訂正ユニット１０８を使用して訂正することができる。このために、デマルチプレクサ１０４の１出力が、訂正ユニット１０８の入力と接続されている。訂正ユニット１０８の出力に、場合によっては訂正されたデータｕｃｏｒ２が提供される。
【０２０７】
図１０ｃは、図１０ａまたは図１０ｂに基づく例示的な回路構成を示し、ここでは、訂正ユニット１０５とメモリ１０６との間にさらなるエンコーダ１０９が提供され、このエンコーダ１０９は、訂正ユニット１０５から出力された訂正されたビットｖｃｏｒ１を、誤り符号Ｃｏｄ３を使用して符号語
【数５５】
2018045685.tif 000057
に符号化し、したがって、誤り符号Ｃｏｄ１を使用して訂正され、誤り符号Ｃｏｄ３を使用して符号化されたビットが２進メモリ１０６に記憶される。
【０２０８】
ここで、場合によっては誤っているビット
【数５６】
2018045685.tif 000058
をメモリ１０６から読み出し（誤りは、例えば記憶時、読出し時、または例えば光線もしくは加熱による記憶中に生じることがある）、メモリ１０６の下流に接続された訂正ユニット１１０に基づいて、誤り符号Ｃｏｄ３を使用して、訂正されたビットｖｃｏｒ３に訂正することができる。
【０２０９】
誤り符号Ｃｏｄ３は、例えば、ハミング符号、Ｈｓｉａｏ符号、または別の符号でよく、これは、特に、メモリ１０６に記憶されているビットの高速の訂正を可能にする。
【０２１０】
図１０ｄは、図１０ａに示される回路構成に概して基づく例示的な回路構成を示す。図１０ａに示した回路構成とは異なり、エンコーダ１０１の代わりにエンコーダ１１１が提供され、訂正ユニット１０５の代わりに訂正ユニット１１２が提供される。
【０２１１】
エンコーダ１１１は、追加の入力を有し、その入力に、メモリ１０３のアドレスａが送られる。エンコーダ１１１は、その出力でチェックビットを提供し、これらのチェックビットは、エンコーダ１１１に入るデータビットｖと、アドレスａのアドレスビットとに基づく。ここで、チェックビットは、データビット、アドレスビット、およびチェックビットが誤り符号Ｃｏｄ１の符号語を形成するように決定することができる。任意選択で、アドレスビット、またはアドレスビットから導出されたビットは、メモリ１０３に記憶されなくてもよい；アドレスビット、またはアドレスビットから導出されたビットをメモリ１０３に記憶することもできる。例えば、アドレスビットのパリティをメモリ１０３に記憶することができる。
【０２１２】
同様に、訂正ユニット１１２も（訂正ユニット１０５と比較して）追加の入力を有し、その入力に、メモリ１０３のアドレスａが送られる。それにより、エンコーダ１１１と訂正ユニット１０５それぞれに同じアドレスビットが利用可能であり、それに対応して訂正時に考慮に入れることができる。
【０２１３】
図１０ｅは、さらなる例示的な回路構成を示し、この回路構成は、概して図１０ｂに示した回路構成に基づいている。図１０ｂに示した回路構成とは異なり、エンコーダ１０７の代わりにエンコーダ１１３が提供され、訂正ユニット１０８の代わりに訂正ユニット１１４が提供されている。
【０２１４】
エンコーダ１１３および訂正ユニット１１４は、それぞれ追加の入力を有し、それらの入力に、メモリ１０３のアドレスａに基づいて特定されたビットが入る。これに関連してブロック１１５が提供され、ブロック１１５は、アドレスａのアドレスビットから導出されるビットｆ（ａ）を決定し、次いで、このビットｆ（ａ）がエンコーダ１１３または訂正ユニット１１４に入力される。
【０２１５】
エンコーダ１１３は、その出力でチェックビットを提供し、これらのチェックビットは、エンコーダ１１３に入力されたデータビットｕおよび導出されたビットｆ（ａ）に基づく。ここで、データビット、アドレスビットから形成されたビット、およびチェックビットが誤り符号Ｃｏｄ２の符号語を形成するようにチェックビットを決定することができる。任意選択で、アドレスビット、またはアドレスビットから導出されたビットは、メモリ１０３に記憶されなくてもよい。
【０２１６】
訂正ユニット１１４は、導出されたビットｆ（ａ）に応じて訂正されたデータビットを形成する。
【０２１７】
例えば、ブロック１１５は、アドレスａのアドレスビットをそこから導出されたビットに対応付ける一意に特定される関数を提供する。例えば、関数ｆ（ａ）は、アドレスａのアドレスビットのパリティを決定することができる。
【０２１８】
図１０ｆは、図１０ｃの回路構成の変形形態を示す。図１０ｃに示した回路構成とは異なり、図１０ｆでは、エンコーダ１０９の代わりにエンコーダ１１６が提供され、訂正ユニット１１０の代わりに訂正ユニット１１７が提供されている。
【０２１９】
エンコーダ１１６および訂正ユニット１１７は、それぞれ追加の入力を有し、それらの入力に、メモリ１０６のアドレスＡのアドレスビットが入る。エンコーダ１１６は、その出力でチェックビットを提供し、これらのチェックビットは、エンコーダ１１６に入るデータビットおよびアドレスビットに基づいて決定することができる。訂正ユニット１１７は、提供されたアドレスビットに従って訂正されたデータビットを形成する。
【０２２０】
さらなる利点、用途、および例
本明細書で述べた手法は、様々な用途を可能にする。例えば、フラッシュメモリアレイに、多数のメモリセルを設けることが可能であり、これらのメモリセルは、読出し増幅器（センス増幅器）によって読み出される。メモリセルは、それぞれ第１の範囲および第２の範囲を含み、ここで、第２の範囲は、第１の範囲よりも高い信頼性を有する。ここで、読出し増幅器を様々なモードで作動させることができる。
【０２２１】
例として、読出し増幅器は、例えば、読み出される物理的値を記憶されているデジタル値に正確に割り当てることを高い信頼性で可能にする参照値との閾値比較を行うことによって、第１のモードで第２の範囲からの読出しのために動作させることができる。これは、メモリセルの第２の範囲に記憶されているデジタル値に関する物理的値の頻度分布が重畳を有さない、または小さな重畳しか有さないためである。
【０２２２】
読出し増幅器の第２のモードでは、両方の範囲（または第１の範囲のみ）を読み出すことができる。ここで、物理的値の頻度分布に対応して第１の範囲に記憶されたデジタルデータを区別するための追加の参照値を使用することができ、後続の誤り認識および／または誤り訂正が、これらの頻度分布の比較的大きいことがある重畳を少なくとも一部（あるいはまた完全に）補償することができる。
【０２２３】
したがって、ここで述べた例は、異なる読出し窓を有するメモリの使用を可能にして、メモリセルの別の範囲よりも高い信頼性を有するメモリセルの一範囲への迅速なアクセスを可能にする。より低い信頼性を有するメモリセルの範囲は、例えばさらなるメモリでの一時記憶によって、誤り訂正と組み合わせて読み出すことができ、したがって、生じ得る読出しエラーを少なくとも一部訂正することができる。
【０２２４】
さらなる実施形態は、奇数個のビットがメモリセルに割り振られ、ここで、これらのビットの一部が残りのビットよりも高い信頼性で記憶されるものである。例えば、３つのビットを、以下のようにメモリセルに記憶することができる：２つのビットが第１の範囲に記憶され、１つのビットが第２の範囲に記憶される（またはその逆）。補足として、（特許文献１）および（特許文献２）を参照されたい。それらの文献には、個々のメモリセルが少なくとも３つの異なる状態をどのように取ることができるかが説明されている。
【符号の説明】
【０２２５】
１０２  マルチプレクサ
１０３、１０６  メモリ
１０４  デマルチプレクサ
１０５、１０８、１１０、１１２、１１４、１１７  訂正ユニット
１０７、１０９、１１１、１１３、１１６  エンコーダ
２０１、３０１、３０２、３０３、４０１、４０２、５０１  重畳範囲
【図１】
2018045685.tif 000059
【図２】
2018045685.tif 000060
【図３】
2018045685.tif 000061
【図４】
2018045685.tif 000062
【図５】
2018045685.tif 000063
【図６】
2018045685.tif 000064
【図７】
2018045685.tif 000065
【図８】
2018045685.tif 000066
【図９】
2018045685.tif 000067
【図１０ａ】
2018045685.tif 000068
【図１０ｂ】
2018045685.tif 000069
【図１０ｃ】
2018045685.tif 000070
【図１０ｄ】
2018045685.tif 000071
【図１０ｅ】
2018045685.tif 000072
【図１０ｆ】
2018045685.tif 000073
【図１１】
2018045685.tif 000074
【外国語明細書】
2018045685000001.pdf
2018045685000002.pdf
2018045685000003.pdf
2018045685000004.pdf