(57)【要約】【課題】  ブロック単位の消去またはワード単位のプログラムによるエンデュランス特性の低下を抑制する半導体記憶装置を提供する。【解決手段】  本発明の抵抗変化型メモリ１００は、可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイ１１０と、外部からの消去コマンドに応答してメモリアレイ１１０の選択されたブロックを消去するとき、ブロックのデータを変更することなくブロックが消去状態であることを表すＥＦフラグを設定するコントローラ１２０とを含む。コントローラ１２０はさらに、外部からの読出しコマンドに応答してメモリアレイ１１０の選択されたワードを読み出すとき、ＥＦフラグに基づき選択されたワードのデータまたは消去を表すデータを出力する読出し手段を含む。【選択図】  図７
2018147542.tif 000002
【特許請求の範囲】
【請求項１】
可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態であることを示す第１のフラグデータを設定する消去手段と、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータに基づき選択されたワードのデータまたは消去を表すデータを出力する読出し手段と、
を含む半導体記憶装置。
【請求項２】
前記読出し手段は、前記第１のフラグデータが消去状態を示すとき、前記選択されたワードに記憶されているデータとは無関係に、消去を表すデータを出力する、請求項１に記載の半導体記憶装置。
【請求項３】
前記読出し手段は、前記第１のフラグデータが非消去状態を示すとき、前記選択されたワードに記憶されているデータを出力する、請求項１または２に記載の半導体記憶装置。
【請求項４】
半導体記憶装置はさらに、外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段を含み、当該プログラム手段は、前記第１のフラグデータを非消去状態に設定する、請求項１ないし３いずれか１つに記載の半導体記憶装置。
【請求項５】
前記プログラム手段は、選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記入力データまたは前記入力データの反転データを前記選択されたワードにプログラムし、かつプログラムに用いられたデータを判別するための第２のフラグデータを設定する、請求項４に記載の半導体記憶装置。
【請求項６】
前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項５に記載の半導体記憶装置。
【請求項７】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記入力データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記反転データが前記選択されたワードにプログラムされ、第２のフラグデータは、前記入力データまたは前記反転データがプログラムされたことを表す、請求項５または６に記載の半導体記憶装置。
【請求項８】
前記読出し手段はさらに、前記第２のフラグデータに基づき選択されたワードのデータまたはその反転データを出力する、請求項５ないし７いずれか１つに記載の半導体記憶装置。
【請求項９】
前記メモリアレイは、第１および第２のフラグデータを記憶するフラグ領域を含み、前記フラグ領域は、メモリセルの各ワードに対応して設けられる、請求項１ないし８いずれか１つに記載の半導体記憶装置。
【請求項１０】
前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである、請求項１ないし９いずれか１つに記載の半導体記憶装置。
【請求項１１】
ランダムアクセスが可能な不揮発性のメモリ素子を含み、かつメモリ素子のデータを「０」から「１」または「１」から「０」に書き換え可能な半導体記憶装置であって、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態を示す第１のフラグデータを設定する消去手段と、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータに基づき前記選択されたワードに記憶されたデータまたは消去を表すデータを出力する読出し手段と、
を含む半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体記憶装置に関し、特に、可変抵抗素子を利用した抵抗変化型メモリに関する。
【背景技術】
【０００２】
フラッシュメモリに代わる不揮発性メモリとして、可変抵抗素子を利用した抵抗変化型メモリが注目されている。抵抗変化型メモリは、金属酸化物などの膜にパルス電圧を印加し、膜の抵抗を可逆的かつ不揮発的に設定することでデータを記憶するメモリとして知られている。抵抗変化型メモリは、電圧でデータを書き換えることができるため消費電力が小さく、また、１トランジスタ＋１抵抗からなる比較的単純な構造のためセル面積が約６F2（Ｆは配線の径で、数十ｎｍ程）と小さく、高密度化が可能であり、さらに、読み出し時間が１０ナノ秒程度とＤＲＡＭ並に高速であるという利点がある（特許文献１、２等）。
【０００３】
図１は、従来の抵抗変化型メモリのメモリアレイの典型的な構成を示す回路図である。１つのメモリセルユニットは、可変抵抗素子とこれに直列に接続されたアクセス用のトランジスタとから構成される。ｍ×ｎ（ｍ、ｎは、１以上の整数）個のセルユニットが二次元アレイ状に形成され、トランジスタのゲートがワード線に接続され、ドレイン領域が可変抵抗素子の一方の電極に接続され、ソース領域がソース線に接続される。可変抵抗素子の他方の電極がビット線に接続される。
【０００４】
可変抵抗素子は、酸化ハフニウム（ＨｆＯｘ）等の金属酸化物の薄膜から構成され、印加されるパルス電圧の大きさおよび極性によって抵抗値を低抵抗状態または高抵抗状態に可逆的にかつ不揮発性に設定することができる。可変抵抗素子を高抵抗状態に設定（または書込み）することをセット（ＳＥＴ）、低抵抗状態に設定（書込み）することをリセット（ＲＥＳＥＴ）という。
【０００５】
セルユニットは、ワード線、ビット線およびソース線によってビット単位で選択することができる。例えば、セルユニットＭ１１に書込みを行う場合には、ワード線ＷＬ１によってトランジスタがオンされ、ビット線ＢＬ１、ソース線ＳＬ１には、セットまたはリセットに応じた電圧が印加される。これにより、可変抵抗素子がセットまたはリセットされる。セルユニットＭ１１の読み出しを行う場合には、ワード線ＷＬ１によってトランジスタがオンされ、ビット線ＢＬ１、ソース線ＳＬ１には読み出しのための電圧が印加される。ビット線ＢＬ１には、可変抵抗素子のセットまたはリセットに応じた電圧または電流が表れ、これがセンス回路によって検出される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−６４２８６号公報
【特許文献２】特開２００８−４１７０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
抵抗変化型メモリは、フラッシュメモリと異なり、データを「０」から「１」へ、あるいは「１」から「０」へダイレクトにスイッチ（書き換え）することが可能であり、他方、フラッシュメモリでは、消去によりデータを「１」に、プログラムによりデータを「０」にするものであり、データを「０」から「１」にプログラムするという動作は存在しない。このため、抵抗変化型メモリをフラッシュメモリに置き換えることを意図する場合、フラッシュメモリと互換性のある仕様で抵抗変化型メモリを動作させることが望ましい。つまり、抵抗型変化メモリには、フラッシュメモリで用いられる消去等のコマンドへの対応が求められる。それ故、もし、抵抗変化型メモリがブロック消去コマンドをアサートされたならば、抵抗変化型メモリは、ターゲットのブロックに含まれる全てのメモリセルをリセット（データを「１」にスイッチ）する必要がある。しかしながら、リセットされるメモリセルの中にデータ「１」を記憶しているものがあれば、このようなメモリセルにとってリセットは必ずしも必要ではない。不要な書き換えを繰り替えすことは、抵抗変化型メモリの書き換え制限回数を無駄に消費させ、エンデュランス特性を悪化させてしまうことになる。
【０００８】
図２は、従来の抵抗変化型メモリの概略構成を示す図である。抵抗変化型メモリ１０は、メモリアレイ２０、コントローラ３０、データ選択部４０、データ入力部５０およびデータ出力部６０を含む。抵抗変化型メモリ１０は、例えばＮＯＲ型フラッシュメモリと互換性のある動作をすることが可能であり、コントローラ３０は、フラッシュメモリで用いられるブロック消去コマンド、プログラムコマンド、読出しコマンド等に対応する。コントローラ３０は、ブロック単位での消去、ワード単位でのプログラムまたは読出しを可能にする。図の例では、メモリアレイ２０が複数のブロックを含み、１つのブロックが１２８ワードを含み、１つのワードが３２ビットを含む例を示している。
【０００９】
図３は、抵抗変化型メモリのＮＯＲ型フラッシュメモリと互換性のある消去動作を説明するフローである。コントローラ３０は、外部から消去コマンドおよび消去すべきブロックのアドレスを受け取ると（Ｓ１０）、メモリアレイ２０から消去すべきブロック［ｎ］を選択し（Ｓ１２）、選択されたブロック［ｎ］内の全ワードをリセットする（Ｓ１４）。ここで、データ「１」を消去を表すとすれば、コントローラ３０は、選択ブロック［ｎ］の全ワードにデータ「１」を書き込む。例えば、図６（Ａ）に示すように、選択ブロック［ｎ］のｍ番目のワード［ｎ，ｍ］が「０００００００２ｈ」であれば、これが、「ＦＦＦＦＦＦＦＦｈ」に書き換えられる。
【００１０】
図４は、プログラム動作を説明するフローである。プログラム動作の前には、消去動作が必要となる。コントローラ３０は、外部からプログラムコマンドおよびアドレスを受け取り（Ｓ２０）、さらに外部からプログラムすべき入力データＤＩＮを受け取り、これが入力部５０にセットされると（Ｓ２２）、プログラムする前に、選択されるワードを含むブロック［ｎ］を消去する（Ｓ２４）。つまり、ブロック［ｎ］の全ワードがデータ「１」にリセットされる。ブロック［ｎ］の消去が終了した後、入力部５０に保持された入力データＤＩＮが選択されたワードにプログラムされる（Ｓ２６）。
【００１１】
例えば、図６（Ｂ）に示すように、プログラムすべきデータＤＩＮが「ＦＦＦＦＦＦＦＥｈ」であり、選択されたワードに記憶されているデータが「０００００００２ｈ」とする。コントローラ３０は、選択されたワードを含むブロック［ｎ］を全て消去し、つまり全ワードにデータ「１」を書き込み、次に、選択されたワードにデータ「０００００００１ｈ」を書き込む。たとえ、１ビットのプログラムであっても、ブロックの消去が必要となるため、ブロック［ｎ］にデータ「１」を記憶しているメモリセルには、再度、データ「１」が書き込まれることになる。
【００１２】
図５は、読出し動作を説明するフローである。コントローラ３０は、外部から読出しコマンドおよびアドレスを受け取ると（Ｓ３０）、選択されたワードを読出し（Ｓ３２）、読み出したデータをデータ出力部６０から出力させる（Ｓ３４）。
【００１３】
本発明は、上記従来の課題を解決するものであり、ブロック単位の消去またはワード単位のプログラムに伴うエンデュランス特性の低下を抑制する半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明に係る半導体記憶装置は、可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態であることを示す第１のフラグデータを設定する消去手段と、外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータに基づき選択されたワードのデータまたは消去を表すデータを出力する読出し手段とを含む。
【００１５】
好ましくは前記読出し手段は、前記第１のフラグデータが消去状態を示すとき、前記選択されたワードに記憶されているデータとは無関係に、消去を表すデータを出力する。好ましくは、前記読出し手段は、前記第１のフラグデータが非消去状態を示すとき、前記選択されたワードに記憶されているデータを出力する。好ましくは半導体記憶装置はさらに、外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段を含み、当該プログラム手段は、前記第１のフラグデータを非消去状態に設定する。好ましくは前記プログラム手段は、選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記入力データまたは前記入力データの反転データを前記選択されたワードにプログラムし、かつプログラムに用いられたデータを判別するための第２のフラグデータを設定する。好ましくは前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する。好ましくは前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記入力データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記反転データが前記選択されたワードにプログラムされ、第２のフラグデータは、前記入力データまたは前記反転データがプログラムされたことを表す。好ましくは前記読出し手段はさらに、前記第２のフラグデータに基づき選択されたワードのデータまたはその反転データを出力する。好ましくは前記メモリアレイは、第１および第２のフラグデータを記憶するフラグ領域を含み、前記フラグ領域は、メモリセルの各ワードに対応して設けられる。好ましくは前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである。
【００１６】
本発明に係る半導体記憶層は、ランダムアクセスが可能な不揮発性のメモリ素子を含み、かつメモリ素子のデータを「０」から「１」または「１」から「０」に書き換え可能なものであって、外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態を示す第１のフラグデータを設定する消去手段と、外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータに基づき前記選択されたワードに記憶されたデータまたは消去を表すデータを出力する読出し手段とを含む。
【発明の効果】
【００１７】
本発明によれば、不揮発性メモリ素子のデータを「０」から「１」または「１」から「０」にダイレクトに書き換えることが可能な半導体記憶装置において、ブロック単位の消去またはワード単位のプログラム等を行う場合に、不必要な書き換えを減らし、メモリ素子のエンデュランス特性が悪化するのを防止することができる。
【図面の簡単な説明】
【００１８】
【図１】従来の抵抗変化型メモリの典型的なメモリアレイの構成を示す図である。
【図２】従来の抵抗変化型メモリの全体構成を示すブロック図である。
【図３】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のある消去動作を示すフローチャートである。
【図４】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のあるプログラム動作を示すフローチャートである。
【図５】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のある読出し動作を示すフローチャートである。
【図６】従来の抵抗変化型メモリの消去時およびプログラム動作時の具体例を示す図である。
【図７】本発明の第1の実施例に係る抵抗変化型メモリの全体構成を示すブロック図である。
【図８】本発明の第１の実施例による抵抗変化型メモリの消去動作を示すフローチャートである。
【図９】本発明の第１の実施例による抵抗変化型メモリのプログラム動作を示すフローチャートである。
【図１０】本発明の第１の実施例による抵抗変化型メモリの読出し動作を示すフローチャートである。
【図１１】本発明の第１の実施例による抵抗変化型メモリの消去時、プログラム時および読出し時の具体例を示す図である。
【図１２】本発明の第２の実施例に係る抵抗変化型メモリの全体構成を示すブロック図である。
【図１３】本発明の第２の実施例による抵抗変化型メモリの消去動作を示すフローチャートである。
【図１４】本発明の第２の実施例による抵抗変化型メモリのプログラム動作を示すフローチャートである。
【図１５】本発明の第２の実施例による抵抗変化型メモリの読出し動作を示すフローチャートである。
【図１６】本発明の第２の実施例による抵抗変化型メモリの消去時およびプログラム時の具体例を示す図である。
【図１７】本発明の第２の実施例による抵抗変化型メモリの読出し時の具体例を示す図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施の形態について図面を参照して詳細に説明する。但し、図面は、分かり易くするために各部を強調して示してあり、実際のデバイスのスケールとは異なることに留意すべきである。
【実施例】
【００２０】
図７は、本発明の実施例に係る抵抗変化型メモリの概略構成を示すブロック図である。本実施例の抵抗変化型メモリ１００は、行列状に配列された複数のセルユニット（可変抵抗素子のメモリセルとアクセス用のトランジスタ）が配置されたメモリアレイ１１０と、コントローラ１２０と、列アドレスに従い入力データまたは出力データを選択するデータ選択部１３０と、外部端子からの入力データＤＩＮを保持するデータ入力部１４０と、外部端子へ出力する出力データＤＯＵＴを保持するデータ出力部１５０とを備えている。
【００２１】
コントローラ１２０は、外部からのコマンドおよびアドレス等に基づきメモリセルを選択し、選択したメモリセルのセット、リセットを行う。好ましい態様では、コントローラ１２０は、フラッシュメモリの仕様と互換性を有し、つまり、フラッシュメモリで用いられる各種コマンド（消去コマンド、プログラムコマンド、読出しコマンド）に対応する動作を可能にする。例えば、抵抗変化型メモリ１００は、コマンドデータを受け取る外部端子、アドレスデータを受け取る外部端子、およびデータを受け取る外部端子を備えることができ、コントローラ１２０は、外部端子から受け取ったコマンド、アドレス、データに基づきフラッシュメモリと互換性のある消去動作、プログラム動作および読出し動作を可能にする。あるいは、抵抗変化型メモリ１００は、コマンドデータ、アドレスデータおよび入力データを共通の外部端子から受け取ってもよく、その場合、コントローラ１２０は、外部制御信号またはクロック信号により外部端子から入力されるコマンドデータ、アドレスデータまたはデータを識別する。
【００２２】
コントローラ１２０は、フラッシュメモリと互換性のある仕様で消去動作をするとき、メモリアレイ１１０をブロック単位で管理し、ブロック単位での消去を可能にする。ブロックは、消去の単位であり、任意のワード数に規定することができる。メモリアレイ１１０は、図７に示すように、データを格納するためのメイン領域１１０Ａと、メイン領域１１０Ａの状態を判別するためのフラグデータを格納するフラグ領域１１０Ｂとを含む。コントローラ１２０は、消去動作を行うとき、入力されたブロックアドレスに基づきメモリアレイの中から消去すべきブロックを選択し、選択ブロックの消去を行う。詳細は、後述するが、コントローラ１２０は、選択されたブロック内のメイン領域１１０Ａに記憶されたデータを書き換えることなく、選択ブロックが消去されたものであることを示すフラグデータをフラグ領域１１０Ｂにセットする。例えば、図７に示すように、１つのブロックが１２８ワードを含み、１つのワードが３２ビットのメイン領域と１ビットのＥＦフラグとを含み、ブロック［ｎ］が選択されると、ブロック［ｎ］に含まれる１２８ワードの１２８ビットの全てのＥＦフラグが「１」にセットされる。
【００２３】
コントローラ１２０は、フラッシュメモリと互換性のある仕様でプログラム動作をするとき、メモリアレイ１１０をワード単位で管理し、ワード単位でプログラムを可能にする。ワードは、プログラムまたは読出しの単位であり、任意のビット数に規定することができる。コントローラ１２０は、入力されたアドレスに基づきメモリアレイ１１０の中からワードを選択し、選択されたワードに入力データＤＩＮをプログラムする。コントローラ１２０は、選択されたワードにプログラムをしたとき、プログラムされた状態を示すため、ＥＦフラグを「０」にセットする。
【００２４】
また、コントローラ１１０は、フラッシュメモリと互換性のある仕様で読出し動作をするとき、メモリアレイ１１０をワード単位で管理し、ワード単位での読出しを可能にする。コントローラ１２０は、入力されたアドレスに基づきメモリアレイ１１０の中からワードを選択し、選択されたワードのフラグ領域１１０Ｂに設定されたＥＦフラグの状態に応じて、選択されたワードに記憶されたデータ、あるいは選択されたワードに記憶されたデータとは無関係に消去を表すデータを出力する。
【００２５】
次に、本発明の第１の実施例の動作の詳細について説明する。図８は、本実施例の消去動作を示すフローである。コントローラ１２０は、外部から消去コマンドおよび消去すべきブロックのアドレスを受け取ると（Ｓ１００）、メモリアレイ１１０から消去すべきブロック［ｎ］を選択する（Ｓ１０２）。コントローラ１２０は、選択ブロック［ｎ］のメイン領域１１０Ａのデータを「１」に書き換えることなく、選択ブロック［ｎ］の全ワードのＥＦフラグ［ｎ，＊］に「１」を設定し（Ｓ１０４）、これで消去動作を終了する。ここで、データ「１」は、消去を表し、［＊］は、ブロック［ｎ］の全てを意味する。図７を例にとれば、選択ブロック［ｎ］を消去する場合には、選択ブロック［ｎ］の全ワードの１２８ビットのＥＦフラグが「１」に設定される。図１１（Ａ）は、具体例である。消去対象の選択ブロック［ｎ］のｍ番目のワード［ｎ，ｍ］が「０００００００２ｈ」であるとき、このデータは全く変更されることなく、フラグ領域１１０ＢのＥＦフラグが「１」に設定される。選択ブロック［ｎ］内の他のワードも同様にＥＦフラグが「１」に設定される。
【００２６】
図９は、本実施例のプログラム動作を説明するフローである。コントローラ１２０は、外部からプログラムコマンドおよびアドレスを受け取り（Ｓ１２０）、外部からプログラムすべき入力データＤＩＮを入力部５０にロードする（Ｓ１２２）。次に、コントローラ１２０は、行アドレスに基づきメモリアレイ１１０からブロック［ｎ］の中からｍ番目のワード［ｎ，ｍ］を選択し、選択ワード［ｎ，ｍ］のメイン領域１１０Ａに入力データＤＩＮをプログラムし（Ｓ１２４）、さらに選択ワード［ｎ，ｍ］のＥＦフラグを「０」に設定する（Ｓ１２６）。ＥＦフラグ「０」は、選択ワード［ｎ，ｍ］が消去されたものではなく、プログラムされたものであることを示す。図１１（Ｂ）に具体例を示す。入力データＤＩＮが「ＦＦＦＦＦＦＦＥｈ」であり、選択ワード［ｎ，ｍ］に記憶されたデータが「０００００００２ｈ」であるとき、選択ワード［ｎ，ｍ］には入力データＤＩＮがプログラムされ、ＥＦフラグが「０」に設定される。
【００２７】
図１０は、本実施例の読出し動作を説明するフローである。コントローラ１２０は、外部から読出しコマンドおよびアドレスを受け取ると（Ｓ１３０）、行アドレスに基づきブロック［ｎ］のｍ番目のワード「ｎ，ｍ」を選択し、選択ワード［ｎ，ｍ］のＥＦフラグが「１」であるか否かを参照する（Ｓ１３２）。ＥＦフラグが「１」である場合には、コントローラ１２０は、選択ワード［ｎ．ｍ］のデータの如何にかかわらず、読出しデータＤＯＵＴの全てを、消去を表す「１」にして出力させる（Ｓ１３４）。一方、ＥＦフラグが「０」である場合には、コントローラ１２０は、選択ワード［ｎ，ｍ］に記憶されたデータを読出し、これをデータＤＯＵＴとして出力させる（Ｓ１３６）。図１１（Ｃ）、（Ｄ）に具体例を示す。読出しケース１（Ｃ）では、ＥＦフラグが「１」であるため、読出しデータＤＯＵＴとして、「ＦＦＦＦＦＦＦＦｈ」が出力される。読出しケース２（Ｄ）では、ＥＦフラグが「０」であるため、読出しデータＤＯＵＴとして、選択ワード［ｎ，ｍ］に記憶されたデータ「０００００００２ｈ」が出力される。
【００２８】
このように本実施例によれば、メモリアレイ１１０の選択ブロックを消去するときに、選択ブロック内の全ワードをデータ「１」に書き換えない。このため、データ「１」を記憶している可変抵抗素子子に、再度、データ「１」を書き込む（リセットする）必要がなり、可変抵抗素子のエンデュライン特性が悪化するのを防止することができる。
【００２９】
次に、本発明の第２の実施例について説明する。図１２は、第２の実施例に係る抵抗変化型メモリ１１０Ａの構成を示す図である。第２の実施例では、メモリアレイ１１０のフラグ領域１１０Ｂが更なるＲＦフラグを備えている。ＲＦフラグは、プログラムするときに、選択ワードに入力データの正転データをプログラムしたが、入力データの反転データをプログラムしたかを判別するフラグである。
【００３０】
図１３は、第２の実施例の消去動作を示すフローである。第２の実施例では、コントローラ１２０は、選択ブロック［ｎ］のＥＦフラグ［ｎ，＊］とＲＦ［ｎ，ｍ］のそれぞれに「１」を設定し（Ｓ２０４）、それ以外の動作は、第１の実施例のときと同様である。図１６（Ａ）に、具体例を示す。選択ブロック［ｎ］のｍ番目のワード［ｎ，ｍ］が「０００００００２ｈ」であるとき、このデータは変更されることなく、ＥＦフラグおよびＲＦフラグに「１」が設定される。選択ブロック［ｎ］の他のワードも同様である。
【００３１】
図１４は、本実施例のプログラム動作を説明するフローである。コントローラ１２０は、外部からプログラムコマンドおよびアドレスを受け取り（Ｓ２２０）、外部からの入力データＤＩＮを入力部５０にロードする（Ｓ２２２）。次に、コントローラ１２０は、行アドレスに基づきメモリアレイ１１０の選択されたブロック［ｎ］の中からｍ番目のワード［ｎ，ｍ］を選択し、選択ワード［ｎ，ｍ］に記憶されたデータと入力データＤＩＮとのＥＸＯＲを行い、その演算結果をレジスタや可変スイッチ等に保持する（Ｓ２２４）。入力データＤＩＮと一致するビットは「０」、不一致のビットは「１」になる。次に、コントローラ１２０は、ＥＸＯＲの演算結果を参照し、データ「１」をカウントしその数が５０％以上であるか否かを判定する（Ｓ２２６）。データ「１」の数は、選択ワードに記憶されたデータと入力データＤＩＮとの不一致のビット数を表す。カウントされたデータ「１」が５０％以上である場合には、選択ワード［ｎ，ｍ］に入力データＤＩＮがプログラムされ、ＥＦフラグが「０」、ＲＦフラグが「１」に設定される（Ｓ２２６）。ここで留意すべきは、選択ワード［ｎ，ｍ］において、不一致のビットを反転することでプログラムが行われる。他方、カウントされたデータ「１」が５０％未満である場合には、選択ワード［ｎ，ｍ］に、入力データＤＩＮの反転データがプログラムされ、ＥＦフラグが「０」に、ＲＦフラグが「０」に設定される（Ｓ２２８）。この場合にも、選択ワード［ｎ，ｍ］において、不一致のビットのみが反転される。これで、プログラム動作が終了する。
【００３２】
図１６（Ｂ）、（Ｃ）に具体例を示す。プログラムケース１（Ｂ）において、入力データＤＩＮが「ＦＦＦＦＦＦＦＥｈ」であり、選択ワード［ｎ，ｍ］に記憶されたデータが「ＦＦＦＦＦＦＦＤｈ」であるとき、ＥＸＯＲの演算結果におけるデータ「１」のカウント数は「２」である。つまり、データ「１」の数は、５０％未満である。それ故、選択ワード［ｎ，ｍ］には、入力データＤＩＮがプログラムされるが、ＥＸＯＲの不一致を表す「１」に対応する選択ワード［ｎ，ｍ］の下位２ビットのデータのみが反転される。また、ＲＦフラグは、正転データのプログラムを示すために、「１」が設定される。
【００３３】
プログラムケース２（Ｃ）において、入力データＤＩＮが「ＦＦＦＦＦＦＦＥｈ」であり、選択ワード［ｎ，ｍ］に記憶されたデータが「０００００００２ｈ」であるとき、ＥＸＯＲの演算結果におけるデータ「１」のカウント数は「３０」である。不一致のデータ数が５０％以上であるため、選択ワード［ｎ，ｍ］には、入力データＤＩＮの反転データがプログラムされる。この場合、反転データが用いられるため、ＥＸＯＲの一致を表す「０」に対応する選択ワード［ｎ，ｍ］のビットのデータのみが反転される。また、ＲＦフラグは、入力データＤＩＮの反転データのプログラムを示すために、「０」が設定される。
【００３４】
図１５は、本実施例の読出し動作を説明するフローである。コントローラ１２０は、外部から読出しコマンドおよびアドレスを受け取ると（Ｓ２３０）、行アドレスに基づきブロック［ｎ］のｍ番目のワード［ｎ，ｍ］を選択し、選択ワード［ｎ，ｍ］のＥＦフラグが「１」であるか否かを判定する（Ｓ２３２）。ＥＦフラグが「１」である場合には、コントローラ１２０は、選択ワード［ｎ，ｍ］のデータの如何にかかわらず、読出しデータＤＯＵＴの全て「１」にして出力させる（Ｓ２３４）。一方、ＥＦフラグが「０」である場合には、コントローラ１２０は、ＲＦフラグが「１」であるか否かを判定する（Ｓ２４０）。ＲＦフラグが「１」である場合には、コントローラ１２０は、選択ワード［ｎ，ｍ］に記憶されたデータを読出しデータＤＯＵＴとして出力させ（Ｓ２４２）、ＲＦフラグが「０」である場合にいは、コントローラ１２０は、選択ワード［ｎ，ｍ］に記憶されたデータを反転したデータを読出しデータＤＯＵＴとして出力させる（Ｓ２４４）。
【００３５】
図１７（Ａ）、（Ｂ）、（Ｃ）に具体例を示す。読出しケース１（Ａ）では、ＥＦフラグが「１」であるため、選択ワード［ｎ，ｍ］に記憶されているデータ「０００００００２ｈ」とは無関係に、読出しデータＤＯＵＴとして「ＦＦＦＦＦＦＦＦｈ」が出力される。読出しケース２（Ｂ）では、ＥＦフラグが「０」、ＲＦフラグが「１」である。このため、選択ワード［ｎ，ｍ］に記憶されたデータ「ＦＦＦＦＦＦＦＥ２ｈ」が読出しデータＤＯＵＴとして出力される。読出しケース３（Ｃ）では、ＥＦフラグが「０」、ＲＦフラグが「０」である。これは、入力データＤＩＮの反転データが選択ワード［ｎ．ｍ］にプログラムされたことになっているため、選択ワード［ｎ，ｍ］に記憶されたデータの反転データが読出しデータＤＯＵＴとして出力される。
【００３６】
第２の実施例によれば、プログラムするときに、入力データとワードに記憶されているデータとの不一致または一致の割合に基づき入力データの正転データまたは反転データをプログラムするようにしたので、選択ワードの可変抵抗素子の書き換え回数を第１の実施例のときよりも少なくすることができる。
【００３７】
上記実施例は、抵抗型変化メモリがＮＯＲ型フラッシュメモリと互換性のある仕様で動作する例を示したが、抵抗型変化メモリがＮＡＮＤ型フラッシュメモリと互換性のある仕様で動作するものであってもよい。さらに上記実施例は、ランダムアクセスが可能であり、不揮発性メモリ素子のデータが「０」から「１」、または「１」から「０」にダイレクトに書き換えが可能である半導体記憶装置として抵抗変化型メモリを例示したが、不揮発性メモリ素子は、抵抗可変型に限らず他の強誘電体や磁気などによりデータを記憶するものであってもよい。
【００３８】
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００３９】
１００、１００Ａ：抵抗変化型メモリ
１１０：メモリアレイ
１１０Ａ：メイン領域
１１０Ｂ：フラグ領域
１２０：コントローラ
１３０：データ選択部
１４０：データ入力部
１５０：データ出力部
【図１】
2018147542.tif 000003
【図２】
2018147542.tif 000004
【図３】
2018147542.tif 000005
【図４】
2018147542.tif 000006
【図５】
2018147542.tif 000007
【図６】
2018147542.tif 000008
【図７】
2018147542.tif 000009
【図８】
2018147542.tif 000010
【図９】
2018147542.tif 000011
【図１０】
2018147542.tif 000012
【図１１】
2018147542.tif 000013
【図１２】
2018147542.tif 000014
【図１３】
2018147542.tif 000015
【図１４】
2018147542.tif 000016
【図１５】
2018147542.tif 000017
【図１６】
2018147542.tif 000018
【図１７】
2018147542.tif 000019
【手続補正書】
【提出日】平成30年1月18日(2018.1.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、
前記メモリアレイの各ワードに対応して設けられ、消去状態か否かを示す第１のフラグデータおよび入力データの正転データまたは反転データをプログラムしたか否かを示す第２のフラグデータを記憶するフラグ領域と、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックの各ワードの第１のフラグデータに消去状態を設定し第２のフラグデータに前記消去状態と同じ論理レベルを設定する消去手段と、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段であって、当該プログラム手段は、選択されたワードの前記第１のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記正転データまたは前記反転データを前記選択されたワードにプログラムし、かつ前記第２のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定する、前記プログラム手段と、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、記第１のフラグデータが消去状態を示す場合には、前記選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第１のフラグデータが非消去状態を示す場合には、前記第２のフラグデータを参照し、前記第２のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第２のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、読出し手段と、
を含む半導体記憶装置。
【請求項２】
前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項１に記載の半導体記憶装置。
【請求項３】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記反転データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項１または２に記載の半導体記憶装置。
【請求項４】
前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである、請求項１に記載の半導体記憶装置。
【請求項５】
ランダムアクセスが可能な不揮発性のメモリ素子が形成されたメモリアレイを含み、前記メモリアレイは、前記メモリアレイの各ワードに対応して第１のフラグデータおよび第２のフラグデータを記憶するフラグ領域を含み、かつメモリ素子のデータを「０」から「１」または「１」から「０」に書き換え可能な半導体記憶装置の動作方法であって、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックに含まれる各ワードの第１のフラグデータに消去状態を設定し、第２のフラグデータに前記消去状態と同じ論理レベルを設定し、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムする動作であって、当該プログラムする動作は、選択されたワードの前記第１のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記正転データまたは前記反転データを前記選択されたワードにプログラムし、かつ選択されたワードの第２のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定し、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータが消去状態を示す場合には、選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第１のフラグデータが非消去状態を示す場合には、前記第２のフラグデータを参照し、前記第２のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第２のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、
半導体記憶装置の動作方法。
【請求項６】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記反転データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項５に記載の動作方法。
【請求項７】
前記プログラムする動作は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項５に記載の動作方法。
【手続補正書】
【提出日】平成30年7月11日(2018.7.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、
前記メモリアレイの各ワードに対応して設けられ、消去状態か否かを示す第１のフラグデータおよび入力データの正転データまたは反転データをプログラムしたか否かを示す第２のフラグデータを記憶するフラグ領域と、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックの各ワードの第１のフラグデータに消去状態を設定し第２のフラグデータに前記消去状態と同じ論理レベルを設定する消去手段と、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段であって、当該プログラム手段は、選択されたワードの前記第１のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記正転データまたは前記反転データを前記選択されたワードにプログラムし、かつ前記第２のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定する、前記プログラム手段と、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータが消去状態を示す場合には、前記選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第１のフラグデータが非消去状態を示す場合に限り、前記第２のフラグデータを参照し、前記第２のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第２のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、読出し手段と、
を含む半導体記憶装置。
【請求項２】
前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項１に記載の半導体記憶装置。
【請求項３】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記反転データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項１または２に記載の半導体記憶装置。
【請求項４】
前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである、請求項１に記載の半導体記憶装置。
【請求項５】
ランダムアクセスが可能な不揮発性のメモリ素子が形成されたメモリアレイを含み、前記メモリアレイは、前記メモリアレイの各ワードに対応して第１のフラグデータおよび第２のフラグデータを記憶するフラグ領域を含み、かつメモリ素子のデータを「０」から「１」または「１」から「０」に書き換え可能な半導体記憶装置の動作方法であって、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックに含まれる各ワードの第１のフラグデータに消去状態を設定し、第２のフラグデータに前記消去状態と同じ論理レベルを設定し、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムする動作であって、当該プログラムする動作は、選択されたワードの前記第１のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて入力データの正転データまたは反転データを前記選択されたワードにプログラムし、かつ選択されたワードの第２のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定し、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第１のフラグデータが消去状態を示す場合には、選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第１のフラグデータが非消去状態を示す場合に限り、前記第２のフラグデータを参照し、前記第２のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第２のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、
半導体記憶装置の動作方法。
【請求項６】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が５０％以上である場合には、前記反転データが前記選択されたワードにプログラムされ、５０％未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項５に記載の動作方法。
【請求項７】
前記プログラムする動作は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項５に記載の動作方法。