(57)【要約】【課題】ＷＳＭ回路による書き込み制御を複雑にすることなく、ページバッファ回路に格納された書き込み不要なデータがメモリセルに書き込まれないように制御する。【解決手段】ページバッファ回路１２０から読み出されるデータの少なくとも一部を、書き込み動作が行われないデータに置き換えるマスク回路１７０を設ける。複数のデータバス幅で制御可能なフラッシュメモリ、ページモード読み出し機能を備えた多値フラッシュメモリ等において、ページバッファ回路１２０からメモリセルへの書き込みが不要なデータが読み出された場合に、マスク回路１７０で書き込み動作が行われないデータに置き換えることによって、メモリセルに書き込まれないようにする。マスクの要否を判断するためには、アドレスの大小比較判定、アドレスの一致判定、書き込まれるデータ数等が利用される。【選択図】　　図１
2004039112.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを有するメモリアレイと、
該メモリセルに書き込まれるデータを一時的に格納するページバッファ手段と、
該ページバッファ手段から読み出されたデータの少なくとも一部をマスク可能なマスク手段とを備えている半導体記憶装置。
【請求項２】
前記マスク手段は、複数種類のデータバス幅での書き込みに対応してデータの一部をマスク可能とされている請求項１に記載の半導体記憶装置。
【請求項３】
前記マスク手段は、前記ページバッファ手段からデータを読み出す際に、該ページバッファ手段からの読み出しが指定されたアドレスと、前記メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとの大小を比較する比較手段を備え、該比較手段の比較結果に基づいて、データをマスクするか否かを判定する請求項１または請求項２に記載の半導体記憶装置。
【請求項４】
前記マスク手段は、前記ページバッファ手段からデータを読み出す際に、該ページバッファ回路からの読み出しが指定されたアドレスと、前記メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとが一致するか否かを判定する一致検出手段を備え、該一致判定手段の判定結果に基づいて、データをマスクするか否かを判定する請求項１または請求項２に記載の半導体記憶装置。
【請求項５】
前記マスク手段は、前記メモリセルへの書き込みが行われるデータの数をカウントするカウンタ手段を備え、該カウンタ手段のカウント結果に基づいて、データをマスクするか否かを判定する請求項１または請求項２に記載の半導体記憶装置。
【請求項６】
前記マスク手段は、前記ページバッファ手段から読み出されたデータの一部をマスクする機能を不活性化する不活性化手段を備えている請求項１〜請求項５のいずれかに記載の半導体記憶装置。
【請求項７】
前記メモリセルは３種類以上の値をデータとして設定可能な多値メモリセルであり、複数のメモリセルから一度に読み出しを行うページモード読み出し手段を備えている請求項１〜請求項６のいずれかに記載の半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリセルに書き込まれるデータを一時的に格納するページバッファ手段を有する半導体記憶装置に関する。
【０００２】
【従来の技術】
半導体記憶装置において、メモリセルに対するデータ書き込みが比較的低速である場合には、メモリセルに書き込まれるデータを一時的に格納するページバッファ回路を設けて、メモリセルへのデータ書き込み速度に合わせてページバッファ回路からデータを読み出すように構成されたものが広く用いられている。このような半導体記憶装置の代表的なものとしては、例えばフラッシュメモリが挙げられる。
【０００３】
以下に、従来のフラッシュメモリにおいて、ページバッファ回路を利用したデータ書き込み動作について説明する。
【０００４】
図９は、従来のページバッファ回路を有するフラッシュメモリについて、書き込みに関係する部分の構成を示すブロック図である。
【０００５】
このフラッシュメモリ５００は、制御バス５０１、アドレスバス５０２およびデータバス５０３を介して外部との間で制御信号、アドレスおよびデータを入出力するようになっている。また、データ書き込みに携わる回路として、ユーザー・インターフェイス（以後、ＵＩと称する）回路５１０、ページバッファ回路５２０、ライト・ステート・マシン（以後、ＷＳＭと称する）回路５３０、書き込み制御回路５４０、メモリアレイ５５０および読み出し回路５６０を有している。
【０００６】
フラッシュメモリ５００に対して、外部から制御バス５０１、アドレスバス５０２およびデータバス５０３を介して書き込み動作、書き込みアドレスおよびデータを指定する各種信号が供給されると、ＵＩ回路５１０によって指定された内容が解釈される。そして、ＵＩ回路５１０からページバッファ回路５２０に対して、メモリアレイ５５０に含まれるメモリセルに書き込まれる内容（書き込みデータ）を格納するように指示する制御信号が制御バス５１１を介して供給される。
【０００７】
ページバッファ回路５２０では、制御バス５１１を介してＵＩ回路５１０からの制御信号が供給されると、アドレスバス５１２を介して指定されるアドレスに対して、データバス５１３を介して指定されるデータが格納される。そして、ページバッファ回路５２０に全てのデータが格納されると、ＵＩ回路５１０からＷＳＭ回路５３０に対して、書き込み動作の開始を指示する制御信号が制御バス５１４を介して供給される。
【０００８】
ＷＳＭ回路５３０では、制御バス５１４を介してＵＩ回路５１０からの制御信号が供給されると、ＷＳＭ回路５３０からページバッファ回路５２０に対して、制御バス５３２およびアドレスバス５３５を介してデータの読み出しを指示する制御信号および読み出しアドレスが供給される。ページバッファ回路５２０では、これらの信号に従って、格納されているデータが読み出され、データバス５２１を介してＷＳＭ回路５３０に供給される。
【０００９】
また、ＷＳＭ回路５３０からメモリアレイ５５０に対しては、アドレスバス５３５および制御バス５３６を介してアドレスおよび制御信号が供給される。メモリアレイ５５０では、これらのアドレスおよび信号がデコーダによりデコードされることによって、書き込み対象のメモリセルに対応するワード線とビット線とが選択され、所望のメモリセルが選択されて書き込みを実行するモードに設定される。
【００１０】
さらに、ＷＳＭ回路５３０から書き込み制御回路５４０に対しては、ページバッファ回路５２０から読み出された内容（データ）および書き込みアドレスがデータバス５３３およびアドレスバス５３５を介して供給され、メモリアレイ５５０に含まれるメモリセルにデータを書き込むように指示する制御信号が制御バス５３４を介して供給される。
【００１１】
書き込み制御回路５４０では、データバス５３３を介して書き込みデータが供給され、制御バス５３４を介してＷＳＭ回路５３０からの制御信号が供給されると、メモリアレイ５５０に含まれるメモリセルのビット線バス５５１が制御されて、メモリアレイ５５０に含まれる書き込み対象のメモリセルに対して書き込み動作が行なわれる。
【００１２】
書き込み動作が行われた後、メモリセルが所望のしきい値電圧に到達したか否かを検証するベリファイ動作が必要である場合には、書き込み操作の後に、メモリセルからの読み出し動作が行われ、読み出し回路５６０によってビット線に流れる電流がセンスされてしきい値電圧が検証される。
【００１３】
このベリファイ動作において、ＷＳＭ回路５３０からメモリアレイ５５０に対して、アドレスバス５３５および制御バス５３６を介してアドレスおよび信号が供給されることによって、書き込みが実行されたメモリセルが読み出しモードに設定される。また、読み出し回路５６０では、ＷＳＭ回路５３０から制御バス５３７を介して信号が供給されると、メモリセルに格納されている内容（データ）の読み出しが行われ、その結果がデータバス５６１を介してＷＳＭ５３０に出力される。
【００１４】
そして、ＷＳＭ回路５３０において、データバス５３３から供給される書き込み目標の内容（データ）と、データバス５６１から供給される現在の書き込み状況とが比較され、書き込み動作が完了しているか否かが確認される。その比較結果から、充分に書き込みが行われていると判断される場合には、そのメモリセルに対する書き込みが完了しているとみなされる。また、充分に書き込みが行われていないと判断される場合には、書き込みが不十分なメモリセルへの書き込み動作が再度行われる。
【００１５】
ＵＩ回路５１０は、制御バス５３１から伝えられる書き込み状況を、デバイスの状態遷移判定に利用し、またデータバス５０３を介して外部に出力できる。
【００１６】
フラッシュメモリ５００においては、ページバッファ回路５２０に格納された全データのメモリアレイ５５０に対する書き込みが完了するまで、これらの一連の書き込み処理が繰り返して行われるようになっている。
【００１７】
図１０は、フラッシュメモリ５００における書き込み処理手順を説明するためのフローチャートである。ここでは、フラッシュメモリ５００のデータ書き込みが単一のデータバス幅で制御され、読み出し処理・書き込み処理ともに、そのデータバス幅で行なわれる場合を一例として説明する。なお、実際には、以下に説明する処理手順以外に、様々な設定、ベリファイ動作、電圧制御などが必要とされるが、書き込み処理に直接的に関係しないものについては、説明を省略している。
【００１８】
まず、書き込み処理を実行する前に、ステップ７００１において、メモリアレイを書き込みモードに設定する。フラッシュメモリでは、一般に、書き込み動作のために高電圧が必要とされるので、データを書き込む度に電圧設定をやり直す必要が無いように、予め高電圧に設定しておき、一連の書き込み処理が完了するまで、高電圧を保持して高速化を図ることが有効である。
【００１９】
次に、ステップ７００２では、フラッシュメモリの内部アドレスを、データ書き込みが行われる先頭アドレスに設定する。
【００２０】
次に、ステップ７００３では、ページバッファ回路に格納されたデータの読み出しを行う。
【００２１】
次に、ステップ７００４では、内部アドレスで示されるメモリセルに対して、ページバッファ回路に格納されたデータに従って、書き込み操作を行う。
【００２２】
ステップ７００５では、現在の内部アドレスが、データ書き込みが行われる最終アドレスであるか否かを判断し、最終アドレスである場合には、一連の書き込み処理を終了する。また、現在の内部アドレスが最終アドレスではない場合には、ステップ７００６で内部アドレスをインクリメントなどの手段によって更新し、ステップ７００３の処理に戻る。この処理ループが、最終アドレスへのデータ書き込みが完了するまで、繰り返される。
【００２３】
以上のようにして、ページバッファ回路に格納されたデータの全てをメモリセルに書き込むことが可能である。
【００２４】
次に、ページバッファ回路を有するフラッシュメモリ５００のデータ書き込みを、複数のデータバス幅で制御する場合について説明する。ここでは、一例として、現在主流となっている、８ビットを１バイトとして扱うデータバス（バイトモード）と、１６ビットを１ワードとして扱うデータバス（ワードモード）とを、使用者が任意に選択することができるフラッシュメモリのデータ書き込み動作について説明する。ページバッファ回路のサイズは、１６ワードまたは３２バイトとする。また、ページバッファ回路へのデータ書き込み順序は、先頭のアドレスを除いて任意であり、各データ入力時のアドレスにより、書き込み対象のアドレスが決定されるものとする。
【００２５】
フラッシュメモリ５００に対して、バイトモードで図１１（ａ）で示すような書き込みパターンが入力されると、ページバッファ回路には、例えば図１１（ｂ）に示すようにデータが格納される。例えば、図１１（ａ）に示すＷｒｉｔｅ　Ｗｏｒｄ　Ａｄｄｒｅｓｓの１００６Ｈ、１００７Ｈ、・・・、１００ＥＨ、１００ＦＨは、それぞれ、図１１（ｂ）に示すＰａｇｅ　Ｂｕｆｆｅｒ　Ａｄｄｒｅｓｓの６Ｈ、７Ｈ、・・・、ＥＨ、ＦＨに対応し、図１１（ａ）に示すＷｒｉｔｅ　Ｗｏｒｄ　Ａｄｄｒｅｓｓの１０１０Ｈ、１０１１Ｈ、・・・、１０１５Ｈ、１０１６Ｈは、それぞれ、図１１（ｂ）に示すＰａｇｅ　Ｂｕｆｆｅｒ　Ａｄｄｒｅｓｓの０Ｈ、１Ｈ、・・・、５Ｈ、６Ｈに対応する。なお、末尾の’Ｈ’は１６進数を表す。
【００２６】
この例では、外部データバスが８ビットバスと１６ビットバスとを切り替える場合であっても、１６ビットバスでの動作速度を考慮すると、内部データバスが１６ビットで動作するほうが好ましいため、ページバッファ回路についても１６ビットバスで動作するように構成している。この入力パターンでは、データ書き込みが行われる先頭アドレスは１００６Ｈの上位バイト（Ｈｉｇｈ　Ｂｙｔｅ）＝Ｄａｔａ０であり、最終アドレスは１０１６Ｈの下位バイト（Ｌｏｗ　Ｂｙｔｅ）＝Ｄａｔａ３１であり、３２バイトのデータが書き込まれる。
【００２７】
以上のようにページバッファ回路にデータが格納されると、ページバッファ回路の内部では１６ビットバスで動作するため、ページバッファ回路に格納された内容（データ）を読み出すと、内部アドレスに対応して図１１（ｃ）に示すようなデータが出力される。この図１１（ｃ）に示す１００６Ｈの下位バイトと１０１６Ｈの上位バイトのデータは、メモリセルへの書き込みが要求されていないデータであり、これらの書き込みを実行しないための処理が必要になる。
【００２８】
図１２は、バイトモードおよびワードモードの両方のデータバス幅で制御可能なフラッシュメモリにおける書き込み処理手順を説明するためのフローチャートである。なお、実際には、以下に説明する処理手順以外に、様々な設定、ベリファイ動作、電圧制御などが必要とされるが、書き込み処理に直接的に関係しないものについては、説明を省略している。
【００２９】
ステップ７１０１〜ステップ７１０３の処理は、上記図１０のフローチャートに示すステップ７００１〜ステップ７１０３の処理と同様である。
【００３０】
ステップ７１０４では、ページバッファ回路への書き込みがバイトモードで行われているか、またはワードモードで行われているかを判定する。ページバッファ回路への書き込みがワードモードで行われている場合には、下位バイト／上位バイトの一方のみをページバッファ回路に書き込むことはないため、ステップ７１１１の書き込み実行まで進む。
【００３１】
一方、ページバッファ回路への書き込みがバイトモードで行われている場合には、ステップ７１０５からステップ７１１０において、下位バイト／上位バイトの一方のみ、書き込みを無効にする処理を行う。
【００３２】
このうち、ステップ７１０５からステップ７１０７では、ページバッファ回路への書き込みが上位バイトから始まるときに、下位バイトの不要な書き込みを禁止する処理を行う。同様に、ステップ７１０８からステップ７１１０では、ページバッファ回路への書き込みが下位バイトで終わるときに、上位バイトの不要な書き込みを禁止する。このような書き込み禁止処理を実現するためには、例えば、ステップ７１０３で読み出されたページバッファ回路のデータの一部をマスクする方法が考えられる。また、バイト毎に書き込みをイネーブルまたはディセーブルにする手段を書き込み制御回路に設けて、そのイネーブル信号またはディセーブル信号を制御する方法などによっても、書き込み禁止処理を実現することができる。
【００３３】
以上の処理によって、ステップ７１１１でメモリセルへのデータ書き込みを実行するときには、ページバッファ回路から読み出された上位バイト／下位バイトのうち、不要なバイトの書き込みデータを無効にすることができる。
【００３４】
対象アドレスへの書き込み完了後の処理であるステップ７１１２〜ステップ７１１３の処理は、図１０に示すフローチャートのステップ７００５〜ステップ７００６の処理と同様である。
【００３５】
以上のようにして、バイトモードおよびワードモードに対応してページバッファ回路に格納されたデータの全てをメモリセルに書き込むことが可能である。
【００３６】
次に、ページバッファ回路を有するフラッシュメモリ５００のデータ書き込みを、複数のデータバス幅で制御する他の例として、ページモード読み出し機能を備え、３種類以上の値をデータとして設定可能な多値メモリセルを用いたフラッシュメモリ（多値フラッシュメモリ）の場合について説明する。ここでは、上記と同様に、バイトモードとワードモードとを、使用者が任意に選択することができるフラッシュメモリのデータ書き込み動作について説明する。
【００３７】
多値メモリセルからのデータ読み出しは、一般的に、２種類の値をデータとして設定可能な二値メモリセルからのデータ読み出しよりも時間がかかるため、フラッシュメモリを搭載したシステムの処理性能を低下させないために、複数のメモリセルから同時にデータ読み出しを行うページモード読み出し機能が読み出し回路に設けられているものが多い。また、多値メモリセルへの書き込み処理を速くするため等の理由によって、メモリセルへの書き込みデータを一時的に格納するページバッファ回路が設けられているものが多い。
【００３８】
また、多値フラッシュメモリでは、書き込み動作がそれぞれの値を段階的に書き込むための複数のステップに分けられており、それぞれのステップで、現在のメモリセルのデータ格納状態（メモリセルのしきい値電圧）と目標となるデータとから、メモリセルに対してデータ書き込み（書き込みパルスの印加）を行うか否かを判断し、書き込みパルスの強さを調節する必要がある。
【００３９】
さらに、多値フラッシュメモリでは、書き込み動作が複数のステップに分けて行われ、ひとつのメモリセルに対するデータ書き込みパルスは二値メモリセルに比べて弱くなるため、一度に多数のメモリセルに対して書き込みを行うことができる可能性がある。このためには、書き込みパターン（書き込みデータ）を一時的にレジスタに格納しておくことが考えられる。以下では、ページモード読み出し機能によって一度に読み出しが可能なメモリセルと同数のメモリセルに対して、同時に書き込みが可能な多値フラッシュメモリの例について説明する。
【００４０】
図１３は、バイトモードおよびワードモードの両方のデータバス幅で制御可能な多値フラッシュメモリにおける書き込み処理手順を説明するためのフローチャートである。なお、ここでは、多値書き込みを一度だけ実行する処理手順を示しており、実際には同様の処理を繰り返す必要がある。さらに、実際には、以下に説明する処理手順以外に、様々な設定、ベリファイ動作、電圧制御などが必要とされるが、書き込み処理に直接的に関係しないものについては、説明を省略している。
【００４１】
まず、ステップ７２０１において、書き込みパターンを全てクリアする。これにより、後の処理で書き込みを実行するように明確に指示されたメモリセル以外には、書き込みが実行されないようにする。
【００４２】
次に、ステップ７２０２では、メモリアレイを読み出しモードに設定する。多値メモリセルを用いる場合、書き込みを実行するか否かは、現在のメモリセルの状態（メモリセルのしきい値電圧）に依存するため、書き込みを実行する前にメモリセルのデータを読み出す必要がある。
【００４３】
次に、ステップ７２０３では、フラッシュメモリの内部アドレスを、データ書き込みが行われる先頭アドレスに設定する。
【００４４】
次に、ステップ７２０４では、ページ読み出しを行う。これにより、１ページ分のメモリセルの状態が読み出される。
【００４５】
次に、ステップ７２０５では、ページバッファ回路から、現在の内部アドレスに書き込まれるデータの目標となるデータを読み出す。
【００４６】
次に、ステップ７２０６では、ステップ７２０５で読み出された目標データと、上記ステップ７２０４で読み出されたメモリセルの状態とを照らし合わせて、各メモリセルへの書き込みパルス印加の要否を判断し、書き込みパターンを設定する。
【００４７】
次に、ステップ７２０７では、ページバッファ回路への書き込みがバイトモードで行われている場合には、上位バイト／下位バイトの一方のメモリセルへの書き込みを禁止する必要が生じる可能性があるので、ステップ７２１０からステップ７２１５において、下位バイト／上位バイトの一方のみ、書き込みを無効にする処理を行う。このステップ７２１０〜ステップ７２１５の処理は、図１２に示すフローチャートのステップ７１０５〜ステップ７１１０の処理と同様である。そして、これらの処理の終了後、現在の内部アドレスが、データ書き込みが行われる最終アドレスであるか否かを判断し、最終アドレスである場合には、ステップ７２１６に進み、また、現在の内部アドレスが最終アドレスではない場合には、ステップ７２０８に進む。
【００４８】
ステップ７２０８では、現在の内部アドレスが、データ書き込みが行われる最終アドレスであるか、またはページ読み出しで読み出されるページ内の最後のアドレスであれば、ステップ７２１６へ進む。また、現在の内部アドレスが書き込み最終アドレスまたは読み出しページ内の最後のアドレスではない場合には、ステップ７２０９で内部アドレスをインクリメントなどの手段によって更新し、ステップ７２０５の処理に戻る。この処理ループは、内部アドレスが書き込み最終アドレスまたは読み出しページ内の最後のアドレスに達したときには、ステップ７２１３およびステップ７２１４からの分岐、またはステップ７２０８からの分岐により、ステップ７２１６に進むことによって終了する。
【００４９】
ステップ７２１６では、必要とされる全ての書き込みパターンが既に設定されているので、書き込みパルスを印加する必要があるのか否かを判定する。そして、書き込みが必要なメモリセルが無い場合には、その段階の書き込み処理を終了する。また、書き込みが必要なメモリセルがある場合には、ステップ７２１７でメモリアレイを書き込みモードに設定した後、ステップ７２１８で書き込みを行う。以上の処理により、メモリセルへの書き込みパルス印加までを行うことができる。
【００５０】
【発明が解決しようとする課題】
上述したように、従来のページバッファ回路を有する半導体記憶装置において、メモリセルへのデータ書き込みを行う際に、ページバッファ回路に格納されたデータが書き込み不要なデータである場合があり、ページバッファ回路から読み出されたデータが有効な書き込みデータであるか否かを判定することが必要になることがある。
【００５１】
このような場合に、従来のフラッシュメモリでは、ページバッファ回路から読み出されたデータをＷＳＭ回路で処理して不要な書き込みデータがメモリセルに書き込まれないようにするため、ＷＳＭ回路の制御が複雑化し、また、処理速度が低下する原因となる。
【００５２】
この問題は、複数のデータバス幅で制御可能なフラッシュメモリ、ページモード読み出し機能を備えた多値フラッシュメモリ等の半導体記憶装置において、特に顕著である。
【００５３】
本発明は、このような従来技術の課題を解決するためになされたものであり、ＷＳＭ回路による書き込み制御を複雑にすることなく、ページバッファ回路に格納された書き込み不要なデータがメモリセルに書き込まれないように制御することができる半導体記憶装置を提供することを目的とする。
【００５４】
【課題を解決するための手段】
本発明の半導体記憶装置は、複数のメモリセルを有するメモリアレイと、該メモリセルに書き込まれるデータを一時的に格納するページバッファ手段と、該ページバッファ手段から読み出されたデータの少なくとも一部をマスク可能なマスク手段とを備えており、そのことにより上記目的が達成される。
【００５５】
前記マスク手段は、複数種類のデータバス幅での書き込みに対応してデータの一部をマスク可能とされていてもよい。
【００５６】
前記マスク手段は、前記ページバッファ手段からデータを読み出す際に、該ページバッファ手段からの読み出しが指定されたアドレスと、前記メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとの大小を比較する比較手段を備え、該比較手段の比較結果に基づいて、データをマスクするか否かを判定するものであってもよい。
【００５７】
前記マスク手段は、前記ページバッファ手段からデータを読み出す際に、該ページバッファ回路からの読み出しが指定されたアドレスと、前記メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとが一致するか否かを判定する一致検出手段を備え、該一致判定手段の判定結果に基づいて、データをマスクするか否かを判定するものであってもよい。
【００５８】
前記マスク手段は、前記メモリセルへの書き込みが行われるデータの数をカウントするカウンタ手段を備え、該カウンタ手段のカウント結果に基づいて、データをマスクするか否かを判定するものであってもよい。
【００５９】
前記マスク手段は、前記ページバッファ手段から読み出されたデータの一部をマスクする機能を不活性化する不活性化手段を備えていてもよい。
【００６０】
前記メモリセルは３種類以上の値をデータとして設定可能な多値メモリセルであり、複数のメモリセルから一度に読み出しを行うページモード読み出し手段を備えていてもよい。
【００６１】
以下に、本発明の作用について説明する。
【００６２】
本発明にあっては、ページバッファ手段から読み出されるデータの少なくとも一部を、書き込み動作が行われないデータ、例えば消去状態を‘１’、書き込み状態を‘０’と定義する通常のＥＴＯＸ型フラッシュメモリでは‘１’に置き換える（以下、この動作をマスクと称し、データをマスクする機能をマスク機能と称する）ことが可能なマスク手段が設けられている。複数のデータバス幅で制御可能なフラッシュメモリ、ページモード読み出し機能を備えた多値フラッシュメモリ等の半導体記憶装置において、ページバッファ手段からメモリセルへの書き込みが不要なデータが読み出された場合に、マスク手段によって不要なデータをマスクすることができるため、従来のフラッシュメモリのように、ページバッファ回路から読み出されたデータをＷＳＭ回路で処理する必要がなく、ＷＳＭ回路の制御が複雑化することを防ぐことができる。
【００６３】
マスクの要否を判断するためには、例えば、ページバッファ手段からの読み出しが指定されたアドレスと、メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとの大小を比較した結果を利用することができる。また、ページバッファ手段からの読み出しが指定されたアドレスと、メモリセルへの書き込みが行われる先頭アドレスおよび最終アドレスのそれぞれとが一致するか否かを判定した結果を利用することもできる。さらに、メモリセルへの書き込みが行われるデータの数をカウントした結果を利用することもできる。
【００６４】
さらに、上記マスク機能を必要に応じて不活性化する手段を設けて、単一のデータ幅で制御が行われるフラッシュメモリ等のように、マスク機能が不要な場合にはマスク機能を不活性化させることにより、従来の半導体記憶装置と同様の方法によって、ページバッファ回路を利用することが可能となる。
【００６５】
【発明の実施の形態】
以下に、本発明の実施の形態について、図面に基づいて説明する。なお、以下では、ページバッファ回路を用いた書き込み動作に関係する部分についてのみ説明を行っているが、読み出し、消去動作等、他の動作については、従来の半導体記憶装置と同様に行うことができる。
（実施形態１）
図１は、本発明の半導体記憶装置の一実施形態である、ページバッファ回路を有するフラッシュメモリ１００について、書き込みに関係する部分の構成を示すブロック図である。
【００６６】
このフラッシュメモリ１００は、制御バス１０１、アドレスバス１０２およびデータバス１０３を介して外部との間で制御信号、アドレスおよびデータを入出力するようになっている。また、データ書き込みに携わる回路として、ＵＩ回路１１０、ページバッファ回路１２０、ＷＳＭ回路１３０、書き込み制御回路１４０、メモリアレイ１５０、読み出し回路１６０およびページバッファマスク回路１７０を有している。
【００６７】
このフラッシュメモリ１００において、ページバッファ回路１２０を用いた書き込み動作は、以下のようにして行われる。
【００６８】
フラッシュメモリ１００に対して、外部から制御バス１０１、アドレスバ１０２およびデータバス１０３を介して書き込み動作、書き込みアドレスおよびデータを指定する各種信号が供給されると、ＵＩ回路１１０によって指定された内容が解釈される。そして、ＵＩ回路１１０からページバッファ回路１２０に対して、メモリアレイ１５０に含まれるメモリセルに書き込まれる内容（書き込みデータ）を格納するように指示する制御信号が制御バス１１１を介して供給される。
【００６９】
ページバッファ回路１２０では、制御バス１１１を介してＵＩ回路１１０からの制御信号が供給されると、アドレスバス１１２を介して指定されるアドレスに対して、データバス１１３を介して指定されるデータが格納される。そして、ページバッファ回路１２０に全てのデータが格納されると、ＵＩ回路１１０からＷＳＭ回路１３０に対して、書き込み動作の開始を指示する制御信号が制御バス１１４を介して供給される。
【００７０】
ＷＳＭ回路１３０では、制御バス１１４を介してＵＩ回路１１０からの制御信号が供給されると、ＷＳＭ回路１３０からページバッファ回路１２０に対して、制御バス１３２およびアドレスバス１３５を介してデータの読み出しを指示する制御信号および読み出しアドレスが供給される。ページバッファ回路１２０では、これらの信号に従って、格納されているデータが読み出され、データバス１２１を介してページバッファマスク回路１７０に供給される。
【００７１】
また、ＷＳＭ回路１３０からページバッファマスク回路１７０に対しては、制御バス１３３を介して各種信号が供給される。マスク回路１７０では、制御バス１３３を介して供給される各種信号に基づいて、必要に応じてページバッファ回路１２０から出力されたデータの一部が書き込み動作が行なわれないようにマスクされたデータが生成され、データバス１７１を介して書き込み制御回路１４０に供給される。
【００７２】
なお、ＷＳＭ回路１３０から制御バス１３３を介してページバッファマスク回路１７０に供給される各種信号としては、例えば書き込まれるデータの数、メモリセルへの書き込みが行われる先頭アドレス、書き込みデータ幅などの情報を含む信号が用いられる。また、ここでは特に図示していないが、ＵＩ回路１１０からこれらの信号が出力されるような構成とすることも可能である。
【００７３】
また、ＷＳＭ回路１３０からメモリアレイ１５０に対しては、アドレスバス１３５および制御バス１３６を介してアドレスおよび制御信号が供給される。メモリアレイ１５０では、これらのアドレスおよび信号がデコーダによりデコードされることによって、書き込み対象のメモリセルに対応するワード線とビット線とが選択され、所望のメモリセルが選択されて書き込みを実行するモードに設定される。
【００７４】
さらに、ＷＳＭ回路１３０から書き込み制御回路１４０に対しては、書き込みアドレスがアドレスバス１３５を介して供給され、メモリアレイ１５０に含まれるメモリセルにデータを書き込むように指示する制御信号が制御バス１３４を介して供給される。
【００７５】
書き込み制御回路１４０では、データバス１７１を介して書き込みパターンが供給され、制御バス１３４を介してＷＳＭ回路１３０からの制御信号が供給されると、メモリアレイ１５０に含まれるメモリセルのビット線バス１５１が制御されて、メモリアレイ１５０に含まれる書き込み対象のメモリセルに対して書き込み動作が行なわれる。
【００７６】
書き込み動作が行われた後、メモリセルが所望のしきい値電圧に到達したか否かを検証するベリファイ動作が必要である場合には、書き込み操作の後に、メモリセルからの読み出し動作が行われ、読み出し回路１６０によってビット線に流れる電流がセンスされてしきい値電圧が検証される。
【００７７】
このベリファイ動作において、ＷＳＭ回路１３０からメモリアレイ１５０に対して、アドレスバス１３５および制御バス１３６を介してアドレスおよび信号が供給されることによって、書き込みが実行されたメモリセルが読み出しモードに設定される。また、読み出し回路１６０では、ＷＳＭ回路１３０から制御バス１３７を介して信号が供給されると、メモリセルに格納されている内容（データ）の読み出しが行われ、その結果がデータバス１６１を介してＷＳＭ１３０に出力される。
【００７８】
なお、ベリファイ結果を反映させるための回路構成に関しては、本発明には直接関係が無いため、ここでは詳細な説明は行わないが、例えばデータバス１７１から供給される書き込み目標のデータと、データバス１６１から供給される現在の書き込み状況とを比較して、書き込みが全て完了したか否かを判定する回路を設けて、その回路から出力された判定結果がＷＳＭ回路１３０に供給されるような構成とすることによって、実現することができる。
ＵＩ回路１１０は、制御バス１３１から伝えられる書き込み状況を、デバイスの状態遷移判定に利用し、またデータバス１０３を介して外部に出力できる。
【００７９】
フラッシュメモリ１００においては、ページバッファ回路１２０に格納された全データのメモリアレイ１５０に対する書き込みが完了するまで、これらの一連の書き込み処理が繰り返して行われるようになっている。
【００８０】
以下に、本実施形態のフラッシュメモリ１００において、マスク機能を実現するためのページバッファマスク回路１７０の構成例について説明する。
【００８１】
図２は、フラッシュメモリ１００におけるページバッファマスク回路１７０の一例を示す回路図である。
【００８２】
このページバッファマスク回路１７０は、８ビットを１バイトとして扱うバイトモード、および１６ビットを１ワードとして扱うワードモードの両方に対応可能であり、マスク判定回路１００１によって、上位バイトおよび下位バイトをマスクするマスク機能を制御するようになっている。
【００８３】
このマスク判定回路１００１には、ＷＳＭ回路１３０から制御バス１３３およびアドレスバス１３５を介して、メモリセルへの書き込みが行われる先頭ワードアドレスＢＡＤＤ、メモリセルへの書き込みが行われる最終ワードアドレスＥＡＤＤ、現在の内部ワードアドレスＣＡＤＤ、およびＣＴＲＬはバイトモードを表す信号などを含む複数の信号の集まりであるＣＴＲＬが供給される。なお、これらのマスク判定回路１００１に供給される信号は、マスク判定回路１００１の仕様、構成等によって異なる。
【００８４】
また、ページバッファマスク回路１７０には、ページバッファ回路１２０から読み出されたデータがデータバス１２１を介して供給される。このページバッファ回路１２０から供給されるデータは、上位バイトがＰＢ［１５：８］、下位バイトがＰＢ［７：０］となっている。
【００８５】
マスク判定回路１００１では、ページバッファ回路１２０の出力データのうち、上位バイトをマスクするときにはＭＡＳＫＨ＝Ｈ（Ｈｉｇｈレベル）が出力され、下位バイトをマスクするときにはＭＡＳＫＬ＝Ｈが出力される。一方、データをマスクしない場合には、マスク判定回路１００１からはＬ（Ｌｏｗレベル）が出力される。
【００８６】
ページバッファマスク回路１７０からデータバス１７１を介して出力されるデータＰＲＧ［１５：０］は、ＭＡＳＫＨ＝ＭＡＳＫＬ＝ＬのときにはデータＰＢ［１５：０］がマスクされずにそのまま出力されるが、ＭＡＳＫＨ＝ＨのときにはＡＮＤ回路１００２によってデータＰＲＧ［１５：８］の全てのビットがＬｏｗレベルに変換され、ＭＡＳＫＨ＝ＬのときにはＡＮＤ回路１００３によってＰＲＧ［７：０］の全てのビットがＬｏｗレベルに変換される。ここで、データＰＲＧ［１５：０］がＨｉｇｈレベルのときにメモリセルに書き込みパルスが印加されるように、書き込み制御系を構成しておくことによって、マスク判定回路１００１の判定に従って、メモリセルに書き込まれるデータの上位バイト／下位バイトをマスクすることができる。
【００８７】
図３（ａ）は、上記マスク判定回路１００１の一例を示す回路図である。
【００８８】
このマスク半導体記憶装置知恵回路１００１は、アドレス比較回路１１０１および１１０２を有している。ここでは、これらのアドレス比較回路１１０１および１１０２の内部構成については詳細な説明を行わないが、既知の回路によって構成されるアドレスの大小比較および一致判定を行う回路であって、入力される２系統のアドレスＡおよびＢに対して、Ａ＝Ｂであれば出力Ｅ＝Ｈ（Ｈｉｇｈレベル）が出力され、Ａ＞Ｂであれば出力Ｏ＝Ｈ（Ｈｉｇｈレベル）が出力されるようになっている。
【００８９】
アドレス比較回路１１０２に入力されるＢＡＤＤＬは、マスク判定回路１００１に入力される先頭ワードアドレスＢＡＤＤのうち、最上位を除く下位のアドレスであって、少なくとも読み出し対象となっているページバッファ回路１２０のアドレスを一意に決定するために充分なビット数を有するものである。同様に、アドレス比較回路１１０１および１１０２に入力されるＣＡＤＤＬは、現在の内部ワードアドレスＣＡＤＤのうち、最上位を除く下位のアドレスであって、少なくとも読み出し対象となっているページバッファ回路１２０のアドレスを一意に決定するために充分なビット数を有するものである。同様に、アドレス比較回路１１０２に入力されるＥＡＤＤＬは、マスク判定回路１００１に入力される最終ワードアドレスＥＡＤＤのうち、最上位を除く下位のアドレスであって、少なくとも読み出し対象となっているページバッファ回路１２０のアドレスを一意に決定するために充分なビット数を有するものである。
【００９０】
また、ＸＮＯＲ回路１１１２〜１１１４に入力されるＢＡＤＤＵ、ＣＡＤＤＵおよびＥＡＤＤＵは、それぞれ、先頭ワードアドレスＢＡＤＤ、現在の内部ワードアドレスＣＡＤＤおよび最終ワードアドレスＥＡＤＤの最上位アドレスであって、これらに含まれないアドレスは全て、上記ＢＡＤＤＬ、ＣＡＤＤＬおよびＥＡＤＤＬに含まれるようになっている。
【００９１】
また、ＮＵＭ０、ＢＹＴＥおよびＡＤＤ＿１の３つの信号は、図２では制御信号ＣＴＲＬとしてまとめて示したものである。ＮＵＭ０は、ページバッファ回路１２０を用いた書き込みによってメモリセルへの書き込みを行うデータ数を表すデータの最下位ビットであり、偶数個のデータ書き込みが指示されるときにはＮＵＭ０＝Ｌとなり、奇数個のデータ書き込みが指示されるときにはＮＵＭ０＝Ｈとなる。また、ＢＹＴＥは、バイトモードであるかワードモードであるかを判別するための信号であり、バイトモードの書き込みではＨｉｇｈレベルになり、ワードモードの書き込みではＬｏｗレベルになる。ＡＤＤ＿１は、メモリセルへの書き込みが上位バイトから始まるときにはＨｉｇｈレベルになり、それ以外のときにはＬｏｗレベルになる信号である。
【００９２】
このような信号をマスク判定回路１００１に入力することにより、マスク機能を行うか否かを制御するための制御信号ＭＡＳＫＨおよびＭＡＳＫＬを生成することができる。
【００９３】
以下に、図３（ａ）に示すマスク判定回路１００１について、さらに詳しく説明する。
【００９４】
このマスク判定回路１００１の内部に設けられた中間ノードＬＭＡＳＫＢは、下位バイトのみをマスクするときにＬｏｗレベルとなる信号である。また、中間ノードＨＭＡＳＫＢは、上位バイトのみをマスクするときにＬｏｗレベルとなる信号である。また、中間ノードＨＬＭＡＳＫＢは、上位バイトおよび下位バイトの両方をマスクするときにＬｏｗレベルとなる信号である。
【００９５】
ＮＡＮＤ回路１１２１では、ＨＭＡＳＫＢ＝ＬｏｗレベルまたはＨＬＭＡＳＫＢ＝ＬｏｗレベルのときにＭＡＳＫＨ＝Ｈｉｇｈレベルとなる。また、ＮＡＮＤ回路１１２２では、ＬＭＡＳＫＢ＝ＬｏｗレベルまたはＨＬＭＡＳＫＢ＝ＬｏｗレベルのときにＭＡＳＫＬ＝Ｈｉｇｈレベルとなる。
【００９６】
ここで、ＮＡＮＤ回路１１１９の出力ＬＭＡＳＫＢ＝Ｌｏｗレベルとなるのは、ＢＹＴＥ＝Ｈｉｇｈレベル（バイトモード）、ＢＡＤＤＵ＝ＣＡＤＤＵ（ＸＮＯＲ回路１１１３の出力がＨｉｇｈレベル）、ＣＡＤＤＬ＝ＢＡＤＤＬ（アドレス比較回路１１０２の出力ＢＥ＝Ｈｉｇｈレベル）、およびＡＤＤ＿１＝Ｈｉｇｈレベルの４つの条件を満たす場合である。これは、バイトモードであり、現在の書き込み対象のワードアドレスＣＡＤＤが書き込み先頭ワードアドレスＢＡＤＤであり、書き込みが上位バイトから始まるという状態を示す。この場合には、上位バイトから書き込みが開始されるので、先頭ワードアドレスの書き込みの際に下位バイトの書き込みが行われないようにマスクされる。
【００９７】
また、ＮＡＮＤ回路１１１５の出力ＨＭＡＳＫＢ＝Ｌｏｗレベルとなるのは、ＢＹＴＥ＝Ｈｉｇｈレベル（バイトモード）、ＥＡＤＤＵ＝ＣＡＤＤＵ（ＸＮＯＲ回路の出力がＨｉｇｈレベル）、ＣＡＤＤＬ＝ＥＡＤＤＬ（アドレス比較回路１１０１の出力ＥＥ＝Ｈｉｇｈレベル）、ＡＤＤ＿１≠ＮＵＭ０（ＸＯＲ回路１１１１の出力がＨｉｇｈレベル）の４つの条件を満たす場合である。これは、バイトモードであり、現在の書き込み対象のワードアドレスＣＡＤＤが書き込み最終ワードアドレスＥＡＤＤであり、書き込みが下位バイトで終了するという状態を示す。この場合には、下位バイトで書き込みが終了されるので、最終ワードアドレスの書き込みの際に上位バイトの書き込みが行われないようにマスクされる。
【００９８】
また、ＡＮＤ回路１１２０の出力ＨＬＭＡＳＫＢ＝Ｌｏｗレベルとなるのは、以下の３種類の条件のいずれかを満たす場合である。第１の条件は、ＮＡＮＤ回路１１１６の出力がＬｏｗレベルとなることであり、この場合の条件は、ＥＡＤＤＵ＝ＣＡＤＤＵ（ＸＮＯＲ回路１１１２の出力がＨｉｇｈレベル）、かつ、ＥＡＤＤＬ＜ＣＡＤＤＬ（アドレス比較回路１１０１の出力ＥＯ＝Ｈｉｇｈレベル）である。この第１条件を満たすときには、現在の書き込み対象のアドレスが最終アドレスを越えているため、上位バイトおよび下位バイトのいずれも書き込みが行われないようにマスクされる。
【００９９】
第２の条件は、ＮＡＮＤ回路１１１７の出力がＬｏｗレベルとなることであり、この場合の条件は、ＢＡＤＤＵ＝ＣＡＤＤＵ（ＸＮＯＲ回路１１１３の出力がＨｉｇｈレベル）、かつ、ＢＡＤＤＬ＞ＣＡＤＤＬ（アドレス比較回路１１０２の出力ＢＯ＝Ｈｉｇｈレベル）である。この第２条件を満たすときには、現在の書き込み対象のアドレスが先頭アドレスよりも小さいため、上位バイトおよび下位バイトのいずれも書き込みが行われないようにマスクされる。
【０１００】
第３の条件は、ＮＡＮＤ回路１１１８の出力がＬｏｗレベルとなることであり、この場合の条件は、ＢＡＤＤＵ＝ＥＡＤＤＵ（ＸＮＯＲ回路１１１４の出力がＨｉｇｈレベル）、かつ、ＢＡＤＤＵ≠ＣＡＤＤＵ（ＸＮＯＲ回路１１１３の出力ＢＯ＝Ｌｏｗレベル）である。この第３条件は、現在の書き込み対象のアドレスが通常の状態では取り得ない範囲にあることを表しているので、この場合には、上位バイトおよび下位バイトのいずれも書き込みが行われないようにするマスクされる。
【０１０１】
この図３（ａ）に示すマスク判定回路１００１によれば、上位バイト／下位バイトのマスク要否を判定することが可能である。
【０１０２】
以下に、本実施形態のフラッシュメモリ１００において、図３（ａ）に示すマスク判定回路１００１を用いてマスク機能を制御する場合の動作例について、図４および図１１を用いて説明する。図１１（ａ）は、ページバッファ回路１２０を用いて書き込みを行う場合の書き込みパターンの一例を示す図である。
【０１０３】
この書き込みパターンにおいて、書き込み先頭アドレスＢＡＤＤは１００６Ｈであり、内部アドレスＣＡＤＤをこのアドレスにセットしてページバッファ回路１２０に格納されたデータを読み出すと、下位バイトにはＤａｔａ３１が、上位バイトにはＤａｔａ０が出力される。従来技術では、これらの２つのデータのうち、下位バイトをＷＳＭ回路５３０によって制御してディセーブルとしたが、本実施形態では、ページバッファマスク回路１７０によりマスクする。
【０１０４】
ここで、ページバッファ回路１２０のアドレスは４ビットであり、ＢＡＤＤ、ＣＡＤＤおよびＥＡＤＤの大小関係を把握するために、５ビットのアドレスが使用される。従って、ＢＡＤＤＵはＢＡＤＤの第５ビットとなり、ＥＡＤＤＵはＥＡＤＤの第５ビットとなる。
【０１０５】
ＢＡＤＤ＝ＣＡＤＤ＝０６Ｈであるので、図３（ａ）に示すマスク判定回路１００１において、アドレス比較回路１１０２の出力は、ＢＯ＝Ｌｏｗレベル、ＢＥ＝Ｈｉｇｈレベルとなる。また、ＣＡＤＤ＝０６Ｈであり、ＥＡＤＤ＝１６Ｈであるので、アドレス比較回路１１０１の出力は、ＥＯ＝Ｌｏｗレベル、ＥＥ＝Ｌｏｗレベルとなる。さらに、ＢＡＤＤＵ≠ＥＡＤＤＵ、ＮＵＭ０＝Ｌｏｗ、ＢＹＴＥ＝Ｈｉｇｈ、ＡＤＤ＿１＝Ｈｉｇｈであるので、マスク判定回路１００１からはＭＡＳＫＨ＝Ｌｏｗレベル、ＭＡＳＫＬ＝Ｈｉｇｈレベルが出力される。これによって、下位バイトがマスクされ、上位バイトはマスクされない。
【０１０６】
次のアドレスである１００７Ｈの書き込みを行うときには、ＢＯ＝Ｌｏｗレベル、ＢＥ＝Ｌｏｗレベルとなるので、ＭＡＳＫＨ＝ＭＡＳＫＬ＝Ｌｏｗレベルとなり、上位バイトおよび下位バイトともにマスクされない。その後、アドレスを進めても、１０１５Ｈまでは同様に、上位バイトおよび下位バイトともにマスクされない。
【０１０７】
その後、アドレスが１０１６Ｈになると、ＥＡＤＤ＝ＣＡＤＤ＝１６Ｈであるので、図３（ａ）に示すマスク判定回路１００１において、アドレス比較回路１１０１の出力は、ＥＯ＝Ｌｏｗレベル、ＥＥ＝Ｈｉｇｈレベルとなる。また、ＣＡＤＤ＝１６Ｈであり、ＢＡＤＤ＝０６Ｈであるので、アドレス比較回路１１０２の出力は、ＢＯ＝Ｌｏｗレベル、ＢＥ＝Ｌｏｗレベルとなる。さらに、ＢＡＤＤＵ≠ＥＡＤＤＵ、ＮＵＭ０＝Ｌｏｗ、ＢＹＴＥ＝Ｈｉｇｈ、ＡＤＤ＿１＝Ｈｉｇｈであるので、マスク判定回路１００１からはＭＡＳＫＨ＝Ｈｉｇｈレベル、ＭＡＳＫＬ＝Ｌｏｗレベルが出力される。これによって、上位バイトがマスクされ、下位バイトはマスクされない。
【０１０８】
以上の結果から、ページバッファマスク回路１７０からの出力データは図４（ａ）に示すようなものとなる。これによって、ＷＳＭ回路１３０では、データ幅、アドレス等により上位バイト／下位バイトのデータ書き込みを行うか否かをの判定することが不要となり、ＷＳＭ回路１３０による書き込み制御を簡略化することが可能となる。
【０１０９】
図３（ｂ）は、マスク判定回路１００１の他の例を示す回路図である。なお、この図３（ｂ）に示す例および以下の図３（ｃ）に示す例では、説明を簡単にするために、固定データ幅に対するマスク機能について説明する。これらのマスク判定回路１００１から出力される信号ＭＡＳＫは、データの全ビットをマスクさせるための信号である。
【０１１０】
図３（ｂ）に示すマスク判定回路１００１は、アドレス比較回路１２０１、アドレス比較回路１２０２およびラッチ回路１２０３を有している。
【０１１１】
アドレス比較回路１２０１およびアドレス比較回路１２０２では、２系統のアドレスＡおよびＢが比較され、Ａ＝Ｂであれば出力Ｅ＝Ｈｉｇｈレベルが出力され、Ａ≠Ｂであれば出力Ｅ＝Ｌｏｗレベルが出力されるようになっている。
【０１１２】
ラッチ回路１２０３は、信号端子Ｓに入力されるセット信号によって内部ラッチデータがＨｉｇｈレベルにセットされ、信号端子Ｒに入力されるリセット信号によって内部ラッチデータがＬｏｗレベルにセットされ、内部ラッチデータの値が出力Ｏとして出力されるようになっている。マスク信号ＭＡＳＫは、このラッチ回路１２０３の出力Ｏが反転された信号である。
【０１１３】
アドレス比較回路１２０１に入力されるアドレスＢＡＤＤは、メモリセルへの書き込みが行われる先頭ワードアドレスであり、アドレス比較回路１２０１および１２０２に入力されるアドレスＣＡＤＤは、現在の内部ワードアドレスであり、アドレス比較回路１２０２に入力されるアドレスＥＡＤＤは、メモリセルへの書き込みが行われる最終ワードアドレスである。この例では、先頭アドレスＢＡＤＤおよび最終アドレスＥＡＤＤは固定され、内部アドレスＣＡＤＤはインクリメント等によって更新されるようになっている。
【０１１４】
また、信号ＣＬＫおよび信号ＩＮＩＴは、図２ではＣＲＴＬとしてまとめて記載されている信号である。ＣＬＫは、アドレス比較回路１２０１および１２０２によるアドレス判定が完了した後にＨｉｇｈレベルに遷移し、アドレス判定結果がラッチ回路１２０３に反映された後にＬｏｗレベルに遷移するクロック信号である。また、ＩＮＩＴは、ラッチ回路１２０３を初期化するための信号である。
【０１１５】
このマスク判定回路１００１では、まず、信号ＩＮＩＴをＨｉｇｈレベルにすることによってラッチ回路１２０３がリセットされた後、信号ＩＮＩＴがＬｏｗレベルに戻される。このときには、ＭＡＳＫ＝Ｈｉｇｈレベルとなり、データがマスクされる。
【０１１６】
そして、内部アドレスＣＡＤＤが決定された後、信号ＣＬＫをＨｉｇｈレベルにすることによってアドレス判定結果がラッチ回路１２０３に反映され、その後、信号ＣＬＫがＬｏｗレベルに戻される。
【０１１７】
ここで、内部アドレスがインクリメントされて書き込み先頭アドレスに到達し、ＢＡＤＤ＝ＣＡＤＤとなると、ラッチ回路１２０３がセットされ、ＭＡＳＫ＝Ｌｏｗレベルとなるので、マスク機能は解除される。また、内部アドレスが最終アドレスを超えてＣＡＤＤ＜ＥＡＤＤとなると、ラッチ回路１２０３がリセットされ、ＭＡＳＫ＝Ｈｉｇｈレベルとなるので、再びマスク機能が有効となる。
【０１１８】
この図３（ｂ）に示すマスク判定回路１００１によれば、有効な書き込みアドレスに対してのみ、マスクが解除されるようにすることが可能となる。
【０１１９】
図３（ｃ）は、マスク判定回路１００１のさらに他の例を示す回路図である。
【０１２０】
このマスク判定回路１００１は、アドレス比較回路１３０１、カウンター回路１３０２およびラッチ回路１３０３を有している。
【０１２１】
アドレス比較回路１３０１では、２系統のアドレスＡおよびＢが比較され、Ａ＝Ｂであれば出力Ｅ＝Ｈｉｇｈレベルが出力され、Ａ≠Ｂであれば出力Ｅ＝Ｌｏｗレベルが出力されるようになっている。
【０１２２】
カウンター回路１３０２は、リセット端子Ｒに入力されるリセット信号によりリセットされた後、信号ＣＬＫの立ち上がりをカウントして、ＮＵＭで示される回数を越えてＣＬＫがＬｏｗレベルからＨｉｇｈレベルに遷移すると、Ｈｉｇｈレベルが出力Ｏに出力されるようになっている。
【０１２３】
ラッチ回路１３０３は、信号端子Ｓに入力されるセット信号よって内部ラッチデータがＨｉｇｈレベルにセットされ、信号端子Ｒに入力されるリセット信号によって内部ラッチデータがＬｏｗレベルにセットされ、内部ラッチデータの値が出力Ｏとして出力されるようになっている。マスク信号ＭＡＳＫは、このラッチ回路１３０３の出力Ｏが反転された信号である。
【０１２４】
アドレス比較回路１３０１に入力されるアドレスＢＡＤＤは、メモリセルへの書き込みが行われる先頭ワードアドレスであり、アドレス比較回路１３０１に入力されるアドレスＣＡＤＤは、現在の内部ワードアドレスである。この例では、先頭アドレスＢＡＤＤおよび最終アドレスＥＡＤＤは固定され、内部アドレスＣＡＤＤはインクリメント等によって更新されるようになっている。
【０１２５】
また、信号ＣＬＫ、信号ＩＮＩＴおよび信号ＮＵＭは、図２ではＣＲＴＬとしてまとめて記載されている信号である。ＣＬＫは、内部アドレスが更新される度に１回ずつ、ＬｏｗレベルからＨｉｇｈレベル、ＨｉｇｈレベルからＬｏｗレベルに遷移するクロック信号である。また、ＩＮＩＴは、ラッチ回路１２０３を初期化するための初期化信号である。ＮＵＭは、書き込みが実行されるデータの数を表すデータ数である。
【０１２６】
このマスク判定回路１００１では、まず、信号ＩＮＩＴをＨｉｇｈレベルにすることによってラッチ回路１２０３がリセットされた後、信号ＩＮＩＴがＬｏｗレベルに戻される。このときには、ＭＡＳＫ＝Ｈｉｇｈレベルとなり、データがマスクされる。
【０１２７】
そして、内部アドレスがインクリメントされて書き込み先頭アドレスに到達してＢＡＤＤ＝ＣＡＤＤとなり、信号信号ＣＬＫがＨｉｇｈレベルになると、ラッチ回路１３０３がセットされ、ＭＡＳＫ＝Ｌｏｗレベルとなるので、マスク機能は解除される。
【０１２８】
それと同時にカウンター回路１３０２がリセットされ、それ以降、信号ＣＬＫがＬｏｗレベルからＨｉｇｈレベルに遷移する回数が、カウンター回路１３０２の内部でカウントされる。そして、カウント回数がＮＵＭと一致すると、カウンター回路１３０２の出力端子ＯからＨｉｇｈレベルが出力され、ラッチ回路１３０３がリセットされてＭＡＳＫ＝Ｈｉｇｈレベルとなるので、再びマスク機能が有効となる。
【０１２９】
この図３（ｃ）に示すマスク判定回路１００１によれば、内部アドレスが先頭アドレスに到達してから、書き込みが行われるデータの数だけ、データがマスクされないようにすることが可能となる。
【０１３０】
以上のように、アドレスバスの一致回路、大小比較回路、データ数を利用したカウンター回路などにより、マスク要否を判定することができる。
【０１３１】
次に、このように構成された本実施形態のフラッシュメモリ１００について、ページバッファ回路１２０を用いたメモリセルへの書き込み動作について説明する。
【０１３２】
図５は、本実施形態のフラッシュメモリ１００における書き込み処理手順を説明するためのフローチャートである。ここでは、フラッシュメモリ１００のデータ書き込みが複数のデータバス幅で制御され、バイトモードおよびワードモードの両方に対応して書き込み操作が可能な場合を一例として、従来技術と同様に、図１１（ａ）に示すような書き込みパターンを書き込む場合について説明する。なお、実際には、以下に説明する処理手順以外に、様々な設定、ベリファイ動作、電圧制御などが必要とされるが、書き込み処理に直接的に関係しないものについては、説明を省略している。
【０１３３】
まず、書き込み処理を実行する前に、ステップ３００１において、メモリアレイを書き込みモードに設定する。
【０１３４】
次に、ステップ３００２では、フラッシュメモリ１００の内部アドレスを、データ書き込みが行われる先頭アドレスに設定する。
【０１３５】
次に、ステップ３００３では、ページバッファ回路に格納されたデータの読み出しを行う。
【０１３６】
次に、ステップ３００４では、内部アドレスで示されるメモリセルに対して、ページバッファ回路に格納されたデータに従って、書き込み操作を行う。
【０１３７】
ステップ３００５では、現在の内部アドレスが、データ書き込みが行われる最終アドレスであるか否かを判断し、最終アドレスである場合には、一連の書き込み処理を終了する。また、現在の内部アドレスが最終アドレスではない場合には、ステップ３００６で内部アドレスをインクリメントなどの手段によって更新し、ステップ３００３の処理に戻る。この処理ループが、最終アドレスへのデータ書き込みが完了するまで、繰り返される。
【０１３８】
以上のようにして、ページバッファ回路に格納されたデータの全てをメモリセルに書き込むことが可能である。
【０１３９】
この図５に示すフローチャートは、図１０に示す従来技術のフローチャートと同様であるが、本実施形態では、このような簡単な処理手順によって、バイトモードおよびワードモードの両方に対応することができる。これに対して、従来技術では、このようにワードモードおよびバイトモードの両方に対応するためには、図１２のフローチャートを用いて説明したように、複雑な制御が必要である。
【０１４０】
以下に、本実施形態のフラッシュメモリにおいて、複数のデータバス幅による制御を簡単な処理手順によって行うことが可能となる理由について、図４および図１１を用いて説明する。
【０１４１】
従来技術において、ページバッファ回路から出力されるデータは、図１１（ｃ）に示すようなパターンになり、１００６Ｈの下位バイト（Ｌｏｗ　Ｂｙｔｅ）および１０１６Ｈの上位バイト（Ｈｉｇｈ　Ｂｙｔｅ）に、書き込まれるべきではないデータが出力されることになる。従って、従来技術では、これらの書き込まれるべきではないデータを処理するために、ＷＳＭ回路を特別に制御することが必要である。
【０１４２】
これに対して、本実施形態では、ページバッファマスク回路１７０から出力されるデータ（Ｐａｇｅ　Ｂｕｆｆｅｒ　Ｒｅａｄ　Ａｄｄｒｅｓｓ）は、図４（ａ）に示すようなパターンになり、１００６Ｈの下位バイトおよび１０１６Ｈの上位バイトは、書き込みが実行されないようにマスクされることになる。従って、このデータを元にメモリセルへの書き込みを行っても、これらの書き込むべきではない２バイトには書き込みが行われない。
【０１４３】
以上のように、本実施形態によれば、ページバッファ回路１２０から出力されるデータをマスクするページバッファマスク回路１７０を設けることによって、ＷＳＭ回路による制御を複雑にすることなく、複数種類のデータバス幅による制御に対応することができる。
【０１４４】
（実施形態２）
図６は、本発明の半導体記憶装置の他の実施形態であるページバッファ回路を有するフラッシュメモリ２００について、書き込みに関係する部分の構成を示すブロック図である。なお、図１に示す実施形態１のフラッシュメモリ１００と同様の機能を有する部分については、同じ符号を付している。
【０１４５】
このフラッシュメモリ２００は、多値フラッシュメモリ２００であり、データ書き込みに携わる回路として、ＵＩ回路１１０、ページバッファ回路１２０、ＷＳＭ回路１３０、書き込み制御回路１４０、メモリアレイ２５０、読み出し回路１６０、ページバッファマスク回路１７０およびデータ論理回路２８０を有している。
【０１４６】
このフラッシュメモリ２００において、ページバッファ回路１２０を用いた書き込み動作は、以下のようにして行われる。なお、実施形態１で説明したフラッシュメモリ１００へのページバッファ回路を用いた書き込み動作と共通の部分については、ここでは説明を省略する。
【０１４７】
多値フラッシュメモリは、二値フラッシュメモリと比較すると、メモリセルの状態（メモリセルのしきい値電圧）を厳密に制御する必要があるため、書き込み時間が長くかかる。また、多値フラッシュメモリでは、書き込み動作が複数のステップに分けて行われ、ひとつのメモリセルに対するデータ書き込みパルスは二値メモリセルに比べて弱くなるため、同時に多数のメモリセルに対して書き込みを行うことができる可能性がある。そこで、本実施形態では、一例として、フラッシュメモリ２００が４種類の値をデータとして格納可能であり、４ワード分のメモリセル（＝６４ビット＝３２メモリセル）への書き込みが一度に可能であるものとして説明を行う。
【０１４８】
多値メモリセルでは、メモリセルに対して書き込みレベル（メモリセルのしきい値電圧）を厳密に制御する必要があるので、過剰な書き込みは許されない。従って、一般には、現在のメモリセルの状態と最終的なメモリセルの状態の目標とを照らし合わせて、書き込みパルスを印加するか否かを決定するか、または、メモリセルの状態によって書き込みパルスの強さなどを調節するようになっている。そのため、二値フラッシュメモリと異なり、書き込みパルスを決定するときには、常に、メモリセルへの読み出し操作が行われる。
【０１４９】
メモリアレイ２５０では、ＷＳＭ回路１３０からアドレスバス１３５を介して供給される内部アドレスによって指定されるメモリセルが、制御バス１３６を介して供給される制御信号により活性化される。また、読み出し回路１６０では、ＷＳＭから制御バス１３７を介して供給される制御信号に従って、ビット線バス１５１を介して書き込み対象メモリセルの状態の読み出しが行なわれ、読み出した結果がデータバス２６１を介してデータ論理回路２８０に供給される。ここで、メモリセルの選択、読み出し回路の動作については、実施形態１のフラッシュメモリ１００と同様に行われる。
【０１５０】
また、ページバッファ回路１２０に格納されたデータは、実施形態１と同様に、必要に応じてページバッファマスク回路１７０によってマスクされ、データバス１７１を介してデータ論理回路２８０に供給される。
【０１５１】
データ論理回路２８０では、現在のメモリセルの状態を表すデータと最終的な目標となるデータとが供給されると、各メモリセルに書き込みパルスを印加するか否か、または各メモリセルへの書き込みパルスの強さ等が判断され、判断結果がデータバス２８１を介してＷＳＭ回路１３０に供給される。
【０１５２】
ＷＳＭ回路１３０では、データ論理回路２８０による書き込みパルス印加の要否、各メモリセルへの書き込みパルスの強さ等の判断結果が供給されると、データバス２３８を介して書き込み回路１４０に書き込みパルスデータが供給される。
【０１５３】
書き込み回路１４０では、データバス２３８を介して供給された書き込みパルスデータが内部のレジスタに蓄えられる。本実施形態では、３２個のメモリセルに一度に書き込みを行うことができるので、レジスタに３２個のデータが蓄えられてからメモリセルへの書き込みが行われる。
【０１５４】
一例として、ページバッファ回路１２０を用いた書き込みが最大１６ワードまたは３２バイトまで可能であり、ページ読み出し機能によって一度に読み出すことが可能なデータが４ワードである場合、ページバッファマスク回路１７０として実施形態１で説明した図２に示す回路を用い、そのマスク判定回路として図３に示す回路を用いることによって、実施形態１では使用されなかったアドレス領域に対してもマスクすることが可能である。この場合、ページバッファ回路２２０から読み出されてページバッファマスク回路１７０によってマスク処理された後のデータは図４（ｂ）に示すようなものとなる。
【０１５５】
データ論理回路２８０では、４ワード単位で書き込みパルス印加の要否、各メモリセルへの書き込みパルスの強さ等の判断が行われるが、例えば、図４（ｂ）に示すＰａｇｅ　Ｂｕｆｆｅｒ　Ｒｅａｄ　Ａｄｄｒｅｓｓの１６Ｈおよび１７Ｈでは、Ｐａｇｅ　Ｂｕｆｆｅｒ　Ｒｅａｄ　Ａｄｄｒｅｓｓ１７Ｈの上位バイトおよび下位バイトがマスクされたものが供給される。
【０１５６】
このように、書き込みが不要なデータが全てマスクされることによって書き込みパルスの印加を停止させることができるため、書き込み動作の制御を非常に簡潔に行うことが可能である。
【０１５７】
次に、このように構成された本実施形態のフラッシュメモリ２００について、ページバッファ回路１２０を用いたメモリセルへの書き込み動作について説明する。
【０１５８】
図７は、本実施形態のフラッシュメモリ２００における書き込み処理手順を説明するためのフローチャートである。なお、実際には、以下に説明する処理手順以外に、様々な設定、ベリファイ動作、電圧制御などが必要とされるが、書き込み処理に直接的に関係しないものについては、説明を省略している。
【０１５９】
まず、ステップ３１０３において、書き込みレジスタにセットされている書き込みパターンを全てクリアする。これにより、後の処理で書き込みパルス印加までに書き込みレジスタに明示的にセットされるメモリセル以外には、書き込みパルスが印加されないようにする。
【０１６０】
次に、ステップ３１０２では、フラッシュメモリの内部ページアドレスを、ページ内の先頭ワードアドレスに設定する。これ以後の動作はページ単位で実行されるので、各動作の区切りでは、内部ページアドレスが必ずページ内の先頭ワードのアドレスとなる。
【０１６１】
次に、ステップ３１０３で、メモリアレイを読み出しモードに設定する。多値メモリセルを用いる場合、書き込みを実行するか否かは、現在のメモリセルの状態（メモリセルのしきい値電圧）に依存するため、書き込みを実行する前にメモリセルのデータを読み出す必要がある。。
【０１６２】
次に、ステップ３１０４では、メモリセルの読み出しを実行する。このとき、ページに含まれる全メモリセルのデータ読み出しが実行される。
【０１６３】
次に、ステップ３１０５で、ページバッファ回路から、現在の内部アドレスに書き込まれるデータの目標となるデータを読み出す。このとき、ページバッファマスク回路によるマスク機能により、書き込みが不要な部分のデータは、全て、書き込みパルスが印加されないようにマスクされる。
【０１６４】
次に、ステップ３１０６では、ステップ３１０４で読み出された現在のメモリセルの状態と、ステップ３１０５で読み出されたページバッファ回路のデータとから、書き込みパターンが決定され、決定された書き込みパターンが書き込みレジスタに登録される。このとき、ページバッファマスク回路によりマスクされたメモリセルの書き込みパターンは、書き込みが実行されない状態となる。
【０１６５】
次に、ステップ３１０７では、現在の内部アドレスがページ内の最後のワードアドレスであるか否かが判定され、ページ内の最後のワードでない場合には、ステップ３１０８で内部アドレスをインクリメント等の手段によって次のワードアドレスに更新し、ステップ３１０４の処理に戻る。また、現在の内部アドレスがページ内の最後のワードアドレスである場合には、ステップ３１０９に進む。
【０１６６】
ステップ３１０９では、必要とされる全ての書き込みパターンが既に設定されているので、書き込みパルスを印加する必要があるか否かを判定する。そして、書き込みが必要なメモリセルが無い場合には、そのステップの書き込みを終了する。また、書き込みが必要なメモリセルがある場合には、ステップ３１１０でメモリアレイを書き込みモードに設定した後、ステップ３１１１で書き込みを行う。以上の処理により、メモリセルへの書き込みパルス印加までを行うことができる。
【０１６７】
次に、ステップ３１１２では、内部アドレスを再びページ内の先頭ワードアドレスに設定し、ステップ３１０３へ戻る。
【０１６８】
以上のような処理手順で、多値フラッシュメモリへの書き込み動作を行うことができる。
【０１６９】
図７に示すフローチャートから明らかなように、本実施形態では、ページバッファ回路に格納されたデータのうち、不要な部分はページバッファマスク回路によってマスクされるので、図１３のフローチャートを用いて説明した従来技術による多値フラッシュメモリへの書き込み動作と比較して、データバス幅の判定、現在のアドレスの判定などの処理を大幅に削減することができ、ＷＳＭ回路による制御を飛躍的に簡潔化することができる。
【０１７０】
（実施形態３）
図８は、本実施形態のフラッシュメモリにおけるページバッファマスク回路２７０の構成例を示す回路図である。
【０１７１】
このページバッファマスク回路２７０は、実施形態１で説明した図２に示すページバッファマスク回路１７０と同様に、８ビットを１バイトとして扱うバイトモード、および１６ビットを１ワードとして扱うワードモードの両方に対応可能であり、マスク判定回路１００１によって、上位バイトおよび下位バイトをマスクするマスク機能を制御するようになっている。
【０１７２】
ＤＳＭＡＳＫは、マスク機能を無効にする信号であり、インバーター回路を介してＡＮＤ回路４００２および４００３に供給される。このＤＳＭＡＳＫをＨｉｇｈレベルにすることによって、ＡＮＤ回路４００２および４００３からそれぞれ出力される、ページバッファ回路１２０からの出力データの上位バイト／下位バイトのそれぞれをマスクする信号ＭＡＳＫＨおよびＭＡＳＫＬは、常にＬｏｗレベルとなる。従って、マスク判定回路１００１からの出力１００６および１００７に関わらず、ページバッファ回路１２０からの出力データはマスクされない。また、ＤＳＭＡＳＫをＬｏｗレベルにすることによって、上記実施形態１および実施形態２で説明したマスク機能をそのまま利用することができる。
【０１７３】
このように、マスク機能を不活性化する手段を設けることによって、例えば、上記実施形態１および実施形態２のような最終アドレスの演算、先頭アドレスのセット等を行わずに、従来のページバッファ回路と同様、ページバッファ回路に格納されている全てのデータを自由に取り出すことが可能となる。このマスク不活性化機能によって、例えばページバッファ回路のテスト時などには、現在の内部アドレスなどを考慮せずにページバッファ回路に格納されたデータ内容の読み出しを行うことができる。従って、本発明の半導体記憶装置において、従来の半導体記憶装置と同様に、デバイスのテストが可能となり、評価の利便性低下を防ぐことができる。
【０１７４】
【発明の効果】
以上説明したように、本発明によれば、メモリセルに書き込まれるデータを一時的に格納するページバッファ手段を有する半導体記憶装置において、ページバッファ手段から読み出されるデータの一部をマスクするマスク手段を設けることによって、書き込み処理の高速化、ＷＳＭ回路による書き込み制御の簡略化を図ることができる。
【０１７５】
特に、複数のデータバス幅に対応可能な半導体記憶装置に適用することによって、バス幅を考慮せずにＷＳＭ回路の処理を実行することが可能である。また、ページモード読み出しに対応した多値メモリセルに対する書き込み制御に対しても、非常に有効である。
【０１７６】
さらに、マスク機能を不活性化する手段を設けることによって、従来と同様のページバッファ手段を用いた書き込み処理を行うこともできる。
【図面の簡単な説明】
【図１】本発明の一実施形態である半導体記憶装置の構成を示すブロック図である。
【図２】本発明の半導体記憶装置におけるページバッファマスク回路の構成例を示す回路図である。
【図３】（ａ）〜（ｃ）は、それぞれ、本発明の半導体記憶装置におけるマスク判定回路の構成例を示す回路図である。
【図４】（ａ）および（ｂ）は、それぞれ、実施形態１および実施形態２の半導体記憶装置において、ページバッファ回路からの読み出しデータをページバッファマスク回路でマスクした状態を示す図である。
【図５】実施形態１の半導体記憶装置におけるページバッファ回路を用いた書き込み動作の処理手順を説明するためのフローチャートである。
【図６】実施形態２の半導体記憶装置の構成を示すブロック図である。
【図７】実施形態２の半導体記憶装置におけるページバッファ回路を用いた書き込み動作の処理手順を説明するためのフローチャートである。
【図８】実施形態３の半導体記憶装置におけるページバッファマスク回路の構成を示す回路図である。
【図９】従来の半導体記憶装置の構成を示すブロック図である。
【図１０】従来の半導体記憶装置におけるページバッファ回路を用いた書き込み動作の処理手順を説明するためのフローチャートである。
【図１１】（ａ）はメモリセルへの書き込みパターンの一例を示す図であり、（ｂ）はページバッファ回路に格納されたデータを示す図であり、（ｃ）はページバッファ回路から読み出されてメモリセルに書き込まれるデータを示す図である。
【図１２】従来の半導体記憶装置におけるページバッファ回路を用いた書き込み動作の他の処理手順を説明するためのフローチャートである。
【図１３】従来の半導体記憶装置におけるページバッファ回路を用いた書き込み動作の他の処理手順を説明するためのフローチャートである。
【符号の説明】
１００、２００、５００　　・・・　フラッシュメモリ
１０１、５０１　　・・・　制御バス
１０２、５０２　　・・・　アドレスバス
１０３、５０３　　・・・　データバス
１１０、５１０　　・・・　ＵＩ回路
１１１、５１１　　・・・　制御バス
１１２、５１２　　・・・　アドレスバス
１１３、５１３　　・・・　データバス
１１４、５１４　　・・・　制御バス
１１０、５１０　　・・・　ＵＩ回路
１２０、５２０　　・・・　ページバッファ回路
１２１、５２１　　・・・　データバス
１３０、５３０　　・・・　ＷＳＭ回路
１３１、５３１　　・・・　制御バス
１３２、５３２　　　　・・・　制御バス
１３３　　　　・・・　制御バス
５３３　　・・・　データバス
１３４、５３４　　・・・　制御バス
１３５、５３５　　・・・　アドレスバス
１３６、５３６　　・・・　制御バス
１３７、５３７　　・・・　制御バス
２３８　　　　・・・　データバス
１４０、５４０　　・・・　書き込み制御回路
１５０、２５０、５５０　　・・・　メモリアレイ
１５１、５５１　　・・・　ビット線バス
１６０、５６０　　・・・　読み出し回路
１６１、２６１、５６１　　・・・　データバス
１７０、２７０　　・・・　ページバッファマスク回路
１７１　　　　・・・　データバス
２８０　　・・・　データ論理回路
２８１　　　　・・・　データバス
１００１　　マスク判定回路
１００２、１００３、４００２、４００３　　ＡＮＤ回路
１１０１、１１０２、１２０１、１２０２、１３０１、１３０２　　アドレス比較回路
１１１１〜１１１４　　ＸＮＯＲ回路
１１１５〜１１２２　　ＮＡＮＤ回路
１２０３、１３０３　ラッチ回路
【図１】
2004039112.tif 000003
【図２】
2004039112.tif 000004
【図３】
2004039112.tif 000005
【図４】
2004039112.tif 000006
【図５】
2004039112.tif 000007
【図６】
2004039112.tif 000008
【図７】
2004039112.tif 000009
【図８】
2004039112.tif 000010
【図９】
2004039112.tif 000011
【図１０】
2004039112.tif 000012
【図１１】
2004039112.tif 000013
【図１２】
2004039112.tif 000014
【図１３】
2004039112.tif 000015