(57)【要約】【課題】メモリセルに多値データを記憶させて使用する場合、メモリセルに保持されるデータの信頼性を向上させる。【解決手段】一の実施の形態に係る不揮発性半導体記憶装置は、第１配線と第２配線との間に配置され、且つ、可変抵抗素子を含むメモリセルを配列してなるメモリセルアレイと、前記メモリセルに対する電圧印加動作により、１つの前記メモリセルに対して複数の抵抗値分布を設定することにより２ビット以上のデータを書き込み可能に構成された制御回路とを備える。前記制御回路は、前記データに対応する第１抵抗値分布と前記第１抵抗値分布よりも抵抗値が大きい第２抵抗値分布とを設定し、前記第１抵抗値分布の上限値である第１上限値と下限値である第１下限値の第１の幅よりも、前記第２抵抗値分布の上限値である第２上限値と下限値である第２下限値の第２の幅のほうが大きくなるように設定するよう構成されている。【選択図】図６
2015076118.tif 000002
【特許請求の範囲】
【請求項１】
第１配線と第２配線との間に配置され、且つ、可変抵抗素子を含むメモリセルを配列してなるメモリセルアレイと、
前記メモリセルに対する電圧印加動作により、１つの前記メモリセルに対して複数の抵抗値分布を設定することにより２ビット以上のデータを書き込み可能に構成された制御回路と
を備え、
前記制御回路は、前記データに対応する第１抵抗値分布と前記第１抵抗値分布よりも抵抗値が大きい第２抵抗値分布とを設定し、前記第１抵抗値分布の上限値である第１上限値と下限値である第１下限値の第１の幅よりも、前記第２抵抗値分布の上限値である第２上限値と下限値である第２下限値の第２の幅のほうが大きくなるように設定するよう構成された
ことを特徴とする不揮発性半導体記憶装置。
【請求項２】
前記制御回路は、前記第２抵抗値分布よりも抵抗値が大きい第３抵抗値分布を設定するよう構成され、前記第１抵抗値分布の前記第１上限値と前記第２抵抗値分布の前記第２下限値との幅を、前記第２抵抗値分布の前記第２上限値と前記第３抵抗値分布の下限値である第３下限値との幅よりも小さくするように設定するよう構成された
ことを特徴とする請求項１記載の不揮発性半導体記憶装置。
【請求項３】
前記制御回路は、前記メモリセルの抵抗値が前記抵抗値分布の間の所定の読み出し抵抗値より大きいか否かを判定する読み出し動作を実行可能に構成され、
前記第１抵抗値分布と前記第２抵抗値分布との間に第１読み出し抵抗値を設定し、前記第２抵抗値分布と前記第３抵抗値分布との間に第２読み出し抵抗値を設定し、前記第３抵抗値分布の上限値である第３上限値よりも大きい第３読み出し抵抗値を設定したとき、
前記制御回路は、前記第１読み出し抵抗値と前記第２読み出し抵抗値との幅を、前記第２読み出し抵抗値と前記第３読み出し抵抗値との幅よりも小さくするように設定するよう構成された
ことを特徴とする請求項２記載の不揮発性半導体記憶装置。
【請求項４】
前記制御回路は、各前記抵抗値分布を対数変換して各前記抵抗値分布の幅を決定するよう構成された
ことを特徴とする請求項１記載の不揮発性半導体記憶装置。
【請求項５】
前記制御回路は、前記第１抵抗値分布への書き込み動作の際、抵抗値が前記第１抵抗値分布の前記第１下限値より低い第１メモリセルの個数が所定値以上であった場合、前記第１メモリセルに対して抵抗値を高くする第１動作を行い、
前記制御回路は、前記第１動作の後、抵抗値が前記第１抵抗値分布の前記第１上限値より高い第２メモリセルの個数が所定値以上であった場合、前記第２メモリセルに対して抵抗値を低くする第２動作を行う
ことを特徴とする請求項１記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載の実施の形態は、不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
近年、半導体記憶装置の集積度が高くなることに伴い、これを構成するメモリセルはますます微細化している。近年、抵抗変化メモリが注目されている。このような抵抗変化メモリにおいて、メモリセルに多値データを記憶させて使用する場合、メモリセルに保持されるデータの信頼性を向上させることが必要とされる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−９９０２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以下に記載の実施の形態は、メモリセルに多値データを記憶させて使用する場合、メモリセルに保持されるデータの信頼性を向上させるものである。
【課題を解決するための手段】
【０００５】
以下に説明する実施の形態に係る不揮発性半導体記憶装置は、第１配線と第２配線との間に配置され、且つ、可変抵抗素子を含むメモリセルを配列してなるメモリセルアレイと、前記メモリセルに対する電圧印加動作により、１つの前記メモリセルに対して複数の抵抗値分布を設定することにより２ビット以上のデータを書き込み可能に構成された制御回路とを備える。前記制御回路は、前記データに対応する第１抵抗値分布と前記第１抵抗値分布よりも抵抗値が大きい第２抵抗値分布とを設定し、前記第１抵抗値分布の上限値である第１上限値と下限値である第１下限値の第１の幅よりも、前記第２抵抗値分布の上限値である第２上限値と下限値である第２下限値の第２の幅のほうが大きくなるように設定するよう構成されている。
【図面の簡単な説明】
【０００６】
【図１】本発明の実施の形態に係る不揮発性半導体記憶装置のブロック図の一例である。
【図２】メモリセルアレイ１の一部の斜視図の一例である。
【図３】図２におけるＩ−Ｉ’線で切断して矢印方向に見たメモリセル１つ分の断面図の一例である。
【図４】メモリセルアレイ１の別の構成例を示す斜視図の一例である。
【図５】メモリセルアレイ１の別の構成例を示す断面図の一例である。
【図６】第１の実施の形態に係る不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図の一例である。
【図７】第１の実施の形態に係る不揮発性半導体記憶装置のデータ書き込み動作を説明するフローチャートの一例である。
【図８】第１の実施の形態に係る不揮発性半導体記憶装置のデータ書き込み動作を説明するフローチャートの一例である。
【図９】第１の実施の形態に係る不揮発性半導体記憶装置のデータ書き込み動作を説明するフローチャートの一例である。
【図１０】比較例に係る不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図の一例である。
【図１１】第２の実施の形態に係る不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図の一例である。
【図１２】メモリセルアレイ１の別の構成例を示す斜視図の一例である。
【発明を実施するための形態】
【０００７】
次に、本発明の実施の形態を、図面を参照して詳細に説明する。
【０００８】
［第１の実施の形態］
図１は、本発明の第１の実施の形態に係る不揮発性メモリのブロック図である。
【０００９】
この不揮発性メモリは、後述する可変抵抗素子を使用したメモリセルをマトリクス状に配置したメモリセルアレイ１を備える。
メモリセルアレイ１のビット線ＢＬ方向に隣接する位置には、メモリセルアレイ１のビット線ＢＬを制御し、メモリセルのデータ消去、メモリセルへのデータ書き込み、及びメモリセルからのデータ読み出しに必要な電圧を印加するカラム制御回路２が設けられている。
【００１０】
また、メモリセルアレイ１のワード線ＷＬ方向に隣接する位置には、メモリセルアレイ１のワード線ＷＬを制御し、メモリセルのデータ消去、メモリセルへのデータ書き込み、及びメモリセルからのデータ読み出しに必要な電圧を印加するロウ制御回路３が設けられている。
【００１１】
データ入出力バッファ４は、外部のホスト９にＩ／Ｏ線を介して接続され、書き込みデータの受け取り、消去命令の受け取り、読み出しデータの出力、アドレスデータやコマンドデータの受け取りを行う。
データ入出力バッファ４は、受け取った書き込みデータをカラム制御回路２に送り、カラム制御回路２から読み出したデータを受け取って外部に出力する。外部からデータ入出力バッファ４に供給されたアドレスは、アドレスレジスタ５を介してカラム制御回路２及びロウ制御回路３に送られる。
【００１２】
また、ホスト９からデータ入出力バッファ４に供給されたコマンドは、コマンド・インターフェース６に送られる。コマンド・インターフェース６は、ホスト９からの外部制御信号を受け、データ入出力バッファ４に入力されたデータが書き込みデータかコマンドかアドレスかを判断し、コマンドであれば受け取りコマンド信号としてステートマシン７に転送する。
【００１３】
ステートマシン７は、この不揮発性メモリ全体の管理を行うもので、ホスト９からのコマンドを、コマンド・インターフェース６を介して受け付け、読み出し、書き込み、消去、データの入出力管理等を行う。また、外部のホスト９は、ステートマシン７が管理するステータス情報を受け取り、動作結果を判断することも可能である。また、このステータス情報は書き込み、消去の制御にも利用される。また、ステートマシン７によってパルスジェネレータ８が制御される。この制御により、パルスジェネレータ８は任意の電圧、任意のタイミングのパルスを出力することが可能となる。
【００１４】
ここで、形成されたパルスはカラム制御回路２及びロウ制御回路３で選択された任意の配線へ転送することが可能である。なお、メモリセルアレイ１以外の周辺回路素子は配線層に形成されたメモリアレイ１の直下のＳｉ基板に形成可能であり、これにより、この不揮発性メモリのチップ面積はほぼ、メモリセルアレイ１の面積に等しくすることも可能である。
【００１５】
図２は、メモリセルアレイ１の一部の斜視図、図３は、図２におけるＩ−Ｉ’線で切断して矢印方向に見たメモリセル１つ分の断面図である。複数本の第１の配線としてワード線ＷＬ０〜ＷＬ２が平行に配設され、これと交差して複数本の第２の配線としてビット線ＢＬ０〜ＢＬ２が平行に配設され、これらの各交差部に両配線に挟まれるようにメモリセルＭＣが配置される。第１及び第２の配線は、熱に強く、且つ抵抗値の低い材料が望ましく、例えばＷ、ＷＳｉ、ＮｉＳｉ、ＣｏＳｉ等を用いることができる。
【００１６】
メモリセルＭＣは、図３に示すように、可変抵抗素子ＶＲとダイオードＤＩの直列接続回路からなる。ダイオードＤＩは一例として、図３に示すように、ｐ＋型層Ｄ１、ｎ−型層Ｄ２、及びｎ＋型層Ｄ３を備えたＰＩＮダイオードからなる。ここで、「＋」「−」の符号は、不純物濃度の大小を示している。また、ダイオードＤＩとして、ＰＮ接合ダイオード、ショットキーダイオード等の各種ダイオード、ＭＩＭ（Ｍｅｔａｌ−Ｉｎｓｕｌａｔｏｒ−Ｍｅｔａｌ）構造、ＳＩＳ構造（Ｓｉｌｉｃｏｎ−Ｉｎｓｕｌａｔｏｒ−Ｓｉｌｉｃｏｎ）等を用いることもできる。
【００１７】
可変抵抗素子ＶＲは、例えば遷移金属の酸化物（例えば酸化ハフニウム（ＨｆＯｘ））の薄膜から構成される。可変抵抗素子ＶＲとして、ハフニウム以外の他の遷移金属（クロム（Ｃｒ）、タングステン（Ｗ）、バナジウム（Ｖ）、ニオブ（Ｎｂ）、タンタル（Ｔａ）、チタン（Ｔｉ）、ジルコニウム（Ｚｒ）、スカンジウム（Ｓｃ）、イットリウム（Ｙ）、トリウム（Ｔｒ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）、銅（Ｃｕ）、亜鉛（Ｚｎ）、カドミウム（Ｃｄ）、アルミニウム（Ａｌ）、ガリウム（Ｇａ）、錫（Ｓｎ）、鉛（Ｐｂ）、アンチモン（Ｓｂ）、ビスマス（Ｂｉ））の酸化物を用いることも可能である。またランタン（Ｌａ）からルテチウム（Ｌｕ）までの希土類元素の酸化物を用いることも可能である。
【００１８】
この可変抵抗素子ＶＲの上下の面には、第１電極ＥＬ１、第２電極ＥＬ２が配置される。第１電極ＥＬ１、第２電極ＥＬ２は、可変抵抗素子への接着層及びバリアメタルとして機能する。
また、ダイオードＤＩとビット線ＢＬとの間には、バリアメタル及び接着層として機能する電極ＥＬ３が形成されている。メモリセルＭＣは、図３に示すように、可変抵抗素子ＶＲとダイオードＤＩの直列接続回路からなる。
【００１９】
電極ＥＬ１、ＥＬ２及びＥＬ３の電極の材料としては、Ｐｔ、Ａｕ、Ａｇ、ＴｉＡｌＮ、ＳｒＲｕＯ、Ｒｕ、ＲｕＮ、Ｉｒ、Ｃｏ、Ｔｉ、ＴｉＮ、ＴａＮ、ＬａＮｉＯ、Ａｌ、ＰｔＩｒＯｘ、 ＰｔＲｈＯｘ、Ｒｈ、ＴａＡｌＮ、Ｗ等が用いられる。電極ＥＬ１、ＥＬ２、及びＥＬ３に加えて、配向性を一様にするようなメタル膜を挿入することもできる。
また、図４に示すように、上述したメモリ構造を積層した三次元構造とすることもできる。図５は、図４のＩＩ−ＩＩ’断面を示す断面図である。図示の例は、セルアレイ層ＭＡ０〜ＭＡ３からなる４層構造のメモリセルアレイで、ワード線ＷＬ０ｊがその上下のメモリセルＭＣ０、ＭＣ１で共有され、ビット線ＢＬ１ｉがその上下のメモリセルＭＣ１、ＭＣ２で共有され、ワード線ＷＬ１ｊがその上下のメモリセルＭＣ２、ＭＣ３で共有されている。
【００２０】
また、このような配線／セル／配線／セルの繰り返しではなく、配線／セル／配線／層間絶縁膜／配線／セル／配線のように、セルアレイ層間に層間絶縁膜を介在させるようにしても良い。なお、メモリセルアレイ１は、幾つかのメモリセル群からなるマット（ＭＡＴ）に分けられることも可能である。前述したカラム制御回路２及びロウ制御回路３は、ＭＡＴ毎、セクタ毎、又はセルアレイ層ＭＡ毎に設けられていても良いし、これらで共有しても良い。また、面積削減のために複数のビット線ＢＬで共有することも可能である。
【００２１】
［データ記憶状態］
次に、図６を参照して、本実施形態の不揮発性半導体記憶装置のデータ記憶状態について説明する。図６は、本実施の形態に係る不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図である。
本実施形態において、不揮発性半導体記憶装置のメモリセルＭＣは抵抗値に基づいて４値データを記憶するものとする。この場合、データに対応する抵抗値分布は図６に示すようになる。メモリセルＭＣは低抵抗側から順にＲ０レベル、Ｒ１レベル、Ｒ２レベル、Ｒ３レベルの抵抗値分布が設定されている。そして、これらの抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３に対して、データ“１１”、“０１”、“１０”、“００”が割り付けられる。なお、どのデータをどの抵抗値分布に割り付けるかは、任意に選択することができる。
【００２２】
以下の実施の形態の説明では、抵抗値分布を示す図において抵抗状態が低い側をセット側と呼び、抵抗状態が高い側をリセット側と呼ぶことがある。また、メモリセルＭＣの抵抗値を高くしてリセット側にある抵抗値分布に移動させる動作をリセット動作と呼び、メモリセルの抵抗値を低くしてセット側にある抵抗値分布に移動させる動作をセット動作と呼ぶことがある。
【００２３】
いわゆるバイポーラ型の抵抗変化メモリに対するデータのセット動作は、可変抵抗素子ＶＲに第１の極性のセット電圧を印加することにより行う。これにより、可変抵抗素子が高抵抗状態から低抵抗状態へと変化する。一方、データのリセット動作は、セット動作後の低抵抗状態の可変抵抗素子に対し、セット動作時の第１の極性とは逆の第２の極性のリセット電圧を印加することにより行う。これにより、可変抵抗素子ＶＲが低抵抗状態から高抵抗状態へと変化する。また、ユニポーラ型の抵抗変化メモリでは、セット電圧とリセット電圧の極性が同じで、その印加時間又は電圧値が異なる値に設定される。本実施の形態の不揮発性半導体記憶装置は、バイポーラ型及びユニポーラ型のいずれにも適用することが可能である。
【００２４】
複数の抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３に含まれるようにメモリセルＭＣの抵抗値を制御するため、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３にはベリファイレベルとなる抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３が設定されている。抵抗値ＶＵ０は、抵抗値分布Ｒ０の上限に対応する値である。抵抗値ＶＬ１及びＶＵ１は、抵抗値分布Ｒ１の下限及び上限にそれぞれ対応する値である。抵抗値ＶＬ２及びＶＵ２は、抵抗値分布Ｒ２の下限及び上限にそれぞれ対応する値である。抵抗値ＶＬ３は、抵抗値分布Ｒ３の下限に対応する値である。
【００２５】
本実施の形態において、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、以下のように設定されている。各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、抵抗値分布の幅を大きくするように設定される。図６に示すように、抵抗値分布Ｒ２の幅Ｌ１２は、セット側に位置する抵抗値分布Ｒ１の幅Ｌ１１よりも大きい（Ｌ１２＞Ｌ１１）。このように、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、リセット側に近づくにつれ、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の幅が大きくなるように設定される。
【００２６】
また、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、各抵抗値分布の間の距離を大きくするように設定される。図６に示すように、抵抗値分布Ｒ１と抵抗値分布Ｒ２との距離Ｌ０１は、セット側に位置する抵抗値分布Ｒ０と抵抗値分布Ｒ１との距離Ｌ００よりも大きい（Ｌ０１＞Ｌ００）。また、抵抗値分布Ｒ２と抵抗値分布Ｒ３との距離Ｌ０２は、セット側に位置する抵抗値分布Ｒ１と抵抗値分布Ｒ２との距離Ｌ０１よりも大きい（Ｌ０２＞Ｌ０１）。このように、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、リセット側に近づくにつれ、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の間の距離が大きくなるように設定される。
【００２７】
なお、最も抵抗値の低い抵抗値分布Ｒ０は、下限の抵抗値を設定せず、抵抗値ＶＵ０が設定されているだけでもよく、最も抵抗値の高い抵抗値分布Ｒ３は、上限の抵抗値を設定せずに、抵抗値ＶＬ３が設定されているだけでもよい。また、図６における抵抗状態を表す横軸は、通常の自然数軸であってもよいし、対数軸であってもよい。対数軸の場合、メモリセルＭＣの抵抗値分布は、抵抗値分布を対数変換した対数分布となる。上述の各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３の設定は、対数分布を基に決定される。そして、上述のように各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３を設定するためには、抵抗値分布は少なくとも３つあればよい。
【００２８】
［書き込み動作］
次に、図７を参照してメモリセルＭＣの抵抗状態を変化させて、メモリセルＭＣにデータを書き込む動作について説明する。図７は、本実施の形態に係る不揮発性半導体記憶装置のデータ書き込み動作を説明するフローチャートである。図７に示す例では、メモリセルＭＣが抵抗値分布Ｒ１に含まれるようにデータ書き込み動作を実行する例を説明するが、他の抵抗値分布に含まれるようにデータ書き込み動作を実行する場合でも同様である。なお、この書き込み動作は、複数のメモリセル（例えば、１０２４個のメモリセル）に対して同時にデータを書き込む動作を例に挙げて説明している。ただし、１個のメモリセルに対して書き込む場合であっても本動作を適用することは可能である。
【００２９】
動作が開始されると、まずメモリセルＭＣに対して書き込み電圧が印加される（ステップＳ１）。この書き込み電圧印加動作は、メモリセルＭＣの抵抗値を高くしてリセット側にある抵抗値分布に移動させるリセット動作であってもよいし、メモリセルの抵抗値を低くしてセット側にある抵抗値分布に移動させるセット動作であってもよい。メモリセルＭＣを抵抗値分布Ｒ０から目標とする抵抗値分布Ｒ１へと移動させるためにはリセット電圧を印加し、抵抗値分布Ｒ２、Ｒ３から目標とする抵抗値分布Ｒ１へと移動させるためにはセット電圧を印加する。
【００３０】
次に、書き込み電圧が印加されたメモリセルＭＣに対して読み出し動作を実行する（ステップＳ２）。この読み出し動作は、書き込み動作の対象であるメモリセルＭＣの抵抗値が、抵抗値分布Ｒ１の下限である抵抗値ＶＬ１未満であるか否かを読み出す動作である。
【００３１】
次に、抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が所定値Ｘ１未満であるか否かを判定する（ステップＳ３）。所定値Ｘ１は、ＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋ  ａｎｄ  Ｃｏｒｒｅｃｔｉｏｎ）により、救済することのできるデータを考慮して決定される。ステップＳ３において、抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が所定値Ｘ１以上である場合には、ステップＳ４に移動し、抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が所定値Ｘ１未満である場合にはステップＳ６に移動する。
【００３２】
抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が所定値Ｘ１以上である場合には、ＥＣＣ救済が困難であるため、抵抗値ＶＬ１未満のメモリセルＭＣに対しリセット電圧を印加してリセット側に移動させる必要がある。ステップＳ４では、このリセット電圧の印加回数が所定値Ｙ１未満であるか否かを判定する。所定値Ｙ１は、動作時間に基づいて許容することのできる印加回数を考慮して決定される。リセット電圧の印加回数が所定値Ｙ１未満である場合には、ステップＳ５に移動する。ここで、ステップＳ４にて、リセット電圧印加回数が所定値Ｙ１に到達した場合は、制御回路は書き込み動作失敗と判断して書き込み動作を終了する。
【００３３】
次に、抵抗値ＶＬ１未満のメモリセルＭＣにリセット電圧を印加する（ステップＳ５）。ステップＳ２からステップＳ５までのリセット動作を、リセット電圧印加回数が規定回数Ｙ１に到達するか、抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が規定値Ｘ１を下回るまで繰り返す。
次に、メモリセルＭＣに対して読み出し動作を実行する（ステップＳ６）。この読み出し動作は、書き込み動作の対象であるメモリセルＭＣの抵抗値が、抵抗値分布Ｒ１の上限である抵抗値ＶＵ１を超えているか否かを読み出す動作である。
【００３４】
次に、抵抗値が抵抗値ＶＵ１を超えているメモリセルＭＣの数が所定値Ｘ２未満であるか否かを判定する（ステップＳ７）。所定値Ｘ２は、ＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋ  ａｎｄ  Ｃｏｒｒｅｃｔｉｏｎ）により、救済することのできるデータを考慮して決定される。ステップＳ７において、抵抗値が抵抗値ＶＵ１を超えているメモリセルＭＣの数が所定値Ｘ２以上である場合には、ステップＳ８に移動し、抵抗値が抵抗値ＶＵ１を超えているメモリセルＭＣの数が所定値Ｘ２未満である場合にはデータ書き込みが正常に行われたと判断し、書き込み動作を終了する。
【００３５】
抵抗値が抵抗値ＶＵ１を超えているメモリセルＭＣの数が所定値Ｘ２以上である場合には、ＥＣＣ救済が困難であるため、抵抗値ＶＵ１を超えているメモリセルＭＣに対しセット電圧を印加してセット側に移動させる必要がある。ステップＳ８では、このセット電圧の印加回数が所定値Ｙ２未満であるか否かを判定する。所定値Ｙ２は、動作時間に基づいて許容することのできる印加回数を考慮して決定される。セット電圧の印加回数が所定値Ｙ２未満である場合には、ステップＳ９に移動する。ここで、ステップＳ８にて、セット電圧の印加回数が所定値Ｙ２に到達した場合は、制御回路は書き込み動作失敗と判断して書き込み動作を終了する。
【００３６】
次に、抵抗値ＶＵ１を超えているメモリセルＭＣにセット電圧を印加する（ステップＳ９）。ステップＳ６からステップＳ９までのセット動作を、セット電圧印加回数が規定回数Ｙ２に到達するか、抵抗値が抵抗値ＶＵ１を超えているメモリセルＭＣの数が規定値Ｘ２を下回るまで繰り返す。
【００３７】
上述のように、抵抗値が抵抗値ＶＬ１未満のメモリセルＭＣの数が所定値Ｘ１未満であり、且つ、抵抗値ＶＵ１を超えているメモリセルＭＣの数が所定値Ｘ２未満である場合にはデータ書き込みが正常に行われたと判断し、書き込み動作が終了する。また、ステップＳ４、及びステップＳ８にて、セット電圧印加回数が規定回数Ｙ１、Ｙ２に到達した場合は、制御回路は書き込み動作失敗と判断して書き込み動作を終了する。
なお、ステップＳ２からステップＳ５までのリセット動作と、ステップＳ６からステップＳ９までのセット動作とは、入れ替えることも可能である。
【００３８】
図７に示す例では、メモリセルＭＣが抵抗値分布Ｒ１に含まれるようにデータ書き込み動作を実行する例を説明した。他の抵抗値分布（例えば、抵抗値分布Ｒ２、Ｒ３）に含まれるようにデータ書き込み動作の場合も同様の動作により実行することができる。図８及び図９は、本実施の形態に係る不揮発性半導体記憶装置のデータ書き込み動作を説明するフローチャートである。
【００３９】
図８は、メモリセルＭＣが抵抗値分布Ｒ２に含まれるようにデータを書き込む場合の図であり、図９は、メモリセルＭＣが抵抗値分布Ｒ３に含まれるようにデータを書き込む場合の図である。
図８及び図９に示すように、抵抗値分布Ｒ２、Ｒ３に対応するようにしきい値となる抵抗値を変更する以外は、図７で示したメモリセルＭＣが抵抗値分布Ｒ１に含まれるようにデータ書き込み動作を実行する例と同様である。ただし、抵抗値分布Ｒ３に含まれるようにデータを書き込む場合、抵抗値の上限を設定する必要はないため、ステップＳ６からステップＳ９の工程を省略している。このようにして、図６に示すような抵抗値分布となるようにデータ書き込み動作を行う。
【００４０】
［効果］
次に、本実施の形態に係る不揮発性半導体記憶装置の効果について、比較例を参照して説明する。図１０は、比較例の不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図である。
【００４１】
比較例においても、複数の抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３に含まれるようにメモリセルＭＣの抵抗値を制御するため、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３にはベリファイレベルとなる抵抗値ＶＵ０’、ＶＬ１’、ＶＵ１’、ＶＬ２’、ＶＵ２’、ＶＬ３’が設定されている。抵抗値ＶＵ０’は、抵抗値分布Ｒ０の上限に対応する値である。抵抗値ＶＬ１’及びＶＵ１’は、抵抗値分布Ｒ１の下限及び上限にそれぞれ対応する値である。抵抗値ＶＬ２’及びＶＵ２’は、抵抗値分布Ｒ２の下限及び上限にそれぞれ対応する値である。抵抗値ＶＬ３’は、抵抗値分布Ｒ３の下限に対応する値である。
【００４２】
比較例において、各抵抗値ＶＵ０’、ＶＬ１’、ＶＵ１’、ＶＬ２’、ＶＵ２’、ＶＬ３’は、以下のように設定されている。各抵抗値ＶＵ０’、ＶＬ１’、ＶＵ１’、ＶＬ２’、ＶＵ２’、ＶＬ３’は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の幅が同一になるように設定される。図１０に示すように、抵抗値分布Ｒ１、Ｒ２の幅Ｌ１は、同一である。
【００４３】
また、各抵抗値ＶＵ０’、ＶＬ１’、ＶＵ１’、ＶＬ２’、ＶＵ２’、ＶＬ３’は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の間の距離が同一になるように設定される。図１０に示すように、抵抗値分布Ｒ０と抵抗値分布Ｒ１との距離Ｌ０、抵抗値分布Ｒ１と抵抗値分布Ｒ２との距離Ｌ０、抵抗値分布Ｒ２と抵抗値分布Ｒ３との距離Ｌ０は、同一である。
【００４４】
ここで、抵抗変化メモリの読み出し動作においては可変抵抗素子ＶＲの中への電子のトラップ／デトラップに起因した読み出しノイズが存在する場合がある。読み出しノイズの影響は高抵抗状態ほど強く受けるため、高抵抗状態ほどデータの信頼性が低下する可能性がある。そのため、メモリセルＭＣに多値データを記憶させる場合には高抵抗状態の分布ほど読み出しエラーが発生する確率が高くなる可能性がある。図１０には、読み出しノイズに起因して、抵抗値分布Ｒ１、Ｒ２の上裾から逸脱したメモリセルが存在する例を示している。なお、読み出しノイズによるメモリセルＭＣの抵抗値分布からの逸脱は下裾側にも起こり得るが、図示は省略している。このようなメモリセルが存在すると、読み出しエラーが発生し、データの信頼性が低下する。
【００４５】
これに対し、図６に示すように、上述の本実施の形態では、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、抵抗値分布の幅を大きくするように設定されている。また、各抵抗値ＶＵ０、ＶＬ１、ＶＵ１、ＶＬ２、ＶＵ２、ＶＬ３は、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、各抵抗値分布の間の距離を大きくするように設定されている。
【００４６】
抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、抵抗値分布の幅を大きくするように設定したことにより、高抵抗状態のメモリセルＭＣは抵抗値分布の中に含まれる可能性が高くなる。その結果、書き込み動作中の読み出し動作において、読み出しノイズが生じたとしても、抵抗値分布に含まれる可能性が高くなり、誤読み出しが生じるおそれを低減することができる。その結果、高抵抗状態の抵抗値分布への書き込み動作の精度が向上し、動作速度の低下を改善する事ができる。
【００４７】
また、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、各抵抗値分布の間の距離を大きくするように設定したことにより、読み出しノイズに起因して抵抗値分布から逸脱したメモリセルが生じた場合でも、誤って別の抵抗値分布に存在するものとして読み出される可能性を低下させることができる。その結果、メモリセルＭＣに保持されたデータの信頼性を改善することが可能となる。
【００４８】
また、抵抗変化素子を用いた半導体記憶装置においては、データ書き込み動作において、抵抗変化素子を低抵抗状態にしてから高抵抗状態に遷移させる必要はない。すなわち、本実施の形態においては、電荷蓄積状態により閾値電圧を変化させるような不揮発性半導体記憶装置における消去動作に類似する動作は必要ない。よって、書き込み動作前にメモリセルが保持しているデータによらず、書き込み動作を実行することができる。
【００４９】
［第２の実施の形態］
次に、本発明の第２の実施の形態を、図１１を参照して説明する。第２の実施の形態の不揮発性半導体記憶装置の全体構成は、第１の実施の形態と同様であり、その詳細な説明は省略する。また、第１の実施の形態と同様の構成を有する箇所には、同一の符号を付して重複する説明を省略する。上述の第１の実施の形態は、抵抗値が大きくなるに従って、抵抗値分布の幅又は抵抗値分の間の距離が変化する例について説明した。本実施の形態は、抵抗値が大きくなるに従って、メモリセルＭＣのデータを読み出すための読み出し抵抗値の差が変化する点において第１の実施の形態と異なる。
【００５０】
［データ記憶状態］
図１１を参照して、本実施形態の不揮発性半導体記憶装置のデータ記憶状態について説明する。図１１は、本実施の形態に係る不揮発性半導体記憶装置に保持されるデータの抵抗値分布を説明する図である。
本実施形態においても、不揮発性半導体記憶装置のメモリセルＭＣは抵抗値に基づいて４値データを記憶するものとする。この場合、データに対応する抵抗値分布は図１１に示すようになる。メモリセルＭＣは低抵抗側から順にＲ０レベル、Ｒ１レベル、Ｒ２レベル、Ｒ３レベルの抵抗値分布が設定されている。
【００５１】
なお図示は省略しているが、本実施の形態でも、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、抵抗値分布の幅を大きくするように設定され、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３の抵抗値の値が大きくなるに従って、各抵抗値分布の間の距離を大きくするように設定されている。
【００５２】
本実施の形態においては、メモリセルＭＣが複数の抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３のいずれに含まれるかを読み出すため、抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３には読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２が設定されている。読み出し抵抗値ＲＤ０は、抵抗値分布Ｒ０と抵抗値分布Ｒ１との間に設定される。読み出し抵抗値ＲＤ１は、抵抗値分布Ｒ１と抵抗値分布Ｒ２との間に設定される。読み出し抵抗値ＲＤ２は、抵抗値分布Ｒ２と抵抗値分布Ｒ３との間に設定される。
【００５３】
本実施の形態において、各読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２は、以下のように設定されている。各読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２は、抵抗値の値が大きくなるに従って、各読み出し抵抗値の差を大きくするように設定される。図１１に示すように、読み出し抵抗値ＲＤ１と読み出し抵抗値ＲＤ２との差Ｌ２２は、セット側に位置する読み出し抵抗値ＲＤ０と読み出し抵抗値ＲＤ１との差Ｌ２１よりも大きい（Ｌ２２＞Ｌ２１）。このように、各読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２は、リセット側に近づくにつれ、読み出し抵抗値の差が大きくなるように設定される。
【００５４】
なお、各読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２が、リセット側に近づくにつれ、読み出し抵抗値の差が大きくなるように設定されるためには、抵抗値分布が少なくとも４つ形成される必要がある。なぜなら、各抵抗値分布の間に設定される読み出し抵抗値が３つ以上設定されなければ、読み出し抵抗値の差の比較ができないからである。
【００５５】
［データ読み出し動作］
なお、データ読み出し動作は、各メモリセルＭＣに所定のリード電圧を印加した場合に、メモリセルにどれだけの電流が流れるかを計測することにより実行することができる。この電流に基づいて、メモリセルＭＣ内の可変抵抗素子ＶＲの抵抗値が読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２を超えているか否かを判定し、メモリセルＭＣがどの抵抗値分布Ｒ０、Ｒ１、Ｒ２、Ｒ３に含まれているかを決定する。これによりメモリセルＭＣに保持されているデータを読み出すことができる。
【００５６】
［効果］
第１の実施の形態で説明したように、メモリセルＭＣが高抵抗状態になるほど読み出しノイズに起因して誤読み出しの可能性が高くなる。
これに対し、本実施の形態の不揮発性半導体記憶装置は、図１１に示すように、各読み出し抵抗値ＲＤ０、ＲＤ１、ＲＤ２が、抵抗値の値が大きくなるに従って、各読み出し抵抗値の差を大きくするように設定されている。抵抗値の値が大きくなるに従って、読み出し抵抗値の差を大きくするように設定したことにより、読み出しノイズに起因して抵抗値分布から逸脱したメモリセルが生じた場合でも、誤って別の抵抗値分布に存在するものとして読み出される可能性を低下させることができる。その結果、メモリセルＭＣに保持されたデータの信頼性を改善することが可能となる。
【００５７】
［その他］
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置換、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００５８】
例えば、電流整流機能を有する可変抵抗素子を用いて、メモリセルアレイを三次元的に構成することも可能である。図１２は、メモリセルアレイ１の一部を示す斜視図である。メモリセルアレイ１は、Ｙ−Ｚ平面内で、Ｘ方向に延び、Ｚ方向に所定ピッチで配列された複数のビット線ＢＬと、Ｘ−Ｙ平面内で、Ｚ方向に延び、Ｘ方向に所定ピッチで配列された複数の柱状のワード線ＷＬと、これらビット線ＢＬ及びワード線ＷＬの各交差部に設けられたメモリセルＭＣとを有する。なお、ワード線ＷＬ及びビット線ＢＬは、Ｙ方向に隣接する２つのメモリセルＭＣに共有されている。また、ワード線ＷＬは、Ｘ−Ｙ平面内で、Ｙ方向に延び、Ｘ方向に所定ピッチで配列されたワード線接続線ＷＬＣＬで共通に接続されている。このように、メモリブロックを三次元的に構成することにより、チップ面積の最適化を図ることができる。
【００５９】
また、上述の実施の形態では、メモリセルＭＣが含まれる抵抗値分布の数は、４つである例を説明したが、これに限られるものではない。例えば、抵抗値分布の数は３以上の複数であればよく、可変抵抗素子ＶＲの性能に基づいてメモリセルに記憶されるデータは３以上の多値データにすることができる。
【符号の説明】
【００６０】
１・・・メモリセルアレイ、  ２・・・カラム制御回路、  ３・・・ロウ制御回路、  ４・・・データ入出力バッファ、  ５・・・アドレスレジスタ、  ６・・・コマンドＩ／Ｆ、  ７・・・ステートマシン、  ８・・・パルスジェネレータ、  ９・・・ホスト、  ＷＬ・・・ワード線、  ＢＬ・・・ビット線、  ＭＣ・・・メモリセル、  ＤＩ・・・ダイオード、  ＥＬ１〜ＥＬ３・・・ダイオード、  ＶＲ・・・可変抵抗素子、  ＷＬＣＬ・・・ワード線接続線。
【図１】
2015076118.tif 000003
【図２】
2015076118.tif 000004
【図３】
2015076118.tif 000005
【図４】
2015076118.tif 000006
【図５】
2015076118.tif 000007
【図６】
2015076118.tif 000008
【図７】
2015076118.tif 000009
【図８】
2015076118.tif 000010
【図９】
2015076118.tif 000011
【図１０】
2015076118.tif 000012
【図１１】
2015076118.tif 000013
【図１２】
2015076118.tif 000014