特許第6387134号(P6387134)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ウィンボンド エレクトロニクス コーポレーションの特許一覧

<>
  • 特許6387134-半導体記憶装置 図000002
  • 特許6387134-半導体記憶装置 図000003
  • 特許6387134-半導体記憶装置 図000004
  • 特許6387134-半導体記憶装置 図000005
  • 特許6387134-半導体記憶装置 図000006
  • 特許6387134-半導体記憶装置 図000007
  • 特許6387134-半導体記憶装置 図000008
  • 特許6387134-半導体記憶装置 図000009
  • 特許6387134-半導体記憶装置 図000010
  • 特許6387134-半導体記憶装置 図000011
  • 特許6387134-半導体記憶装置 図000012
  • 特許6387134-半導体記憶装置 図000013
  • 特許6387134-半導体記憶装置 図000014
  • 特許6387134-半導体記憶装置 図000015
  • 特許6387134-半導体記憶装置 図000016
  • 特許6387134-半導体記憶装置 図000017
  • 特許6387134-半導体記憶装置 図000018
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6387134
(24)【登録日】2018年8月17日
(45)【発行日】2018年9月5日
(54)【発明の名称】半導体記憶装置
(51)【国際特許分類】
   G11C 13/00 20060101AFI20180827BHJP
【FI】
   G11C13/00 400Z
   G11C13/00 480G
