(57)【特許請求の範囲】
【請求項１】
可変抵抗体の両端に電極を担持し、当該両端の間に電気的ストレスを与えることにより、当該両端間の抵抗特性で規定される抵抗状態が二以上の異なる抵抗状態間で遷移し、当該遷移後の一の抵抗状態を情報の記憶に用いる可変抵抗素子と、前記可変抵抗素子の一端の電極と接続する電流制限素子を備えてなるメモリセルを、行方向及び列方向に夫々複数配列してなるメモリセルアレイを有する半導体記憶装置において、
前記可変抵抗素子は、印加される電圧パルスの電圧振幅を上昇させるに従って、当該電圧振幅が第１の電圧範囲にあるときは抵抗値が低抵抗状態から大きく変化せず略一定の第１の抵抗変化、当該電圧振幅が第２の電圧範囲にあるときは抵抗値が所定のピーク値に向って上昇する第２の抵抗変化、及び、当該電圧振幅が第３の電圧範囲にあるときは抵抗値が前記ピーク値から前記低抵抗状態の抵抗値に向って減少する第３の抵抗変化を、順に呈する可変抵抗特性を有し、
複数ビットを有する情報ビットに対して誤り訂正符号化を施し、前記情報ビットよりビット長の長い符号化データを生成する符号化動作、
前記符号化データの前記第１の論理値のビットに対応する選択された前記メモリセルの前記可変抵抗素子の両端の電極に第１極性の書き換え電圧パルスを印加し、前記可変抵抗素子を前記低抵抗状態に遷移させる第１書き換え動作、
前記符号化データの前記第２の論理値のビットに対応する選択された前記メモリセルの前記可変抵抗素子の両端の電極に前記第１極性とは極性が逆で、電圧振幅が前記第２の電圧範囲内にある書き換え電圧パルスを印加し、前記可変抵抗素子を高抵抗状態に遷移させる第２書き換え動作、
読み出し電圧パルスを前記符号化データに対応する複数の選択された前記メモリセルの前記可変抵抗素子の両端の電極に印加して、当該選択された前記メモリセルの前記抵抗状態を読み出し、前記符号化データとして読み出す読み出し動作、及び、
前記読み出し動作により読み出された前記符号化データの誤りを検出し、誤りが検出されたビットを訂正する復号化動作を制御する制御回路を備え、
前記制御回路は、
前記復号化動作において読み出された符号化データの誤りが検出された場合、当該誤りの誤り位置に対応する前記メモリセルを選択し、当該誤り位置に対応する全ての前記メモリセルに対して前記第１書き換え動作を実行して、前記メモリセルアレイに記憶されている前記符号化データに対する訂正書き込み動作を制御することを特徴とする半導体記憶装置。
【請求項２】
前記可変抵抗素子が、電圧振幅が前記第２の電圧範囲内にある書き換え電圧パルスを印加した場合に、遷移後の高抵抗状態の抵抗値が時間の経過とともに上昇する保持特性を有していることを特徴とする請求項１に記載の半導体記憶装置。
【請求項３】
前記訂正書き込み動作において、前記第１書き換え動作を実行する前に、前記誤り位置に対応する全ての前記メモリセルに対して前記第２書き換え動作を実行することを特徴とする請求項１または２に記載の半導体記憶装置。
【請求項４】
前記制御回路は、
前記復号化動作において読み出された符号化データの誤りが検出された場合、当該誤りの誤り位置に対応する全ての前記メモリセルの前記可変抵抗素子の抵抗状態を前記低抵抗状態に設定して、前記訂正書き込み動作の実行と並行して、誤り訂正後の復号化されたデータを出力する読み出し出力動作の実行を制御することを特徴とする請求項１〜３の何れか一項に記載の半導体記憶装置。
【請求項５】
設定した周期のリフレッシュ要求信号を生成する信号発生回路を備え、
前記制御回路が、前記リフレッシュ要求信号に同期して、前記読み出し動作、前記復号化動作、及び、前記訂正書き込み動作が実行されるように制御することを特徴とする請求項１〜４の何れか一項に記載の半導体記憶装置。
【請求項６】
検知された温度に応じた動作モードを保持するモードレジスタを備え、
前記動作モードに応じて、前記リフレッシュ要求信号の設定周期が変更されることを特徴とする請求項５に記載の半導体記憶装置。
【請求項７】
前記リフレッシュ要求信号の周期が、温度上昇に伴って単調に減少するように設定されることを特徴とする請求項５または６に記載の半導体記憶装置。
【請求項８】
前記符号化データが、前記情報ビットに検査ビットが付加されてなり、
前記読み出し動作の後、前記復号化動作の前において、
前記制御回路は、
前記読み出し動作において読み出された前記符号化データのうち前記情報ビットに対して前記誤り訂正符号化を施し、前記検査ビットを生成する第２の符号化動作、及び、
前記読み出し動作において読み出された前記符号化データのうち前記検査ビットと、前記第２の符号化動作により生成された前記検査ビットとを比較する比較動作を制御し、
双方の前記検査ビットが一致する場合、前記符号化データの誤りが無いと判定し、前記復号化動作を行わないことを特徴とする請求項１〜７の何れか一項に記載の半導体記憶装置。
【請求項９】
前記可変抵抗体が、Ａｌ、Ｈｆ、Ｎｉ、Ｃｏ、Ｔａ、Ｚｒ、Ｗ、Ｔｉ、Ｃｕ、Ｖ、Ｚｎ、Ｎｂの少なくとも何れかの金属の酸化物もしくは酸窒化物を含んでなることを特徴とする請求項１〜８の何れか一項に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的ストレスの印加により電気抵抗が変化する電気的動作特性に基づき情報を記憶する可変抵抗素子からなるメモリセルを行方向及び列方向に夫々複数配列してなるメモリセルアレイを有する半導体記憶装置に関する。
【背景技術】
【０００２】
フラッシュメモリに代表される不揮発性メモリは、大容量で小型の情報記録媒体としてコンピュータ、通信、計測機器、自動制御装置及び個人の周辺に用いられる生活機器等の広い分野において用いられており、より安価で大容量の不揮発性メモリに対する需要は非常に大きい。これは、電気的に書き換えが可能であり、しかも電源を切ってもデータが消えない点から、容易に持ち運びの可能なメモリカードや携帯電話等や装置稼動の初期設定として不揮発に記憶しておくデータストレージ、プログラムストレージなどとしての機能を発揮することが可能等の理由による。
【０００３】
ただし、フラッシュメモリは、データを論理値“１”を書き込むプログラム動作に比べて、データを論理値”０”に消去する消去動作に時間がかかるため、高速動作させることができない。消去動作に関して、消去動作を行うときはブロック単位で行うことで速度の向上を図っているが、消去をブロック単位で行うためランダムアクセスによる書き込みができないという問題がある。
【０００４】
そこで現在、フラッシュメモリに代わる新型の不揮発メモリが広く研究されている。なかでも金属酸化膜に電圧を印加することで抵抗変化がおきる現象を利用した抵抗変化メモリは、微細化限界の点でフラッシュメモリに比べ有利であり、また低電圧の動作が可能で、高速のデータ書き換えが可能であることから近年研究開発が盛んに行われている（例えば、特許文献１、あるいは下記の非特許文献１を参照）。
【０００５】
これら金属酸化物を有する可変抵抗素子の書き込み・消去特性として、バイポーラスイッチングと呼ばれる駆動方法の場合、夫々逆極性の電圧パルスを素子に印加することで素子の電気抵抗が増加(高抵抗状態)・減少(低抵抗状態)するため、各電気抵抗状態にデータとして論理値を当てはめることでメモリとして使用する。
【０００６】
上記金属酸化物を有する可変抵抗素子を用いたメモリの特徴として、書き込み、消去がいずれも低電圧で高速に行えることから任意のアドレスの高速な書き換えが可能な点が挙げられる。このため、従来ＤＲＡＭに展開して使用していたデータを不揮発メモリのまま使用でき、モバイル機器の消費電力の低減や使い勝手の向上に大きく低減できることが期待される。
【０００７】
一方、抵抗変化メモリ特有の性質に起因する解決すべき課題も存在する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特表２００２−５３７６２７号公報
【特許文献２】特開２０１０−３３４８号公報
【非特許文献】
【０００９】
【非特許文献１】Ｂａｅｋ，Ｉ．Ｇ．ほか、"Ｈｉｇｈｌｙ Ｓｃａｌａｂｌｅ Ｎｏｎ−ｖｏｌａｔｉｌｅ Ｒｅｓｉｓｔｉｖｅ Ｍｅｍｏｒｙ ｕｓｉｎｇ Ｓｉｍｐｌｅ Ｂｉｎａｒｙ Ｏｘｉｄｅ Ｄｒｉｖｅｎ ｂｙ Ａｓｙｍｍｅｔｒｉｃ Ｕｎｉｐｏｌａｒ Ｖｏｌｔａｇｅ Ｐｕｌｓｅｓ"，ＩＥＤＭ２００４，ｐｐ．５８７−５９０，２００４年
【発明の概要】
【発明が解決しようとする課題】
【００１０】
半導体記憶装置をメモリとして用いるためには、書き込まれたデータに対する読み出し動作が必須である。例えば論理値“０”或いは論理値“１”の何れかが書き込まれたデータを情報として用いるためには、当該データが書き換えられない限り常に正しく論理値“０”或いは論理値“１”の何れかを読み出されなければならない。
【００１１】
一方、金属酸化物を有する可変抵抗素子を用いたメモリでは、データは二端子の可変抵抗素子の抵抗状態として記憶され、電源を切ってもデータが保持され、不揮発性メモリとしての機能を奏することができる。しかしながら、メモリの集積化大容量化が進むと、メモリ素子性能の統計的ばらつきも増大する。このため長期間、高温状態で電源を切った状態においた場合、データ保持力の弱いビットでエラーが起きる可能性が上昇することを完全に避けることは困難であり、このようなデータ化けに対してなんらかの対策を講じることが必須となっている。
【００１２】
そこで、データの読み出しを行うにあたり、ＥＣＣ（Error Checking and Correcting）といった手法を用いてデータ誤りを検出し、誤りが検出されたデータを反転して訂正し出力する方法が広くフラッシュメモリやストレージディスクで使用されている。
【００１３】
例えば、特許文献２において、データ誤りが検出された際に出力を訂正するだけでなくメモリセルのデータを訂正する方法が提案されている。
【００１４】
しかし、読み出し出力を訂正するのには、読み出したデータを反転するだけでよいが、メモリセルのデータの訂正を行う場合、可変抵抗素子の書き込み動作が必要でありその工程は複雑になる。すなわち、誤りが検出された場合において、メモリセルに書き込まれたデータを訂正しようとすると、誤りデータがどういった誤りなのかを判断する必要がある。例えば論理値“１”（例えば高抵抗状態に相当）と論理値“０”（例えば低抵抗状態に相当）を書き込むことができるメモリセルの場合、データの誤りについて、元々論理値“１”が書き込まれていたデータが論理値“０”に変化してしまった誤りなのか、元々論理値“０”が書き込まれていたデータが論理値“１”に変化してしまった誤りなのかを判断する必要があるため、データを訂正するためには当該誤りがどちらなのかを判断するための時間が必要となる。
【００１５】
更に、論理値“０”を“１”に書き換える時の書き込み条件と論理値“１”を“０”に書き換えるときの、回路上の電圧の印加条件は大きく異なるため、状態を判断した後に、書き換え対象のメモリセルへの所望の書き込みのための電圧印加状態に設定するまでにさらに時間を要する。
【００１６】
尚、上記では論理値“１”を高抵抗状態、論理値“０”を低抵抗状態として説明したが、論理値“１”及び“０”を夫々低抵抗状態および高抵抗状態としても同様である。
【００１７】
本発明は、上述した問題を鑑み、長期間のデータ保持後の使用により発生する可能性のあるデータの誤りを検出、及び訂正するに当たり、効率よくデータ訂正を行うことのできる半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明は、以下に示す金属酸化物を有する可変抵抗素子の特性を利用することで、メモリセルのデータ誤りを訂正する書き込み工程を簡略化するものである。
【００１９】
即ち、低抵抗状態にある可変抵抗素子は、長時間の保持によって、必ず抵抗値が増加する方向に（高抵抗側に）変化することが観察されている。
【００２０】
一方、高抵抗状態にある可変抵抗素子は、長時間の保持によって、当該高抵抗状態へ書き換える際の書き込み条件に応じて、抵抗値が増加する方向に（高抵抗側に）変化する場合と低下する方向に（低抵抗側に）変化する場合の双方が観察されている。
【００２１】
図３に低抵抗状態にある可変抵抗素子に対し、高抵抗状態への書き換えを行う場合の抵抗変化特性の書き込み条件依存性を示す。書き換え電圧パルスの電圧振幅に対して、当該電圧振幅がある範囲まではその抵抗値が大きく変化せず略一定であるが、その後、特定の電圧値に達するまでその抵抗値が所定のピーク値に向って上昇し、これに伴い、印加電圧振幅の増加とともに抵抗変化比（低抵抗状態から高抵抗状態への変化比）は増加する。書き換え電圧パルスの電圧振幅が当該特定の電圧値を超えると、その抵抗値がピーク値から低抵抗状態の抵抗値に向って減少し、抵抗変化比は減少していく。
【００２２】
尚、ここで、低抵抗状態から高抵抗状態への書き換えにおいて、上記の抵抗値が大きく変化せず略一定となる書き換え電圧パルスの電圧振幅の範囲および抵抗値の範囲を「第１の電圧範囲」および「第１抵抗変化領域」と、抵抗値が所定のピーク値に向って上昇する電圧振幅の範囲および抵抗値の範囲を「第２の電圧範囲」および「第２抵抗変化領域」と、抵抗値が当該ピーク値から低抵抗状態の抵抗値に向って減少する電圧振幅の範囲及び抵抗値の範囲を「第３の電圧範囲」および「第３抵抗変化領域」と、夫々、称することにする。
【００２３】
このような特性を持つ可変抵抗素子において、高抵抗状態が、上記第２抵抗変化領域にある場合、長時間の保持によって抵抗値が上昇し、上記第３抵抗変化領域にある場合、長時間の保持によって抵抗値が減少することが分かった。言い換えると、電圧振幅が上記第２の電圧範囲内にある書き換え電圧パルスを印加して高抵抗状態へと遷移させた場合、その後の長時間の保持によって抵抗値が上昇し、電圧振幅が上記第３の電圧範囲内にある書き換え電圧パルスを印加して高抵抗状態へと遷移させた場合、その後の長時間の保持によって抵抗値は減少する。
【００２４】
高抵抗状態では抵抗値の上昇はデータエラーにはつながらない。従って、高抵抗状態への書き換えにおいて、書き換え電圧パルスの電圧振幅が、遷移後の高抵抗状態の抵抗値が第２抵抗変化領域にあるように、上記第２の電圧範囲内に設定されるのであれば、全体として、長期保持後のデータ誤りは、低抵抗状態であるべきビットが高抵抗状態になっている場合に限られることになる。この結果、誤りを検知した際のデータの訂正は一意的に決定することができる。
【００２５】
本発明では、この特性を利用し、ＥＣＣの誤り検出において誤りが発見された場合は、低抵抗状態であるべきビットが高抵抗状態に変化した誤りであると推定することで、その抵抗状態を判断する工程を省略するとともに、誤りが発見された全てのメモリセルの可変抵抗素子の抵抗状態を訂正するための書き込み動作（訂正書き込み動作）を、低抵抗状態へ遷移させるための書き換え電圧パルスを印加することで実行する。これにより、訂正書き込み動作に要する時間を大幅に短縮することが可能となる。
【００２６】
尚、当該訂正書き込み動作はメモリの起動時に実行されることが好ましい。これは、当該訂正書き込み動作が、データの長期保持後に発生するデータ誤りの性質に依拠したものであり、メモリ動作時に発生する誤りとはまた別の特性を有するからである。
【００２７】
更に、当該データ誤りは、メモリの動作環境（特に、動作時間や動作温度）に依存するものであるので、当該訂正書き込み動作が、メモリの使用時間に応じて、或いは、メモリの使用環境温度に応じて実行されることが好ましい。特に、メモリの使用環境温度に応じて、訂正書き込み動作を定期的に実行する周期が変更されることが好ましい。
【００２８】
即ち、上記目的を達成するための本発明に係る半導体記憶装置は、可変抵抗体の両端に電極を担持し、当該両端の間に電気的ストレスを与えることにより、当該両端間の抵抗特性で規定される抵抗状態が二以上の異なる抵抗状態間で遷移し、当該遷移後の一の抵抗状態を情報の記憶に用いる可変抵抗素子と、前記可変抵抗素子の一端の電極と接続する電流制限素子を備えてなるメモリセルを、行方向及び列方向に夫々複数配列してなるメモリセルアレイを有する半導体記憶装置において、
前記可変抵抗素子は、印加される電圧パルスの電圧振幅の大きさを上昇させるに従って、当該電圧振幅が第１の電圧範囲にあるときは抵抗値が低抵抗状態から大きく変化せず略一定の第１の抵抗変化、当該電圧振幅が第２の電圧範囲にあるときは抵抗値が所定のピーク値に向って上昇する第２の抵抗変化、及び、当該電圧振幅が第３の電圧範囲にあるときは抵抗値が前記ピーク値から前記低抵抗状態の抵抗値に向って減少する第３の抵抗変化を、順に呈する可変抵抗特性を有し、
複数ビットを有する情報ビットに対して誤り訂正符号化を施し、前記情報ビットよりビット長の長い符号化データを生成する符号化動作、
前記符号化データの前記第１の論理値のビットに対応する選択された前記メモリセルの前記可変抵抗素子の両端の電極に第１極性の書き換え電圧パルスを印加し、前記可変抵抗素子を前記低抵抗状態に遷移させる第１書き換え動作、
前記符号化データの前記第２の論理値のビットに対応する選択された前記メモリセルの前記可変抵抗素子の両端の電極に前記第１極性とは極性が逆で、電圧振幅が前記第２の電圧範囲内にある書き換え電圧パルスを印加し、前記可変抵抗素子を高抵抗状態に遷移させる第２書き換え動作、
読み出し電圧パルスを前記符号化データに対応する複数の選択された前記メモリセルの前記可変抵抗素子の両端の電極に印加して、当該選択された前記メモリセルの前記抵抗状態を読み出し、前記符号化データとして読み出す読み出し動作、及び、
前記読み出し動作により読み出された前記符号化データの誤りを検出し、誤りが検出されたビットを訂正する復号化動作を制御する制御回路を備え、
前記制御回路は、
前記復号化動作において読み出された符号化データの誤りが検出された場合、当該誤りの誤り位置に対応する前記メモリセルを選択し、当該誤り位置に対応する全ての前記メモリセルに対して前記第１書き換え動作を実行して、前記メモリセルアレイに記憶されている前記符号化データに対する訂正書き込み動作を制御することを第１の特徴とする。
【００２９】
上記第１の特徴の本発明に係る半導体記憶装置は、前記可変抵抗素子が、電圧振幅が前記第２の電圧範囲内にある書き換え電圧パルスを印加した場合に、遷移後の高抵抗状態の抵抗値が時間の経過とともに上昇する保持特性を有している場合に好適である。
【００３０】
尚、以降の説明において、第１の論理値を“０”、第２の論理値を“１”とし、可変抵抗素子の低抵抗状態を論理値“０”、高抵抗状態を論理値“１”に割り当てることとする。そして、論理値“０”に対応する可変抵抗素子の低抵抗状態を“０”状態と、論理値“１”に対応する可変抵抗素子の高抵抗状態を“１”状態と、適宜称する。
【００３１】  本発明では、可変抵抗素子の抵抗状態を高抵抗状態に遷移させる際に、電圧振幅が上記第２の電圧範囲内にある書き換え電圧パルスを印加して高抵抗状態（“１”状態）への書き換え動作を実行する。この場合、長期保持後のデータ誤りは、低抵抗状態（“０”状態）であるべきビットが高抵抗化し“１”状態に変化する誤りは発生しうるが、高抵抗状態（“１”状態）であるべきビットが低抵抗化し“０”状態に変化する誤りは発生しない。従って、符号化データの復号化後の誤り検出動作において誤りが検出されたとすれば、それは論理値“０”であるべきビットが“１”になっている場合に限られる。【００３２】
従って、誤りが検出された場合、当該誤りデータについて、論理値“０”であるべきビットが“１”になったのか、論理値“１”であるべきビットが“０”になったのかを判断することなく、常に論理値“０”であるべきビットが“１”になったものと推定し、誤りが検出された全てのメモリセルの可変抵抗素子に対して、常に、論理値“０”に書き込むための書き換え電圧パルスを印加することで、訂正書き込み動作を行うことができる。この結果、符号化データの訂正に要する時間を短縮することができる。
【００３３】
更に、上記第１の特徴の本発明に係る半導体記憶装置は、前記訂正書き込み動作において、前記第１書き換え動作を実行する前に、前記誤り位置に対応する全ての前記メモリセルに対して前記第２書き換え動作を実行することが好ましい。
【００３４】
誤りが検出された全てのメモリセルの可変抵抗素子に対し、論理値“０”に書き込むための書き換え電圧パルスを印加する前に、論理値“１”に書き込むための書き換え電圧パルスを印加する第２書き換え動作を実行することで、可変抵抗素子の抵抗状態を “１”状態（高抵抗状態）に遷移させてから“０”状態（低抵抗状態）への書き換えを行い、より精確に可変抵抗素子を“０”状態へ書き換えることができる。
【００３５】
更に、上記第１の特徴の本発明に係る半導体記憶装置は、
前記制御回路は、
前記復号化動作において読み出された符号化データの誤りが検出された場合、当該誤りの誤り位置に対応する全ての前記メモリセルの前記可変抵抗素子の抵抗状態を前記低抵抗状態に設定して、前記訂正書き込み動作の実行と並行して、誤り訂正後の復号化されたデータを出力する読み出し出力動作の実行を制御することを第２の特徴とする。
【００３６】
上記第２の特徴の半導体記憶装置に依れば、符号化データの誤りが検出された場合、当該符号化データを訂正して再度読み出すのではなく、誤りデータが訂正された復号化データを出力するように制御することでデータを出力するまでの時間を短縮することができ、高速でデータ出力及びエラー訂正を行うことができる。
【００３７】
ここで、発生しうる誤りは、上述の通り、論理値“０”であるべきビットが“１”になっている場合に限られるため、読み出し出力動作において、誤りデータに対しては常に論理値“０”（低抵抗状態に対応する論理値）が出力される。
【００３８】
また、可変抵抗素子の書き込み、消去、および読み出しに要する時間がいずれも数１０ｎ秒〜１００ｎ秒程度とほぼ同程度であることを利用し、読み出し出力動作と、訂正書き込み動作を同時並行して実行することができる。また、メモリ使用者にメモリセルの訂正にかかる時間を意識させないで済む。
【００３９】
更に、上記第１又は第２の特徴の本発明に係る半導体記憶装置は、設定した周期のリフレッシュ要求信号を生成する信号発生回路を備え、
前記制御回路が、前記リフレッシュ要求信号に同期して、前記読み出し動作、前記復号化動作、及び、前記訂正書き込み動作が実行されるように制御することを第３の特徴とする。
【００４０】
一般に、データの保持特性は時間の経過に伴って悪化するものであるところ、上記第３の特徴の半導体記憶装置に依れば、リフレッシュ要求信号に同期して訂正書き込み動作が制御されることで、長期間のデータ保持により生じるデータ誤りを効率よく訂正することができる。
【００４１】
更に、上記第３の特徴の本発明に係る半導体記憶装置は、検知された温度に応じた動作モードを保持するモードレジスタを備え、前記動作モードに応じて、前記リフレッシュ要求信号の設定周期が変更されることが好ましい。
【００４２】
更に、上記第３の特徴の本発明に係る半導体記憶装置は、前記リフレッシュ要求信号の周期が、温度上昇に伴って単調に減少するように設定されることが好ましい。
【００４３】
一般に、データの保持特性はメモリの使用環境温度が上昇するほど悪化するものであるので、訂正書き込み動作を行うためのリフレッシュ要求信号を、温度上昇に伴ってその周期が短くなるように設定しておくことで、長期間のデータ保持により生じるデータ誤りを効率よく訂正することができる。
【００４４】
更に、上記第１乃至第３の何れかの特徴の本発明に係る半導体記憶装置は、
前記符号化データが、前記情報ビットに検査ビットが付加されてなり、
前記読み出し動作の後、前記復号化動作の前において、
前記制御回路は、前記読み出し動作において読み出された前記符号化データのうち前記情報ビットに対して前記誤り訂正符号化を施し、前記検査ビットを生成する第２の符号化動作、及び、前記読み出し動作において読み出された前記符号化データのうち前記検査ビットと、前記第２の符号化動作により生成された前記検査ビットとを比較する比較動作を制御し、
双方の前記検査ビットが一致する場合、前記符号化データの誤りが無いと判定し、前記復号化動作を行わないことを第４の特徴とする。
【００４５】
上記第４の特徴の半導体記憶装置に依れば、符号化データの読み出し動作の後、復号化動作において通常の誤り検出処理を行う代わりに、読み出された情報ビットを符号化し、当該符号化により生成される検査ビットと、読み出された検査ビットを比較することで、符号化データの誤り検出処理を行う。そして、当該比較動作において双方の検査ビットが一致する場合は、データ誤りが検出されなかったものとみなし、双方の検査ビットが不一致の場合に限り、データ誤りが検出されたとみなして復号化動作を行い、誤りが存在する位置を特定する。
【００４６】
このように、処理に非常に時間のかかる復号化動作に代えて、比較的処理時間の短い第２の符号化動作により誤り検出を行うことで、高い信頼性を維持しながら、読み出し処理に要する時間を全体で短縮することが可能になる。
【００４７】
この場合、誤りが検出される場合には、読み出し処理において第２の符号化動作、比較動作、及び復号化動作の夫々を実行することとなり、第２の符号化動作と比較動作の分だけ読み出し処理に要する時間は増加することとなる。このため、エラーが頻発する場合には、全体で読み出し処理時間の短縮は期待できないが、抵抗変化メモリにおける通常のエラー発生率を考慮すると、復号化動作に代えて、第２の符号化動作と比較動作を実行することにより、全体では、処理時間の短縮が期待できる。
【００４８】
更に、上記第１乃至第４の何れかの特徴の本発明に係る半導体記憶装置は、前記可変抵抗体が、Ａｌ、Ｈｆ、Ｎｉ、Ｃｏ、Ｔａ、Ｚｒ、Ｗ、Ｔｉ、Ｃｕ、Ｖ、Ｚｎ、Ｎｂの少なくとも何れかの金属の酸化物もしくは酸窒化物を含んでなることが好ましい。
【発明の効果】
【００４９】
従って、本発明に依れば、長期間のデータ保持後に発生する可能性のあるデータの誤りを検出、及び訂正するに当たり、効率よくデータ訂正を行うことのできる半導体記憶装置を実現することができる。
【図面の簡単な説明】
【００５０】
【図１】本発明の一実施形態に係る半導体記憶装置の一構成例を示すブロック図
【図２】本発明において半導体記憶装置を構成するメモリセルアレイの一構成例を示す回路図
【図３】可変抵抗素子を高抵抗状態に遷移させる場合の、書き換え電圧パルスの電圧振幅および印加時間と、遷移後の抵抗値との関係（抵抗変化特性）を示す図
【図４】可変抵抗素子を高抵抗状態に遷移させる書き換え電圧パルスの電圧振幅を変えた場合の、可変抵抗素子の高抵抗状態と低抵抗状態の遷移後の抵抗値の変化を示す図
【図５】高抵抗状態の抵抗値の１５０℃におけるデータ保持特性を示す図
【図６】高抵抗状態の抵抗値の１５０℃におけるデータ保持特性を示す図
【図７】本発明の一実施形態に係る半導体記憶装置の符号化データの読み出し時の動作を示すフローチャート
【図８】本発明の第２の実施形態に係る半導体記憶装置の符号化データの読み出し時の動作を示すフローチャート
【図９】低抵抗状態の抵抗値の高温環境におけるデータ保持特性を、エラービットの累積確率の変化として示す図
【図１０】本発明の第３の実施形態に係る半導体記憶装置の一構成例を示すブロック図
【図１１】本発明の第３の実施形態に係る半導体記憶装置のリフレッシュ時の動作を示すフローチャート
【図１２】本発明の第３の実施形態に係る半導体記憶装置の他の構成例を示すブロック図
【図１３】本発明の一実施形態に係る半導体記憶装置の読み出し時の動作を示すタイミングチャート
【図１４】本発明の一実施形態に係る半導体記憶装置の読み出し時の動作を示すタイミングチャート
【図１５】本発明の一実施形態に係る半導体記憶装置の読み出し時の動作を示すタイミングチャート
【発明を実施するための形態】
【００５１】
〈第１実施形態〉
本発明の一実施形態に係る半導体記憶装置（以降、適宜「本発明装置１」と称す）の概略の回路構成を図１に示す。本発明装置１は、大きく分けて、メモリセルアレイ部１０１とメモリコントローラ部１０２で構成される。メモリコントローラ部１０２は、入力データである複数の情報ビットに対して誤り訂正用の検査ビットを付加する誤り訂正符号化を施し、情報ビットよりビット長の長い符号化データを生成するエンコーダ回路１０３、入力アドレスで特定されるメモリセルアレイ部１０１内のメモリセルアレイのメモリセルに対し、当該符号化データの書き込み、および読み出し動作を制御するコントローラ１０４、コントローラ１０４を介して読み出された符号化データ（情報ビット＋検査ビット）を復号化するとともに、復号化されたデータ内に誤りがないか検出し、誤りを訂正するデコーダ回路１０５を備えてなる。デコーダ回路１０５は、復号化されたデータ内の誤りが検出された場合に当該誤りのビット位置を特定するＥＣＣ回路１０６、及び、正常なビットはそのまま出力し誤ったビットに対してはデータを反転させ、訂正して出力する出力制御回路１０７を、その内部に備える。
【００５２】
尚、コントローラ１０４は、書き込みおよび読み出し動作の制御のほか、エンコーダ回路１０３、デコーダ回路１０５、ＥＣＣ回路１０６、及び、出力制御回路１０７の各動作の制御を行う。尚、図１には示されていないが、メモリセルアレイ部１０１は、書き込みおよび読み出し動作の際に、当該動作対象の特定のメモリセルを選択する列選択回路・行選択回路、及び、書き込みおよび読み出し動作のための動作電圧を供給し、当該動作電圧を選択された特定のメモリセルに印加する回路を備えている。
【００５３】
メモリセルアレイ部１０１は、メモリセルアレイ１１０を備えてなるが、当該メモリセルアレイ１１０は複数（例えば、４つ）のバンク１１０ａ〜１１０ｄに分割されている。図２にメモリセルアレイを構成する各バンクの構成例を示す。各バンク１１０ａ〜１１０ｄは、１つのトランジスタＴと１つの可変抵抗素子Ｒを備え、トランジスタＴのソース或いはドレインの一端と可変抵抗素子Ｒの一端が接続されてなるメモリセルＭを複数備えて構成されている。
【００５４】
各バンク１１０ａ〜１１０ｄは、ｍ×ｎ個のメモリセルＭが、行方向（図２の横方向）および列方向（図２の縦方向）にマトリクス状に配置され、個々のメモリセルＭにおいて、同一列に配列されるメモリセルの可変抵抗素子の他端は、夫々、列方向に延伸するビット線ＢＬｉ（ｉ＝１〜ｍ）に接続され、同一行に配列されるメモリセルのトランジスタのゲートには、夫々、行方向に延伸するワード線ＷＬｊ（ｊ＝１〜ｎ）が接続されている。一方、同一列に配列されるメモリセルのトランジスタのソース或いはドレインの他端は、夫々、列方向に延伸するソース線ＳＬｋ（ｋ＝１〜ｎ）に接続されている。尚、ソース線ＳＬｋについては、夫々が行方向に延伸する構成としてもよいし、メモリセルアレイ内の全てのソース線を共通としてもよく、その構成は特に限定しない。本実施形態において、各バンク１１０ａ〜１１０ｄは、トランジスタＴのゲート電圧の印加状態によって、メモリセルＭの選択・非選択を切り替え、可変抵抗素子Ｒの一端、及び、トランジスタＴのソース或いはドレインの他端への電圧印加状態によってメモリセルＭの動作を切り替えるように構成されている。
【００５５】
各ビット線ＢＬｉは夫々ビット線選択回路（列選択回路）１１１に接続され、各ワード線ＷＬｊは夫々ワード線選択回路（行選択回路）１１２に接続され、各ソース線ＳＬｋは夫々ソース線選択回路１１３に接続されている。メモリコントローラ部１０２は、動作対象のメモリセルのアドレスが入力されると、当該動作対象のメモリセルの属するバンクを特定し、各選択回路１１１〜１１３が、メモリコントローラ部１０２からの指示に基づき、当該特定されたバンクのビット線、ワード線及びソース線をアドレス入力に応じて選択し、選択された、或いは非選択のビット線、ワード線及びソース線に、夫々、メモリ動作に必要な電圧を各別に印加する。
【００５６】
各バンク１１０ａ〜１１０ｄは、夫々においてビット線およびワード線が別々で、ワード線選択回路１１２とビット線選択回路１１１によりメモリセルが独立して選択されるものとしてもよいし、少なくとも何れかのバンク間においてワード線を共有し、共通のワード線選択回路１１２によりメモリセルが選択されるものとしてもよい。このような構成とすることで、各バンク毎に、選択されたメモリセルのメモリ動作を独立して行うことができる。尚、バンク間でワード線が共有されている場合には、当該バンク同士でワード線が異なるメモリセルを選択して、メモリ動作を独立して行うことはできないが、当該バンク同士で同一のワード線に接続するメモリセルに対しては、メモリ動作を独立して行うことができる。
【００５７】
可変抵抗素子Ｒは、金属酸化物で構成される可変抵抗体の両端に電極を担持してなる素子であり、当該可変抵抗体の材料としてはＡｌ、Ｈｆ、Ｎｉ、Ｃｏ、Ｔａ、Ｚｒ、Ｗ、Ｔｉ、Ｃｕ、Ｖ、Ｚｎ、Ｎｂの各酸化物もしくは酸窒化物が挙げられる。
【００５８】
ここで、当該可変抵抗体を担持する電極の材料としては、一方の電極には仕事関数の大きなもの（例えば、ＴｉＮ、Ｐｔ、Ｉｒなど）を用いて第１電極とし、他方の電極には金属酸化物の酸素欠損による不純物準位と同程度の仕事関数を有するもの（例えば、Ｔａ、Ａｌなど）を用いて第２電極とする。より好ましくは、仕事関数が４．５ｅＶ以上のものを第１電極として、仕事関数が４．５Ｖ以下のものを第２電極として用いるとよい。このとき、電極と金属酸化物との界面は、第２電極側ではオーミック接合となり、第１電極側では非オーミック接合（ショットキー接合）となる。
【００５９】
上記の可変抵抗素子Ｒを高抵抗状態から低抵抗状態に遷移させるには、例えば、＋１．８Ｖ、５０ｎｓｅｃの電圧パルスをメモリセルのビット線とソース線間に印加する。一方、可変抵抗素子Ｒを低抵抗状態から高抵抗状態に遷移させるには、低抵抗化時とは極性が逆の、例えば、−１．５Ｖ、５０ｎｓｅｃの電圧パルスをメモリセルのビット線とソース線間に印加する。ここで、可変抵抗素子Ｒの低抵抗状態を論理値“０”、高抵抗状態を論理値“１”とし、選択されたメモリセルの可変抵抗素子Ｒに対し、“０”状態を書き込む動作を第１書き換え動作、“１”状態を書き込む動作を第２書き換え動作と、夫々称する。この場合、ソース線に０Ｖを印加した状態で、選択ビット線側から＋１．８Ｖ、５０ｎｓｅｃの電圧パルスを印加して第１書き換え動作を実行し、選択ビット線に＋１．５Ｖを印加した状態で、選択ソース線側から０Ｖ、５０ｎｓｅｃの電圧パルスを印加して第２書き換え動作を実行する構成とすることができる。
【００６０】
このとき、可変抵抗素子Ｒの抵抗状態の書き換えは、印加する電圧或いは電流を制御することで行うことができ、異なる情報を記憶する毎に、可変抵抗素子に印加する電圧パルスの回数や印加時間を調整する必要がないため、複雑なアルゴリズムを必要としない。
【００６１】
尚、本発明装置１で用いられる誤り訂正に係る符号化方法（誤り訂正符号）については、種々の公知の構成が利用可能である。例えば、リード・ソロモン符号（Reed-Solomon Coding）やＢＣＨ（Bose-Chaudhuri-Hocquenghem）符号化等の巡回符号、ハミング符号、又は、低密度パリティ検査符号（Low Density Parity Check code, LDPC）を利用することができるが、これに限られるものではない。
【００６２】
本発明装置１では、メモリセルアレイ１１０に記憶されるべきデータは、エンコーダ回路１０３によって、複数ビットを有する情報ビット毎に誤り訂正符号化がされ、検査ビットが付加された符号化データがメモリセルアレイに記憶されるため、メモリセルアレイに記憶されるデータを読み出すにあたっては、当該符号化データ単位で、複数のメモリセルの情報をまとめて読み出す必要がある。このとき、情報ビットと検査ビットは夫々別のバンクに保存するようにしても、同一のバンク内に保存するようにしても、どちらでも構わない。また、情報ビットの各ビットが、バンク毎に分割して保存されるようにしても構わない。
【００６３】
以下に、可変抵抗素子Ｒのスイッチング特性（可変抵抗特性）とデータ保持特性との関係について説明する。ここで、スイッチング特性とは、二端子構造の可変抵抗素子の両端子間に電圧パルスを印加し、可変抵抗素子の抵抗特性を二以上の抵抗状態間で遷移させる場合の電圧パルスの印加条件と可変抵抗素子の抵抗状態との間の関係をいう。
【００６４】
第１電極として窒化チタン（ＴｉＮ）、第２電極としてタンタル（Ｔａ）を用い、当該第１電極と第２電極の間に酸化ハフニウムで構成される可変抵抗体を挟持した可変抵抗素子Ｒを備えるメモリセルＭに対し、第１書き換え動作における電圧印加条件を、選択トランジスタＴ（Ｗ＝１．８μｍ）のゲート電圧を＋１．７Ｖ、選択ソース線を＋０Ｖに設定した状態で、＋５．０Ｖ、５０ｎｓｅｃの書き換え電圧パルスを選択ビット線側から印加して、可変抵抗素子Ｒの抵抗状態を低抵抗状態に遷移させた。その後、第２書き換え動作における電圧印加条件として、選択トランジスタのゲート電圧を＋９．０Ｖ、選択ビット線を＋０Ｖに設定した状態で、選択ソース線側から、電圧振幅が異なる電圧パルスを印加して可変抵抗素子Ｒの抵抗状態を高抵抗状態に遷移させた。このときの第２書き換え動作における電圧パルスの電圧振幅と遷移後の抵抗状態の抵抗値との関係を図３に示す。
【００６５】
図３に示すように、可変抵抗素子Ｒは、印加される電圧パルスの電圧振幅が第１の電圧範囲（印加時間が１０ｎｓｅｃの場合、１．８Ｖ以下）にあるときは抵抗値が低抵抗状態から大きく変化せず略一定の第１の抵抗変化を示す。しかしながら、当該電圧振幅を上昇させるに従って、当該電圧振幅が第２の電圧範囲（印加時間が１０ｎｓｅｃの場合、１．８Ｖ〜２．５Ｖ）にあるときは抵抗値が所定のピーク値に向って上昇する第２の抵抗変化、及び、当該電圧振幅が第３の電圧範囲（印加時間が１０ｎｓｅｃの場合、２．５Ｖ以上）にあるときは抵抗値が前記ピーク値から前記低抵抗状態の抵抗値に向って減少する第３の抵抗変化を、順に示す。
【００６６】
また、印加される書き換え電圧パルスのパルス印加時間を変えて同様の実験を行った場合、図３から、パルス印加時間が長いほど抵抗値がピーク値をとる書き換え電圧パルスの電圧振幅が減少し、印加電圧の変化に応じた抵抗値の増減が急峻となることが分かる。
【００６７】
更に、第１書き換え動作における電圧印加条件を、選択トランジスタＴのゲート電圧を＋１．６Ｖ、選択ソース線を＋０Ｖに設定した状態で、＋５．０Ｖ、５０ｎｓｅｃの書き換え電圧パルスを選択ビット線側から印加して、可変抵抗素子Ｒの抵抗状態を低抵抗状態に遷移させた。その後、第２書き換え動作における電圧印加条件として、選択トランジスタのゲート電圧を＋９．０Ｖ、選択ビット線を＋０Ｖに設定した状態で、パルス印加時間を５０ｎｓｅｃに固定し、選択ソース線側から電圧振幅が夫々異なる電圧パルスを印加して可変抵抗素子Ｒの抵抗状態を高抵抗状態に遷移させた。このときの第１書き換え動作後の低抵抗状態と第２書き換え動作後の高抵抗状態の抵抗値の関係を図４に示す。
【００６８】
図４に示すスイッチング特性を有する可変抵抗素子Ｒに対し、１５０℃の熱に長時間晒した。このときの加熱時間と抵抗値の関係を図５及び図６に示す。図５は第２書き換え動作の印加電圧パルスの電圧振幅が第２の電圧範囲（１．５Ｖまたは１．６Ｖ）の場合、図６は第２書き換え動作の印加電圧パルスの電圧振幅が第３の電圧範囲（１．８Ｖまたは１．９Ｖ）の場合の結果である。
【００６９】
図５から、第２書き換え動作の印加電圧パルスの電圧振幅が第２の電圧範囲内にある場合、長時間の加熱によって抵抗値は増加傾向にある。これに対し、図６から、第２書き換え条件の印加電圧パルスの電圧振幅が第３の電圧範囲内にある場合、長時間の加熱によって抵抗値は減少傾向にあることが分かる。
【００７０】
従って、印加電圧パルスの電圧振幅が第２の電圧範囲内にある条件で第２書き換え動作を行えば、長期間保持後の使用時のデータ誤りは、低抵抗状態（“０”状態）であるべきビットが高抵抗化し“１”状態に変化した誤りに限られる。
【００７１】
本発明では、上記の特性を利用し、ＥＣＣの符号化データの誤り検出において誤りが発見された場合は、低抵抗状態（“０”状態）であるべきビットが高抵抗状態（“１”状態）に変化した誤りであると推定し、誤りが検出されたメモリセルの可変抵抗素子の抵抗状態を判断する工程を省略するとともに、誤りが発見された全ての可変抵抗素子の抵抗状態を訂正するための書き込み動作を、低抵抗状態へ遷移させるための書き換え電圧パルスを印加することで実行する。これにより、訂正動作に要する時間を大幅に短縮することが可能となる。
【００７２】
次に、本発明装置１の符号化データの誤り検出、及び訂正書き込み方法について、図７のフローチャートを参照して説明する。
【００７３】
先ず、メモリコントローラ部１０２に、読み出し対象のメモリセルのアドレスが入力される（ステップ＃２００）。
【００７４】
すると、メモリコントローラ部１０２内のコントローラ１０４が、入力アドレスに対応する複数のメモリセルを特定し、当該複数のメモリセルに対して可変抵抗素子の抵抗状態を読み出し、符号化データの読み出しを行う（ステップ＃２０１：読み出し動作）。好適には、当該入力アドレスを開始アドレスとして、同一のワード線に接続する複数のメモリセルを、符号化データのビット数に相当する数だけ選択し、当該複数のメモリセルに接続する複数のビット線に同時に読み出し電圧を印加する。或いは、当該複数のメモリセルに共通に接続するソース線から読み出し電圧を印加しても構わない。このときの読み出し電圧としては第１及び第２書き換え動作における書き換え電圧パルスよりも低い電圧（例えば、０．３Ｖ）とする。
【００７５】
尚、当該読み出し電圧パルスの電圧振幅は、第１或いは第２の書き換え電圧動作における書き換え電圧パルスよりも絶対値が低く、可変抵抗素子の抵抗値が大きく変動しない電圧であればどのような電圧を用いてもよい。
【００７６】
次に、デコーダ回路１０５が、読み出された符号化データを復号化する（ステップ＃２０２：復号化動作）。
【００７７】
次に、デコーダ回路１０５が、誤り訂正符号に基づき、復号化されたデータ内に誤りがあるかどうかを検出する（ステップ＃２０３：誤り検出動作）。誤りが検出された場合、誤り訂正符号に基づいて、ＥＣＣ回路１０６が、データ誤りのあったアドレスを特定する。
【００７８】
ステップ＃２０３でデータの誤りが検出された場合、誤りが検出されたアドレスのメモリセルの可変抵抗素子に書き換え電圧パルスを印加し、符号化データの誤りを訂正する（ステップ＃２０４：訂正書き込み動作）。このとき、誤りは“０”であるべきビットが“１”になっている場合に限られるため、誤りが検出された全てのメモリセルに対して、可変抵抗素子を“０”状態に書き換えるための書き換え電圧パルスを印加すればよい。即ち、誤りが検出された全てのメモリセルに対して、第１書き換え動作を行うだけでよい。
【００７９】
尚、このとき第１書き換え動作を実行する前に第２書き換え動作を実行し、誤りが検出されたメモリセルの可変抵抗素子の抵抗状態を、一旦 “１”状態に遷移させてから“０”状態への書き換えを行うことで、より精確に可変抵抗素子の誤り訂正を行うことができる。
【００８０】
ステップ＃２０３でデータの誤りが検出された場合、ステップ＃２０４において、誤りが検出されたアドレスのメモリセルの可変抵抗素子に第１の書き換え電圧パルスを印加し、データの誤りを訂正する訂正書き込み動作を行うとともに、更に、当該訂正書き込み動作と並行して、出力制御回路１０７が、読み出したデータの誤りビットのデータを反転させ、真のデータを出力する。このとき、データの誤りは“０”であるべきビットが“１”になっている場合に限られるため、出力制御回路１０７は、全ての誤りビットに対して“０”を出力する動作を行う（読み出し出力動作）。
【００８１】
読み出し出力動作の実行中は、少なくとも同一バンク内のメモリセルに対して新たな読み出し動作を行わないため、当該読み出し出力動作の実行中の時間に訂正書き込み動作を実行させることで、高速なデータの読み出しを実現することができる。
【００８２】
〈第２実施形態〉
本発明装置１の符号化データの誤り検出、及び訂正書き込み方法について、更に別のフローチャートを図８に示す。図８に示すフローチャートでは、読み出し動作の後、復号化動作の前に、読み出された情報ビットの符号化により生成される検査ビットと、読み出された検査ビットとを比較することで誤りの検出を行い、双方の検査ビットが一致する場合、誤りはないと判定し、誤り訂正を行わない。双方の検査ビットが不一致の場合に限り、復号化動作を行い、誤り訂正符号に基づき、データ誤りのあったアドレスを特定する。
【００８３】
先ず、図８において、メモリコントローラ部１０２に、読み出し対象のメモリセルのアドレスが入力される（ステップ＃３００）と、メモリコントローラ部１０２内のコントローラ１０４が、入力アドレスに対応する複数のメモリセルを特定し、当該複数のメモリセルに対して可変抵抗素子の抵抗状態を読み出し、符号化データの読み出しを行う（ステップ＃３０１：読み出し動作）。これらは、夫々、第１実施形態（図７）におけるアドレス入力動作（ステップ＃２００）、及び、読み出し動作（ステップ＃２０１）と同様であり、詳細な説明を割愛する。
【００８４】
次に、エンコーダ回路１０３が、ステップ＃３０１において読み出された符号化データのうち情報ビットを誤り訂正符号化し、当該読み出された情報ビットに対する検査ビットを生成する（ステップ＃３０２：第２符号化動作）。
【００８５】
すると、コントローラ１０４が、ステップ＃３０１において読み出された符号化データのうち検査ビットと、ステップ＃３０２において生成された検査ビットを比較し、両者が一致するか否かを判定する（ステップ＃３０３：比較動作）。両者が一致する場合、データ誤りはないとみなし、データ訂正を行わず、動作を完了する。
【００８６】
ステップ＃３０３で検査ビット同士が不一致の場合、デコーダ回路１０５が、読み出された符号化データを復号化し、誤り訂正符号に基づいて、ＥＣＣ回路１０６が、データ誤りのあったアドレスを特定する（ステップ＃３０４：復号化動作）。
【００８７】
そして、誤りが検出されたアドレスのメモリセルの可変抵抗素子に書き換え電圧パルスを印加し、符号化データの誤りを訂正する（ステップ＃３０５：訂正書き込み動作）。更に、当該訂正書き込み動作と並行して、出力制御回路１０７が、読み出したデータの誤りビットのデータを反転させ、真のデータを出力する。当該動作は、第１実施形態（図７）における訂正書き込み動作および読み出し出力動作（ステップ＃２０４）と同様であり、詳細な説明を割愛する。
【００８８】
上記の誤り検出および誤り訂正方法では、処理に非常に時間のかかる復号化動作を極力行わないため、高い信頼性を維持しながら、読み出し動作に要する時間を短縮することができる。
【００８９】
〈第３実施形態〉
上述の通り、本発明装置１は、ＥＣＣの誤り検出動作においてデータの誤りが検出された場合、誤り訂正符号に基づき、メモリセルアレイ内の当該誤りが検出されたアドレスのメモリセルに対して第１書き換え動作を実行する構成である。一方で、高温で長時間動作させるといった場合、データ保持力の弱いビットで誤りが検出される可能性が増大する。
【００９０】
図９は、第１電極として窒化チタン（ＴｉＮ）、第２電極としてタンタル（Ｔａ）を用い、当該第１電極と第２電極の間に酸化ハフニウムで構成される可変抵抗体を挟持した２５６ビットの上述の可変抵抗素子Ｒに対して、第１書き換え動作により低抵抗状態に遷移させた後の高温におけるデータ保持特性を、抵抗値の上昇によりデータを保持できなくなったエラービットの累積確率として、使用温度が１２０℃、１３５℃、１５０℃の場合に示すものである。図９に示すように、メモリセルの温度が高温になるほど、短時間でエラーが起きるビット数が増大する。このため、メモリ使用中は、定期的に訂正書き込み動作を行い、メモリセルに保持されている記憶状態をリフレッシュしておくことが好ましい。
【００９１】
図１０に本発明の一実施形態に係る半導体記憶装置（以降、適宜「本発明装置２」と称す）の概略の回路構成を示す。本発明装置２は、本発明１と同様、メモリセルアレイ部１０１とメモリコントローラ部１０２で構成され、メモリコントローラ部１０２は、エンコーダ回路１０３、コントローラ１０４、及び、ＥＣＣ回路１０６と出力制御回路１０７とを備えたデコーダ回路１０５を備えてなる。更に、本発明装置２は、カウンタ１０８、及び、リフレッシュコントローラ１０９を、メモリコントローラ部１０２内に備えてなる。
【００９２】
リフレッシュコントローラ１０９は、所定の周期毎にカウンタ１０８の動作のためのクロック信号を生成し、カウンタ１０８に出力する。
【００９３】
カウンタ１０８は、リフレッシュコントローラ１０９からのクロック信号を受けるたびにカウント値を増加させる。当該カウント値が所定値に達すると、カウンタ１０８は、当該カウント値をリセットするとともに、メモリセルに保持されている記憶状態を読み出させリフレッシュ動作を行わせるためのリフレッシュ要求信号を、コントローラ１０４に出力する。そして、当該リフレッシュ要求信号を受け、コントローラ１０４が、リフレッシュ動作を行うようにメモリセルアレイ部１０１を制御する。これにより、所定の設定周期毎に、定期的にリフレッシュ動作を行うことができる。
【００９４】
以下に、本発明装置２のリフレッシュ動作について、図１１のフローチャートを参照して説明する。
【００９５】
カウンタ１０８は、カウント値をリフレッシュコントローラからの信号に応じて増加させ、カウント値が所定値に達すると、リフレッシュ要求信号をメモリコントローラ部１０２内のコントローラ１０４に出力する（ステップ＃４００：リフレッシュ要求）。
【００９６】
すると、コントローラ１０４は、リフレッシュ要求信号を受け、リフレッシュ動作対象の複数のメモリセルを指定し、当該複数のメモリセルに対して可変抵抗素子の抵抗状態を読み出し、符号化データの読み出しを行う（ステップ＃４０１：読み出し動作）。
【００９７】
次に、デコーダ回路１０５が、読み出された符号化データを復号化する（ステップ＃４０２：復号化動作）。
【００９８】
次に、デコーダ回路１０５が、誤り訂正符号に基づき、復号化されたデータ内に誤りがあるかどうかを検出する（ステップ＃４０３：誤り検出動作）。誤りが検出された場合、誤り訂正符号に基づいて、ＥＣＣ回路１０６が、データ誤りのあったアドレスを特定し、符号化データの誤りを、誤りが検出されたメモリセルに対して第１書き換え動作を行うことで訂正する（ステップ＃４０４：訂正書き込み動作）。
【００９９】
尚、上記ステップ＃４０１における読み出し動作、上記ステップ＃４０２における復号化動作、及び、上記ステップ＃４０３における訂正書き込み動作は、夫々、図７のフローチャートに示す読み出し動作、復号化動作、及び、訂正書き込み動作と略同様であるため、詳細な説明を割愛した。
【０１００】
また、読み出し動作（ステップ＃４０１）後の各動作については、図７の復号化動作（ステップ＃２０２）、誤り検出動作（ステップ＃２０３）、及び、訂正書き込み動作（ステップ＃２０４）に従って動作する代わりに、図８の第２符号化動作（ステップ＃３０２）、比較動作（ステップ＃３０３）、復号化動作（ステップ＃３０４）、及び、訂正書き込み動作（ステップ＃３０５）に従って動作する構成としてもよい。
【０１０１】
図１２に示す半導体記憶装置（以降、適宜「本発明装置３」と称す）は、本発明装置２の他の構成例を示す概略の回路構成図であり、リフレッシュコントローラ１０９内部に、モードレジスタ１１４を備える。
【０１０２】
モードレジスタ１１４には、複数の動作モードのうちの一の動作モードが、検知された温度に応じて保持されている。当該動作モードに応じて、リフレッシュコントローラ１０９により生成されるカウンタ１０８の動作クロックが変更され、これによりリフレッシュ要求信号の周期が変更される構成である。
【０１０３】
図９より、メモリセルの温度が高温になるほど、エラーが起きる可能性は増大する。従って、リフレッシュ要求信号の周期が、温度上昇に伴い単調に減少するように設定しておくことで、リフレッシュ動作を効率的に行うことができる。
【０１０４】
また、メモリセルの温度が低温の場合、リフレッシュ要求信号の周期を長めに設定することができるため、温度が低いほどリフレッシュ動作の回数は少なくて済み、結果として消費電力を低減できる。
【０１０５】
以下に、別実施形態について説明する。
【０１０６】
〈１〉上記実施形態では、メモリセルアレイ１１０が４つのバンク１１０ａ〜１１０ｄのからなる場合について説明したが、本発明はこれに限られるものではない。本発明は、メモリセルアレイ１１０が複数のバンクに分割されていない場合にも勿論利用可能であるし、目的や必要とされる性能に応じてバンク数を適宜増減させることができる。
【０１０７】
〈２〉また、各バンク１１０ａ〜１１０ｄのメモリセルアレイの構成については、図２に示した回路構成に限定されるわけではなく、可変抵抗素子と電流制御素子を備えたメモリセルをビット線とワード線を用いて夫々接続し、メモリセルアレイを成していれば、特にその回路構成について本発明が限定されるものではない。尚、図２では電流制限素子としてトランジスタを用いているが、可変抵抗素子に流れる電流を制限できるものであればトランジスタ以外のもの（例えば、ダイオード）を用いることができる。また、本実施形態では、可変抵抗素子のトランジスタと接続しない一端をビット線に接続しているが、可変抵抗素子のトランジスタと接続しない一端をソース線に接続する構成であっても構わない。本発明は、金属酸化物で構成される可変抵抗素子をメモリセルに備え、所望のメモリセル数を有する任意のメモリセルアレイに適用可能である。
【０１０８】
〈３〉また、上記実施形態において、メモリセルアレイ１１０が複数のバンクから構成される場合には、符号化データの読み出し動作と、別のバンクに属するメモリセルの訂正書き込み動作を同時並行して実行することで、メモリ使用者にメモリセルの訂正にかかる時間を意識させないで済む訂正書き込み方法を実現できる。図１３に、複数のバンクを備えるメモリセルアレイ１１０における符号化データの誤り検出、及び訂正書き込み動作のタイミングチャートを、例として示す。しかしながら、本発明の動作制御方法は当該タイミングチャートで示す動作に限られるものではない。
【０１０９】
図１３は、メモリセルアレイ１１０に記憶されたデータを読み出して出力する際に、制御クロックの動作サイクルにおいて、アドレス入力（Ａ）、読み出し動作（Ｒ）、復号化動作（Ｄ）、誤り検出動作（Ｅ）、及び、訂正書き込み動作と読み出し出力動作（Ｗ／Ｏ）の５つの動作シークエンスを、夫々１サイクルで行うものとなっている。尚、夫々の動作シークエンスは上述の図７におけるステップ＃２００〜＃２０４の各動作に対応している。
【０１１０】
尚、図１３において、各動作サイクルｔ１〜ｔ１６は、制御クロックの一クロックで各動作が完了するものとなっているが、各動作に制御クロックの複数クロックを要する場合がある。その場合、図１３の各動作サイクルｔ１〜ｔ１６は、各動作に要する最多の制御クロック数により定まる、同一の時間間隔とする。また、図１３では、図面が煩雑になるのを避けるため、各動作サイクルに含まれる複数の制御クロックをまとめて一クロックとして説明している。図１２において、各動作サイクルｔ１〜ｔ１６は、夫々、図に示すクロックの立ち上がりタイミングで開始するものとし、各動作サイクルｔｉ（ｉ＝１〜１６）の開始時刻を、夫々、時刻ｔｉと称する。これは、以降の図１４と図１５に示されるタイミングチャートについても同様とする。
【０１１１】
動作サイクルｔ２において、バンク１に対する読み出しアドレスが指定されると、動作サイクルｔ３において、当該読み出しアドレスに基づき特定される複数のメモリセルに対して、読み出し動作（ステップ＃２０１）を行い、符号化データを読み出す。
【０１１２】
一方、動作サイクルｔ３において、バンク２に対する読み出しアドレスが指定されると、動作サイクルｔ４において、当該読み出しアドレスに基づき特定される複数のメモリセルに対して、読み出し動作（ステップ＃２０１）を行い、符号化データを読み出す。このとき、バンク１における読み出したデータの復号化動作（ステップ＃２０２）が、バンク２における読み出し動作と並行して実行されている。
【０１１３】
一方、動作サイクルｔ４において、バンク３に対する読み出しアドレスが指定されると、動作サイクルｔ５において、当該読み出しアドレスに基づき特定される複数のメモリセルに対して、読み出し動作（ステップ＃２０１）を行い、符号化データを読み出す。このとき、バンク１における誤り検出動作（ステップ＃２０３）、及び、バンク２における読み出したデータの復号化動作（ステップ＃２０２）が、バンク３における読み出し動作と並行して実行されている。
【０１１４】
一方、動作サイクルｔ５において、バンク４に対する読み出しアドレスが指定されると、動作サイクルｔ６において、当該読み出しアドレスに基づき特定される複数のメモリセルに対して、読み出し動作（ステップ＃２０１）を行い、符号化データを読み出す。このとき、バンク１における訂正書き込み動作と読み出し出力動作（ステップ＃２０４）、バンク２における誤り検出動作（ステップ＃２０３）、及び、バンク３における読み出したデータの復号化動作（ステップ＃２０２）が、バンク４における読み出し動作と並行して実行されている。
【０１１５】
このとき、バンク１における訂正書き込み動作とバンク４における読み出し動作は、夫々異なるバンクの動作であるため同時に実行することが可能であり、各動作を並列に処理することで複数バンクに格納されたデータを効率よく読み出すことができる。
【０１１６】
これは以降の動作サイクルについても同様であり、動作サイクルｔ８においてバンク１における読み出し動作とバンク３における訂正書き込み動作が同時に実行され、動作サイクルｔ９においてバンク２における読み出し動作とバンク４における訂正動作が同時に実行され、動作サイクルｔ１１においてバンク４における読み出し動作とバンク１における訂正動作が同時に実行されることができる。
【０１１７】
尚、図１３では、アドレス入力（Ａ）、読み出し動作（Ｒ）、復号化動作（Ｄ）、誤り検出動作（Ｅ）、及び、訂正書き込み動作と読み出し出力動作（Ｗ／Ｏ）の５つの動作シークエンスで動作させているが、同一サイクル内でバンク同士の動作が重複しない範囲内において、シーケンスを追加することができる。
【０１１８】
図１４は、符号化データのビット数が多いため、符号化データの読み出しを完了するのに二サイクル分の動作サイクルを必要とする場合のタイミングチャートである。尚、この場合であっても、訂正書き込み動作（Ｗ）は、誤りが検出された高々数ビットのメモリセルに対し第１書き換え動作を行えばよいため、一動作サイクルで完了することが可能である。動作サイクルｔ７、ｔ９、ｔ１１、ｔ１３、ｔ１５、及びｔ１７において、異なるバンクにおける読み出し動作（Ｒ）と訂正書き込み動作（Ｗ）が、並列して実行されている。
【０１１９】
図１５は、訂正動作（Ｗ）において、第１書き換え動作（Ｗ１）の前に第２書き換え動作（Ｗ２）を実行し、夫々の書き換え動作の実行に一動作サイクルを必要とする場合のタイミングチャートである。尚、この場合、第１書き換え動作（Ｗ１）と第２書き換え動作（Ｗ２）は、書き換え対象のバンクが異なる場合、並行して書き換え電圧パルスを印加することが可能である。従って、図１５の動作サイクルｔ９では、バンク１における読み出し動作、バンク３における訂正書き込み動作のうち第１書き換え動作（Ｗ１）、及び、バンク４における訂正書き込み動作のうち第２の書き換えパルスの印加（Ｗ２）が、同時に、並列して実行されている。
【０１２０】
また、図１５では、読み出し出力動作（Ｏ）は、訂正書き込み動作の第２書き換え動作（Ｗ２）と同時に実行しているが、訂正書き込み動作の第１書き換え動作（Ｗ１）と同時に実行しても構わない。
【０１２１】
尚、図１３〜図１５に示したタイミングチャートは、各バンク毎の動作が図７のフローチャートに基づいて実行される場合を例とするものであるが、図８のフローチャートに基づいて実行される場合についても、同様に、符号化データの読み出し動作と、別のバンクに属するメモリセルの訂正書き込み動作を同時並行して実行することができる。
【０１２２】
〈４〉上記実施形態において、読み出し動作、第１書き換え動作、第２書き換え動作の説明で用いた電圧パルスの電圧値やパルス幅は本発明を説明するための具体例であり、可変抵抗素子の特性を限定するものではない。同様に、図３、図４に示される低抵抗状態および高抵抗状態の抵抗値、抵抗特性の第１〜第３の電圧範囲についても本発明を説明するための一例にすぎず、可変抵抗素子の特性を限定するものではない。
【０１２３】
〈５〉上記第２実施形態において、本発明装置３は、温度に応じてモードレジスタ１１４の動作モードが変更されると、カウンタ１０８の動作クロックの周期が変更され、これによりリフレッシュ要求信号が生成される周期が変更される構成であるが、本発明はこれに限られるものではなく、カウンタ１０８の動作クロックの周期を一定とし、温度に応じてモードレジスタ１１４の動作モードが変更されると、カウンタ１０８がリフレッシュ要求信号を出力するカウント値が変更され、これによりリフレッシュ要求信号が生成される周期が変更される構成とすることもできる。
【産業上の利用可能性】
【０１２４】
本発明は、半導体記憶装置に利用可能であり、特に電気的ストレスの印加によって抵抗状態が遷移し、当該遷移後の抵抗状態を情報の記憶に用いる可変抵抗素子を備えてなる不揮発性の半導体記憶装置に利用可能である。
【符号の説明】
【０１２５】
１〜３：  本発明に係る半導体記憶装置
１０１：  メモリセルアレイ部
１０２：  メモリコントローラ部
１０３：  エンコーダ回路
１０４：  コントローラ
１０５：  デコーダ回路
１０６：  ＥＣＣ回路
１０７：  出力制御回路
１０８：  カウンタ
１０９：  リフレッシュコントローラ
１１０、１１０ａ〜１１０ｄ：  メモリセルアレイ
１１１：  ビット線選択回路（列選択回路）
１１２：  ワード線選択回路（行選択回路）
１１３：  ソース線選択回路
１１４：  モードレジスタ
ＢＬ１〜ＢＬｎ：  ビット線
Ｍ：      メモリセル
Ｒ：      可変抵抗素子
ＳＬ１〜ＳＬｎ：  ソース線
Ｔ：      トランジスタ（電流制限素子）
ＷＬ１〜ＷＬｎ：  ワード線
【図１】
0005269151.tif 000002
【図２】
0005269151.tif 000003
【図３】
0005269151.tif 000004
【図４】
0005269151.tif 000005
【図５】
0005269151.tif 000006
【図６】
0005269151.tif 000007
【図７】
0005269151.tif 000008
【図８】
0005269151.tif 000009
【図９】
0005269151.tif 000010
【図１０】
0005269151.tif 000011
【図１１】
0005269151.tif 000012
【図１２】
0005269151.tif 000013
【図１３】
0005269151.tif 000014
【図１４】
0005269151.tif 000015
【図１５】
0005269151.tif 000016