(57)【特許請求の範囲】
【請求項１】
第１のメモリセル（１４）と、前記第１のメモリセル（１４）とは異なる第２のメモリセル（１６）とを有するメモリ（１２）であって、前記第１のメモリセル（１４）に第１のビットシーケンス（１７；１７ａ）が記憶されており、前記第２のメモリセル（１６）に第２のビットシーケンス（１７ｂ）が記憶されているメモリ（１２）と、
メモリ制御装置（１８；５６；５６’）とを備えるメモリデバイス（１０；２０；３０；１３０；１４０；１５０；１６０）であって、前記メモリ制御装置（１８；５６；５６’）が、
前記第１のメモリセル（１４）に割り当てられた頻度（ｘ１／Ｔ）で前記第１のビットシーケンス（１７；１７ａ）を検査するように構成され、ここで、前記第１のメモリセル（１４）に割り当てられた前記頻度（ｘ１／Ｔ）が、前記第１のメモリセル（１４）内でのビット誤りの出現に関して予測または推定された確率（Ｐ）に基づく信頼性情報（２２；２２’、２２’’）に依存し、
誤り状態で、前記第１のビットシーケンス（１７；１７ａ）の誤りのあるビット（１５）を訂正し、少なくとも前記訂正されたビットを前記メモリ（１２）に書き戻すように構成され、
前記第２のビットシーケンス（１７ｂ）が、前記第２のメモリセル（１６）に関する信頼性情報（２２；２２’、２２’’）に基づいて、前記第１のビットシーケンス（１７；１７ａ）よりも少ない頻度で検査される
メモリデバイス（１０；２０；３０；１３０；１４０；１５０；１６０）。
【請求項２】
前記メモリ制御装置（１８；５６；５６’）が、前記第１または第２のビットシーケンス（１７；１７ａ、１７ｂ）において、前記誤りのあるビット（１５）を訂正されたビットで上書きし、少なくとも１つの誤りのないビットを上書きしないように構成される請求項１に記載のメモリデバイス。
【請求項３】
前記メモリ制御装置（１８；５６；５６’）が、前記第１または第２のビットシーケンス（１７；１７ａ、１７ｂ）を訂正するように構成され、不揮発性メモリ内での前記第１または第２のビットシーケンスの一時記憶が省かれる請求項１に記載のメモリデバイス。
【請求項４】
前記メモリ（１２）が、ビット毎に変更可能なメモリである請求項１に記載のメモリデバイス。
【請求項５】
前記メモリ（１２）が、ＭＲＡＭ、ＲＲＡＭ（登録商標）、またはＰＣ−ＲＡＭを含む請求項１に記載のメモリデバイス。
【請求項６】
前記メモリ制御装置（１８；５６；５６’）が、前記第２のメモリセル（１６）に関する前記信頼性情報（２２；２２’、２２’’）に基づいて、前記第２のメモリセル（１６）に割り当てられた頻度（ｘ２／Ｔ）で前記第２のビットシーケンス（１７ｂ）を検査するように構成されるか、または、前記第２のメモリセル（１６）に関する前記信頼性情報（２２；２２’、２２’’）に基づいて、前記第２のビットシーケンス（１７ｂ）を検査から除外するように構成される請求項１に記載のメモリデバイス。
【請求項７】
前記メモリ制御装置（１８；５６；５６’）が、さらに、前記第２のメモリセル（１６）に割り当てられた頻度（ｘ２／Ｔ）で前記第２のビットシーケンス（１７ｂ）を検査し、誤り状態で、前記第２のビットシーケンスの誤りのあるビット（１５’）を訂正し、前記訂正されたビットを前記メモリ（１２）に書き戻すように構成される請求項１または２に記載のメモリデバイス。
【請求項８】
前記メモリ制御装置（１８；５６；５６’）が、物理的パラメータに基づいて、前記第１のメモリセル（１４）および／または前記第２のメモリセル（１６）に関する前記信頼性情報（２２；２２’、２２’’）を決定するように構成される請求項１〜７のいずれか一項に記載のメモリデバイス。
【請求項９】
前記少なくとも１つの物理的パラメータの値が、前記第１のメモリセル（１４）または前記第２のメモリセル（１６）の書込み電流の値、読出し電流の値、および／または熱的安定性（ΔＥ）であり、前記熱的安定性（ΔＥ）が、磁気抵抗メモリ素子内の、磁気的な異方性に起因する２つの異なる状態間のエネルギー障壁を示す、請求項８に記載のメモリデバイス。
【請求項１０】
前記メモリ（１２）が、アドレス指定可能なメモリであり、
前記アドレス指定可能なメモリ（１２）が、第１のアドレス（ａ１，１）によってアドレス指定される前記第１のメモリセル（１４）と、前記第１のアドレスとは異なる第２のアドレス（ａ２，１）によってアドレス指定される前記第２のメモリセル（１６）とを有し、
前記第１のアドレス（ａ１，１）および前記第２のアドレス（ａ２，１）の下で記憶されている第１および第２のビットシーケンス（１７；１７ａ、１７ｂ）が、誤りがない場合には、それぞれ誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）のビットである
請求項１〜９のいずれか一項に記載のメモリデバイス。
【請求項１１】
前記メモリ制御装置（１８；５６；５６’）が、さらに、前記第１のアドレス（ａ１，１）の下で記憶されており読み出される誤りのある第１のビットシーケンス（１７；１７ａ）を、誤り訂正符号（Ｃｃｏｒ）を使用して訂正し、前記誤りのある第１のビットシーケンスを、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きするように構成される請求項１０に記載のメモリデバイス。
【請求項１２】
前記誤り訂正符号（Ｃｃｏｒ）がｔビット訂正符号であり、ｔ≧２が成り立ち、前記メモリ制御装置（１８；５６；５６’）が、前記第１のアドレス（ａ１，１）の下で記憶されており読み出された、σ個の誤りを有する誤りのある第１のビットシーケンス（１７；１７ａ、１７ｂ）を、前記誤り訂正符号（Ｃｃｏｒ）を使用して訂正し、前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きする、および／または前記訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）を書き戻すように構成され、ここで、１＜σ≦ｔが成り立つ請求項１０または１１に記載のメモリデバイス。
【請求項１３】
前記メモリ制御装置（１８；５６；５６’）が、前記読み出されたビットシーケンス（１７；１７ａ、１７ｂ）がσ個の誤りを有するときに、所定の誤り訂正閾値τに基づいて、前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きせず、前記訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）を書き戻さないように構成され、ここで、σ≦τおよび１≦τ≦ｔが成り立つ請求項１２に記載のメモリデバイス。
【請求項１４】
前記アドレス（ａ１，１）の下で記憶されているビットシーケンス（１７；１７ａ、１７ｂ）が、データビット（ｕ）およびチェックビット（ｃ）を含み、前記データビット（ｕ）およびチェックビット（ｃ）、ならびに前記第１のアドレス（ａ１，１）のアドレスビット（ａ）および／または前記アドレス（ａ１，１）の前記アドレスビット（ａ）から導出されるビット（ｂ）が、誤りがない場合には、誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）を形成する請求項１０〜１３のいずれか一項に記載のメモリデバイス。
【請求項１５】
前記アドレス指定可能なメモリ（１２）が、さらなる第１のアドレス（ａ１，２、…、ａ１，ｍ（ｍ＞１））によってアドレス指定されるさらなる第１のメモリセル（１４）と、さらなる第２のアドレス（ａ２，２、…、ａ２，Ｍ（Ｍ＞１））によってアドレス指定されるさらなる第２のメモリセル（１６）とを有し、
前記第１のメモリセル（１４）と前記さらなる第１のメモリセル（１４）とが、第１のメモリセルの全体集合（３４）を形成し、第１のメモリセルの前記全体集合（３４）が、アドレスの第１の部分集合（α１＝｛ａ１，１、…、ａ１，ｍ｝（ｍ≧１））によってアドレス指定可能であり、
前記第２のメモリセル（１６）および前記さらなる第２のメモリセル（１６）が、第２のメモリセルの全体集合（３２；３８）を形成し、第２のメモリセルの前記全体集合（３２；３８）が、アドレスの第２の部分集合（α２＝｛ａ２，１，…，ａ２，Ｍ｝、Ｍ≧１）によってアドレス指定可能であり、
第１のメモリセルの前記全体集合（３４）に記憶されているビットシーケンス（１７；１７ａ）を、前記第１のメモリセル（１４）に割り当てられた頻度（ｘ１／Ｔ）で検査し、
誤り状態で、前記記憶されているビットシーケンス（１７；１７ａ）の誤りのあるビット（１５）を訂正し、少なくとも前記訂正されたビットを前記メモリ（１２）に書き戻し、
第２のメモリセルの前記全体集合（３８）の下に記憶されているビットシーケンス（１７ｂ）が、前記第２のメモリセル（１６）に関する前記信頼性情報（２２；２２’、２２’’）に基づいて、第１のメモリセルの前記全体集合（３４）に記憶されているビットシーケンスよりも少ない頻度で検査される
請求項１０〜１２のいずれか一項に記載のメモリデバイス。
【請求項１６】
前記メモリ制御装置（１８；５６；５６’）が、前記メモリデバイスのスタートアップ中に前記第１の部分集合（α１）を決定するように構成される請求項１５に記載のメモリデバイス。
【請求項１７】
前記メモリ制御装置（１８；５６；５６’）が、前記アドレス指定可能なメモリ（１２）に記憶されているビットシーケンス（１７；１７ａ、１７ｂ）の読出し時に出現する誤りに依存して、および／または、前記アドレス指定可能なメモリ（１２）への書込み時および／または前記メモリ（１２）からの読出し時に決定される物理的パラメータの値（ｉ；ΔＥ）に依存して、アドレスの前記第１の部分集合（α１）を変えるように構成される請求項１５または１６に記載のメモリデバイス。
【請求項１８】
アドレスの前記第１の部分集合（α１）の下で記憶されている前記ビットシーケンス（１７；１７ａ、１７ｂ）が、ｔ≧１でのｔビット誤り検出および／または誤り訂正符号のビットであり、
前記メモリ制御装置（１８；５６；５６’）が、前記第２の部分集合（α２）のアドレス（ａ２，１、…、ａ２，Ｍ（Ｍ＞１））を読み出し、前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）の読出し時に、所定のτに関して、前記読み出されたビットシーケンス中で少なくともσ個の誤りを前記メモリ制御装置（１８；５６；５６’）が検出したときに、前記アドレスを、アドレスの前記第１の部分集合（α１）に割り当てるように構成され、ここで、１≦τ≦σ≦ｔである
請求項１７に記載のメモリデバイス。
【請求項１９】
前記アドレス指定可能なメモリ（１２）が、アドレスの第３の部分集合（αｐｅｒ）によってアドレス指定可能なメモリセル（３６）を有し、ここで、前記メモリ制御装置（１８；５６；５６’）が、記憶すべきビットシーケンスを、少なくとも一部、ビット毎に反転させて、アドレスの前記第３の部分集合（αｐｅｒ）によってアドレス指定されるメモリセルに記憶するように構成される請求項１５〜１８のいずれか一項に記載のメモリデバイス。
【請求項２０】
前記アドレス指定可能なメモリ（１２）が、第３のアドレス（ａ３，１）によってアドレス指定される第３のメモリセル（３８’）を有し、
前記第３のアドレス（ａ３，１）の下で記憶されている第３のビットシーケンス（１７；１７ａ、１７ｂ）が、誤りがない場合には、前記誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）のビットを含み、
前記メモリ制御装置（１８；５６；５６’）が、前記第２のメモリセル（１６）に割り当てられた頻度（ｘ２／Ｔ）で前記第２のビットシーケンス（１７ｂ）を検査し、前記第３のメモリセルに割り当てられた頻度で前記第３のビットシーケンスを検査するように構成され、
前記第１のメモリセル（１４）に割り当てられた前記頻度（ｘ１／Ｔ）、前記第２のメモリセル（１６）に割り当てられた前記頻度（ｘ２／Ｔ）、前記第３のメモリセルに割り当てられた前記頻度が、前記第１のメモリセルに関する前記信頼性情報（２２；２２’、２２’’）に基づいて、前記第２のメモリセルに関する前記信頼性情報（２２；２２’、２２’’）に基づいて、および前記第３のメモリセルに関する前記信頼性情報（２２；２２’、２２’’）に基づいて異なる
請求項１０〜１９のいずれか一項に記載のメモリデバイス。
【請求項２１】
さらに、前記第１のアドレス（ａ１，１）のビットを含むアドレスビットシーケンスを記憶するためのアドレス値メモリ（１０２）を含み、ここで、前記第１のアドレスの前記ビットが、前記アドレス値メモリ（１０２）に冗長に記憶され、前記第１のアドレス（ａ１，１）の前記冗長に記憶されているアドレスビットにおいて、少なくとも１つの誤りが検出可能および／または訂正可能である請求項１０〜２０のいずれか一項に記載のメモリデバイス。
【請求項２２】
前記メモリ制御装置（１８；５６；５６’）が、前記第１のアドレス（ａ１，１）で指定される前記第１のメモリセル（１４）および／または前記第２のアドレス（ａ２，１）で指定される前記第２のメモリセル（１６）が永久的な誤りを有する場合に、当該誤りを有する前記第１のメモリセル（１４）及び／または前記第２のメモリセル（１６）に対して、ビットシーケンスを反転させることを含む修復法によって、前記第１のアドレス（ａ１，１）及び／または前記第２のアドレス（ａ２，１）を別のアドレスに置き換えるように構成される請求項１０〜２１のいずれか一項に記載のメモリデバイス。
【請求項２３】
前記メモリ（１２）が不揮発性メモリであり、特に、抵抗ベースのメモリおよび／または磁気抵抗メモリである請求項１０〜２２のいずれか一項に記載のメモリデバイス。
【請求項２４】
第１のメモリセル（１４）と、前記第１のメモリセル（１４）とは異なる第２のメモリセル（１６）とを有するメモリ（１２）であって、前記第１のメモリセル（１４）に第１のビットシーケンス（１７；１７ａ）が記憶されており、前記第２のメモリセル（１６）に第２のビットシーケンス（１７ｂ）が記憶されているメモリ（１２）と、
メモリ制御装置（１８；５６；５６’）とを備えるメモリデバイス（１０；２０；３０；１３０；１４０；１５０；１６０）であって、前記メモリ制御装置（１８；５６；５６’）が、
前記第１のメモリセル（１４）に割り当てられた頻度（ｘ１／Ｔ）で前記第１のビットシーケンス（１７；１７ａ）を検査するように構成され、ここで、前記第１のメモリセル（１４）に割り当てられた前記頻度（ｘ１／Ｔ）が、前記第１のメモリセル（１４）内でのビット誤りの出現に関して予測または推定された確率（Ｐ）に基づく信頼性情報（２２；２２’、２２’’）に依存し、
誤り状態で、前記第１のビットシーケンス（１７；１７ａ）の誤りのあるビット（１５）を訂正し、少なくとも前記訂正されたビットを前記メモリ（１２）に書き戻すように構成され、
少なくとも１つの誤りのないビットを前記メモリに書き戻さないように構成され、かつ
前記第２のメモリセル（１６）に関する信頼性情報（２２；２２’、２２’’）に基づいて、前記第２のメモリセル（１６）に割り当てられた頻度（ｘ２／Ｔ）で前記第２のビットシーケンス（１７ｂ）を検査するように構成されるか、または、前記第２のメモリセル（１６）に関する前記信頼性情報（２２；２２’、２２’’）に基づいて、前記第２のビットシーケンス（１７ｂ）を検査から除外するように構成される
メモリデバイス（１０；２０；３０；１３０；１４０；１５０；１６０）。
【請求項２５】
前記第２のビットシーケンス（１７ｂ）が、前記第２のメモリセル（１６）に関する信頼性情報（２２；２２’、２２’’）に基づいて、前記第１のビットシーケンス（１７；１７ａ）よりも少ない頻度で検査される請求項２４に記載のメモリデバイス。
【請求項２６】
ビットシーケンス（１７；１７ａ、１７ｂ）を記憶するためのアドレス指定可能なメモリ（１２）を備えるメモリデバイス（１８０）であって、
前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）が、誤りがない場合には、それぞれ誤り訂正符号（Ｃｃｏｒ）の符号語のビットであり、
メモリデバイス（１８０）がさらにメモリ制御装置（１８’）を備え、前記メモリ制御装置（１８’）が、
誤りのある内容を訂正するために、前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）を読み出すように構成され、
前記誤り訂正符号（Ｃｃｏｒ）がｔビット訂正符号であり、ｔ≧２が成り立ち、
前記メモリ制御装置（１８’）が、記憶されており読み出された、σ個の誤りを有するビットシーケンス（１７；１７ａ、１７ｂ）を、前記誤り訂正符号（Ｃｃｏｒ）を使用して訂正し、前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きする、および／または前記訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）を書き戻すように構成され、このとき、１＜τ＜σ≦ｔが成り立ち、
および／または
前記メモリ制御装置（１８’）が、前記読み出されたビットシーケンス（１７；１７ａ、１７ｂ）がσ個の誤りを有するときに、前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きせず、前記訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）を書き戻さないように構成され、このとき、σ≦τおよび１≦τ≦ｔが成り立ち、
ここで、τが、所定の誤り訂正閾値である
メモリデバイス（１８０）。
【請求項２７】
前記アドレス指定可能なメモリ（１２）が、第１のアドレス（ａ１，１）によってアドレス指定される第１のメモリセル（１４）と、前記第１のアドレスとは異なる第２のアドレス（ａ２，１）によってアドレス指定される第２のメモリセル（１６）とを有し、
前記第１のアドレス（ａ１，１）および前記第２のアドレス（ａ２，１）の下で記憶されているビットシーケンスが、誤りがない場合には、それぞれ誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）のビットであり、
前記メモリ制御装置（１８’）が、前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）中の誤りのある内容を訂正するために、前記第１および／または第２のメモリセル（１４、１６）を読み出すように構成され、
前記第１のメモリセル（１４）および／または前記第２のメモリセル（１６）に関して信頼性情報（２２；２２’）が存在する場合には、前記第１のメモリセル（１４）と前記第２のメモリセル（１６）の連続する読出しプロセスの頻度（ｘ１／Ｔ、ｘ２／Ｔ）が異なり、
前記信頼性情報（２２；２２’）が、前記第１のメモリセル（１４）および／または前記第２のメモリセル（１６）での誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）の出現に関する算出または推定される確率（Ｐ）に基づく
請求項２６に記載のメモリデバイス。
【請求項２８】
メモリ（１２）の第１のメモリセル（１４）に記憶されている第１のビットシーケンス（１７；１７ａ）を検査するステップであって、前記メモリ（１２）が第２のメモリセル（１６）を有し、前記第２のメモリセル（１６）が前記第１のメモリセル（１４）とは異なり、前記第２のメモリセル（１６）に第２のビットシーケンス（１７ｂ）が記憶されているステップ（２１１０）を含む方法（２１００）であって、
前記第１のビットシーケンス（１７；１７ａ）が、前記第１のメモリセル（１４）に割り当てられた頻度（ｘ１／Ｔ）で検査され、前記頻度が、前記第１のメモリセル（１４）内でのビット誤りの出現に関して予測または推定された確率（Ｐ）に基づく信頼性情報（２２；２２’、２２’’）に依存し、ここで、誤り状態で、前記第１のビットシーケンス（１７；１７ａ）の誤りのあるビット（１５）が訂正され、少なくとも前記訂正されたビット（１５’）が前記メモリ（１２）に書き戻され、
前記第２のビットシーケンス（１７ｂ）が、前記第２のメモリセル（１６）に関する信頼性情報（２２；２２’、２２’’）に基づいて、前記第１のビットシーケンス（１７；１７ａ）よりも少ない頻度で検査される
方法。
【請求項２９】
前記第１のビットシーケンス（１７；１７ａ）が、ｔビット誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）の少なくとも一部であり、ｔ≧２が成り立ち、少なくともσ個のビット誤りが前記第１または第２のビットシーケンス（１７；１７ａ、１７ｂ）に存在するときに、前記誤り状態が存在し、このとき、σ＞τが成り立ち、τは、τ≧１での所定の誤り閾値であり、ここで、誤り状態が存在しないときには、前記訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）が書き戻されない請求項２８に記載の方法。
【請求項３０】
前記第１のビットシーケンス（１７；１７ａ）の誤りのないビットが、前記メモリ（１２）に書き戻されない請求項２８または２９に記載の方法。
【請求項３１】
アドレス指定可能なメモリ（１２）にビットシーケンスを記憶するステップであって、それにより、前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）が、誤りがない場合には、それぞれｔビット誤り訂正符号（Ｃｃｏｒ）の符号語（ｗ）のビットであり、ｔ≧２が成り立つように、ビット誤りの出現に関して予測または推定された確率（Ｐ）に基づく信頼性情報（２２；２２’、２２’’）に基づいてｔを設定するステップ（２３１０）と、
誤りのある内容を訂正するために、前記記憶されているビットシーケンス（１７；１７ａ、１７ｂ）を読み出すステップ（２３２０）と、
記憶されており読み出された、σ個の誤りを有する誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、誤り訂正符号（Ｃｃｏｒ）を使用して訂正するステップ（２３３０）と、
前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を、訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きする、および／または訂正されたビットシーケンス（１７’；１７’、１７’）を書き戻すステップであって、このときには、１≦τ＜σ≦ｔが成り立ち、前記読み出されたビットシーケンス（１７；１７ａ、１７ｂ）がσ個の誤りを有し、σ≦τが成り立つときには、前記誤りのあるビットシーケンス（１７；１７ａ、１７ｂ）を訂正されたビットシーケンス（１７’；１７’ａ、１７’ｂ）で上書きせず、前記訂正されたビットシーケンスを書き戻さないステップ（２３４０）と
を含む方法（２３００）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリデバイス、および記憶されているビットシーケンスを訂正するための方法に関する。さらに、本発明は、アドレスに応じて、誤りのあるメモリ内容を再生することに関する。
【背景技術】
【０００２】
ビットシーケンスを記憶するための情報記憶装置またはメモリは、複数または多数のメモリセルを有することができる。アドレス指定可能なメモリにおいて、メモリセルまたはメモリセルのグループを、１つのアドレスに基づいてアドレス指定することができ、すなわち、メモリセルからの読出しアクセスおよび／またはメモリセルへの書込みアクセスを行うことができる。メモリセルは、情報を揮発性または不揮発性で記憶するように構成することができる。メモリに記憶されているビットシーケンスは、ビット誤りを有することがある。
【発明の概要】
【０００３】
いくつかの例示的実施形態は、第１のメモリセルと第２のメモリセルとを有するメモリを備えるメモリデバイスを提供する。第２のメモリセルは、第１のメモリセルとは異なる。第１のメモリセルには第１のビットシーケンスを記憶することができ、第２のメモリセルには第２のビットシーケンスを記憶することができる。メモリデバイスはメモリ制御装置を含み、メモリ制御装置は、第１のメモリセルに割り当てられた頻度で第１のビットシーケンスを検査するように構成される。第１のメモリセルに割り当てられた頻度は、第１のメモリセルに関する信頼性情報に依存する。メモリ制御装置は、誤り状態で、第１のビットシーケンスの誤りのあるビットを訂正し、少なくとも訂正されたビットをメモリに書き戻すように構成される。第２のビットシーケンスは、第２のメモリセルに関する信頼性情報に基づいて、第１のビットシーケンスよりも低い頻度で検査される。
【０００４】
さらなる例示的実施形態は、ビットシーケンスを記憶するためのアドレス指定可能なメモリと、メモリ制御装置とを備えるメモリデバイスを提供する。記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号の符号語のビットである。メモリ制御装置は、誤りのある内容を訂正するために、記憶されているビットシーケンスを読み出して、読出しプロセスを行うように構成される。誤り訂正符号は、ｔビット訂正符号であり、ここで、ｔ≧２が成り立つ。メモリ制御装置は、記憶されており読み出された、σ個の誤りを有する誤りのあるビットシーケンスを、誤り訂正符号を使用して訂正し、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きする、および／または訂正されたビットシーケンスを書き戻すように構成され、ここで、１≦τ＜σ≦ｔが成り立つ。メモリ制御装置は、読み出されたビットシーケンスがσ個の誤りを有し、σ≦τが成り立つときには、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きせず、訂正されたビットシーケンスを書き戻さないように構成される。
【０００５】
さらなる例示的実施形態は、ビットシーケンスを訂正するための方法を提供する。
【０００６】
さらなる有利な実施形態は、従属請求項の主題である。
【０００７】
本発明の好ましい例示的実施形態を、添付図面を参照しながら以下に説明する。
【図面の簡単な説明】
【０００８】
【図１】１つの例示的実施形態によるメモリデバイスの概略ブロック図である。
【図２】１つの例示的実施形態による、図１から修正されたメモリデバイスの概略ブロック図である。
【図３】１つの例示的実施形態によるさらなるメモリデバイスの概略ブロック図である。
【図４ａ】１つの例示的実施形態による、メモリセルの読出しおよび／または上書きのための第１の概略時間推移を示す図である。
【図４ｂ】１つの例示的実施形態による、メモリセルの読出しおよび／または上書きのための第２の概略時間推移を示す図である。
【図５】１つの例示的実施形態による、例えばメモリ制御装置によって実施可能な方法の概略流れ図である。
【図６】１つの例示的実施形態による、メモリセルの分布に関する概略図である。
【図７】１つの例示的実施形態による、メモリのアドレスへのメモリセルの割当てに関する概略図である。
【図８】１つの例示的実施形態による、図７からのアドレスの下で記憶されているビットシーケンスの概略図である。
【図９】１つの例示的実施形態による、記憶されている符号語を有する図７からのメモリの概略図である。
【図１０】１つの例示的実施形態による、符号語を形成するためのパリティが使用されるメモリ１２の概略図である。
【図１１】１つの例示的実施形態による、３２個のアドレスを有するアドレス指定可能なメモリの概略図である。
【図１２】１つの例示的実施形態によるメモリの構成を概略的に示す図である。
【図１３】１つの例示的実施形態による、符号化されたデータをアドレス指定可能なメモリに記憶するための回路構成の概略ブロック図である。
【図１４】１つの例示的実施形態による、符号化されたデータをアドレス指定可能なメモリに記憶するためのさらなるメモリデバイスの概略ブロック図である。
【図１５】１つの例示的実施形態による、アドレスビットから情報が導出される、符号化されたペイロードをアドレス指定可能なメモリに記憶するためのメモリデバイスの概略ブロック図である。
【図１６】１つの例示的実施形態による、アドレス指定可能なメモリとメモリ制御装置とを含むメモリデバイスの概略ブロック図である。
【図１７】１つの例示的実施形態による、部分集合へのアドレスの割当てに影響を及ぼす、または割当てを変えるために実施可能な方法の概略流れ図である。
【図１８】１つの例示的実施形態による、修正されたメモリ制御装置を含むメモリデバイスの概略ブロック図である。
【図１９】１つの例示的実施形態による、様々な熱的安定性に関するメモリセルの分布の概略図である。
【図２０】１つの例示的実施形態による、時間間隔内または書込みプロセス後にビットがビット誤りを有する確率分布の概略図である。
【図２１】１つの例示的実施形態による、例えば図１によるメモリデバイスによって実施可能である誤り訂正のための方法の概略流れ図である。
【図２２】１つの例示的実施形態による誤り訂正のための方法の概略流れ図である。
【図２３】１つの例示的実施形態による、例えば図１８からのメモリデバイスによって実施可能な方法の概略流れ図である。
【図２４】１つの例示的実施形態による、ビット毎に反転されたビットシーケンスとして記憶される、記憶すべきビットシーケンスの概略図である。
【図２５】１つの例示的実施形態による、永久的な誤りを有するものとしてのメモリセルの分類の概略図である。
【発明を実施するための形態】
【０００９】
本発明の以下の例示的実施形態を図面に基づいて詳細により詳しく説明する前に、様々な図面中の同一の、同一機能の、または同一作用の要素、物体、および／または構造には同じ参照番号が付されており、したがって、様々な例示的実施形態で表されるこれらの要素の説明は互いに交換可能である、または互いに転用することができることに留意されたい。
【００１０】
以下の例示的実施形態は、メモリからの１つまたは複数のビットシーケンスの読出しおよび／またはメモリへのビットまたはビットシーケンスの書込みに関する。概念「書込み」が使用されるが、書込みは、不揮発性メモリにおいて一般的なメモリの削除および／またはプログラミングのプロセスを示すこともできる。なぜなら、削除プロセスとそれに続くプログラミングも、メモリの１つまたは複数のビットの書込みプロセスとみなすことができるからである。
【００１１】
本発明者らは、誤りのあるビットシーケンスの出現に関する算出確率に基づいて、誤りの存在についてビットシーケンスが検査されるときに、メモリデバイスの時間、計算量、および／またはエネルギー消費が小さくなることを見出した。確率が低い場合には、低い頻度、すなわち２回の検査間の大きい時間間隔を選択することができ、確率が高い場合には、高い頻度、すなわち小さい時間間隔を選択することができる。低い確率を有するビットシーケンスの検査は、時間、計算量、および／または電気エネルギーの節約を可能にし、したがって、記憶されている情報の信頼性をあまりまたは全く損なうことなく、メモリデバイスを高い効率で動作させることができる。
【００１２】
以下の例示的実施形態は、アドレス指定可能であり得るメモリを備えるメモリデバイスに関する。アドレス指定可能なメモリは、情報を揮発性または不揮発性で記憶するように構成することができる。このために、メモリの１つのアドレスを使用して、１つまたは複数のメモリセルをアドレス指定することができる。メモリセルには情報を記憶することができ、および／または読み出すことができる。揮発性メモリは、例えばキャッシュメモリまたはＲＡＭメモリとして使用可能であり得る。不揮発性メモリは、例えば、フラッシュメモリ、ハードディスク、ディスケット、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタルビデオ／バーサタイルディスク）、データテープなどでよい。特に、不揮発性メモリは、ダイレクトアクセス機能を有する磁気抵抗メモリ（ＭＲＡＭ）でよい。
【００１３】
以下に説明する例示的実施形態のいくつかは、ビット誤りの存在についてビットシーケンスが検査される頻度を決定または確定するために信頼性情報を使用することに関する。それぞれの信頼性情報は、それぞれのメモリセルに割り当てることができ、例えば、物理的パラメータに基づいて決定可能でよく、または物理的パラメータでよい。物理的パラメータは、例えば、メモリセルの読出し電流、メモリセルの書込み電流、メモリセルの熱的安定性、および／または熱的安定性と関連付けられているさらなる／別のパラメータを含むことができる。物理的パラメータは、時間間隔内にメモリセルでビットのビット誤り／反転が出現する確率に影響を及ぼし得る。したがって、物理的パラメータから、それぞれのメモリセルに情報をどれほど高い信頼性で（どれほど長く）記憶することができるかについての言明を導出可能であり得る。簡略に述べると、この言明は、「良好」なメモリセル、すなわち信頼できるメモリセルと「不良」なメモリセル、すなわちそれほど信頼できないメモリセルとの区別が可能であることとして理解することができる。ここで、別のさらなる区別または細分化も可能である。メモリの製造後のある時点で、メモリの各メモリセルに関する物理的パラメータを捕捉することができる。物理的パラメータから直接的に、または間接的に、例えば算術演算または閾値比較に基づいて、信頼性情報を得る、または導出することができる。これは、メモリセルに関する物理的パラメータの捕捉により、メモリセルに関する信頼性情報も得られることを意味する。
【００１４】
信頼性情報は、物理的パラメータに基づき、メモリセルでのビット誤りの出現の可能性に関する情報を示唆することができる。ＭＲＡＭメモリなどのアドレス指定可能なメモリでは、複数のメモリセルが共通のメモリアドレスによってアドレス指定可能であり得る。個々のメモリセルの信頼性情報は、１つのアドレスの複数のメモリセルの信頼性情報に集約または要約することができる。共通のメモリアドレスによってアドレス指定可能な複数のメモリセルに関する信頼性情報は、複数のメモリセルのうちの最良または最悪のメモリセルの信頼性に基づくことがある。
【００１５】
分かりやすくするために、以下に説明する例示的実施形態のいくつかは、１つのメモリセルまたは１グループのメモリセルに関する信頼性情報が、メモリセルに割り当てることができる記憶された情報として存在するものとして述べられている。これらの例示的実施形態は、より良く理解できるようにするためのものであるが、これらの例示的実施形態は、記憶または保存されている情報が信頼性情報であることに限定されないものとする。信頼性情報は、物理的パラメータの捕捉に基づくメモリセルまたはメモリセルグループの信頼性に関する決定とみなすことができる。決定の結果は、対応する情報の保存の有無として表すことができる。したがって、複数のグループ（例えば良好／不良）へのメモリセルのグループ分けの際、少なくとも１つのグループは、このグループに関して信頼性情報が提示または決定されたにも関らず、対応する情報がないことによって識別することができる。
【００１６】
以下で説明する例示的実施形態のいくつかは、ＭＲＡＭメモリを有するアドレス指定可能なメモリに関する。ＭＲＡＭメモリは、複数または多数のメモリセルを有することができる。１つまたは複数のメモリセルは、それぞれ、その（それらの）メモリセルを宛先とするアドレスによってアドレス指定することができる。アドレスを使用した少なくとも１つのメモリセルへの読出しアクセスに基づいて、少なくとも１つのメモリセルに記憶されている情報を読み出すことができる。書込みアクセスに基づいて、例えば論理「０」の状態から論理「１」の状態への、またはその逆への少なくとも１つのメモリセルの書込みまたは書換えによって、少なくとも１つのメモリセルに情報を記憶することができる。
【００１７】
誤りのあるビットシーケンスへの訂正されたビットシーケンスの上書きは、同じアドレスの下で読み出されたメモリセルへの上書きまたは新規書込みに関することがある。メモリへの書戻しまたは書換えは、訂正されたビットシーケンスをそのアドレスとは異なるアドレスの下で記憶することに関することがある。代替として、両方の概念を互いに交換可能に使用することができる。書戻しも上書きも、少なくともメモリのビットの削除および／またはプログラミングと理解することができる。
【００１８】
以下に述べる例示的実施形態のいくつかは、誤り検出および／または誤り訂正符号ならびにその使用に関する。符号は、複数または多数の符号語を有することができ、符号語は、符号内の有効なビット組合せと理解することができる。符号は、符号距離（最小距離）、例えばΔ距離またはハミング距離を有することがある。符号距離は、符号語内に出現し得る誤りまたはビット誤りの数に関する尺度と理解することができ、誤りのある符号語は、別の符号語を表さない。符号距離に基づいて、符号を使用して、ビットシーケンス中の誤りの存在および場合によっては誤りの数を検出することができる。さらに、最小距離に基づいて、誤りのあるビットシーケンス中の少なくとも１つの誤りが訂正可能であり得る。これはまた、（ｄ−１）個の誤りを検出するため、および／またはｋ個（ここでｋ＜ｄ／２が成り立つ）の誤りを訂正するために、符号距離ｄを有する符号が使用可能であると理解することもできる。例えば、符号距離ｄ＝３を有する符号によって、２個の（ビット）誤りが検出可能であり得る。代替または追加として、符号は、ｋ＝１個の誤りを訂正するために使用可能であり得る。
【００１９】
メモリに記憶されている情報は、書込みアクセスの誤り、メモリに作用する影響、および／またはメモリの特性によって、誤りを有することがある。電子的なメモリ素子では、メモリセルでのデジタル値を、例えば電荷または抵抗などのアナログ値として記憶することができる。アナログ値は、メモリ素子の読出し時にデジタル値に変換することができる。これは、例えばフラッシュメモリまたはＤＲＡＭ（ダイナミックＲＡＭ）において可能であるのと同様である。時間の経過と共に、アナログのメモリ状態が変化することがある。例えば、状態が電荷として記憶される場合、電荷は、漏れ電流および／または拡散によって減少することがある。電荷が特定の閾値未満に減少し、それにより、メモリセルに記憶されている情報が誤って解釈されるのを避けるために、フラッシュメモリまたはＤＲＡＭ内のデータは、例えば定期的に同じメモリセルに書き戻すことができる。新規の書込み後、アナログ状態値を再び閾値から十分に離すことができる。
【００２０】
それとは対照的に、磁気抵抗メモリ素子（ＭＲＡＭ）では、例えば２つの互いに異なる状態、例えば磁気的な異方性に起因する２つの状態によって、デジタル情報をメモリセルにデジタルで記憶することができる。これらの状態の安定性は、状態間のエネルギー障壁ΔＥに依存することがあり、このエネルギー障壁は、熱的安定性と呼ぶことができる。
【００２１】
いくつかの例示的実施形態によれば、メモリセルのデジタル状態は、（例えば量子効果によって）乱されて、同様にデジタルの別の状態になる、すなわち誤りが存在することがあり得る。セルのデジタル状態が時点ｔで正しかったときに時点ｔ＋Δｔでも正しい確率ｐｓｔａｂｌｅは、以下の関係によって表すことができる。
0006339137.tif 000002
ここで、ｋＢはボルツマン定数であり、Ｔａｂｓは絶対温度であり、ΔＥは熱的安定性であり、τ０は時定数であり、τ０≒１ｎｓである。メモリセルが時点ｔで正しかったときに時点ｔ＋Δｔで誤りのある確率ｐｅｒｒｏｒは、
ｐｅｒｒｏｒ＝１−ｐｓｔａｂｌｅ
によって決定することができる。パラメータτは、例えば熱的安定性ΔＥに指数関数的に依存する。さらに、確率ｐｓｔａｂｌｅは、例えばτに指数関数的に依存し、したがって、熱的安定性ΔＥは、２つの指数関数によってメモリセルの安定性を決定することができる。それにより、メモリセルの熱的安定性の小さな変動は、ＭＲＡＭメモリのメモリセルの安定性に対して場合によっては強く作用する。
【００２２】
ＭＲＡＭメモリのメモリセルに記憶されているデータの正確さの改良は、ＭＲＡＭ内での誤りの蓄積を妨げるためにメモリセルの内容を例えば定期的に読み出し、変更せずに書き戻すことによっては難しい、または可能でない。
【００２３】
例示的実施形態によれば、メモリ内容は、誤り訂正符号を使用して訂正することができる。ＭＲＡＭのアドレスの下で、ビットシーケンスまたはバイナリシーケンスは、誤り訂正符号の符号語として記憶して、定期的に読み出すことができる。誤りのある符号語は、定期的な読出し時に訂正して、ＭＲＡＭの対応するセルに、訂正された形で書き戻すことができる。それにより、誤りの蓄積が多くなりすぎる前に、メモリセル内のデジタル誤りを訂正することができる。
【００２４】
メモリセルの熱的安定性の変動により、メモリセルの安定性は、２つの指数関数を介した熱的安定性ΔＥへの依存に基づいて大きく変化することがある。
【００２５】
以下に述べる例示的実施形態のいくつかは、動作中のデバイスまたはメモリを表す。それぞれのデバイスまたはメモリのブロックまたは構成要素は、本明細書で述べる機能を提供するように構成される。
【００２６】
図１は、メモリデバイス１０の概略ブロック図を示す。メモリデバイス１０は、メモリ１２を含む。メモリ１２は、第１のメモリセル１４−１〜１４−３（または１４）と、第２のメモリセル１６−１〜１６−３（または１６）とを有することができる。第１のメモリセル１４と第２のメモリセル１６は、互いに異なっていてよく、したがって、第１のメモリセル１４および第２のメモリセル１６に、互いに異なるビットシーケンス１７ａおよび１７ｂが記憶されている。例えば、第１のメモリセル１４にはビットシーケンス１７ａを記憶し、第２のメモリセルにはビットシーケンス１７ｂを記憶することができる。
【００２７】
メモリデバイス１０は、メモリ制御装置１８を含む。メモリ制御装置１８は、ビットシーケンス１７ａを頻度ｘ１／Ｔで検査するように構成され、ここで、ｘ１は、読出しプロセスまたは検査プロセスの数を表すことができ、Ｔは、任意の時間間隔を表すことができる。頻度ｘ１／Ｔは、第１のメモリセルに割り当てることができる。第１のメモリセル１４に割り当てられた頻度ｘ１／Ｔは、第１のメモリセル１４に関する信頼性情報２２に依存することがある。
【００２８】
信頼性情報２２は、第１のメモリセル１４の信頼性の通知を提供することができる。例えば、メモリ１２は、アドレス指定可能なメモリでよく、信頼性情報２２は、第１のメモリセル１４のアドレスを通知する、またはそのアドレスを含むことができる。
【００２９】
メモリ制御装置１８は、誤り状態で、第１のビットシーケンスの誤りのあるビット、例えばメモリセル１４−３に記憶されているビット１５を訂正するように構成することができる。訂正は、少なくとも１ビットの訂正を含むことができる。ビットシーケンス１７ａの訂正に基づいて、訂正されたビットシーケンス１７’ａを得ることができ、このビットシーケンス１７’ａは、より少数のビット誤りを有する、またはビット誤りを有さないことがある。メモリ制御装置１８は、少なくとも訂正されたビットをメモリ１２に書き戻すように構成することができる。例えば、メモリ制御装置１８は、訂正されたビットシーケンス１７’ａをメモリ１２に書き戻すように構成することができる。さらなる例示的実施形態によれば、メモリ制御装置１８は、少なくとも１つの訂正されたビットをメモリ１２に書き戻すように構成することができる。これは、誤りのあるビット、例えば情報「１」を有するメモリセル１４−３に記憶されているビット１５が、訂正されたビット「０」としてメモリ１２に書き戻されること、および誤りのないビットはメモリに書き戻されないことと理解することができる。
【００３０】
第２のビットシーケンス１７ｂは、第２のメモリセル１４に関する信頼性情報に基づいて、第１のビットシーケンス１７ａほど頻繁には検査されないことがある。例えば、信頼性の決定に基づいて、すなわち第２のメモリセルに関する信頼性情報に基づいて、情報は保存されることも保存されないこともある。１つの例示的実施形態によれば、第１のメモリセル１４に関する信頼性情報は、第１のメモリセル１４が信頼できないものと格付けされるように決定され、第２のメモリセル１６に関する信頼性情報は、第２のメモリセル１６が信頼できるものと格付けされるように決定される。したがって、第１または第２のメモリセルの識別またはアドレス指定を可能にする情報（信頼性情報２２）の保存が、別のメモリセルの識別またはアドレス指定も可能にすることができる。
【００３１】
例示的実施形態によれば、例えば信頼性情報の算出によって、メモリセル１４−１〜１４−３の少なくとも１つは、誤りを生じやすいものとして認識するまたは知ることができる。例えば、メモリセル１４−３は、誤りを生じやすいものとして知られており、すなわち、別のメモリセル（参照セル）と比較して、メモリセル１４−３は、時間間隔ｔ＋Δｔ内にビット誤りを有する、すなわち記憶されている情報を変更している確率がより高い。信頼性情報２２は、メモリセル１４−３に記憶されているビットを含むビットシーケンス１７ａが、時間間隔ｔ＋Δｔ内に誤りを有する、またはその時間間隔の最後に（高い確率で）誤りを有するという通知を提供することができる。これは、信頼性情報２２が、第１のメモリセル１４および／または第２のメモリセル１６でのビット誤りの出現に関する確率に基づくことができることを意味する。例えば、信頼性情報は、第１のメモリセル１４または第２のメモリセル１６に関する、そのメモリセルが時間間隔内に少なくとも１つのビット誤りを有する絶対確率に基づく、または依存することがある。代替または追加として、信頼性情報は、相対確率（すなわちビット誤りの出現可能性が１つのビットシーケンスにおいて別のビットシーケンスよりも高い）に基づくまたは依存することがある。
【００３２】
例えば、メモリセル１４−１〜１４−３を、例えば共通のメモリアドレスに基づいてまとめて使用することができ、それにより、メモリセル１４−３における誤りの生じやすさをメモリセル１４に転用可能である。簡略に表現すると、メモリセル１４−３、したがって第１のメモリセル１４は、誤りを生じやすい、または「不良」とみなすことができ、別のメモリセル１４−１、１４−２、および／または１６は、「正常」または「良好」とみなすことができる。信頼性情報は、良好または不良のメモリセルの通知を提供することができ、したがってそれぞれ別のカテゴリーを導出可能である。さらなる例示的実施形態によれば、各カテゴリーに関して部分信頼性情報が存在してよく、それにより、信頼性情報２２は、部分信頼性情報の全情報とみなすことができる。
【００３３】
メモリ制御装置は、第１のビットシーケンスに関して誤り状態が存在するかどうか判断するように構成することができる。誤り状態は、ビットシーケンス１７ａ内の少なくとも１つのビット誤りの存在に関するものでよい。いくつかの例示的実施形態によれば、ビットシーケンス１７ａは、誤り訂正符号の符号語の少なくとも一部でよく、すなわち、符号語のビットを含んでいてよく、または符号語でよい。誤り訂正符号は、符号語内のｔ個のビット誤りを訂正するために使用可能であり得る。例えば、ｔは、ｔ≧１、またはｔ≧２、またはそれよりも大きい。例えば、ｔ≧２の場合、メモリ制御装置は、少なくとも２つのビット誤りが存在するときに誤り状態が存在すると判断し、存在する誤りの数が０または１であるときには誤り状態が存在しないと判断するように構成される。これは、符号リザーブ（Ｃｏｄｅ−Ｒｅｓｅｒｖｅ）の使用または利用とみなすこともできる。これは、例示的実施形態によれば、特定数の誤りが存在するときに誤りを訂正することができることを意味する。より少数しか存在しない場合、メモリ制御装置１８は、さらなる数の誤り（例えば少なくとも０または少なくとも１つの誤り）を訂正可能であるので、訂正を行わないように構成される。これは、出現時に個々のビット誤りそれぞれを訂正するのに比べて、書込みプロセス、したがって時間および／またはエネルギーの節約を可能にする。
【００３４】
図２は、メモリデバイス１０による機能を有することができ、メモリデバイス１０から修正されたメモリデバイス２０の概略ブロック図を示す。例えば、メモリ制御装置１８は、信頼性情報２２に基づいて、第２のビットシーケンス１７ｂを、第２のメモリセル１６に割り当てられた頻度ｘ２／Ｔで検査するように構成することができる。値ｘ１は、時間間隔Ｔ内に行われる第２のメモリセルに関する読出しプロセスまたはビットシーケンス１７ｂの検査プロセスの回数とみなすことができる。数ｘ２は、数ｘ１よりも小さい値を有していてよい。例えば、数ｘ２は値０を有していてよく、これは、信頼性情報２２に基づいて第２のビットシーケンス１７ｂを検査から除外するようにメモリ制御装置１８を構成することができることを意味する。
【００３５】
第２のビットシーケンス１７ｂの読出しプロセスまたは検査プロセスが行われる場合、メモリ制御装置１８は、誤り状態または第２のビットシーケンス１７ｂが存在するかどうかを検査するように構成することができる。第２のビットシーケンス１７ｂの誤り状態の存在に関する基準と、第１のビットシーケンス１７ａの誤り状態の存在に関する基準とは、同一または同様でよい。第２のビットシーケンス１７ｂの誤り状態が存在する場合、メモリ制御装置１８は、第２のビットシーケンスの少なくとも１つの誤りのあるビット、例えばメモリセル１６−１に記憶されている１５’を訂正して、訂正されたビットシーケンス１７ｂ’または少なくとも１つの訂正されたビットをメモリに書き戻すように構成することができる。第１のビットシーケンス１７ａと第２のビットシーケンス１７ｂに関するビットシーケンス１７ａ’、１７ｂ’全体またはその一部（ビット）のみの書戻しは、同一または同様でよい。
【００３６】
第１のビットシーケンス１７ａまたは第２のビットシーケンス１７ｂが、誤りがない場合にｔ≧２でのｔビット誤り訂正符号の符号語または符号語の一部であって、かつ符号リザーブが使用される場合、第１または第２のビットシーケンスの誤り状態は、第１または第２のビットシーケンスに少なくともσ個のビット誤りが存在するときに誤り状態が存在するものとして表現することもできる。ここで、σ＞τが成り立っていてよい。τは、τ≧１の値を有する誤り閾値でよい。誤り状態が存在しない場合、メモリ制御装置は、訂正されたビットシーケンスを書き戻さないように構成することができる。
【００３７】
図３は、メモリデバイス１０を修正した、例示的実施形態によるメモリデバイス３０の概略ブロック図を示す。メモリデバイス３０はメモリ１２を含み、メモリ１２は、アドレス指定可能なメモリとして構成される。アドレス指定可能なメモリ１２は、第１のメモリセル１４−１〜１４−５（または１４）を有し、これらのメモリセルは、第１のアドレスａ１，１によってアドレス指定される。アドレス指定可能なメモリは、第２のメモリセル１６−１〜１６−５（または１６）を有し、これらのメモリセルは、第２のアドレスａ２，１によってアドレス指定される。第２のアドレスａ２，１は、第１のアドレスａ１，１とは異なっていてよい。第１のアドレスａ１，１および第２のアドレスａ２，１の下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号Ｃｃｏｒの符号語のビットでよい。誤りのあるビットシーケンス１７は、少なくとも１つのビット誤りを有することがある。訂正されたビットシーケンス１７’は、ビットシーケンス１７に比べて減少された誤り数を有することがあり、場合によっては誤りを有さないことがある。
【００３８】
例示的実施形態によれば、ビットシーケンスは、符号語のセグメントである。さらなる例示的実施形態によれば、ビットシーケンスは、符号語である。
【００３９】
メモリデバイス３０はメモリ制御装置１８を含み、メモリ制御装置１８は、記憶されているビットシーケンス中の誤りのある内容を訂正するために、第１のメモリセル１４および／または第２のメモリセル１６を読み出して、読出しプロセスを行うように構成される。第１のメモリセル１４および／または第２のメモリセル１６に関して信頼性情報２２が存在する場合、第１のメモリセル１４と第２のメモリセル１６との連続する読出しプロセスの頻度は異なっていてよい。信頼性情報は、第１のメモリセル１４および／または第２のメモリセル１６内での誤りのあるビットシーケンスの出現に関する算出確率に基づくことがある。
【００４０】
信頼性情報２２は、メモリセル自体またはそのアドレスに関して信頼性情報が存在するメモリセルが、（同様または同一のメモリに配置された）別のメモリセルと比較して高いまたは低い信頼性（すなわち低い誤り確率）を有するものと解釈することができる。
【００４１】
例えば、メモリ制御装置１８は、データライン２４によってアドレス指定可能なメモリ１２に接続されている。データライン２４は、例えば、双方向データ接続でよい。代替として、データライン２４は、少なくとも２つの一方向接続、例えば、メモリ制御装置１８からアドレス指定可能なメモリ１２への第１の接続と、アドレス指定可能なメモリ１２からメモリ制御装置１８への第２の接続とを含むこともできる。データライン２４は、有線接続されても、無線で構成されてもよい。
【００４２】
アドレス指定可能なメモリは、アドレスを使用して読出しアクセスおよび／または書込みアクセスによって少なくとも１つのメモリセルにアクセスすることができる各メモリでよい。例えば、ここでは、前述した揮発性または不揮発性メモリでよい。特に、メモリ１２は、ＭＲＡＭメモリでよい。
【００４３】
第１のメモリセル１４および／または第２のメモリセル１６の、記憶されているビットシーケンス中の誤りのある内容を訂正するために、メモリ制御装置１８は、それぞれのアドレスａ１，１および／またはａ２，１を使用して、メモリセル１４または１６に記憶されているビットシーケンスをデータライン２４を介して読み出し、符号Ｃｃｏｒを使用して誤りの存在を検査または判断するように構成することができる。
【００４４】
メモリ制御装置は、誤り確率がより高いものと考えられることを信頼性情報が示すメモリセル１４および／または１６を、より頻繁に読み出すように構成することもできる。代替として、メモリ制御装置は、誤り確率がより低いものと考えられるメモリセル１４および／または１６を、より低い頻度で読み出すように構成することもできる。より高い誤り確率を有するメモリセルの割合は、より低い誤り確率を有するメモリセルの割合よりも小さいことがあり、したがって、より高い誤り確率を有するメモリセルへの信頼性情報の割当ては、より少ないコストおよびより高い効率で行うことができる。したがって、信頼性情報２２は、誤り確率情報と呼ぶこともできる。
【００４５】
メモリ制御装置１８は、第１のメモリセル１４を、そこに記憶されているビットシーケンス中のビット誤りの存在についてより頻繁に検査するように構成することができる。これに関し、メモリ制御装置１８は、例えば、アドレスａ１，１に関して信頼性情報を有することがある。信頼性情報は、例えば、アドレスａ１，１またはそこから導出される情報（ビットシーケンス）でよい。信頼性情報２２は、別のメモリセル１６、１４とは異なる信頼性を有するメモリセル１４、１６を宛先とするアドレスａ１，１および／またはａ２，１に関する情報を含むことができる。簡略に表現すると、信頼性情報２２は、メモリセル１４または１６が別のメモリセルよりも頻繁に、または別のメモリセルよりも少ない頻度で誤りの存在について検査される、または検査されるべきであるかどうかに関する情報を提供することができる。
【００４６】
信頼性情報は、メモリ２６に記憶することができる。メモリ２６は、データライン２８によってメモリ制御装置１８と接続されている揮発性または不揮発性メモリでよい。代替または追加として、メモリ２６は、メモリ制御装置１８の一部でよい。代替または追加として、信頼性情報２２は、アドレス指定可能なメモリ１２に記憶することができる。
【００４７】
信頼性情報は、少なくとも、メモリセルが正常とみなされることを示す第１の値と、メモリセルが正常でないとみなされることを示す第２の値とを有することができる。さらなる信頼性情報は、例えば、グループ「正常」または「正常でない」内の第１または第２の値のアドレスの下位グループが、より高いまたはより低い時間間隔で検査されることを示すことができる。
【００４８】
以下の実施形態は、信頼性情報が、ビット誤りを有するより高い確率をメモリセルが有するという情報を提供することに関し、メモリ制御装置１８は、これらのメモリセル１４を別のメモリセル１６よりも頻繁に誤りの存在について検査するように構成されるが、これは逆にすることもできる。したがって、信頼性情報２２は、例えば、ビット誤りの存在に関してより低い確率をメモリセル１６が有するという情報を提供することができ、したがって、メモリセル１６は、第１のメモリセル１４がビット誤りの存在を検査される頻度よりも低い頻度でビット誤りの存在について検査される。
【００４９】
連続する読出しプロセスの頻度は、連続する時点での読出しプロセスと理解することもできる。
【００５０】
信頼性情報２２は、例えば、誤りのあるビットシーケンス１７の出現に関する算出（推定）された確率に基づく。例えば、第１のメモリセル１４の少なくとも１つのメモリセル１４−１〜１４−５が、時間間隔ｔ＋Δｔ内にビット誤りを有する確率がより高い場合、これを、第１のメモリセル１４に関して一般化または集約し、アドレスａ１，１またはそこから導出される情報に要約することができる。以下に詳述するように、ビット誤りの出現に関する算出（推定）確率は、メモリセル１４の物理的パラメータに基づいて算出、すなわち決定または推定することができる。例えば、算出確率を推定または決定するために、メモリセルの読出しのための読出し電流および／またはメモリセルの書込みのための書込み電流を使用することができる。代替または追加として、物理的パラメータは、熱的安定性と関連付けられ、および／またはメモリセルの熱的安定性によって影響を及ぼされるさらなるパラメータでよい。
【００５１】
メモリ制御装置は、第１のアドレスａ１，１および／または第２のアドレスａ２，１の下で記憶されており読み出される誤りのあるビットシーケンス１７を、誤り訂正符号を使用して訂正するように構成することができる。例えば、メモリ制御装置１８は、誤りのあるビットシーケンス１７を訂正し、訂正されたビットシーケンス１７’を得て、メモリセル１４−１〜１４−５または１６−１〜１６−５を、訂正されたビットシーケンス１７’で上書きし、それにより、訂正されたビットシーケンス１７’がアドレス指定可能なメモリ１２に存在するように構成することができる。
【００５２】
本明細書で述べる例示的実施形態のいくつかは、より低いまたはより高い誤り確率が決定または推定されるメモリセルに関して信頼性情報２２が存在するものとして述べられているが、アドレス指定可能なメモリのアドレスの第１の部分集合に関してはこれらが第１の誤り確率を有することが示され、アドレスの第２の部分集合に関してはこれらが第１の部分集合とは異なる第２の誤り確率を有することが示されるように信頼性情報が存在してもよい。代替または追加として、少なくとも１つのさらなる信頼性情報は、アドレスのさらなる部分集合が、第３の誤り確率が仮定されるメモリ状態をアドレス指定することを示すことができる。さらなる信頼性情報の使用は、様々な時間間隔でのメモリセルの読出し／検査を可能にする。
【００５３】
第１のメモリセルに関して信頼性情報（誤り確率情報）が存在する場合、第１のメモリセルの読出しプロセスの頻度は、第２のメモリセルの読出しプロセスの頻度よりも高いことがある。信頼性情報は、第１のメモリセル１４内での誤りのあるビットシーケンス１７の出現に関する確率が参照状態に比べて高いことに基づく。
【００５４】
簡略に表現すると、メモリデバイス１８は、誤りのあるビットシーケンス１７の出現に関するより高い確率を有する第１のメモリセルを、別のメモリセル１６よりも頻繁に、すなわちより小さい時間間隔で検査するように構成することができる。これは、より低い頻度の検査で十分であるメモリセル１６についてはより低い頻度で検査が行われるものと理解することもできる。これは、メモリセルの数回の検査が省かれることによって、算術演算、したがって時間および電気エネルギーの節約を可能にする。
【００５５】
既知の概念では、最も低い熱的安定性または信頼性を有するメモリセルが十分に頻繁に訂正されるような頻度または短い周期で、セルの定期的な上書きが行われる。これにより、さらに、高い熱的安定性を有するメモリセルも、誤りを有する頻度がはるかに低いにも関わらず、より低い熱的安定性を有するメモリセル（誤りを有する頻度がはるかに高い）と同じ頻度で読み出されることになり得て、これは、大きな時間的コストおよび電力コストをもたらす。いくつかの例示的実施形態によれば、例えば、高い熱的安定性を有するメモリセルが、低い熱的安定性を有するメモリセルよりも少ない頻度で読み出されることによって、このコストが減少される。
【００５６】
より良く理解できるように、以下の実施形態は、１個、２個、３個、または４個以上の誤りを検出または訂正するために使用可能である誤り訂正および／または誤り検出符号に関する。しかし、本明細書で述べる例示的実施形態は、誤りを検出するまたは誤りを訂正する符号の機能に限定されない。例えば、誤り訂正符号は、少なくとも１個、最大で１００個の誤りを訂正する、少なくとも２個、最大で９０個の誤りを訂正する、および／または少なくとも３個、最大で８０個の誤りを訂正するように構成することができる。
【００５７】
図４ａおよび図４ｂは、信頼性情報２２に基づくメモリセルの読出しおよび／または上書きに関する概略時間推移を示す。例えば、アドレスａ１，１によってアドレス指定されるメモリセルに関して、信頼性情報が存在する。アドレスａ２，１の下でビットシーケンスが読み出される時間間隔Δｔ２は、アドレスａ１，１の下でビットシーケンスが読み出される時間間隔Δｔ１よりも大きくてよい。アドレスａ２，１の下でビットシーケンスが読み出される頻度は、アドレスａ１，１の下でビットシーケンスが読み出される頻度よりも小さいことがある。頻度は、例えば、時間間隔Ｔ内の読出しプロセスの数とみなすことができる。
【００５８】
図４ｂに概略的に示されるように、時間間隔Δｔ２は、時間間隔Δｔ１の数倍、場合によっては整数倍でよい。例えば、メモリ制御装置は、時間間隔Δｔ１で読出し手順を開始し、１つまたは複数のアドレスに関して信頼性情報が存在するかどうか検査するように構成することができる。
【００５９】
メモリ制御装置１８は、信頼性情報が存在するアドレスを時間間隔Δｔ１で読み出し、信頼性情報が存在しないアドレスを読み出さないように構成することができる。時間間隔Δｔ２で、メモリデバイス１８は、信頼性情報が存在するかどうかに関係なく、全てのアドレスａ１，１およびａ２，１を読み出すように構成することができる。これはまた、例えば誤りの出現に関してアドレス（アドレスａ２，１）がより低い確率を有することを信頼性情報が示すときに、補完的に実施可能であり得る。例えば、メモリデバイスは、信頼性情報が存在しない全てのアドレスを時間間隔Δｔ１で読み出すように構成することができる。
【００６０】
図５は、例えばメモリ制御装置１８によって実施可能である方法５００の概略流れ図を示す。ステップ５１０で、アドレス指定可能なメモリからビットシーケンスを読み出すことができる。ビットシーケンスは、例えば、第１のアドレスａ１，１および／または第２のアドレスａ２，１の下で記憶することができ、すなわちこれらのアドレスによってアドレス指定可能であり得る。
【００６１】
ステップ５２０で、指定のビットシーケンスを復号することができる。これに関して、メモリ制御装置によって、誤り訂正符号Ｃｃｏｒを使用することができる。誤り訂正符号Ｃｃｏｒは、例えばｔビット訂正符号でよい。例えば、ｔ≧１が成り立っていてよい。さらなる例示的実施形態によれば、ｔ≧２が成り立ち、これは、読み出されたビットシーケンス中の少なくとも２つのビット誤りが訂正可能であることを意味する。いくつかの例示的実施形態によれば、ｔ≧３、ｔ≧４、またはｔ≧５以上が成り立っていてよい。
【００６２】
ステップ５３０で、例えば数σが１よりも小さい（誤りがない）とき、またはｔよりも大きいとき、存在するビット誤りの数σに基づいて誤り訂正を終了することができる（ステップ５４０）。
【００６３】
ステップ５３０の条件が満たされている場合、メモリ制御装置は、ステップ５５０で、数σが閾値τ以下であるかどうか判断するように構成することができる。閾値τに関して、例えばτ≧１およびτ≦ｔが成り立っていてよい。条件σ≦τが満たされている場合、すなわち、誤りの数σが閾値τ以下である場合、ステップ５４０に移ることができる。これはまた、存在する誤りの数σが、誤り訂正符号Ｃｃｏｒによって訂正可能である誤りの数に完全に、またはある程度（閾値）まで達しているかどうか、および／または符号リザーブが存在するかどうかに関する言明を条件５５０が提供するものと理解することができる。訂正可能な誤りの数に十分には達していない場合、書戻しを省くことができる。
【００６４】
例えばステップ５５０の条件が満たされている場合、すなわち誤りの数σが閾値τを超えた場合、メモリ制御装置は、ステップ５６０で、ビット誤りを訂正して、訂正されたビットシーケンス、例えば訂正されたビットシーケンス１７’を得るように構成することができる。
【００６５】
メモリ制御装置は、ステップ５７０で、訂正されたビットシーケンスをアドレス指定可能なメモリに書き戻すように構成することができる。これは、誤りのあるビットシーケンス中で、誤りのあるビットを訂正されたビットで上書きし、誤りのないビットは上書きしないようにメモリ制御装置を構成することができることを意味する。有利には、出現するさらなる誤りをも訂正符号が訂正することができるほど、存在する誤りの数が小さいとき、誤りの訂正を省略することができる。例えば、さらなる誤りの出現の可能性が低く、出現する誤りが常に個々に訂正されることがあり、少なくとも１つのさらなる誤りを符号によって訂正可能である。このとき、メモリへの訂正および／または書戻しを省くことができ、これは、メモリデバイスをその効率の面でさらに改良する。
【００６６】
以下に述べるように、ステップ５７０で、書戻しは、アドレス指定されたメモリセルに全ビットシーケンスが書き戻されるように行うことができる。代替として、ビット誤りを有するビット（メモリセル）のみを新規書込みすることもできる。これは、書き込まれるメモリセルの数を小さくすることができる、または減少させることができることを意味し、それにより、さらに効率が向上される。
【００６７】
上述したステップは、記載した順序で実施可能であり得る。代替として、順序が異なっていてもよく、および／またはいくつかのステップは行われても行われなくてもよい。例えば、ステップ５６０をステップ５３０の前に行うことができる。代替または追加として、ステップ５６０をステップ５５０の前に行うこともできる。代替または追加として、例えば、誤りが存在するかどうかの判断の際にステップ５５０の条件が検査され、ステップ５３０の明示的な実施が省かれることによって、例えばステップ５３０を暗黙的に行うことができる。
【００６８】
簡略に表現すると、メモリデバイスは、第１のアドレスａ１，１の下で記憶されており読み出された、σ個の誤りを有する誤りのあるビットシーケンスを、誤り訂正符号を使用して訂正し、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きする、および／または訂正されたビットシーケンスを書き戻すように構成することができる。誤り訂正符号は、ｔ≧２でのｔビット訂正符号でよい。１＜σ≦ｔが成り立っていてよい。代替として、メモリ制御装置は、少なくとも１つの誤りが検出されたときに、読み出されたビットシーケンスを訂正する、および／または誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きする、および／または訂正されたビットシーケンスを書き戻すように構成することができる。
【００６９】
メモリ制御装置は、誤りの数σが閾値τ以下であるときには、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きせず、訂正されたビットシーケンスを書き戻さないように構成することができる。ここで、書戻しが行われないときには、１≦τ≦ｔおよびσ≦τが成り立っていてよい。訂正されたビットが書き戻される場合、１≦τ＜σ≦ｔが成り立っていてよい。
【００７０】
メモリ制御装置は、連続する読出しプロセス（アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号Ｃｃｏｒによって訂正される）において、第１のメモリセルに訂正されたビットシーケンスを上書きするように構成することができる。メモリ制御装置は、読出しプロセス（アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号によって訂正されない）において、第１のメモリセルにビットシーケンスを上書きしないように構成することができる。例えば、これは、ステップ５３０の条件が満たされていないことにより、および／またはステップ５５０の条件が満たされていることにより行われることがある。
【００７１】
任意選択のライン５２２によって示唆されるように、メモリ制御装置またはメモリデバイスは、連続する読出しプロセス（アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号によって訂正または検出されない）において、第１のメモリセルに読み出されたビットシーケンスを上書きするように構成することができる。これは、誤りがない場合、または訂正が実施されなかった（すなわち、誤りが検出されたが訂正されなかった）場合にも、読み出されたメモリセルに誤りのないビットシーケンスが上書きされることがあることを意味する。
【００７２】
第１のメモリセルおよび／または第２のメモリセル内での誤りのあるビットシーケンスの出現に関する算出確率（信頼性情報がそれに基づく）は、時点ｔで第１のアドレスａ１，１の下で第１のメモリセルに記憶されていた誤りのないビットシーケンスが時点ｔ＋Δｔでは誤りを有することに関することがある。誤りのあるビットシーケンスの出現に関する算出確率は、少なくとも１つの物理的パラメータの値を使用して算出することができる。
【００７３】
物理的パラメータは、例えば、第１または第２のメモリセルの読出しのための読出し電流、第１または第２のメモリセルの書込みのための書込み電流、および／または一般に、メモリセルの熱的安定性と関連付けられる物理的パラメータである。
【００７４】
図６は、アドレス指定可能なメモリのメモリセルの書込み電流を横座標に表し、横座標にプロットされた書込み電流を有するそれぞれのメモリセルの割合を縦座標に表す概略グラフを示す。メモリセルの全体集合３２は、例として、図示される分布を有する。メモリセルの全体集合３２のうちの第１の部分（部分集合）３４は、第１の閾値ｉ１よりも小さい書込み電流ｉを有する。全体集合３２のうちの第２の部分（部分集合）３６は、第２の閾値ｉ２よりも大きい書込み電流ｉを有し、ここで、第２の閾値は、第１の閾値よりも大きい。全体集合３２のうちの第３の部分（部分集合）３８は、第１の閾値ｉ１以上であって第２の閾値ｉ２以下である書込み電流を有する。閾値ｉ１とｉ２の間の範囲は、参照状態とみなすことができる。代替として、閾値ｉ１とｉ２の平均値および／または許容範囲を考慮した平均値を参照値とみなすこともできる。許容範囲は、例えば、平均値を中心として±５０％、±４０％、または±３０％の範囲内に設定することができる。
【００７５】
第１のメモリセルに関して信頼性情報が存在する場合、第１のメモリセルの読出しプロセスの頻度は、第２のメモリセルの読出しプロセスの頻度よりも高いことがある。代替として、第２のメモリセルに関して、信頼性情報が存在してよい。信頼性情報は、第１のメモリセル内での誤りのあるビットシーケンスの出現に関する確率Ｐが参照状態に比べて高いことに基づく。
【００７６】
全体集合３２が、例えばＭＲＡＭメモリのメモリセルに関するものである場合、部分集合３４のメモリセルは、時間間隔ｔ＋Δｔ内に誤りを有する確率が部分集合３８のメモリセルよりも高いことがある。部分集合３６のメモリセルは、例えば、永久的に誤りのあるものとして分類することができる。閾値ｉ１は、例えば、少なくとも１０μＡ〜最大４０μＡの範囲内、少なくとも１５μＡ〜最大３０μＡの範囲内、または約２０μＡの値を有していてよい。閾値ｉ２は、例えば、少なくとも１００μＡ〜最大３００μＡの範囲内、少なくとも１５０μＡ〜最大３００μＡの範囲内、または約２００μＡの値を有していてよい。同様に、メモリセルが時間間隔内に誤りを有する確率と共に、別の物理的パラメータも使用可能であり得る。別のタイプのメモリまたは別のタイプの物理的パラメータに関しては、別の値が使用可能であり得る。
【００７７】
メモリデバイスまたはメモリ制御装置は、物理的パラメータを決定するように構成することができる。代替または追加として、メモリ制御装置は、場合によっては外部から、物理的パラメータまたはそこから導出される情報を得るように構成することができる。例えば、メモリ制御装置は、メモリセルの読出しのための電流および／またはメモリセルの書込みのための電流を決定、すなわち測定するように構成することができる。これは、メモリデバイスが、メモリデバイスの動作中に１つまたは複数の第１のアドレスを決定することを可能にする。代替として、例えば信頼性情報がアドレス指定可能なメモリまたはさらなるメモリに保存されていることによって、図３に関連して説明したように、メモリ制御装置に信頼性情報を提供することもできる。
【００７８】
メモリ制御装置は、物理的パラメータをさらなる閾値、例えば閾値ｉ３と比較するように構成することができ、閾値ｉ３は、閾値ｉ１よりも大きく、閾値ｉ２よりも小さい。これは、アドレス指定可能なメモリが、第３のアドレスａ３，１によってアドレス指定可能であり得る第３のメモリセル３８’を有することを意味する。アドレスａ３，１の下で記憶されているビットシーケンスは、誤りがない場合には、誤り訂正符号の符号語のビットを含むことができる。メモリ制御装置は、記憶されているビットシーケンス中の誤りのある内容を訂正するために、第１、第２、および／または第３のメモリセルを読み出して、読出しプロセスを行うように構成することができる。第１のメモリセルに関して第１の信頼性情報が存在し、第３のメモリセルに関して第３の信頼性情報が存在する場合、第１のメモリセル、第２のメモリセル、および第３のメモリセルの連続する読出しプロセスの頻度は異なっていてよい。第１の信頼性情報および第２の信頼性情報は、第１、第２、および／または第３のメモリセル内での誤りのあるビットシーケンスの出現に関する算出確率に基づくことがある。これは、アドレスのさらなる部分集合を記憶もしくは算出することができること、またはアドレス指定可能なメモリのアドレスが３つ以上の互いに異なる頻度で読み出されることを意味する。これはまた、第２のメモリセルに記憶されている第２のビットシーケンスを、第２のメモリセルに割り当てられた頻度で検査し、第３のメモリセル３８’に記憶されているビットシーケンスを、第３のメモリセルに割り当てられた頻度で検査するようにメモリ制御装置を構成することができるものと理解することもできる。第１のメモリセルに割り当てられた頻度と、第２のメモリセルに割り当てられた頻度と、第３のメモリセルに割り当てられた頻度とは、第１のメモリセルに関する信頼性情報および／または物理的パラメータに基づいて、第２のメモリセルに関する信頼性情報および／または物理的パラメータに基づいて、ならびに第３のメモリセルに関する信頼性情報および／または物理的パラメータに基づいて異なっていてよい。
【００７９】
代替または追加として、さらなる例示的実施形態によれば、メモリ制御装置は、閾値ｉ４に基づいて部分集合３４を区分するように構成することができる。これは、誤りを生じやすいものとして格付けされた様々なメモリセルに、例えば互いに異なる部分信頼性情報に基づいて互いに異なる頻度を割り当てることができることを意味する。メモリ制御装置は、部分信頼性情報を含む信頼性情報に基づいて、これらのメモリセルを互いに異なる頻度で検査するように構成することができる。例えば、部分信頼性情報は、アドレスまたはそこから導出される情報として、異なる頻度で照会される互いに異なるメモリまたはメモリ領域に記憶することができる。
【００８０】
すなわち、図６は、書込み電流の値ｉに応じた例えばＭＲＡＭのメモリセルの割合に関する一例、または異なる書込み電流を有するメモリセルの百分率の図を示す。ｉ＜ｉ１での書込み電流ｉを要求するメモリセルの割合は、番号１を付された面によって表される。ここで、ｉ１は、例えば約２０マイクロアンペアの値でよく、ｉ２は、２００マイクロアンペアの値でよい。ｉ１＜ｉ≦ｉ２での書込み電流ｉを有するメモリセルの割合は、番号２を付された面によって表される。ｉ＞ｉ２での書込み電流ｉを有するメモリセルの割合は、番号３を付された面によって表される。
【００８１】
例えば、ｉ１よりも小さい書込み電流を有するメモリセルは、時点ｔで正しい状態であったときに時点ｔ＋Δｔで誤りを有する状態になる確率が、ｉ１＜ｉ≦ｉ２での書込み電流ｉを有するメモリセルよりも高いものと考えることができる。ｉ＞ｉ２での書込み電流ｉを有するメモリセルは、比較的高い確率で、永久的に誤りのあるものと考えることができる。
【００８２】
ｉ＞ｉ２での書込み電流ｉを有する少なくとも１つのメモリセルをアドレス指定するアドレスは、誤りが存在する場合、修復法で修復されるアドレスとして選択することができる。
【００８３】
アドレスαによってメモリセルがアドレス指定され、これらのメモリセルの少なくとも１つが永久的な誤りを有する場合、そのようなセルに記憶されるべき実際の値が永久的な値とは異なるとき、反転されたビットシーケンスを記憶し、またはビットのグループ内に反転されたビットシーケンスを記憶し、少なくとも１つの反転ビットによって、記憶されているビットシーケンスまたはビットのグループが反転されて記憶されているか、それとも反転されずに記憶されているかをマークすることができる。
【００８４】
誤り訂正符号Ｃｃｏｒとして、例えばｔ＝２でのｔビット誤り訂正符号が使用される場合、アドレスの集合α１は、ｉ１以下の書込み電流を有する２つのメモリセルを含むメモリセルをアドレス指定するアドレスとして決定することができる。ｉ１以下の書込み電流を有する２つのメモリセルを有するアドレスの集合は、ｉ１以下の書込み電流を有する１つのメモリセルを有するアドレスの集合よりも小さい。
【００８５】
ｔ≧３でのｔビット誤り訂正符号が使用される場合、アドレスの集合α１は、ｉ１以下の書込み電流を有するτ個のメモリセルを含むメモリセルをアドレス指定するアドレスとして決定することができ、ここで、τ≦３が成り立つ。
【００８６】
ｉ１以下の書込み電流を有するτ個よりも多いメモリセルをアドレス指定するアドレスを、修復されるアドレスとして選択することもできる。いくつかの例示的実施形態は、動作進行中にアドレスの様々な集合を修正することを企図する。
【００８７】
別の例示的実施形態は、スタートアップ時にアドレスの様々な集合を決定し、次いで動作進行中にそれらを修正することを企図する。
【００８８】
したがって、例えば、ｔビット誤り訂正符号が誤り訂正のために使用され、１≦τ≦ｔ（ｔ≧１）が成り立つとき、最初は集合α１に属していないアドレスａを、このアドレスの下でτビット誤りが出現したときに集合α１に割り当てることが可能である。
【００８９】
別の例示的実施形態は、このアドレスへのＳ回のアクセス（Ｓは所定のアクセス回数）で誤りが出現しないとき、集合α１のアドレスａ１，ｊをこの集合から除外することを企図する。
【００９０】
別の例示的実施形態は、動作進行中またはスタートアップモードにおいて、メモリアクセス時にどれだけの頻度でメモリセルが誤りを有していたかに関するテーブルを使用し、テーブルに記憶されているデータに基づいて集合α１またはα２を修正することを企図する。
【００９１】
また、書込み電流に関して３つ以上の閾値を考察し、アドレスの３つ以上の部分集合を形成することも可能である。
【００９２】
別の例示的実施形態は、読出し電流ｉを有するメモリセルの割合を決定し、メモリセルに関する読出し電流の数に応じて、時点ｔにメモリセルに記憶されている誤りのない値が時点ｔ＋Δｔで誤りを有する確率を予測または推定し、必要な読出し電流に応じてアドレスの集合α１を決定することを企図する。
【００９３】
別の例示的実施形態は、メモリセルに関する測定された書込み電流と読出し電流とに応じて、時点ｔでメモリセルに記憶されている誤りのない値が時点ｔ＋Δｔで誤りを有する確率を予測または推定し、書込み電流と読出し電流とに応じて、より頻繁に読み出されるアドレスの集合α１を決定することを企図し、ここで、読み出されたデータは、誤りが訂正可能である場合には、訂正されて書き戻される。
【００９４】
以下、アドレス指定可能なメモリ内で１つのアドレスによってアドレス指定可能なメモリセルを参照する。
【００９５】
図７は、メモリ１２のアドレスへのメモリセルの割当てに関する概略図である。アドレス指定可能なメモリのアドレスは、例えばｌ個のビットに関して解決可能であり得、したがって、ｌ個のビットに基づいて、０〜２ｌ−１の範囲内で２ｌ個のアドレスが解決可能であり、すなわちアドレス指定可能である。複数の、多数の、または場合によっては全てのアドレスａの下で、ｃ個のチェックビットおよびｕ個のデータビットが記憶可能であり得る。訂正すべき符号Ｃｃｏｒの符号語４２は、チェックビットｃおよびデータビットｕを含むことができる。代替または追加として、符号語４２’は、チェックビットｃ、データビットｕ、およびアドレスビットａ、またはそこから導出されるビットシーケンスを含むことができる。アドレスビットａ、チェックビットｃ、およびデータビットｕの上付きの添字０〜２ｌ−１は、それぞれのビットがどのアドレス０〜２ｌ−１の下で記憶可能であるかを示すためのものであり得る。
【００９６】
符号語４２’の利点は、記憶されている第１のアドレスａ１，１および／または第２のアドレスａ１，２のアドレス情報も符号化可能であり、したがって訂正可能であることである。これは、記憶されているアドレス情報におけるビット誤りが検出可能および／または訂正可能であることを意味する。
【００９７】
代替として、符号語４２’は、アドレスビットａから導出された別の情報も含むことができ、例えばアドレスビットに関する冗長情報を含む。
【００９８】
以下に述べる例示的実施形態は、アドレス指定可能なメモリに関し、ここで、例えば、第１のアドレスａ１，１および第２のアドレスａ２，１をより詳細に考察する。いくつかの例示的実施形態によれば、アドレス指定可能なメモリは多数のアドレスを有し、これらのアドレスは、メモリセルをアドレス指定するようにそれぞれ構成され、ここで、それぞれのメモリセルに情報を記憶可能であり、これらの情報は、誤り訂正符号の符号語の一部である、または符号語である。
【００９９】
第１および第２のアドレスに関する上記の説明は、いくつかの例示的実施形態によれば、アドレス指定可能なメモリが、多数のさらなる第１のアドレスａ１，２、…、ａ１，ｍ（ｍ＞１）を有することができるものと理解することができる。さらに、アドレス指定可能なメモリは、さらなる第２のメモリセルを有することができ、それらのメモリセルは、さらなる第２のアドレスａ２，２、…、ａ２，Ｍ（Ｍ＞１）によってアドレス指定可能である。第１のメモリセルおよびさらなる第１のメモリセルは、第１のメモリセルの全体集合、例えば部分集合３４を構成することができる。
【０１００】
第１のメモリセルに関する上記の実施形態は、さらなる第１のメモリセルに容易に転用可能である。第１のメモリセルの全体集合は、アドレスの第１の部分集合α１によってアドレス指定可能であり得て、ここで、部分集合α１は、アドレスａ１，１、…、ａ１，ｍ（ｍ≧１）を含むことができる。第２のメモリセルおよびさらなるメモリセル（例えば、アドレスａ２，２、…、ａ２，Ｍによってアドレス指定可能なメモリセル）は、例えば第２のメモリセルの全体集合、例えば部分集合３８または全体集合３２を構成する。第２のメモリセルに関する上記の実施形態は、さらなる第２のメモリセルに容易に転用可能である。第２のメモリセルの全体集合は、アドレスの第２の部分集合α２によってアドレス指定可能であり得て、ここで、部分集合α２は、アドレスａ２，１、…、ａ２，Ｍ（Ｍ≧１）を含むことができる。アドレスα２は、メモリの使用される全てのアドレスでもよく、および／またはアドレスα１を含んでいてもよい。
【０１０１】
第１および第２のアドレス、またはアドレスの第１の部分集合α１および第２の部分集合α２は、それぞれメモリに保存することができる。代替として、例えば、アドレスの第１の部分集合α１またはアドレスの第２の部分集合α２は、アドレスメモリに保存することができ、別の部分集合は、例えば、全てのアドレス指定可能なまたは使用されるアドレスに関係していてよく、暗黙的に知られていることがある。これらの部分集合は、例えばメモリに保存しなくても、例えばアドレスカウンタによってアドレス指定可能であり得て、アドレスカウンタは、アドレス情報を増分または減分するように構成され、それにより全てのアドレスを循環的に巡る。メモリ制御装置は、アドレスカウンタのそれぞれの値をメモリ２６の内容と比較するように構成することができる。簡略に表現すると、アドレスの部分集合または全体集合は、アドレスの別の部分集合を含むことができる。
【０１０２】
メモリ制御装置は、記憶されているビットシーケンス４４ａおよび／または４４ｂ中の誤りのある内容を訂正するために、第１のメモリセル１４ａ〜ｂおよび／または第２のメモリセル１６ａ〜ｂの全体集合を読み出して、読出しプロセスを行うように構成することができる。第１のメモリセル１４ａ〜ｂの全体集合に関しておよび／または第２のメモリセル１６ａ〜ｂの全体集合に関して信頼性情報が存在する場合、第１のメモリセル１４ａ〜ｂの全体集合と第２のメモリセル１６ａ〜ｂの全体集合の連続する読出しプロセスの頻度は異なっていることがある。図３を参照すると、信頼性情報２２は、例えばアドレスａ１，１およびアドレスａ１，２を含む、またはそれを通知することができる。
【０１０３】
第１のメモリセル１４ａ〜ｂの全体集合に関して信頼性情報が存在する場合、第１のメモリセル１４ａ〜ｂの全体集合の読出しプロセスの頻度は、第２のメモリセル１６ａ〜ｂの全体集合の読出しプロセスの頻度よりも高いことがある。
【０１０４】
図３を参照すると、メモリデバイス１０は、メモリデバイス１０のスタートアップ中に部分集合α１を決定するように構成することができる。スタートアップは、例えば、デバイスの作動、ブートプロセス、および／または循環的な検査プロセスに関するものでよい。例えば、メモリ制御装置１８は、それぞれのメモリセルおよび／またはメモリセルのグループの物理的パラメータを捕捉し、捕捉された物理的パラメータに基づいて第１の部分集合α１および／または第２の部分集合α２を決定するように構成することができる。代替として、例えば製造プロセス中に、別のデバイスの第１または第２の部分集合を決定して保存することができる。
【０１０５】
メモリ制御装置１８は、決定された第１の部分集合α１および／または第２の部分集合α２を揮発性メモリに記憶するように構成することができる。代替または追加として、メモリ制御装置は、第１の部分集合α１および／または第２の部分集合α２を不揮発性メモリおよび／またはアドレス指定可能なメモリ１２に記憶するように構成することができる。アドレス指定可能なメモリ１２への第１または第２の部分集合の保存は、どのメモリセルがより高いまたはより低い頻度で検査を必要とするかについての情報がアドレス指定可能なメモリ１２に既に含まれている状態を実現することができる。不揮発性メモリ、例えばメモリ２６またはメモリデバイス１８のローカルメモリへの第１の部分集合α１および／または第２の部分集合α２の保存は、信頼性情報および／またはアドレス情報への迅速なアクセスを可能にすることができる。さらに、アドレス指定可能なメモリ１２とは異なるメモリへの第１の部分集合α１および／または第２の部分集合α２の保存は、部分集合に関して保存される情報が、アドレス指定可能なメモリ１２の誤り確率に依存しないことを可能にすることができる。
【０１０６】
すなわち、図７は、各アドレスの下でｎビットを記憶することができるｌ次元のアドレスを有するアドレス指定可能なメモリを示す。アドレス指定可能なメモリには、誤り訂正符号のチェックビットおよびデータビットを記憶することができる。例えば、２ｌ個のアドレスがあり、これらのアドレスは、バイナリ表現で、
0006339137.tif 000003
と表すことができる。
【０１０７】
アドレスａｉの下で記憶されているビットは、
0006339137.tif 000004
として表される。
【０１０８】
ビットｘｉは、本例示的実施形態では、ｍ個のチェックビット
0006339137.tif 000005
と、ｋ個のペイロードビット
0006339137.tif 000006
またはデータビット
0006339137.tif 000007
とからなり、ここで、ｎ＝ｍ＋ｋであり、
0006339137.tif 000008
が成り立つ。
【０１０９】
以下でより詳細に述べるように、ｉ＝０、…、２ｌ−１に関して、チェックビットｃｉおよびペイロードビットｕｉは、誤りがない場合には、誤り検出／誤り訂正符号Ｃｃｏｒの符号語のビットである。ペイロードビットは、単にデータビットと呼ぶこともある。
【０１１０】
図８は、アドレスの下で記憶されているビットシーケンスの概略図である。すなわち、図８は、例えば誤り訂正符号の符号語が記憶されているアドレス指定可能なメモリの例示的実施形態を示す。例えば、ｌ＝３、ｍ＝５、およびｋ＝７が選択されている。
【０１１１】
８個のアドレスａ０＝［０，０，０］、ａ１＝［０，０，１］、…、ａ７＝［１，１，１］の下で、それぞれ５個のチェックビットｃ０、ｃ１、ｃ２、ｃ３、ｃ４および７個のデータビットｕ０、…、ｕ７が記憶される。チェックビットｃ０、ｃ１、ｃ２、ｃ３、ｃ４およびデータビットｕ０、…、ｕ７は、誤りがない場合には、例えばＨ行列Ｈ１によって与えられる誤り検出／誤り訂正符号Ｃ１の符号語のビットである。
【０１１２】
本例示的実施形態では、アドレスａ０、…、ａ７の下でメモリに記憶されているビットｃ０、…、ｃ４、ｕ０、…、ｕ７は、それぞれＨ行列Ｈ１によって決定される符号Ｃ１の符号語であり、したがって、例えば、
0006339137.tif 000009
が成り立つ。
【０１１３】
体系化した形態でのＨ行列Ｈ１は、
0006339137.tif 000010
であり、そこから、等式（１）からの展開によって、チェックビットｃ０、…、ｃ４に関して、等式
ｃ０＝ｕ０＋ｕ１＋ｕ２＋ｕ３＋ｕ４＋ｕ５
ｃ１＝ｕ０＋ｕ１＋ｕ２＋ｕ６
ｃ２＝ｕ０＋ｕ３＋ｕ４＋ｕ６
ｃ３＝ｕ１＋ｕ３＋ｕ５＋ｕ６
ｃ４＝ｕ２＋ｕ４＋ｕ５
が与えられる。演算子「＋」は、ここでは、および以下では、バイナリ値の演算において加算剰余２を意味し、これは、ＸＯＲゲートによって論理ＸＯＲ演算として実現することができる。
【０１１４】
符号Ｃ１は、例えば、１ビット誤りを訂正し、２ビット誤りを検出することを可能にするＨｓｉａｏ符号である。例えば、Ｈ行列Ｈ１の全ての列が奇数個の「１」を有し、その数は１対において異なる。
【０１１５】
誤りによって乱された符号語は、
0006339137.tif 000011
によって表される。誤りのない符号語ｃｉ、ｕｉと、この符号語から生じる、誤りによって乱された符号語［ｃｉ，ｕｉ］’との成分毎のＸＯＲ和は、例えば誤りベクトルｅｉとして表され、それにより、この例示的実施形態では、
0006339137.tif 000012
が成り立つことがある。
【０１１６】
誤りベクトルの成分が１である場合、この成分に誤りが存在する。
【０１１７】
ベクトル［ｃｉ，ｕｉ］’の誤りシンドロームｓは、
ｓＴ＝Ｈ１・（［ｃｉ，ｕｉ］’）Ｔ＝Ｈ１・（ｅｉ）Ｔ      （３）
に決定されている。列ベクトルがｓＴとして表され、これは、成分ｓ０、ｓ１、…を有し、ここで、ｓは、対応する行ベクトルである。［ｃｉ，ｕｉ］のただ１つの成分が誤りである場合、誤りベクトルｅｉは、正確に１つの「１」を有する。これは、１ビット誤りと呼ぶことができる。［ｃｉ，ｕｉ］のｑ（ｑ≧１）個の成分が誤りである場合、誤りベクトルｅｉは、正確にｑ（ｑ≧１）個の「１」を有する。これは、ｑビット誤りと呼ぶことができる。本例示的実施形態では、誤りシンドロームｓ＝ｓ０、…、ｓ４は、以下のようである。
ｓ０＝ｃ０‘＋ｕ０‘＋ｕ１‘＋ｕ２‘＋ｕ３‘＋ｕ４‘
ｓ１＝ｃ１‘＋ｕ０‘＋ｕ１‘＋ｕ２‘＋ｕ６‘
ｓ２＝ｃ２‘＋ｕ０‘＋ｕ３‘＋ｕ４‘＋ｕ６‘
ｓ３＝ｃ３‘＋ｕ１‘＋ｕ３‘＋ｕ５‘＋ｕ６‘
ｓ４＝ｃ４‘＋ｕ２‘＋ｕ４‘＋ｕ５‘                  （４）
【０１１８】
実際には、誤りシンドロームｓは、シンドローム発生器によって決定することができ、シンドローム発生器は、等式（４）を実装し、例えばＸＯＲゲートを使用して容易に実装することができる。例えば、利用可能な合成ツールを使用することができる。
【０１１９】
１ビット誤りの場合、Ｈ行列の列に等しい誤りシンドロームが生じ得る。
【０１２０】
例えば、
0006339137.tif 000013
でのｃ，ｕの第１２の成分ｕ６が乱される場合、誤りシンドローム
ｓＴ＝Ｈ１・（０，…，０，１）Ｔ＝（０，１，１，１，０）Ｔ
が生じることがあり、これは、Ｈ行列Ｈ１の第１２の列に等しい。２ビット誤りの場合、Ｈ行列の２つの対応する列の成分毎のＸＯＲ和に等しい誤りシンドロームが生じる。
【０１２１】
例えば、
0006339137.tif 000014
でのｃ，ｕの第１２の成分ｕ６および第１１の成分が妨害される場合、誤りシンドローム
ｓＴ＝Ｈ１（０，．．，０，１，１）Ｔ＝（１，１，１，０，１）Ｔ
が生じ、これは、Ｈ行列Ｈ１の第１２の列と第６の列との成分毎のＸＯＲ演算に等しい。各２ビット誤りは、この例示的実施形態では、偶数個の「１」を有する０でない誤りシンドロームをもたらすことがある。１２個の生じ得る１ビット誤りはそれぞれ、Ｈ行列Ｈ１の１対の異なる列の一方に等しい異なる誤りシンドロームをもたらし、それにより、各１ビット誤りに、可逆に一意に誤りシンドロームが割り当てられ、したがって、その誤りシンドロームに基づいて１ビット誤りを一意に復号することができる。
【０１２２】
例えば、ペイロードビットｕ０、…、ｕ６＝１０１００１０から、チェックビットが、等式（４）に対応してｃ０、ｃ１、ｃ２、ｃ３、ｃ４＝１０１１０に決定されており、図８では、アドレスａ１，１＝０１０の下で符号語１０１１０１０１００１０が記憶されている。ペイロードビットｕ０、…、ｕ６＝１１０１１００から、チェックビットが、等式（４）に対応してｃ０、ｃ１、ｃ２、ｃ３、ｃ４＝００１０１に決定されており、図８では、アドレスａ２，１＝１０１の下で符号語００１０１１１０１１００が記憶されている。
【０１２３】
本例示的実施形態では、アドレスａ１，１＝０１０が第１のアドレスであり、アドレスａ２，１＝１０１が、それとは異なる第２のアドレスである。
【０１２４】
時点ｔで、第１のアドレスａ１，１＝０１０の下で、誤りのないビットシーケンス、ここではビットシーケンス１０１１０１０１００１０が記憶されており、第２のアドレスａ２，１＝１０１の下で、誤りのないビットシーケンス１０１１０１０１００１０が記憶されている。
【０１２５】
時点ｔでアドレスａ１，１の下で誤りのないビットシーケンスが記憶されていたときに、時点ｔ＋Δｔ（Δｔ＞０）でアドレスａ１，１の下で誤りのあるビットシーケンスが記憶されている推定確率は、時点ｔでアドレスａ２，１の下で誤りのないビットシーケンスが記憶されていたときに、時点ｔ＋Δｔでアドレスａ２，１の下で誤りのあるビットシーケンスが記憶されている推定確率よりも大きい。
【０１２６】
いくつかの例示的実施形態は、アドレスａ２，１によってアドレス指定されるメモリセルが、アドレスａ１，１によってアドレス指定されるメモリセルよりも誤りを生じにくいものであることを企図する。
【０１２７】
別の例示的実施形態は、アドレスａ１，１によってアドレス指定されるメモリセルが、アドレスａ２，１によってアドレス指定されるメモリセルよりも誤りを生じやすい１つまたは複数のメモリセルを含むことを企図する。
【０１２８】
１つまたは複数の物理的パラメータの測定によって、あるビットシーケンスにおいて、アドレスａ１，１の下で記憶されているビットシーケンスでの誤りの確率が、アドレスａ２，１の下で記憶されているビットシーケンスでの誤りの確率よりも高いかどうかを予測または推定することが可能であり得る。例えば、パラメータは、書込み電流の値もしくは高さ、または対応するアドレスの下で値を書き込むために必要な時間でよい。
【０１２９】
いくつかの例示的実施形態では、アドレス指定可能なメモリは、いわゆるエマージングメモリ（ｅｍｅｒｇｉｎｇ  ｍｅｍｏｒｙ）を含み、これは、ＭＲＡＭ、ＲＲＡＭ（抵抗性ＲＡＭ）、またはＰＣ−ＲＡＭ（相変化メモリ：ｐｈａｓｅ−ｃｈａｎｇｅ  ｍｅｍｏｒｙ）など新規のメモリを表す。アドレス指定可能なメモリは、そのようなメモリとして形成することもできる。例えばＭＲＡＭなどいくつかのメモリでは、物理的パラメータ（例えば書込み電流の高さまたは書込み電流の値）によって、メモリセルのデータ保持を、出荷時に既に決定することができる。その後、この状態は本質的に変化しない。したがって、信頼性情報は、元のまたは製造時のメモリセルの特性に関することがあり、この特性は、メモリの老化効果の影響をあまりまたは全く受けず、すなわち老化に依存せず、メモリのメモリセル全体のうちのかなり少ない部分を成すより頻繁に検査されるメモリセルに伴う。
【０１３０】
１つまたは複数の誤りのあるビットの上書きによるビットシーケンスの訂正（ここで、書込みプロセスにおいて、これらのビットシーケンス中の１つ、複数、または全ての誤りのないビットは除外される）は、アドレス指定可能なメモリが、ビット毎に変更可能なメモリであると理解することもできる。これは、ビットを個々にアドレス指定し、個々に読み出すもしくは書き込む、または削除およびプログラミングすることができることを意味する。別のメモリ、例えばフラッシュメモリは、プログラミング前に削除すべきビットへのブロック毎の削除アクセスのみを可能にする。
【０１３１】
個々のビットの訂正またはリセット（削除およびプログラミング）によって、訂正されたビットシーケンスが同じまたは別の不揮発性メモリに一時記憶される必要をなくすことが可能になる。すなわち、読出しユニット、例えばマイクロプロセッサ、ＣＰＵ、または別のデバイスが、ビットシーケンスを、さらなる使用または処理のために揮発性メモリに一時記憶することが想定可能である。これに関して、例えば、レジスタメモリまたは（Ｓ）ＲＡＭメモリが考えられる。これは、例えばさらなる処理のためにデータを読み出すまたは収集するために可能であり、ここで、そのためにワード自体の特性は変更されない。すなわち、これは、例えば、フラッシュメモリ（訂正されたワードが新たなメモリアドレスに書き込まれ、したがって訂正された形態と訂正されていない形態とでメモリ内に存在する）で行われるような、同じメモリまたは新たなメモリ内への訂正されたビットシーケンスの追加または冗長の記憶と同一視することはできない。簡略に述べると、これは、メモリ内の誤りのあるビットシーケンスを、冗長なしでまたは非冗長でメモリ内で訂正するようにメモリ制御装置を構成することができることを意味する。別のメモリ、例えばフラッシュメモリは、ビットへのブロック毎の削除アクセスのみを可能にし、ビットは、プログラミング前にブロック毎に削除される。
【０１３２】
したがって、個々のビットの訂正によって、「日付」、すなわち元の日付または作成日などのビットシーケンスの特性は、メモリ内で変えないでおくことができる。代替または追加として、ビットシーケンスのアドレスもメモリ内で変えないでおくことができる。簡略に述べると、これは、不揮発性メモリ内でまたは不揮発性メモリからビットシーケンスの位置を変えずに、すなわち位置変更なしで同じアドレスの訂正が行われることを意味する。
【０１３３】
したがって、いくつかの例示的実施形態は、訂正されたビットシーケンスが上書きされ、すなわち元のアドレスに書き込まれることを企図する。これは、１つ、複数、または全ての誤りのないビットが書き込まれないことを含むことができる。これは、代替または追加として、不揮発性メモリ内での一時記憶なしで訂正が行われることを含むことができる。
【０１３４】
時間の経過と共に、メモリセルに記憶されている値は、変化して誤りを有することがある。例えば、フラッシュメモリでは、状態を電荷として記憶することができ、電荷は、時間の経過と共に減少することがある。電荷が所定の閾値よりも小さくなると、電荷損失が誤りとして作用することがある。メモリセルの状態は、ここでは連続的な値である。上記の電荷損失に対処するために、アナログ状態値が閾値よりも低くなる前に、記憶されている値を読み出し、読み出されたデジタルに変換された値を改めて同じメモリセルまたは別のメモリセルにアナログ状態として書き込むことができる。これは、アナログ状態値を有するメモリセルに関して、リフレッシュと呼ばれることがある。リフレッシュにより、閾値に近くなっているメモリセルのアナログ状態を変えて、対応する閾値から再びさらに離すことができる。
【０１３５】
対照的に、Ｍ−ＲＡＭでは、記憶されている状態は、デジタル量である。ＭＲＡＭでは、例えば量子効果により、メモリセルのデジタル状態が、誤りのあるデジタル状態に変わることがあり得る。また、時間の経過と共に、１つのアドレスでアドレス指定されるいくつかのメモリセルにおいて、誤りのあるデジタル状態が生じることもあり得て、これはマルチビット誤りとして作用する。いくつかの例示的実施形態は、使用される誤り訂正符号を用いてそのようなマルチビット誤りを訂正することができず、これは欠点である。
【０１３６】
使用される誤り訂正符号によって場合によっては訂正することができないことがある誤りの蓄積を回避するために、ここでは、複数の誤りが生じる前に、アドレスの下で記憶されている場合によっては誤りのあるビットシーケンスを読み出し、誤り訂正符号を使用してそれらを訂正し、訂正されたビットシーケンスを同じアドレスの下で同じメモリセルに書き戻すことが好適であり得る。
【０１３７】
読み出されたビットシーケンスに誤りがない場合、このビットシーケンスを書き戻す必要はないとみなすことができる。なぜなら、既にメモリセルに記憶されているのと同じデジタル値の書戻しは、対応するメモリセルのデジタル状態を変えないからである。有利には、ここで、誤りのあるビットシーケンスが記憶されたメモリセルの内容のみがアドレスの下で書き戻されるとき、正しい値の書戻しの不要な時間的コストおよび不要な電力消費を節約することができる。
【０１３８】
言葉を換えてもう一度述べると、以下のようである：生じる誤りが多くなりすぎる前に、メモリセルに記憶されているビットシーケンスが例えば定期的にまたは特定の時点に読み出され、誤りが存在する場合にのみ、その誤りが対象の符号によって訂正可能であるときには、誤り訂正符号によってビットシーケンスが訂正され、訂正されたビットシーケンスを書き戻すことによって、ビットがデジタルでメモリセルに記憶されているメモリ内での誤りの蓄積を減少させることができる。そのために、１つのアドレスの下で記憶されているビットシーケンスが、誤り訂正符号Ｃｃｏｒのビットである必要がある。
【０１３９】
ここで、概念「書戻し」または概念「上書き」が使用されるとき、以下の状況を表すことができる。
【０１４０】
アドレスａによってアドレス指定されるメモリセルから、アドレスａの下で１つのバイナリシーケンスが読み出される。読み出されたバイナリシーケンスが誤りを有し、使用される誤り訂正符号によってその誤りを訂正することができる場合、読み出されたバイナリシーケンスが訂正され、訂正されたバイナリシーケンスが、アドレスａ＊の下でメモリに記憶される。その際、ａ＊＝ａであってもよく、読み出された誤りのあるバイナリシーケンスが記憶されていたのと同じアドレスの下で、訂正されたバイナリシーケンスが記憶（上書き）されることが可能である。
【０１４１】
ａ≠ａ＊の場合、訂正されたバイナリシーケンスは、別のアドレスの下で、例えば別のメモリブロックまたは別のメモリに記憶（書戻し）される。書戻しまたは上書きは、様々な様式で実現することができる。これは、第１および／または第２のアドレスを修復プロセスによって別のアドレスに置き換えるようにメモリ制御装置を構成することができることを意味する。
【０１４２】
ａ＝ａ＊の場合、例えば、訂正されたバイナリシーケンスがアドレスａの下でメモリセルに書き込まれる前に、誤りのあるバイナリシーケンスが記憶されていたメモリセルがまず削除されることが可能である。
【０１４３】
別の例示的実施形態は、誤りのあるバイナリシーケンスの誤りビットが記憶されているメモリセルのみが、訂正されたビットがこれらのメモリセルに書き込まれる前に削除され、残りのメモリセルは変更されないことも企図する。
【０１４４】
別の例示的実施形態は、誤りのあるバイナリシーケンスの誤りビットを含むビットグループのビットが削除され、その後、訂正されたバイナリシーケンスの対応するビットが、削除されたメモリセルに書き込まれることを企図する。上記の可能性は、排他的または限定的なものではなく、より良く理解できるようにするためのものにすぎない。
【０１４５】
いくつかの例示的実施形態は、メモリの異なるアドレスに関して、時点ｔでこのアドレスの下で記憶されている誤りのないビットシーケンスが時点ｔ＋Δｔで誤りを有する確率または推定確率が異なることを企図する。例えば、メモリセルへのデータの書込み時またはメモリセルからのデータの読出し時に、物理的パラメータの値に基づいて、これらの確率を予測または推定することができることが可能であり得る。
【０１４６】
ここで、この確率の比較的粗い評価を決定すれば十分であり得る。また、どのアドレスの下で、時点ｔで誤りのないビットシーケンスが時点ｔ＋Δｔで誤りを有する確率が、別のアドレスの下で記憶されているビットシーケンスよりも高いかを評価すれば十分であり得、この確率の正しい値を決定する必要はない。
【０１４７】
ここでは説明を容易にするために、アドレスａ１，１の下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率が、アドレスａ２，１の下で記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも大きいと述べるとき、それによって例えば以下の状況を表すことができる。
【０１４８】
１．確率は、例えば物理的パラメータの観察または測定に基づいて、数値として予測可能である、または予測される。
【０１４９】
２．例えば物理的パラメータの観察または測定に基づき、アドレスａ１，１の下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率が、アドレスａ２，１の下で記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも大きいことを、根拠付けて予測することができる。これらの確率に関する正しい値を決定する必要はない。
【０１５０】
いくつかの例示的実施形態は、所定の時点に、または所定の時間間隔で、例えばＭＲＡＭの全てのアドレスに関して、これらのアドレスの下で記憶されているビットシーケンスを読み出すことを企図し、ここで、ビットシーケンスは、誤りがない場合には、誤り訂正符号Ｃｃｏｒのビットシーケンスである。
【０１５１】
符号Ｃｃｏｒによって訂正することができる誤りが検出された場合、ビットシーケンスを訂正し、訂正されたビットシーケンスを対応するアドレスの下で書き戻すことができる。
【０１５２】
例えば、そのような処置では、ＭＲＡＭの全てのアドレスをアドレス指定して読み出し、誤りを検査することができる。これは、例えば、ビットシーケンスの比較的小さい部分のみ、すなわち誤りがあり訂正されたビットシーケンスのみが書き戻されるにも関わらず、大きな時間的コストを要することがある。また、大きな電力コストも必要である。大きな時間的コストおよび電力コストは欠点である。
【０１５３】
上記の処置では、メモリセルの読出しに関する時間的距離または頻度が、時点ｔで記憶されている正しい値が時点ｔ＋Δｔで誤りを有する確率が最も高いメモリセルに適合されることが特に欠点である。
【０１５４】
いくつかの例示的実施形態によれば、ビットシーケンスは、誤りのあるビットシーケンスをより高い推定確率でもたらすアドレスの下で、誤りのあるビットシーケンスをより低い推定確率でもたらすアドレスよりも頻繁に読み出され、ここで、記憶されているビットシーケンスは、誤りがない場合には、誤り訂正符号の符号語のビットである。
【０１５５】
読み出されたビットシーケンス中の検出された誤りが、使用される誤り訂正符号によって訂正可能である場合、誤りを訂正することができ、訂正されたビットシーケンスを書き戻すことができ、ここで、訂正されたビットシーケンスの書戻しは、誤りのあるビットシーケンスが読み出されたのと同じアドレスの下で、あるいはまた別のアドレスの下で行うことができる。例えば、誤りのあるビットシーケンスをより高い確率で記憶しているアドレスは、誤りのあるビットシーケンスをより低い確率で記憶しているアドレスよりも頻繁に読み出される。誤りのあるビットシーケンスをより低い確率で記憶しているアドレスは、それほど頻繁には読み出されない。追加として、同時に、例えばＭＲＡＭに関して、誤りのあるビットシーケンスとして読み出されて訂正されたビットシーケンスのみを書き戻すことができる。それにより、時間的コストならびに電力コスト、例えば書込み電流および読出し電流が小さくなり、これは有利である。
【０１５６】
誤りのあるビットシーケンスをより高い確率で記憶しているアドレスの相対数も、読み出されたビットシーケンスが誤りを有する確率も、小さくすることができる。ここで、上記のように、１つのアドレスの下で記憶されるビットシーケンスは、誤りがない場合には、例えば誤り訂正符号のビットである。
【０１５７】
ここで、対象のメモリのアドレスは、アドレスの第１のグループα１と、アドレスの第２のグループα２とに分けることができ、それにより、アドレスａ１，ｉ∈α１の下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率は、アドレスａ２，ｊ∈α２の下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも高い。また、メモリのアドレスは、Ｑ（Ｑ＞２）個のグループα１、…、αＱに分けることもでき、それにより、アドレスａｋ，ｊ∈αｋの下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率は、アドレスａｒ，ｊ∈αｒ（ｒ＞ｋかつ１≦ｋ＜ｒ≦Ｑ）の下で時点ｔに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも高い。このとき、いくつかの例示的実施形態によれば、グループαｋのアドレスの下で、グループαｒのアドレスの下よりも頻繁にビットシーケンスを読み出して、誤りが訂正可能である場合には書き戻すことができる。
【０１５８】
誤り訂正符号Ｃｃｏｒとして、ｔビット誤り訂正符号を使用することができ、ここで、ｔ≧１である。いくつかの例示的実施形態は、符号が、（ｔ＋１）ビット誤り検出符号でもあることを企図する。
【０１５９】
ｔ≧２の場合、２ビット誤りが存在するときには、アドレスの下で読み出されたビットシーケンスを訂正し、訂正された状態で書き戻し、１ビット誤りが存在するとき、または誤りがないときには書き戻さないことも可能である。
【０１６０】
ｔ＞２の場合、少なくとも１つのτビット誤り（すなわち、σ（σ＞τ）個の誤り）が存在するときには、アドレスの下で読み出されたビットシーケンスを訂正し、訂正された状態で書き戻し、せいぜい１つのτ−１ビット誤りしか存在しないときには書き戻さないことも可能であり、ここで、例えば、τ＜ｔが成り立つ。
【０１６１】
符号Ｃｃｏｒが、例えば２ビット誤り訂正および３ビット誤り検出ＢＣＨ符号である場合、１ビット誤りの際には、アドレスａの下で読み出された誤りのあるビットシーケンスを、訂正されたビットシーケンスとして書き戻さないことも可能であり、それにより、１ビット誤りを有する誤りのあるビットシーケンスがアドレスａの下で引き続き記憶される。いくつかの例示的実施形態は、２ビット誤りの場合、アドレスａの下で読み出された誤りのあるビットシーケンスを、訂正されたビットシーケンスとして書き戻すことを企図し、それにより、読出しおよび書戻し後、訂正されたビットシーケンスがアドレスａの下で記憶される。
【０１６２】
ここで、記憶されているビットシーケンスが１ビット誤りを有することがあり得るが、これらの１ビット誤りは、読み出したデータを使用する目的での読出し時に、２ビット誤り訂正符号Ｃｃｏｒを用いて確実に訂正される。ビットシーケンス中にさらなる誤りが生じているときでさえ、２ビット誤り訂正符号が依然として正しく訂正する。
【０１６３】
例えば、２ビット誤りは、記憶されているビットシーケンスで比較的低い頻度で（１ビット誤りよりも低い確率で）しか出現しない。読み出され、誤り訂正符号Ｃｃｏｒを使用して訂正されたビットシーケンスの正確さを本質的に低下させることなく、訂正されたビットシーケンスの書戻しの範囲を小さくすることができる。例えば、非常に珍しい３ビット誤りでさえ、訂正可能でない誤りとなお認識される。
【０１６４】
ｔ≧２でのｔビット誤り訂正符号が使用される場合、記憶されているデータを訂正する目的でより頻繁に読み出されるアドレスの集合α１を、ｔ個よりも少ない誤りしか訂正することができない符号が使用されるときよりも小さく選択することが可能であり、これは利点となり得る。
【０１６５】
例えば、ｔ＝２の場合、既に述べたように、２ビット誤りが出現したときにビットシーケンスを訂正して書き戻し、１ビット誤りが出現したときには書き戻さないことが可能である。メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも２つのメモリセルが、アドレスａによってアドレス指定されるメモリセルに属するとき、アドレスａを集合α１に割り当てることができる。そのような確率は、例えば、必要な書込み電流または必要な読出し電流に基づいて推定することができる。より頻繁に読み出されるべきアドレスの集合α１は比較的小さくすることができる。なぜなら、例えば、より高い確率で誤りを有し、かつ同じアドレスによってアドレス指定される２つのメモリセルが出現するのは比較的珍しいからである。
【０１６６】
また、代替として、メモリ構成が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高いメモリセルが、アドレスａによってアドレス指定されるメモリセル１に属するとき、アドレスａを集合α１に割り当てることもできる。ここで、より頻繁に読み出されるアドレスの集合α１は大きくすることができる。しかし、メモリセル内に誤りが蓄積する確率は、それに対応してより低くすることができる。
【０１６７】
使用される符号がｔビット誤り訂正符号である場合、集合α１は、以下のように決定することができる。
【０１６８】
１．例えばｔ＝１の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも１つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１６９】
２．例えばｔ＝２の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも２つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１７０】
例えばｔ＝２の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも１つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１７１】
例えばｔ＝３の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも３つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１７２】
例えばｔ＝３の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも２つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１７３】
例えばｔ＝３の場合、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも１つのメモリセルがアドレスａによってアドレス指定されるとき、アドレスａを集合α１に割り当てることができる。
【０１７４】
符号は、ｔに関してより大きな値を有することができる。例えば、メモリセル値が時点ｔで正しかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくともτ個のメモリセルがアドレスａによってアドレス指定されるとき、アドレスを集合α１に属させる、または集合α１に割り当てることができ、ここで、τ≦ｔが成り立つ。τに依存して、様々な変形形態が生じる。
【０１７５】
メモリ内に集合αｐｅｒが存在することもあり得て、ここで、これらのアドレスの下でアドレス指定されるメモリセルは、永久的な誤りを有する。
【０１７６】
いくつかの例示的実施形態によれば、これらのアドレスに関して修復メカニズムが提供される。いくつかの例示的実施形態は、永久的な誤りを有するσ個よりも多いメモリセルがアドレスによってアドレス指定されるときに、修復メカニズムを提供することが企図される。ここで、σ≦ｔが成り立つ。
【０１７７】
しかし、いくつかの例示的実施形態によれば、そのようなアドレスの下で記憶すべきビットシーケンスに関して反転されたビットシーケンス、または所定のビットグループにおいて反転されたビットシーケンスを記憶することも可能である。したがって、例えば、メモリセルに永久的な誤り（０縮退；ｓｔｕｃｋ−ａｔ−０）が存在し、対応する位置に記憶すべきビットシーケンス中に値１が存在するときに、ビットシーケンスを反転させることが可能である。記憶すべきビットシーケンスが反転される場合、対応する位置に１つの「０」があり、これは、０縮退を有するメモリセルに、誤りなしで記憶することができる。
【０１７８】
アドレス指定可能なメモリは、アドレスの第３の部分集合αｐｅｒによってアドレス指定可能なメモリセルを有することができ、ここで、メモリ制御装置は、記憶すべきビットシーケンスを、ビット毎に反転して、アドレスの第３の部分集合、例えば部分集合３６によってアドレス指定されるメモリセルに記憶するように構成される。アドレスの第３の部分集合の１つのアドレスによって、算出確率ｐｐｅｒで、永久的な誤りを有する少なくとも１つのメモリセルをアドレス指定可能である。ここで、ｐｐｅｒ≧ＳＷｐｅｒが成り立っていてよく、ＳＷｐｅｒは、０＜ＳＷｐｅｒ≦１での閾値である。
【０１７９】
いくつかの例示的実施形態によれば、修復メカニズムは、記憶すべきビットシーケンスの反転と組み合わせることができる。例えば、永久的な誤りを有する複数のメモリセルがアドレス指定されるときに修復を提供することができ、誤りが残っている場合、記憶すべきビットシーケンスを反転することができる。ビットシーケンスの反転は、例えば誤りのあるメモリセルに関して一部行うことができる。代替として、ビットシーケンス全体に関して反転を実施することができる。
【０１８０】
いくつかの例示的実施形態によれば、訂正可能でない誤りがアドレスの下で検出されたときに修復メカニズムが提供される。
【０１８１】
図９は、符号語４４’ａまたは４４’ｂ、アドレスビットａ０〜ａ２、チェックビットｃ０〜ｃ４、およびデータビットｕ０〜ｕ６を含んでいる、または記憶しているアドレス指定可能なメモリ１２の概略図を示す。図８に示されるチェックビットまたはデータビットと比較して、例えば、第１のアドレスａ１，１によってアドレス指定されるメモリセル１４−２は、別の値（ビット誤り）を有する。
【０１８２】
すなわち、図９は、誤り訂正符号の符号語の形成の際にアドレスが考慮に入れられるアドレス指定可能なメモリ、すなわち、符号語を形成するためにアドレスビットが使用されたアドレス指定可能なメモリの例示的実施形態を示す。
【０１８３】
図９に示される例示的実施形態では、ｌ＝３、ｍ＝５、およびｋ＝７が選択される。８個のアドレス
0006339137.tif 000015
、５個のチェックビット
0006339137.tif 000016
、および７個のデータビット
0006339137.tif 000017
が存在する。例えば、ｉ＝０、…、６に関して、ビット
0006339137.tif 000018
は、誤りがない場合には、Ｈ行列Ｈ２によって記述することができる誤り訂正／誤り検出符号Ｃ２の符号語を形成し、したがって、ｉ＝０、…、８に関して、
0006339137.tif 000019
が成り立つ。
【０１８４】
Ｈ行列Ｈ２は、この例示的実施形態では、
0006339137.tif 000020
である。
【０１８５】
Ｈ行列Ｈ２の第１〜第１５の列は、例えば、ビットｃ０、…、ｃ４、ｕ０、…、ｕ６、ａ０、ａ１、ａ２に対応し、したがって、チェックビットｃ０、…、ｃ４は、
ｃ０＝ｕ０＋ｕ１＋ｕ２＋ｕ３＋ｕ４＋ｕ５
ｃ１＝ｕ０＋ｕ１＋ｕ２＋ｕ６＋ａ０＋ａ１
ｃ２＝ｕ０＋ｕ３＋ｕ４＋ｕ６＋ａ０＋ａ２
ｃ３＝ｕ１＋ｕ３＋ｕ５＋ｕ６＋ａ１＋ａ２
ｃ４＝ｕ２＋ｕ４＋ｕ５＋ａ０＋ａ１＋ａ２
によって決定される。例えば、Ｈ行列Ｈ２の全ての列が、奇数個の「１」を有し、１対において異なる。ビットｃ０、…、ｃ４、ｕ０、…、ｕ６での全ての１２個の異なる１ビット誤りが、１２個の異なる誤りシンドロームを生じ、これらは、Ｈ行列Ｈ２の最初の１２列に対応する。Ｈ行列のこれらの列の１つに等しい誤りシンドロームが出現するとき、この列に対応する誤りが訂正される。また、アドレスビットａ０、ａ１、ａ２での全ての１ビット誤りが、異なる誤りシンドロームをもたらし、これは、Ｈ行列Ｈ２の最後の３列に等しい。Ｈ行列の最後の３列の１つに等しい誤りシンドロームが出現する場合、誤りは訂正されず、アドレス誤りが示される。なぜなら、アドレスビットでの誤りは好適に訂正することができないからである。誤りのあるアドレスは、誤りのあるメモリアクセスを引き起こし、これは、正しいメモリアクセスによって置き換えられるときにしか訂正することができない。
【０１８６】
ａ０’＝ａ０＋１でのアドレスビットａ内の１ビット誤りに、誤りシンドローム（０１１０１）Ｔが対応し、これは、行列Ｈ２の第１３の列に等しい。
【０１８７】
ａ１’＝ａ１＋１でのアドレスビットａ１内の１ビット誤りに、誤りシンドローム（０１０１１）Ｔが対応し、これは、行列Ｈ２の第１４の列に等しい。ａ２’＝ａ２＋１でのアドレスビットａ２内の１ビット誤りに、誤りシンドローム（００１１１）Ｔが対応し、これは、行列Ｈ２の第１５の列に等しい。これらの誤りシンドロームは、チェックビットまたはデータビットでの１ビット誤りの全ての誤りシンドロームと異なり、したがって、アドレスビットでの１ビット誤りは、そのシンドロームに基づいて、チェックビットまたはデータビットでの全ての１ビット誤りと異なり、アドレス誤りとして認識することができる。
【０１８８】
アドレスビット内の２ビット誤りは、偶数個の「１」を有する０でない誤りシンドロームをもたらすことがある。そのような誤りは、訂正可能でない誤りと認識することができる。アドレスａ１，１＝０１０の下で、例えばビットシーケンス１１１０１１０１００１０が記憶されており、これ自体は、符号Ｃ２の符号語でないが、アドレスビット０１０によって補完されて、符号Ｃ２の符号語１１１０１１０１００１００１０を形成する。アドレスａ２，１＝１０１の下で、ビットシーケンス０１１１１１１０１１００が記憶されており、これ自体は、符号Ｃ２の符号語でないが、アドレスビット１０１によって補完されて、符号Ｃ２の符号語０１１１１１１０１１００１０１を形成する。ここで、有利には、誤り検出においてアドレスが考慮に入れられ、アドレス誤りを検出することができるにも関わらず、メモリを拡大する必要がない。別の例示的実施形態は、符号語の形成において、アドレスビットではなく、アドレスビットから導出されるビットを使用することを企図する。
【０１８９】
したがって、例示的実施形態は、アドレスビットＰ（ａ）のパリティを形成し、誤り訂正符号のチェックビットを形成するためにアドレスのパリティを使用することを企図する。
【０１９０】
同様に、例示的実施形態によれば、アドレスビットの別の線形関数または非線形関数ｆ（ａ）を使用することが可能であり、読出し時の読出しアドレスおよび書込み時の書込みアドレスのアドレスビットａ＝ａ１、…、ａ１から導出されるビットまたは修正されたアドレスビットを形成し、これらの導出または修正されたアドレスビットを、誤り検出／誤り訂正符号のチェックビットを決定するために使用することが可能である。
【０１９１】
図１０は、誤り検出／誤り訂正符号の符号語を形成するためにアドレスビットのパリティが使用されるアドレス指定可能なメモリ１２の例示的実施形態を概略的に示す。
【０１９２】
図８および図９と同様に、例えば、ｌ＝３、ｍ＝５、およびｋ＝７が選択されている。別の例示的実施形態によれば、値は、様々でよく、訂正可能な誤りの数に関係していてよい。
【０１９３】
８個のアドレスａ０＝［０，０，０］、…、ａ７＝［１，１，１］、５個のチェックビット
0006339137.tif 000021
、および７個のデータビット
0006339137.tif 000022
が存在し、これらは、それぞれ、アドレスａｉ（ｉ＝０，…，７）の下で記憶されている。書込みまたは読出しアドレスａのアドレスビットのパリティＰ（ａ）は、Ｐ（ａ）＝ａ０＋ａ１＋ａ２によって決定される。
【０１９４】
ｉ＝０，…，７に関して、ビット
0006339137.tif 000023
が生じる。
【０１９５】
誤りがない場合には、誤り検出／誤り訂正符号Ｃ３の符号語は、そのＨ行列Ｈ３によって与えられる。Ｈ行列Ｈ３は、この例示的実施形態では、
0006339137.tif 000024
である。
【０１９６】
Ｈ行列Ｈ３の第１〜第１３の列は、ビットｃ０、…、ｃ４、ｕ０、…、ｕ６、Ｐ（ａ）に対応し、したがって、チェックビットｃ０、…、ｃ４は、
ｃ０＝ｕ０＋ｕ１＋ｕ２＋ｕ３＋ｕ４＋ｕ５
ｃ１＝ｕ０＋ｕ１＋ｕ２＋ｕ６＋Ｐ（ａ）
ｃ２＝ｕ０＋ｕ３＋ｕ４＋ｕ６＋Ｐ（ａ）
ｃ３＝ｕ１＋ｕ３＋ｕ５＋ｕ６
ｃ４＝ｕ２＋ｕ４＋ｕ５＋Ｐ（ａ）
によって決定される。アドレスａ１，１＝０１０の下で、例えばビットシーケンス１１０１１１０１００１０が記憶されており、これは、Ｐ（０１０）＝０＋１＋０＝１を補完されて、符号Ｃ３の符号語１１０１１１０１００１０１を形成する。アドレスａ２，１＝１０１の下で、ビットシーケンス００１０１１１０１１００が記憶されており、これは、Ｐ（１０１）＝１＋０＋１＝０を補完されて、符号Ｃ３の符号語００１０１１１０１１０００を形成することができる。
【０１９７】
図１１は、例示的実施形態による３２個のアドレスａ０、ａ１、…、ａ３１を有するアドレス指定可能なメモリを示し、それらのアドレスの下で、誤りがない場合には、誤り訂正符号Ｃ４の符号語ｗ０、ｗ１、…、ｗ３１がメモリセルに記憶されている。
【０１９８】
例えば、アドレスａ１、ａ１１、ａ１３、ａ２０、ａ３０が、集合α１＝｛ａ１，ａ１１，ａ１３，ａ２０，ａ３０｝を形成する。アドレスの集合α２は、例えば、α２＝｛ａ０，ａ２，ａ３，ａ４，ａ５，ａ６，ａ７，ａ８，ａ９，ａ１０，ａ１２，ａ１４，ａ１５，ａ１６，ａ１７，ａ１８，ａ１９，ａ２１，ａ２２，ａ２３，ａ２４，ａ２５，ａ２６，ａ２７，ａ２８，ａ２９，ａ３１｝である。さらなる例示的実施形態によれば、集合α２＝｛ａ０，…，ａ３１｝でよい。
【０１９９】
集合α１のアドレスは、このアドレスの下で記憶されているビットシーケンスが時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する推定確率が、集合α２のアドレスの下で記憶されているビットシーケンスが時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する推定確率よりも高いアドレスである。
【０２００】
図１２は、３ビットアドレスｂ０、ｂ１、ｂ２の下で集合α１のアドレスが記憶されているメモリの構成を示す。アドレス０＝［０，０，０］、１＝［０，０，１］、２＝［０，１，０］、３＝［０，１，１］、４＝［１，０，１］の下で、集合α２のアドレスａ１＝００００１、ａ１１＝０１０１１、ａ１３＝０１１０１、ａ２０＝１０１００、およびａ３０＝１１１１０と、妥当性ビットｇ＝１とが記憶されている。アドレス５、６、７、…の下で、任意の値および妥当性ビットｇ＝０が記憶されている。ここで、メモリは、揮発性メモリ、例えばＳ−ＲＡＭでよく、上記の情報は、例えばスタートアップ時に、測定された必要な書込み電流または書込み期間に基づいて図１１のＭＲＡＭのメモリセルに書き込まれる。
【０２０１】
しかし、集合α１のアドレスは、不揮発性メモリに記憶することもできる。例えば、アドレスは、ＭＲＡＭのメモリ領域、例えばペイロードが記憶されているのと同じＭＲＡＭのメモリ領域、あるいはまた別のＭＲＡＭに記憶することもできる。ビットｂ１、ｂ２、ｂ３は、例えばパリティ情報に基づいて、アドレスビットから導出された情報を含むことができる。
【０２０２】
いくつかの例示的実施形態によれば、アドレスが三重または五重に重複して置かれ、ボータ（決定器）によって読み出されることにより、集合α１のアドレスが冗長に記憶されていることも可能である。それにより、記憶されている集合α１のアドレスの１つでの１ビットまたは２ビット誤りは許容され、影響を及ぼすことはない。
【０２０３】
別の例示的実施形態は、例えば記憶されている集合α１のアドレスを、誤り訂正符号、例えばＨｓｉａｏ符号またはＢＣＨ符号（Ｂｏｓｅ−Ｃｈａｕｄｈｕｒｉ−Ｈｏｃｑｕｅｎｇｈｅｍ）によって保護することを企図する。また、この符号は、ペイロードビットの符号化、またはアドレスビットもしくはアドレスビットから導出されるビットを考慮に入れたペイロードビットの符号化のために使用されるのと同じ符号でよい。
【０２０４】
例えば図１１に関連して述べるように、メモリに記憶されているデータの信頼性を高めるために、いくつかの例示的実施形態によれば、以下のことを行うことができる。
【０２０５】
時点Ｔ１で、アドレス０、…、４がメモリに入力され、メモリに記憶されている集合α１のアドレスａ１、ａ１１、ａ１３、ａ２０、ａ３０が、このメモリから読み出されて、アドレスとして図１１のメモリに入力され、それにより、図１１のメモリから、場合によっては誤りのあるビットシーケンスｗ１、ｗ１１、ｗ１３、ｗ２０、ｗ３０が読み出される。これらのビットシーケンスｗ１、ｗ１１、ｗ１３、ｗ２０、ｗ３０の１つが、符号Ｃ４によって検出および訂正することができる少なくとも１つのτビット誤り（すなわち、σ（σ＞τ）個の誤り）を有するとき、対応する訂正されたビットシーケンスが、同じアドレスの下で図１１のメモリに書き戻される。
【０２０６】
例えば、アドレスａ１３の下で読み出されるビットシーケンスｗ２０が誤りを有さない、またはせいぜい１つのτ−１ビット誤りしか有さない場合、ビットシーケンスｗ２０は、図１１のメモリに書き戻されない。例えば、アドレスａ１３の下で読み出されるビットシーケンスｗ１３が誤りを有しており、少なくとも１つのτビット誤りを有し、また、ビットシーケンスｗ１３が、符号Ｃ４を使用して誤りを有するものと認識されて、ｗｃｏｒに訂正される場合、訂正されたビットシーケンスｗｃｏｒは、アドレスａ１３の下で図１１のメモリに書き戻される。
【０２０７】
ここで、Ｃ４がｔ≧１でのｔビット誤り訂正符号であるとき、値（閾値）τは、値１、２、…、ｔの１つとして選択することができる。この処置を、時点Ｔ１＋δ１、Ｔ１＋２・δ１、Ｔ１＋３・δ１、…で繰り返すことができる。
【０２０８】
例えば、例示的実施形態において符号Ｃ４が２ビット誤り訂正符号である場合、τ＝１または２が成り立つことがある。例えば、アドレスａ１１の下で１ビット誤りが存在する場合、このアドレスの下で読み出される誤りのあるバイナリシーケンスｗ１１は、訂正して書き戻されないことが可能であり得る。例えば、アドレスａ２０の下で２ビット誤りが存在する場合、このアドレスの下で読み出される誤りのあるバイナリシーケンスｗ２０をｗｃｏｒに訂正して書き戻すことができる。
【０２０９】
時点Ｔ２＋δ２、Ｔ２＋２・δ２、Ｔ２＋３・δ２、…で、集合α２のアドレスの下で記憶されているビットシーケンスを読み出し、場合によっては、読み出されたビットシーケンスの１つに検出可能および訂正可能なτビット誤りが存在するときには訂正することができる。ここで、例えば、δ２＞δ１である。
【０２１０】
当然、時点Ｔ２＋δ２、Ｔ２＋２・δ２、Ｔ２＋３・δ２、…で、図１１のメモリ内の全てのビットシーケンスが読み出されて、誤りがある場合には書き戻されることも可能である。
【０２１１】
いくつかの例示的実施形態によれば、以下のことも可能である：アドレスを３つ以上の部分集合α１、α２、α３、…に分割し、部分集合α１のアドレスの下で読み出されたビットシーケンスを時点Ｔ１＋δ１、Ｔ１＋２・δ１、Ｔ１＋３・δ１、…で読み出し、誤りがある場合には書き戻し、部分集合α２のアドレスの下で読み出されたビットシーケンスを時点Ｔ２＋δ２、Ｔ２＋２・δ２、Ｔ２＋３・δ２、…で読み出し、誤りがある場合には書き戻し、部分集合α３のアドレスの下で読み出されたビットシーケンスを時点Ｔ３＋δ３、Ｔ３＋２・δ３、Ｔ３＋３・δ３、…で読み出し、誤りがある場合には訂正し、以下同様である。ここで、δ１＞δ２＞δ３が成り立つ。ここでも、読出しおよび場合により行われる書戻しは、それぞれ、同じ時間的距離で行われる必要はない。より良く理解できるように、ここでは、同じ距離δ１を使用する。
【０２１２】
ｔ≧２でのｔビット誤り訂正符号の使用は、意外にも、頻繁に読み出され、誤りがある場合には訂正されて書き戻されるべきアドレスの集合α１を、１ビット誤り訂正符号が使用されるときよりもかなり小さく選択することを可能にする。１つのメモリセルが時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する確率がｐである場合、Ｎ個のメモリセルのうちの２つのメモリセルが同時に、時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する確率は、二項分布に従って、
0006339137.tif 000025
であり、ここで、メモリセルが、互いに独立して誤りを有すると仮定することができる。ここで、Ｎ＝ｋ＋ｍであり、ここで、ｋは、ペイロードビットの数であり、ｍは、対象の符号のチェックビットの数である。
【０２１３】
２ビット誤り訂正符号Ｃｃｏｒの場合、例えば、時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い２つのメモリセルをアドレス指定するアドレスのみを集合α１に割り当てることができる。これは、例えば図６に関連して述べたような、特定の閾値を超える書込み電流を有するメモリセルでよい。
【０２１４】
より頻繁に読み出され、誤りがある場合には訂正されて書き戻されるアドレスの集合α１は、時点ｔで誤りがなかったときに時点ｔ＋Δｔで誤りを有する推定確率が比較的高い少なくとも１つのメモリセルをアドレス指定するアドレスの集合が選択される場合における、より頻繁に読み出され、誤りがある場合には訂正されて書き戻されるアドレスの集合α１よりも小さくすることができる。これは、必要な時間的コストおよび電力コストを減少させることができるので有利であり得る。
【０２１５】
アドレス０００、００１、０１０、０１１、および１００に関して、第１の部分信頼性情報２２’が存在することがある。アドレス１０１に関して、例えば、第２の信頼性情報または部分信頼性情報２２’’が存在することがある。信頼性情報２２は、部分信頼性情報２２’および２２’’を含むことができる。例えば、アドレスの第３の部分集合α３に割り当てることができるアドレスａ３，１（１０１）は、アドレス０〜４と同様により低い頻度で、かつアドレス６または７よりも高い確率で読み出すことができる。
【０２１６】
代替または追加として、アドレスはまた、アドレスのどの部分集合にも割り当てなくてもよく、または３つ以上の部分集合に割り当ててもよい。
【０２１７】
すなわち、図１２は、別のアドレスよりも高い確率で誤りを有するメモリセルをアドレス指定するアドレスを記憶するためのメモリを示す。
【０２１８】
図１３は、アドレス指定可能なメモリ１２に符号化されたデータを記憶するための回路構成の概略ブロック図、またはメモリデバイス１３０のブロック図を示す。符号化すべきペイロード５２（符号ｕによって表される）は、符号器（メモリ制御装置）５６の入力部５４に入ることができる。アドレス指定可能なメモリのデータ入力部６２と接続されている符号器５６のデータ出力部５８で、符号化されたデータｗ＝ｃ，ｕ（すなわち、ビットシーケンスｗはビットｃとビットｕを含む）を出力し、アドレス指定可能なメモリ１２のアドレス入力部６４に入るアドレスａの下で記憶することができる。例えば、符号化されたデータｗ＝ｃ，ｕは、誤り訂正符号Ｃｃｏｒの符号語４２でよい。代替として、符号語４２’、４４または４２’でよい。
【０２１９】
すなわち、図１３は、前置符号器を有するメモリを示す。
【０２２０】
図１４は、符号化されたデータをアドレス指定可能なメモリ１２に記憶するための回路構成（メモリデバイス）１４０の概略ブロック図を示す。符号器（メモリ制御装置）５６’は、符号化すべきデータ５２を入力部５４で受け取るように構成することができる。符号器は、さらなる入力部６６で、書込みアドレスａのアドレスビットを受け取るように構成される。アドレス指定可能なメモリ１２のデータ入力部６２と結合されている符号器５６’のデータ出力部５８で、チェックビットｃおよびペイロードビットｕを出力し、アドレス入力部６６に入るアドレスａの下でアドレス指定可能なメモリ１２に記憶することができる。ビットｃ、ｕ、ａは、誤り訂正符号Ｃｃｏｒの符号語ｗを形成することができる。図１３と比較して、例えば、アドレス指定可能なメモリ１２に、誤り検出／誤り訂正符号の符号語は記憶されない。アドレスａの下で記憶されているビットは、誤りがない場合には、アドレス指定可能なメモリ１２のアドレス入力部６４に入るアドレスａと共に、符号Ｃｃｏｒの符号語を形成する。
【０２２１】
これは、メモリデバイス１４０が、ビットシーケンスをアドレス指定可能なメモリ１２に記憶するように構成されることを意味し、ここで、ビットシーケンスは、誤り訂正符号の符号語の一部である。対照的に、メモリデバイス１４０のメモリ制御装置５６は、誤り訂正符号の符号語を形成するビットシーケンスを記憶するように構成することができる。
【０２２２】
すなわち、図１４は、前置符号器を備えるメモリを示し、ここでは、符号語を形成するためにアドレスビットが使用される。
【０２２３】
図１５は、符号化されたペイロードをアドレス指定可能なメモリ１２に記憶するためのメモリデバイス１５０の概略ブロック図を示す。符号化すべきペイロードｕまたは５２は、符号器５６’の第１の入力部５４に入ることができ、第２の入力部６６には、書込みアドレスａの修正されたアドレスビットＡ（Ａ＝ｆ（ａ））が入る。ｆは、例えば、アドレスビットａの一意の関数でよい。
【０２２４】
例えば、Ａ＝ｆ（ａ）＝ｆ（ａ０，…，ａｌ−１）＝ａ０＋ａ１＋…＋ａｌ−１が成り立ってよく、それにより、この場合、修正されたアドレスビット、すなわちアドレスビットから導出されるビットは、アドレスビットのパリティである１つのビットからなる。代替として、一意の関数は、別の一意の関数でもよく、例えばアドレスの「０」の数のバイナリ値である。アドレス指定可能なメモリ１２のデータ入力部６２と接続されている符号器５６’のデータ出力部５８で、チェックビットｃおよびペイロードビットｕを出力して、アドレス入力部に入るアドレスａの下でアドレス指定可能なメモリ１２に記憶することができる。ビットｃ、ｕ、およびＡは、誤り訂正符号Ｃｃｏｒの符号語を形成することができる。ビットｃおよびｕは、誤り訂正符号Ｃｃｏｒのビットｃ、ｕ、Ａを含む符号語のビットでよい。符号器５６および／または５６’は、例えば、メモリ制御装置１８でよい。
【０２２５】
すなわち、図１５は、前置符号器を備えるメモリを示し、ここでは、例えば、符号語を形成するためにアドレスビットからのパリティビットを使用することができる。
【０２２６】
図１６は、アドレス指定可能なメモリ１２と、メモリ制御装置１８とを含むメモリデバイス１６０の概略ブロック図を示す。メモリ制御装置１８は、例えば、以下のものを含むことができる。シンドローム発生器８４、誤り検出器８６、誤り訂正器８８、ＸＯＲ回路９２、ＡＮＤゲート９４、ＡＮＤゲート９６、第１のアドレス発生器Ａｄ１  ９８、アドレスメモリ１０２、第２のアドレス発生器Ａｄ２  １０４、およびマルチプレクサ１０６。別のメモリデバイスは、別の構成要素を有することができる。これは、メモリデバイスが、第１のアドレスａ１，１のビットを含むアドレスビットシーケンスを記憶するためのアドレス値メモリ１０２を有することができることを意味する。第１のアドレスのビットは、アドレス値メモリに冗長に記憶することができ、それにより、アドレスａ１，１の冗長に記憶されたアドレスビットにおいて少なくとも１つの誤りが検出可能および／または訂正可能である。
【０２２７】
すなわち、アドレス指定可能なメモリ１２に、アドレスａ０、ａ１…、ａｍａｘの下で、ビットシーケンスｃ０、ｕ０；ｃ１、ｕ１；…；ｃｍａｘ，ｕｍａｘが記憶可能であり得て、それにより、ｃ０、ｕ０、ａ０；ｃ１、ｕ１、ａ１；…；ｃｍａｘ、ｕｍａｘ、ａｍａｘは、誤りがない場合には、誤り訂正符号Ｃｃｏｒの符号語である。図示される回路構成は、メモリセルの誤りを訂正するために使用可能であり得る。
【０２２８】
例示的実施形態によれば、デバイスの例示的な機能は、以下のように述べることができる。第１の時点ｔで、例えば、ビットシーケンスは、集合α１からのアドレスの下で記憶されているビットシーケンスがメモリ１２から読み出され、訂正可能な誤りが出現したときには書き戻される。時点ｔと同様に、例えば、時点ｔ＋δ１、ｔ＋２・δ１、ｔ＋３・δ１、…で、集合α１からのアドレスの下で記憶されているビットシーケンスがメモリ１２から読み出される。訂正可能な誤りが出現したとき、訂正されたビットシーケンスが書き戻される。集合α１からのアドレスの下で記憶されているビットシーケンスの誤り訂正のための読出しは、時間的距離δ１で行われる。読み出されたビットシーケンスは、訂正可能な誤りが出現したときに訂正され、例えばそれらが読み出されたアドレスの下に書き戻される。
【０２２９】
例えば、第１のアドレス指定可能なメモリまたはアドレスメモリ１０２に、集合α１からのアドレスが連続的に記憶されている。第１のアドレス発生器Ａｄ１  ９８は、ここでは、カウンタとして構成される。その出力部は、アドレスメモリ１０２のアドレス入力部と接続されている。カウンタとして構成されたアドレス発生器によって、アドレスメモリ用のアドレスとして値０、１、２が出力される場合、アドレスメモリ１０２から、アドレスａ１，１、ａ１，２、ａ１，３、…が出力される。マルチプレクサ１０６の制御信号ｓｔの値が０である場合、マルチプレクサ１０６は、その「０」入力部をその出力部と接続する。メモリ１２のアドレス入力部には、アドレスａ’としてアドレスａ１，１、ａ１，２、ａ１，３、…が入る。メモリ１２は、そのデータ出力部で、アドレスａ’の下で記憶されている、場合によっては誤りのあるビットシーケンスｃ’，ｕ’を出力する。ビットシーケンスｃ’，ｕ’は、正しいビットシーケンスｃ，ｕから、場合により存在する誤りによって生じたものである。
【０２３０】
場合によっては誤りのあるビットシーケンスｃ’，ｕ’は、シンドローム発生器８４の第１の入力部に入り、一方、場合によっては誤りのあるアドレスａ’は、シンドローム発生器８４の第２の入力部に入り、シンドローム発生器８４は、その出力部で誤りシンドロームｓを出力する。同時に、場合によっては誤りのあるビットシーケンスｃ’，ｕ’は、成分毎のＸＯＲ演算のためのＸＯＲ回路９２の第１の入力部に入る。誤りシンドロームｓを送出するシンドローム発生器８４の出力部は、誤り検出器または誤り検出器８６の入力部と接続されており、同時に、誤り訂正器８８の入力部と接続されており、誤り訂正器８８は、その出力部で、場合によっては誤りのあるバイナリシーケンスｃ’，ｕ’のビットをビット毎に訂正するために訂正ベクトルｅを出力する。誤り訂正器８８の出力部は、ＸＯＲ回路９２の第２の入力部に通じており、ＸＯＲ回路９２は、ｃ’，ｕ’とｅの対応するビットのビット毎のＸＯＲ演算を実現し、その出力部で、訂正された値（ｃ，ｕ）ｃｏｒを出力する。
【０２３１】
ＸＯＲ回路９２の出力部は、メモリ１２のデータ入力部に通じている。誤り検出器８６が、１ビット幅の誤り信号Ｅを生成し、誤り信号Ｅは、１≦τ≦ｔでの少なくとも１つのτビット誤りが存在するときには１であり、ここで、誤りのあるバイナリシーケンスｃ’，ｕ’が訂正および書き戻され、Ｃｃｏｒはｔビット訂正符号である。
【０２３２】
誤り信号Ｅを送出する誤り検出器８６の出力部は、ＡＮＤゲート９６の第１の入力部と接続されており、また否定演算素子を介してＡＮＤゲート９４と接続されており、それらのそれぞれの第１の入力部に、バイナリ読出し／書込み信号ｒ／ｗが入る。誤り検出器８６の出力部は、同時に、アドレス発生器Ａｄ１  ９８およびアドレス発生器Ａｄ２  １０４の１ビット幅の入力部と接続されている。
【０２３３】
信号ｒ／ｗ＝１である場合、Ｅ＝０のときはｒｅａｄ＝１であり、Ｅ＝１のときはｒｅａｄ＝０である。アドレス発生器Ａｄ１  ９８は、アドレスメモリ１０２をアドレス指定し、アドレスメモリ１０２は、アドレス発生器Ａｄ１  ９８によって発生されたアドレスのそれぞれの入力時に集合α１からのアドレスａを出力し、そのアドレスが、マルチプレクサ１０６を介してメモリ１２のアドレス入力部に入る。読出し信号ｒｅａｄ＝１の場合、メモリ１２は、アドレスａの下で記憶されているビットシーケンスｃ，ｕを出力する。シンドローム発生器８４は、場合によっては誤りのあるアドレスビットａと場合によっては誤りのあるビットシーケンスｃ，ｕとから誤りシンドロームｓを形成し、そこから、誤り検出器８６は誤り信号Ｅを決定し、誤り訂正器８８は訂正ベクトルｅを決定する。アドレス発生器Ａｄ１  ８８は、Ｅ＝０であるときに次のアドレスを出力するように構成される。Ｅ＝０の場合、書込み信号ｗｒｉｔｅ＝０であり、読出し信号ｒｅａｄ＝１である。マルチプレクサの制御信号ｓｔは、引き続きｓｔ＝０であり、したがって、ここで、アドレスメモリ１０２によって出力される集合α１からのさらなるアドレスが、メモリ１２のアドレス入力部に入る。
【０２３４】
誤り信号Ｅ＝１の場合、書込み信号ｗｒｉｔｅ＝１である。アドレス発生器Ａｄ１  ９８は、Ｅ＝１である限り新たなアドレスを出力しないように構成され、したがって、それまでのアドレスａが引き続きメモリ１２のアドレス入力部に入り、訂正されたビットシーケンスｃｕｃｏｒがアドレスａの下でメモリ１２に書き込まれ、それにより、符号Ｃｃｏｒによって誤りを訂正することができ、かつアドレスが誤りを有さないときには、そのアドレスの下で記憶されている誤りのあるビットシーケンスが訂正されて書き戻される。
【０２３５】
ここで、書戻しは、集合α１からのアドレスの下で記憶されているビットシーケンスが誤りを有し、符号Ｃｃｏｒによって訂正することができるときに行われる。アドレス誤りは、訂正可能でない誤りとして認識される。
【０２３６】
マルチプレクサ１０６の制御信号ｓｔが、ｓｔ＝１の場合、マルチプレクサ１０６は、その「１」入力部をその出力部と接続し、アドレス発生器Ａｄ２  １０４から発生されたアドレスが、メモリ１２のアドレス入力部に入る。制御信号ｓｔは、時点Ｔ、Ｔ＋δ２、Ｔ＋２δ２、Ｔ＋３δ２、…でｓｔ＝１に選択される。より大きい時間的距離で読み出され、誤りがある場合には訂正されて書き戻される全てのアドレスをアドレス発生器Ａｄ２  １０４が発生するまで、制御信号ｓｔは各場合にこの値に保たれる。いくつかの例示的実施形態は、アドレス発生器Ａｄ２によってメモリ内の誤りのある値を訂正する目的で、メモリ１２の全てのアドレスが時点Ｔ、Ｔ＋δ２、Ｔ＋２δ２、Ｔ＋３δ２、…で読み出され、誤りがある場合には訂正されて書き戻されることを企図する。訂正すべき誤りが検出される場合、Ｅ＝１および読取り信号ｒｅａｄが、ＡＮＤゲート９４の出力として値０を取り、書込み信号ｗｒｉｔｅは、ＡＮＤゲート９４の出力として値１を取り、それにより、訂正されたビットシーケンスｃ，ｕｃｏｒが、アドレスａの下でメモリ１２に書き込まれる。また、誤り信号Ｅは、アドレス発生器Ａｄ２の入力部にも送られており、ここで、アドレス発生器Ａｄ２は、誤り信号Ｅ＝１の入力時にはそれまでのアドレスを維持するように構成される。
【０２３７】
アドレス発生器Ａｄ１  ９８は、アドレスメモリ１０２をアドレス指定し、アドレスメモリ１０２は、アドレス発生器Ａｄ１  ９８によって発生されたアドレスのそれぞれの入力時に、集合α１からのアドレスａを出力し、このアドレスａが、マルチプレクサ１０６を介してメモリ１２のアドレス入力部に入る。読出し信号ｒｅａｄ＝１の場合、メモリ１２は、アドレスａのもとで記憶されているビットシーケンスｃ，ｕを出力する。シンドローム発生器８４は、場合によっては誤りのあるアドレスビットａと場合によっては誤りのあるビットシーケンスｃ，ｕとから誤りシンドロームｓを形成し、そこから、誤り検出器８６は誤り信号Ｅを決定し、誤り訂正器８８は訂正ベクトルｅを決定する。アドレス発生器Ａｄ１  ９８は、Ｅ＝０であるときに次のアドレスを出力するように構成される。Ｅ＝０の場合、書込み信号ｗｒｉｔｅ＝０であり、読出し信号ｒｅａｄ＝１である。マルチプレクサの制御信号ｓｔは、引き続きｓｔ＝０であり、したがって、ここで、アドレスメモリ１０２によって出力される集合α１からのさらなるアドレスが、メモリ１２のアドレス入力部に入る。
【０２３８】
誤り信号Ｅ＝１の場合、書込み信号ｗｒｉｔｅ＝１である。アドレス発生器Ａｄ１  ９８は、Ｅ＝１である限り新たなアドレスを出力しないように構成され、したがって、それまでのアドレスａが引き続きメモリ１２のアドレス入力部に入り、訂正されたビットシーケンスｃｕｃｏｒがアドレスａの下でメモリ１２に書き込まれ、それにより、符号Ｃｃｏｒによって誤りを訂正することができ、かつアドレスが誤りを有さないときには、そのアドレスの下で記憶されていた誤りのあるビットシーケンスが訂正されて書き戻される。
【０２３９】
ここで、書戻しは、集合α１からのアドレスの下で記憶されているビットシーケンスが誤りを有し、符号Ｃｃｏｒによって訂正することができるときに行われる。アドレス誤りは、訂正可能でない誤りとして認識される。
【０２４０】
時点Ｔ、Ｔ＋δ２、Ｔ＋２δ２、…で、制御信号ｓｔは、アドレス発生器Ａｄ２によって発生されるアドレスがメモリ１２から読み出されるまで、値ｓｔ＝１を取る。ここで、アドレス発生器Ａｄ２  １０４は、メモリ１２の全てのアドレスを順次に発生する、またはアドレス領域内のアドレスを出力することが可能である。
【０２４１】
アドレス発生器１０４に関する次のアドレスの発生が誤り信号Ｅによって決定されるのと同様に、アドレス発生器８１０に関する次のアドレスの発生も誤り信号Ｅによって決定される。アドレス発生器Ａｄ２  １０４によって発生されるアドレスの下で記憶されているデータの読出しおよび訂正は、アドレス発生器１０２によって出力されるアドレスの下で記憶されているデータの読出しおよび訂正と同様に行われる。
【０２４２】
また、さらなる例示的実施形態によれば、別のアドレスよりも頻繁に読みだされ、誤りの場合には訂正されて書き戻されるアドレスの集合α１を動的に変更することも可能である。したがって、例えば、メモリセルの物理的パラメータの測定に基づいて、例えばメモリ制御装置が物理的パラメータを決定することによって、スタートアップ時に集合α１を決定することが可能である。ここで、集合α１のアドレスが、それぞれ、時点Ｔ１＋δ１、Ｔ１＋２・δ１、Ｔ１＋３・δ１、…、Ｔ１＋Ｒ・δ１から始めて読み出される場合、メモリ制御装置は、アドレスａ１，ｉ∈α１の下で記憶されているビットシーケンスがＳ回目の読出し時に誤りを有し、使用される誤り検出符号を使用して訂正することができる頻度を決定または推定することができる（方法１５５０参照）。Ｓ回目の読出しは、絶対数、ある期間内の数、または全体の読出しプロセスと比較した誤りのある読出しプロセスの（相対）数に関するものでよい。
【０２４３】
また、例えば、メモリ制御装置によって、アドレスａ１，ｉ∈α１の下で記憶されているバイナリシーケンスがＲ回目の読出し時に誤りを有していたかどうかを判断することもできる。アドレスａ１，ｉの下で異なるＲ個の時点に読み出されるバイナリシーケンスが常に誤りを有さない場合、集合α１からのアドレスａ１，ｉを抹消して、集合α２に追加することができる。
【０２４４】
例えば、アドレスメモリ１０２に記憶されている集合α１のアドレスにさらなるビットｂｗを追加することが可能であり、このビットｂｗは、初めは値０に設定されている。集合α１からのアドレスａ１，ｋがアドレスメモリ１０２から読み出され、データメモリ１２に入力される場合、データメモリ１２は、アドレスａ１，ｉの下で記憶されている場合によっては誤りのあるビットシーケンスｃ’，ｕ’を出力する。出力されたビットシーケンスｃ’，ｕ’が誤りを有し、誤り訂正符号を使用して訂正されて書き戻された場合、さらなるビットｂｗの値は、値０を有していたか１を有していたかに関係なく、値ｂｗ＝１に設定される。出力されたビットシーケンスｃ’，ｕ’が誤りを有さない場合、さらなるビットｂｗの値は維持される。アドレスａ１，ｉ∈α１の下でデータメモリ１２に記憶されているビットシーケンスのＲ（Ｒ＞０）回目の読出しを行い、場合によっては誤りのある読み出されたビットシーケンスを訂正してさらなるビット値ｂｗ＝０を書き戻す場合、アドレスａ１，ｉの下で記憶されているビットシーケンスは、Ｒ回の読出し時に常に誤りを有していなかった。ここで、このアドレスを集合α１から除外し、アドレスの別の集合、例えば集合α２に割り当てることが可能である。
【０２４５】
メモリ制御装置は、ｔ≧２でのｔビット誤り訂正符号Ｃｃｏｒを使用するように構成することができる。これは、アドレスａ２，ｊの下でのデータメモリ１２へのメモリアクセス時にτビット誤りを有するビットシーケンスｃ’，ｕ’が出力されるときに、アドレスａ２，ｊ∈α２を集合α１に割り当てることを可能にし、ここで、１≦τ≦ｔを選択することができる。例えば、ｔ＝２の場合、１ビット誤りの検出後にアドレスａ２，ｊが集合α１に割り当てられることなく、１ビット誤りを訂正することができる。２ビット誤りが出現する場合、アドレスａ２，ｊは、集合α２から除外し、集合α１に割り当てることができる。
【０２４６】
頻繁に読み出されるべきアドレスの集合α１のみをアドレスメモリ１０２に記憶し、それほど頻繁に読み出す必要がないアドレスの集合α２をアドレスメモリに置かず、集合αからのアドレスが、記憶されている値の誤り訂正の目的で読み出されて誤り時に訂正されるときに、同時にまた集合α１からのアドレスを読み出して場合によっては訂正すれば十分であり得る。
【０２４７】
部分集合α１とα２は、互いに素でも、互いに素でなくてもよい。アドレスａが集合α１にもα２にも属する場合、そのアドレスａは、集合α１からのアドレスが読み出される場合にも、集合α２からのアドレスが読み出される場合にも読み出される。しかし、頻繁に読み出されるべきアドレスが集合α１に属することが重要となり得る。
【０２４８】
アドレスの集合の動的変化の上記の例は、生じ得るアドレスの集合の動的変化のいくつかの例である。
【０２４９】
図１７は、部分集合へのアドレスの割当てに影響を及ぼすためまたは割当てを変えるために例えばメモリ制御装置によって実施可能である方法１７００および方法１７５０の概略流れ図を示す。ステップ１７１０で、メモリ制御装置は、第２の部分集合の１つのアドレスを読み出し、記憶されているビットシーケンスの読出し時に、所定のσ（１≦σ≦ｔ）に関して、読み出されたビットシーケンスでのσ個の誤りをメモリ制御装置が検出したときに、そのアドレスを第１の部分集合のアドレスに割り当てるように構成することができる。符号は、ｔ≧１でのｔビット誤り検出および／または誤り訂正符号でよい。
【０２５０】
ステップ１７２０で、メモリ制御装置は、読み出されたビットシーケンス中で誤りが検出されるときに、読み出されたアドレスをアドレスの第１の部分集合α１に割り当てることができる。例えば、メモリ制御装置は、読み出されたビットシーケンス中の第１の誤りを訂正するように構成することができる。メモリ制御装置は、あるアドレスの下で読み出されるビットシーケンスが部分集合α１に割り当てられておらず、このアドレスの下で記憶されているビットシーケンスのＳ’（１＜Ｓ’）回目の読出し時に誤りが生じたとき、そのアドレスをアドレスの第１の部分集合α１に追加するように構成することができる。これは、繰り返し誤りを有するビットシーケンスを、メモリ制御装置によって、アドレスの第１の部分集合に追加することができることを意味する。
【０２５１】
方法１７５０によって、メモリ制御装置は、例えば、ステップ１７６０でこのアドレスの下で記憶されているビットシーケンスのＳ（１＜Ｓ）回目の読出し時に誤りが出現しなかったとき、第１の部分集合α１のアドレスａ１，ｊを部分集合α１から除外するように構成することができる。Ｓ回にわたり誤りが生じない場合、メモリ制御装置は、ステップ１７７０で、アドレスを第１の部分集合α１から除外する、および／または第２の部分集合α２に割り当てるように構成することができる。これは、例えば、アドレスの下で記憶されているビットシーケンスのＳ（１＜Ｓ）回目の読出し時に誤りが出現しなかったときに、第１の部分集合α１のアドレスを部分集合α１から除外するようにメモリ制御装置１８を構成することができることを意味する。
【０２５２】
いくつかの例示的実施形態によるメモリ制御装置は、アドレス指定可能なメモリに記憶されているビットシーケンスの読出し時に出現する誤りに依存して、および／または、アドレス指定可能なメモリへの書込み時および／またはアドレス指定可能なメモリからの読出し時に決定される物理的パラメータの値に依存して、第１の部分集合α１を変えるように構成することができる。例えば、物理的パラメータは、アドレス指定可能なメモリの動作中または動作期間にわたって変わることがある。制御装置は、その変化を決定する、すなわち捕捉するように、およびアドレスの第１または第２の部分集合への割当てを適合させるように構成することができる。
【０２５３】
図１８は、メモリデバイス１８０の概略ブロック図を示し、メモリデバイス１８０は、ビットシーケンスを記憶するためのアドレス指定可能なメモリ１２と、メモリ制御装置１８’とを含む。記憶されているビットシーケンスは、誤りがない場合には、誤り訂正符号の符号語のビット、すなわち符号語の少なくとも一部である。メモリ制御装置１８’は、誤りのある内容を訂正するために、記憶されているビットシーケンスをアドレス指定可能なメモリ１２から読み出して、読出しプロセスを行うように構成される。誤り訂正符号は、ｔ≧２でのｔビット訂正符号でよい。
【０２５４】
メモリデバイス１８’は、記憶されており読み出される、σ（１＜σ≦ｔ）個のビット誤りを有する誤りのあるビットシーケンスを、誤り訂正符号を使用して訂正し、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きする、および／または訂正されたビットシーケンスを書き戻すように構成することができる。メモリ制御装置は、読み出されたビットシーケンスがσ個の誤りを有するときには、誤りのあるビットシーケンスを訂正されたビットシーケンスで上書きせず、訂正されたビットシーケンスを書き戻さないように構成することができる。ここで、σ≦τが成り立ち、τは閾値であり、１≦τ≦ｔが成り立つ。誤りのあるビットシーケンスが書き戻されるか否かの区別に関して、メモリデバイス１８０は、例えば図５に関連して述べたような機能と同等の機能を有することができる。
【０２５５】
図３に関連して述べたように、アドレス指定可能なメモリは、第１のアドレスａ１，１によってアドレス指定される第１のメモリセルを有することがある。アドレス指定可能なメモリは、第１のアドレスとは異なる第２のアドレスａ２，１によってアドレス指定される第２のメモリセルを有することがある。第１のアドレスａ１，１および第２のアドレスａ２，１の下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号Ｃｃｏｒの符号語のビットでよい。メモリ制御装置は、記憶されているビットシーケンス中の誤りのある内容を訂正するために、第１および／または第２のメモリセルを読み出すことができる。第１のアドレスａ１，１および第２のアドレスａ２，１の下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号Ｃｃｏｒの符号語のビットでよい。メモリ制御装置は、記憶されているビットシーケンス中の誤りのある内容を訂正するために、第１および／または第２のメモリセルを読み出して、読出しプロセスを行うように構成することができる。第１のメモリセルおよび／または第２のメモリセルに関して信頼性情報が存在する場合、第１のメモリセルと第２のメモリセルとの連続する読出しプロセスの頻度は異なっていてよい。信頼性情報は、第１のメモリセルおよび／または第２のメモリセル内での誤りのあるビットシーケンスの出現に関する算出確率に基づくことがある。
【０２５６】
さらなる例示的実施形態は、本明細書で述べる別の例示的実施形態に関連して説明するように、様々な頻度でのメモリセルの評価および／または訂正のためにメモリデバイス１８０を改良したメモリデバイスを提供する。これは、上で説明した例示的実施形態の上記の特徴が、メモリデバイス１８０に容易に転用可能であることを意味する。
【０２５７】
図１９は、様々な熱的安定性ΔＥ［ｋＢＴ］にわたるビット（メモリセル）の分布の概略図を示す。熱的安定性は、物理的パラメータとして使用可能であり得る。例えば、σよりも大きい、２σよりも大きい、または３σよりも大きい平均値からの偏差を有するメモリセルをアドレス指定するアドレスを、第１のアドレスとして記憶することができ、ここで、σは、分布の分散を表す。
【０２５８】
図１９は、ＭＲＡＭメモリにおいて熱的安定性ΔＥの大きな変動が生じ得ることを示す。
【０２５９】
図２０は、ある時間間隔内で、または書込みプロセス後にビットがビット誤りを有するる確率分布Ｐの概略図を示す。様々な期間（１秒、１００００秒、１０８秒（例えば３．１年に相当する））にわたって、ビット誤りが存在する確率は、使用される時間スパン、使用される誤り訂正符号のタイプ（例えば１ビット誤り訂正符号（ＥＣＣ）もしくは３ビット誤り訂正符号）、および／または熱的安定性ΔＥに基づくことがある。これらの関係は、第１のアドレスと第２のアドレスを区別する際に推定確率として考慮に入れることができる。
【０２６０】
簡略に表現すると、図２０は、物理的パラメータ、すなわち熱的安定性と、ビット誤りの出現に関する確率との関係を示す。
【０２６１】
図２１は、ステップ２１１０を含む方法２１００の概略流れ図を示す。方法２１００は、メモリデバイス１０によって実施可能であり得る。ステップ２１１０で、メモリの第１のメモリセルに記憶されている第１のビットシーケンスの検査が行われ、ここで、メモリは、第２のメモリセルを有し、第２のメモリセルは、第１のメモリセルとは異なり、第２のビットシーケンスが記憶されている。第１のビットシーケンスは、第１のメモリセルに割り当てられた頻度で検査され、この頻度は、第１のメモリセルに関する信頼性情報に依存する。誤り状態では、第１のビットシーケンスの誤りのあるビットが訂正され、少なくとも訂正されたビットがメモリに書き戻される。第２のビットシーケンスは、第２のメモリセルに関する信頼性情報に基づいて、第１のビットシーケンスよりも低い頻度で検査される。
【０２６２】
図２２は、例えば本明細書で述べるメモリデバイスによって実施可能である方法２２００の概略流れ図を示す。方法２２００は、例えばメモリデバイス３０によって実施されるときに、低い効率でメモリ内のビット誤りの数を低く保つために使用することができる。
【０２６３】
ステップ２２１０で、第１のアドレスａ１，１によってアドレス指定される第１のメモリセルと、第１のアドレスとは異なる第２のアドレスａ２，１によってアドレス指定される第２のメモリセルとを有するアドレス指定可能なメモリにビットシーケンスが記憶され、ここで、第１のアドレスａ１，１および第２のアドレスａ２，１の下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号の符号語のビットである。
【０２６４】
ステップ２２２０で、記憶されているビットシーケンス中の誤りのある内容を訂正するために、第１および／または第２のメモリセルが読み出されて、読出しプロセスを行い、ここで、第１のメモリセルおよび／または第２のメモリセルに関して信頼性情報が存在する場合、第１のメモリセルと第２のメモリセルの連続する読出しプロセスの頻度は異なり、ここで、信頼性情報は、第１のメモリセルおよび／または第２のメモリセル内での誤りのあるビットシーケンスの出現に関する算出確率に基づく。
【０２６５】
図２３は、例えば、メモリデバイス１８０によって、および／または追加として本明細書で述べる別のメモリデバイスによって実施可能である方法の概略流れ図を示す。この方法は、小さいコストでビット誤りを訂正するために使用することができる。
【０２６６】
ステップ２３１０で、ビットシーケンスがアドレス指定可能なメモリに記憶され、それにより、記憶されているビットシーケンスは、誤りがない場合には、それぞれｔビット誤り訂正符号の符号語のビットであり、ｔ≧２が成り立つ。
【０２６７】
ステップ２３２０で、誤りのある内容を訂正するために、記憶されているビットシーケンスが読み出されて、読出しプロセスを行う。
【０２６８】
ステップ２３３０で、記憶されており読み出された誤りのあるビットシーケンスが訂正され、ここで、ビットシーケンスは、σ個の誤りを有する。訂正は、誤り訂正符号を使用して行われる。ステップ２３４０で、誤りのあるビットシーケンスが、訂正されたビットシーケンスで上書きされ、および／または訂正されたビットシーケンスが書き戻され、ここで、１＜σ≦ｔが成り立つ。読み出されたビットシーケンスがσ個の誤りを有し、σ≦τが成り立つとき、誤りのあるビットシーケンスは訂正されたビットシーケンスで上書きされず、訂正されたビットシーケンスは書き戻されない。ここで、τは閾値であり、１≦τ≦ｔが成り立つ。
【０２６９】
図２４は、記憶すべきビットシーケンス１１２の概略図を示す。このビットシーケンス１１２は、例えば、そのビットシーケンスを記憶するアドレスがメモリデバイスによってアドレスａｐｅｒ，１として識別されるときに、ビット毎に反転されたビットシーケンス１１２’としてアドレス指定可能なメモリに記憶可能である。このビットシーケンスは、例えば「０縮退」、すなわち値０から動かない永久的な欠陥があるメモリセル１１４を有する。ビットシーケンス１１００１は、アドレスａｐｅｒ，１の下でメモリセルに誤りなしでは記憶することができず、一方、反転されたビットシーケンス００１１０は、アドレスａｐｅｒ，１の下で誤りなく記憶することができる。いくつかの例示的実施形態によれば、ビットシーケンス全体を反転させることができる。さらなる例示的実施形態によれば、ビットシーケンスは、一部を反転させることができ、ここで、この部分は、少なくとも、誤りのあるビットシーケンスが記憶されているビットを含む。メモリセル１１４またはアドレスａｐｅｒ，１は、例えば、アドレスの部分集合αｐｅｒに記憶することができる。
【０２７０】
図２５は、永久的な誤りを有するものとしてのメモリセル１１４の分類の概略図を示す。閾値よりも大きいまたは小さい物理的パラメータに基づいて、メモリセル１１４が永久的な誤りを有する可能性を示す確率ｐｐｅｒが算出可能であり得る。この確率が閾値ＳＷｐｅｒよりも高い場合、アドレスａｐｅｒ，１を、例えばメモリ制御装置によって部分集合αｐｅｒに割り当てることができる。閾値は、０よりも大きくかつ１以下でよく、０．１以上かつ０．９９以下でよく、または０．２以上かつ０．９５以下でよい。
【０２７１】
上述した例示的実施形態は、アドレス指定可能なメモリ、特にＭＲＡＭメモリにおける効率的な誤り訂正を可能にする。これらのメモリは、例えば、頻繁に誤りを有する小さな割合のセルを有する。別のセルは、それほど頻繁には誤りを有さない。アドレスは、頻繁な誤りの確率を有する少なくとも１つのメモリセルをアドレス指定するとき、第１のアドレスとみなす、または格付けすることができる。
【０２７２】
簡略に表現すると、（例えば、スタートアップ中に、場合によっては書込み電流または読出し電流を評価して）信頼性のない（信頼できない）メモリセルを予測することができる。信頼できないアドレスを特定して、様々なタイプのメモリに記憶することができる。
【０２７３】
信頼できないアドレスに記憶されているビットシーケンス（ワード）は、より頻繁に読み出され、例えば、訂正可能な誤りが確定されて訂正されたときにのみ訂正される。信頼できるアドレスでのビットシーケンスは、より低い頻度で読み出され、訂正可能な誤りが訂正された場合にのみ書き戻される、すなわち再生される。これは、特にＭＲＡＭメモリにおける時間的コストおよびエネルギー消費の減少を可能にする。信頼できないアドレスは、揮発性メモリまたは不揮発性メモリに記憶することができる。代替または追加として、それらは、同じメモリ内の特別なメモリ領域に記憶することができ、そこでデータがアドレス指定可能なメモリに記憶される。これは、信頼できないアドレスの値も誤り訂正符号によって訂正されることを可能にする。信頼できないアドレスは、三重に重複して記憶することができる。
【０２７４】
信頼できないアドレスの編成は、メモリデバイスの動作中に動的に変えることができる。例えば、マルチビット誤りを有するアドレスを、信頼できないアドレスの編成に受け入れることができる。信頼できないアドレスのアドレスは、場合によっては長い特定の時間にわたって誤りを有さないとき、編成から除外することができる。
【０２７５】
ｔ≧２でのｔビット誤り訂正符号が使用される場合、信頼できるアドレスまたは信頼できないアドレスの下で記憶されるデータを、例えば、少なくとも１つの２ビット誤りが存在するときに訂正して再生することができる。例えば、１ビット誤りの場合、誤りを訂正することができ、または訂正せず再生しないこともできる。それにより、再生のためのコスト（オーバーヘッド）を本質的に減少させることができる。なぜなら、再生が行われる２ビット誤りに関する確率は、１ビット誤りに関する確率よりも本質的に低いからである。３つ以上の異なるタイプのアドレスを実装することもできる。
【０２７６】
また、いくつかの例示的実施形態は、以下のように構成することもできる：アドレス指定可能なメモリに記憶されているビットシーケンスの誤りの数を減少させるための方法に関して、アドレス指定可能なメモリが、第１のアドレスａ１，１によってアドレス指定される第１のメモリセルと、第１のアドレスとは異なる第２のアドレスａ２，１によってアドレス指定される第２のメモリセルとを有し、ここで、第１のアドレスａ１，１の下で時点ｔで第１のメモリセルに記憶されている誤りのないビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率が、第２のアドレスａ２，１の下で時点ｔで第２のメモリセルに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも高く、ここで、Δｔ＞０であり、アドレスａ１，１およびアドレスａ２，１の下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ符号距離ｄ≧３を有する誤り訂正符号Ｃｃｏｒの符号語のビットであり、ここで、メモリセルの誤りのある内容を訂正するために、アドレスａ１，１の下での第１のメモリセルが、連続する時点で、アドレスａ２，１の下での第２のメモリセルよりも頻繁に読み出され、アドレスａ１，１の下で記憶されており読み出された誤りのあるビットシーケンスが、符号Ｃｃｏｒを使用して訂正されたビットシーケンスで上書きされる。
【０２７７】
さらなる例示的実施形態は、以下のことを定義する：符号Ｃｃｏｒがｔビット訂正符号であり、ｔ≧２が成り立ち、ここで、アドレスａ１，１の下で記憶されており読み出されたビットシーケンスが、１つのｔビット、（ｔ−１）ビット、…、またはτビット誤りを有するとき、誤りのあるビットシーケンスが、符号Ｃｃｏｒを使用して訂正されたビットシーケンスで上書きまたは書き戻され、ここで、τ≧１が成り立つ。
【０２７８】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１の下で記憶されており読み出されたビットシーケンスが、１つのσビット誤りを有し、σ≦τが成り立つとき、σビット誤りを有する誤りのあるビットシーケンスが、訂正されたビットシーケンスで上書きまたは書き戻されない。
【０２７９】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号Ｃｃｏｒによって訂正される連続する時点では、第１のメモリセルが、訂正されたビットシーケンスで上書きされ、アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号Ｃｃｏｒによって訂正されない時点では、第１のメモリセルがビットシーケンスで上書きされない。
【０２８０】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１の下で第１のメモリセルが読み出され、読み出されたビットシーケンス中の誤りが符号Ｃｃｏｒによって訂正または検出されない連続する時点で、第１のメモリセルが、読み出されたビットシーケンスで上書きされる。
【０２８１】
さらなる例示的実施形態は、以下のことを定義する：第１のアドレスａ１，１の下で時点ｔで第１のメモリセルに記憶されている誤りのないビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率が、少なくとも１つの物理的パラメータの値を使用して決定される。
【０２８２】
さらなる例示的実施形態は、以下のことを定義する：少なくとも１つの物理的パラメータの値が、メモリセルの書込み電流の値または読出し電流の値である。
【０２８３】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１の下で、データビットおよびチェックビットからなるビットシーケンスが記憶され、データビットおよびチェックビットは、誤りがない場合、誤り訂正符号Ｃｃｏｒの符号語を形成する。
【０２８４】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１の下で、データビットおよびチェックビットからなるビットシーケンスが記憶され、データビットおよびチェックビット、ならびにアドレスａ１，１のアドレスビットまたはアドレスａ１，１のアドレスビットから導出されるビットは、誤りがない場合、誤り訂正符号Ｃｃｏｒの符号語を形成する。
【０２８５】
さらなる例示的実施形態は、以下のことを定義する：メモリが、アドレスａ１，１に加えて、第１の部分集合α１＝｛ａ１，２，…，ａ１，ｍ｝を形成するさらなるアドレスａ１，２、…、ａ１，ｍ（ｍ＞１）を有し、アドレスａ２，１に加えて、第２の部分集合α２＝｛ａ２，２，…，ａ２，ｍ｝を形成するさらなるアドレスａ２，２、…、ａ２，ｍ（ｍ＞１）を有し、ここで、ｉ∈｛１，…，ｍ｝での第１のアドレスａ１，ｉの下で時点ｔで第１のメモリセルに記憶されている誤りのないビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率が、ｊ∈｛１，…，Ｍ｝でのアドレスａ２，ｊの下で時点ｔで第２のメモリセルに記憶されている正しいビットシーケンスが時点ｔ＋Δｔで誤りを有する推定確率よりも高く、ここで、Δｔ＞０であり、アドレスａ１，ｉおよびアドレスａ２，ｊの下で記憶されているビットシーケンスは、誤りがない場合には、それぞれ誤り訂正符号Ｃｃｏｒの符号語のビットであり、ここで、アドレスａ１，ｉの下での第１のメモリセルが、連続する時点でアドレスａ２，１の下でのメモリセルよりも頻繁に読み出され、読み出されたビットシーケンスが誤りを有しており、誤りのあるビットシーケンスを符号Ｃｃｏｒを使用して訂正することができるときには、読み出されたビットシーケンスから決定される、符号Ｃｃｏｒを使用して訂正されたビットシーケンスで上書きされる。
【０２８６】
さらなる例示的実施形態は、以下のことを定義する：部分集合α１がスタートアップ時に決定される。
【０２８７】
さらなる例示的実施形態は、以下のことを定義する：第１の部分集合α１または第２の部分集合α２が揮発性メモリに記憶される。
【０２８８】
さらなる例示的実施形態は、以下のことを定義する：第１の部分集合α１または第２の部分集合α２が不揮発性メモリに記憶される。
【０２８９】
さらなる例示的実施形態は、以下のことを定義する：部分集合α１が、アドレスａ１，１の下で記憶されているバイナリシーケンスが記憶されるのと同じメモリに記憶される。
【０２９０】
さらなる例示的実施形態は、以下のことを定義する：部分集合α１が、アドレスａ１，１の下で記憶されているバイナリシーケンスが記憶されていないメモリに記憶される。
【０２９１】
さらなる例示的実施形態は、以下のことを定義する：集合α１が、メモリに記憶されているバイナリシーケンスの読出し時に出現する誤り、またはメモリへの書込み時もしくはメモリからの読出し時に決定される物理的パラメータの値に依存して変えられる。
【０２９２】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１、…、ａ１，ｍの下で記憶されているバイナリシーケンスが、ｔ≧１でのｔビット誤り検出／訂正符号のビットであり、ここで、アドレスａ（ここでアドレスａは集合α１の要素でない）の下で記憶されているバイナリシーケンスの読出し時に所定のτ（１≦τ≦ｔ）に関してτビット誤りが検出されるとき、集合α１にアドレスａが追加される。
【０２９３】
さらなる例示的実施形態は、以下のことを定義する：修復法で別のアドレスによって置き換えられるアドレスａが存在する。
【０２９４】
さらなる例示的実施形態は、以下のことを定義する：アドレスの集合αｐｅｒが存在し、それにより、集合αｐｅｒからのアドレスの下で記憶されているメモリセルが、永久的な誤りを有するメモリセルを推定確率ｐｐｅｒで有し、ｐｐｅｒ≧ＳＷｐｅｒであり、ここで、ＳＷｐｅｒは、０＜ＳＷｐｅｒ≦１での閾値であり、アドレスａ∈αｐｅｒによってアドレス指定されるメモリセルであって、それに関して誤りが検出されるメモリセルが、ビット毎に反転されたバイナリシーケンスを書き込まれる。
【０２９５】
さらなる例示的実施形態は、以下のことを定義する：アドレスのＳ回目の読出し時に誤りが出現せず、１＜Ｓであるときに、集合α１のアドレスａ１，ｊが集合α１から除外される。
【０２９６】
さらなる例示的実施形態は、以下のことを定義する：アドレスａ１，１のビットがメモリセルに冗長に記憶され、それにより、少なくとも１ビット誤りを、アドレスａ１，１のアドレスビットにおいて検出および／または訂正することができる。
【０２９７】
上述した例示的実施形態は、より高い誤り確率を有する信頼できないメモリセルをより頻繁に読み出すことを可能にする。同時に、いくつかの例示的実施形態は、より高い誤り確率を有さないメモリセルはより頻繁には読み出されないので、訂正メカニズムの効率を高く保ち続けることを可能にする。第１のメモリセル内の誤りのあるビットシーケンスの存在に関する確率が、第２のメモリセル内の誤りのあるビットシーケンスの存在に関する確率よりも高いとき、第１のメモリセルの連続する時点での読出しの頻度は、第２のメモリセルの連続する時点での読出しの頻度よりも高いことがある。
【０２９８】
上述の例示的実施形態は、比較的高い確率で誤りを有し、かつ例えば低い熱的安定性を有するメモリセルをアドレス指定するＭＲＡＭのアドレスの部分集合が決定されることを可能にし、ここで、このアドレスの下で記憶されている誤りのないビットシーケンスは、誤り訂正符号Ｃｃｏｒの符号語のビットである。読み出されたビットにおいて、符号Ｃｃｏｒによって訂正可能な誤りが出現しているときにのみ誤りが訂正され、訂正されたビットは、例えば、ビットが読み出されたのと同じアドレスの下でＭＲＡＭに記憶される。
【０２９９】
ここで、比較的高い確率で誤りを有するメモリセルが、比較的高い確率で誤りを有さない別のメモリセルよりも頻繁に、誤り訂正の目的でアドレス指定されることが可能である。
【０３００】
誤りに関する比較的高い確率を有するメモリセルの数が比較的小さく、また、アドレス指定されたメモリセルで実際に誤りが出現したときにのみ、訂正されたデータの書戻しが行われることによって、訂正に関するコストが減少される。
【０３０１】
ここで、メモリセルで誤りが出現する確率が、書込みまたは読出しの際の物理的パラメータの測定に基づいて推定または予測されることが可能である。そのようなパラメータは、例えば、書込み電流、書込み時間、または読出し電流でよい。ここで、この確率に関する具体的な数値を予測する必要はない。大抵は、対象のメモリセルが低い確率で誤りを有するか、それとも高い確率で誤りを有するかを予測すれば十分である。
【０３０２】
しかしまた、出現する誤りの統計的な観察に基づいて確率を推定することも可能であり、または物理的パラメータの測定に基づいて推定された確率を、誤りの観察に基づいて修正することも可能である。以下、推定または予測される確率について述べる。ここでは、この確率に関する推定される数値、または確率が比較的小さい値もしくは比較的大きい値を取るという言明でもよい。
【０３０３】
例えば、アドレスの選択は、例えばメモリ制御装置によって、誤りを有する確率が高い少なくとも１つのメモリセルがアドレスの下でアドレス指定されることが確かめられることによって行うことができる。しかしまた、アドレスの選択は、誤りを有する確率が高い少なくとも２つ、または少なくとも３つ、または一般に複数のメモリセルがアドレスによってアドレス指定されているかどうかを確かめることによって行うこともできる。
【０３０４】
いくつかの態様をデバイスに関連して述べてきたが、これらの態様は、対応する方法の説明でもあり、したがって、デバイスのブロックまたは構成要素を、対応する方法ステップまたは方法ステップの特徴とみなすこともできることを理解されたい。それと同様に、方法ステップに関連して、または方法ステップとして述べた態様は、対応するデバイスの対応するブロックまたは詳細もしくは特徴の説明でもある。
【０３０５】
所定の実施要件に応じて、本発明の例示的実施形態は、完全にまたは一部、ハードウェアまたはソフトウェアとして実装することができる。この実装は、デジタル記憶媒体、例えばフロッピーディスク、ＤＶＤ、ブルーレイディスク、ＣＤ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、もしくはＦＬＡＳＨメモリ、ハードディスク、または他の磁気もしくは光メモリを使用して行うことができ、そのデジタル記憶媒体に、電子的に可読の制御信号が記憶されており、これらの制御信号は、それぞれの方法が実施されるようにプログラム可能なコンピュータシステムと協働することができる、または協働する。したがって、デジタルメモリ媒体は、コンピュータ可読でよい。したがって、本発明によるいくつかの例示的実施形態は、本明細書で述べた方法の１つが実施されるようにプログラム可能なコンピュータシステムと相互作用することができる電子的に可読の制御信号を有するデータキャリアを含む。
【０３０６】
一般に、本発明の例示的実施形態は、コンピュータ上でコンピュータプログラム製品が実行されるときに方法の１つを実施するのに有効なプログラムコードを有するコンピュータプログラム製品として実装することができる。プログラムコードは、例えば、機械可読キャリアに記憶することもできる。
【０３０７】
別の例示的実施形態は、本明細書で述べた方法の１つを実施するためのコンピュータプログラムを含み、ここで、コンピュータプログラムは、機械可読キャリアに記憶されている。
【０３０８】
すなわち、本発明による方法の例示的実施形態は、したがって、コンピュータプログラムがコンピュータ上で実行されるときに、本明細書で述べた方法の１つを実施するためのプログラムコードを有するコンピュータプログラムである。したがって、本発明による方法のさらなる例示的実施形態は、本明細書で述べた方法の１つを実施するためのコンピュータプログラムが記録されているデータキャリア（またはデジタル記憶媒体もしくはコンピュータ可読媒体）である。
【０３０９】
したがって、本発明による方法のさらなる例示的実施形態は、本明細書で述べた方法の１つを実施するためのコンピュータプログラムを表現するデータストリームまたは信号のシーケンスである。データストリームまたは信号のシーケンスは、例えば、データ通信接続、例えばインターネットを介して転送されるように構成することができる。
【０３１０】
さらなる例示的実施形態は、本明細書で述べた方法の１つを実施するように構成または適合されている処理装置、例えばコンピュータまたはプログラム可能な論理構成要素を含む。
【０３１１】
さらなる例示的実施形態は、本明細書で述べる方法の１つを実施するためのコンピュータプログラムがインストールされているコンピュータを含む。
【０３１２】
いくつかの例示的実施形態では、プログラム可能な論理構成要素（例えばフィールドプログラマブルゲートアレイ（ＦＰＧＡ））を、本明細書で述べる方法のいくつかまたは全ての機能を実施するために使用することができる。いくつかの例示的実施形態では、フィールドプログラマブルゲートアレイは、本明細書で述べた方法の１つを実施するためにマイクロプロセッサと協働することができる。一般に、いくつかの例示的実施形態における方法は、任意のハードウェアデバイスで実施される。これは、汎用性のあるハードウェア、例えば中央処理装置（ＣＰＵ）でよく、または方法に専用のハードウェア、例えばＡＳＩＣでもよい。
【０３１３】
上記の例示的実施形態は、本発明の原理の例示にすぎない。本明細書で述べた構成および詳細の修正および変形が当業者には明らかであることを理解されたい。したがって、本発明は、添付の特許請求の範囲の保護範囲によってのみ限定され、例示的実施形態の記述および説明に基づいて本明細書で提示した特定の詳細によっては限定されないことが意図されている。
【符号の説明】
【０３１４】
１０  メモリデバイス
１２  メモリ
１４  第１のメモリセル
１５  ビット
１６  第２のメモリセル
１７ａ  第１のビットシーケンス
１７ｂ  第２のビットシーケンス
１８  メモリ制御装置
２２  信頼性情報
２４  データライン
３２  全体集合
３４  第１の部分集合
３６  第２の部分集合
３８’  第３のメモリセル
４２  符号語
５２  ペイロード
５６  符号器
５８  データ出力部
６２  データ入力部
６４  アドレス入力部
６６  アドレス入力部
１０２  アドレス値メモリ
Ｐ  確率
ΔＥ  熱的安定性
ａ１，１  第１のアドレス
ａ２，１  第２のアドレス
ａ３，１  第３のアドレス
Ｃｃｏｒ  誤り訂正符号
ｗ  符号語
α１  第１の部分集合
α２  第２の部分集合
αｐｅｒ  第３の部分集合
【図１】
0006339137.tif 000026
【図２】
0006339137.tif 000027
【図３】
0006339137.tif 000028
【図４ａ】
0006339137.tif 000029
【図４ｂ】
0006339137.tif 000030
【図５】
0006339137.tif 000031
【図６】
0006339137.tif 000032
【図７】
0006339137.tif 000033
【図８】
0006339137.tif 000034
【図９】
0006339137.tif 000035
【図１０】
0006339137.tif 000036
【図１１】
0006339137.tif 000037
【図１２】
0006339137.tif 000038
【図１３】
0006339137.tif 000039
【図１４】
0006339137.tif 000040
【図１５】
0006339137.tif 000041
【図１６】
0006339137.tif 000042
【図１７】
0006339137.tif 000043
【図１８】
0006339137.tif 000044
【図１９】
0006339137.tif 000045
【図２０】
0006339137.tif 000046
【図２１】
0006339137.tif 000047
【図２２】
0006339137.tif 000048
【図２３】
0006339137.tif 000049
【図２４】
0006339137.tif 000050
【図２５】
0006339137.tif 000051