(57)【要約】【課題】  連続読出しの高速化を図ることができる半導体記憶装置を提供する。【解決手段】  本発明に係るＮＡＮＤ型フラッシュメモリの連続読出し方法は、外部クロック信号の周波数を検出するステップと、検出された外部クロック信号の周波数に対応する読出しタイミングに基づきメモリセルアレイからデータを読み出すステップと、読み出されたデータをラッチＬ１、Ｌ２に保持するステップと、外部クロック信号に同期して保持されたデータを出力するステップとを有する。【選択図】  図５
2020191148.tif 000002
【特許請求の範囲】
【請求項１】
ＮＡＮＤ型フラッシュメモリの連続読出し方法であって、
外部クロック信号の周波数を検出するステップと、
検出された外部クロック信号の周波数に対応する読出しタイミングに基づきメモリセルアレイからデータを読み出すステップと、
読み出されたデータを保持するステップと、
前記外部クロック信号に同期して保持されたデータを出力するステップと、
を有する連続読出し方法。
【請求項２】
前記読み出すステップは、外部クロック信号の高速周波数が検出されたとき第１の読出しタイミングで読出し、外部クロック信号の低速周波数が検出されたとき第２の読出しタイミングで読出し、第１の読出しタイミングは第２の読出しタイミングよりも早い、請求項１に記載の連続読出し方法。
【請求項３】
連続読出し方法はさらに、保持されたデータの誤り検出・訂正をするステップを含み、
第１の読出しタイミングは、ｔＡＲＲＡＹ＜ｔＤＯＵＴ（１ページ）、ｔＥＣＣ＜ｔＤＯＵＴ（１／２ページ）の制約を規定し、
第２の読出しタイミングは、ｔＡＲＲＡＹ＋ｔＥＣＣ＜ｔＤＯＵＴの制約を規定する（ｔＡＲＲＡＹは、メモリセルアレイからデータを読み出すための時間、ｔＥＣＣは、１／２ページの誤り検出・訂正のための時間、ｔＤＯＵＴは、１ページを出力するための時間）、請求項１または２に記載の連続読出し方法。
【請求項４】
前記保持するステップは、メモリセルアレイから読み出したデータを保持する第１のラッチと、第１のラッチから転送された第２のラッチとを含み、
第１および第２のラッチの各々は、独立にデータ転送可能な第１の部分および第２の部分とを含み、第１の部分および第２の部分は、１／２ページのデータを保持可能であり、
第２のラッチの第１の部分のデータが出力される間に、第２のラッチの第２の部分のデータが誤り検出・訂正され、第２のラッチの第２の部分のデータが出力される間に、第２のラッチの第１の部分のデータが誤り検出・訂正される、請求項１ないし３いずれか１つに記載の連続読出し方法。
【請求項５】
第１の読出しタイミングにおいて、ｔＡＲＲＡＹは、メモリセルアレイのｎページのデータを読み出すための時間であり、ｔＤＯＵＴは、ｎ−１ページの第１の部分のデータとｎ−２ページの第２の部分のデータを出力するための時間である、請求項３に記載の連続読出し方法。
【請求項６】
ＮＡＮＤ型のメモリセルアレイを含む半導体装置であって、
メモリセルアレイからデータを読み出す読出し手段と、
前記読出し手段によって読み出されたデータを保持する保持手段と、
前記保持手段に保持されたデータを外部クロック信号に同期して出力可能な出力手段と、
前記外部クロック信号の周波数を検出する検出手段と、
前記読出し手段を制御する制御手段とを含み、
前記制御手段は、前記検出手段で検出された外部クロック信号の周波数に対応する読出しタイミングで連続読出し時のメモリセルアレイの読出しを制御する、半導体装置。
【請求項７】
前記制御手段は、前記検出手段により外部クロック信号の高速周波数が検出されたとき第１の読出しタイミングで読出し、外部クロック信号の低速周波数が検出されたとき第２の読出しタイミングで読出し、第１の読出しタイミングは第２の読出しタイミングよりも早い、請求項６に記載の半導体装置。
【請求項８】
半導体装置はさらに、保持されたデータの誤り検出・訂正をする誤り検出・訂正手段を含み、
第１の読出しタイミングは、ｔＡＲＲＡＹ＜ｔＤＯＵＴ（１ページ）、ｔＥＣＣ＜ｔＤＯＵＴ（１／２ページ）の制約を規定し、
第２の読出しタイミングは、ｔＡＲＲＡＹ＋ｔＥＣＣ＜ｔＤＯＵＴの制約を規定する（ｔＡＲＲＡＹは、メモリセルアレイからデータを読み出すための時間、ｔＥＣＣは、１／２ページの誤り検出・訂正のための時間、ｔＤＯＵＴは、１ページを出力するための時間）、請求項６または７に記載の半導体装置。
【請求項９】
前記保持手段は、メモリセルアレイから読み出したデータを保持する第１のラッチと、第１のラッチから転送された第２のラッチとを含み、
第１および第２のラッチの各々は、独立にデータ転送可能な第１の部分および第２の部分とを含み、第１の部分および第２の部分は、１／２ページのデータを保持可能であり、
第２のラッチの第１の部分のデータが出力される間に、第２のラッチの第２の部分のデータが誤り検出・訂正され、第２のラッチの第２の部分のデータが出力される間に、第２のラッチの第１の部分のデータが誤り検出・訂正される、請求項６ないし８いずれか１つに記載の半導体装置。
【請求項１０】
前記検出手段は、外部クロック信号のクロックパルスをカウントする第１のカウンタと、内部クロック発生器から生成される内部クロック信号のクロックパルスをカウントする第２のカウンタと、第１のカウンタのカウント値および第２のカウンタのカウント値に基づき外部クロック信号が高速か否かを検出する検出部とを含む、請求項６に記載の半導体装置。
【請求項１１】
第１のカウンタは、ｎビットのバイナリカウンタであり、第２のカウンタは、ｍビットのバイナリカウンタであり（ｎ＞ｍ）、ｍビットのバイナリカウンタは、ｎビットのバイナリカウンタがオーバーフローしたときにカウントリセットされ、前記検出部は、ｍビットのバイナリカウンタのオーバーフローの有無に基づき外部クロック信号の周波数が高速か否かを検出する、請求項１０に記載の半導体装置。
【請求項１２】
前記出力手段は、外部クロック信号の立ち上がりエッジおよび立下りエッジに応答してデータを出力する、請求項６に記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置に関し、特にＮＡＮＤ型フラッシュメモリ等の連続読出しに関する。
【背景技術】
【０００２】
ＮＡＮＤ型のフラッシュメモリには、外部からのコマンドに応答して複数のページを連続で読み出す連続読出し機能（バースト読出し機能）が搭載されている。ページバッファ／センス回路は、例えば２つのラッチを含み、連続読出し動作が行われるとき、一方のラッチにアレイから読み出されたデータを保持する間に、他方のラッチに保持されたデータの出力を可能にしている（例えば、特許文献１、２、３等）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許５３２３１７０号公報
【特許文献２】特許５６６７１４３号公報
【特許文献３】米国特許出願ＵＳ２０１４／０１０４９４７Ａ１
【発明の概要】
【発明が解決しようとする課題】
【０００４】
図１に、オンチップＥＣＣ機能を搭載したＮＡＮＤ型フラッシュメモリの概略構成を示す。フラッシュメモリは、ＮＡＮＤストリングを含むメモリセルアレイ１０と、ページバッファ／センス回路２０と、データ転送回路３０、３２と、誤り検出訂正回路（以下、ＥＣＣ回路）４０と、入出力回路５０とを含む。ページバッファ／センス回路２０は、読出しデータやプログラムすべき入力データを保持する２つのラッチＬ１、Ｌ２（１つのラッチは、例えば４ＫＢ）を含み、ラッチＬ１、Ｌ２は、それぞれ第１のキャッシュＣ０と第２のキャッシュＣ１（１つのキャッシュは、例えば２ＫＢ）とを含む。
【０００５】
図２に、複数ページの連続読出しを行うときのタイミングチャートを示す。最初に、ページ０のアレイ読出しが行われ、ページ０のデータがラッチＬ１の第１および第２のキャッシュＣ０、Ｃ１に保持される（Ｐ０Ｃ０、Ｐ０Ｃ１）。次に、ラッチＬ１の第１および第２のキャッシュＣ０、Ｃ１のデータがラッチＬ２の第１および第２のキャッシュＣ０、Ｃ１に転送され、第１および第２のキャッシュＣ０、Ｃ１のデータがＥＣＣ回路４０において、ＥＣＣデコードの演算が行われ、誤りが検出された場合には、ラッチＬ２の第１、第２のキャッシュＣ０、Ｃ１のデータが訂正される。
【０００６】
連続読出しでは、行アドレスカウンタが自動的にインクリメントされ、次のページ１の読出しが行われ、読み出されたデータがラッチＬ１の第１および第２のキャッシュＣ０、Ｃ１に転送される。この間、ラッチＬ２の第１のキャッシュＣ０のデータが入出力回路５０へ転送され、入出力回路５０に保持されたデータは、外部から供給される外部クロック信号ＥｘＣＬＫに同期して出力される。次に、ラッチＬ２の第２のキャッシュＣ１のデータが入出力回路５０から外部クロック信号ＥｘＣＬＫに同期して出力され、この間、ラッチＬ１の第１のキャッシュＣ０のデータがラッチＬ２に転送され、かつＥＣＣ回路４０によりＥＣＣ処理が行われる。
【０００７】
ラッチＬ１の第２のキャッシュＣ１のデータがラッチＬ２に転送され、ラッチＬ２の第１のキャッシュＣ０のデータが入出力回路５０から出力される間に、第２のラッチＬ２の第２のキャッシュＣ１のデータがＥＣＣ処理され、次いで、ラッチＬ２の第２のキャッシュＣ１のデータが入出力回路５０から出力される間に、次のページ２がアレイから読み出され、ラッチＬ１の第１および第２のキャッシュＣ０、Ｃ１に転送され、かつ第１のキャッシュＣ０のデータがラッチＬ２に転送され、ＥＣＣ処理される。
【０００８】
こうして、ラッチＬ２からデータを出力しながらメモリセルアレイのページの連続読出しが行われ、その間、第１のキャッシュＣ０のデータを出力する間に第２のキャッシュＣ１のＥＣＣ処理が行われ、第２のキャッシュＣ１のデータを出力する間に第１のキャッシュＣ０のＥＣＣ処理が行われる。
【０００９】
ここで、アレイの読出しは、決められたタイミングにより内部クロック信号を用いて動作され、他方、データ出力は、内部クロック信号とは非同期の外部クロック信号ＥｘＣＬＫにより動作される。それ故、連続読出し動作には、以下の数式（１）で示される制約がある。
ｔＡＲＲＡＹ＋ｔＥＣＣ＜ｔＤＯＵＴ    …（１）
ここで、ｔＡＲＲＡＹは、メモリセルアレイから選択ページを読み出すために必要な時間、ｔＥＣＣは、１／２ページをＥＣＣ処理するのに必要な時間、ｔＤＯＵＴは、１ページの全てのデータを出力するのに必要な時間である。ｔＡＲＲＡＹおよびｔＥＣＣは、一定の時間であり、ｔＤＯＵＴは、外部クロック信号ＥｘＣＬＫの周波数によって計算される。
【００１０】
ＮＡＮＤ型フラッシュメモリにおいて、大量のデータを短時間で読み出すことが要求されるが、数式（１）から分かるように、連続読出し動作を行うには、外部クロック信号ＥｘＣＬＫの周波数の上限には制約がある。他方、もし、ページバッファまたは周辺回路がもう１つのラッチＬ３を備えれば、数式（１）の制約を、数式（２）のように緩和することが可能であるが、これは、大きなレイアウト面積を必要とし、コストが高くなってしまう。
ｔＤＯＵＴ＞ｔＡＲＲＡＹ、ｔＤＯＵＴ＞ｔＥＣＣ    …（２）
【００１１】
本発明は、このような従来の課題を解決し、連続読出しの高速化を図ることができる半導体装置および連続読出し方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るＮＡＮＤ型フラッシュメモリの連続読出し方法は、外部クロック信号の周波数を検出するステップと、検出された外部クロック信号の周波数に対応する読出しタイミングに基づきメモリセルアレイからデータを読み出すステップと、読み出されたデータを保持するステップと、前記外部クロック信号に同期して保持されたデータを出力するステップとを有する。
【００１３】
ある実施態様では、前記読み出すステップは、外部クロック信号の高速周波数が検出されたとき第１の読出しタイミングで読出し、外部クロック信号の低速周波数が検出されたとき第２の読出しタイミングで読出し、第１の読出しタイミングは第２の読出しタイミングよりも早い。ある実施態様では、連続読出し方法はさらに、保持されたデータの誤り検出・訂正をするステップを含み、第１の読出しタイミングは、ｔＡＲＲＡＹ＜ｔＤＯＵＴ（１ページ）、ｔＥＣＣ＜ｔＤＯＵＴ（１／２ページ）の制約を規定し、第２の読出しタイミングは、ｔＡＲＲＡＹ＋ｔＥＣＣ＜ｔＤＯＵＴの制約を規定する（ｔＡＲＲＡＹは、メモリセルアレイからデータを読み出すための時間、ｔＥＣＣは、１／２ページの誤り検出・訂正のための時間、ｔＤＯＵＴは、１ページを出力するための時間）。ある実施態様では、前記保持するステップは、メモリセルアレイから読み出したデータを保持する第１のラッチと、第１のラッチから転送された第２のラッチとを含み、第１および第２のラッチの各々は、独立にデータ転送可能な第１の部分および第２の部分とを含み、第１の部分および第２の部分は、１／２ページのデータを保持可能であり、第２のラッチの第１の部分のデータが出力される間に、第２のラッチの第２の部分のデータが誤り検出・訂正され、第２のラッチの第２の部分のデータが出力される間に、第２のラッチの第１の部分のデータが誤り検出・訂正される。ある実施態様では、第１の読出しタイミングにおいて、ｔＡＲＲＡＹは、メモリセルアレイのｎページのデータを読み出すための時間であり、ｔＤＯＵＴは、ｎ−１ページの第１の部分のデータとｎ−２ページの第２の部分のデータを出力するための時間である。
【００１４】
本発明に係るＮＡＮＤ型のメモリセルアレイを含む半導体装置は、メモリセルアレイからデータを読み出す読出し手段と、前記読出し手段によって読み出されたデータを保持する保持手段と、前記保持手段に保持されたデータを外部クロック信号に同期して出力可能な出力手段と、前記外部クロック信号の周波数を検出する検出手段と、前記読出し手段を制御する制御手段とを含み、前記制御手段は、前記検出手段で検出された外部クロック信号の周波数に対応する読出しタイミングで連続読出し時のメモリセルアレイの読出しを制御する。
【００１５】
ある実施態様では、前記制御手段は、前記検出手段により外部クロック信号の高速周波数が検出されたとき第１の読出しタイミングで読出し、外部クロック信号の低速周波数が検出されたとき第２の読出しタイミングで読出し、第１の読出しタイミングは第２の読出しタイミングよりも早い。ある実施態様では、半導体装置はさらに、保持されたデータの誤り検出・訂正をする誤り検出・訂正手段を含み、第１の読出しタイミングは、ｔＡＲＲＡＹ＜ｔＤＯＵＴ（１ページ）、ｔＥＣＣ＜ｔＤＯＵＴ（１／２ページ）の制約を規定し、第２の読出しタイミングは、ｔＡＲＲＡＹ＋ｔＥＣＣ＜ｔＤＯＵＴの制約を規定する（ｔＡＲＲＡＹは、メモリセルアレイからデータを読み出すための時間、ｔＥＣＣは、１／２ページの誤り検出・訂正のための時間、ｔＤＯＵＴは、１ページを出力するための時間）。ある実施態様では、前記保持手段は、メモリセルアレイから読み出したデータを保持する第１のラッチと、第１のラッチから転送された第２のラッチとを含み、第１および第２のラッチの各々は、独立にデータ転送可能な第１の部分および第２の部分とを含み、第１の部分および第２の部分は、１／２ページのデータを保持可能であり、第２のラッチの第１の部分のデータが出力される間に、第２のラッチの第２の部分のデータが誤り検出・訂正され、第２のラッチの第２の部分のデータが出力される間に、第２のラッチの第１の部分のデータが誤り検出・訂正される。ある実施態様では、前記検出手段は、外部クロック信号のクロックパルスをカウントする第１のカウンタと、内部クロック発生器から生成される内部クロック信号のクロックパルスをカウントする第２のカウンタと、第１のカウンタのカウント値および第２のカウンタのカウント値に基づき外部クロック信号が高速か否かを検出する検出部とを含む。ある実施態様では、第１のカウンタは、ｎビットのバイナリカウンタであり、第２のカウンタは、ｍビットのバイナリカウンタであり（ｎ＞ｍ）、ｍビットのバイナリカウンタは、ｎビットのバイナリカウンタがオーバーフローしたときにカウントリセットされ、前記検出部は、ｍビットのバイナリカウンタのオーバーフローの有無に基づき外部クロック信号の周波数が高速か否かを検出する。ある実施態様では、前記出力手段は、外部クロック信号の立ち上がりエッジおよび立下りエッジに応答してデータを出力する。
【発明の効果】
【００１６】
本発明によれば、外部クロック信号の周波数を検出しその検出結果に基づきメモリセルアレイからデータを読み出すタイミングを制御するようにしたので、連続読出しの高速化を図りつつ、データの破壊を防止することができる。
【図面の簡単な説明】
【００１７】
【図１】従来のＮＡＮＤ型フラッシュメモリの概略構成を示す図である。
【図２】従来のＮＡＮＤ型フラッシュメモリにおいて連続読出しを行うときのタイミングチャートである。
【図３】本発明の実施例に係るＮＡＮＤ型フラッシュメモリの構成を示すブロック図である。
【図４】ＮＡＮＤ型フラッシュメモリの動作時に印加されるバイアス電圧の一例を示すテーブルである。
【図５】本発明の実施例に係るＮＡＮＤ型フラッシュメモリにおいて連続読出しを行うときのタイミングチャートである。
【図６】図６（Ａ）は、従来のアレイ読出しのタイミングを説明する図、図６（Ｂ）は、本実施例のアレイ読出しのタイミングを説明する図であり、外部クロック信号の周波数が遅い場合にデータが破壊される例を説明する図である。
【図７】ＤＤＲで１ページのデータを出力するときの時間とアレイ読出しの時間との関係を示すグラフである。
【図８】本発明の実施例による周波数検出部の内部構成を示すブロック図である。
【図９】図８に示す周波数検出部の各部の動作波形を示す図である。
【図１０】本発明の実施例に係る連続読出し動作のフローである。
【発明を実施するための形態】
【００１８】
次に、本発明の実施の形態について図面を参照して詳細に説明する。本発明に係る半導体記憶装置は、例えば、ＮＡＮＤ型フラッシュメモリ、あるいはこのようなフラッシュメモリを埋め込むマイクロプロセッサ、マイクロコントローラ、ロジック、ＡＳＩＣ、画像や音声を処理するプロセッサ、無線信号等の信号を処理するプロセッサなどである。
【実施例】
【００１９】
図３は、本発明の実施例に係るＮＡＮＤ型フラッシュメモリの構成を示す図である。本実施例に係るフラッシュメモリ１００は、複数のメモリセルが行列状に配列されたメモリアレイ１１０と、外部入出力端子に接続され、かつ外部クロック信号ＥｘＣＬＫに応答して読出しデータを外部に出力したり、外部から入力されるデータを取り込む入出力回路１２０と、プログラムすべきデータや読み出されたデータの誤り検出・訂正を行うＥＣＣ回路１３０と、入出力回路１２０を介してアドレスデータを受け取るアドレスレジスタ１４０と、入出力回路１２０を介して受け取ったコマンドデータや端子に印加された制御信号に基づき各部を制御するコントローラ１５０と、アドレスレジスタ１４０から行アドレス情報Ａｘを受け取り、行アドレス情報Ａｘをデコードし、デコード結果に基づきブロックの選択やワード線の選択等を行うワード線選択回路１６０と、ワード線選択回路１６０によって選択されたページから読み出されたデータを保持したり、選択されたページへプログラムするデータを保持するページバッファ／センス回路１７０と、アドレスレジスタ１４０から列アドレス情報Ａｙを受け取り、列アドレス情報Ａｙをデコードし、当該デコード結果に基づきページバッファ／センス回路１７０内の列の選択等を行う列選択回路１８０と、データの読出し、プログラムおよび消去等のために必要な種々の電圧（書込み電圧Vpgm、パス電圧Vpass、読出しパス電圧Vread、消去電圧Versなど）を生成する内部電圧発生回路１９０と、連続読出しを行うとき外部から供給される外部クロック信号ＥｘＣＬＫの周波数を検出する周波数検出部２００とを含んで構成される。
【００２０】
メモリアレイ１１０は、例えば、列方向に配置されたｍ個のメモリブロックBLK(0)、BLK(1)、・・・、BLK(m-1)を有する。１つのメモリブロックには、複数のメモリセルを直列に接続したＮＡＮＤストリングが複数形成される。ＮＡＮＤストリングは、基板表面上に２次元的に形成されてもよいし、基板表面上に３次元的に形成されてもよい。また、メモリセルは、１ビット（２値データ）を記憶するＳＬＣタイプでもよいし、多ビットを記憶するＭＬＣタイプであってもよい。１つのＮＡＮＤストリングは、複数のメモリセル(例えば、６４個)と、ビット線側選択トランジスタと、ソース線側選択トランジスタとを直列に接続して構成される。ビット線側選択トランジスタのドレインは、対応する１つのビット線GBLに接続され、ソース線側選択トランジスタのソースは、共通のソース線SLに接続される。
【００２１】
図４は、フラッシュメモリの各動作時に印加されるバイアス電圧の一例を示したテーブルである。読出し動作では、ビット線に或る正の電圧を印加し、選択されたワード線に或る電圧（例えば０Ｖ）を印加し、非選択ワード線にパス電圧Vpass（例えば４．５Ｖ）を印加し、選択ゲート線SGD、SGSに正の電圧（例えば４．５Ｖ）を印加し、ＮＡＮＤストリングのビット線側選択トランジスタ、ソース線側選択トランジスタをオンし、共通ソース線に０Ｖを印加する。プログラム（書込み）動作では、選択されたワード線に高電圧のプログラム電圧Vpgm（１５〜２０Ｖ）を印加し、非選択のワード線に中間電位（例えば１０Ｖ）を印加し、ビット線側選択トランジスタをオンさせ、ソース線側選択トランジスタをオフさせ、「０」または「１」のデータに応じた電位をビット線に供給する。消去動作では、ブロック内の選択されたワード線に０Ｖを印加し、Ｐウエルに高電圧（例えば２０Ｖ）を印加し、フローティングゲートの電子を基板に引き抜くことで、ブロック単位でデータを消去する。
【００２２】
ページバッファ／センス回路１７０は、例えば図１に示したように２つのラッチＬ１、Ｌ２を含み、ラッチＬ１、Ｌ２は、それぞれが独立して動作可能な第１のキャッシュＣ０と第２のキャッシュＣ１とを含んで構成される。ラッチＬ１とラッチＬ２との間には、双方向のデータ転送を可能にする転送ゲートが接続され、転送ゲートをオンすることでラッチＬ１からラッチＬ２、あるいはラッチＬ２からラッチＬ１にデータが転送される。
【００２３】
メモリセルアレイの選択ページから読み出されたデータは、センスノードで感知され、感知されたデータがデータＬ１に転送され、そこで保持される。このアレイ読出しは、内部クロック信号に基づき行われる。他方、ラッチＬ１とラッチＬ２との間のデータ転送、ラッチＬ２と入出力回路１２０やＥＣＣ回路１３０との間のデータ転送、入出力回路１２０からのデータ出力は、外部から供給される外部クロック信号ＥｘＣＬＫに基づき行われる。従って、こうしたラッチＬ１、Ｌ２のデータ転送やデータ出力は、アレイ読出し動作とは非同期に行われる。
【００２４】
列選択回路１８０は、入力された列アドレスＡｙに従いページ内のデータの読出し開始位置を選択したり、あるいは列アドレスを用いることなくページの先頭位置からデータを自動的に読み出す。さらに列選択回路１８０は、クロック信号に応答して列アドレスをインクリメントする列アドレスカウンタを含むようにしてもよい。
【００２５】
次に、本実施例によるフラッシュメモリの連続読出し動作について説明する。コントローラ１５０は、入出力回路１２０を介して連続読出し動作のコマンドを受け取ると、開始アドレスから複数のページの連続読出し動作を制御し、連続読出し動作終了のコマンドを受け取ると、終了アドレスで連続読出し動作を終了する。連続読出し動作では、一方のラッチＬ２からデータが出力されている間に他方のラッチＬ１にメモリセルアレイの選択ページから読み出されたデータが転送される。連続読出しでは、ラッチＬ１からラッチＬ２へのデータ転送は１ページ単位ではなく、１／２ページ（第１または第２のキャッシュ）に分割して行なわれ、ラッチＬ２の一方のキャッシュのデータが入出力回路１２０に転送される間にラッチＬ２の他方のキャッシュのデータがＥＣＣ回路１３０で処理される。入出力回路１２０に転送されたデータは、外部クロック信号ＥｘＣＬＫ（例えば、立ち上がりエッジおよび立下りエッジ）に同期して外部入出力端子から外部に出力される。
【００２６】
図５は、本実施例により連続読出しを行うときのタイミングチャートである。同図に示すように、ラッチＬ１、Ｌ２を利用した実質的な連続読出しは、ページＰ２の読出しから開始され、ページＰ２のアレイ読出しの開始タイミングは、図２に示す従来のときよりも早く行われる。従来の連続読出しでは、ページＰ２のアレイ読出しの開始タイミングは、ラッチＬ１からラッチＬ２にページＰ１のデータの転送が終了した時点である。つまり、ラッチＬ２がページＰ１のデータを保持してから、次のページＰ２のデータがラッチＬ１に転送される。
【００２７】
これに対し、本実施例では、ページＰ２のアレイ読出しの開始タイミングは、ラッチＬ１の第１のキャッシュＣ０のページＰ１のデータをラッチＬ２に転送するタイミングに等しい。このようにページＰ２のアレイ読出しのタイミングを早めたとしても、実際にはアレイ読出しのためには一定の時間を必要とし、アレイから読み出されたページＰ２のデータをラッチＬ１に転送する時点で、連続読出し時間の高速化のために高速周波数の外部クロック信号ＥｘＣＬＫを用いるのであれば、ラッチＬ１からラッチＬ２へのページＰ１のデータ転送は既に完了されていることになる。
【００２８】
アレイ読出し時間ｔＡＲＲＡＹは、アレイ読出しの開始タイミングとアレイ読出しの終了タイミングにより規定される。ページＰ２のアレイ読出しの終了タイミングは、次のページＰ３のアレイ読出しの開始タイミングであり、ページＰ２、Ｐ３、Ｐ４…のページが連続して読み出されるとき、アレイ読出し時間ｔＡＲＲＡＹも同様に連続する。
【００２９】
このように、本実施例では、連続読出し動作においてメモリセルアレイの読出しの開始タイミングを早めることで、連続読出し動作の制約は、数式（３）のように緩和され、高速周波数の外部クロック信号ＥｘＣＬＫを使用したデータ出力が可能になる。
ｔＡＲＲＡＹ＜ｔＤＯＵＴ（１ページ）、
ｔＥＣＣ＜ｔＤＯＵＴ（１／２ページ）    …（３）
【００３０】
つまり、１ページのデータを出力する時間ｔＤＯＵＴがアレイ読出し時間ｔＡＲＲＡＹよりも大きいこと、１／２ページのデータを出力する時間ｔＤＯＵＴがＥＣＣ処理の時間ｔＥＣＣよりも大きいことの制約を満足すれば、従来よりも連続読出しの高速化を図ることができる。図５には、ページＰ１の第１のキャッシュＣ０のデータをラッチＬ１からラッチＬ２に転送を開始する時点から次のページＰ２の第１のキャッシュＣ０のデータをラッチＬ１からラッチＬ２に転送を開始する時点までのページＰ２のアレイ読出し時間ｔＡＲＲＡＹよりも、ページＰ０の第２のキャッシュのデータを出力する時間とページＰ１の第１のキャッシュのデータを出力する時間の合計である出力時間ｔＤＯＵＴが大きいこと、ラッチＬ２の第１のキャッシュのデータをＥＣＣ処理する時間ｔＥＣＣよりも、ラッチＬ２の第２のキャッシュのデータを出力する時間ｔＤＯＵＴが大きいことが例示されている。
【００３１】
しかしながら、こうしたアレイ読出しの開始タイミングを変更することで、別のタイミングの制約が生じる。もし、ユーザーが周波数の遅い外部クロック信号ＥｘＣＬＫを使用した場合、メモリセルアレイの選択ページから読み出されたデータをラッチＬ１に転送する時点で、ラッチＬ１は、外部クロック信号ＥｘＣＬＫの遅い周波数のために前のページのデータを保持していると、ラッチＬ１の前のページのデータがメモリセルアレイから読み出された次のページのデータによって破壊されてしまう。これを図６を参照して説明する。
【００３２】
図６（Ａ）は、従来のページＰ２のアレイ読出しを示している。ページＰ２のアレイ読出しを開始するとき、ページＰ１のデータはラッチＬ１からラッチＬ２に既に転送済みであり、ラッチＬ１にページＰ２のデータが上書きされても何ら問題は生じない。図６（Ｂ）は、本実施例のページＰ２のアレイ読出しを示している。ページＰ２のアレイ読出しを開始するタイミングは、ページＰ１のデータをラッチＬ１からラッチＬ２に転送を開始するタイミングにほぼ等しい。このため、メモリセルアレイから読み出したページＰ２のデータをラッチＬ１に転送するとき、ラッチＬ１からラッチＬ２へのページＰ１のデータ転送が終了していないと、ラッチＬ１に残ったページＰ１のデータがページＰ２によって上書きされ、破壊されてしまう。
【００３３】
数式（４）は、このようなデータ破壊が生じさせないための制約を示している。
ｔＤＯＵＴ（１／２ページ）＜ｔＡＲＲＡＹ    …（４）、
つまり、ｔＤＯＵＴ（１ページ）＜ｔＡＲＲＡＹ×２    …（４）
【００３４】
図７は、連続読出しを行うときのタイミングの制約をサマライズしたグラフである。同グラフは、１ページのサイズが４ＫＢ、ｔＡＲＲＡＹ＝１６μｓ、ｔＥＣＣ＝６μｓ、入出力回路１２０のＩ／Ｏが×８を前提にし、横軸は、ＤＤＲでデータ出力を行うときの外部クロック信号ＥｘＣＬＫの周波数Ｆｒ、縦軸は、時間［μｓ］である。
【００３５】
従来の連続読出しのタイミング（図２）は、矢印Ａで示す領域をサポートすることができる。つまり、外部クロック信号ＥｘＣＬＫの周波数Ｆｒの上限は、ＤＤＲでおおよそ９０ＭＨｚである。他方、本実施例の連続読出しのタイミング（図５）は、数式（３）、（４）の制約に基づき矢印Ｂの領域をサポートすることができる。つまり、外部クロック信号ＥｘＣＬＫの周波数Ｆｒは、約６５ＭＨｚから１２０ＭＨｚである。
【００３６】
このように本実施例の連続読出しでは、アレイ読出しの開始タイミングを早めることで、外部クロック信号ＥｘＣＬＫの最大周波数をＤＤＲで９０ＭＨｚからＤＤＲ１２０ＭＨｚにまで高速化させ、読出し時間を短縮することができる。
【００３７】
また、ユーザーが低速周波数の外部クロック信号ＥｘＣＬＫを使用する場合には、従来の連続読出しのタイミングを使用することが望ましい。このため、本実施例の連続読出しでは、外部クロック信号ＥｘＣＬＫの周波数に依存する２種類のアレイ読出しの開始タイミングの使用を可能にする。例えば、もし、ユーザーがより低速周波数の外部クロック信号ＥｘＣＬＫを使用するならば、コントローラ１５０は、Ｌ１ラッチのデータ破壊を避けるために従来のタイミング（図２）で連続読出しを制御する。もし、ユーザーが高速周波数の外部クロック信号ＥｘＣＬＫを使用するならば、コントローラ１５０は、数式（３）、（４）の制約によるタイミングで連続読出しを制御する。
【００３８】
本実施例では、コントローラ１５０は、周波数検出部２００で検出された検出結果に基づきアレイ読出しの開始タイミングを切替える。図８に、本実施例の周波数検出部２００の構成を示す。周波数検出部２００は、内部クロック発生器３００で発生された内部クロック信号ＩｎＣＬＫを受け取り、内部クロック信号ＩｎＣＬＫのクロックパルスをカウントする８ビットバイナリカウンタ２１０と、外部クロック信号ＥｘＣＬＫのクロックパルスをカウントする１６ビットバイナリカウンタ２２０と、８ビットバイナリカウンタ２１０から出力されるオーバーフロー信号ＯＶＦに基づき外部クロック信号の周波数が低速か否かを検出し、その検出結果を表す検出信号ＤＥＴをコントローラ１５０に提供する検出部２３０とを含んで構成される。
【００３９】
フラッシュメモリ１００には、チャージポンプ回路やその他の動作シーケンス等に利用される内部クロック発生器３００が搭載されている。内部クロック発生器３００は、例えば、４０ＭＨｚの内部クロック信号ＩｎＣＬＫを生成する。８ビットバイナリカウンタ２１０は、内部クロック信号ＩｎＣＬＫのクロックパルスが入力されるたびにカウント値を歩進し、００ｈからＦＦｈまでカウントする。ＦＦｈの次にクロックパルスが入力されると、オーバーフローしたことを示すＨレベルのオーバーフロー信号ＯＶＦを検出部２３０に出力し、再び００ｈからカウントを開始する。１６ビットバイナリカウンタ２２０は、外部クロック信号ＥｘＣＬＫのクロックパルスが入力されるたびにカウント値を歩進し、００００ｈからＦＦＦＦｈまでカウントする。ＦＦＦＦｈの次にクロックパルスが入力されると、オーバーフローしたことを示すオーバーフロー信号ＯＶＦ＿Ｅｘを８ビットバイナリカウンタ２１０に出力し、再び００００ｈからカウントを開始する。
【００４０】
８ビットバイナリカウンタ２１０は、１６ビットバイナリカウンタ２２０からオーバーフロー信号ＯＶＦ＿Ｅｘを受け取ると、これに応答してカウンタを００ｈにリセットする。８ビットバイナリカウンタ２１０は、内部クロック信号ＩｎＣＬＫの周波数に応じて一定の時間間隔ＩＮＴ＿Ｉｎでオーバーフロー信号ＯＶＦを出力するが、もし、１６ビットバイナリカウンタ２２０から出力されるオーバーフロー信号ＯＶＦ＿Ｅｘの時間間隔ＩＮＴ＿Ｅｘが８ビットバイナリカウンタ２１０の時間間隔ＩＮＴ＿Ｉｎよりも短ければ、８ビットバイナリカウンタ２１０はその都度リセットされ、オーバーフロー信号ＯＶＦは出力されない（Ｌレベルのままである）。その反対に時間間隔ＩＮＴ＿Ｅｘが時間間隔ＩＮＴ＿Ｉｎよりも長ければ、８ビットバイナリカウンタ２１０からＨレベルに遷移するオーバーフロー信号ＯＶＦが出力される。検出部２３０は、８ビットバイナリカウンタ２１０からのオーバーフロー信号ＯＶＦを検出したとき、外部クロック信号ＥｘＣＬＫが低速であることを表す検出信号ＤＥＴをコントローラ１５０に出力し、オーバーフロー信号ＯＶＦが検出されないとき、外部クロック信号ＥｘＣＬＫが低速であることを表す検出信号ＤＥＴをコントローラ１５０に出力する。
【００４１】
図９（Ａ）は、外部クロック信号ＥｘＣＬＫが８６ＭＨｚの場合の８ビットバイナリカウンタ２１０と１６ビットバイナリカウンタ２２０のタイミングチャート、図９（Ｂ）は、外部クロック信号ＥｘＣＬＫが７６ＭＨｚの場合のタイミングチャートである。図からも明らかなように、外部クロック信号ＥｘＣＬＫが８６ＭＨｚの場合、８ビットバイナリカウンタ２１０は、１６ビットバイナリカウンタ２２０からのオーバーフロー信号ＯＶＦ＿Ｅｘによりリセットされるため、Ｈレベルに遷移するオーバーフロー信号ＯＶＦは出力されない。それ故、検出部２３０は、外部クロック信号ＥｘＣＬＫが高速周波数であることを示す検出信号ＤＥＴを出力する。外部クロック信号ＥｘＣＬＫが７６ＭＨｚの場合、１６ビットバイナリカウンタ２２０のオーバーフロー信号ＯＶＦ＿Ｅｘの時間間隔ＩＮＴ＿Ｅｘが８ビットバイナリカウンタ２１０の時間間隔ＩＮＴ＿Ｉｎよりも長くなり、８ビットバイナリカウンタ２１０は、Ｈレベルに遷移するオーバーフロー信号ＯＶＦを出力する。それ故、検出部２３０は、外部クロック信号ＥｘＣＬＫが低速周波数であることを示す検出信号ＤＥＴを出力する。
【００４２】
コントローラ１５０は、検出信号ＤＥＴに基づき外部クロック信号ＥｘＣＬＫが高速周波数であることが検出された場合には、読出し開始タイミングを図５に示すように早め、外部クロック信号ＥｘＣＬＫが低速周波数であることが検出された場合には、読出し開始タイミングを図２に示すように通常状態にする。
【００４３】
図１０は、本実施例の連続読出しの動作フローである。コントローラ１５０は、連続読出しのコマンドを受け取ると連続読出し動作を開始する（Ｓ１００）。これに応答して、周波数検出部２００は、外部から供給された外部クロック信号ＥｘＣＬＫの周波数を検出し、この検出結果をコントローラ１５０へ提供する。コントローラ１５０は、周波数検出部２００により外部クロック信号ＥｘＣＬＫの高速周波数が検出された場合には、アレイ読出しの開始タイミングを通常よりも早くなるようなタイミング制御を行い（Ｓ１３０）、低速周波数が検出された場合には、図２に示すような通常のタイミング制御を行う（Ｓ１４０）。
【００４４】
なお、外部クロック信号ＥｘＣＬＫの周波数の検出方法は、上記に限らず他の方法を用いるものであってもよい。例えば、８ビットバイナリカウンタ２１０のカウント値と１６ビットバイナリカウンタ２２０の一定時間内のカウント値とを比較することにより外部クロック信号ＥｘＣＬＫが高速か否かを判定しても良いし、あるいは両カウンタのオーバーフローの回数を比較して外部クロック信号ＥｘＣＬＫが高速か否かを判定しても良い。また、上記の例では、８ビットバイナリカウンタや１６ビットバイナリカウンタを用いる例を示したが、これは一例であり、使用する内部クロック周波数や外部クロック周波数に応じてバイナリカウンタは適宜選択される。さらに上記実施例では、内部クロック発生器の内部クロック信号を利用して外部クロック信号が高速か否かを判定したが、これは一例であり、内部クロック発生器の代わりに他のクロック信号を利用して外部クロック信号の周波数を検出するようにしてもよい。
【００４５】
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４６】
１００：フラッシュメモリ
１１０：メモリセルアレイ
１２０：入出力回路
１３０：ＥＣＣ回路
１４０：アドレスレジスタ
１５０：コントローラ
１６０：ワード線選択回路
１７０：ページバッファ／センス回路
１８０：列選択回路
１９０：内部電圧発生回路
２００：周波数検出部
【図１】
2020191148.tif 000003
【図２】
2020191148.tif 000004
【図３】
2020191148.tif 000005
【図４】
2020191148.tif 000006
【図５】
2020191148.tif 000007
【図６】
2020191148.tif 000008
【図７】
2020191148.tif 000009
【図８】
2020191148.tif 000010
【図９】
2020191148.tif 000011
【図１０】
2020191148.tif 000012