【請求項の数】7
【全頁数】14
(21)【出願番号】特願2017-44471(P2017-44471)
(22)【出願日】2017年3月9日
【審査請求日】2017年3月9日
(73)【特許権者】
【識別番号】511062254
【氏名又は名称】ウィンボンド エレクトロニクス コーポレーション
(74)【代理人】
【識別番号】100098497
【弁理士】
【氏名又は名称】片寄 恭三
(72)【発明者】
【氏名】服部 規男
(72)【発明者】
【氏名】矢野 勝
【審査官】 篠塚 隆
(56)【参考文献】
【文献】 特開2013−168204(JP,A)
【文献】 特開2009−230796(JP,A)
【文献】 国際公開第2011/096047(WO,A1)
【文献】 特開2007−250101(JP,A)
【文献】 特開2014−026712(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 13/00
G11C 11/16
G11C 11/22
(57)【特許請求の範囲】
【請求項1】
可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、
前記メモリアレイの各ワードに対応して設けられ、消去状態か否かを示す第1のフラグデータおよび入力データの正転データまたは反転データをプログラムしたか否かを示す第2のフラグデータを記憶するフラグ領域と、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックの各ワードの第1のフラグデータに消去状態を設定し第2のフラグデータに前記消去状態と同じ論理レベルを設定する消去手段と、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段であって、当該プログラム手段は、選択されたワードの前記第1のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記正転データまたは前記反転データを前記選択されたワードにプログラムし、かつ前記第2のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定する、前記プログラム手段と、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、記第1のフラグデータが消去状態を示す場合には、前記選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第1のフラグデータが非消去状態を示す場合に限り、前記第2のフラグデータを参照し、前記第2のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第2のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、読出し手段と、
を含む半導体記憶装置。
【請求項2】
前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項1に記載の半導体記憶装置。
【請求項3】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が50%以上である場合には、前記反転データが前記選択されたワードにプログラムされ、50%未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項1または2に記載の半導体記憶装置。
【請求項4】
前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである、請求項1に記載の半導体記憶装置。
【請求項5】
ランダムアクセスが可能な不揮発性のメモリ素子が形成されたメモリアレイを含み、前記メモリアレイは、前記メモリアレイの各ワードに対応して第1のフラグデータおよび第2のフラグデータを記憶するフラグ領域を含み、かつメモリ素子のデータを「0」から「1」または「1」から「0」に書き換え可能な半導体記憶装置の動作方法であって、
外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックに含まれる各ワードの第1のフラグデータに消去状態を設定し、第2のフラグデータに前記消去状態と同じ論理レベルを設定し、
外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムする動作であって、当該プログラムする動作は、選択されたワードの前記第1のフラグデータを非消去状態に設定し、かつ選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて入力データの正転データまたは反転データを前記選択されたワードにプログラムし、かつ選択されたワードの第2のフラグデータに前記正転データまたは前記反転データのプログラムの判別を設定し、
外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第1のフラグデータが消去状態を示す場合には、選択されたワードに記憶されているデータとは無関係に消去を表すデータを出力し、前記第1のフラグデータが非消去状態を示す場合に限り、前記第2のフラグデータを参照し、前記第2のフラグデータが正転データを示す場合、選択されたワードのデータを出力し、前記第2のフラグデータが反転データを示す場合、選択されたワードのデータを反転して出力する、
半導体記憶装置の動作方法。
【請求項6】
前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が50%以上である場合には、前記反転データが前記選択されたワードにプログラムされ、50%未満である場合には、前記正転データが前記選択されたワードにプログラムされる、請求項5に記載の動作方法。
【請求項7】
前記プログラムする動作は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する、請求項5に記載の動作方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体記憶装置に関し、特に、可変抵抗素子を利用した抵抗変化型メモリに関する。
【背景技術】
【0002】
フラッシュメモリに代わる不揮発性メモリとして、可変抵抗素子を利用した抵抗変化型メモリが注目されている。抵抗変化型メモリは、金属酸化物などの膜にパルス電圧を印加し、膜の抵抗を可逆的かつ不揮発的に設定することでデータを記憶するメモリとして知られている。抵抗変化型メモリは、電圧でデータを書き換えることができるため消費電力が小さく、また、1トランジスタ+1抵抗からなる比較的単純な構造のためセル面積が約6F2(Fは配線の径で、数十nm程)と小さく、高密度化が可能であり、さらに、読み出し時間が10ナノ秒程度とDRAM並に高速であるという利点がある(特許文献1、2等)。
【0003】
図1は、従来の抵抗変化型メモリのメモリアレイの典型的な構成を示す回路図である。1つのメモリセルユニットは、可変抵抗素子とこれに直列に接続されたアクセス用のトランジスタとから構成される。m×n(m、nは、1以上の整数)個のセルユニットが二次元アレイ状に形成され、トランジスタのゲートがワード線に接続され、ドレイン領域が可変抵抗素子の一方の電極に接続され、ソース領域がソース線に接続される。可変抵抗素子の他方の電極がビット線に接続される。
【0004】
可変抵抗素子は、酸化ハフニウム(HfOx)等の金属酸化物の薄膜から構成され、印加されるパルス電圧の大きさおよび極性によって抵抗値を低抵抗状態または高抵抗状態に可逆的にかつ不揮発性に設定することができる。可変抵抗素子を高抵抗状態に設定(または書込み)することをセット(SET)、低抵抗状態に設定(書込み)することをリセット(RESET)という。
【0005】
セルユニットは、ワード線、ビット線およびソース線によってビット単位で選択することができる。例えば、セルユニットM11に書込みを行う場合には、ワード線WL1によってトランジスタがオンされ、ビット線BL1、ソース線SL1には、セットまたはリセットに応じた電圧が印加される。これにより、可変抵抗素子がセットまたはリセットされる。セルユニットM11の読み出しを行う場合には、ワード線WL1によってトランジスタがオンされ、ビット線BL1、ソース線SL1には読み出しのための電圧が印加される。ビット線BL1には、可変抵抗素子のセットまたはリセットに応じた電圧または電流が表れ、これがセンス回路によって検出される。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2012−64286号公報
【特許文献2】特開2008−41704号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
抵抗変化型メモリは、フラッシュメモリと異なり、データを「0」から「1」へ、あるいは「1」から「0」へダイレクトにスイッチ(書き換え)することが可能であり、他方、フラッシュメモリでは、消去によりデータを「1」に、プログラムによりデータを「0」にするものであり、データを「0」から「1」にプログラムするという動作は存在しない。このため、抵抗変化型メモリをフラッシュメモリに置き換えることを意図する場合、フラッシュメモリと互換性のある仕様で抵抗変化型メモリを動作させることが望ましい。つまり、抵抗型変化メモリには、フラッシュメモリで用いられる消去等のコマンドへの対応が求められる。それ故、もし、抵抗変化型メモリがブロック消去コマンドをアサートされたならば、抵抗変化型メモリは、ターゲットのブロックに含まれる全てのメモリセルをリセット(データを「1」にスイッチ)する必要がある。しかしながら、リセットされるメモリセルの中にデータ「1」を記憶しているものがあれば、このようなメモリセルにとってリセットは必ずしも必要ではない。不要な書き換えを繰り替えすことは、抵抗変化型メモリの書き換え制限回数を無駄に消費させ、エンデュランス特性を悪化させてしまうことになる。
【0008】
図2は、従来の抵抗変化型メモリの概略構成を示す図である。抵抗変化型メモリ10は、メモリアレイ20、コントローラ30、データ選択部40、データ入力部50およびデータ出力部60を含む。抵抗変化型メモリ10は、例えばNOR型フラッシュメモリと互換性のある動作をすることが可能であり、コントローラ30は、フラッシュメモリで用いられるブロック消去コマンド、プログラムコマンド、読出しコマンド等に対応する。コントローラ30は、ブロック単位での消去、ワード単位でのプログラムまたは読出しを可能にする。図の例では、メモリアレイ20が複数のブロックを含み、1つのブロックが128ワードを含み、1つのワードが32ビットを含む例を示している。
【0009】
図3は、抵抗変化型メモリのNOR型フラッシュメモリと互換性のある消去動作を説明するフローである。コントローラ30は、外部から消去コマンドおよび消去すべきブロックのアドレスを受け取ると(S10)、メモリアレイ20から消去すべきブロック[n]を選択し(S12)、選択されたブロック[n]内の全ワードをリセットする(S14)。ここで、データ「1」を消去を表すとすれば、コントローラ30は、選択ブロック[n]の全ワードにデータ「1」を書き込む。例えば、図6(A)に示すように、選択ブロック[n]のm番目のワード[n,m]が「00000002h」であれば、これが、「FFFFFFFFh」に書き換えられる。
【0010】
図4は、プログラム動作を説明するフローである。プログラム動作の前には、消去動作が必要となる。コントローラ30は、外部からプログラムコマンドおよびアドレスを受け取り(S20)、さらに外部からプログラムすべき入力データDINを受け取り、これが入力部50にセットされると(S22)、プログラムする前に、選択されるワードを含むブロック[n]を消去する(S24)。つまり、ブロック[n]の全ワードがデータ「1」にリセットされる。ブロック[n]の消去が終了した後、入力部50に保持された入力データDINが選択されたワードにプログラムされる(S26)。
【0011】
例えば、図6(B)に示すように、プログラムすべきデータDINが「FFFFFFFEh」であり、選択されたワードに記憶されているデータが「00000002h」とする。コントローラ30は、選択されたワードを含むブロック[n]を全て消去し、つまり全ワードにデータ「1」を書き込み、次に、選択されたワードにデータ「00000001h」を書き込む。たとえ、1ビットのプログラムであっても、ブロックの消去が必要となるため、ブロック[n]にデータ「1」を記憶しているメモリセルには、再度、データ「1」が書き込まれることになる。
【0012】
図5は、読出し動作を説明するフローである。コントローラ30は、外部から読出しコマンドおよびアドレスを受け取ると(S30)、選択されたワードを読出し(S32)、読み出したデータをデータ出力部60から出力させる(S34)。
【0013】
本発明は、上記従来の課題を解決するものであり、ブロック単位の消去またはワード単位のプログラムに伴うエンデュランス特性の低下を抑制する半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明に係る半導体記憶装置は、可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイと、外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態であることを示す第1のフラグデータを設定する消去手段と、外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第1のフラグデータに基づき選択されたワードのデータまたは消去を表すデータを出力する読出し手段とを含む。
【0015】
好ましくは前記読出し手段は、前記第1のフラグデータが消去状態を示すとき、前記選択されたワードに記憶されているデータとは無関係に、消去を表すデータを出力する。好ましくは、前記読出し手段は、前記第1のフラグデータが非消去状態を示すとき、前記選択されたワードに記憶されているデータを出力する。好ましくは半導体記憶装置はさらに、外部からのプログラムコマンドに応答して前記メモリアレイの選択されたワードに入力データをプログラムするプログラム手段を含み、当該プログラム手段は、前記第1のフラグデータを非消去状態に設定する。好ましくは前記プログラム手段は、選択されたワードに記憶されたデータと入力データとを比較し、比較結果に応じて前記入力データまたは前記入力データの反転データを前記選択されたワードにプログラムし、かつプログラムに用いられたデータを判別するための第2のフラグデータを設定する。好ましくは前記プログラム手段は、前記比較結果に応じて前記選択されたワードの不一致のデータを反転する。好ましくは前記入力データと前記選択されたワードに記憶されたデータとの不一致の割合が50%以上である場合には、前記入力データが前記選択されたワードにプログラムされ、50%未満である場合には、前記反転データが前記選択されたワードにプログラムされ、第2のフラグデータは、前記入力データまたは前記反転データがプログラムされたことを表す。好ましくは前記読出し手段はさらに、前記第2のフラグデータに基づき選択されたワードのデータまたはその反転データを出力する。好ましくは前記メモリアレイは、第1および第2のフラグデータを記憶するフラグ領域を含み、前記フラグ領域は、メモリセルの各ワードに対応して設けられる。好ましくは前記消去コマンド、前記プログラムコマンド、および前記読出しコマンドは、フラッシュメモリと互換性のあるコマンドである。
【0016】
本発明に係る半導体記憶層は、ランダムアクセスが可能な不揮発性のメモリ素子を含み、かつメモリ素子のデータを「0」から「1」または「1」から「0」に書き換え可能なものであって、外部からの消去コマンドに応答して前記メモリアレイの選択されたブロックを消去するとき、前記ブロックのデータを変更することなく前記ブロックが消去状態を示す第1のフラグデータを設定する消去手段と、外部からの読出しコマンドに応答して前記メモリアレイの選択されたワードを読み出すとき、前記第1のフラグデータに基づき前記選択されたワードに記憶されたデータまたは消去を表すデータを出力する読出し手段とを含む。
【発明の効果】
【0017】
本発明によれば、不揮発性メモリ素子のデータを「0」から「1」または「1」から「0」にダイレクトに書き換えることが可能な半導体記憶装置において、ブロック単位の消去またはワード単位のプログラム等を行う場合に、不必要な書き換えを減らし、メモリ素子のエンデュランス特性が悪化するのを防止することができる。
【図面の簡単な説明】
【0018】
図1】従来の抵抗変化型メモリの典型的なメモリアレイの構成を示す図である。
図2】従来の抵抗変化型メモリの全体構成を示すブロック図である。
図3】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のある消去動作を示すフローチャートである。
図4】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のあるプログラム動作を示すフローチャートである。
図5】従来の抵抗変化型メモリにおけるフラッシュメモリと互換性のある読出し動作を示すフローチャートである。
図6】従来の抵抗変化型メモリの消去時およびプログラム動作時の具体例を示す図である。
図7】本発明の第1の実施例に係る抵抗変化型メモリの全体構成を示すブロック図である。
図8】本発明の第1の実施例による抵抗変化型メモリの消去動作を示すフローチャートである。
図9】本発明の第1の実施例による抵抗変化型メモリのプログラム動作を示すフローチャートである。
図10】本発明の第1の実施例による抵抗変化型メモリの読出し動作を示すフローチャートである。
図11】本発明の第1の実施例による抵抗変化型メモリの消去時、プログラム時および読出し時の具体例を示す図である。
図12】本発明の第2の実施例に係る抵抗変化型メモリの全体構成を示すブロック図である。
図13】本発明の第2の実施例による抵抗変化型メモリの消去動作を示すフローチャートである。
図14】本発明の第2の実施例による抵抗変化型メモリのプログラム動作を示すフローチャートである。
図15】本発明の第2の実施例による抵抗変化型メモリの読出し動作を示すフローチャートである。
図16】本発明の第2の実施例による抵抗変化型メモリの消去時およびプログラム時の具体例を示す図である。
図17】本発明の第2の実施例による抵抗変化型メモリの読出し時の具体例を示す図である。
【発明を実施するための形態】
【0019】
次に、本発明の実施の形態について図面を参照して詳細に説明する。但し、図面は、分かり易くするために各部を強調して示してあり、実際のデバイスのスケールとは異なることに留意すべきである。
【実施例】
【0020】
図7は、本発明の実施例に係る抵抗変化型メモリの概略構成を示すブロック図である。本実施例の抵抗変化型メモリ100は、行列状に配列された複数のセルユニット(可変抵抗素子のメモリセルとアクセス用のトランジスタ)が配置されたメモリアレイ110と、コントローラ120と、列アドレスに従い入力データまたは出力データを選択するデータ選択部130と、外部端子からの入力データDINを保持するデータ入力部140と、外部端子へ出力する出力データDOUTを保持するデータ出力部150とを備えている。
【0021】
コントローラ120は、外部からのコマンドおよびアドレス等に基づきメモリセルを選択し、選択したメモリセルのセット、リセットを行う。好ましい態様では、コントローラ120は、フラッシュメモリの仕様と互換性を有し、つまり、フラッシュメモリで用いられる各種コマンド(消去コマンド、プログラムコマンド、読出しコマンド)に対応する動作を可能にする。例えば、抵抗変化型メモリ100は、コマンドデータを受け取る外部端子、アドレスデータを受け取る外部端子、およびデータを受け取る外部端子を備えることができ、コントローラ120は、外部端子から受け取ったコマンド、アドレス、データに基づきフラッシュメモリと互換性のある消去動作、プログラム動作および読出し動作を可能にする。あるいは、抵抗変化型メモリ100は、コマンドデータ、アドレスデータおよび入力データを共通の外部端子から受け取ってもよく、その場合、コントローラ120は、外部制御信号またはクロック信号により外部端子から入力されるコマンドデータ、アドレスデータまたはデータを識別する。
【0022】
コントローラ120は、フラッシュメモリと互換性のある仕様で消去動作をするとき、メモリアレイ110をブロック単位で管理し、ブロック単位での消去を可能にする。ブロックは、消去の単位であり、任意のワード数に規定することができる。メモリアレイ110は、図7に示すように、データを格納するためのメイン領域110Aと、メイン領域110Aの状態を判別するためのフラグデータを格納するフラグ領域110Bとを含む。コントローラ120は、消去動作を行うとき、入力されたブロックアドレスに基づきメモリアレイの中から消去すべきブロックを選択し、選択ブロックの消去を行う。詳細は、後述するが、コントローラ120は、選択されたブロック内のメイン領域110Aに記憶されたデータを書き換えることなく、選択ブロックが消去されたものであることを示すフラグデータをフラグ領域110Bにセットする。例えば、図7に示すように、1つのブロックが128ワードを含み、1つのワードが32ビットのメイン領域と1ビットのEFフラグとを含み、ブロック[n]が選択されると、ブロック[n]に含まれる128ワードの128ビットの全てのEFフラグが「1」にセットされる。
【0023】
コントローラ120は、フラッシュメモリと互換性のある仕様でプログラム動作をするとき、メモリアレイ110をワード単位で管理し、ワード単位でプログラムを可能にする。ワードは、プログラムまたは読出しの単位であり、任意のビット数に規定することができる。コントローラ120は、入力されたアドレスに基づきメモリアレイ110の中からワードを選択し、選択されたワードに入力データDINをプログラムする。コントローラ120は、選択されたワードにプログラムをしたとき、プログラムされた状態を示すため、EFフラグを「0」にセットする。
【0024】
また、コントローラ110は、フラッシュメモリと互換性のある仕様で読出し動作をするとき、メモリアレイ110をワード単位で管理し、ワード単位での読出しを可能にする。コントローラ120は、入力されたアドレスに基づきメモリアレイ110の中からワードを選択し、選択されたワードのフラグ領域110Bに設定されたEFフラグの状態に応じて、選択されたワードに記憶されたデータ、あるいは選択されたワードに記憶されたデータとは無関係に消去を表すデータを出力する。
【0025】
次に、本発明の第1の実施例の動作の詳細について説明する。図8は、本実施例の消去動作を示すフローである。コントローラ120は、外部から消去コマンドおよび消去すべきブロックのアドレスを受け取ると(S100)、メモリアレイ110から消去すべきブロック[n]を選択する(S102)。コントローラ120は、選択ブロック[n]のメイン領域110Aのデータを「1」に書き換えることなく、選択ブロック[n]の全ワードのEFフラグ[n,*]に「1」を設定し(S104)、これで消去動作を終了する。ここで、データ「1」は、消去を表し、[*]は、ブロック[n]の全てを意味する。図7を例にとれば、選択ブロック[n]を消去する場合には、選択ブロック[n]の全ワードの128ビットのEFフラグが「1」に設定される。図11(A)は、具体例である。消去対象の選択ブロック[n]のm番目のワード[n,m]が「00000002h」であるとき、このデータは全く変更されることなく、フラグ領域110BのEFフラグが「1」に設定される。選択ブロック[n]内の他のワードも同様にEFフラグが「1」に設定される。
【0026】
図9は、本実施例のプログラム動作を説明するフローである。コントローラ120は、外部からプログラムコマンドおよびアドレスを受け取り(S120)、外部からプログラムすべき入力データDINを入力部50にロードする(S122)。次に、コントローラ120は、行アドレスに基づきメモリアレイ110からブロック[n]の中からm番目のワード[n,m]を選択し、選択ワード[n,m]のメイン領域110Aに入力データDINをプログラムし(S124)、さらに選択ワード[n,m]のEFフラグを「0」に設定する(S126)。EFフラグ「0」は、選択ワード[n,m]が消去されたものではなく、プログラムされたものであることを示す。図11(B)に具体例を示す。入力データDINが「FFFFFFFEh」であり、選択ワード[n,m]に記憶されたデータが「00000002h」であるとき、選択ワード[n,m]には入力データDINがプログラムされ、EFフラグが「0」に設定される。
【0027】
図10は、本実施例の読出し動作を説明するフローである。コントローラ120は、外部から読出しコマンドおよびアドレスを受け取ると(S130)、行アドレスに基づきブロック[n]のm番目のワード「n,m」を選択し、選択ワード[n,m]のEFフラグが「1」であるか否かを参照する(S132)。EFフラグが「1」である場合には、コントローラ120は、選択ワード[n.m]のデータの如何にかかわらず、読出しデータDOUTの全てを、消去を表す「1」にして出力させる(S134)。一方、EFフラグが「0」である場合には、コントローラ120は、選択ワード[n,m]に記憶されたデータを読出し、これをデータDOUTとして出力させる(S136)。図11(C)、(D)に具体例を示す。読出しケース1(C)では、EFフラグが「1」であるため、読出しデータDOUTとして、「FFFFFFFFh」が出力される。読出しケース2(D)では、EFフラグが「0」であるため、読出しデータDOUTとして、選択ワード[n,m]に記憶されたデータ「00000002h」が出力される。
【0028】
このように本実施例によれば、メモリアレイ110の選択ブロックを消去するときに、選択ブロック内の全ワードをデータ「1」に書き換えない。このため、データ「1」を記憶している可変抵抗素子子に、再度、データ「1」を書き込む(リセットする)必要がなり、可変抵抗素子のエンデュライン特性が悪化するのを防止することができる。
【0029】
次に、本発明の第2の実施例について説明する。図12は、第2の実施例に係る抵抗変化型メモリ110Aの構成を示す図である。第2の実施例では、メモリアレイ110のフラグ領域110Bが更なるRFフラグを備えている。RFフラグは、プログラムするときに、選択ワードに入力データの正転データをプログラムしたが、入力データの反転データをプログラムしたかを判別するフラグである。
【0030】
図13は、第2の実施例の消去動作を示すフローである。第2の実施例では、コントローラ120は、選択ブロック[n]のEFフラグ[n,*]とRF[n,m]のそれぞれに「1」を設定し(S204)、それ以外の動作は、第1の実施例のときと同様である。図16(A)に、具体例を示す。選択ブロック[n]のm番目のワード[n,m]が「00000002h」であるとき、このデータは変更されることなく、EFフラグおよびRFフラグに「1」が設定される。選択ブロック[n]の他のワードも同様である。
【0031】
図14は、本実施例のプログラム動作を説明するフローである。コントローラ120は、外部からプログラムコマンドおよびアドレスを受け取り(S220)、外部からの入力データDINを入力部50にロードする(S222)。次に、コントローラ120は、行アドレスに基づきメモリアレイ110の選択されたブロック[n]の中からm番目のワード[n,m]を選択し、選択ワード[n,m]に記憶されたデータと入力データDINとのEXORを行い、その演算結果をレジスタや可変スイッチ等に保持する(S224)。入力データDINと一致するビットは「0」、不一致のビットは「1」になる。次に、コントローラ120は、EXORの演算結果を参照し、データ「1」をカウントしその数が50%以上であるか否かを判定する(S226)。データ「1」の数は、選択ワードに記憶されたデータと入力データDINとの不一致のビット数を表す。カウントされたデータ「1」が50%以上である場合には、選択ワード[n,m]に入力データDINがプログラムされ、EFフラグが「0」、RFフラグが「1」に設定される(S226)。ここで留意すべきは、選択ワード[n,m]において、不一致のビットを反転することでプログラムが行われる。他方、カウントされたデータ「1」が50%未満である場合には、選択ワード[n,m]に、入力データDINの反転データがプログラムされ、EFフラグが「0」に、RFフラグが「0」に設定される(S228)。この場合にも、選択ワード[n,m]において、不一致のビットのみが反転される。これで、プログラム動作が終了する。
【0032】
図16(B)、(C)に具体例を示す。プログラムケース1(B)において、入力データDINが「FFFFFFFEh」であり、選択ワード[n,m]に記憶されたデータが「FFFFFFFDh」であるとき、EXORの演算結果におけるデータ「1」のカウント数は「2」である。つまり、データ「1」の数は、50%未満である。それ故、選択ワード[n,m]には、入力データDINがプログラムされるが、EXORの不一致を表す「1」に対応する選択ワード[n,m]の下位2ビットのデータのみが反転される。また、RFフラグは、正転データのプログラムを示すために、「1」が設定される。
【0033】
プログラムケース2(C)において、入力データDINが「FFFFFFFEh」であり、選択ワード[n,m]に記憶されたデータが「00000002h」であるとき、EXORの演算結果におけるデータ「1」のカウント数は「30」である。不一致のデータ数が50%以上であるため、選択ワード[n,m]には、入力データDINの反転データがプログラムされる。この場合、反転データが用いられるため、EXORの一致を表す「0」に対応する選択ワード[n,m]のビットのデータのみが反転される。また、RFフラグは、入力データDINの反転データのプログラムを示すために、「0」が設定される。
【0034】
図15は、本実施例の読出し動作を説明するフローである。コントローラ120は、外部から読出しコマンドおよびアドレスを受け取ると(S230)、行アドレスに基づきブロック[n]のm番目のワード[n,m]を選択し、選択ワード[n,m]のEFフラグが「1」であるか否かを判定する(S232)。EFフラグが「1」である場合には、コントローラ120は、選択ワード[n,m]のデータの如何にかかわらず、読出しデータDOUTの全て「1」にして出力させる(S234)。一方、EFフラグが「0」である場合には、コントローラ120は、RFフラグが「1」であるか否かを判定する(S240)。RFフラグが「1」である場合には、コントローラ120は、選択ワード[n,m]に記憶されたデータを読出しデータDOUTとして出力させ(S242)、RFフラグが「0」である場合にいは、コントローラ120は、選択ワード[n,m]に記憶されたデータを反転したデータを読出しデータDOUTとして出力させる(S244)。
【0035】
図17(A)、(B)、(C)に具体例を示す。読出しケース1(A)では、EFフラグが「1」であるため、選択ワード[n,m]に記憶されているデータ「00000002h」とは無関係に、読出しデータDOUTとして「FFFFFFFFh」が出力される。読出しケース2(B)では、EFフラグが「0」、RFフラグが「1」である。このため、選択ワード[n,m]に記憶されたデータ「FFFFFFFE2h」が読出しデータDOUTとして出力される。読出しケース3(C)では、EFフラグが「0」、RFフラグが「0」である。これは、入力データDINの反転データが選択ワード[n.m]にプログラムされたことになっているため、選択ワード[n,m]に記憶されたデータの反転データが読出しデータDOUTとして出力される。
【0036】
第2の実施例によれば、プログラムするときに、入力データとワードに記憶されているデータとの不一致または一致の割合に基づき入力データの正転データまたは反転データをプログラムするようにしたので、選択ワードの可変抵抗素子の書き換え回数を第1の実施例のときよりも少なくすることができる。
【0037】
上記実施例は、抵抗型変化メモリがNOR型フラッシュメモリと互換性のある仕様で動作する例を示したが、抵抗型変化メモリがNAND型フラッシュメモリと互換性のある仕様で動作するものであってもよい。さらに上記実施例は、ランダムアクセスが可能であり、不揮発性メモリ素子のデータが「0」から「1」、または「1」から「0」にダイレクトに書き換えが可能である半導体記憶装置として抵抗変化型メモリを例示したが、不揮発性メモリ素子は、抵抗可変型に限らず他の強誘電体や磁気などによりデータを記憶するものであってもよい。
【0038】
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0039】
100、100A:抵抗変化型メモリ
110:メモリアレイ
110A:メイン領域
110B:フラグ領域
120:コントローラ
130:データ選択部
140:データ入力部
150:データ出力部
【要約】
【課題】 ブロック単位の消去またはワード単位のプログラムによるエンデュランス特性の低下を抑制する半導体記憶装置を提供する。
【解決手段】 本発明の抵抗変化型メモリ100は、可逆性かつ不揮発性の可変抵抗素子によりデータを記憶するメモリアレイ110と、外部からの消去コマンドに応答してメモリアレイ110の選択されたブロックを消去するとき、ブロックのデータを変更することなくブロックが消去状態であることを表すEFフラグを設定するコントローラ120とを含む。コントローラ120はさらに、外部からの読出しコマンドに応答してメモリアレイ110の選択されたワードを読み出すとき、EFフラグに基づき選択されたワードのデータまたは消去を表すデータを出力する読出し手段を含む。
【選択図】 図7
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17