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