(57)【要約】【課題】  トランジスタの性能を向上させずに、バースト読出モードにおける動作速度を向上させることが可能なフラッシュメモリを提供する。【解決手段】  本発明の半導体メモリは、クロックに同期してデータの連続読出動作の機能を有し、メモリ素子，冗長メモリ素子からなるメモリアレイと、アドレスの上位アドレスをメモリアドレス、下位アドレスをバーストアドレスとし、クロック同期で出力するバーストカウンタと、メモリアドレスで選択されたメモリ素子のデータを出力するセンスアンプと、バーストアドレスをデコードするデコーダと、バーストアドレスをクロックに同期し記憶するアドレスラッチと、アドレスラッチのバーストアドレスに対応して、入力されるデータを選択するページセレクタと、メモリ素子が不良であると、データを冗長データと置換する冗長置換回路と、クロック同期でデータを出力する出力ラッチとを有する。【選択図】    図１
2005267783.tif 000002
【特許請求の範囲】
【請求項１】
メモリ素子及びこのメモリ素子が不良の場合に置換する冗長メモリ素子を有し、前記不良メモリ素子を冗長メモリ素子に置換し、クロックに同期してデータの連続読出し動作を行うバーストモード読み出し機能を有する半導体メモリにおいて、
複数のメモリ素子からなるメモリアレイと、
複数の冗長メモリ素子からなる冗長メモリアレイと、
入力されるアドレスにおける上位アドレスをメモリアクセスアドレスとして、前記クロックに同期して出力するとともに、該上位アドレスを除くアドレスをバーストアドレスとして、このクロックに同期して順次変化させて出力するバーストカウンタと、
該メモリアドレスにより選択された、メモリアレイ及び冗長メモリアレイにおけるメモリ素子各々からの微小な出力信号を増幅し、それぞれメインメモリデータ及び冗長メモリデータとして出力するセンスアンプと、
バーストアドレスをデコードし、データセレクタ信号として出力するアドレスデコーダと、
前記データセレクタ信号を前記クロックに同期させてラッチして、データセレクタ保持信号として出力するデータセレクタ信号ラッチと、
前記データセレクタ保持信号に対応して、入力されるバーストデータを選択して、メインデータとして出力するメインデータセレクタと、
前記メインデータを読み出したメモリ素子が不良メモリ素子である場合、このメインデータの対応するデータを上記冗長メモリデータと置換し、冗長置換データとして出力する冗長置換回路と
を有していることを特徴とする半導体メモリ。
【請求項２】
メモリ素子及びこのメモリ素子が不良の場合に置換する冗長メモリ素子を有し、前記不良メモリ素子を冗長メモリ素子に置換し、クロックに同期してデータの連続読出し動作を行うバーストモード読み出し機能を有する半導体メモリにおいて、
複数のメモリ素子からなるメモリアレイと、
複数の冗長メモリ素子からなる冗長メモリアレイと、
入力されるアドレスにおける上位アドレスをメモリアクセスアドレスとして、前記クロックに同期して出力するとともに、該上位アドレスを除くアドレスをバーストアドレスとして、このクロックに同期して順次変化させて出力するバーストカウンタと、
該メモリアドレスにより選択された、メモリアレイ及び冗長メモリアレイにおけるメモリ素子各々からの微小な出力信号を増幅し、それぞれメインメモリデータ及び冗長メモリデータとして出力するセンスアンプと、
バーストアドレスをデコードし、データセレクタ信号として出力するアドレスデコーダと、
前記データセレクタ信号を前記クロックに同期させてラッチして、データセレクタ保持信号として出力するデータセレクタ信号ラッチと、
前記データセレクタ保持信号に対応して、入力されるメインメモリデータを選択して、メインデータとして出力するメインデータセレクタと、
前記メインデータを読み出したメモリ素子が不良メモリ素子である場合、このメインデータの対応するデータを上記冗長メモリデータと置換し、冗長置換データとして出力する冗長置換回路と、
前記クロックに同期して、前記冗長置換データをラッチして、出力データとして出力する出力ラッチと
を有していることを特徴とする半導体メモリ。
【請求項３】
前記バーストカウンタが、バーストモード開始の信号から出力データが出力されるまでの、予め設定されているクロック数をＮとした場合、Ｎ−１のクロックのタイミングから、前記クロックに同期してバーストアドレスのインクリメント動作を行うことを特徴とする請求項１または請求項２に記載の半導体メモリ。
【請求項４】
バーストカウンタの出力するバーストアドレスにより、前記メインデータを読み出したメモリ素子に不良メモリ素子が含まれているか否かを判定し、含まれていると判定した場合、冗長一致信号を出力する冗長判定回路と、
前記クロックに同期して、前記冗長一致信号をラッチして、冗長一致保持信号として出力する冗長ラッチとを有し、
前記冗長置換回路が前記冗長一致保持信号により、不良メモリ素子からのデータを置換することを特徴とする請求項１から請求項３のいずれかに記載の半導体メモリ。
【請求項５】
前記バーストカウンタが、バースト動作開始の信号から、予め設定されたクロック数を検出すると、バーストラッチ信号を出力し、
前記クロックに同期して、前記バーストラッチ信号をラッチして、バースト保持信号として出力する信号ラッチと、
前記センスアンプとメインデータセレクタとの間に設けられ、メインメモリデータ及び冗長メモリデータとを、前記バーストラッチ保持信号により保持するバーストラッチ回路と
を有することを特徴とする請求項１から請求項４のいずれかに記載の半導体メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データをアドレスに対応して記憶する半導体記憶装置に関し、特に、バーストモードによるデータ読み出し機能を有する半導体メモリに関する。
【背景技術】
【０００２】
フラッシュメモリは、電気的に書き換えが可能であり、電源を切った場合においても、記憶されたデータが消えないという不揮発特性を有した半導体メモリであり、記憶しているデータの保持に電池を必要としないため、近年、小型携帯機器（特に携帯電話）の記憶装置に多用されている。
現在、携帯電話は、第三世代のサービスが開始され、Java（登録商標）アプリケーションプログラムの実行や、動画処理など、アプリケーションが多様化し，内蔵メモリに対する大容量化，高速化，低消費電力化の要望が高まって来ている。
【０００３】
上記フラッシュメモリには、メモリ素子に記憶されているデータを、高速に読み出す方式として、シンクロナスバーストリードモード（以下、シンクロリードとする）がある。
このシンクロリードとは，外部から入力したクロックに同期させて、メモリに記憶されているデータを読み出すモードであり、その他の読み出しモードである非同期ランダムリードや、非同期ページリードモードに比較して、メモリに記憶されているデータを、連続させて高速に読み出すモードである（例えば、特許文献１参照）。
【０００４】
また、フラッシュメモリを作成するウェハ工程におけるメモリ素子の動作試験において、不良と判定されたメモリ素子に換え、この不良と判定されたメモリ素子のアドレスに、各ページ単位に作成された冗長メモリ素子を対応させる。
フラッシュメモリの従来の構成ブロックを図４に示す。メモリ素子が複数のプレーン単位に分離して形成されており、各プレーン毎に、センス回路，アドレスデコーダ，冗長回路，冗長置換回路及びデータセレクタ回路設けられている。
【特許文献１】特開２００１−１７６２７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このシンクロリードにおいて、従来は、図５及び図３に示すように、外部から入力されたアドレス（例えば、Ａ0〜Ａ22）がアドレスラッチ１によりラッチされ、バーストカウンタ２に対して供給される。
ここで、図５は、図４におけるいずれかのプレーンを選択し、説明に必要な各プレーンに共通の回路と共に、構成を示したものである。また、図３は図５の動作を説明するためのタイミングチャートである。
チップイネーブル信号ＣＥが入力されることにより、フラッシュメモリが活性化され、入力バッファが入力される外部クロックから内部クロックＫを生成する。そして、シンクロリードにおける読み出しの同期動作は内部クロックＫに基づき行われる。この内部クロックＫは、外部クロックと周波数は同一で、位相が異なるものである。
【０００６】
また、入力バッファはアドレスバリッド信号ＡＤＶが入力されることにより、外部から入力されるアドレスの入力を許可する状態となる。
そして、アドレスバリッド信号ＡＤＶ及びチップイネーブル信号ＣＥのいずれか遅いほうの有効エッジ（例えば、立ち下がりエッジ）により、シンクロナス開始クロックが生成され、このシンクロナス開始クロックのエッジ（例えば、立ち上がり）によりバースト読み出しの動作が開始される。
すなわち、内部回路により、アドレスバリッド信号ＡＤＶ及びチップイネーブル信号ＣＥが入力され、シンクロナス開始クロックが生成されたとき、シンクロリードの読み出し状態である場合、上記シンクロナス開始クロックがバーストカウンタ２へ入力され、バーストカウンタ２がバースト読み出しの動作を開始する。
【０００７】
これにより、バーストカウンタ２は、メモリアレイ４に対してメモリアクセスアドレスＲ１を出力する。
そして、デコーダ４Ａは入力されるメモリアクセスアドレスＲ１をデコードして、メモリアレイ４からページ単位に複数のメモリ素子を選択して、選択されたメモリ素子各々から、各メモリデータがそれぞれ対応するセンスアンプ回路（Ｓ／Ａ）４Ｂに出力される。  例えば、ページ単位のデータとしてはメインメモリデータ１２８bit＋冗長メモリデータ４bitである。ここでの１ワードを１６bitとする。以下、本実施形態においては、上記ページ単位の定義を用いて説明を行う。
【０００８】
これにより、センスアンプ回路４Ｂはメモリ素子から出力された、ページ単位における各メモリデータの判定を行い（微小な出力データを増幅した後に判定を行う）、メインメモリデータＲ２及び冗長メモリデータＲ３として出力する。
そして、センスラッチ回路８は、出力されているメインメモリデータＲ２及び冗長メモリデータＲ３を、センスラッチ信号Ｒ４によりラッチする。
このセンスラッチ信号Ｒ４は、メモリアレイ４のアクセス時間に対応する内部クロックＫの周期が経過した後、ＡＴＤ回路１０がバーストカウンタ２の出力するバースト用ＡＴＤ（Address Transition Detection）活性信号Ｒ６を、１周期後の内部クロックＫの立ち上がりに同期して出力することにより生成される。
【０００９】
そして、バーストカウンタ２は、上記バースト用ＡＴＤ活性信号Ｒ６と同期したタイミングで、バーストラッチ信号Ｒ７を生成し、バーストラッチ回路９へ出力する。
次に、バーストラッチ回路９は、入力されているメインメモリデータＲ２及び冗長メモリデータＲ３を、バーストラッチ信号Ｒ７によりラッチして、各々バーストデータＲ８及び冗長データＲ９として出力する。ここで、バーストラッチ信号Ｒ７が「Ｈ」レベルとなった時点から各バーストデータＲ８及び冗長データＲ９が出力される。
【００１０】
このバーストラッチ信号Ｒ７は、シンクロナス開始クロック（バーストモード開始の信号）のエッジから、出力バッファよりデータが読み出されるまでの、予め設定されたクロック数（周波数コンフィグレーションで規定したサイクル数）が経過することにより、バーストカウンタ２より出力されている。
この周波数コンフィグレーションで規定したサイクル数は、メモリアレイ４に対してメモリアクセスアドレスＲ１が印加されてから、センスラッチ回路８より各データが読み出されるまでの時間（非同期）、すなわちアクセス時間により、最低サイクル数が決定されている。ここで、上記アクセス時間は、内部クロックＫのクロック数にて示されている。
すなわち、上記バーストラッチ信号Ｒ７は、バーストアドレスＲ１２の出力に対応して、内部クロックＫに同期させて生成したものである。
ここで、バーストデータＲ８はメインデータセレクタ５に出力され、一方、冗長データＲ９は冗長置換回路１１へ出力されている。
【００１１】
次に、メインデータセレクタ５は、バーストカウンタ２からのデータセレクタ信号Ｒ２５により、入力されているバーストデータＲ８から、順次、１ワード単位（１６ビット単位）にてデータを選択し、このデータをメインデータＲ１３として冗長置換回路１１へ出力することになる。
ここで、メモリアドレスは、ページ単位のメモリ素子を選択する、入力されたアドレスの上位アドレスに対応し、バーストアドレスは、ページ単位からワード単位のメモリ素子を選択する、入力されたアドレスの下位アドレスに対応している。
バーストカウンタ２は、初期状態において、アドレスラッチ１からの下位アドレスを、バーストアドレスＲ１２として出力している。
【００１２】
また、冗長判定回路１２は、不良と判定されたメモリ素子のバーストアドレスである不良バーストアドレスを内部に記憶しており、バーストカウンタ２から入力されるバーストアドレスＲ１２と上記不良バーストアドレスとを比較し、比較結果が一致すると、冗長一致信号Ｒ１８を出力する。
また、この冗長一致信号Ｒ１８は、不良とされたワードにおける、４ビットずつのブロックのいずれのブロック（１ワードは４ブロック）を置換するかを示す情報も含んでいる。
ここで、冗長メモリ素子は、例えば、８ワード単位ごとに４ビットずつが準備されており、不良ビットを有するメモリ素子を４ビット単位で置換するために用いられる。
【００１３】
冗長置換回路１１は、冗長一致信号Ｒ１８が入力された場合、バーストデータＲ８の１２８ビット（すなわち、８ワード）における４ビット（不良と検出された）のいずれかを、冗長データＲ９（冗長メモリ素子からのデータ）と置換し（入れ替える）、冗長置換データＲ１４として、マルチプレクサ１３へ出力する。
一方、冗長置換回路１１は、冗長一致信号Ｒ１８が入力されない場合、入力されたメインデータＲ１３を、冗長データＲ９と置換せず、そのままの状態で、冗長置換データＲ１４として、マルチプレクサ１３へ出力する。
【００１４】
マルチプレクサ１３は、図示しないコマンド制御回路からの制御信号により、メモリプレーンからの冗長置換データＲ１４またはメモリデータ以外のデバイス情報のデータを選択するものであり、選択されたどちらかのデータを、リードデータＲ１５として、出力ラッチ６へ出力する。
そして、出力ラッチ６は、内部クロックＫに同期して、順次、リードデータＲ１５をラッチして、ラッチデータＲ１６として出力バッファへ出力する。
これにより、出力バッファは内部クロックＫ（すなわち外部クロック）に同期して、メモリプレーンから読み出したデータを出力することになる。
【００１５】
上述のシンクロリードにおいて、バーストカウンタ２は、内部クロックＫに同期して、入力された値（設定値）から、上記下位アドレスをインクリメント（１つずつ増加）させ、順次、バーストアドレスＲ１２として出力する。
このとき、バーストカウンタ２からメモリアクセスアドレスが出力されてから、センスアンプ回路４Ｂからデータが出力されるまで、所定のアクセス時間（非同期の時間）が必要となる。
【００１６】
このため、バーストアドレスを出力する（変化して出力させる）内部クロックＫのタイミングを、バーストカウンタ２に判定させるため、上記アクセス時間をクロック数で定義することになる。
例えば、所定の時間が６０ｎｓであり、内部クロックの動作周波数が１００ＭＨｚ（10ｎｓ）とすると、１内部クロックの周期が１０ｎｓであるため、６０ｎｓとしては６内部クロックとなり、このタイミングにおいてセンスアンプ回路４Ｂからメモリデータが出力される。
【００１７】
図５に示す従来の回路においては、バーストカウンタ２がメモリアクセスアドレスＲ１を出力してから、６内部クロックが経過したことを検出して（予めメモリアレイ４のアクセス時間として設定されている）、７内部クロック目（周波数コンフィグレーションにより規定されたクロック数）から、アクセスされたアドレスのデータが、内部クロックＫに同期して、出力バッファから順次バースト読み出しされることとなる。
このとき、バーストカウンタ２は、７内部クロック目から内部クロックＫに同期した、バーストアドレスのインクリメント動作を開始する。
上述した処理により、メインデータセレクタ５は、アドレスデコーダ３によりデコードされたデータセレクタ信号Ｒ２５によって、メモリアレイ４から読み出されたメモリデータ８ワード分（１２８bit）から、このバーストアドレスに対応する１ワード分(１６bit)を選択して出力する。
【００１８】
そして、出力ラッチ６は、１ワード分のデータＤnを、内部クロックに同期して、ラッチして出力させている。
従来、上記バーストカウンタ２は、図５からもわかるように、内部クロックＫに同期させて、バーストアドレスの出力から、メモリアレイ４から読み出したメモリデータを出力ラッチ６にラッチさせるまでを、内部クロックの１周期以内に処理していた。
【００１９】
すなわち、図３，６，７に示すタイミングチャートからわかるように（図３が本発明による読み出しを示し、図６および７が従来例による読み出しを示す）、内部クロックＫが立ち上がり、出力ラッチ６の出力がセットアップされるタイミングより前に、マルチプレクサ１３から出力されるリードデータＲ１５が確定されていなければならない。
しかしながら、読み出し速度の高速化により、外部クロックに対応して内部クロックＫの周波数が高くなると、バーストカウンタ２に内部クロックＫが入力され、インクリメントされたバーストアドレスＲ１２が、冗長判定回路１２，アドレスデコーダ３を介して、メインデータセレクタ５に入力された後、冗長置換回路１１において冗長置換を行い、マルチプレクサ１３で選択されて、リードデータＲ１５として出力される。
このため、出力ラッチ６に入力される時点で、上記リードデータＲ１５が安定するまでの上記伝搬経路における信号の伝搬時間が、内部クロックＫの周期よりも長くなることにより、実質的にフラッシュメモリのアクセスタイムが制限されることとなる。
【００２０】
すなわち、内部クロックＫの立ち上がりからバーストアドレスＲ４が出力されるまでを６.８nsとし、冗長判定回路１２，アドレスデコーダ３及びメインデータセレクタ５において２.５ns遅延し、冗長置換回路１１での置換処理に２.５nsかかり、マルチプレクサ１３での選択時間に１nsかかるとすると、内部クロックＫがバーストカウンタ２に内部クロックＫが入力されてから、出力ラッチ６に正常にデータをラッチさせるために必要な設定時間（伝搬時間）は
６.８ns＋２.５ns＋２.５ns＋１ns＝１２.８ns
となり、図６に示すように、内部クロックＫ（同様に外部クロック）が５０MHz（周期２０ns）の周波数であれば、リードデータＲ１５は内部クロックＫに対してセットアップ時間を有しているため、バーストアドレスの変化から出力ラッチまでに内部クロックＫの１周期の時間で、冗長置換を含めた出力処理が可能である。
これにより、外部の回路が７クロック目からデータを取得する場合、メモリアクセスアドレスＲ４が出力されてから７内部クロック目から、出力データＲ１７が１ワードずつ、Ｄ0から順にＤ1，Ｄ2，Ｄ3，…と出力されている。
【００２１】
しかしながら、図７に示すように、読み出し速度を向上させようとし、内部クロックＫを１００MHz（周期１０ns）の周波数とすると、１周期の間で出力処理を行うことができなくなり、周期が処理に必要な１２.８ｎｓに対して短くなり、バーストアドレスＲ１２をインクリメントした内部クロックＫにより選択したメインデータＲ１３を、次の周期の内部クロックＫに同期させて、出力ラッチ６にラッチすることができない。
【００２２】
すなわち、上述したように、内部クロックＫの周期が、例えば、クロック周期１０ns(周波数１００MHz)の場合においては、内部クロックＫの周期が上記設定時間に対して短くなってしまうため、７内部クロック目でＤ0が出力されるとともに、バーストアドレスＲ１２がインクリメントされるが、８内部クロック目が出力ラッチ６に入力された時点において、新たなリードデータＲ１５が入力されていないため、出力ラッチ６の出力がＤ0からＤ1に変化しない。
このため、８内部クロック目では、依然として出力データがＤ0であり、９内部クロック目から順次Ｄ1，Ｄ2，Ｄ3，…と出力されることになる。
【００２３】
このように、上述した手法においては、すでに述べたように、内部クロックの１周期以内に、バーストカウンタ２から出力されるバーストアドレスＲ１２により、メモリアレイ４から出力されるバーストデータＲ８を、メインデータセレクタ５から出力させ、次の内部クロックＫにより、出力ラッチ６から出力データとして出力する必要があった。
しかしながら、設定時間の制限により伝搬経路の高速化が限界となり、内部クロックＫの動作周波数を上昇させることが出来なくなった。
【００２４】
また、これまでの手法で高速化を図るための手段としては、ＭＯＳトランジスタ性能を向上させるか、あるいは、チップサイズの縮小化などにより、対応することでしか方法は残されていない。
しかし、ＭＯＳトランジスタの性能を向上させるには、多大な労力と時間とコストとが必要であり、動作速度の高速化に対応することは困難である。
また、チップサイズについてもプロセスを微細化する必要があり、設備投資により製造コストが高くなることで、チップ単価が高くなってしまい、現状プロセスでの縮小化には限界があることから、動作速度向上のための画期的なチップサイズ縮小化はあまり現実的ではない。
本発明は、このような事情に鑑みてなされたもので、トランジスタの性能を向上させることなく、シンクロナスバーストリードモードにおける動作速度を向上させることが可能なフラッシュメモリを提供することを目的とする。
【課題を解決するための手段】
【００２５】
本発明の半導体メモリは、メモリ素子及びこのメモリ素子が不良の場合に置換する冗長メモリ素子を有し、前記不良メモリ素子を冗長メモリ素子に置換し、クロックに同期してデータの連続読出し動作を行うバーストモード読み出し機能を有する半導体メモリにおいて、複数のメモリ素子からなるメモリアレイと、複数の冗長メモリ素子からなる冗長メモリアレイと、入力されるアドレスにおける上位アドレスをメモリアクセスアドレスとして、前記クロックに同期して出力するとともに、該上位アドレスを除くアドレスをバーストアドレスとして、このクロックに同期して順次変化させて出力するバーストカウンタと、該メモリアドレスにより選択された、メモリアレイ及び冗長メモリアレイにおけるメモリ素子各々からの微小な出力信号を増幅し、それぞれメインメモリデータ及び冗長メモリデータとして出力するセンスアンプと、バーストアドレスをデコードし、データセレクタ信号として出力するアドレスデコーダと、前記データセレクタ信号を前記クロックに同期させてラッチして、データセレクタ保持信号として出力するデータセレクタ信号ラッチと、前記データセレクタ保持信号に対応して、入力されるバーストデータを選択して、メインデータとして出力するメインデータセレクタと、前記メインデータを読み出したメモリ素子が不良メモリ素子である場合、このメインデータの対応するデータを上記冗長メモリデータと置換し、冗長置換データとして出力する冗長置換回路とを有していることを特徴とする。
【００２６】
本発明の半導体メモリは、メモリ素子及びこのメモリ素子が不良の場合に置換する冗長メモリ素子を有し、前記不良メモリ素子を冗長メモリ素子に置換し、クロックに同期してデータの連続読出し動作を行うバーストモード読み出し機能を有する半導体メモリにおいて、複数のメモリ素子からなるメモリアレイと、複数の冗長メモリ素子からなる冗長メモリアレイと、入力されるアドレスにおける上位アドレスをメモリアクセスアドレスとして、前記クロックに同期して出力するとともに、該上位アドレスを除くアドレスをバーストアドレスとして、このクロックに同期して順次変化させて出力するバーストカウンタと、該メモリアドレスにより選択された、メモリアレイ及び冗長メモリアレイにおけるメモリ素子各々からの微小な出力信号を増幅し、それぞれメインメモリデータ及び冗長メモリデータとして出力するセンスアンプと、バーストアドレスをデコードし、データセレクタ信号として出力するアドレスデコーダと、前記データセレクタ信号を前記クロックに同期させてラッチして、データセレクタ保持信号として出力するデータセレクタ信号ラッチと、前記データセレクタ保持信号に対応して、入力されるメインメモリデータを選択して、メインデータとして出力するメインデータセレクタと、前記メインデータを読み出したメモリ素子が不良メモリ素子である場合、このメインデータの対応するデータを上記冗長メモリデータと置換し、冗長置換データとして出力する冗長置換回路と、前記クロックに同期して、前記冗長置換データをラッチして、出力データとして出力する出力ラッチとを有していることを特徴とする。
【００２７】
本発明の半導体メモリは、前記バーストカウンタが、バースト動作開始の信号から出力データが出力されるまでの、予め設定されているクロック数をＮとした場合、Ｎ−１のクロックのタイミングから、前記クロックに同期してバーストアドレスのインクリメント動作を行うことを特徴とする。
【００２８】
本発明の半導体メモリは、バーストカウンタの出力するバーストアドレスにより、前記メインデータを読み出したメモリ素子に不良メモリ素子が含まれているか否かを判定し、含まれていると判定した場合、冗長一致信号を出力する冗長判定回路と、前記クロックに同期して、前記冗長一致信号をラッチして、冗長一致保持信号として出力する冗長ラッチとを有し、前記冗長置換回路が前記冗長一致保持信号により、不良メモリ素子からのデータを置換することを特徴とする。
【００２９】
本発明の半導体メモリは、前記バーストカウンタが、バースト動作開始の信号を受けセンスアンプから各データの出力される時間の経過を、予め設定されたクロック周期の計数より検出すると、バーストラッチ信号を出力し、前記クロックに同期して、前記バーストラッチ信号をラッチして、バースト保持信号として出力する信号ラッチと、前記センスアンプとメインデータセレクタとの間に設けられ、メインメモリデータ及び冗長メモリデータとを、前記バーストラッチ保持信号により保持するバーストラッチ回路とを有することを特徴とする。
【発明の効果】
【００３０】
以上説明したように、本発明は、出力データを設定されたクロック数（すなわち、周波数コンフィグレーションで規定したサイクル数）において、バースト出力を行わせるため、バーストアドレスを変化させるのに必要なクロックタイミングより、１クロック前にバーストアドレスを変化させ、出力データを出力する上記クロック数に対応するよう、１クロック前に出したクロック分をデータセレクタ信号ラッチを用いて調整している。
すなわち、本発明は、予め設定されているクロック数をＮ（Ｎは整数であり、メモリアレイのアクセス時間をＭ（Ｍは整数）内部クロックとすると、Ｎ＞Ｍ）とした場合、Ｎ−１のタイミングでバーストアドレスのインクリメントを行う。
シンクロリードのモードにおいて、シンクロリードスタート信号から、出力データが出力されるまでのクロック数（メモリアレイのアクセス時間を含む）は予め設定されている。
【００３１】
これにより、本発明によれば、冗長判定回路，アドレスデコーダ，メインデータセレクタ及び冗長置換回路（さらにマルチプレクサ）における遅延を、冗長判定回路及びアドレスデコーダの遅延と、メインデータセレクタ及び冗長置換回路の遅延として、各々独立に分離することが出来、遅延が分離されたことにより、動作マージンが広がり、動作可能なクロック周波数を上昇させることができ、高速なデータ転送が可能となる。
したがって、本発明によれば、トランジスタの性能を向上させることなく、フラッシュメモリのシンクロリードのモードにおける、バースト出力のためのクロック周波数を上げることが可能となり、アクセスタイムを短くし、高速動作に対応させることができる。
【発明を実施するための最良の形態】
【００３２】
本発明は、図１及び図２に示すように、複数のメモリプレーン（Plane）からなるフラッシュメモリにおける、複数ある読み出しモードのシンクロリード動作において、バーストカウンタから出力されるバーストアドレスＲ１２をデコードするアドレスデコーダ３と、メインデータセレクタ５との間の所定の位置に、タイミング調整用のデータセレクタ信号ラッチ７を設け、従来、シンクロリードの開始からデータを出力するまでの予め設定されたクロック数（周波数コンフィグレーションで規定したサイクル数）が経過したタイミングから、バーストカウンタ２におけるバーストアドレスのインクリメントを開始していたものを、設定されたクロック数が経過する１周期前の内部クロックＫによりバーストアドレスＲ４のインクリメントを開始するようにした。
【００３３】
すなわち、シンクロナス開始クロックが入力されてから、出力データが出力されるまでの予め設定された内部クロックＫのクロック周期（周波数コンフィグレーションで規定したサイクル数）の１内部クロック分早いタイミングで、シンクロリード制御回路２がバーストアドレスＲ１２を変化させる。ここで、周波数コンフィグレーションで規定したサイクル数の最小数は、上記アクセス時間の内部クロック数に１内部クロックの周期を加算したものである。
【００３４】
周波数コンフィグレーションで予め設定された内部クロックの周期をＮとすると、Ｎ番目の内部クロックＫのタイミングによりＤ0が出力され、Ｎ＋１番目の内部クロックのタイミングによりＤ1が出力される。
従来はバーストカウンタ２がＮ番目の内部クロックからバーストアドレスをインクリメントさせていたが、本発明ではバーストカウンタ２がＮ−１番目の内部クロックＫからバーストアドレスをインクリメントさせている。
【００３５】
これにより、バーストカウンタ２に内部クロックＫが入力してから、バーストアドレスがインクリメントされ、メーンデータセレクタ５から、メインデータＲ１３が出力されるまでの遅延時間を分割、すなわち、バーストカウンタ２におけるバーストアドレスＲ１２の変化を開始させるタイミングを、従来に比較して１内部クロック分先に行い、データセレクタ信号ラッチ７により、この先出しした１内部クロック分を保持させて出力タイミングを調整することにより、出力ラッチ６にリードデータＲ１５が到達するタイミングを従来と同様のクロック数としている。
【００３６】
すなわち、バーストアドレスＲ１２を変化させる内部クロックＫから、このバーストアドレスＲ１２の変化によるメインデータＲ１３が出力ラッチ６に到達するのを２内部クロック分とし、アドレスデコーダ３の出力の遅延までを１クロック分以内に収め、残りの１クロック分において、メインデータセレクタ５，冗長置換回路１１，マルチプレクサ１３及び出力ラッチ６までの処理を行えば良いので、メインデータセレクタ５及び冗長置換回路１１を伝搬する経路の遅延時間に余裕ができ、遅延問題を解消する事が可能となった。
このように、本発明は、外部から入力される外部クロックが今日高速化の一途をたどり、この高速動作に対応するため、チップ内部のアドレス及びデータの伝達パスをも高速に動作させる必要性に基づき、内部動作の高速化を図るために発案した内容である。
【００３７】
シンクロリードとは、入力バッファよりメモリデータの読み出したいスタートアドレスのアドレス信号Ａｎ（ここでは、１≦ｎ≦２２の整数）を入力し、読み出しモードを同期読み出しとし、また、シンクロリードをスタートさせるコマンドをデータＤＩＮにより入力し、シンクロナス開始クロックエッジが入力されることにより、内部クロックＫに同期して、メモリアレイ４からデータを読み出すためにアドレスが自動的にインクリメントされ、連続したアドレスのデータが、内部クロックＫに同期して出力されるものである。
【００３８】
以下、本発明の第１の実施形態を図１及び図２を用いて説明する。図１及び図２は第１の実施形態によるフラッシュメモリの一構成例を示すものである。従来例と同様な構成については、同一の符号を付し、説明を省略する。
入力バッファはパッドを介して外部から入力されるチップイネーブル信号ＣＥ、アドレス信号Ａｎ，アドレスバリッド信号ＡＤＶ，外部クロック，データＤＩＮ，ライト信号ＷＲを含む複数の信号が入力され、各信号の波形調整等を行い内部回路に供給する。ここで、入力バッファは入力される外部クロックから、内部クロックＫを生成して出力する。
図示しないコマンド制御回路は、所定のアドレスのアドレスＡｎ，ライト信号ＷＲ，シンクロリードのモードとするコマンドを示すデータＤＩＮ，アドレスバリッド信号ＡＤＶが入力されることにより、シンクロリードのモードであることを判定して、フラッシュメモリをシンクロリードの状態とする。
【００３９】
アドレスラッチ１は、入力バッファからのアドレスＲ１（Ａｎ）を内部クロックＫに同期してラッチする。
バーストカウンタ２は、アドレスラッチ１からのアドレスを、メモリアクセスアドレスＲ１（上位アドレス、例えばＡ3〜Ａ22）と、バーストアドレスＲ１２（下位アドレスＡ0〜Ａ2）とに分離し、メモリアクセスアドレスＲ１をデコーダ４Ａへ出力する。
また、バーストカウンタ２は、シンクロリードの状態である場合、下位アドレスを内部のカウンタのカウント開始数として設定し、カウント動作を開始するまで、下位アドレスをそのまま入力されたアドレスをバーストアドレスＲ１２として出力する。
【００４０】
バーストカウンタ２は、メモリアレイ４のアクセス時間に対応する内部クロックＫの周期が経過したことを検出すると、バースト用ＡＴＤ活性信号Ｒ６を生成してＡＴＤ１０へ出力する。
ＡＴＤ１０は、入力される上記バースト用ＡＴＤ活性信号Ｒ６から、内部クロックＫに同期させて、センスラッチ信号Ｒ４を生成して出力する。
そして、センスラッチ回路８は、上記センスラッチ信号Ｒ４が入力されることにより、メモリアレイ４から読み出されたメインメモリデータＲ２及び冗長メモリデータＲ３をラッチする。
【００４１】
また、バーストカウンタ２は、上記バースト用ＡＴＤ活性信号Ｒ６から、内部クロックＫに同期させて、バーストラッチ信号Ｒ７を生成して、ラッチ２１へ出力する。
ラッチ２１は、入力されるバーストラッチ信号Ｒ７を、内部クロックＫに同期させて、バーストラッチ保持信号Ｒ２０として、バーストラッチ回路９へ出力する。
バーストラッチ回路９は、センスラッチ回路８から入力されるメインメモリデータＲ２及び冗長メモリデータＲ３を、上記バーストラッチ保持信号Ｒ２０によりラッチする。
ここで、バーストラッチ回路９は、バーストラッチ保持信号Ｒ２０が「Ｈ」レベルで入力されるとすると、「Ｈ」レベルとなった時点から、メインメモリデータＲ２及び冗長メモリデータＲ３を出力する。
【００４２】
バーストカウンタ２は、周波数コンフィグレーションで予め設定された内部クロックの周期をＮ内部クロックとすると、Ｎ−１番目の内部クロックＫからバーストアドレスＲ１２のインクリメント（変化）を開始する。
アドレスデコーダ３は、バーストアドレスＲ１２をデコードして、データセレクタ信号Ｒ２５をデータセレクタ信号ラッチ７へ出力する。
データセレクタ信号ラッチ７は、タイミング調整用のラッチであり、アドレスデコーダ３がバーストアドレスＲ１２をデコードしたデータセレクタ信号Ｒ２５を、内部クロックＫに同期してラッチし、データセレクタ保持信号Ｒ２１として出力する。
【００４３】
冗長判定回路１２は、製造時の検査により不良と判定されたメモリ素子（不良メモリ素子）のメモリアレイ４におけるアドレスである不良アドレス、すなわち上位アドレス及びバーストアドレスＲ１２（下位アドレス）を記憶している。
また、冗長判定回路１２は、上記不良アドレスと、メモリアクセスアドレスＲ１及びバーストアドレスＲ１２とを比較し、比較結果が一致した場合に、冗長一致信号Ｒ１８を出力する。
冗長ラッチ２２は、冗長判定回路１２から入力される冗長一致信号Ｒ１８を、内部クロックＫに同期してラッチすることにより、冗長一致保持信号Ｒ２２として出力する。
【００４４】
メインデータセレクタ５は、メモリアレイ４から読み出され、バーストラッチ回路９において保持されている、スタートアドレスより１２８bit(８ワード）分のバーストデータＲ８が入力され、データセレクタ信号ラッチ７が内部クロックＫに同期して出力するデータセレクタ保持信号Ｒ２１に対応して、順次、８ワードから１ワードを選択してメインデータＲ１３として、冗長置換回路１１へ出力する。
冗長置換回路１１は、冗長一致保持信号Ｒ２２が入力された場合、メインデータＲ１３の１６ビットのうちいずれかのビットが不良であると判定して、不良一致保持信号Ｒ２２の示す４ビット単位にて、バーストラッチ回路９から出力されている冗長データＲ９と置換し、冗長置換データＲ１４としてマルチプレクサ１３へ出力する。
また、冗長置換回路１１は、冗長一致保持信号Ｒ２２が入力されない場合、メインデータＲ１３の１６ビットをそのまま、冗長置換データＲ１４としてマルチプレクサ１３へ出力する。
【００４５】
出力ラッチ６は、マルチプレクサ１３から出力されるリードデータＲ１５を、内部クロックＫに同期させて、ラッチデータＲ１６として、順次、出力バッファへ出力する。
出力バッファは、入力されるラッチデータＲ１６を、パッドから外部回路に対し、出力データＲ１７として出力する。
【００４６】
次に、図２及び図３を参照して、第１の実施形態によるフラッシュメモリにおけるシンクロリードの動作の説明を行う。図３は、このシンクロリードの一動作例を示すタイミングチャートであり、内部クロックＫに記載されている数字はシンクロナス開始クロックからの周期数（クロック数）である。すでに、チップイネーブル信号ＣＥ及び、シンクロリードとするコマンドを示すデータＤＩＮは入力されているとする。ここでは、例えば、フラッシュメモリを動作させるための外部クロックの周波数を１００MHzとし、従来と同様に、シンクロナス開始クロックエッジの入力から７クロック目からデータを連続して出力する設定となっているとする。また、図３において内部クロックＫに示されている番号は、シンクロナスリード開始クロック（立ち上がり）からの経過したクロック数を示している。
シンクロリード開始アドレスを示すアドレスＡｎが、各アドレスが割り当てられた外部パッドから入力される。
そして、アドレスバリッド信号ＡＤＶを外部から決められた仕様により入力し、シンクロリードをスタートさせる。
【００４７】
このとき、シンクロナスリード開始クロックが所定の内部回路により、内部クロックＫに同期して生成され、このシンクロリード開始クロックにより、シンクロリード開始アドレスを示すアドレスＡｎがアドレスラッチ１にラッチされる。
このアドレスラッチ１は、例えば、アドレスバリッド信号ＡＤＶが「Ｈ」レベルで入力されている場合、出力として不定のデータが出力されているが、シンクロリードスタート信号が、「Ｈ」レベルから「Ｌ」レベルに遷移することにより（負論理により活性化）、入力バッファから入力されるアドレスＡｎをラッチして、ＡＴＤ１０及びバーストカウンタ２へ出力する。
【００４８】
このとき、シンクロナスリード開始クロックが、アドレスバリッド信号ＡＤＶが「Ｌ」レベルになった時点から内部クロックＫの有効エッジ（立ち上がり）が発生するか、または、アドレスバリッド信号ＡＤＶが再度「Ｌ」レベルから「Ｈ」レベルに変化するかどちらか早いタイミングにより保持され、アドレスラッチ１は、このシンクロナスリード開始クロックにより、初期アドレスとして外部から入力されたアドレスＡｎをラッチする。
次に、バーストカウンタ２は、アドレスラッチ１から入力されるアドレスＡｎにおいて、上位アドレスをメモリアクセスアドレスＲ１として、デコーダ４Ａへ出力する。
そして、デコーダ４Ｂは、入力されるメモリアクセスアドレスＲ１をデコードし、メモリアレイ４においてデータを出力するべきメモリ素子及び冗長メモリ素子を選択し、選択されたメモリ素子及び冗長メモリ素子各々は記憶しているデータを出力させる。
【００４９】
このメモリアレイ４から出力されるデータは、１ページ分、すなわち１２８bit(8ワード）分のメインメモリデータＲ２，及び冗長メモリデータＲ３として、センスアンプ４Ｂにより増幅され、センスラッチ回路８に出力される。
バーストカウンタ２がバースト用ＡＴＤ活性信号Ｒ６をＡＴＤ１０へ出力することにより、ＡＴＤ１０はセンスラッチ信号Ｒ４を、センスラッチ回路８へ出力する。
これにより、センスラッチ回路８は、入力されるメインメモリデータＲ２，及び冗長メモリデータＲ３をラッチして、バーストラッチ回路９へ出力する。
【００５０】
次に、バーストカウンタ２は、バースト用ＡＴＤ活性信号Ｒ６から、内部クロックＫに同期させてバーストラッチ信号Ｒ７を出力する。
そして、ラッチ２１は、上記バーストラッチ信号Ｒ７から、内部クロックＫ（６番目の内部クロックＫ）に同期させて、バーストラッチ保持信号Ｒ２０を出力する。
【００５１】
また、バーストカウンタ２は、６番目の内部クロックＫ（すなわち、周波数コンフィグレーションで予め設定された内部クロックＫの周期が７であるため、これより１内部クロックの周期分早いタイミング）において、バーストアドレスＲ１２のインクリメントを開始し、バーストアドレスＲ１２の値をＡ0からＡ1へとインクリメントする。
これにより、データセレクタラッチＲ１２には、Ａ0に対応したデータセレクタ信号Ｒ２５がアドレスデコーダ３から入力されることとなる。
そして、バーストラッチ回路９は、上記バーストラッチ保持信号Ｒ２０により、入力されるメインメモリデータＲ２及び冗長メモリデータＲ３をラッチする。
これにより、バーストデータＲ８がメインデータセレクタ５へ、また冗長データＲ９が冗長置換回路１１へ出力される。
【００５２】
このとき、データセレクタ保持信号Ｒ２１は、データＤ0を選択するＡ0となっており、内部クロックＫ（６番目の内部クロックＫ）に同期して、メインデータセレクタ５はメインデータＲ１３としてデータＤ0を冗長置換回路１１へ出力する。
また、データＤ0を出力したメモリ素子に不良メモリ素子が含まれている場合、８番目の内部クロックＫで出力されている様に、クロックデータＤ0の不良メモリ素子の情報を示す冗長一致保持信号Ｒ２２が、内部クロックＫ（６番目の内部クロックＫ）に同期して、冗長置換回路１１へ出力され、バーストラッチ回路９からはデータＤ0に対応する冗長データＲ９が冗長置換回路１１へ出力されている。
【００５３】
このとき、冗長置換回路１１は、上記冗長一致保持信号Ｒ２２が入力されない場合、データＤ0に不良メモリ素子のデータが無いと判定して、このデータＤ0をそのまま冗長置換データＲ１４として、マルチプレクサ１３へ出力する。
マルチプレクサ１３は、この図２におけるメモリプレーンがアクセスされていると、上記Ｄ0を出力ラッチ６へ出力する。
これにより、出力ラッチ６は、７番目の内部クロックＫに同期して、データＤ0をラッチし、出力バッファを介して、外部回路に対して出力データＲ１７として出力する。
【００５４】
また、７番目の内部クロックＫに同期して、データセレクタラッチ７はＡ1に対応したデータセレクタ信号Ｒ２５をラッチして、Ａ1に対応したデータセレクタ保持信号Ｒ２１をメインデータセレクタ５へ出力する。
これにより、メインデータセレクタ５は、Ａ1に対応したデータセレクタ保持信号Ｒ２１が入力されることにより、上記バーストデータＲ８からＡ1に対応するデータＤ1であるメインデータＲ１３を選択して、冗長置換回路１１へ出力する。
同様に、７番目の内部クロックＫに同期して、バーストカウンタ２は、バーストアドレスＲ１２をインクリメントして、Ａ1からＡ2へと出力を遷移させる。
【００５５】
上述したように、６クロック目の内部クロックＫの立ち上がり時点において、バーストアドレスＲ１２が変化し、メインデータセレクタ５にある８ワード（Ｄ0〜Ｄ8）における２ワード目（Ｄ1）を示し、またデータセレクタラッチ７は１ワード目（Ｄ0）を示すデータセレクタ保持信号Ｒ２１をラッチしているため、メインデータセレクタ５は１ワード目（Ｄ0）のデータを出力している。
次に、７クロック目の内部クロックの立ち上がりにおいて、バーストアドレスＲ１２が変化し、メインデータセレクタ５にある８ワード（Ｄ0〜Ｄ8）における３ワード目（Ｄ2）を示し、またデータセレクタラッチ７は２ワード目（Ｄ1）を示すデータセレクタ保持信号Ｒ２１をラッチしているため、メインデータセレクタ５は２ワード目（Ｄ1）のデータを出力しており、出力ラッチ６は１ワード目のデータを、ラッチデータＲ１６として保持しており、このラッチデータＲ１６が出力データＲ１７として出力バッファからパッドを介して出力される。
この後、８クロック目からも、順次、Ｄ1，Ｄ2，…と出力データが出力される。
【００５６】
初期状態において、バーストカウンタ２は、シンクロリードのモードであるため、内部のカウンタのカウント開始数として、入力されるアドレスの下位アドレスのデータを設定する。
そして、バーストカウンタ２は、シンクロナスリード開始クロックにより、メモリアレイ４がアクセスされ、所定のアクセス時間、すなわち内部クロックＫの６サイクル目（シンクロナスリード開始クロックから）の周期が経過する１内部クロックの周期分早いタイミング、すなわち６サイクル目の内部クロックＫの立ち上がりによりバーストアドレスＲ４のインクリメント（変化）を開始する。
すなわち、従来、予めデータを出力させるクロック数として定義したタイミング（周波数コンフィグレーションで予め設定された内部クロックＫの周期）に応じて、バーストアドレスのインクリメントを開始させていたが、本発明においては、出力するクロック数として設定したタイミングより１クロック分先にバーストアドレスのインクリメントを開始している。
【００５７】
上述した回路構成により、バーストアドレス及びデータの伝搬経路であった、バーストカウンタ２から出力ラッチ６まで、冗長置換の処理を含めて、従来１クロック以内で処理していたものを、１内部クロック分だけ従来に比較して早く出力し、バーストカウンタ２からアドレスデコーダ３までを１クロックの周期で行い、メインデータセレクタ５から出力ラッチ６までの処理を１クロックの周期で行うとして、バーストカウンタ２から出力ラッチ６までのバーストアドレス及びデータの伝達を２クロックで処理するとが可能となり、シンクロリードのアクセスタイムの向上の制限となっていたバーストアドレスの伝搬遅延の問題を解決することができる。
【００５８】
また、バーストカウンタ２が１クロック分バーストアドレスの変化を早めた分、周波数コンフィグレーションで予め設定された内部クロックＫの周期に対応させる、すなわち、設定された出力までのクロック数を調整する必要があり、メインデータセレクタ５に対するデータセレクタ保持信号Ｒ２１、及び冗長置換回路１１に対する冗長一致保持信号Ｒ２２を１クロック分だけ、出力ラッチ６からのデータ出力に対して１クロック遅らせる必要がある。
このため、アドレスデコーダ３とメインデータセレクタ５との間にデータセレクタラッチ７を介挿し、冗長判定回路１２と冗長置換回路１１との間に冗長ラッチ２２を介挿してある。
これにより、冗長置換回路１１においては、メインデータＲ１３として出力されているデータＤnに対応した冗長一致保持信号Ｒ２２が供給されることになる。
【００５９】
上述の本発明の一実施形態の説明において、半導体メモリの一例としてフラッシュメモリを例にとり説明したが、バースト読み出しの動作を行う他のダイナミックメモリ，マスクＲＯＭ（リードオンリィメモリ）などの半導体メモリに容易に適用することができる。
【図面の簡単な説明】
【００６０】
【図１】本発明の一実施形態によるフラッシュメモリの一構成例を示すブロック図である。
【図２】本発明の一実施形態によるフラッシュメモリの一構成例を示すブロック図である。
【図３】図１及び図２に示すフラッシュメモリの動作例を示すタイミングチャートである。
【図４】従来のフラッシュメモリの構成を示すブロック図である。
【図５】従来のフラッシュメモリの構成を示すブロック図である。
【図６】図４及び図５のフラッシュメモリの動作例を示すタイミングチャートである。（読み出しＯＫ；正常）
【図７】図４及び図５のフラッシュメモリの動作例を示すタイミングチャートである。（読み出しＮＧ；失敗）
【符号の説明】
【００６１】
１…アドレスラッチ
２…バーストカウンタ
３…アドレスデコーダ
４Ａ…デコーダ
４…メモリアレイ
４Ｂ…センスアンプ
５…メインデータセレクタ
６…出力ラッチ
７…データセレクタ信号ラッチ
８…センスラッチ回路
９…バーストラッチ回路
１０…ＡＴＤ
１１…冗長置換回路
１２…冗長判定回路
１３…マルチプレクサ
２１…ラッチ
２２…冗長ラッチ
【図１】
2005267783.tif 000003
【図２】
2005267783.tif 000004
【図３】
2005267783.tif 000005
【図４】
2005267783.tif 000006
【図５】
2005267783.tif 000007
【図６】
2005267783.tif 000008
【図７】
2005267783.tif 000009