(57)【要約】【課題】疑似乱数発生器等を省略することでレイアウト面積を改善することができる不揮発性半導体記憶装置を提供する。【解決手段】ユーザーデータ用に割り当てられたワード線５１と、ランダマイズシードデータ用に割り当てられたワード線５２とを有し、入力データをランダマイズしたデータをワード線５１を用いて記憶するとともに、ランダマイズシードデータをワード線５２を用いて記憶する不揮発性メモリセルアレイ１０と、ワード線５２を用いて読み出されたランダマイズシードデータを格納するラッチ３１と、ラッチ３２に格納されている入力データとラッチ３１に格納されているランダマイズシードデータとの排他的論理和を、ワード線５１を用いて不揮発性メモリセルアレイ１０に書き込むデータとして求めるランダマイズ回路３３とを備えている。【選択図】図１
2013125570.tif 000002
【特許請求の範囲】
【請求項１】
ユーザーデータ用に割り当てられたユーザーデータ用ワード線と、ランダマイズシードデータ用に割り当てられたランダマイズシードデータ用ワード線とを有し、入力データをランダマイズしたデータを前記ユーザーデータ用ワード線を用いて記憶するとともに、前記ランダマイズシードデータを前記ランダマイズシードデータ用ワード線を用いて記憶する不揮発性メモリセルアレイと、
前記入力データを格納するビットラインデータ用ラッチと、
前記ランダマイズシードデータ用ワード線を用いて読み出されたランダマイズシードデータを格納するランダマイズシードデータ用ラッチと、
前記ビットラインデータ用ラッチに格納されているデータと前記ランダマイズシードデータ用ラッチに格納されている前記ランダマイズシードデータとの排他的論理和を、前記ユーザーデータ用ワード線を用いて前記不揮発性メモリセルアレイに書き込むデータとして求めるランダマイズ回路と
を備えることを特徴とする不揮発性半導体記憶装置。
【請求項２】
前記不揮発性メモリセルアレイが、前記入力データをランダマイズしたデータを記憶するメインデータ領域と、前記ランダマイズシードデータの選択条件を記憶するランダマイズシード条件格納領域とに分割されていて、
前記ユーザーデータ用ワード線が、前記メインデータ領域と前記ランダマイズシード条件格納領域とに対して共通に敷設されたものであり、
前記メインデータ領域に前記ユーザーデータ用ワード線を用いて記憶されたデータのランダマイズシードの選択条件が、同一の前記ユーザーデータ用ワード線を用いて前記ランダマイズシード条件格納領域に記憶される
ことを特徴とする請求項１に記載の不揮発性半導体記憶装置。
【請求項３】
データの読み出し時には、
前記ビットラインデータ用ラッチが、前記ユーザーデータ用ワード線を用いて読み出されたデータを格納し、
前記ランダマイズ回路が、前記ビットラインデータ用ラッチに格納されているデータと前記ランダマイズシードデータ用ラッチに格納されている前記ランダマイズシードデータとの排他的論理和を、読み出しデータとして求める
ことを特徴とする請求項１又は２に記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
ＮＡＮＤ型フラッシュメモリセルアレイでは、電子の注入されたメモリセル数が増加すると、非選択セルの保持するデータが破壊される、プログラムディスターブと呼ばれる問題が発生する。また、メモリセルアレイ内において、同一のデータが連続する場合には、ＧＩＤＬ（Ｇａｔｅ  Ｉｎｄｕｃｅｄ  Ｄｒａｉｎ  Ｌｅａｋａｇｅ）によって、プログラムディスターブの問題が生じる。例えば、ＣＳＬ（Ｃｏｍｍｏｎ  Ｓｏｕｒｃｅ  Ｌｉｎｅ）方式を採用している場合、同一ストリング内のデータの偏りにより、ＣＳＬノイズが不安定になる。また、メモリセルがＭＬＣ（Ｍｕｌｔｉ  Ｌｅｖｅｌ  Ｃｅｌｌ）である場合、データの偏りが大きければ、フローティングゲート内でのチャージロスまたはゲインによって、データに誤りが発生する可能性が高くなる。
【０００３】
上記の諸問題は、書き込みデータをランダマイズし、‘０’と‘１’の偏りを減らすことで、抑制することができる。このような技術の一例が特許文献１に記載されている。特許文献１には、書き込みデータのビット毎の累積値に基づいて書き込みデータを平均化する技術や、アドレスをランダマイズシードとして疑似乱数を発生させ、この疑似乱数を用いてワード線方向にランダマイズを行い、書き込みデータを平均化する技術が示されている（後者の技術については特許文献１の図２４、段落０１１６〜０１２２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１６３７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載されている不揮発性半導体記憶装置では、書き込みデータの‘０’と‘１’の偏りを減らすため、累積値を用いる構成において、書き込みデータの累積値を保持、判定したり、判定結果に基づいてデータを選択したりするための回路や、累積値を用いない構成において、アドレスデータから疑似乱数を発生させる疑似乱数発生器が設けられている。このため、このような回路に割かれるレイアウト面積の削減が課題となっていた。
【０００６】
本発明は、上記の課題を解決することができる不揮発性半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明の不揮発性半導体記憶装置は、ユーザーデータ用に割り当てられたユーザーデータ用ワード線と、ランダマイズシードデータ用に割り当てられたランダマイズシードデータ用ワード線とを有し、入力データをランダマイズしたデータを前記ユーザーデータ用ワード線を用いて記憶するとともに、前記ランダマイズシードデータを前記ランダマイズシードデータ用ワード線を用いて記憶する不揮発性メモリセルアレイと、前記入力データを格納するビットラインデータ用ラッチと、前記ランダマイズシードデータ用ワード線を用いて読み出されたランダマイズシードデータを格納するランダマイズシードデータ用ラッチと、前記ビットラインデータ用ラッチに格納されているデータと前記ランダマイズシードデータ用ラッチに格納されている前記ランダマイズシードデータとの排他的論理和を、前記ユーザーデータ用ワード線を用いて前記不揮発性メモリセルアレイに書き込むデータとして求めるランダマイズ回路とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明の不揮発性半導体記憶装置では、入力データ記憶用の不揮発性メモリセルアレイ内に、ランダマイズシードデータが記憶される。そして、この入力データとランダマイズシードデータとの排他的論理和を求めることで、乱数化されたデータが不揮発性メモリセルアレイに書き込まれる。よって、書き込みデータの累積値を保持、判定したり、判定結果に基づいてデータを選択したりするための回路や、疑似乱数を発生させる疑似乱数発生器を設ける必要が無くなり、レイアウト面積を改善することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態としての不揮発性半導体記憶装置１００の構成を示すブロック図である（ただし、プログラム時のデータの流れを示す）。
【図２】図１の不揮発性半導体記憶装置１００におけるリード時のデータの流れを示すブロック図である。
【図３】図１の不揮発性半導体記憶装置１００におけるプログラム時の処理の流れを示すフローチャートである。
【図４】図１の不揮発性半導体記憶装置１００におけるリード時の処理の流れを示すフローチャートである。
【図５】図１の不揮発性半導体記憶装置１００に格納されるデータの一例を示した図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して本発明の実施の形態について説明する。図１は、本発明の一実施形態としての不揮発性半導体記憶装置１００の構成を示すブロック図である。また、図２は図１と同一の不揮発性半導体記憶装置１００の構成を示すブロック図であるが、図１ではデータのプログラム時（書き込み時）のデータの流れを示しているのに対して、図２ではデータのリード時（読み出し時）のデータの流れを示している。
【００１１】
不揮発性半導体記憶装置１００は、不揮発性メモリセルアレイ１０、ワードラインデコーダ２０、ページバッファ３０ａ、ページバッファ３０ｂ、周辺回路４０等を備えて構成されている。なお、図１及び図２では、不揮発性半導体記憶装置１００が備える構成として、本発明の特徴に係る部分の構成のみを示している。すなわち、不揮発性半導体記憶装置１００は、図示していない構成として、外部の装置と接続される複数のＩ／Ｏ端子（入出力端子）、ライトイネーブル端子、リードイネーブル端子、レディ／ビジィ端子、電源端子、グランド端子等を備えている。また、不揮発性半導体記憶装置１００は内部に、図示していない、制御回路、電源回路、各種レジスタ、タイミング生成回路等を備えている。
【００１２】
不揮発性メモリセルアレイ１０は、ＮＡＮＤ型フラッシュメモリセル等の複数の不揮発性メモリセルを有して構成されている。不揮発性メモリセルアレイ１０は、また、各不揮発性メモリセルを選択する際に使用される、図に向かって水平方向に敷設された複数のユーザーデータ用ワード線５１及び１又は複数のランダマイズシードデータ用ワード線５２と、垂直方向に敷設された複数のビット線６１及び１又は複数のビット線６２とを有している。複数のユーザーデータ用ワード線５１は、外部から入力されたデータの記憶用に割り当てられたワード線である。１又は複数のランダマイズシードデータ用ワード線５２は、入力データをランダマイズ（疑似乱数化）したり、ランダマイズしたデータから元の入力データを復元したりする際に用いられるランダマイズシードデータの記憶用に割り当てられたワード線である。ユーザーデータ用ワード線５１とランダマイズシードデータ用ワード線５２は、ワードラインデコーダ２０によって選択される。また、不揮発性メモリセルアレイ１０は、入力データをランダマイズしたデータを記憶するためのメインデータ領域１ａに属するメモリセルアレイ１０ａと、ランダマイズシードデータの選択条件を記憶するためのランダマイズシード条件格納領域１ｂに属するメモリセルアレイ１０ｂとに分割されている。また、ユーザーデータ用ワード線５１及びランダマイズシードデータ用ワード線５２は、メインデータ領域１ａとランダマイズシード条件格納領域１ｂとに対して共通に敷設されている。本実施形態では、メインデータ領域１ａにユーザーデータ用ワード線５１を用いて記憶されたデータをランダマイズした際に使用されたランダマイズシードの選択条件（すなわちランダマイズシードを特定するための情報）が、同一のユーザーデータ用ワード線５１を用いてランダマイズシード条件格納領域１ｂに記憶される。また、ビット線６１はメインデータ領域１ａに属するメモリセルアレイ１０ａに対して敷設され、ビット線６２はランダマイズシード条件格納領域１ｂに属するメモリセルアレイ１０ｂに対して敷設されている。
【００１３】
なお、図１及び図２では、複数のユーザーデータ用ワード線５１、ランダマイズシードデータ用ワード線５２、ビット線６１及びビット線６２を１本のみ構成として示している。
【００１４】
ページバッファ３０ａは、メインデータ領域１ａ内のメモリセルアレイ１０ａに対してデータをプログラムしたり、メモリセルからデータをリードしたりする際に、それらのデータを一時的に記憶する回路である。本実施形態のページバッファ３０ａは、特に、ランダマイズシードデータ用ラッチ３１と、ビットラインデータ用ラッチ３２と、ランダマイズ回路３３とを有している。ランダマイズシードデータ用ラッチ３１は、ランダマイズシードデータ用ワード線５２を用いて読み出されたランダマイズシードデータを格納する際に使用されるラッチ回路である。ビットラインデータ用ラッチ３２は、プログラム時には外部から入力された入力データを格納する際に使用され、リード時にはユーザーデータ用ワード線５１を用いて読み出されたデータを格納する際に使用される。これらのランダマイズシードデータ用ラッチ３１とビットラインデータ用ラッチ３２は、複数のビット線６１の本数分設けられている。
【００１５】
ランダマイズ回路３３は、ビットラインデータ用ラッチ３２に格納されているデータとランダマイズシードデータ用ラッチ３１に格納されているランダマイズシードデータとの排他的論理和をビット毎に求める回路である。ランダマイズ回路３３が求めた排他的論理和は、プログラム時には、ユーザーデータ用ワード線５１を用いて不揮発性メモリセルアレイ１０のメモリセルアレイ１０ａに書き込まれる。また、ランダマイズ回路３３が求めた排他的論理和は、リード時には、不揮発性半導体記憶装置１００から出力される読み出しデータとなる。
【００１６】
ページバッファ３０ｂは、ランダマイズシード条件格納領域１ｂ内のメモリセルアレイ１０ｂに対してランダマイズシードデータの選択条件を表すデータをプログラムしたり、メモリセルからランダマイズシードデータの選択条件を表すデータをリードしたりする際に、それらのデータを一時的に記憶する回路である。このページバッファ３０ｂは、選択条件用ビットラインデータ用ラッチ３４を有している。
【００１７】
本実施形態では、疑似乱数化に使用するランダマイズシードデータを不揮発性メモリセルアレイ１０内に予め記憶しておくものであるが、ランダマイズシードデータは例えば次のように用意しておくことができる。まず、用意するランダマイズシードデータの個数は任意である。１個であってもよいし、複数であってもよい。また、複数の場合には、ランダマイズシードデータの選択処理が必要になるが、選択の仕方も任意に設定することができる。例えば、ユーザーが指定したアドレスの全部又は一部をデコードした結果に応じて選択するようにしたり、ランダマイズシードデータを２個用意する場合にはアドレスの任意の１ビットの値に応じて選択したりすることができる。また、疑似乱数化するか否かについても選択可能とすることができる。したがって、本実施形態において、ランダマイズシードデータの選択条件を表すデータは、例えば、疑似乱数化するか否かを表す１ビットのデータと、選択可能とするランダマイズシードデータの個数に応じたビット数のデータとを含むものとして構成することができる。よって、選択条件用ビットラインデータ用ラッチ３４は、所定の複数ビット分設けられている。
【００１８】
次に、周辺回路部４０は、ランダマイズシードデータワードライン選択回路４１と、ユーザーアドレスワードライン選択回路４２とを有している。ランダマイズシードデータワードライン選択回路４１は、プログラム時には、例えば外部から指定されたアドレスの値に基づいて複数用意されたランダマイズシードのうちのいずれか１つを選択する処理を行い、選択した結果を表すデータを、ページバッファ３０ｂとワードラインデコーダ２０とへ出力する。ただし、予め用意するランダマイズシードデータを１個とする場合には入力されたアドレスに基づく選択処理は省略することができる。また、リード時には、ランダマイズシードデータワードライン選択回路４１は、ページバッファ３０ｂの選択条件用ビットラインデータ用ラッチ３４にラッチされているランダマイズシードデータの選択条件を表すデータに基づいて複数用意されたランダマイズシードのうちのいずれか１つを特定するデータを、ワードラインデコーダ２０へ出力する。ページバッファ３０ｂでは、プログラム時には、ランダマイズシードデータワードライン選択回路４１から入力されたデータが選択条件用ビットラインデータ用ラッチ３４にラッチされる。また、ワードラインデコーダ２０では、プログラム時及びリード時に、ランダマイズシードデータワードライン選択回路４１から入力されたデータに基づいて、所定のタイミングで所定のランダマイズシードデータ用ワード線５２が選択される。
【００１９】
ユーザーアドレスワードライン選択回路４２は、外部から指定されたアドレスに基づいてユーザーデータ用ワード線５１を選択するためのデータを生成し、ワードラインデコーダ２０へ出力する。ワードラインデコーダ２０では、ユーザーアドレスワードライン選択回路４２から入力されたデータに基づいて、プログラム時及びリード時に、所定のタイミングで所定のユーザーデータ用ワード線５１が選択される。
【００２０】
次に、図１、図３及び図５を参照して、不揮発性半導体記憶装置１００におけるプログラム時の動作について説明する。なお、各部の制御は、特に制御の主体を示していない場合、図示していない制御回路によって行われるものとする。まず、ユーザーによって外部から所定のアドレスとデータを指定してそのデータをプログラムせよとのコマンドが、不揮発性半導体記憶装置１００に対して入力されたとすると、不揮発性半導体記憶装置１００（の所定の制御回路）は、入力データをページバッファ３０ａのビットラインデータ用ラッチ３２に格納する（ステップＳ１１）。
【００２１】
次に、ランダマイズシードデータワードライン選択回路４１は、外部から指定されたアドレスの値に基づいて複数用意されたランダマイズシードのうちのいずれか１つを選択する処理を行い、選択した結果を表すデータをワードラインデコーダ２０へ出力する（例えば図の矢印Ａ２で示すデータが出力される）。ワードラインデコーダ２０は、ランダマイズシードデータワードライン選択回路４１が指定するランダマイズシードデータ用ワード線５２を選択して（例えばアドレスＡ２のランダマイズシードデータ用ワード線５２を選択して）、ランダマイズシードデータのセンスを行い、センス結果（例えばデータＤ２）がメインデータ領域１ａにあるページバッファ３０ａのランダマイズシードデータ用ラッチ３１に格納される（ステップＳ１２）。
【００２２】
次に、ランダマイズ回路３３が、メインデータ領域１ａにあるページバッファ３０ａ内のビットラインデータ用ラッチ３２とランダマイズシードデータ用ラッチ３１に格納している各データを用いて排他的論理和を求め、ランダマイズを行う（ステップＳ１３）。
【００２３】
次に、ランダマイズシードデータワードライン選択回路４１が、選択したランダムシードデータ用ワードライン５２の選択条件を表す情報をランダマイズシード条件格納領域１ｂ内のページバッファ３０ｂの選択条件用ビットラインデータ用ラッチ３４に格納する（ステップＳ１４）。
【００２４】
次に、ユーザーが指定したアドレスに基づいてユーザーアドレスワードライン選択回路４２から出力されたデータ（Ａ１）に応じてワードラインデコーダ２０によって選択されたユーザーデータ用ワード線５１（例えばアドレスＡ１のユーザーデータ用ワード線５１）で選択されたメインデータ領域１ａ内の不揮発性メモリセルに、ランダマイズ回路３３の出力データＤ１が、また、同一のユーザーデータ用ワード線５１（例えばアドレスＡ１のユーザーデータ用ワード線５１）で選択されたランダマイズシード条件格納領域１ｂ内の不揮発性メモリセルに、選択条件用ビットラインデータ用ラッチ３４にラッチされているデータＤ３が、同時にプログラムされる（ステップＳ１５）。
【００２５】
以上の処理によって、不揮発性メモリセルアレイ１０内では図５に示すようなデータがプログラムされる。すなわち、アドレスＡ１のユーザーデータ用ワード線５１で選択されたメモリセルには、メインデータ領域１ａにおいて入力データをアドレスＡ２のランダマイズシードＤ２で乱数化したデータＤ１が、そして、ランダマイズシード条件格納領域１ｂにおいてランダマイズシード条件を表すデータＤ３が、記憶される。ここで、ランダマイズシード条件を表すデータＤ３は、例えば乱数化の有り又は無しを表すデータ７１と、ランダマイズシードデータＤ２のアドレスＡ２を表すデータ７２を含んでいる。なお、アドレスＡ２のランダマイズシードデータ用ワード線５２で選択されたメモリセルには、ランダマイズシードデータＤ２が予め記憶されている。また、アドレスＡ２のランダマイズシードデータ用ワード線５２で選択されるランダマイズシード条件格納領域１ｂ内のメモリセル７３は使用されない。
【００２６】
次に、図２、図４及び図５を参照して、不揮発性半導体記憶装置１００におけるリード時の動作について説明する。なお、各部の制御は、特に制御の主体を示していない場合、図示していない制御回路によって行われるものとする。また、不揮発性メモリセルアレイ１０内には図５に示すようなデータがプログラムされているものとする。
【００２７】
まず、ユーザーによって外部から所定のアドレス（図２のアドレスＡ１に対応するものであるとする）を指定してそのアドレスをリードせよとのコマンドが、不揮発性半導体記憶装置１００に対して入力されたとすると、ユーザーが指定したアドレスに対応した選択データ（Ａ１）がユーザーアドレスワードライン選択回路４２から出力され、ワードラインデコーダによって対応するユーザーデータ用ワード線５１（この場合、アドレスＡ１のユーザーデータ用ワード線５１）が選択される。そして、アドレスＡ１のユーザーデータ用ワード線５１のデータ（この場合、データＤ１）が、ビットラインデータ用ラッチ３２に格納される（ステップＳ２１）。
【００２８】
同時に、同一ユーザーデータ用ワード線５１（この場合、アドレスＡ１のユーザーデータ用ワード線５１）上に格納されていたランダマイズシード条件格納領域１ｂ内のデータ（この場合、データＤ３）が、選択条件用ビットラインデータ用ラッチ３４にラッチされ、さらに、ランダマイズシードデータワードライン選択回路４１に転送される（ステップＳ２２）。
【００２９】
次に、ランダマイズシードデータワードライン選択回路４１が選択条件用ビットラインデータ用ラッチ３４から転送されたデータ（この場合、データＤ３）に基づいて、ランダマイズシードデータ用ワード線５２の選択結果（この場合、Ａ２）を出力し、ワードラインデコーダ２０は、ランダマイズシードデータワードライン選択回路４１が指定するランダマイズシードデータ用ワード線５２を選択して（この場合、アドレスＡ２のランダマイズシードデータ用ワード線５２を選択して）、ランダマイズシードデータのセンスを行い、センス結果（データＤ２）がメインデータ領域１ａにあるページバッファ３０ａのランダマイズシードデータ用ラッチ３１に格納される（ステップＳ２３）。
【００３０】
次に、ランダマイズ回路３３が、ステップＳ２１でビットラインデータ用ラッチ３２に格納されたデータ（データＤ１）と、ステップＳ２３でランダマイズシードデータ用ラッチ３１に格納されたデータ（データＤ２）のランダマイズを行い（すなわち排他的論理和を求め）、データを復元する（ステップＳ２４）。そして、復元されたデータが出力される（ステップＳ２５）。
【００３１】
以上のように、本実施形態の不揮発性半導体記憶装置１００では、入力データ記憶用の不揮発性メモリセルアレイ１０内に、ランダマイズシードデータが記憶される。そして、この入力データとランダマイズシードデータとの排他的論理和を求めることで、乱数化されたデータが不揮発性メモリセルアレイ１０に書き込まれる。よって、書き込みデータの累積値を保持、判定したり、判定結果に基づいてデータを選択したりするための回路や、疑似乱数を発生させる疑似乱数発生器を設ける必要が無くなり、レイアウト面積を改善することができる。
【００３２】
また、ランダマイズシードデータを不揮発性メモリセルアレイ１０上に置くことで容易に複数のパターンのランダマイズシードデータを格納することが出来るため、データの均一化が行い易くなる。
【００３３】
なお、本発明の実施の形態は上記のものに限定されず、例えば、ランダマイズシードデータワードライン選択回路４１とユーザーアドレスワードライン選択回路４２の一部を一体として構成するようにしたり、予め用意するランダマイズシードデータを１個としてランダマイズシード条件格納領域１ｂに係る構成（すなわちメモリセルアレイ１０ｂ、ページバッファ３０ｂ等）を省略したりする変更等を適宜行うことができる。
【符号の説明】
【００３４】
１００  不揮発性半導体記憶装置
１０  不揮発性メモリセルアレイ
１ａ  メインデータ領域
１ｂ  ランダマイズシード条件格納領域
１０ａ、１０ｂ  メモリセルアレイ
２０  ワードラインデコーダ
３０ａ、３０ｂ  ページバッファ
３１  ランダマイズシードデータ用ラッチ
３２  ビットラインデータ用ラッチ
３３  ランダマイズ回路
３４  選択条件用ビットラインデータ用ラッチ
４０  周辺回路
４１  ランダマイズシードデータワードライン選択回路
４２  ユーザーアドレスワードライン選択回路
５１  ユーザーデータ用ワード線
５２  ランダマイズシードデータ用ワード線
６１、６２  ビット線
【図１】
2013125570.tif 000003
【図２】
2013125570.tif 000004
【図３】
2013125570.tif 000005
【図４】
2013125570.tif 000006
【図５】
2013125570.tif 000007