(57)【要約】【課題】  不合格のメモリセルを救済しつつ性能の劣化を抑制する抵抗変化型メモリを提供する。【解決手段】  本発明の抵抗変化型メモリ１００は、複数のメモリセルを含むメモリセルアレイ１１０と、行選択回路１２０と、センスアンプおよび書込みドライバ・読出しバイアス回路を含む列選択回路１３０と、コントローラ１４０と、ＥＣＣ回路１５０と、書込み動作時のエラービットの有無を格納するエラービットフラグレジスタ１６０と、エラービットのアドレスを格納するエラービットアドレスレジスタ１７０とを含む。コントローラ１４０は、予め決められた事象の発生時に、エラービットの救済を行う。【選択図】  図３
2019212356.tif 000002
【特許請求の範囲】
【請求項１】
抵抗変化型メモリであって、
複数のメモリセルを含むメモリセルアレイと、
アドレス情報に基づき選択されたメモリセルにデータを書込む書込み手段と、
選択されたメモリセルに書込まれたデータの合否を判定する判定手段と、
不合格と判定されたメモリセルのアドレスを含む不合格情報を保持する保持手段と、
予め決められた事象が発生したときに、前記不合格情報に基づきメモリセルのデータの書換えによる救済を行う救済手段と、
を有する抵抗変化型メモリ。
【請求項２】
前記救済手段は、セットの書込みのときに不合格と判定された場合には、メモリセルをリセットした後にセットする、請求項１に記載の抵抗変化型メモリ。
【請求項３】
前記救済手段は、リセットの書込みのときに不合格と判定された場合には、メモリセルをセットした後にリセットする、請求項１に記載の抵抗変化型メモリ。
【請求項４】
前記救済手段は、データの書換え後に不合格の有無を判定することを含み、書換え後に合格と判定された場合には、前記保持手段に保持された不合格情報をクリアする、請求項１に記載の抵抗変化型メモリ。
【請求項５】
前記救済手段は、データの書換え回数が一定以上であっても不合格の場合には、メモリセルを救済不可能とし、冗長メモリセルに置換する、請求項１に記載の抵抗変化型メモリ。
【請求項６】
前記予め決められた事象は読出し動作である、請求項１に記載の抵抗変化型メモリ。
【請求項７】
前記予め決められた事象は書込み動作である、請求項１に記載の抵抗変化型メモリ。
【請求項８】
前記予め決められた事象は電源投入時である、請求項１に記載の抵抗変化型メモリ。
【請求項９】
前記救済手段は、前記予め決められた事象のバックグランドで動作される、請求項６または７に記載の抵抗変化型メモリ。
【請求項１０】
抵抗変化型メモリはさらに、入力データおよび読出しデータについての誤り訂正・検出を行うための誤り訂正・検出回路を含む、請求項１ないし９いずれか１つに記載の抵抗変化型メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に関し、特に、可変抵抗素子を利用した抵抗変化型ランダムアクセスメモリに関する。
【背景技術】
【０００２】
抵抗変化型メモリは、可変抵抗素子にパルス電圧を印加し、可変抵抗素子を可逆的かつ不揮発的に高抵抗状態または低抵抗状態にすることでデータを記憶する。抵抗変化型メモリは、低電圧でデータの書き換えをできるため消費電力が小さく、また読み出し時間が高速であるという利点がある（特許文献１、２等）。
【０００３】
図１（Ａ）に、３行×３列のメモリアレイ１０を例示する。１つメモリセルＭＣは、１つの可変抵抗素子とこれに直列に接続された１つのアクセス用トランジスタとから構成される、いわゆる１Ｔ×１Ｒである。可変抵抗素子は、例えば、酸化ハフニウム（ＨｆＯｘ）等の遷移金属の薄膜酸化物から構成され、書込みパルス電圧の極性または大きさを変えることによって、可変抵抗素子を低抵抗状態または高抵抗状態にする。通常、低抵抗状態に書込みすることをセット（ＳＥＴ）、高抵抗状態に書込みすることをリセット（ＲＥＳＥＴ）という。
【０００４】
図１（Ｂ）に、セット、リセット時のバイアス電圧の一例を示す。メモリセルＭＣをアクセスする場合、行デコーダ２０によりワード線ＷＬ（ｎ）を介してメモリセルＭＣのアクセス用トランジスタをオンさせ、列デコーダ３０によりビット線ＢＬ（ｎ）、ソース線（ｎ）を選択し、セットまたはリセットに応じた書込みパルス電圧が印加される。読出し動作の場合には、可変抵抗素子のセットまたはリセットに応じた電圧または電流が選択ビット線（ｎ）および選択ソース線（ｎ）に表れ、これがセンス回路によって検出される。
【０００５】
また、酸化ハフニウム（ＨｆＯｘ）等の金属酸化物の薄膜を可変抵抗素子の材料に用いる場合、初期設定として金属酸化物をフォーミングしなければならない。通常、フォーミングは、可変抵抗素子を書込むときよりも幾分大きな電圧を印加することにより可変抵抗素子を、例えば低抵抗状態（セット）にする（図１（Ｂ）を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−６４２８６号公報
【特許文献２】特開２００８−４１７０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
図２は、従来の抵抗変化型メモリの概略構成を示すブロック図である。抵抗変化型メモリは、コントローラ５０、メインメモリ部６０、サブメモリ部７０、ＥＣＣ回路８０等を含んで構成される。コントローラ５０は、外部からコマンドやアドレス等を受け取り、読出し動作や書込み動作（セット／リセット）を制御する。メインメモリ部６０およびサブメモリ部７０はともに、可変抵抗素子を含む複数のメモリセルアレイを備え、メインメモリ部６０は、書込み動作時に外部から入力されたデータを記憶し、サブメモリ部７０は、ＥＣＣ回路８０により生成されたコード情報、すなわち誤り検出・訂正のための誤り訂正符号を記憶する。
【０００８】
ＥＣＣ回路８０は、入力データをメインメモリ部６０に書込むとき、入力データについてのＥＣＣ演算を行い、誤り訂正符号を生成する。誤り訂正符号は、入力データが書込まれるときに、入力データと関連付けしてサブメモリ部７０に書込まれる。また、メインメモリ部６０からデータが読み出されたとき、サブメモリ部７０から誤り訂正符号が読み出され、ＥＣＣ回路８０は、誤り訂正符号に従いメインメモリ部６０から読み出されたデータの誤り検出・訂正を行い、その結果が読出しデータとして外部に出力される。
【０００９】
可変抵抗型メモリでは、セット／リセットの書込み回数（サイクル数）が増加すると、可変抵抗素子の状態が不安定になることが知られている。つまり、セットの書込みをしても、可変抵抗素子が低抵抗にならなかったり、反対に、リセットの書込みをしても、可変抵抗素子が高抵抗にならなかったりすることがある。このような不安定性の対策として、可変抵抗型メモリでは、図２に示すようにＥＣＣ回路８０を搭載し、エラービットが発生した場合には、ＥＣＣ回路８０により正確なデータを保証している。
【００１０】
ＥＣＣ回路８０の処理能力を大きくし、つまり訂正可能なビット数を多くすれば、その分だけ多数のエラービットを救済することができるが、その反面、ＥＣＣ回路による占有面積が大きくなり、かつ、ＥＣＣ回路による演算時間等の影響により抵抗変化型メモリの性能（パフォーマンス）が低下してしまう。それ故、ＥＣＣ回路による訂正ビット数はできるだけ少ないことが望ましく、究極的にはＥＣＣ回路を搭載しないことが望ましい。
【００１１】
本発明は、上記従来の課題を解決し、不合格のメモリセルを救済しつつ性能の劣化を抑制する抵抗変化型メモリを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る抵抗変化型メモリは、複数のメモリセルを含むメモリセルアレイと、アドレス情報に基づき選択されたメモリセルにデータを書込む書込み手段と、選択されたメモリセルに書込まれたデータの合否を判定する判定手段と、不合格と判定されたメモリセルのアドレスを含む不合格情報を保持する保持手段と、予め決められた事象が発生したときに、前記不合格情報に基づきメモリセルのデータの書換えによる救済を行う救済手段と、を有する。
【００１３】
ある実施態様では、前記救済手段は、セットの書込みのときに不合格と判定された場合には、メモリセルをリセットした後にセットする。ある実施態様では、前記救済手段は、リセットの書込みのときに不合格と判定された場合には、メモリセルをセットした後にリセットする。ある実施態様では、前記救済手段は、データの書換え後に不合格の有無を判定することを含み、書換え後に合格と判定された場合には、前記保持手段に保持された不合格情報をクリアする。ある実施態様では、前記救済手段は、データの書換え回数が一定以上であっても不合格の場合には、メモリセルを救済不可能とし、冗長メモリセルに置換する。ある実施態様では、前記予め決められた事象は読出し動作、または書込み動作、または電源投入時である。ある実施態様では、前記救済手段は、前記予め決められた事象のバックグランドで動作される。ある実施態様では、抵抗変化型メモリはさらに、入力データおよび読出しデータについての誤り訂正・検出を行うための誤り訂正・検出回路を含む。
【発明の効果】
【００１４】
本発明によれば、ある事象が発生したときに不合格と判定されたメモリセルのデータの書換えを行うようにしたので、不合格と判定されたメモリセルの救済を図ることが可能になる。また、不合格と判定されたメモリセルの救済を図ることで、誤り訂正回路による訂正ビット数が少なくて済み、誤り訂正回路による抵抗変化型メモリの性能の低下を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】図１（Ａ）は、従来の抵抗変化型ランダムアクセスメモリのアレイ構成を示す図である。図１（Ｂ）は、動作時のバイアス条件を示す表である。
【図２】従来の抵抗変化型メモリの概略構成を示すブロック図である。
【図３】本発明の実施例に係る抵抗変化型ランダムアクセスメモリの概略構成を示すブロック図である。
【図４】本発明の実施例に係るコマンド処理シーケンスの一例を示す図である。
【図５】抵抗変化型メモリの抵抗状態と書込みサイクル数との関係を示すグラフ
【図６】本発明の実施例に係るエラービット救済機能を備えた書込み動作を説明するフローチャートである。
【図７】エラービットフラグレジスタの格納例を示す図である。
【図８】エラービットアドレスレジスタの格納例を示す図である。
【図９】本発明の実施例に係るエラービットの救済動作を説明するフローチャートである。
【発明を実施するための形態】
【００１６】
次に、本発明の実施の形態について図面を参照して詳細に説明する。本発明では、半導体記憶装置として抵抗可変型メモリを例示する。抵抗変化型メモリは、１つのチップから構成されるものであってもよいし、１つのチップ内に埋め込まれるものであってもよい。
【実施例】
【００１７】
図３は、本発明の実施例に係る抵抗変化型ランダムアクセスメモリの概略構成を示すブロック図である。本実施例の抵抗変化型メモリ１００は、メモリセルが行列状に複数配列されたメモリアレイ１１０と、行アドレスＡｘに基づきワード線ＷＬの選択を行う行選択回路１２０と、列アドレスＡｙに基づきビット線ＢＬおよびソース線ＳＬを選択し、動作に応じたバイアス電圧を印加する列選択回路１３０と、入出力バッファを介して外部から受け取ったコマンド、アドレス、データ等に基づき各部を制御するコントローラ１４０と、ＥＣＣ回路１５０と、書込み動作時にエラー判定されたメモリセルの有無を表すフラグデータを記憶するエラービットフラグレジスタ１６０と、エラービットのアドレスを記憶するエラービットアドレスレジスタ１７０とを含んで構成される。
【００１８】
メモリアレイ１１０は、外部から入力されたデータを記憶するメインメモリ部１１０Ａと、ＥＣＣ回路１５０によって生成された入力データの誤り訂正符号を記憶するサブメモリ部１１０Ｂとを含む。１つのメモリセルは、図１に示したように、１つの可変抵抗素子と１つのアクセス用トランジスタとを含む１Ｔ×１Ｒの構成であってもよいし、一対のビット線ＢＬ、／ＢＬとの間に直列に接続された一対のアクセス用トランジスタと一対の可変抵抗素子とを含み、一対の可変抵抗素子に相補的なデータを記憶する２Ｔ×２Ｒの構成であってもよい。
【００１９】
列選択回路１３０は、列アドレスＡｙに基づきビット線ＢＬおよびソースＳＬを選択する列デコーダに加えて、ビット線ＢＬおよびソース線ＢＬを介してメモリセルから読み出されたデータをセンスするセンスアンプや、ビット線ＢＬおよびソース線ＳＬを介して読出し動作時のバイアス電圧を印加したり、書込み動作時にセットまたはリセットに応じた書込みパルス電圧を印加する書込みドライバ・読出しバイアス回路を含む。センスアンプは、内部データバスを介してＥＣＣ回路１５０に接続され、センスアンプとＥＣＣ回路１５０との間で双方向のデータ転送が可能である。センスアンプは、１Ｔ×１Ｒの構成の場合、選択された可変抵抗素子のビット線ＢＬとソース線ＳＬとの間に流れる電流または電圧を基準値と比較してデータ「０」、「１」を判定する。２Ｔ×２Ｒの場合には、センスアンプは、一対のビット線ＢＬ、／ＢＬ間の差信号を利用してデータ「０」、「１」を判定する。
【００２０】
ＥＣＣ回路１５０は、例えば、コマンドまたは出荷時の設定等によりイネーブルまたはディスエーブルにすることが可能である。オンチップＥＣＣ機能がイネーブルされた場合、書込み動作時に外部から入力された書込みデータがセンスアンプにロードされ、センスアンプからＥＣＣ回路１５０に書込みデータが転送され、ＥＣＣ回路１５０は、転送された書込みデータを演算し、誤り訂正符号を生成する。ＥＣＣ演算は、例えば、パリティチェック、ハミングコードやリード・ソロモンなどの公知の手法によって行われ、入力されたｋビットまたはｋバイトのデータをｐ＝ｋ＋ｑに変換する。「ｑ」は、データの誤り検出訂正に必要な誤り訂正符号またはパリティビットである。ＥＣＣ回路１５０により生成された誤り訂正符号は、センスアンプに転送され、サブメモリ部１１０に書込まれる。
【００２１】
読出し動作時、メモリアレイ１１０から読み出されたデータがセンスアンプに保持され、センスアンプは、保持したデータをＥＣＣ回路１５０に転送する。ＥＣＣ回路１５０は、誤り訂正符号に基づき読出しデータの誤りの検出を行い、誤りが検出された場合には訂正したデータをセンスアンプに書き戻し、最終的にセンスアンプに保持されたデータが外部に出力される。
【００２２】
エラービットフラグレジスタ１６０は、書込み動作時のベリファイにおいてフェイル（不合格）の判定が成されたとき、エラービットの発生を表すフラグを格納する。例えば、エラービットが生じた場合には、フラグ「１」がセットされる。エラービットフラグレジスタ１６０は、救済可能とするエラービット数に応じたビット数のフラグを格納する。救済可能とするエラービット数は、任意に設定することができ、この数を大きくすることで、ＥＣＣ回路１５０による訂正可能なビット数を小さくすることが可能である。さらにエラービットフラグレジスタ１６０は、エラービットがセット時の書込みで発生したものか、またはリセット時の書込みで発生したものかの識別を含むことができる。
【００２３】
エラービットアドレスレジスタ１７０は、エラービットのフラグがセットされた場合、当該エラービットのアドレスを格納する。複数のエラービットのフラグがセットされた場合には、複数のエラービットのアドレスがそれぞれ格納される。
【００２４】
コントローラ１４０は、ホスト装置等の外部からコマンドを受け取り、当該コマンドに基づき読出し動作や書込み動作の制御を行う。ある実施態様では、コントローラ１５０は、中央処理装置（ＣＰＵ）、および読出し動作や書込み動作を制御するためのプログラムを格納したＲＯＭ／ＲＡＭ等を含み、中央処理装置は、外部からのコマンドに応じてＲＯＭに格納されたプログラムを実行する。
【００２５】
図４に、コントローラ１４０によるコマンド処理シーケンスの一例を示す。コントローラ１４０は、入出力バッファ等を介して外部からのコマンド等を受け取ると（Ｓ１００）、当該コマンドを解読し（Ｓ１１０）、書込みコマンドであれば、書込みシーケンスを実行し（Ｓ１２０）、読出しコマンドであれば、読出しシーケンスを実行する（Ｓ１３０）。
【００２６】
ここで、抵抗変化型メモリでは、セット／リセットの書込みサイクルが増加すると、可変抵抗素子が不安定な振る舞いをすることが知られている。例えば、可変抵抗素子に低抵抗状態を書込んでも可変抵抗素子が低抵抗状態にならず、しかし、そのようなフェイルした可変抵抗素子のデータの書換えをすると、フェイルした可変抵抗素子が元の安定した状態に回復することがある。
【００２７】
図５（ａ）は、セット／リセットの書込みサイクル数と可変抵抗素子の状態との関係を表すグラフであり、白い丸は、セットに対応し、黒い丸は、リセットに対応する。図５（ｂ）は、約１．７×１０５のサイクル近傍の拡大図である。約１．０×１０５のサイクル近傍で、セットの書込みであるにもかかわらず、低抵抗状態から高抵抗状態なるものが表れ、つまり、可変抵抗素子に不安定性があることがわかる。このような不安定な振る舞いをする可変抵抗素子であっても、書換え（セットでフェイルした可変抵抗素子であれば、リセットをしてからセット、リセットでフェイルした可変抵抗素子であれば、セットをしてからリセット）をすると、元の安定した状態に回復するものもがある。なお、フェイルした可変抵抗素子をエラービットと称することがある。
【００２８】
もし、フェイルしたメモリセルの数、すなわちエラービット数がＥＣＣ回路１５０により訂正可能な最大ビット数を越えると、全てのデータを訂正することができなくなる。また、エラービット数は、エンデュランスサイクルによって増加する傾向にある。それ故、エラービットを救済できるのであれば、出来るだけ早い段階で救済することが望ましい。
【００２９】
そのような理由から、本実施例の抵抗変化型メモリ１００は、エラービットを救済する機能を搭載している。具体的には、コントローラ１４０は、エラービットを救済するためのプログラムを実行する。
【００３０】
図６は、本実施例に係る抵抗変化型メモリのエラービット救済機能を備えた書込み動作シーケンスを説明するフローチャートである。コントローラ１４０は、外部から入力されたコマンド等に応答して書込みシーケンスを開始し（Ｓ２００）、ＥＣＣ回路１５０は、入力されたデータについてＥＣＣ演算を行い、誤り訂正符号を生成する（Ｓ２１０）。行選択回路１２０および列選択回路１３０は、入力されたアドレスに従いメインメモリ部１１０Ａおよびサブアレイ部１１０Ｂのメモリセルを選択し、書込みドライバ・読出しバイアス回路は、センスアンプに保持されたデータに基づき選択メモリセルにセットまたはリセットの書込みを行う（Ｓ２２０）。書込みドライバ・読出しバイアス回路は、ビット単位で選択されたメモリセルにデータの書込みを行い、センスアンプは、ビット単位でデータを保持する。
【００３１】
データの書込みが終了すると、次に、コントローラ１４０は、書込みドライバ・読出しバイアス回路を介して、選択メモリセルのベリファイ読出しを行い（Ｓ２３０）、書込みデータが正しく書込まれたか否かを判定する。コントローラ１４０は、選択メモリから読み出されたデータと入力データとを比較し、一致していれば合格（パス）と判定し、不一致であれば不合格（フェイル）と判定する。フェイルと判定した場合には、コントローラ１４０は、エラー情報として、当該選択メモリセルがエラービットであることを表すフラグをエラービットフラグレジスタ１６０にセットし、かつエラービットアドレスレジスタ１７０に当該選択メモリセルのアドレスを格納する（Ｓ２５０）。
【００３２】
図７に、エラービットフラグレジスタの格納例を示す。本例では、救済可能とするエラービット数ｎビットであり、それ故、エラービットフラグレジスタ１６０は、フラグ１〜フラグｎを有する。フラグ「１」は、エラーの発生を表し、フラグ「０」は、エラー無しを表す。また、エラービットフラグレジスタ１６０は、書込みの識別を表すフラグを備えており、フラグ「１」は、セットの書込み、フラグ「０」は、リセットの書込みを表す。図７の例では、フラグ１は、ある選択メモリセルのリセット時にエラービットが発生していることを表し、フラグ２は、ある選択メモリセルのセット時にエラービットが発生していること表している。各フラグ１〜ｎは、２ビットから構成されるが、さらに必要な属性データを格納する場合には、さらにフラグビットが追加される。
【００３３】
図８に、エラービットアドレスレジスタの格納例を示す。同図に示すように、エラービットの発生を示すフラグがセットされた場合には、そのエラービットアドレスが格納される。図７の例では、フラグ１、フラグ２が「１」にセットされるので、それに関連して、エラービットのアドレスが格納される。
【００３４】
他方、ベリファイで合格と判定された場合には、エラー情報は記憶されない。こうして、入力されたデータの全ビットについての書込みが終了するまで（Ｓ２６０）、上記ステップが繰り返される。
【００３５】
次に、本実施例のエラービットの救済動作について図９のフローチャートを参照して説明する。エラービットの救済は、抵抗変化型メモリの任意の動作時に行うことができ、本実施例では、予め決められた事象の発生時（例えば、読出し動作時、書込み動作時、電源電圧の投入時など）にエラービットの救済を行うものとする。
【００３６】
コントローラ１４０は、予め決められた事象が発生すると（Ｓ３００）、エラービットの救済を開始する。予め決められた事象の発生が、例えば読出し動作であれば、コントローラ１４０は、外部から読出しコマンドを受け取ったときに救済動作を行う。救済動作は、予め決められた事象と競合しないように実施され、例えば、読出し動作の終了後に救済動作が行われ、あるいは、読出し動作と並行してそのバックグランドで救済動作が行われる。
【００３７】
救済動作が開始されると、コントローラ１４０は、エラービットフラグレジスタ１６０を参照し、現在、エラービットの発生が存在するか否かを判定する（Ｓ３１０）。図７の例で言えば、エラービットの発生を表すフラグ「１」の有無を確認する。エラービットの発生が存在する場合には、エラービットアドレスレジスタ１７０から、対応するエラービットのアドレスを読出す（Ｓ３２０）。次に、コントローラ１４０は、エラービットのアドレスに従い、行選択回路１２０および列選択回路１３０を介してエラービットを選択させ、書込みドライバ・読出しバイアス回路を介してエラービットのデータの書換えを実行させる（Ｓ３３０）。コントローラ１４０は、図７の書込み識別に基づき、セット時のエラービットであれば、エラービットをリセットした後にセットさせ、あるいはリセット時のエラービットであれば、エラービットをセットした後にリセットさせる。
【００３８】
次に、コントローラ１４０は、書込みドライバ・読出しバイアス回路を介してエラービットのベリファイ読出しを行う（Ｓ３４０）。コントローラ１４０は、エラービットから読み出されたデータと期待値とを比較し、両者が一致すれば、パスと判定し、不一致であればフェイルと判定する（Ｓ３５０）。パスと判定された場合には、エラービットが、データの書換えにより元の安定動作が可能なメモリセルに回復したので、エラービットフラグレジスタ１６０およびエラービットアドレスレジスタ１７０からエラー情報がクリアされる（Ｓ３６０）。つまり、図７の例で言えば、エラーの有無を表すフラグが「０」にクリアされ、識別情報が「０」にクリアされ、図８のエラービットアドレスが「０」にクリアされる。他方、フェイル判定であれば、エラービットは依然としてエラー状態にあるので、エラー情報はそのままレジスタ１６０および１７０に保持される。
【００３９】
コントローラ１４０は、救済対象の残りのエラービットが存在する場合には（Ｓ３７０）、上記ステップＳ３２０〜Ｓ３６０を繰り返し、存在しない場合には、処理を終了する。
【００４０】
このように本実施例によれば、書込み動作時にエラービットに関するエラー情報を保持しておき、その後の任意の動作時に、エラー情報を参照してエラービットのデータの書換えを行うことで、出来るだけ早いタイミングでエラービットの救済またはキュアを行うことができる。救済可能なエラービット数が増加すれば、それに応じて、ＥＣＣ回路１５０による最大訂正可能なビット数を削減することが期待でき、その結果、ＥＣＣ演算に伴いパフォーマンスの低下を抑制し、さらにＥＣＣ回路の占有面積を削減することでメモリチップの高集積化を図ることができる。
【００４１】
次に、本発明の他の実施例について説明する。上記実施例では、予め決められた事象が発生したときに、エラービットの救済を行うようにしたが、救済を何度行ってもエラービットが救済されないこともある。つまり、このようなエラービットは、エンデュランス特性が完全に破壊された恒久エラービットである。
【００４２】
当該他の実施例では、抵抗変化型メモリ１００は、エラービットの救済回数を保持するカウンタを備える。コントローラ１４０は、カウンタの値が予め決められた回数に到達し、かつ救済時にフェイルと判定されたエラービットについては、レジスタ１６０、１７０のエラー情報をクリアするとともに、当該エラービットを冗長メモリセル（例えば、メモリアレイ１１０に予め用意しておく）に置換するようにしてもよい。
【００４３】
さらに本実施例の変形例として、メモリアレイ１１０が、恒久エラービットを置換するための冗長メモリを備えている場合には、オンチップのＥＣＣ回路を完全に削減するようにしてもよい。つまり、エラービットの救済を行いつつ、一定回数の救済によって救済されないエラービットは冗長メモリに置換することで、ＥＣＣ回路を完全になくすようにしてもよい。
【００４４】
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４５】
１００：抵抗変化型メモリ
１１０：メモリアレイ
１２０：行選択回路
１３０：列選択回路
１４０：コントローラ
１５０：ＥＣＣ回路
１６０：エラービットフラグレジスタ
１７０：エラービットアドレスレジスタ
【図１】
2019212356.tif 000003
【図２】
2019212356.tif 000004
【図３】
2019212356.tif 000005
【図４】
2019212356.tif 000006
【図５】
2019212356.tif 000007
【図６】
2019212356.tif 000008
【図７】
2019212356.tif 000009
【図８】
2019212356.tif 000010
【図９】
2019212356.tif 000011
【手続補正書】
【提出日】令和1年7月29日(2019.7.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
抵抗変化型メモリであって、
複数のメモリセルを含むメモリセルアレイと、
アドレス情報に基づき選択されたメモリセルにデータを書込む書込み手段と、
選択されたメモリセルに書込まれたデータの合否を判定する判定手段と、
救済可能なｎビットの不合格メモリセルの発生を表すｎビットのフラグをセット可能であり、かつフラグがセットされた場合にセットまたはリセットの書込みの識別を格納する第１のレジスタと、前記第１のレジスタに不合格メモリセルのフラグがセットされた場合に、フラグがセットされた不合格メモリのアドレスを格納する第２のレジスタとを含む保持手段と、
前記判定手段により選択メモリセルへの書込みが不合格と判定された場合に、第１のレジスタにフラグをセットするとともに前記書込みの識別を格納し、かつ第２のレジスタに選択メモリセルのアドレスを格納し、第１のレジスタおよび第２のレジスタへの格納を行う書込み動作とは異なる別の予めきめられた事象が発生したときに、第１のレジスタにフラグがセットされているか否かを判定し、フラグが設定されている場合には、第２のレジスタから対応するアドレスを読出し、第１のレジスタに格納された前記書込みの識別に基づき不合格メモリセルのデータの書換えによる救済を行う救済手段と、
を有する抵抗変化型メモリ。
【請求項２】
前記救済手段は、不合格メモリセルの書換え後に当該不合格メモリセルの読出しを行い、読み出したデータが合格と判定された場合には、第１のレジスタの対応する不合格メモリセルのフラグと前記書込みの識別をクリアし、かつ第２のレジスタのアドレスをクリアする、請求項１に記載の抵抗変化型メモリ。
【請求項３】
前記救済手段は、セットの書込みのときに不合格と判定された場合には、メモリセルをリセットした後にセットする、請求項１に記載の抵抗変化型メモリ。
【請求項４】
前記救済手段は、リセットの書込みのときに不合格と判定された場合には、メモリセルをセットした後にリセットする、請求項１に記載の抵抗変化型メモリ。
【請求項５】
前記救済手段は、データの書換え回数が一定以上であっても不合格の場合には、メモリセルを救済不可能とし、冗長メモリセルに置換する、請求項１に記載の抵抗変化型メモリ。
【請求項６】
前記予め決められた事象は読出し動作である、請求項１に記載の抵抗変化型メモリ。
【請求項７】
前記予め決められた事象は書込み動作である、請求項１に記載の抵抗変化型メモリ。
【請求項８】
前記予め決められた事象は電源投入時である、請求項１に記載の抵抗変化型メモリ。
【請求項９】
前記救済手段は、前記予め決められた事象のバックグランドで動作される、請求項６または７に記載の抵抗変化型メモリ。
【請求項１０】
抵抗変化型メモリはさらに、入力データおよび読出しデータについての誤り訂正・検出を行うための誤り訂正・検出回路を含む、請求項１ないし９いずれか１つに記載の抵抗変化型メモリ。