(57)【特許請求の範囲】
【請求項１】
パイプライン化された同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）であって：
アドレス指定可能なメモリ素子を有するメモリコア；
アドレス入力ポートとデータ出力ポートとの間に定められた読み取りパスであり、前記メモリコアが当該読み取りパスに含まれ、当該読み取りパスは複数のパイプライン段を含み、該複数のパイプライン段の各々は、対応する非同期制御信号に応答するラッチを含む、読み取りパス；
前記複数のパイプライン段に結合された複数の遅延素子であり、当該複数の遅延素子の各々は前記非同期制御信号を提供するように構成され、前記非同期制御信号は、システムクロック信号の遅延バージョンを有し、当該複数の遅延素子の各々は、前記複数のパイプライン段のうちの自身に結合された１つ、の待ち時間に一致する待ち時間を有し、当該複数の遅延素子の各々は制御ロジック回路を有し、それにより前記複数のパイプライン段の各々が前記システムクロック信号と無関係に制御される、複数の遅延素子；
前記システムクロック信号に応答して遅延ロックループ（ＤＬＬ）クロック信号を提供するように構成されたＤＬＬ回路；及び
前記ＤＬＬクロック信号に応答してデータを出力するように構成されたデータ出力バッファ；
を有するＳＤＲＡＭ。
【請求項２】
前記非同期制御信号のうちの１つは、前記システムクロック信号のゲーティングされたバージョンである、請求項１に記載のＳＤＲＡＭ。
【請求項３】
前記複数の遅延素子のうちの１つは、前記複数の遅延素子のうちの前の１つから提供される前記非同期制御信号として前記システムクロック信号の前記遅延バージョンをゲーティングするように構成される、請求項２に記載のＳＤＲＡＭ。
【請求項４】
パイプライン化されたダブルデータレート型の同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）であって：
アドレス指定可能なメモリ素子を有するメモリコア；
アドレス入力ポートとデータ出力ポートとの間に定められた、データ出力バッファを有する読み取りパスであり、前記メモリコアが当該読み取りパスに含まれ、当該読み取りパスは複数のパイプライン段を含み、該複数のパイプライン段の各々は、対応する非同期制御信号に応答するラッチを含む、読み取りパス；
前記複数のパイプライン段に結合された複数の遅延素子であり、当該複数の遅延素子の各々は前記非同期制御信号を提供するように構成され、前記非同期制御信号は、システムクロック信号の遅延バージョンを有し、当該複数の遅延素子の各々は、前記複数のパイプライン段のうちの自身に結合された１つ、の待ち時間に一致する待ち時間を有し、当該複数の遅延素子の各々は制御ロジック回路を有し、それにより前記複数のパイプライン段の各々が前記システムクロック信号と無関係に制御される、複数の遅延素子；及び
前記システムクロック信号に応答して遅延ロックループ（ＤＬＬ）クロック信号を前記データ出力バッファに提供する出力を有するＤＬＬ回路；
を有し、
前記データ出力バッファは、前記ＤＬＬクロック信号に応答してデータを出力するように構成される、
ＳＤＲＡＭ。
【請求項５】
パイプライン化されたダブルデータレート型の同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）であって：
アドレス指定可能なメモリ素子を有するメモリコア；
アドレス入力ポートとデータ出力ポートとの間に定められた、少なくとも１つのデータ出力バッファを有する読み取りパスであり、前記メモリコアが当該読み取りパスに含まれ、当該読み取りパスは複数のパイプライン段を含み、該複数のパイプライン段の各々は、対応する非同期制御信号に応答するラッチを含む、読み取りパス；
前記複数のパイプライン段に結合された複数の遅延素子であり、当該複数の遅延素子の各々は前記非同期制御信号を提供するように構成され、前記非同期制御信号は、システムクロック信号の遅延バージョンを有し、当該複数の遅延素子の各々は制御ロジック回路を有し、それにより前記複数のパイプライン段の各々が前記システムクロック信号と無関係に制御される、複数の遅延素子；及び
前記システムクロック信号に応答して遅延ロックループ（ＤＬＬ）クロック信号を前記データ出力バッファに提供する出力を有するＤＬＬ回路；
を有し、
前記データ出力バッファは、前記ＤＬＬクロック信号に応答してデータを出力するように構成される、
ＳＤＲＡＭ。
【請求項６】
前記遅延素子の各々が有する前記制御ロジック回路は、対応する制御信号に応答する、請求項５に記載のＳＤＲＡＭ。
【請求項７】
ダブルデータレート型の同期型ダイナミックランダムアクセスメモリであって：
アドレス指定可能なメモリ素子を有するメモリコア；
アドレス入力ポートとデータ出力ポートとの間に定められた読み取りパスであり、当該読み取りパスは前記メモリコア、データ出力バッファ及び複数のパイプライン段を含み、前記データ出力バッファは、クロック信号を提供するように構成された遅延ロックループ（ＤＬＬ）回路に結合され、前記データ出力バッファは前記クロック信号の立ち上がりエッジ及び立ち下がりエッジに応答してデータを出力し、前記複数のパイプライン段の各々は、対応する非同期制御信号に応答するラッチを含む、読み取りパス；及び
前記複数のパイプライン段に結合された複数の遅延素子であり、当該複数の遅延素子の各々は前記非同期制御信号を提供するように構成され、前記非同期制御信号は、システムクロック信号の遅延バージョンを有し、当該遅延素子の各々は制御ロジック回路を有し、当該遅延素子の各々の前記制御ロジック回路は対応する制御信号に応答し、それにより前記複数のパイプライン段の各々が前記システムクロック信号と無関係に制御される、複数の遅延素子；
を有し、
前記ＤＬＬ回路は、前記システムクロック信号に応答して前記クロック信号を提供するように構成される、
同期型ダイナミックランダムアクセスメモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリ、より詳しくはダイナミックランダムアクセスメモリのパイプライン型データアクセスに関する。
【背景技術】
【０００２】
従来の非パイプラインダイナミックランダムアクセスメモリ（ＤＲＡＭ）では、メモリへのあるいはメモリからのデータ転送は順次実行される。すなわち、読み取りまたは書き込み命令の一方が受信され、アドレスが利用可能になったとき、他の命令がメモリによって受け入れられる前に、読み取りまたは書き込み命令によるデータ転送が全体として実行される。この結果、後続の命令は、現在のデータ転送が完了する時間だけ遅延される。
【０００３】
歴史的に、ＤＲＡＭはプロセッサによって非同期に制御されてきた。これは、プロセッサがアドレスをＤＲＡＭ入力に置き、ローアドレス選択信号（／ＲＡＳ）およびカラムアドレス選択信号（／ＣＡＳ）ピンを用いてアドレスをストローブすることを意味する。アドレスは、必要な最小時間の長さの間保持される。この間、ＤＲＡＭはメモリ内のアドレスされた位置にアクセスし、最大の遅延（アクセスタイム）後に、プロセッサからの新しいデータをメモリに書き込むか、あるいはプロセッサが読めるように出力にメモリからのデータを供給する。
【０００４】
この間、プロセッサは、ＤＲＡＭがラインのプリチャージ、アドレスのデコードおよび同様の種々の内部機能を実行するのを待たなければならない。この結果「待ち状態」が生じ、この間、より高速のプロセッサはＤＲＡＭが応答するのを待たなければならず、これによってシステム全体の速度が遅くなる。
【０００５】
この問題に対する１つの解決方法はメモリ回路を同期化する、すなわちデータを保持できるＤＲＡＭに入出力ラッチを加えることである。入力ラッチは、アドレス、データおよび制御信号をＤＲＡＭの入力で記憶することができ、他のタスクのためにプロセッサを解放する。プリセットされた数のクロックサイクルの後に、読み取り用同期制御によってデータはＤＲＡＭの出力ラッチで利用可能になり、あるいは書き込み動作のためにメモリに書き込むことができる。
【０００６】
同期制御は、ＤＲＡＭが、システムクロックの制御の下にプロセッサとＤＲＡＭそれ自体との間に転送された情報をラッチすることを意味する。このように、同期式ＤＲＡＭの利点は、システムクロックが、メモリに設けなければならない唯一のタイミングエッジであることである。これによって、プリント回路基板周囲の多数のタイミングストロボの伝搬が低減あるいは除去される。
【０００７】
代わりに、ＤＲＡＭは非同期にすることが可能である。例えば、ローアドレスからデータアクセスまで６０ｎｓの遅延を有するＤＲＡＭが１０ｎｓクロックを有するシステムで使用されるとすれば、プロセッサはローアドレスを加え、そして（／ＲＡＳ）ピンでそれをストローブしている間、それを保持しなければならない。３０ｎｓ後に、これにカラムアドレスが続き、このアドレスを有効に保持し、そして（／ＣＡＳ）ピンによってストローブしなければならない。次に、プロセッサは、３０ｎｓ後にデータが出力に現われ、安定し、そして読み取られるのを待たなければならない。
【０００８】
他方、同期インタフェースによれば、プロセッサは、ローおよびカラムアドレス（および制御信号）を入力ラッチにロックし、そしてシステムクロックの制御の下でＤＲＡＭが読み取り動作を実行するのを待つ間に、他のタスクを実行することができる。ＤＲＡＭの出力が６サイクル（６０ｎｓ）後にクロックされる時、所望のデータは出力ラッチ内にある。
【０００９】
また同期式ＤＲＡＭアーキテクチャは、アドレスをパイプライン化することによってＤＲＡＭの平均アクセスタイムを速めることも可能である。この場合、ＤＲＡＭが以前のアドレスで操作している間に、プロセッサは次のアドレスを記憶するために入力ラッチを使用することが可能である。通常、アクセスすべきアドレスは、複数サイクル先行してプロセッサによって知られる。したがって、プロセッサはＤＲＡＭの入力アドレスラッチに第２のアドレスを送ることができ、このアドレスは、第１のアドレスがＤＲＡＭの次の処理段に移動するとすぐに利用可能である。これによって、ＤＲＡＭへの次のアクセスを開始する前にプロセッサが１完全アクセスサイクル待つ必要がなくなる。
【００１０】
３段カラムアドレスパイプラインの例がＦＩＧ．１Ａの概略図に示されている。カラムアドレスから出力への部分は３段パイプラインである。アドレスバッファは第１のラッチである。カラムスイッチは第２のラッチであり、そして出力バッファは第３のラッチである。したがって、カラムアクセスタイム固有の待ち時間はこれらの３つの段の間に分割される。
【００１１】
パイプラインされる読み取りの動作は、次のように説明することが可能である。カラムアドレス（Ａ１）は１つのクロックサイクルでアドレスバッファ内にクロックされ、そしてデコードされる。第２のクロックサイクルで、カラムスイッチは対応するデータ（Ｄ１）をセンス増幅器から読み取りバスに転送し、そしてカラムアドレス（Ａ２）はアドレスバッファ内にクロックされる。第３のクロックでは、データ（Ｄ１）は出力バッファ内にクロックされ、（Ｄ２）は読み取りバスに転送され、そしてＡ３はカラムアドレスバッファ内にクロックされる。Ｄ１が出力に現われる時、Ｄ２とＤ３はＤ１の後ろのパイプラインにある。本発明の技術をより詳細に説明するために、Ｂｅｔｔｙ  Ｐｒｉｎｃｅによる「Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ  Ｍｅｍｏｒｉｅｓ」なる表題の本が参照される。
【００１２】
ＳＤＲＡＭ内の／ＣＡＳのラッチとデータバスのアベイラビリティとの間のクロックサイクルの数の遅延は、ＳＤＲＡＭの「ＣＡＳ待ち時間」である。出力データが、カラムアドレスの到着に続くクロックの第２の前縁によって利用可能であるならば、装置は、２のＣＡＳ待ち時間を有すると説明される。同様に、データが第１の読み取り命令の到着に続くクロックの第３の前縁で利用可能であるならば、装置は、３の「ＣＡＳ待ち時間」を有すると認識される。
【００１３】
同期式ＤＲＡＭ（ＳＤＲＡＭ）にはプログラム可能なＣＡＳ待ち時間がある。上述のように、クロックレート（ＣＬＫ）に関係なく、ＣＡＳ待ち時間は、読み取り命令が開始された後、どのクロックエッジでサイクルデータが利用可能であるかを決定する。プログラム可能なＣＡＳ待ち時間により、ＣＡＳ待ち時間に影響を与えることなく、異なったシステムクロック周波数を有する異なったメモリシステムにおけるＳＤＲＡＭの効率的な利用が可能になる。
【００１４】
ＳＤＲＡＭデータパスを待ち時間段に分割する他の方法がある。ウェーブパイプラインがＦＩＧ．１Ｂに概略的に示されている。通常のクロック式パイプラインは、読み取り待ち時間が、パイプライン段の数を乗算した最も低速のパイプライン段の遅延（すなわち最長の遅延）に等しくなるという不都合を有する。読み取り待ち時間に影響を与えることなくより長いパイプライン段に適応可能であるように、調整されたクロックを有するクロック式パイプラインは、各パイプライン段に調整済みのクロック信号を使用する。より長いパイプライン段は、パイプライン段を開始するクロックよりも遅延されるクロックで終了される。より短いパイプライン段は、パイプライン段を終了するクロックよりも遅延されるクロックで開始される。この方法の不都合は、チップによってサポートされる各ＣＡＳ待ち時間に対してクロックの異なった調整が必要とされることである。また、アーキテクチャの変更は待ち時間段の分割に大きな影響を及ぼす可能性があり、設計者は、待ち時間段の新しい分割を適応させるためにすべてのクロックの再調整を必要とする。
【００１５】
さらに、余分の待ち時間またはチップ領域を加えることなく、待ち時間段を挿入することができる位置の数が制限される。多数の待ち時間段には、段を通して伝播する信号に必要とされる時間についてすべての待ち時間段が等しいわけではないという点で、不利益がある。他の厄介な問題は、チップが動作するようにプログラミングされるＣＡＳ待ち時間に応じて待ち時間段をイネーブルまたはディスエーブルする必要があるという点である。
【００１６】
ＦＩＧ．１Ｂのウェーブパイプラインでは、読み取りデータパス全体を通してデータのパルスが走る。ウェーブパイプラインは理想的なデータパスの長さに依存し、すなわち、すべてのデータパスが等しいと仮定する。しかし、メモリアレイのあるメモリセルから検索されたデータは、他のメモリセルから検索されたデータよりも本来的に速い。これは、主として、読み込みおよび読み出しデータパスの両方に関するメモリセルの物理的位置のためである。このように、チップから出力される前にデータを再同期しなければならない。このデータパススキューは、ウェーブパイプライン装置で検索されたデータを確実に再同期することを難しくする。
【００１７】
アドレス信号が、メモリアクセスタイムを超える１サイクルタイムを有するデータパスに加えられるならば、メモリから読み取られるデータはメモリコアの固有の遅延の間出力されない。換言すれば、ウェーブパイプライン技術では、メモリコア部分のクリティカルパスよりも短い期間がアドレス入力信号に加えられる。
【００１８】
さらに、低速クロックを有するＦＩＧ．２ＡとＦＩＧ．２Ｂに例示したように、データが必要になるまでウェーブパイプラインの出力データを記憶する必要がある。
【特許文献１】米国特許第５，６５５，１０５号明細書
【特許文献２】米国特許第５，８３５，４４３号明細書
【特許文献３】米国特許第６，０１４，３３９号明細書
【特許文献４】米国特許第６，５３９，４５４号明細書
【特許文献５】米国特許第５，２９４，８４２号明細書
【特許文献６】米国特許第６，０７８，５４６号明細書
【特許文献７】米国特許第４，６５８，３５４号明細書
【特許文献８】米国特許第５，２７２，３９０号明細書
【特許文献９】米国特許第５，４０２，３８８号明細書
【特許文献１０】米国特許第５，５４４，１２４号明細書
【特許文献１１】米国特許第５，５５０，７８４号明細書
【特許文献１２】米国特許第５，５７９，２６７号明細書
【特許文献１３】米国特許第５，７０３，８１５号明細書
【特許文献１４】米国特許第５，７１３，００５号明細書
【特許文献１５】米国特許第５，７８４，７０５号明細書
【特許文献１６】米国特許第５，６６６，４８０号明細書
【特許文献１７】米国特許第ＲＥ３５，９３４号明細書
【特許文献１８】米国特許第７，５０９，４６９Ｂ２号明細書
【特許文献１９】米国特許第５，７８１，４９９号明細書
【特許文献２０】米国特許第５，８２２，２５５号明細書
【特許文献２１】米国特許第５，９７８，８８４号明細書
【特許文献２２】米国特許第５，９９９，２５８号明細書
【特許文献２３】米国特許第５，７９６，６７３号明細書
【特許文献２４】欧州特許第０７０４８４８Ａ２号明細書
【特許文献２５】特開平２−００３１７７号明細書
【特許文献２６】特開平８−０９６５７３号明細書
【特許文献２７】特開平９−０９１９５５号明細書
【特許文献２８】特開平９−１３９０７６号明細書
【特許文献２９】特開平１０−０５５６６８号明細書
【特許文献３０】特開平１０−１８８５５６号明細書
【特許文献３１】特開平１１−１７６１５８号明細書
【特許文献３２】米国特許第５，８１２，４８９号明細書
【特許文献３３】特開平９−２６５７７７号明細書
【特許文献３４】米国特許第５，６３１，８７１号明細書
【特許文献３５】米国特許第５，７０３，８３０号明細書
【特許文献３６】米国特許第５，４１２，６１５号明細書
【特許文献３７】特開平７−３２６１９０号明細書
【非特許文献１】Ｍｅｈｒｄａｄ  Ｈｅｓｈａｍｉ，ｅｔ  ａｌ．，“Ａ  ２５０−ＭＨｚ  Ｓｋｅｗｅｄ−Ｃｌｏｃｋ  Ｐｉｐｅｌｉｎｅｄ  Ｄａｔａ  Ｂｕｆｆｅｒ，”ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ，３１（３）：３７６−３８３（Ｍａｒｃｈ  １９９８）．
【非特許文献２】Ｂｏｅｍｏ，Ｅ．Ｉ．，ｅｔ  ａｌ．，“Ｔｈｅ  Ｗａｖｅ  Ｐｉｐｅｌｉｎｅ  Ｅｆｆｅｃｔ  ｏｎ  ＬＵＴ−Ｂａｓｅｄ  ＦＰＧＡ  Ａｒｃｈｉｔｅｃｔｕｒｅｓ，”Ｅ．Ｔ．Ｓ．Ｉ．Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ，２８７４０Ｃｉｕｄａｄ  Ｕｎｉｖｅｒｓｉｔａｒｉａ，Ｍａｄｒｉｄ，  Ｓｐａｉｎ（ｄａｔｅ  ｏｆ  ｐｕｂｌｉｃａｔｉｏｎ  ｎｏｔ  ａｖａｉｌａｂｌｅ）（６ｐｐ）．
【非特許文献３】ＪＤＥＣ  Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｓｓｏｃｉａｔｉｏｎ，  “ＪＤＥＣ  Ｓｔａｎｄａｒｄ：  ＤＤＲ２  ＳＤＲＡＭ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ，”  ＪＥＳＤ７９−２Ｅ（Ｒｅｖｉｓｉｏｎ  ｏｆ  ＪＥＳＤ７９−２Ｄ），  Ａｐｒｉｌ  ２００８．
【非特許文献４】Ｔａｋａｉ，  Ｙ．，  ｅｔ  ａｌ．，  “２５０Ｍｂｙｔｅ／ｓ  Ｓｙｎｃｈｒｏｎｏｕｓ  ＤＲＡＭ  Ｕｓｉｎｇ  ａ  ３−Ｓｔａｇｅ  Ｐｉｐｅｌｉｎｅｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ，”  ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ，  ２９（４）：  ４２６−４３１  （Ａｐｒｉｌ  １９９４）．
【発明の概要】
【発明が解決しようとする課題】
【００１９】
このように、本発明は、現在の技術に関して説明した種々の不都合の少なくともあるものを緩和することを追求する。
【課題を解決するための手段】
【００２０】
本発明によれば、（ａ）メモリコアと、（ｂ）アドレス入力ポートとＩ／Ｏデータポートとの間に定められた読み取りパスと、（ｃ）各段が複数の非同期制御信号の対応する１つによって制御される、前記読み取りパスに配置された複数のパイプライン段と、（ｄ）前記非同期制御信号を発生するためのタイミング遅延素子と、（ｅ）前記段の各々でデータをラッチするために、前記非同期制御信号に応答する前記複数のパイプライン段の各々に結合されるラッチであって、前記データが、前記システムクロックと無関係に各パイプライン段にラッチされる、ラッチと、を備えるパイプライン型ＳＤＲＡＭが提供される。
【００２１】
本発明のさらなる面に従って、非同期制御信号はチップ内に生成され、そして異なった待ち時間段に最適化される。
【００２２】
本発明のさらなる面は、システムクロックに無関係の段を提供し、これによって、適切な再同期出力によって支援することが可能な任意の／ＣＡＳ待ち時間において読み取りデータパスの実行が可能になる。
【００２３】
本発明のさらなる面は、出力データをシステムクロックに同期させるための読み取りデータパスの端部に結合された同期回路を提供する。
【図面の簡単な説明】
【００２４】
本発明のより良い理解が、次の図面と関連して以下の詳細な説明を参考にして得られるであろう。
【図１】ＦＩＧ．１Ａは、従来のクロック式パイプライン型メモリ回路の概略図である。ＦＩＧ．１Ｂは、従来のウェーブパイプライン型メモリ回路の概略図である。
【図２】ＦＩＧ．２Ａ及びＦＩＧ．２Ｂは、それぞれ高速および低速クロック状態の下で走るＣＡＳ待ち時間＝３のＳＤＲＡＭのタイミング波形である。
【図３】ＦＩＧ．３は、本発明の一般化した実施形態の概略図である。
【図４】ＦＩＧ．４は、ＦＩＧ．３の一般化した実施形態のより詳細な概略図である。
【図５】ＦＩＧ．５は、本発明の第１の実施形態によるタイミング波形図である。
【図６】ＦＩＧ．６Ａ及び６Ａ’は、本発明の実施形態によるパイプ制御回路の詳細な回路図である。
【図７】ＦＩＧ．６Ａ”は、本発明の実施形態によるパイプ制御回路の詳細な回路図である。
【図８】ＦＩＧ．６Ｂは、本発明の実施形態によるパイプ制御回路の詳細な回路図である。
【図９】ＦＩＧ．６Ｃは、本発明の実施形態によるパイプ制御回路の詳細な回路図である。
【図１０】ＦＩＧ．７Ａは、本発明の実施形態によるパイプラッチとデータ出力ラッチの詳細な回路図である。
【図１１】ＦＩＧ．７Ｂは、本発明の実施形態によるパイプラッチとデータ出力ラッチの詳細な回路図である。
【図１２】ＦＩＧ．７Ｃは、本発明の実施形態によるパイプラッチとデータ出力ラッチの詳細な回路図である。
【図１３】ＦＩＧ．８は、本発明の実施形態によるデータ出力制御回路の概略図である。
【発明を実施するための形態】
【００２５】
次の説明では、同様の数字は図の同様の要素を指し、そしてローにアサートした信号は対応する信号名に関連して、互いに置き換え可能なｘまたは上線によって示される。次にＦＩＧ．３を参照すると、本発明の一般化した実施形態によるパイプライン型半導体メモリの概略図が概して数字２０によって示されている。メモリは、アドレス入力ポート２５とデータ出力３２との間に画定された、読み取りパス２４を有するコアメモリアレイ２２を含む。読み取りパス２４は複数の待ち時間段２７に分解され、その各々はそれぞれの非同期制御信号２８によってラッチされる。同期回路３０は、読み取りパスの出力３２のシステムクロックＣＬＫにデータを再同期するために、読み取りパスの最後の待ち時間段に結合される。データは、アドレス入力２５にアドレス信号Ａを加えた後、所定数のクロックサイクルで、すなわちシステムのＣＡＳ待ち時間に応じて、システムクロックＣＬＫに同期される。各段がそれぞれの制御信号２８によって制御される３つの主な待ち時間段への読み取りパス２４の分割は、一般的に、本発明による非同期パイプライン装置を達成するためのクロック式およびウェーブパイプライン技術の組合わせを例示し、前記装置は従来のウェーブパイプラインよりも小さなスキューを示すが、クロック式パイプライン装置に必要とされるような各段の個々のクロックを調整する必要なしに、任意のＣＡＳ待ち時間による動作を可能にする。ＦＩＧ．３に関する説明は、以下に説明する詳細な回路の概略を示すために役立つ。
【００２６】
ＦＩＧ．４Ａ及び４Ｂを参照すると、ＦＩＧ．３の一般化した実施形態の詳細な概略図が数字４０によって示されている。ＦＩＧ．３の待ち時間段２７は、アドレス入力ポート２５でアドレス信号Ａｉを受信するためのアドレス入力ラッチ４２を含み、その出力はアドレスプリデコーダラッチ４４に結合され、次にこのラッチはカラムアドレスデコーダラッチ４６に接続される。カラムアドレスデコーダラッチ４６はアドレス信号をデコードし、そしてメモリセルアレイ２２の選択メモリセル４８に結合される。カラムアドレスデコーダ４６は、選択メモリセル４８から読み出されたデータを検出するために関連のセンス増幅器（図示せず）を作動する。センス増幅器の出力はローカルデータバスＤＢを介して本実施形態では３２ビット幅の読み取りメイン増幅器ブロック５０に結合される。読み取りメイン増幅器５０の出力はグローバルデータバスＧＤＢに結合される。マルチプレクサ５２は、ＧＤＢをＩ／ＯデータバスＩＯＤＢの上にマルチプレクスし、次にＩＯＤＢは読み取りデータバス増幅器ＲＤＢＡＭＰラッチブロック５４に結合される。
【００２７】
ＦＩＧ．３の同期回路３０は、図４（ＦＩＧ．４Ａ及び４Ｂ）に示すパイプラッチ５６と、出力バッファ５８と、ブロック６１によって示した制御回路とから構成される。より詳しくは、ＲＤＢＡＭＰラッチからの出力は、以下に説明するように、３つのパイプ＿ラッチ、パイプ＿ラッチ０、パイプ＿ラッチ１およびパイプ＿ラッチ２の入力に選択的に結合される。パイプラッチからの出力は一緒に接続され、そして出力バッファ５８の入力に結合される。
【００２８】
またメモリは、ＦＩＧ．４に示すようにシステムクロックＣＬＫに結合されたクロック入力端子と、／ＲＡＳ、／ＣＡＳ、／ＣＳのような命令信号を受信するための命令入力端子とを有する命令ラッチ回路６２を含む。命令ラッチ６２は第１の制御信号６３を供給し、この信号は一連の制御ロジックと遅延素子Ｔ１からＴ４とを通して実行される。遅延素子Ｔ１、Ｔ２、Ｔ３、Ｔ４の各々はそれぞれの遅延制御信号を生成し、これらの信号は、プリデコーダラッチ４４、Ｙデコーダ４６、ＲＭＡ５０およびＲＤＢＡＭＰラッチ５４の入力ラッチ端子にそれぞれ送られる。これらの信号は、これらの回路用の個々の非同期制御信号として機能する。他方、アドレスラッチ４２のクロック入力はシステムクロック信号ＣＬＫから直接導かれる。
【００２９】
ＦＩＧ．４に示す複数のパイプラッチ、パイプ＿ラッチ０、パイプ＿ラッチ１およびパイプ＿ラッチ２の制御は、パイプラッチ制御回路６１によって行われる。各パイプラッチは、そのラッチ入力イネーブル端子に結合されたそれぞれのパイプラッチイネーブル信号、ラッチ＿ｅｎｘ（０）、ラッチ＿ｅｎｘ（１）およびラッチ＿ｅｎｘ（２）によって駆動される。パイプラッチイネーブル信号は、３つのカウント信号ＣＯＵＮＴを生成するパイプカウンタ６４（ＦＩＧ．４）から導かれる。パイプカウンタは、パイプラッチの総数に基づきそのカウントをリセットするフリーランニングカウンタである。システムクロックによって設定されたクロックカウントのプリセット数の後に、信号がパイプカウンタのクロック入力端子に結合される。パイプカウンタから出力されたＣＯＵＮＴ信号は、カウント遅延素子６６を介してカウント同期ラッチ６８（ＦＩＧ．４）に結合される。ラッチ６８からの３つの出力は、適切なパイプラッチ５６をクロックするためのパイプラッチイネーブル信号を供給する。ラッチ６８のクロック入力イネーブル端子は、読み取りパスの待ち時間段の非同期制御信号に結合され、この場合、パイプラッチを確実に動作させるためのＲＤＢＡＭＰ５４の信号ＩＯＤＢ＿ＲＥＡＤＸが適切な時間にラッチされる。
【００３０】
代わりに、データＩＯＤＢ＿ＲＥＡＤＸとラッチ６８のＣＮＴ＿ＤＥＬ信号とのより正確な同期を次のように達成することができる。
【００３１】
カウント遅延回路６６はマルチ遅延段に分割することができ、前記各段はＹＳＧまたはＹＥＸＴＲＤのような制御ロジックイネーブル信号を受信する。したがって、アドレス伝搬およびデータ検索とクロックカウント遅延との間のタイミング関係は、より密接に整合されるであろう。
【００３２】
さらに、ＦＩＧ．４に示すようにパイプカウンタ６４から出力されたＣＯＵＮＴは、パイプラッチ出力イネーブル信号ＱＥＮ＿ＲＩＳＥＸを生成するためのパイプ遅延素子７０に接続され、この素子はパイプラッチ５６のそれぞれの出力イネーブル端子に接続されている。ＤＬＬにより生成され、そしてシステムクロックＣＬＫをわずかにリードするＣＬＫ＿ＩＯ信号は、パイプ遅延と出力バッファ５８の出力イネーブル端子に結合される。ＤＬＬ（遅延ロックループ）は、ＣＬＫ＿ＩＯが出力バッファをイネーブルし、データをシステムクロックエッジに適切に同期させるように保証する。
【００３３】
回路の動作は、ＦＩＧ．５に示したタイミング図を参考にして次のように説明される。システムクロック信号ＣＬＫの時間ｔ０で、アドレスラッチ４２は外部アドレス信号Ａｉをラッチし、信号Ａｉは次にプリデコーダラッチ４４に伝搬することができ、このラッチ４４は、遅延素子Ｔ１によって設定された遅延Ｔ１の後にアドレスをラッチする。これらのアドレス信号は、Ｔ１とＴ２分ＣＬＫから遅れている信号ＹＳＧによってＹデコーダ４６でラッチされデコードされる。この時、適切なカラムが作動され、そしてデータがメモリセル４８からカラムセンス増幅器に読み出され、次に、Ｔ１＋Ｔ２＋Ｔ３分ＣＬＫから遅延されるＩＯＲＥＡＤ信号によってＲＭＡ５０にラッチされる。その後すぐに、データはグローバルデータバスＧＤＢで利用可能である。ＲＤＢＡＭＰ５４は、ＤＯＵＴＥ信号を供給するために、時間ｔ１で、Ｔ４分ＩＯＲＥＡＤから遅れた信号ＩＯＤＢ＿ＲＥＡＤによってラッチすることが可能である。
【００３４】
一般的に上述のように、これらの非同期制御信号はパイプライン段を制御するために使用される。これらの信号は、データがラッチ（通常ラッチ増幅器）に読み取られる時を制御する。ラッチに読み取られると、データは次の段に向かって伝搬することができる。各制御信号は、前の待ち時間段からの制御信号を遅延することによって生成される。第１段は外部クロックＣＬＫによって開始される。次の段は、前の段からのデータを外部クロックから遅れた制御信号でラッチする。これらの遅延のうちのあるものは、読み取りが行われるべきかを制御するために使用される回路に固有のものであり、またあるものはタイミング遅延素子を使用して慎重に加えられるものであることが指摘できよう。これらの素子は、遅く動作するように設計され、そして追加の抵抗または容量素子を含むことが可能であるバッファから通常構成される。
【００３５】
Ｔ１からＴ４の遅延は、外部クロックタイミングと無関係の特定のメモリに最適化することができる。これらのラッチの各々のための遅延は、これらのブロックの間の伝搬遅延に適応させるように選択される。このように、読み取りメイン増幅器ラッチに加えられるクロック信号は同期され、そしてメモリアレイ２２の異なった領域から読み取りメイン増幅器５０までのデータを検索する際の遅れに適応させるために、カラムデコーダラッチに加えられるクロック信号から遅延される。
【００３６】
時間ｔ１にＲＤＢＡＭＰ５４に一旦ラッチされたデータは、従来のウェーブパイプラインと同じように、メモリの出力３２でシステムクロックＣＬＫに再同期しなければならない。これは次のように達成される。パイプラッチ５６は、高速データまたは低速クロックの場合にデータの記憶を可能にする。一般的に、必要とされるラッチの数は支援すべき待ち時間段の数と等しい。読み取りが実行される毎に、ＣＯＵＮＴ信号（１つがＦＩＧ．５に示されている）は、カウント遅延素子６６によって非同期に遅延され、そして最後の段、この場合／ＩＯＤＢ＿ＲＥＡＤ用の制御信号によってクロック同期ラッチ６８にクロックされる。この時間遅延されたＣＯＵＮＴ信号は、ＲＤＢＡＭＰ５４からのデータをラッチ５６のどのラッチに記憶すべきかを決定する／ＬＡＴＣＨ＿ＥＮＸを生成する。さらに、ＣＯＵＮＴ信号もまた、チップがプログラミングされる現在のＣＡＳ待ち時間によって決定されるような適切な数のクロックサイクル分遅延される。ＦＩＧ．５の／ＱＥＮ＿ＲＩＳＥとして示したようなこのクロック遅延されたＣＯＵＮＴ信号は、ラッチ５６のいずれが、データを出力バッファ５８に出力するようにその出力をイネーブルするかを制御する。ＣＯＵＮＴが設定されると、カウント遅延回路６６による遅延の後に、ＣＮＴ＿ＤＥＬ信号が発生され、この信号はクロック同期ラッチ６８内でＩＯＤＢ＿ＲＥＡＤＸ信号と結合されてＬＡＴＣＨ＿ＥＮＸ信号を生成する。ＱＥＮ＿ＲＩＳＥＸに対するパイプ遅延回路の所定のクロック遅延がアサートされた後、ラッチからの出力が適切なクロックサイクルについてのデータを含むようになる。ラッチ５６はＦＩＦＯレジスタとして機能し、ラッチ５６の組の１つへの第１のデータ入力は、ラッチの組から出力される第１のデータである。
【００３７】
上記の説明から、読み取りパスのラッチがパスを非同期パイプラインの待ち時間段に分割することがわかる。チップアーキテクチャと最大動作周波数はこれらの段の数と配置とを決定する。一般的に、より高い動作周波数は多数のより短いパイプライン段を必要とする。段のデータパスの数を２倍にする、およびデータパスの間で交互に替えるなどの他の技術を使用することができる。例えば、センス増幅器からの読み取り出力は２つのデータバスの間で交互に替えられる。これはＭｏｓａｉｄの特許第５，４１６，７４３号に開示されている。段の配置は、概して増幅器またはバッファの位置によって指定され、この位置は、広範囲領域の不利益を生じることなくラッチに転換することが可能である。分かりやすくするため、前のおよび次の説明では、待ち時間段は、信号またはデータパスの遅延を導入する能力を有する任意の回路素子を指す。
【００３８】
次にＦＩＧ．６からＦＩＧ．８を参照すると、ＦＩＧ．４の一般化した実施例の詳細な形態が示されている。
【００３９】
ＦＩＧ．６Ａ〜６Ａ’’を参照する。ＦＩＧ．６Ａ’〜６Ａ’’はＦＩＧ．６Ａの配置図に示すように配置されることにより１つの回路図を形成する。ＦＩＧ．６Ａ’のカウント遅延９２、９４はＦＩＧ．４のカウント遅延６６に対応する。ＦＩＧ．６Ａ’’のパイプ遅延０〜２は、ＦＩＧ．４のパイプ遅延７０に対応する。ＦＩＧ．６Ａ’’のパイプカウンタ９０、クロック遅延、カウントデコーダ１０２は、ＦＩＧ．４のパイプカウンタ６４に対応する。
【００４０】
ＦＩＧ．４のパイプ制御回路６１はＦＩＧ．６Ａ’’のパイプカウンタ９０（この詳細な概略図がＦＩＧ．６Ｂに示されている）を含み、パイプカウンタ９０はそのクロック入力端子ＣＬＫの入力システムクロック周波数によって決定される２桁の２進カウント、ＣＯＵＮＴ０とＣＯＵＮＴ１とを生成する。カウントラインの各々、ＣＯＵＮＴ１とＣＯＵＮＴ０はそれぞれのカウント遅延素子９２と９４に接続している（ＦＩＧ．６Ａ’）。遅延カウント信号は、ＦＩＧ．６Ａ’に示す３つのカウント遅延ライン９８、ＣＮＴ０＿ＤＥＬ、ＣＮＴ１＿ＤＥＬ、ＣＮＴ２＿ＤＥＬの１つを作動するために入力２進カウントをデコードするカウントデコーダ９６に接続している。これらの遅延カウントライン９８の信号はＦＩＧ．５に示したようにＣＯＵＮＴ信号に対応する。ＦＩＧ．５では、すべての要素は、３つのパイプラッチは例外として、単純化のために３つのコンポーネントの１つのみと共に示している。遅延ＣＯＵＮＴ信号９８はそれぞれのクロックラッチ１００の入力に結合され、その出力はバッファされ、そしてＦＩＧ．５に参照されるそれぞれのラッチイネーブル信号、ＬＡＴＣＨ＿ＥＮＸ（０）、ＬＡＴＣＨ＿ＥＮＸ（１）、ＬＡＴＣＨ＿ＥＮ（２）を供給する。これらのラッチ１００のクロック入力端子は、インバータを介して最後の待ち時間段からの／ＩＯＤＢ＿ＲＥＡＤ非同期制御信号に結合される。
【００４１】
ＦＩＧ．６Ａ’’に示すように、パイプカウンタ９０もまた、出力が第２のデコーダ１０２に接続され、同様にそれぞれのカウント信号ＣＮＴ０、ＣＮＴ１、ＣＮＴ２を供給する。これらはそれぞれのＦＩＧ．６Ａ’’に示すパイプ遅延要素１０４、１０６、１０８に結合される。パイプ遅延回路装置の詳細な回路図がＦＩＧ．６Ｃに示されている。パイプ遅延の出力はＣＬＫ＿ＩＯ信号によって制御され、ＲＩＳＥＸ信号を生成する。ＦＩＧ．６ＣのＲＩＳＥＸ信号はＦＩＧ．６Ａ’’のＱＥＮ＿ＲＩＳＥＸ（０）〜（２）信号、ＦＩＧ．５のＱＥＮ＿ＲＩＳＥＸ信号、及びＦＩＧ．４のＱＥＮ＿ＲＩＳＥＸ信号に対応する。ＦＩＧ．４から分かるように、ＱＥＮ＿ＲＩＳＥＸ信号はパイプラッチ５６の出力ラッチイネーブルに接続される。
【００４２】
再びＦＩＧ．６Ｃを参照すると、パイプ遅延回路装置はＦＡＬＬＸ信号も生成する。ＦＡＬＬＸ信号はＦＩＧ．６Ａ’’のＱＥＮ＿ＦＡＬＬＸ（０）〜（２）信号に対応する。対応する／ＱＥＮ＿ＦＡＬＬ信号はシステムクロックの立ち下がりエッジのために生成され、一方／ＱＥＮ＿ＲＩＳＥはシステムクロックの立ち上がりエッジに対応する。
【００４３】
ＦＩＧ．７ＡとＦＩＧ．７Ｂを参照する。ＦＩＧ．７ＡはＦＩＧ．４のパイプラッチ５６の詳細な回路図を示す。ＦＩＧ．７ＢはＦＩＧ．４の出力バッファ回路５８の詳細な概略図を示す。また、ＦＩＧ．４に示されるようにパイプラッチ５６は出力バッファ５８に結合される。この結合は、ＦＩＧ．７Ａの各信号がＦＩＧ．７Ｂの同様の名称を有する各信号に接続されることにより実現される。
【００４４】
ＦＩＧ．７Ａから理解できるように、ＩＯＤＢデータバスからのデータビット（ＩＯＤＢＮ、ＩＯＤＢＮＸ）はＲＤＢ増幅器（ＲＤＢＡＭＰＮ）１１０の入力で受信される。データがシステムクロックの立ち上がりと立ち下がりエッジの両方でクロックされるというダブルデータ速度（ＤＤＲ）のために、２つのＲＤＢＡＭＰ（４０、１１０）がこの装置に示されている。
【００４５】
ＦＩＧ．７Ａに示されるように、ＦＩＧ．７Ａの各ＲＤＢＡＭＰ（４０、１１０）に対応する２組のパイプラッチ１１２、１１４及び１１６と１１８、１２０及び１２２とが設けられる。図を簡略化するためにＦＩＧ．４には、ＦＩＧ．４のパイプ遅延７０からＱＥＮ＿ＲＩＳＥＸ信号を受けシステムクロックの立ち上がりエッジに応じて動作する１組のパイプラッチ、つまりパイプラッチ０、１及び２（５６）のみが示されている。
【００４６】
ＦＩＧ．７ＡのＲＤＢＡＭＰ（４０、１１０）からの出力は、ＦＩＧ．７ＡでＯＲ及びＮＯＲゲートを介して一連の６つのパイプラッチ１１２から１２２に接続される。ＤＤＲ装置のため、３つの代わりに上述の６つのラッチ１１２〜１２２が必要である。ＦＩＧ．７Ａのパイプラッチ１１２から１２２は、ＦＩＧ．６Ａ’〜６Ａ’’の回路から導かれるそれぞれのラッチイネーブル信号ＬＡＴＣＨ＿ＥＮＸ（２）〜（０）を入力として受信する（ＦＩＧ．７Ａ）。これは、ＦＩＧ．４のパイプカウンタ６４、カウント遅延６６及びカウント同期ラッチ６８により生成されたＬＡＴＣＨ＿ＥＮＸ信号がＦＩＧ．４のパイプラッチ５６へ入力されることに対応する。
【００４７】
ＦＩＧ．６Ａ’’の各パイプ遅延０〜２（１０４〜１０８）がＦＩＧ．６Ｃに詳細に示されたようにシステムクロックの立ち上がりに対応するＲＩＳＥＸ（ＦＩＧ．６Ａ’’のＱＥＮ＿ＲＩＳＥＸ（０）〜（２））を生成し、ＦＩＧ７Ａに示すパイプラッチ１１２〜１１６をシステムクロックの立ち上がりに応じて動作させる。また、各パイプ遅延０〜２（１０４〜１０８）はシステムクロックの立ち下がりに対応するＦＡＬＬＸ（ＦＩＧ．６Ａ’’のＱＥＮ＿ＦＡＬＬＸ（０）〜（２））も生成し、パイプラッチ１１８〜１２２をシステムクロックの立ち下がりに応じて動作させる。
【００４８】
上部の３つのパイプラッチ１１２から１１６の出力は、ＦＩＧ．７Ａで３ＯＲ２ＮＡＮＤゲート１２４の入力に接続される。同様に、下部の３つのラッチ１１８から１２２の出力は、３ＯＲ２ＮＡＮＤゲート１２６に接続される。
【００４９】
／ＱＥＮ＿ＲＩＳＥ信号（ＦＩＧ．７ＡのＱＥＮ＿ＲＩＳＥＸ（２：０））は、ＦＩＧ．７Ａで３ＯＲ２ＮＡＮＤゲート１２４の入力に接続され、この出力は、イネーブルされた時、データをＦＩＧ．７Ｂに示した出力バッファのＤＯＵＴ＿ＲＩＳＥ、ＤＯＵＴ＿ＲＩＳＥＸ入力に結合する。ＦＩＧ．７Ａからも理解できるように、システムクロック制御信号ＥＤＧＥは、データを上部の３つまたは下部の３つのラッチに導くために設けられ、これもまたＤＤＲの特徴である。また、データパスの速度に対して速いシステムクロックのために、３ＯＲ２ＮＡＮＤゲート１２４または１２６はすでにオンになり、よってパイプラッチから出力バッファまでのデータの通過を可能にする。代わりに低速クロックの場合、システムはデータを受信し、そしてクロックを待ち、よって３ＯＲ２ＮＡＮＤゲート１２４または１２６を利用する。
【００５０】
ＦＩＧ．７Ｂに戻ると、ＦＩＧ．４に示したようなデータ出力バッファ５８はデータ出力ラッチ１３０から１３６を備える。データ出力ラッチ１３０から１３６の入力イネーブル端子は、正しいシステムクロックエッジに同期するためのＣＬＫ＿ＩＯ信号に結合される。システムクロックの立ち上がりに応じてパイプラッチ１１２〜１１６から出力されたデータＤＯＵＴ＿ＲＩＳＥＸ、ＤＯＵＴ＿ＲＩＳＥ（ＦＩＧ．７Ａ）は、ＦＩＧ．７Ｂでそれぞれデータ出力ラッチ１３０、１３２に入力され、ＣＬＫ＿ＩＯ信号から得られたＣＬＫ＿ＢＵＦに応じてデータ出力ラッチ１３０、１３２によりラッチされる。また、システムクロックの立ち下がりに応じてパイプラッチ１１８〜１２２から出力されたデータＤＯＵＴ＿ＦＡＬＬＸ、ＤＯＵＴ＿ＦＡＬＬ（ＦＩＧ．７Ａ）は、ＦＩＧ．７Ｂでそれぞれデータ出力ラッチ１３４、１３６に入力され、ＣＬＫ＿ＩＯ信号から得られたＣＬＫ＿ＢＵＦＸに応じてデータ出力ラッチ１３４、１３６によりラッチされる。パイプラッチ１１２から１２２の詳細な回路装置がＦＩＧ．７Ｃに示されている。
【００５１】
このように、本発明の実施形態はダブルデータ速度（ＤＤＲ）システムにも適用することができる。
【００５２】
本発明は、高速および低速システムクロックの両方を容易に適応させることができるパイプライン型半導体メモリを実現するための柔軟な方法を提供することがわかる。さらに、柔軟な設計により、内部信号のより精密な整合のために読み取りパスのさらなる分割が可能になる。さらに、種々のＣＡＳ待ち時間は、パイプ遅延素子７０からの出力を単純に遅延して、データをクロックアウトする前に特定数のクロックサイクルを待つことによって適応可能である。
【００５３】
特定の実施形態を参考にして本発明について説明してきたが、ここに添付した請求項で記述したように、本発明の精神と範囲から逸脱することなしにその種々の修正が当業者には明白であろう。
【図１】
0005580254.tif 000002
【図２】
0005580254.tif 000003
【図３】
0005580254.tif 000004
【図４】
0005580254.tif 000005
【図５】
0005580254.tif 000006
【図６】
0005580254.tif 000007
【図７】
0005580254.tif 000008
【図８】
0005580254.tif 000009
【図９】
0005580254.tif 000010
【図１０】
0005580254.tif 000011
【図１１】
0005580254.tif 000012
【図１２】
0005580254.tif 000013
【図１３】
0005580254.tif 000014