(57)【特許請求の範囲】
【請求項１】
閾値電圧の相違によって２値データを保持し、それぞれが電気的に書換え可能な第１記憶素子と第２記憶素子とからなるツインセルを複数個含むメモリアレイと、
前記ツインセルの読出し要求を受けたときに、前記ツインセルを構成する第１記憶素子の閾値電圧が消去判定レベルよりも小さく、前記ツインセルを構成する第２記憶素子の閾値電圧が前記消去判定レベルよりも小さい場合には、前記ツインセルの記憶データをマスクして出力する出力回路とを備えた、半導体装置。
【請求項２】
前記出力回路は、前記ツインセルの読出し要求を受けたときに、前記ツインセルを構成する第１記憶素子の閾値電圧が消去判定レベルよりも小さく、前記ツインセルを構成する第２記憶素子の閾値電圧が前記消去判定レベルよりも小さい場合には、固定値を出力する、請求項１記載の半導体装置。
【請求項３】
前記出力回路は、前記ツインセルの読出し要求に応じて、
第１モードにおいて、前記第１記憶素子の閾値電圧に応じて第１のビット線に生じる電圧と、定電流源に接続されることによって第２のビット線に生じる電圧の差を増幅し、第２モードにおいて、前記第２記憶素子の閾値電圧に応じて前記第２のビット線に生じる電圧と、前記定電流源に接続されることによって前記第１のビット線に生じる電圧の差を増幅し、第３モードにおいて、前記第１記憶素子の閾値電圧に応じて前記第１のビット線に生じる電圧と、前記第２記憶素子の閾値電圧に応じて前記第２のビット線に生じる電圧の差を増幅する差動増幅部を含む、請求項１記載の半導体装置。
【請求項４】
前記半導体装置は、
前記第１記憶素子と接続される第３のビット線と、
前記第２記憶素子と接続される第４のビット線とを含み、
前記差動増幅部は、
前記第１のビット線と前記第２のビット線との電位差を増幅するアンプと、
前記第１モードにおいて、前記第１のビット線と前記第３のビット線とを接続し、前記第２モードにおいて、前記第２のビット線と前記第４のビット線とを接続し、前記第３モードにおいて、前記第１のビット線と前記第３のビット線とを接続し、かつ前記第２のビット線と前記第４のビット線とを接続する第１のスイッチと、
前記第１モードにおいて、前記定電流源と前記第２のビット線と接続し、前記第２モードにおいて、前記定電流源と前記第１のビット線と接続する第２のスイッチとを含む、請求項３記載の半導体装置。
【請求項５】
前記差動増幅部は、
前記アンプでの増幅後に前記第１のビット線の電圧を出力する第１の出力ドライバと、
前記アンプでの増幅後に前記第２のビット線の電圧を出力する第２の出力ドライバとを含む、請求項４記載の半導体装置。
【請求項６】
前記出力回路は、前記差動増幅部の出力を受けるデータ出力部を含み、
前記データ出力部は、
前記第１モードでの前記差動増幅部の出力を記憶する第１の記憶部と、
前記第２モードでの前記差動増幅部の出力を記憶する第２の記憶部と、
前記第３モードでの前記差動増幅部の出力を記憶する第３の記憶部と、
前記第１の記憶部に前記第１記憶素子の閾値電圧が前記消去判定レベルよりも小さいことを表わすデータが記憶され、前記第２の記憶部に前記第２記憶素子の閾値電圧が前記消去判定レベルよりも小さいことを表わすデータが記憶されている場合には、前記第３の記憶部に記憶されているデータをマスクしたデータを出力する出力制御回路とを含む、請求項５記載の半導体装置。
【請求項７】
前記出力回路は、
前記第１モードおよび前記第３モードにおいて、前記第１の出力ドライバの出力を第１の入力値、前記第２の出力ドライバの出力を第２の入力値として選択し、
前記第２モードにおいて、前記第２の出力ドライバの出力を前記第１の入力値、前記第１の出力ドライバの出力を前記第２の入力値として選択するセレクタを備え、
前記第１の記憶部、前記第２の記憶部、および前記第３の記憶部は、前記第１の入力値および前記第２の入力値に基づく値を記憶する、請求項６記載の半導体装置。
【請求項８】
前記半導体装置は、
前記半導体装置を制御するためのクロックを生成するクロックパルス生成器と、
前記出力回路を制御するための信号を生成する出力回路制御部とを備え、
前記出力回路制御部は、
前記ツインセルの読出要求が検知する検知回路と、
前記ツインセルの読出要求が検知されたときに、前記クロックパルス生成器で生成されたクロックよりも短い周期のカウンタクロックを生成するカウンタクロック生成回路と、
前記カウンタクロックの各立ち上りに基づいて第１のレベルに変化するカウント信号を複数個生成するカウント信号生成回路と、
前記生成された複数個のカウント信号に基づいて、前記第１のスイッチおよび前記第２のスイッチを制御する信号を生成する選択信号生成回路とを含む、請求項４記載の半導体装置。
【請求項９】
前記半導体装置は、
前記半導体装置を制御するためのクロックを生成するクロックパルス生成器と、
前記出力回路を制御するための信号を生成する出力回路制御部とを備え、
前記出力回路制御部は、
前記ツインセルの読出要求が検知する検知回路と、
前記ツインセルの読出要求が検知されたときに、前記クロックパルス生成器で生成されたクロックよりも短い周期のカウンタクロックを生成するカウンタクロック生成回路と、
前記カウンタクロックの各立ち上りに基づいて第１のレベルに変化するカウント信号を３個生成するカウント信号生成回路と、
前記第１の記憶部、前記第２の記憶部および第３の記憶部は、それぞれ前記生成された３個のカウント信号のうちの１つに基づいて、前記差動増幅部の出力をラッチする、請求項６記載の半導体装置。  
【請求項１０】
前記半導体装置は、さらに、
書込みベリファイ時において、書込み動作が選択されたツインセルの記憶情報が読み出された主ビット線の電圧を増幅するベリファイセンスアンプを備える、請求項１記載の半導体装置。
【請求項１１】
閾値電圧の相違によって２値データを保持し、それぞれが電気的に書換え可能な第１記憶素子と第２記憶素子とからなるツインセルを複数個含むメモリアレイと、
前記ツインセルの読出し要求を受けたときに、前記ツインセルを構成する第１記憶素子の閾値電圧が消去判定レベルよりも小さく、前記ツインセルを構成する第２記憶素子の閾値電圧が前記消去判定レベルよりも小さい場合には、前記ツインセルの記憶データを読み出さない出力回路とを備えた、半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、たとえば不揮発性メモリを含む半導体装置に関する。
【背景技術】
【０００２】
従来から、２つのメモリセルに相補的なデータを書き込む半導体不揮発性メモリにおいて、ブランク・チェック機能を備えたものが知られている。【０００３】
たとえば、特開２００９−２７２０２８号公報（特許文献１）に記載の半導体集積回路は、複数のツインセルを含む不揮発性メモリ（ＤＦＬ；２１）、セレクタ（ＳＥＬ＿ＢＣ）と、センス回路（ＢＣ＿ＳＡ）を具備する。ツインセルの２つの不揮発性メモリセル（ＭＣ１、ＭＣ２）に相補データが書き込まれ、小さい閾値電圧と大きい閾値電圧の組み合わせの書き込み状態に設定される。２つの不揮発性メモリ（ＭＣ１、ＭＣ２）に非相補データが書き込まれ（消去という）、例えばともに小さい閾値電圧のブランク状態とされる。セレクタ（ＳＥＬ＿ＢＣ）は、複数のスイッチ素子を含む。ブランク・チェック動作の間にセレクタ（ＳＥＬ＿ＢＣ）のスイッチ素子がオン状態に制御されて、センス回路の第１入力端子に共通に流れる各ツインセルの第１総和電流が第２入力端子の参照信号と比較され、複数のツインセルが書き込み状態かブランク状態かが高速で検出される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２７２０２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、消去によって、２つの不揮発性メモリ（ＭＣ１、ＭＣ２）の閾値電圧をともに低い状態にすることはできるが、消去前の書込み状態における２つの不揮発性メモリの閾値電圧の大小関係が、消去後も維持される可能性を否定できない。【０００６】
そのため、消去したにも関わらず、読出してみると消去前に書込まれていたデータと同じデータが読み出されてしまう場合があり、セキュリティ上問題となる可能性がある。【０００７】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかであろう。
【課題を解決するための手段】
【０００８】
本発明の一実施形態の半導体装置では、出力回路は、ツインセルの読出し要求を受けたときに、ツインセルを構成する第１記憶素子の閾値電圧が消去判定レベルよりも小さく、ツインセルを構成する第２記憶素子の閾値電圧が消去判定レベルよりも小さい場合には、ツインセルの記憶データをマスクして出力する。
【発明の効果】
【０００９】
本発明の一実施形態によれば、消去したにも関わらず、消去前の書込みデータが読み出されることが防止できる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の半導体装置の構成を表わす図である。
【図２】第１の実施形態の半導体装置におけるメモリアレイからのツインセルデータの読出し処理の手順を表わすフローチャートである。
【図３】第２の実施形態のマイクロコンピュータの構成を表わす図である。
【図４】フラッシュメモリモジュールの構成を表わす図である。
【図５】（ａ）は、スプリットゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。（ｂ）は、ホットキャリア書込み方式を用いるスタックド・ゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。（ｃ）は、はＦＮトンネル書込み方式を用いるスタックド・ゲート型フラッシュメモリ素子に与えるバイアス電圧の例を表わす図である。
【図６】（ａ）は、ツインセルデータが“０”を記憶する状態を表わす図である。（ｂ）は、ツインセルデータが“１”を記憶する状態を表わす図である。（ｃ）は、ツインセルデータのイニシャライズ状態を表わす図である。
【図７】ツインセルデータの読出し系及び書込み系の詳細な回路構成の例である。
【図８】差動増幅部の構成を表わす図である。
【図９】データ出力部の構成を表わす図である。
【図１０】出力回路制御部の構成を表わす図である。
【図１１】第１モードでの動作を説明するための図である。
【図１２】第２モードでの動作を説明するための図である。
【図１３】第３モードでの動作を説明するための図である。
【図１４】各種の制御信号が生成されるタイミングを説明するための図である。
【図１５】第３の実施形態の半導体装置におけるメモリアレイからのツインセルデータの読出し処理の手順を表わすフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図面を用いて説明する。
［第１の実施形態］
図１は、第１の実施形態の半導体装置の構成を表わす図である。
【００１２】
この半導体装置１００は、メモリアレイ１０１と、出力回路１０５とを備える。
メモリアレイ１０１は、複数個のツインセル１０４を含む。ツインセル１０４は、閾値電圧Ｖｔｈの相違によって２値データ（ツインセルデータ）を保持し、それぞれが電気的に書換え可能な第１記憶素子１０２と第２記憶素子１０３とからなる。
【００１３】
出力回路１０５は、ツインセル１０４の読出し要求を受けたときに、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルよりも小さく、第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルよりも小さい場合には、ツインセル１０４の記憶データをマスクしたデータを出力する。マスクしたデータとは、たとえば、ツインセル１０４の記憶データの値に依存しない値であって、固定値“１”または”０”、またはランダムな値である。ここでの消去判定レベルとは、書込み後のメモリセルの閾値が高い状態と区別できるような所定電圧レベルであり、特にツインセルの消去や個々のメモリセルの消去動作時に使用される消去判定レベルと全く同一の電圧値である必要はなく、類似の電圧値であれば良い。
【００１４】
図２は、第１の実施形態の半導体装置におけるメモリアレイ１０１からのツインセルデータの読出し処理の手順を表わすフローチャートである。
【００１５】
まず、出力回路１０５は、ツインセルデータの読出し要求信号ＲＲＱを受信する（ステップＳ１０１）。
【００１６】
次に、出力回路１０５は、第１記憶素子１０２の記憶しているデータをビット線ＢＬを通じて読み出すことによって、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否か判定する（ステップＳ１０２）。
【００１７】
次に、出力回路１０５は、第２記憶素子１０３の記憶しているデータをビット線／ＢＬを通じて読み出すことによって、第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否か判定する（ステップＳ１０３）。
【００１８】
次に、出力回路１０５は、ツインセル１０４の記憶しているデータをビット線対ＢＬ，／ＢＬの差動増幅によって検出する（ステップＳ１０４）。
【００１９】
出力回路１０５は、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さく、かつ第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合には（ステップＳ１０５でＹＥＳ）、ツインセル１０４の記憶データをマスクしたデータを読出したデータとして出力する（ステップＳ１０６）。
【００２０】
出力回路１０５は、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上か、または第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合には（ステップＳ１０５でＮＯ）、ツインセル１０４の記憶しているデータをビット線対ＢＬ，／ＢＬの差動増幅によって検出したデータを読出しデータとして出力する（ステップＳ１０７）。
【００２１】
以上のように、本実施の形態によれば、ツインセルを構成する２つの記憶素子の閾値電圧が消去判定レベルよりも小さければ、ツインセルの記憶データがマスクされるので、消去前の書込みデータが読み出されるのを防止することができる。
【００２２】
［第２の実施形態］
本実施の形態の半導体装置は、マイクロコンピュータである。
（マイクロコンピュータ）
図３は、第２の実施形態のマイクロコンピュータ１の構成を表わす図である。
【００２３】
図３に示されるマイクロコンピュータ（ＭＣＵ）１は、たとえば相補型ＭＯＳ集積回路製造技術などによって、単結晶シリコンのような１個の半導体チップに形成される。
【００２４】
マイクロコンピュータ１は、特に制限されないが、高速バスＨＢＵＳと周辺バスＰＢＵＳを有する。高速バスＨＢＵＳと周辺バスＰＢＵＳは、特に制限されないが、それぞれデータバス、アドレスバスおよびコントロールバスを有する。２個のバスを設けることによって、共通バスに全ての回路を共通接続する場合に比べてバスの負荷を軽くし、高速アクセス動作を保証することができる。
【００２５】
高速バスＨＢＵＳには、命令制御部と実行部を備えて命令を実行する中央処理装置（ＣＰＵ）２、ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）３、高速バスＨＢＵＳと周辺バスＰＢＵＳとのバスインタフェース制御若しくはバスブリッジ制御を行うバスインタフェース回路（ＢＩＦ）４が接続される。
【００２６】
高速バスＨＢＵＳには、さらに、中央処理装置２のワーク領域などに利用されるランダムアクセスメモリ（ＲＡＭ）５、およびデータやプログラムを格納する不揮発性メモリモジュールとしてのフラッシュメモリモジュール（ＦＭＤＬ）６が接続される。
【００２７】
周辺バスＰＢＵＳには、フラッシュメモリモジュール（ＦＭＤＬ）６に対するコマンドアクセス制御を行うフラッシュシーケンサ（ＦＳＱＣ）７、外部入出力ポート（ＰＲＴ）８，９、タイマ（ＴＭＲ）１０、およびマイクロコンピュータ１を制御するための内部のクロックＣＬＫを生成するクロックパルスジェネレータ（ＣＰＧ）１１が接続される。
【００２８】
さらに、マイクロコンピュータ１は、ＸＴＡＬ／ＥＸＴＡＬに発振子が接続され、または外部クロックが供給されるクロック端子、スタンバイ状態を指示する外部ハードウェアスタンバイ端子ＳＴＢＹ、リセットを指示する外部リセット端子ＲＥＳ、外部電源端子ＶＣＣ、外部接地端子Ｖｓｓを備える。
【００２９】
ここでは、ロジック回路としてのフラッシュシーケンサ７と、アレイ構成のフラッシュメモリモジュール６は、別ＣＡＤツールを用いて設計されているため、便宜上別々の回路ブロックとして図示されているが、双方併せて一つのフラッシュメモリを構成する。フラッシュメモリモジュール６は、読出し専用の高速アクセスポート（ＨＡＣＳＰ）を介して高速バスＨＢＵＳに接続される。ＣＰＵまたはＤＭＡＣは、高速バスＨＢＵＳから高速アクセスポートを介してフラッシュメモリモジュール６をリードアクセスすることができる。ＣＰＵ２またはＤＭＡＣ３は、フラッシュメモリモジュール６に対して書込みおよび初期化のアクセスを行うときは、バスインタフェース４を介して周辺バスＰＢＵＳ経由でフラッシュシーケンサ７にコマンドを発行し、これによってフラッシュシーケンサ７が周辺バスＰＢＵＳから低速アクセスポート（ＬＡＣＳＰ）を通じてフラッシュメモリモジュールの初期化や書込み動作の制御を行う。
【００３０】
（フラッシュメモリモジュール）
図４は、フラッシュメモリモジュール６の構成を表わす図である。
【００３１】
フラッシュメモリモジュール６は、１ビットの情報の記憶を２個の不揮発性メモリセルを用いて行う。すなわち、メモリアレイ（ＭＡＲＹ）１９は、夫々書換え可能な２個の不揮発性メモリセルＭＣ１，ＭＣ２を１ビットのツインセルとして複数個備える。図３には、代表的に１対だけ図示されている。本明細書では、メモリセルＭＣ１をポジティブセル、メモリセルＭＣ２をネガティブセルと呼ぶ。無論、フラッシュメモリモジュール６は、１ビットの情報の記憶を１個の不揮発性メモリセルを用いて行う複数のメモリセルを含む場合もある。そのような場合は、メモリセルは、メモリアレイや、メモリアレイより小さい単位で分割されたメモリブロック単位で、フラッシュメモリモジュール６内に別配置されることが多い。
【００３２】
不揮発性メモリセルＭＣ１，ＭＣ２は、たとえば、図５（ａ）に例示されるスプリットゲート型フラッシュメモリ素子である。このメモリ素子は、ソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介して配置されたコントロールゲートＣＧとメモリゲートＭＧを有する。メモリゲートＭＧとゲート絶縁膜の間にはシリコンナイトライドなどの電荷トラップ領域（SiN）が配置される。選択ゲート側のソースまたはドレイン領域は、ビット線ＢＬに接続され、メモリゲートＭＧ側のソースまたはドレイン領域はソース線ＳＬに接続される。
【００３３】
メモリセルの閾値電圧Ｖｔｈを下げるにはＢＬ＝Ｈｉ−Ｚ（高インピーダンス状態）、ＣＧ＝１．５Ｖ、ＭＧ＝−１０Ｖ、ＳＬ＝６Ｖ、ＷＥＬＬ＝０Ｖとし、ウェル領域（ＷＥＬＬ）とメモリゲートＭＧ間の高電界によって電荷トラップ領域（SiN）からウェル領域（ＷＥＬＬ）に電子が引き抜かれる。この処理単位はメモリゲートを共有する複数メモリセルとされる。
【００３４】
メモリセルの閾値電圧Ｖｔｈを上げるにはＢＬ＝０Ｖ、ＣＧ＝１．５Ｖ、ＭＧ＝１０Ｖ、ＳＬ＝６Ｖ、ＷＥＬＬ＝０Ｖとし、ソース線ＳＬからビット線に書込み電流を流し、それによってコントロールゲートとメモリゲートの境界部分で発生するホットエレクトロンが電荷トラップ領域（SiN）に注入される。電子の注入はビット線電流を流すか否かによって決まるからこの処理はビット単位で制御される。
【００３５】
読出しはＢＬ＝１．５Ｖ、ＣＧ＝１．５Ｖ，ＭＧ＝０Ｖ、ＳＬ＝０Ｖ、ＷＥＬＬ＝０Ｖで行われる。メモリセルの閾値電圧Ｖｔｈが低ければメモリセルはオン状態にされ、閾値電圧Ｖｔｈが高ければオフ状態にされる。
【００３６】
メモリ素子はスプリットゲート型フラッシュメモリ素子に限定されず、図５（ｂ），図５（ｃ）に例示されるスタックド・ゲート型フラッシュメモリ素子であってよい。このメモリ素子はソース・ドレイン領域の間のチャネル形成領域の上にゲート絶縁膜を介してフローティングゲートＦＧとコントロールゲートＷＬがスタックされて構成される。図５（ｂ）はホットキャリア書込み方式によって閾値電圧Ｖｔｈを上げ、ウェル領域ＷＥＬＬへの電子の放出によって閾値電圧Ｖｔｈを下げる。図５（ｃ）はＦＮトンネル書込み方式によって閾値電圧Ｖｔｈを上げ、ビット線ＢＬへの電子の放出によって閾値電圧Ｖｔｈを下げる。
【００３７】
以下の説明では、メモリ素子がスプリットゲート型フラッシュメモリ素子であるとして説明する。
【００３８】
不揮発性メモリセルＭＣ１，ＭＣ２から成る一つのツインセルによる情報記憶は不揮発性メモリセルＭＣ１，ＭＣ２に相補データを格納することによって行う。
【００３９】
すなわち、メモリセルＭＣ１，ＭＣ２のそれぞれは、セルデータ“１”（低閾値電圧状態）またはセルデータ“０”（高閾値電圧状態）を保持することができる。
【００４０】
メモリセルのセルデータ“１”とは、メモリセルの閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の状態である。メモリセルのセルデータ“０”とは、メモリセルの閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい状態である。
【００４１】
図６（ａ）に示すように、ツインセルデータ“０”は、ポジティブセルＭＣ１がセルデータ“０”、ネガティブセルＭＣ２がセルデータ“１”を保持する状態である。図６（ｂ）に示すように、ツインセルデータ“１”は、ポジティブセルＭＣ１がセルデータ“１”、ネガティブセルＭＣ２がセルデータ“０”を保持する状態である。図６（ｃ）に示すように、ツインセルのポジティブセルＭＣ１およびネガティブセルＭＣ２が共にセルデータ“１”を保持する状態はイニシャライズ状態であり、ツインセルデータは不定になる。
【００４２】
ツインセルデータ“０”を消去した場合に、両方のセルがイニシャル状態となるが、消去前はポジティブセルＭＣ１の閾値電圧Ｖｔｈの方がネガティブセルＭＣ２の閾値電圧Ｖｔｈよりも大きいため、消去後でもこの関係が維持される可能性が想定される。この関係が維持された状態で読み出しを実施すると、イニシャル状態にも関わらずポジティブセルＭＣ１とネガティブセルＭＣ２の閾値電圧Ｖｔｈに差があるために、不定値ではなく実質的に直前のツインセルデータ“０”と等しいデータ“０”を読み出してしまう可能性がある。
【００４３】
同様に、ツインセルデータ“１”を消去した場合に、両方のセルがイニシャル状態となるが、消去前はネガティブセルＭＣ２の閾値電圧Ｖｔｈの方がポジティブセルＭＣ１の閾値電圧Ｖｔｈよりも大きいため、消去後でもこの関係が維持される可能性が想定される。この直前のツインセルデータ状態で読み出しを実施すると、イニシャル状態にも関わらず、ポジティブセルＭＣ１とネガティブセルＭＣ２の閾値電圧Ｖｔｈに差があるために、不定値ではなく実質的に直前のツインセルデータ“１”と等しいデータ“１”を読み出してしまう可能性がある。
【００４４】
このように消去したにも関わらず、読む度にデータが定まらないような不定値ではなく、高い確率で直前のツインセルデータと等しいデータが読み出せてしまうとしたら、セキュリティ上問題となる可能性がある。本発明の実施形態では、このような可能性のある問題を解決することを目的とする。
【００４５】
図４に代表的に示されたツインセルのメモリセルＭＣ１，ＭＣ２において、メモリゲートＭＧは、共通のメモリゲート選択線ＭＧＬに接続され、コントロールゲートＣＧは共通のワード線ＷＬに接続される。実際には多数のツインセルがマトリクス配置され、行方向の配列単位で対応するメモリゲート選択線ＭＧＬおよびワード線ＷＬに接続される。
【００４６】
メモリセルＭＣ１，ＭＣ２は、列単位で副ビット線ＳＢＬに接続され、副ビット線セレクタ２０を介して書込み系主ビット線ＷＭＢＬに接続する。それぞれ書込み系主ビット線ＷＭＢＬには、複数の副ビット線ＳＢＬが副ビット線セレクタ２０によって階層化されて接続されている。副ビット線ＳＢＬに階層化された単位をメモリマットと称する。ソース線ＳＬは接地電位Ｖｓｓに接続される。メモリセルＭＣ１の副ビット線ＳＢＬは、メモリマット毎に読出し列セレクタ２２を介して、差動増幅部５０の一方の入力端子に接続される。メモリセルＭＣ２の副ビット線ＳＢＬは、メモリマット毎に読出し列セレクタ２２を介して差動増幅部５０の他方の入力端子に接続される。
【００４７】
ワード線ＷＬは、第１行デコーダ(ＲＤＥＣ１)２４によって選択される。メモリゲート選択線ＭＧＬおよび副ビット線セレクタ２０は、第２行デコーダ(ＲＤＥＣ２)２５によって選択される。第１行デコーダ２４および第２行デコーダ２５による選択動作は、読出しアクセスではＨＡＣＳＰに供給されるアドレス情報などに従い、データの書込み動作および初期化動作ではＬＡＣＳＰに供給されるアドレス情報などに従う。
【００４８】
差動増幅部５０の出力は、データ出力部５２を介して高速バスＨＢＵＳのデータバスＨＢＵＳ＿Ｄ（ＤＢＵＳ）に接続される。
【００４９】
出力回路制御部４６は、差動増幅部５０およびデータ出力部５２を制御するための信号を生成して供給する。
【００５０】
書込み系主ビット線ＷＭＢＬは、書込みデータラッチ回路２７のラッチデータに従って選択的に書込み電流が流れるようにされる。書込みデータラッチ回路２７は、書換え列セレクタ２８で選択される。書換え列セレクタ２８で選択された書き換え系主ビット線ＷＭＢＬは、ベリファイセンスアンプＶＳＡに接続される。ベリファイセンスアンプＶＳＡの出力および書込みデータラッチ回路２７は、周辺バスＰＢＵＳのデータバス（ＰＢＵＳ＿Ｄ）にインタフェースされる入出力回路（ＩＯＢＵＦ）２９に接続する。
【００５１】
書換え列セレクタ２８は、列デコーダ(ＣＤＥＣ)３０によって選択される。列デコーダ３０の選択動作は、ＬＡＣＳＰに供給されるアドレス情報などに従う。
【００５２】
電源回路(ＶＰＧ)３１は、読出し、書込み、初期化に必要な各種動作電源を生成する。
タイミングジェネレータ(ＴＭＧ)３２は、ＣＰＵ２等からＨＡＣＳＰに供給されるアクセスストローブ信号、ＦＳＱＣ７からＬＡＣＳＰに供給されるアクセスコマンド等に従って、内部動作タイミングを規定する内部制御信号を生成する。
【００５３】
フラッシュメモリの制御部は、ＦＳＱＣ７とタイミングジェネレータ３２によって構成される。
【００５４】
（ツインセルデータの読出し）
図７には、ツインセルデータの読出し系及び書込み系の詳細な回路構成が例示される。書込み系主ビット線としてＷＭＢＬ＿０Ｐ〜ＷＭＢＬ＿３Ｐ、ＷＭＢＬ＿０Ｎ〜ＷＭＢＬ＿３Ｎの８本が例示され、そこに接続するメモリマットとして１個のメモリマットが例示される。特に制限されないが、副ビット線としてＳＢＬ＿０Ｐ〜ＳＢＬ＿７Ｐ、ＳＢＬ＿０Ｎ〜ＳＢＬ＿７Ｎが配置され、１本の書込み系主ビット線に対して２本の副ビット線が割り当てられる。
【００５５】
メモリセルＭＣ１，ＭＣ２については図示を省略してある副ビット線に付された参照符号における数字のサフィックスはツインセルの列番号を意味する。アルファベットのサフィックスＰはツインセルの一方のメモリセルＭＣ１（ポジティブセル）に接続する副ビット線であることを意味し、サフィックスＮはツインセルの他方のメモリセルＭＣ２（ネガティブセル）に接続する副ビット線であることを意味する。書込み主ビット線に付された参照符号におけるアルファベットのサフィックスＰはツインセルのポジティブセルＭＣ１に接続する書込み主ビット線であることを意味し、サフィックスＮはツインセルのネガティブセルＭＣ２に接続する書込み主ビット線であることを意味し、数字のサフィックスは対応するツインセルの列番号のうち若い方の列番号を意味する。
【００５６】
読出し列セレクタ２２をスイッチ制御するリード選択信号ＹＲ０Ｎ〜ＹＲ７Ｎはツインセルの列番号が等しい一対の副ビット線を選択し、選択したポジティブセルＭＣ１側の副ビット線をポジティブ側共通ビット線ＣＢＬＰを通じて出力回路４８に接続し、ネガティブセルＭＣ２側の副ビット線をネガティブ側共通ビット線ＣＢＬＮを通じて出力回路４８に接続する。
【００５７】
出力回路４８は、ツインセルデータの読出要求を受けたときには、第１モード、第２モード、第３モードの処理を順番に実行する。出力回路４８は、第１モードでは、ポジティブセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否かを判定するための処理を行なう。出力回路４８は、第２モードでは、ネガティブセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否かを判定するための処理を行なう。出力回路４８は、第３モードでは、ツインセル（ＭＣ１，ＭＣ２）が記憶しているデータを判定する。出力回路４８は、ポジティブセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さく、かつネガティブセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいときには、判定したツインセル（ＭＣ１，ＭＣ２）が記憶しているデータをマスクしたデータを出力する。
【００５８】
出力回路４８は、差動増幅部５０と、データ出力部５２とを備える。
差動増幅部５０は、第１モードにおいて、ポジティブセルＭＣ１の閾値電圧Ｖｔｈに応じて第１のビット線に生じる電圧と、定電流源に接続されることによって第２のビット線に生じる電圧の差を増幅する。
【００５９】
差動増幅部５０は、第２モードにおいて、ネガティブセルＭＣ２の閾値電圧Ｖｔｈに応じて第２のビット線に生じる電圧と、定電流源に接続されることによって第１のビット線に生じる電圧の差を増幅する。
【００６０】
差動増幅部５０は、第３モードにおいて、ポジティブセルＭＣ１の閾値電圧Ｖｔｈに応じて第１のビット線に生じる電圧と、ネガティブセルＭＣ２の閾値電圧Ｖｔｈに応じて第２のビット線に生じる電圧の差を増幅する。
【００６１】
第１のビット線と第２のビット線の電圧は、それぞれグローバル読出ビット線対ＧＢＬｒ，／ＧＢＬｒを通じてデータ出力部５２へ送られる。
【００６２】
データ出力部５２は、グローバル読出ビット線対ＧＢＬｒ，／ＧＢＬｒのデータを受ける。データ出力部５２は、第１モードでの結果を表わすデータと、第２モードでの結果を表わすデータと、第３モードでの結果を表わすデータを記憶する。データ出力部５２は、第１モードの結果がポジティブセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さく、かつ第２モードでの結果がネガティブセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合には、第３のモードでの結果をマスクしたデータを出力する。
【００６３】
読出し系ディスチャージ回路４０は、ディスチャージ信号ＤＣＲ０、ＤＣＲ１によって副ビット線ＳＢＬを選択的に接地電位Ｖｓｓに接続する回路であり、副ビット線セレクタ２０により非選択とされる副ビット線を接地電位Ｖｓｓに接続する。
【００６４】
（ツインセルデータの書込み）
書込みデータラッチ回路２７は、信号ＢＬＫＣＩによるリセット機能を有するスタティックラッチＬＴＰ，ＬＴＮと、書込みパルスＷＰＬＳのパルス幅に応じて書込み電流を流すための電流スイッチＰＳＷＰ，ＰＳＷＮと、スタティックラッチＬＴの反転記憶ノードの値にしたがって主ビット線と電流スイッチＰＳＷＰ，ＰＳＷＮとを選択的に接続する書込み選択スイッチＳＳＷを有する。
【００６５】
ポジティブセルＭＣ１に割り当てられる主ビット線に対応するスタティックラッチＬＴＰにはデータバスＰＢＵＳ＿Ｄから非反転信号線ＰＳＬに供給された書込みデータが書換え列セレクタ２８で選択されて供給される。ネガティブセルＭＣ２に割り当てられる主ビット線に対応するスタティックラッチＬＴＮにはデータバスＰＢＵＳ＿Ｄから反転信号線ＮＳＬに供給された反転書込みデータが書換え列セレクタ２８で選択されて供給される。ＥＮＤＴは信号線ＰＳＬ，ＮＳＬへの書込みデータの入力ゲート信号である。
【００６６】
ポジティブセルＭＣ１に割り当てられる主ビット線は書換え列セレクタ２８を介して非反転ベリファイ信号線ＰＶＳＬに共通接続される。ネガティブセルＭＣ２に割り当てられる主ビット線は書換え列セレクタ２８を介して反転ベリファイ信号線ＮＶＳＬに共通接続される。
【００６７】
書換え列セレクタ２８をスイッチ制御するライト選択信号ＹＷ０〜ＹＷ３はツインセルの列番号が等しい一対の主ビット線を信号線ＰＳＬ，ＮＳＬに接続し、また、それに対応するスタティックラッチＬＴＰ，ＬＴＮを信号線ＰＳＬ，ＮＳＬに接続する。
【００６８】
書込み動作においてデータバスＰＢＵＳ＿Ｄから入力された書込みデータは相補データとして信号線ＰＳＬ，ＮＳＬに入力され、書換え列セレクタ２８で選択される一対のスタティックラッチＬＴＰ，ＬＴＮにラッチされる。スタティックラッチＬＴＰ，ＬＴＮの一方はデータ“１”、他方はデータ“０”をラッチする。ラッチデータ“１”に対応する主ビット線にはソース線からの書込み電流が流れず、ラッチデータ“０”に対応する主ビット線にはソース線からの書込み電流が流れ、これによって、選択されたツインセルの一方のメモリセルにはセルデータ“０”が書込まれ、他方のメモリセルにはセルデータ“１”が書込まれる。
【００６９】
書込みベリファイにおいては、書込み動作が選択されたツインセルの記憶情報を対応する一対の主ビット線に読出して書換え列セレクタ２８でベリファイ信号線ＰＶＳＬ，ＮＶＳＬに伝達し、シングルエンドで反転増幅出力を得るベリファイセンスアンプＶＳＡ＿Ｐ，ＶＳＡ＿Ｎで増幅する。また、書込み動作において書込みデータが格納されたスタティックラッチＬＴＰ，ＬＴＮの保持データを同じく書換え列セレクタ２８で信号線ＰＳＬ，ＮＳＬに伝達する。ベリファイセンスアンプＶＳＡ＿Ｐの出力と信号線ＰＳＬの非反転書込みデータの一致を排他的論理和ゲートＥＸＯＲ＿Ｐで調べることによってポジティブセルのデータ書込み状態を検証することができる。同様に、ベリファイセンスアンプＶＳＡ＿Ｎの出力と信号線ＮＳＬの反転書込みデータの一致を排他的論理和ゲートＥＸＯＲ＿Ｎで調べることによってネガティブセルＭＣ２のデータ書込み状態を検証することができる。排他的論理和ゲートＥＸＯＲ＿Ｐ，ＥＸＯＲ＿Ｎの出力に対してアンドゲートＡＮＤで論理積を採り、その論理積の結果が１ビットの書込みデータに対する書込みベリファイ結果ＶＲＳＬＴになる。書込みデータが複数ビットの場合には複数ビット分の排他的論理和ゲートの全ての出力に対して論理積を採ってベリファイ結果を得ることになる。ベリファイ結果ＶＲＳＬＴはフラッシュシーケンサ７に供給される。
【００７０】
また、ベリファイセンスアンプＶＳＡ＿Ｐ，ＶＳＡ＿Ｎの出力はデータセレクタＳＥＬを介して選択的に周辺データバスＰＢＵＳ＿Ｄに出力可能になっている。この読出し経路は、ツインセルに記憶されたネガティブセルＭＣ２の記憶情報またはポジティブセルＭＣ１の記憶情報をシングルエンド増幅して周辺データバスＰＢＵＳ＿Ｄに出力する読出し経路になる。
【００７１】
書込み系ディスチャージ回路４１は、ディスチャージ信号ＤＣＷ０、ＤＣＷ１によって書込み用主ビット線ＷＭＢＬを選択的に接地電位Ｖｓｓに接続する回路であり、書換え列セレクタ２８により非選択とされる書込み用主ビット線ＷＢＭＬを接地電位Ｖｓｓに接続する。
【００７２】
（差動増幅部）
図８は、差動増幅部５０の構成を表わす図である。
【００７３】
差動増幅部５０は、スイッチ８２と、プリチャージ部８３と、定電流源８１と、スイッチ８４と、センスアンプ７９と、正相出力ドライバ７７と、逆相出力ドライバ７８とを含む。
【００７４】
スイッチ８２は、ＰチャネルＭＯＳ（Metal-Oxide-Semiconductor）トランジスタＰ１，Ｐ２を含む。
【００７５】
ＰチャネルＭＯＳトランジスタＰ１は、ポジティブ側共通ビット線ＣＢＬＰの一端とポジティブ側局所ビット線（第１のビット線）ＬＢＰの一端との間に設けられ、ポジティブ側判定選択信号ＹＲＰを受けるゲートを有する。ＰチャネルＭＯＳトランジスタＰ２は、ネガティブ側共通ビット線ＣＢＬＮの一端とネガティブ側局所ビット線ＬＢＮ（第２のビット線）の一端との間に設けられ、ネガティブ側判定選択信号ＹＲＮを受けるゲートを有する。
【００７６】
プリチャージ部８３は、ＰチャネルＭＯＳトランジスタＰ３，Ｐ４を含む。
ＰチャネルＭＯＳトランジスタＰ３は、ポジティブ側局所ビット線ＬＢＰと電圧ＦＶＤＤの電源との間に設けられ、ポジティブプリチャージ信号ＰＣＰ１を受けるゲートを有する。ＰチャネルＭＯＳトランジスタＰ４は、ネガティブ側局所ビット線ＬＢＮと電圧ＦＶＤＤの電源との間に設けられ、ネガティブプリチャージ信号ＰＣＮ１を受けるゲートを有する。
【００７７】
定電流源８１は、サイズの大きなＮチャネルＭＯＳトランジスタＮ３を含む。ＮチャネルＭＯＳトランジスタＮ３は、ノードＮＤ１と接地電位Ｖｓｓのラインとの間に設けられ、定電圧ＣＣＢを受けるゲートを有する。定電圧ＣＣＢが供給されたときに、ＮチャネルＭＯＳトランジスタＮ３には、定電流ＩＲＲＦが流れる。
【００７８】
定電流源８１を設けた理由について説明する。ワード線ＷＬが選択レベルにされたとき、閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上のメモリセルはオフ状態にされ、このメモリセルが接続された副ビット線ＳＢＬはプリチャージ電位を維持する。一方、ワード線ＷＬが選択レベルとされたとき、閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいメモリセルはオン状態にされ、このメモリセルが接続された副ビット線ＳＢＬは接地電位に向けてディスチャージされる。したがって、この相違をビット線上の電位の差としてセンスアンプ７９で検出可能にする為に定電流源８１が設けられる。
【００７９】
スイッチ８４は、ＰチャネルＭＯＳトランジスタＰ５と、ＰチャネルＭＯＳトランジスタＰ６とを備える。
【００８０】
ＰチャネルＭＯＳトランジスタＰ５は、ノードＮＤ１と、ポジティブ側局所ビット線ＬＢＰとの間に設けられ、正相側バイアス接続信号ＣＣＳＰを受けるゲートを有する。ＰチャネルＭＯＳトランジスタＰ６は、ノードＮＤ１と、ネガティブ側局所ビット線ＬＢＮとの間に設けられ、逆相側バイアス接続信号ＣＣＳＮを受けるゲートを有する。
【００８１】
第１モードでは、ポジティブ側判定選択信号ＹＲＰが「Ｌ」レベルに活性化され、ネガティブ側判定選択信号ＹＲＮが「Ｈ」レベルに非活性化され、正相側バイアス接続信号ＣＣＳＰが「Ｈ」レベルに非活性化され、逆相側バイアス接続信号ＣＣＳＮが「Ｌ」レベルに活性化される。その結果、ポジティブ側局所ビット線ＬＢＰがポジティブ側共通ビット線ＣＢＬＰと接続し、さらに選択されたポジティブセル側の副ビット線ＳＢＬ＿ｉＰ（第３のビット線）と接続し、ネガティブ側局所ビット線ＬＢＮが定電流源８１と接続する。
【００８２】
第２モードでは、ポジティブ側判定選択信号ＹＲＰが「Ｈ」レベルに非活性化され、ネガティブ側判定選択信号ＹＲＮが「Ｌ」レベルに活性化され、正相側バイアス接続信号ＣＣＳＰが「Ｌ」レベルに活性化され、逆相側バイアス接続信号ＣＣＳＮが「Ｈ」レベルに非活性化される。その結果、ポジティブ側局所ビット線ＬＢＰが定電流源８１と接続し、ネガティブ側局所ビット線ＬＢＮがネガティブ側共通ビット線ＣＢＬＮと接続し、さらに選択されたネガティブセル側の副ビット線ＳＢＬ＿ｉＮ（第４のビット線）と接続する。
【００８３】
第３モードでは、ポジティブ側判定選択信号ＹＲＰが「Ｌ」レベルに活性化され、ネガティブ側判定選択信号ＹＲＮが「Ｌ」レベルに活性化され、正相側バイアス接続信号ＣＣＳＰが「Ｈ」レベルに非活性化され、逆相側バイアス接続信号ＣＣＳＮが「Ｈ」レベルに非活性化される。その結果、ポジティブ側局所ビット線ＬＢＰがポジティブ側共通ビット線ＣＢＬＰと接続し、さらに選択されたポジティブセル側の副ビット線ＳＢＬ＿ｉＰ（第３のビット線）と接続する。ネガティブ側局所ビット線ＬＢＮがネガティブ側共通ビット線ＣＢＬＮと接続し、さらに選択されたネガティブセル側の副ビット線ＳＢＬ＿ｉＮ（第４のビット線）と接続する。
【００８４】
センスアンプ７９は、ＰチャネルＭＯＳトランジスタＰ１１とＮチャネルＭＯＳトランジスタＮ１１で構成されるインバータＩＶＰと、ＰチャネルＭＯＳトランジスタＰ１２とＮチャネルＭＯＳトランジスタＮ１２で構成されるインバータＩＶＮと、ＰチャネルＭＯＳトランジスタＰ２０とを備える。
【００８５】
インバータＩＶＰの入力であるＰチャネルＭＯＳトランジスタＰ１１とＮチャネルＭＯＳトランジスタＮ１１の間のノードＮＤ２は、ポジティブ側局所ビット線ＬＢＰに接続される。インバータＩＶＮの入力であるＰチャネルＭＯＳトランジスタＰ１２とＮチャネルＭＯＳトランジスタＮ１２の間のノードＮＤ３は、ネガティブ側局所ビット線ＬＢＮに接続される。ＰチャネルＭＯＳトランジスタＰ２０は、ノードＮＤ４と接地電位Ｖｓｓのラインの間に設けられ、センスラッチ信号ＳＬＡＴを受けるゲートを有する。インバータＩＶＰの出力がインバータＩＶＮの入力に接続され、インバータＩＶＮの出力がインバータＩＶＰの入力に接続される。
【００８６】
センスラッチ信号ＳＬＡＴが「Ｈ」に設定されると、ＰチャネルＭＯＳトランジスタ２０がオンとなり、インバータＩＶＰおよびインバータＩＶＮによって、ノードＮＤ２の電圧とノードＮＤ３の電圧の差が増幅される。
【００８７】
正相出力ドライバ７７は、インバータＩＶ３と、ＮＯＲ回路ＬＣ３と、ＰチャネルＭＯＳトランジスタＰ７，Ｐ８、ＮチャネルＭＯＳトランジスタＮ８とを備える。
【００８８】
インバータＩＶ３は、センスラッチ信号ＳＬＡＴを受ける。ＮＯＲ回路ＬＣ３は、インバータＩＶ３の出力を受ける一方の入力端子と、ポジティブ側局所ビット線ＬＢＰと接続される他方の入力端子とを有する。電圧ＶＤＤの電源と接地電位Ｖｓｓとの間に、ＰチャネルＭＯＳトランジスタＰ７、ＰチャネルＭＯＳトランジスタＰ８、およびＮチャネルＭＯＳトランジスタＮ８が設けられる。ＰチャネルＭＯＳトランジスタＰ８のゲートおよびＮチャネルＭＯＳトランジスタＮ８のゲートは、ＮＯＲ回路ＬＣ３の出力と接続される。ＰチャネルＭＯＳトランジスタＰ７のゲートは、インバータＩＶ３の出力と接続される。
【００８９】
正相出力ドライバ７７は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつポジティブ側局所ビット線ＬＢＰが「Ｌ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルを「Ｌ」レベルに設定する。正相出力ドライバ７７は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつポジティブ側局所ビット線ＬＢＰが「Ｌ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルを「Ｌ」レベルに設定する。正相出力ドライバ７７は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつポジティブ側局所ビット線ＬＢＰが「Ｈ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルを「Ｈ」レベルに設定する。正相出力ドライバ７７は、センスラッチ信号ＳＬＡＴが「Ｈ」レベルのときには、正相グローバル読出ビット線ＧＢＬｒをハイ・インピーダンス状態する。
【００９０】
逆相出力ドライバ７８は、インバータＩＶ４と、ＮＯＲ回路ＬＣ４と、ＰチャネルＭＯＳトランジスタＰ９，Ｐ１０、ＮチャネルＭＯＳトランジスタＮ１０とを備える。
【００９１】
インバータＩＶ４は、センスラッチ信号ＳＬＡＴを受ける。ＮＯＲ回路ＬＣ４は、インバータＩＶ４の出力を受ける一方の入力端子と、ネガティブ側局所ビット線ＬＢＮと接続される他方の入力端子とを有する。電圧ＶＤＤの電源と接地電位Ｖｓｓとの間に、ＰチャネルＭＯＳトランジスタＰ９、ＰチャネルＭＯＳトランジスタＰ１０、およびＮチャネルＭＯＳトランジスタＮ１０が設けられる。ＰチャネルＭＯＳトランジスタＰ１０のゲートおよびＮチャネルＭＯＳトランジスタＮ１０のゲートは、ＮＯＲ回路ＬＣ４の出力と接続される。ＰチャネルＭＯＳトランジスタＰ９のゲートは、インバータＩＶ４の出力と接続される。
【００９２】
逆相出力ドライバ７８は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｌ」レベルのときに、逆相グローバル読出ビット線／ＧＢＬｒのレベルを「Ｌ」レベルに設定する。逆相出力ドライバ７８は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｌ」レベルのときに、逆相グローバル読出ビット線／ＧＢＬｒのレベルを「Ｌ」レベルに設定する。逆相出力ドライバ７８は、センスラッチ信号ＳＬＡＴが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルのときに、逆相グローバル読出ビット線／ＧＢＬｒのレベルを「Ｈ」レベルに設定する。逆相出力ドライバ７８は、センスラッチ信号ＳＬＡＴが「Ｈ」レベルのときには、逆相グローバル読出ビット線／ＧＢＬｒをハイ・インピーダンス状態する。
【００９３】
（データ出力部）
図９は、データ出力部５２の構成を表わす図である。
【００９４】
データ出力部５２は、プリチャージ部９１と、データセレクタＳＥＬと、インバータＩＶ１，ＩＶ２と、ＲＳフリップフロップＲＳと、フリップフロップＦＦ１，ＦＦ２，ＦＦ３と、出力制御回路９９とを備える。出力制御回路９９は、ＡＮＤ回路ＬＣ１と、ＯＲ回路ＬＣ２とを含む。
【００９５】
プリチャージ部９１は、ＰチャネルＭＯＳトランジスタＰ１３と、ＰチャネルＭＯＳトランジスタＰ１４とを含む。
【００９６】
ＰチャネルＭＯＳトランジスタＰ１３は、電圧ＶＤＤの電源と正相グローバル読出ビット線ＧＢＬｒとの間に設けられ、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣを受けるゲートを有する。
【００９７】
ＰチャネルＭＯＳトランジスタＰ１４は、電圧ＶＤＤの電源と逆相グローバル読出ビット線／ＧＢＬｒとの間に設けられ、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣを受けるゲートを有する。
【００９８】
データセレクタＳＥＬは、セレクト信号ＳＥＬＡＢに基づいて、正相グローバル読出ビット線ＧＢＬｒと逆相グローバル読出ビット線／ＧＢＬｒを、インバータＩＶ１とインバータＩＶ２のいずれに接続するかを切り替える。セレクト信号ＳＥＬＡＢは、出力回路制御部４６によって、第１モードと第３モードにおいて「Ｈ」レベルに設定され、第２モードにおいて「Ｌ」レベルに設定される。
【００９９】
データセレクタＳＥＬは、セレクト信号ＳＥＬＡＢが「Ｈ」レベルのときには、正相グローバル読出ビット線ＧＢＬｒをインバータＩＶ１の入力に接続し、逆相グローバル読出ビット線／ＧＢＬｒをインバータＩＶ２の入力に接続する。
【０１００】
データセレクタＳＥＬは、セレクト信号ＳＥＬＡＢが「Ｌ」レベルのときには、正相グローバル読出ビット線ＧＢＬｒをインバータＩＶ２の入力に接続し、逆相グローバル読出ビット線／ＧＢＬｒをインバータＩＶ１の入力に接続する。
【０１０１】
ＲＳフリップフロップＲＳは、インバータＩＶ１の出力を受けるセット端子Ｓと、インバータＩＶ２の出力を受けるリセット端子Ｒと、フリップフロップＦＦ１，ＦＦ２，ＦＦ３の入力端子と接続される出力端子Ｑとを有する。出力端子Ｑから読出しデータｒｄａｔａが出力される。
【０１０２】
第１モードと第３モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルの場合、および第２モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合には、インバータＩＶ１の出力が「Ｈ」レベルで、かつインバータＩＶ２の出力が「Ｌ」レベルとなる。インバータＩＶ１の出力が「Ｈ」レベルで、かつインバータＩＶ２の出力が「Ｌ」レベルのときには、出力端子Ｑから出力される読出しデータｒｄａｔａが「Ｈ」レベルとなる。
【０１０３】
第１モードと第３モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合、および第２モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルの場合には、インバータＩＶ１の出力が「Ｌ」レベルで、かつインバータＩＶ２の出力が「Ｈ」レベルとなる。インバータＩＶ１の出力が「Ｌ」レベルで、かつインバータＩＶ２の出力が「Ｈ」レベルのときには、出力端子Ｑから出力される読出しデータｒｄａｔａが「Ｌ」レベルとなる。
【０１０４】
フリップフロップＦＦ１は、カウント信号ｃｎｔ２の立ち上がりのタイミングで、読出しデータｒｄａｔａをラッチする。カウント信号ｃｎｔ２は、第１モードが終了し第２モードが開始するタイミングｔ１で「Ｈ」レベルに立ち上るので、第１モードの読出しデータｒｄａｔａが、フリップフロップＦＦ１でラッチされる。第１モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルの場合（つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合）に、フリップフロップＦＦ１は、「Ｈ」レベルをラッチする。また、第１モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合に（つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合）に、フリップフロップＦＦ１は、「Ｌ」レベルをラッチする。
【０１０５】
フリップフロップＦＦ２は、カウント信号ｃｎｔ３の立ち上がりのタイミングで、読出しデータｒｄａｔａをラッチする。カウント信号ｃｎｔ３は、第２モードが終了し第３モードが開始するタイミングｔ２で「Ｈ」レベルに立ち上るので、第２モードの読出しデータｒｄａｔａが、フリップフロップＦＦ２でラッチされる。第２モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合（つまり、ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合）に、フリップフロップＦＦ２は、「Ｈ」レベルをラッチする。また、第２モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルの場合に（つまり、ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合）に、フリップフロップＦＦ２は、「Ｌ」レベルをラッチする。
【０１０６】
フリップフロップＦＦ３は、カウント信号ｃｎｔ４の立ち上がりのタイミングで、読出しデータｒｄａｔａをラッチする。カウント信号ｃｎｔ４は、第３モードが終了するタイミングｔ３で「Ｈ」レベルに立ち上るので、第３モードの読出しデータｒｄａｔａが、フリップフロップＦＦ３でラッチされる。第３モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルの場合（つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈがネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈよりも小さい場合）に、フリップフロップＦＦ３は、「Ｈ」レベルをラッチする。また、第３モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合に（つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈがネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈ以上の場合）に、フリップフロップＦＦ３は、「Ｌ」レベルをラッチする。
【０１０７】
ＡＮＤ回路ＬＣ１は、フリップフロップＦＦ１の出力とフリップフロップＦＦ２の出力の論理積を出力する。つまり、第１モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルであり、第２モードにおいて、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルの場合に、ＡＮＤ回路ＬＣ１の出力が「Ｈ」レベルとなる。つまり、ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さく、かつポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合に、ＡＮＤ回路ＬＣ１の出力が「Ｈ」レベルとなる。ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上、およびポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の少なくとも１つが満たされる場合に、ＡＮＤ回路ＬＣ１の出力が「Ｌ」レベルとなる。
【０１０８】
ＯＲ回路ＬＣ２は、フリップフロップＦＦ３の出力とＡＮＤ回路ＬＣ１の出力との論理和をデータバスＤＢＵＳ（高速バスＨＢＵＳのデータバスＨＢＵＳ＿Ｄ）へ出力する。つまり、ＡＮＤ回路ＬＣ１の出力が「Ｈ」レベルの場合には、フリップフロップＦＦ３の出力のレベルに係わりなく、「Ｈ」レベルがデータバスＤＢＵＳへ出力される。すなわち、フリップフロップＦＦ３の出力（つまり、第３モードの読出しデータ）がマスクされる。言い換えると、フリップフロップＦＦ３の出力がデータバスＤＢＵＳに伝達されず、データバスＤＢＵＳは代わりの所定値となる。なお、ＯＲ回路ＬＣ２に代わる論理回路を設けることによって、ＡＮＤ回路ＬＣ１の出力が「Ｈ」レベルの場合には、フリップフロップＦＦ３の出力のレベルに係わりなく、「Ｌ」レベルがデータバスＤＢＵＳへ出力されるものとしてもよい。
【０１０９】
ＡＮＤ回路ＬＣ１の出力が「Ｌ」レベルの場合には、フリップフロップＦＦ３の出力（つまり、第３モードの読出しデータ）がデータバスＤＢＵＳへ出力される。
【０１１０】
（出力回路制御部）
図１０は、出力回路制御部４６の構成を表わす図である。
【０１１１】
出力回路制御部４６は、読出要求検知回路７１と、カウンタクロック生成回路７６と、カウント信号生成回路７２と、ポジティブ／ネガティブ選択信号生成回路７５と、制御用信号生成回路７３とを備える。
【０１１２】
読出要求検知回路７１は、インバータＩＶ５と、ＡＮＤ回路ＬＣ３と、フリップフロップＦＦ１０と、遅延回路ＤＬ１とを備える。
【０１１３】
インバータＩＶ５は、出力回路制御部４６からモジュール選択信号ＭＳＲＯＭＮを受ける。ＡＮＤ回路ＬＣ３は、インバータＩＶ５の出力と、出力回路制御部４６からの読出要求信号ＢＳＲＤＹの論理積を出力する。フリップフロップＦＦ１０は、クロックパルスジェネレータ１１から送られるクロックＣＬＫの立ち上りのタイミングで、ＡＮＤ回路ＬＣ３の出力をラッチする。フリップフロップＦＦ１０の出力信号が読出リセット信号ｒ＿ｒｓｔである。フリップフロップＦＦ１は、遅延回路ＤＬ１の出力によってリセットされる。遅延回路ＤＬ１は、読出リセット信号ｒ＿ｒｓｔを時間ｄ１だけ遅延させて、フリップフロップＦＦ１０のリセット端子に入力する。
【０１１４】
読出要求検知回路７１によって、モジュール選択信号ＭＳＲＯＭＮが「Ｌ」レベル、読出要求信号ＢＳＲＤＹが「Ｈ」レベルのときに、読出要求を検知し、クロックＣＬＫの立ち上りのタイミングで、読出リセット信号ｒ＿ｒｓｔが「Ｈ」レベルとなり、遅延回路ＤＬ１での遅延時間ｄ１が経過した後、読出リセット信号ｒ＿ｒｓｔは「Ｌ」レベルに戻る。
【０１１５】
カウンタクロック生成回路７６は、遅延回路ＤＬ２と、フリップフロップＦＦ４と、インバータＩＶ６と、ＡＮＤ回路ＬＣ４とを備える。
【０１１６】
遅延回路ＤＬ２は、読出リセット信号ｒ＿ｒｓｔを時間ｄ２だけ遅延させる。フリップフロップＦＦ４は、読出リセット信号ｒ＿ｒｓｔによってリセットされる。フリップフロップＦＦ４は、遅延回路ＤＬ２の出力の立ち上りのタイミングで、電圧ＶＤＤ（「Ｈ」レベル）をラッチする。インバータＩＶ６は、センスラッチ信号ＳＬＡＴを受ける。ＡＮＤ回路ＬＣ４は、インバータＩＶ６の出力と、フリップフロップＦＦ４の出力との論理積をカウンタクロックｃ＿ｃｌｋとして出力する。
【０１１７】
カウンタクロック生成回路７６によって、読出リセット信号ｒ＿ｒｓｔの立ち上りのタイミングよりも遅延回路ＤＬ２での遅延時間ｄ２だけ遅れたタイミングで、カウンタクロックｃ＿ｃｌｋが立ち上る。その後、センスラッチ信号ＳＬＡＴの立ち上りのタイミングで、カウンタクロックｃ＿ｃｌｋが立ち下り、センスラッチ信号ＳＬＡＴの立ち下がりのタイミングで、カウンタクロックｃ＿ｃｌｋが立ち上がる。
【０１１８】
カウント信号生成回路７２は、複数段のフリップフロップＦＦ５，ＦＦ６，ＦＦ７，ＦＦ８を備える。
【０１１９】
フリップフロップＦＦ５，ＦＦ６，ＦＦ７，ＦＦ８は、読出リセット信号ｒ＿ｒｓｔによってリセットされる。フリップフロップＦＦ５，ＦＦ６，ＦＦ７，ＦＦ８の出力は、それぞれカウント信号ｃｎｔ１，ｃｎｔ２，ｃｎｔ３，ｃｎｔ４である。カウント信号ｃｎｔ１〜ｃｎｔ４のレベルによって第１〜第３モードが定まる。
【０１２０】
フリップフロップＦＦ５は、カウンタクロックｃ＿ｃｌｋの立ち上りのタイミングで、電圧ＶＤＤ（「Ｈ」レベル）をラッチする。フリップフロップＦＦ６は、カウント信号ｃｎｔ１が「Ｈ」レベルのときに、カウンタクロックｃｅ＿ｃｌｋの立ち上りのタイミングで、カウント信号ｃｎｔ１（「Ｈ」レベル）をラッチする。フリップフロップＦＦ７は、カウント信号ｃｎｔ２が「Ｈ」レベルのときに、カウンタクロックｃ＿ｃｌｋの立ち上りのタイミングで、カウント信号ｃｎｔ２（「Ｈ」レベル）をラッチする。フリップフロップＦＦ８は、カウント信号ｃｎｔ３が「Ｈ」レベルのときに、カウンタクロックｃ＿ｃｌｋの立ち上りのタイミングで、カウント信号ｃｎｔ３（「Ｈ」レベル）をラッチする。
【０１２１】
ポジティブ／ネガティブ選択信号生成回路７５は、ＯＲ回路ＬＣ５と、ＡＮＤ回路ＬＣ６と、ＡＮＤ回路ＬＣ７とを備える。ＯＲ回路ＬＣ５は、カウント信号ｃｎｔ２の反転信号とカウント信号ｃｎｔ３の論理和を出力する。ＡＮＤ回路ＬＣ６は、列デコーダ３０から出力されるアドレスデコード信号と、ＯＲ回路ＬＣ５の出力との論理積を出力する。ＡＮＤ回路ＬＣ７は、アドレスデコード信号と、カウント信号ｃｎｔ２の論理積を出力する。
【０１２２】
アドレスデコード信号が「Ｈ」レベル、かつカウント信号ｃｎｔ２が「Ｌ」レベルのときに、ＯＲ回路ＬＣ５およびＡＮＤ回路ＬＣ６によって、ポジティブ側判定選択信号ＹＲＰが「Ｈ」レベルとなる。また、アドレスデコード信号が「Ｈ」レベル、かつカウント信号ｃｎｔ３が「Ｈ」レベルのときに、ＯＲ回路ＬＣ５およびＡＮＤ回路ＬＣ６によって、ポジティブ側判定選択信号ＹＲＰが「Ｈ」レベルとなる。アドレスデコード信号が「Ｌ」レベルのときに、ＯＲ回路ＬＣ５およびＡＮＤ回路ＬＣ６によって、ポジティブ側判定選択信号ＹＲＰが「Ｌ」レベルとなる。カウント信号ｃｎｔ２が「Ｈ」レベル、かつカウント信号ｃｎｔ３が「Ｌ」レベルのときに、ＯＲ回路ＬＣ５およびＡＮＤ回路ＬＣ６によって、ポジティブ側判定選択信号ＹＲＰが「Ｌ」レベルとなる。したがって、第１モードおよび第３モードにおいて、アドレスが一致している場合に、ポジティブ側判定選択信号ＹＲＰが「Ｈ」レベルとなる。
【０１２３】
アドレスデコード信号が「Ｈ」レベル、かつカウント信号ｃｎｔ２が「Ｈ」レベルのときに、ＡＮＤ回路ＬＣ７によって、ネガティブ側判定選択信号ＹＲＮが「Ｈ」レベルとなる。アドレスデコード信号が「Ｌ」レベルのときに、ＡＮＤ回路ＬＣ７によって、ネガティブ側判定選択信号ＹＲＮが「Ｌ」レベルとなる。また、カウント信号ｃｎｔ２が「Ｌ」レベルのときに、ＡＮＤ回路ＬＣ７によって、ネガティブ側判定選択信号ＹＲＮが「Ｌ」レベルとなる。したがって、第２モードおよび第３モードにおいて、アドレスが一致している場合に、ネガティブ側判定選択信号ＹＲＮが「Ｈ」レベルとなる。
【０１２４】
制御用信号生成回路７３は、インバータＩＶ７と、フリップフロップＦＦ９と、インバータＩＶ８と、ＡＮＤ回路ＬＣ８と、遅延回路群７４とを備える。
【０１２５】
インバータＩＶ７は、カウンタクロックｃ＿ｃｌｋを受ける。
フリップフロップＦＦ９は、読出リセット信号ｒ＿ｒｓｔによってリセットされる。フリップフロップＦＦ９は、インバータＩＶ７の出力の立ち上りのタイミングで、カウント信号ｃｎｔ３をラッチする。インバータＩＶ８は、フリップフロップＦＦ９の出力を受ける。ＡＮＤ回路ＬＣ８は、カウンタクロックｃ＿ｃｌｋとインバータＩＶ８の出力の論理積を遅延開始信号Ｓ＿ＤＬとして出力する。
【０１２６】
これによって、カウント信号ｃｎｔ３が「Ｌ」レベルの場合には、遅延開始信号Ｓ＿ＤＬは、カウンタクロックｃ＿ｃｌｋの立ち上り、立ち下りと同じタイミングで立ち上り、立ち下がる。カウント信号ｃｎｔ３が「Ｈ」レベルに変化し、カウンタクロックｃ＿ｃｌｋが立ち下がるタイミング以降は、遅延開始信号Ｓ＿ＤＬは「Ｌ」レベルに固定される。
【０１２７】
遅延回路群７４は、遅延開始信号Ｓ＿ＤＬを時間ｄ３だけ遅延させることによって、センスラッチ信号ＳＬＡＴおよびプリチャージ信号ＧＢＬＰＣを生成する。
【０１２８】
遅延回路群７４は、遅延開始信号Ｓ＿ＤＬを所定時間だけ遅延させることによって、プリチャージ信号ＰＣＰ１，ＰＣＮ１を生成する。
【０１２９】
遅延回路群７４は、遅延開始信号Ｓ＿ＤＬを所定時間だけ遅延させたタイミングで、第１モードと第３モードにおいて、セレクト信号ＳＥＬＡＢを「Ｈ」レベルに設定し、第２モードにおいて、セレクト信号ＳＥＬＡＢを「Ｌ」レベルに設定する。
【０１３０】
カウント信号ｃｎｔ３が「Ｈ」レベルに変化し、カウンタクロックｃ＿ｃｌｋが立ち下がるタイミング以降は、遅延開始信号Ｓ＿ＤＬは「Ｌ」レベルに固定されるので、第３モードが終了した後は、センスラッチ信号ＳＬＡＴおよびプリチャージ信号ＰＣＰ１，ＰＣＮ１，ＧＢＬＰＣ、セレクト信号ＳＥＬＡＢは「Ｈ」レベルに活性化されない。
【０１３１】
（動作）
図１１は、第１モードでの動作を説明するための図である。
【０１３２】
列デコーダ３０がアドレスをデコードすることによって、リード選択信号ＹＲ０Ｎを「Ｈ」レベルに活性化し、リード選択信号ＹＲ１Ｎ〜ＹＲ７Ｎを「Ｌ」レベルに非活性化する。出力回路制御部４６内のポジティブ／ネガティブ選択信号生成回路７５が、列デコーダ３０からのアドレスデコード信号、カウント信号ｃｎｔ２，ｃｎｔ３に基づいて、ポジティブ側判定選択信号ＹＲＰを「Ｌ」レベルに設定し、正相側バイアス接続信号ＣＣＳＰを「Ｈ」レベルに設定し、ネガティブ側判定選択信号ＹＲＮを「Ｈ」レベルに設定し、逆相側バイアス接続信号ＣＣＳＮを「Ｌ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰが、ポジティブ側共通ビット線ＣＢＬＰを介して副ビット線ＳＢＬ＿０Ｐに接続される。また、ネガティブ側局所ビット線ＬＢＮが、定電流源８１と接続される。
【０１３３】
次に、出力回路制御部４６内の制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｌ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルにプリチャージされる。また、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｌ」レベルに設定されるので、グローバル読出ビット線ＧＢＬｒ，／ＧＢＬｒは「Ｈ」レベルにプリチャージされる。
【０１３４】
また、電源回路３１は、ソース線ＳＬの電圧およびメモリゲートＭＧの電圧を「０」Ｖのまま維持させ、コントロールゲートＣＧの電圧を「１．５」Ｖに設定する。
【０１３５】
次に、制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮのプリチャージが終了する。
【０１３６】
差動増幅部５０は、副ビット線ＳＢＬ＿０Ｐと接続されるポジティブ側局所ビット線ＬＢＰの電圧と、定電流源８１と接続されるネガティブ側局所ビット線ＬＢＮの電圧の差を増幅する。
【０１３７】
次に、制御用信号生成回路７３が、センスラッチ信号ＳＬＡＴを「Ｈ」レベルに設定し、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣを「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰが「Ｌ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｌ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｈ」レベルに設定される。また、ポジティブ側局所ビット線ＬＢＰが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｌ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｈ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｌ」レベルに設定される。
【０１３８】
また、制御用信号生成回路７３が、セレクト信号ＳＥＬＡＢを「Ｈ」レベルに設定する。これによって、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルのときに、読出しデータｒｄａｔａが「Ｈ」レベルとなり、フリップフロップＦＦ１に「Ｈ」レベルがラッチされる。つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合に、フリップフロップＦＦ１に「Ｈ」レベルがラッチされる。
【０１３９】
一方、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルのときに、読出しデータｒｄａｔａが「Ｌ」レベルとなり、フリップフロップＦＦ１に「Ｌ」レベルがラッチされる。つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合に、フリップフロップＦＦ１に「Ｌ」レベルがラッチされる。
【０１４０】
図１２は、第２モードでの動作を説明するための図である。
列デコーダ３０がアドレスをデコードすることによって、リード選択信号ＹＲ０Ｎを「Ｈ」レベルに活性化し、リード選択信号ＹＲ１Ｎ〜ＹＲ７Ｎを「Ｌ」レベルに非活性化する。出力回路制御部４６内のポジティブ／ネガティブ選択信号生成回路７５が、列デコーダ３０からのアドレスデコード信号、カウント信号ｃｎｔ２，ｃｎｔ３に基づいて、ポジティブ側判定選択信号ＹＲＰを「Ｈ」レベルに設定し、正相側バイアス接続信号ＣＣＳＰを「Ｌ」レベルに設定し、ネガティブ側判定選択信号ＹＲＮを「Ｌ」レベルに設定し、逆相側バイアス接続信号ＣＣＳＮを「Ｈ」レベルに設定する。これによって、ネガティブ側局所ビット線ＬＢＮが、ネガティブ側共通ビット線ＣＢＬＮを介して副ビット線ＳＢＬ＿０Ｎに接続される。また、ポジティブ側局所ビット線ＬＢＰが、定電流源８１と接続される。
【０１４１】
次に、出力回路制御部４６内の制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｌ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルにプリチャージされる。また、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｌ」レベルに設定されるので、グローバル読出ビット線ＧＢＬｒ，／ＧＢＬｒは「Ｈ」レベルにプリチャージされる。
【０１４２】
また、電源回路３１は、ソース線ＳＬの電圧およびメモリゲートＭＧの電圧を「０」Ｖのまま維持させ、コントロールゲートＣＧの電圧を「１．５」Ｖに設定する。
【０１４３】
次に、制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮのプリチャージが終了する。
【０１４４】
差動増幅部５０は、副ビット線ＳＢＬ＿０Ｎと接続されるネガティブ側局所ビット線ＬＢＮの電圧と、定電流源８１と接続されるポジティブ側局所ビット線ＬＢＰの電圧の差を増幅する。
【０１４５】
次に、制御用信号生成回路７３が、センスラッチ信号ＳＬＡＴを「Ｈ」レベルに設定し、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣを「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰが「Ｌ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｌ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｈ」レベルに設定される。また、ポジティブ側局所ビット線ＬＢＰが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｌ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｈ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｌ」レベルに設定される。
【０１４６】
また、制御用信号生成回路７３が、セレクト信号ＳＥＬＡＢを「Ｌ」レベルに設定する。これによって、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルのときに、読出しデータｒｄａｔａが「Ｈ」レベルとなり、フリップフロップＦＦ２に「Ｈ」レベルがラッチされる。つまり、ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合に、フリップフロップＦＦ２に「Ｈ」レベルがラッチされる。
【０１４７】
一方、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルのときに、読出しデータｒｄａｔａが「Ｌ」レベルとなり、フリップフロップＦＦ２に「Ｌ」レベルがラッチされる。つまり、ネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合に、フリップフロップＦＦ２に「Ｌ」レベルがラッチされる。
【０１４８】
図１３は、第３モードでの動作を説明するための図である。
列デコーダ３０がアドレスをデコードすることによって、リード選択信号ＹＲ０Ｎを「Ｈ」レベルに活性化し、リード選択信号ＹＲ１Ｎ〜ＹＲ７Ｎを「Ｌ」レベルに非活性化する。出力回路制御部４６内のポジティブ／ネガティブ選択信号生成回路７５が、列デコーダ３０からのアドレスデコード信号、カウント信号ｃｎｔ２，ｃｎｔ３に基づいて、ポジティブ側判定選択信号ＹＲＰを「Ｌ」レベルに設定し、正相側バイアス接続信号ＣＣＳＰを「Ｈ」レベルに設定し、ネガティブ側判定選択信号ＹＲＮを「Ｌ」レベルに設定し、逆相側バイアス接続信号ＣＣＳＮを「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰが、ポジティブ側共通ビット線ＣＢＬＰを介して副ビット線ＳＢＬ＿０Ｐに接続される。ネガティブ側局所ビット線ＬＢＮが、ネガティブ側共通ビット線ＣＢＬＮを介して副ビット線ＳＢＬ＿０Ｎに接続される。
【０１４９】
次に、出力回路制御部４６内の制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｌ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルにプリチャージされる。また、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｌ」レベルに設定されるので、グローバル読出ビット線ＧＢＬｒ，／ＧＢＬｒは「Ｈ」レベルにプリチャージされる。
【０１５０】
また、電源回路３１は、ソース線ＳＬの電圧およびメモリゲートＭＧの電圧を「０」Ｖのまま維持させ、コントロールゲートＣＧの電圧を「１．５」Ｖに設定する。
【０１５１】
次に、制御用信号生成回路７３が、プリチャージ信号ＰＣＰ１およびＰＣＮ１を「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰおよびネガティブ側局所ビット線ＬＢＮのプリチャージが終了する。
【０１５２】
差動増幅部５０は、副ビット線ＳＢＬ＿０Ｐと接続されるポジティブ側局所ビット線ＬＢＰの電圧と、副ビット線ＳＢＬ＿０Ｎと接続されるネガティブ側局所ビット線ＬＢＮの電圧の差を増幅する。
【０１５３】
次に、制御用信号生成回路７３が、センスラッチ信号ＳＬＡＴを「Ｈ」レベルに設定し、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣを「Ｈ」レベルに設定する。これによって、ポジティブ側局所ビット線ＬＢＰが「Ｌ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｈ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｌ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｈ」レベルに設定される。また、ポジティブ側局所ビット線ＬＢＰが「Ｈ」レベル、かつネガティブ側局所ビット線ＬＢＮが「Ｌ」レベルのときに、正相グローバル読出ビット線ＧＢＬｒのレベルが「Ｈ」レベルに設定され、逆相グローバル読出ビット線／ＧＢＬｒのレベルが「Ｌ」レベルに設定される。
【０１５４】
また、制御用信号生成回路７３が、セレクト信号ＳＥＬＡＢを「Ｈ」レベルに設定する。これによって、正相グローバル読出ビット線ＧＢＬｒが「Ｌ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｈ」レベルのときに、読出しデータｒｄａｔａが「Ｈ」レベルとなり、フリップフロップＦＦ３に「Ｈ」レベルがラッチされる。つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈがネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈよりも小さい場合に、フリップフロップＦＦ３に「Ｈ」レベルがラッチされる。
【０１５５】
一方、正相グローバル読出ビット線ＧＢＬｒが「Ｈ」レベル、かつ逆相グローバル読出ビット線／ＧＢＬｒが「Ｌ」レベルのときに、読出しデータｒｄａｔａが「Ｌ」レベルとなり、フリップフロップＦＦ３に「Ｌ」レベルがラッチされる。つまり、ポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈがネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈ以上の場合に、フリップフロップＦＦ３に「Ｌ」レベルがラッチされる。
【０１５６】
図１４は、各種の制御信号が生成されるタイミングを説明するための図である。
まず、読出要求検知回路７１によって、モジュール選択信号ＭＳＲＯＭＮが「Ｌ」レベル、読出要求信号ＢＳＲＤＹが「Ｈ」レベルのときに、クロックＣＬＫの立ち上りのタイミングで、読出リセット信号ｒ＿ｒｓｔが「Ｈ」レベルに立ち上る。その後、遅延回路ＤＬ１での遅延時間ｄ１が経過した後、読出リセット信号ｒ＿ｒｓｔは「Ｌ」レベルに戻る。
【０１５７】
読出リセット信号ｒ＿ｒｓｔが「Ｈ」レベルとなったタイミングで、カウント信号生成回路７２によって、カウント信号ｃｎｔ１，ｃｎｔ２，ｃｎｔ３，ｃｎｔ４が「Ｌ」レベルに設定される。
【０１５８】
カウンタクロック生成回路７６によって、読出リセット信号ｒ＿ｒｓｔの立ち上りのタイミングよりも遅延回路ＤＬ２での遅延時間ｄ２だけ遅れたタイミングで、カウンタクロックｃ＿ｃｌｋが初めて立ち上る。
【０１５９】
カウンタクロックｃ＿ｃｌｋの第１番目の立ち上りのタイミングで、カウント信号生成回路７２によって、カウント信号ｃｎｔ１が「Ｈ」レベルに設定される。カウント信号ｃｎｔ１の立ち上りのタイミングで、第１モードが開始する。
【０１６０】
また、カウンタクロックｃ＿ｃｌｋの第１番目の立ち上りのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが初めて立ち上る。また、遅延開始信号Ｓ＿ＤＬの第１番目の立ち上りのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが初めて立ち上る。また、図示しないが、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｈ」レベルに設定され、セレクト信号ＳＥＬＡＢが「Ｈ」レベルに設定される。これによって、第１モードでの比較結果がデータ出力部５２内の読出しデータｒｄａｔａとなる。
【０１６１】
センスラッチ信号ＳＬＡＴの第１番目の立ち上りのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが初めて立ち下がる。カウンタクロックｃ＿ｃｌｋの第１番目の立ち下がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが初めて立ち下がる。
【０１６２】
また、遅延開始信号Ｓ＿ＤＬの第１番目の立ち下がりのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが初めて立ち下がる。
【０１６３】
センスラッチ信号ＳＬＡＴの第１番目の立ち下がりのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが再度（２回目）立ち上がる。カウンタクロックｃ＿ｃｌｋの２回目の立ち上がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが再度（２回目）立ち上がる。
【０１６４】
カウンタクロックｃ＿ｃｌｋの第２番目の立ち上りのタイミング（ｔ１）で、カウント信号生成回路７２によって、カウント信号ｃｎｔ２が「Ｈ」レベルに設定される。カウント信号ｃｎｔ２の立ち上りのタイミングで、第１モードの比較結果を表わす読出しデータｒｄａｔａがデータ出力部５２内のフリップフロップＦＦ１でラッチされ、第１モードが終了する。また、カウント信号ｃｎｔ２の立ち上りのタイミングで、第２モードが開始する。
【０１６５】
また、遅延開始信号Ｓ＿ＤＬの第２番目の立ち上りのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが再度（２回目）立ち上る。また、図示しないが、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｈ」レベルに設定され、セレクト信号ＳＥＬＡＢが「Ｌ」レベルに設定される。これによって、第２モードでの比較結果がデータ出力部５２内の読出しデータｒｄａｔａとなる。
【０１６６】
センスラッチ信号ＳＬＡＴの第２番目の立ち上りのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが再度（２回目）立ち下がる。カウンタクロックｃ＿ｃｌｋの第２番目の立ち下がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが再度（２回目）立ち下がる。
【０１６７】
また、遅延開始信号Ｓ＿ＤＬの第２番目の立ち下がりのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが再度（２回目）立ち下がる。
【０１６８】
センスラッチ信号ＳＬＡＴの第２番目の立ち下がりのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが再度（３回目）立ち上がる。カウンタクロックｃ＿ｃｌｋの３回目の立ち上がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが再度（３回目）立ち上がる。
【０１６９】
カウンタクロックｃ＿ｃｌｋの第３番目の立ち上りのタイミング（ｔ２）で、カウント信号生成回路７２によって、カウント信号ｃｎｔ３が「Ｈ」レベルに設定される。カウント信号ｃｎｔ３の立ち上りのタイミングで、第２モードの比較結果を表わす読出しデータｒｄａｔａがデータ出力部５２内のフリップフロップＦＦ２でラッチされ、第２モードが終了する。また、カウント信号ｃｎｔ３の立ち上りのタイミングで、第３モードが開始する。
【０１７０】
また、遅延開始信号Ｓ＿ＤＬの第３番目の立ち上りのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが再度（３回目）立ち上る。また、図示しないが、制御用信号生成回路７３によって、グローバル読出ビット線プリチャージ信号ＧＢＬＰＣが「Ｈ」レベルに設定され、セレクト信号ＳＥＬＡＢが「Ｈ」レベルに設定される。これによって、第３モードの比較結果がデータ出力部５２内の読出しデータｒｄａｔａとなる。
【０１７１】
センスラッチ信号ＳＬＡＴの第３番目の立ち上りのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが再度（３回目）立ち下がる。カウンタクロックｃ＿ｃｌｋの第３番目の立ち下がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが再度（３回目）立ち下がる。
【０１７２】
また、遅延開始信号Ｓ＿ＤＬの第３番目の立ち下がりのタイミングから遅延時間ｄ３だけ後のタイミングで、制御用信号生成回路７３によって、センスラッチ信号ＳＬＡＴが再度（３回目）立ち下がる。
【０１７３】
センスラッチ信号ＳＬＡＴの第３番目の立ち下がりのタイミングで、カウンタクロック生成回路７６によって、カウンタクロックｃ＿ｃｌｋが再度（４回目）立ち上がる。しかし、カウンタクロックｃ＿ｃｌｋの４回目の立ち上がりのタイミングで、制御用信号生成回路７３によって遅延開始信号Ｓ＿ＤＬが再度（４回目）立ち上がらない。
【０１７４】
カウンタクロックｃ＿ｃｌｋの第４番目の立ち上りのタイミング（ｔ３）で、カウント信号生成回路７２によって、カウント信号ｃｎｔ４が「Ｈ」レベルに設定される。カウント信号ｃｎｔ４の立ち上りのタイミングで、第３モードの比較結果を表わす読出しデータｒｄａｔａがデータ出力部５２内のフリップフロップＦＦ３でラッチされ、第３モードが終了する。
【０１７５】
データ出力部５２内のＡＮＤ回路ＬＣ１およびＯＲ回路ＬＣ２によって、フリップフロップＦＦ１でラッチされている第１モードの比較結果、フリップフロップＦＦ２でラッチされている第２モードの比較結果、およびフリップフロップＦＦ３でラッチされている第３モードの比較結果に基づくデータがデータバスＤＢＵＳへ出力される。
【０１７６】
第１モードの比較結果がポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいことを表わし、第２モードの比較結果がネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいことを表わす場合には、データバスＤＢＵＳに固定値「Ｈ」レベルが出力される。
【０１７７】
第１モードの比較結果がポジティブ側のメモリセルＭＣ１の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上であることを表わすか、または第２モードの比較結果がネガティブ側のメモリセルＭＣ２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上であることを表わす場合には、データバスＤＢＵＳに第３のモードの比較結果を表わすデータが出力される。
【０１７８】
以上のように、本実施の形態によれば、ツインセルを構成するポジティブセルとネガティブセルの閾値電圧が消去判定レベルよりも小さければ、ツインセルの記憶データが固定値にマスクされるので、消去前の書込みデータが読み出されるのを防止することができる。
【０１７９】
［第３の実施形態］
第１および第２の実施形態では、ツインセルを構成する両方のメモリセルの閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいときには、ツインセルから読み出した記憶データをマスクしたデータを出力することにしたが、これに限定するものではない。本実施の形態では、両方のメモリセルの閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいときには、ツインセルの記憶データを読み出さずに（すなわち、第３モードでの処理を実行せずに）、読出したデータとして固定値を出力する。
【０１８０】
第３の実施形態の半導体装置の構成は、図１の第１の実施形態の半導体装置の構成とほぼ同じであるが、出力回路１０５の機能が相違する。
【０１８１】
出力回路１０５は、ツインセル１０４の読出し要求を受けたときに、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルよりも小さく、第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルよりも小さい場合には、ツインセル１０４の記憶データを読み出さず、読出したデータとして固定値を出力する。なお、固定値に代わりに、ランダムな値を出力、または何も出力しないこととしてもよい。
【０１８２】
図１５は、第３の実施形態の半導体装置におけるメモリアレイ１０４からのデータの読出し処理の手順を表わすフローチャートである。
【０１８３】
まず、出力回路１０５は、読出し要求信号ＲＲＱを受信する（ステップ２０１）。
次に、出力回路１０５は、第１記憶素子１０２の記憶しているデータをビット線ＢＬを通じて読み出すことによって、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否か判定する（ステップＳ２０２）。
【０１８４】
次に、出力回路１０５は、第２記憶素子１０３の記憶しているデータをビット線／ＢＬを通じて読み出すことによって、第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否か判定する（ステップＳ２０３）。
【０１８５】
出力回路１０５は、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さく、かつ第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さい場合には（ステップＳ２０４でＹＥＳ）、固定値（“０”または”１”）を出力する（ステップＳ２０５）。
【０１８６】
出力回路１０５は、第１記憶素子１０２の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上か、または第２記憶素子１０３の閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦ以上の場合には（ステップＳ２０４でＮＯ）、ツインセル１０４の記憶しているデータをビット線対ＢＬ，／ＢＬを通じて読出す（ステップＳ２０６）。さらに、出力回路１０５は、ツインセル１０４の記憶データを読出したデータとして出力する（ステップＳ２０７）。
【０１８７】
本発明は、上記実施形態に限定されるものではなく、たとえば以下のような変形例も含まれる。
【０１８８】
（１）切替制御
本発明の実施の形態で説明した読出し処理は、読出し要求を受けたときに、ツインセルの両方のメモリセルの閾値電圧Ｖｔｈが消去判定レベルＶＲＥＦよりも小さいか否かを判定し（第１、第２モード）、ツインセルの記憶データを判定し、第１、第２モードの結果によって、判定したツインセルの記憶データをそのまま出力するかマスクして出力するかを切替る（第３モード）。
【０１８９】
（２）第２モードでの接続
本発明の実施形態では、第２モードにおいて、ネガティブ側局所ビット線ＬＢＮとネガティブ側共通ビット線ＣＢＬＮを接続し、ポジティブ側局所ビット線ＬＢＰと定電流源８１と接続し、正相グローバル読出ビット線ＧＢＬｒとインバータＩＶ２と接続し、逆相グローバル読出ビット線／ＧＢＬｒとインバータＩＶ１とを接続したが、これに限定するものではない。
【０１９０】
第２モードにおいて、ポジティブ側局所ビット線ＬＢＰとネガティブ側共通ビット線ＣＢＬＮを接続し、ネガティブ側局所ビット線ＬＢＮと定電流源８１と接続し、正相グローバル読出ビット線ＧＢＬｒとインバータＩＶ１と接続し、逆相グローバル読出ビット線／ＧＢＬｒとインバータＩＶ２とを接続するものとしてもよい。
【０１９１】
本発明は、上記の読出し処理だけを備える半導体装置に限定されるものではない。たとえば、半導体装置が、ツインセルの通常の読出し（第３モードでのツインセルの記憶データの判定だけ）機能と、上記本発明の実施の形態の読出し機能の両方を備え、いずれの機能を実行するかを切り替えることができるものとしてもよい。
【０１９２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【符号の説明】
【０１９３】
１  マイクロコンピュータ（ＭＣＵ）、２  中央処理装置（ＣＰＵ）、３  ダイレクトメモリアクセスコントローラ（ＤＭＡＣ）、４  バスインタフェース回路（ＢＩＦ）、５  ランダムアクセスメモリ（ＲＡＭ）、６  フラッシュメモリモジュール（ＦＭＤＬ）、７  フラッシュシーケンサ（ＦＳＱＣ）、８，９  外部入出力ポート（ＰＲＴ）、１０  タイマ（ＴＭＲ）、１１  クロックパルスジェネレータ（ＣＰＧ）、１９，１０１  メモリアレイ（ＭＡＲＹ）、２０  副ビット線セレクタ、２２  読出し列セレクタ、２４  第１行デコーダ（ＲＤＥＣ１）、２５  第２行デコーダ（ＲＤＥＣ２）、２７  書込みデータラッチ回路、２８  書換え列セレクタ、２９  入出力回路（ＩＯＢＵＦ）、３０  列デコーダ(ＣＤＥＣ)、３１  電源回路(ＶＰＧ)、３２，タイミングジェネレータ（ＴＭＧ）、４０  読出し系ディスチャージ回路、４１  書込み系ディスチャージ回路、４６  出力回路制御部、４８，１０５  出力回路、５０  差動増幅部、５２  データ出力部、７１  読出要求検知回路、７２  カウント信号生成回路、７３  制御用信号生成回路、７４  遅延回路群、７５  ポジティブ／ネガティブ選択信号生成回路、７６  カウンタクロック生成回路、７７  正相側出力ドライバ、７８  逆相側出力ドライバ、７９  センスアンプ、８１  定電流源、８２，８４  スイッチ、８３，９１  プリチャージ部、９９  出力制御回路、１００  半導体装置、１０２  第１記憶素子、１０３  第２記憶素子、１０４  ツインセル、ＩＶ１〜ＩＶ１０  インバータ、ＤＬ１，ＤＬ２  遅延回路、ＦＦ１〜ＦＦ１０  フリップフロップ、ＬＣ１，ＬＣ３，ＬＣ４，ＬＣ６，ＬＣ７，ＬＣ８  ＡＮＤ回路、ＬＣ２，ＬＣ５  ＯＲ回路、ＳＥＬ  データセレクタ、ＲＳ  ＲＳフリップフロップ、Ｐ１〜Ｐ１４，Ｐ２０  ＰチャネルＭＯＳトランジスタ、Ｎ３，Ｎ８，Ｎ１０，Ｎ１１，Ｎ１２  ＮチャネルＭＯＳトランジスタ、ＶＳＡ＿Ｐ，ＶＳＡ＿Ｎ  ベリファイセンスアンプ、ＰＶＳＬ，ＮＶＳＬ  ベリファイ信号線、ＰＳＬ，ＮＳＬ  信号線、ＨＡＣＳＰ  高速アクセスポート、ＬＡＣＳＰ  低速アクセスポート、ＬＴＰ，ＬＴＮ  スタティックラッチ、ＭＣ１，ＭＣ２  不揮発性メモリセル、ＷＭＢＬ  書込み用の主ビット線、ＷＭＢＬ＿０Ｐ〜ＷＭＢＬ＿３Ｐ  ポジティブセル側の主ビット線、ＷＭＢＬ＿０Ｎ〜ＷＭＢＬ＿３Ｎ  ネガティブセル側の主ビット線、ＳＢＬ  副ビット線、ＳＢＬ＿０Ｐ〜ＳＢＬ＿７Ｐ  ポジティブセル側の副ビット線、ＳＢＬ＿０Ｎ〜ＳＢＬ＿７Ｎ  ネガティブセル側の副ビット線、ＣＢＬＰ  ポジティブ側共通ビット線、ＣＢＬＮ  ネガティブ側共通ビット線、ＬＢＰ  ポジティブ側局所ビット線、ＬＢＮ  ネガティブ側局所ビット線、ＧＢＬｒ  正相グローバル読出ビット線、／ＧＢＬｒ  逆相グローバル読出ビット線、ＷＬ  ワード線、ＭＧＬ  メモリゲート選択線、ＨＢＵＳ  高速バス、ＨＢＵＳ＿Ｄ  高速データバス、ＰＢＵＳ  周辺バス、ＰＢＵＳ＿Ｄ  周辺データバス。
【図１】
0006012876.tif 000002
【図２】
0006012876.tif 000003
【図３】
0006012876.tif 000004
【図４】
0006012876.tif 000005
【図５】
0006012876.tif 000006
【図６】
0006012876.tif 000007
【図７】
0006012876.tif 000008
【図８】
0006012876.tif 000009
【図９】
0006012876.tif 000010
【図１０】
0006012876.tif 000011
【図１１】
0006012876.tif 000012
【図１２】
0006012876.tif 000013
【図１３】
0006012876.tif 000014
【図１４】
0006012876.tif 000015
【図１５】
0006012876.tif 000016