(57)【特許請求の範囲】
【請求項１】
記憶ユニットと、
複数のパイプラインとより成り、
複数のパイプラインは少なくとも、
記憶ユニットに結合され、記憶ユニットからのデータを内部クロックに基づき出力へ転送し、外部クロックの立ち上がりエッジでデータが出力で得られるように構成された第１のパイプラインと、
記憶ユニットに結合され、記憶ユニットからのデータを内部クロックに基づき出力へ転送し、外部クロックの降下エッジでデータが出力で得られるように構成された第２のパイプラインとを含み、
内部クロックは外部クロックと同じ周波数を有するが外部クロックより進んでおり、内部クロックが外部クロックより進む量はレイテンシ及びサイクル時間に基づき決定される半導体メモリデバイス。
【請求項２】
記憶ユニットは、メモリセルの第１のアレイより成る請求項１の半導体メモリデバイス。
【請求項３】
記憶ユニットはさらに第２のアレイを有し、第１のアレイは第１のパイプラインに結合され、第２のアレイは第２のパイプラインに結合されている請求項２の半導体メモリデバイス。
【請求項４】
第１及び第２のパイプラインに接続された制御ユニットをさらに備えた請求項１、２又は３の半導体メモリデバイス。
【請求項５】
制御ユニットは、第１及び第２のパイプラインに対してデータを転送するように指示する請求項４の半導体メモリデバイス。
【請求項６】
第１のパイプラインはさらに、記憶ユニットに接続された第１のデータマルチプレクサを有し、第２のパイプラインはさらに、記憶ユニットに接続された第２のデータマルチプレクサを有し、第１のデータマルチプレクサは記憶ユニットからのデータを第１のパイプラインへ差し向け、第２のデータマルチプレクサは記憶ユニットからのデータを第２のパイプラインに差し向ける請求項１、２、３、４又は５の半導体メモリデバイス。
【請求項７】
第１及び第２のパイプラインはそれぞれ、直列に接続された少なくとも１つのラッチより成る請求項１、２、３、４、５又は６の半導体メモリデバイス。
【請求項８】
データは、複数のパイプラインに対応する複数のデータユニットより成り、
各データユニットは、記憶ユニットから複数のパイプラインのうちの１つに同時に転送される請求項１、２、３、４、５、６又は７の半導体メモリデバイス。
【請求項９】
各パイプラインは異なる事象でデータを転送する請求項１、２、３、４、５、６、７又は８の半導体メモリデバイス。
【請求項１０】
第１のパイプラインは複数のステージを有して、記憶ユニットから第１のデータを転送し、第２のパイプラインは複数のステージを有して、記憶ユニットから第２のデータを転送する請求項４又は５の半導体メモリデバイス。
【請求項１１】
制御ユニットは、第１及び第２のパイプラインのステージ間のデータの転送を制御する請求項１０の半導体メモリデバイス。
【請求項１２】
第１及び第２のパイプラインに結合された出力バッファをさらに備え、
第１のパイプラインは、内部クロックのサイクル上の第１の事象でデータを出力バッファへ転送し、
第２のパイプラインは、内部クロックのサイクル上の第２の事象でデータを出力バッファへ転送し、
第１及び第２の事象はそれぞれ、内部クロックのサイクル上で１度だけ生じる請求項１、２、３、４、５、６、７、８、９、１０又は１１の半導体メモリデバイス。
【請求項１３】
第１の事象は内部クロックの立ち上がりエッジに基づき発生され、第２の事象は内部クロックの降下エッジに基づき発生される請求項１２の半導体メモリデバイス。
【請求項１４】
複数のパイプラインの各々は、データを内部クロックのサイクル上の異なる事象で出力バッファへ転送し、内部クロックのサイクル上の各異なる事象は内部クロックのサイクル上で１度生じる請求項１、２、３、４、５、６、７、８、９又は１０の半導体メモリデバイス。
【請求項１５】
各異なる事象は内部クロックのサイクルの異なる相に基づき発生され、各異なる事象はその関連の異なる相に先立つ請求項１４の半導体メモリデバイス。
【請求項１６】
第１のデータを有するメモリセルの第１のアレイと、
第２のデータを有するメモリセルの第２のアレイと、
第１のアレイに接続された第１のデータマルチプレクサを有し、外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックにより制御され、外部クロックの立ち上がりエッジでデータを出力する第１のパイプラインと、
第１のパイプラインに並列に接続され、第２のアレイに接続された第２のデータマルチプレクサを有し、内部クロックにより制御され、外部クロックの降下エッジでデータを出力する第２のパイプラインと、
第１及び第２のデータマルチプレクサに接続され、第１のデータを第１のパイプラインへ、また第２のデータを第２のパイプラインへ差し向けるデータマルチプレクサコントローラより成る半導体集積回路。
【請求項１７】
第１のパイプライン及び第２のパイプラインに接続された制御ユニットをさらに備え、制御ユニットはパイプラインの伝播時間を利用してデータの出力を外部クロックに同期させる請求項１６の半導体集積回路。
【請求項１８】
第１及び第２のアレイは、物理的にメモリアレイ内に位置する請求項１７の半導体集積回路。
【請求項１９】
第１のアレイは、第２のアレイとは物理的に別個に位置する請求項１７の半導体集積回路。
【請求項２０】
パイプラインはさらに、直列に接続された少なくとも１つのラッチを有する請求項１７の半導体集積回路。
【請求項２１】
第１のパイプラインはさらに、第１のストロボラッチを有し、第２のパイプラインはさらに、第２のストロボラッチを有する請求項１６、１７、１８、１９又は２０の半導体集積回路。
【請求項２２】
第１のパイプラインはさらに、第１の遅延ロックループラッチを有し、第２のパイプラインはさらに、第２の遅延ロックループラッチを有する請求項１６、１７、
１８、１９、２０又は２１の半導体集積回路。
【請求項２３】
記憶ユニットと、
記憶ユニットに接続された第１のデータマルチプレクサ、第１のデータマルチプレクサに直列に接続された少なくとも１つの第１のラッチ及び少なくとも１つの第１のラッチに接続された第１の遅延ロックループラッチを有する第１のパイプラインと、
記憶ユニットに接続された第２のデータマルチプレクサ、第２のデータマルチプレクサに直列に接続された少なくとも１つの第２のラッチ及び少なくとも１つの第２のラッチに接続された第２の遅延ロックループラッチを有する第２のパイプラインと、
第１及び第２のデータマルチプレクサに接続され、第１のデータを第１のパイプラインへ、また第２のデータを第２のパイプラインへ同時に差し向けるデータマルチプレクサコントローラと、
外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックを有し、内部クロックを用いて第１及び第２の遅延ロックループラッチへ信号を転送するように指示し且つデータの出力を外部クロックの立ち上がり及び降下エッジに同期させるために第１及び第２のパイプラインに接続された制御ユニットとより成る半導体集積回路。
【請求項２４】
第１及び第２の遅延ロックループラッチに接続された出力バッファをさらに備え、制御ユニットは、第１の遅延ロックループラッチに対して第１のデータを出力バッファに転送するように指示し、また第２のデータロックループラッチに対して第２のデータを出力バッファへ転送するように指示する請求項２３の半導体集積回路。
【請求項２５】
メモリセルの第１のアレイと、
メモリセルの第２のアレイと、
出力バッファと、
データを選択するために第１及び第２のアレイに接続されたアドレスコマンド制御手段と、
第１のアレイに接続された第１のマルチプレクサ、第１のデータマルチプレクサに直列に接続された少なくとも１つの第１のラッチ及び少なくとも１つの第１のラッチ及び出力バッファに接続された第１の遅延ロックループラッチを有する第１のパイプラインと、
第２のアレイに接続された第２のマルチプレクサ、第２のデータマルチプレクサに直列に接続された少なくとも１つの第２のラッチ及び少なくとも１つの第２のラッチ及び出力バッファに接続された第２の遅延ロックループラッチを有する第２のパイプラインと、
第１及び第２のマルチプレクサに接続され、第１及び第２のアレイからのデータをデータマルチプレクサに差し向けるマルチプレクサコントローラと、
第１及び第２のパイプラインに接続された制御回路とより成り、
この制御回路は、
外部クロックと同じ周波数を有するが外部クロックより進んで動作する内部クロックを発生させる内部クロック発生器と、
少なくとも１つの第１のラッチ及び少なくとも１つの第２のラッチへ信号を転送するように指示するラッチドライバと、
内部クロックを用いて第１の遅延ロックループラッチ及び第２の遅延ロックループラッチへ信号を転送するように指示する遅延ロックループラッチドライバとより成り、
外部クロックの立ち上がりエッジ及び降下エッジで第１及び第２の遅延ロックループラッチから出力バッファへデータが転送される半導体集積回路。
【請求項２６】
記憶ユニット、第１のパイプライン及び第２のパイプラインを有する半導体メモリデバイスからデータを読み出す方法であって、
記憶ユニット内の第１のデータ及び第２のデータを含むデータを選択し、
第１のデータを第１のパイプラインへ差し向け、
第２のデータを第２のパイプラインへ差し向け、
外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックに基づき第１のデータを第１のパイプラインの出力に転送し、
内部クロックに基づき第２のデータを第２のパイプラインの出力に転送し、
外部クロックの立ち上がりエッジで第１のデータを第１のパイプラインから出力し、
外部クロックの降下エッジで第２のデータを第２のパイプラインから出力するステップより成る半導体メモリデバイスからのデータの読み出し方法。
【請求項２７】
記憶ユニットは、メモリセルの第１のアレイと、メモリセルの第２のアレイとを有し、第１のデータは第１のアレイに位置し、第２のデータは第２のアレイに位置する請求項２６の方法。
【請求項２８】
内部クロックは内部で発生されるクロックであり、第１及び第２のデータは外部クロックの立ち上がりエッジ及び降下エッジで第１及び第２のパイプラインに接続された出力バッファから読み出すことができる請求項２７の方法。
【請求項２９】
第１のデータを第１のパイプライン（１０２）内において転送するステップは記憶ユニット（７０２）からのデータの第１の部分を第１のマルチプレクサ（２０３）を介して第１のラッチ（７０５）へ転送するステップを含み、
第２のデータを第２のパイプライン（１０３）内において転送するステップは記憶ユニット（７０３）からのデータの第２の部分を第２のマルチプレクサ（２０７）を介して第２のラッチ（７０６）へ転送するステップを含み、
内部クロックに基づく第１の信号で、第１の部分を第１のラッチ（７０５）を介して第３のラッチ（７０７）へ、また第２の部分を第２のラッチ（７０６）を介して第４のラッチ（７０８）へ転送し、
内部クロックに基づく第２の信号で、データの第１の部分を第３のラッチ（７０７）を介して第５のラッチ（７０９）へ、また第２の部分を第４のラッチ（７０８）を介して第６のラッチ（７１０）へ転送し、
内部クロックに基づく第３の信号で、データの第１の部分を第５のラッチ（７０９）を介して第７のラッチ（２０５）へ、また第２の部分を第６のラッチ（７１０）を介して第８のラッチ（２０９）へ転送するステップを含む請求項２７または２８の方法。
【請求項３０】
外部クロックより進んだ内部クロックを発生させ、
内部クロックの降下エッジで第３の信号を発生させるステップをさらに含む請求項２９の方法。
【請求項３１】
外部クロックの立ち上がりエッジから所定のオフセットをした時点で第１の信号を発生させるステップをさらに含む請求項３０の方法。
【請求項３２】
第１のデータを第１のパイプラインから転送するステップは外部クロックの立ち上がりエッジでデータを提供するステップを含み、第２のデータを第２のパイプラインから転送するステップは外部クロックの降下エッジでデータを提供するステップを含む請求項２９、３０または３１の方法。
【請求項３３】
記憶ユニット、第１のパイプライン及び第２のパイプラインを有する半導体メモリデバイスからデータを読み出す方法であって、
記憶ユニットからのデータを何れのパイプラインに入力するかを決定し、
データの第１の半分を第１のパイプラインへ送り込み、
外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックに基づいてデータを第１のパイプライン中で転送し、
データの第２の半分を第２のパイプラインへ送り込み、
内部クロックに基づいてデータを第２のパイプライン中で転送し、
外部クロックの立ち上がりエッジで第１のパイプラインからデータの第１の半分を出力し、
外部クロックの降下エッジで第２のパイプラインからのデータ第２の半分を出力するステップより成るメモリデバイスからのデータの読み出し方法。
【請求項３４】
少なくとも１つのラッチが直列に接続された２つのパイプラインを有する半導体メモリデバイスの制御方法であって、
外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックをメモリデバイスのレイテンシ及びサイクル時間に基づき発生させ、
パイプラインのラッチに対してデータをパイプラインを介して転送するように指示して、データが内部クロックの立ち上がりエッジと降下エッジの両方で転送されるようにし、
外部クロックの立ち上がりエッジと降下エッジに同期してパイプラインからデータを出力するステップより成る半導体メモリデバイスの制御方法。
【請求項３５】
各々が少なくとも１つのストロボラッチ及び１つの遅延ロックループラッチを有する複数のパイプラインを備えた半導体メモリデバイスの制御方法であって、
外部クロックと同じ周波数を有するが外部クロックより進んだ内部クロックをメモリデバイスのレイテンシ及びサイクル時間に基づき発生させ、
外部クロックからオフセットした時点で少なくとも１つのストロボラッチに信号を送り、
内部クロックからオフセットした時点で遅延ロックループラッチに信号を送り、
複数のパイプラインからのデータを外部クロックの立ち上がりエッジと降下エッジの両方で出力するステップより成る半導体メモリデバイスの制御方法。
【発明の詳細な説明】
【０００１】
【発明の分野】
本発明は、一般的にメモリデバイスに関し、さらに詳細には、ダイナミックメモリに関する。
【０００２】
【発明の背景】
メモリ回路は、コンピュータ及びデータの永久的または一時的蓄積を必要とする他のシステムにおける重要なコンポーネントである。ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）のようなメモリ回路は、プロセッサシステムのようなシステムで使用される。
【０００３】
プロセッサを用いるシステム及び電子システムでは、システムは或る特定の周波数で動作する。メモリデバイスをシステムと同じ周波数で動作させるのが理想である。しかしながら、メモリデバイスは、一般的に、システムと同じ速度で動作しない。これは、非常に速い速度で動作可能なメモリデバイスを製造したり作動させたりするとコストが高くつくためである。メモリデバイスは通常、プロセッサの速度の何分の１かの速度で動作するため、システム速度が遅くなる原因となっている。
【０００４】
メモリデバイスは、その作動方法が原因で、マイクロプロセッサの速度では動作することができない。メモリデバイスは、大量のデータにアクセスして、保持するために非常にコンパクトでなければならない。これらのデバイスの動作速度を上げるには、設計及び製造に多大なコストをかける必要がある。一般的に、このコストが、これらのシステムを高速のメモリデバイスを組み込むことを妨げている。
【０００５】
これらのコンピュータ及び電子システムにおいて、主要メモリとして用いるダイナミック・ランダム・アクセス・メモリの動作速度が増加しているが、それでもマイクロプロセッサの動作速度に比べれば依然として低い。このように速度が比較的低いとマイクロプロセッサの待ち時間が増加し、ＤＲＡＭのアクセス時間及びサイクル時間がシステム全体性能のボトルネックとなるため、高速処理が妨げられる。
【０００６】
メモリ回路のデータ書込み及び読出し速度を速くする方法の１つとして、メモリ回路を、高いクロック周波数で動作するように構成することがある。これは、マイクロプロセッサでは、その動作周波数を上げることにより既に行われている。例えば、一般的に、２００メガヘルツのマイクロプロセッサは、５０メガヘルツのマイクロプロセッサよりも速度が格段に速い。しかしながら、高い動作周波数で回路を動作させると、別の問題が生じる。例えば、高い周波数で動作する回路の発生熱量及び使用電力が大きく増加する。このため、熱及び電力の問題を解決するには高いコストがかかる。さらに、ラップトップのような携帯用デバイスの使用が増加しているが、これらの回路の消費電力を減少する必要がある。また、動作周波数が高ければ高くなるほど、集積回路のダイスがより高価になる。
【０００７】
メモリデバイスは多種多様なシステムに使用されるため、メモリデバイスのコストを有意に増加させずに速度を増加できれば、ワープロから現金自動引出し機に至る全ての装置が仕事をより迅速に行えるようになる。
【０００８】
上記理由及び、当業者であれば本明細書を読んで理解すると明らかになる以下に述べる他の理由により、２つのデータ速度を有するデバイス及びデータを２つのデータ速度で読み出す方法が必要とされている。
【０００９】
【発明の概要】
本発明によると、記憶ユニットと、複数のパイプラインとより成り、複数のパイプラインは少なくとも、記憶ユニットに結合され、記憶ユニットからのデータを内部クロックに基づき出力へ転送し、外部クロックの立ち上がりエッジでデータが出力で得られるように構成された第１のパイプラインと、記憶ユニットに結合され、記憶ユニットからのデータを内部クロックに基づき出力へ転送し、外部クロックの降下エッジでデータが出力で得られるように構成された第２のパイプラインとを含み、内部クロックは外部クロックと同じ周波数を有するが外部クロックより進んでおり、内部クロックが外部クロックより進む量はレイテンシ及びサイクル時間に基づき決定される半導体メモリデバイスが提供される。
【００１０】
【実施例の詳細な説明】
本発明の以下の詳細な説明において、本願の一部であり、本発明の特定の実施例を例示する添付図面を参照する。これらの実施例は、当業者が本発明を実施できるように十分に詳しく記載されている。他の実施例も可能であり、本発明の範囲から逸脱することなくプロセスの、または機械的な設計変更を行うことができる。以下の説明中の用語「ウェーハ」及び「基板」は、ベースとなる任意の半導体構造を包含するものである。それらの用語は共に、シリコン・オン・サファイア（ＳＯＳ）技術、シリコン・オン・インシュレータ（ＳＯＩ）技術、薄膜トランジスタ（ＴＦＴ）技術、ドーピングを施した、または施さない半導体、ベースとなる半導体構造により支持された珪素のエピタキシャル層だけでなく、当業者によく知られた他の半導体構造を包含すると理解されるべきである。さらに、以下の説明において、「ウェーハ」または「基板」を言及する際、ベースとなる半導体構造には、前のプロセスにより領域／接合が形成されている場合がある。従って、以下の詳細の説明は限定的な意味でとらえるべきでなく、本発明の範囲は頭書の特許請求の範囲によってのみ決定される。
【００１１】
種々の実施例は、二データ速度（ＤＤＲ）出力パスのための自己タイミングで、レイテンシをプログラムできるパイプラインの設計を包含する。本発明は、メモリデバイスが、単一のデータ速度（ＳＤＲ）ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）の設計を利用するのを可能にする。出力データは、外部クロックの領域から遅延ロックループ（ＤＬＬ）クロック領域へ変換される。
【００１２】
二データ速度デバイスは、同一周波数で動作する単一データ速度デバイスの二倍の速度でデータを出力できる。例えば、二データ速度デバイスは１０サイクルで２０ビットのデータを出力できるが、単一データ速度デバイスは１０サイクルで１０ビットのデータを出力できるにすぎない。また、二データ速度デバイスは、単一データ速度デバイスと同様な熱発生特性を有する。単一データ速度デバイスは、同量のデータを出力しようとすれば、二データ速度デバイスの二倍の速度で動作しなければならない。速度を２倍にすると、かなりの熱が発生する。
【００１３】
データ出力は立ち上がりエッジと降下エッジの両方で出力されるが、全ての制御信号は外部クロックと同じ周波数のままである。並列の２つのパイプラインを用いて、外部クロックの立ち上がりエッジ及び降下エッジでデータを出力できる。パイプラインの伝播時間を用い、それを補償することにより、外部クロックと同期してデータを出力することが可能である。このアプローチは、クロックサイクル時間及びプロセスのばらつきにマージンのある改良式設計を可能にする。
【００１４】
後述する種々の実施例によると、データを２つのデータ速度で与えるが、コンピュータシステムにとっては単一データ速度メモリチップのように見えるチップを作成することが可能である。
【００１５】
別の実施例では、複数のパイプラインを用いて記憶ユニットからデータを出力する。このデータは、クロックサイクルの種々の部分のような事象で出力することができる。
【００１６】
図１Ａは、本発明の実施例によるメモリデバイスである。このメモリデバイスは、記憶ユニット１０１、第１のパイプライン１０２、第２のパイプライン１０３及びデータバッファ１０４を有する。
【００１７】
記憶ユニット１０１は、メモリセルのアレイまたはメモリ場所のアレイである。記憶ユニット１０１は、単一のアレイまたは第１及び第２のアレイでもよい。記憶ユニット１０１は、物理的に同一であるアレイの２またはそれ以上のサブアレイを含んだものでよい。記憶ユニット１０１は、物理的に２つまたはそれ以上のアレイの２つまたはそれ以上のサブアレイを含むものでよい。任意の数のアレイまたはサブアレイを使用できる。記憶ユニット１０１は、第１のデータ及び第２のデータを含むデータを記憶する。
【００１８】
パイプライン１０２、１０３は、記憶ユニット１０１と、データバッファ１０４に接続されている。データは、記憶ユニット１０１から第１のパイプライン１０２及び第２のパイプライン１０３へ同時に送られる。第１の実施例において、第１のパイプライン１０２は、記憶ユニット１０１の第１のアレイに接続され、第２のパイプライン１０３は、記憶ユニット１０１の第２のアレイに接続されている。第１のパイプライン１０２は、外部クロックの立ち上がりエッジでデータ、即ち第１のデータを出力するために用いられる。第２のパイプライン１０３は、外部クロックの降下エッジでデータ、即ち第２のデータを出力するために使用される。他の実施例において、第１のパイプライン１０２は、外部クロックの降下エッジでデータを出力するために使用され、第２のパイプライン１０３は立ち上がりエッジでデータを出力するために使用される。これらのパイプラインは、外部クロックの立ち上がりエッジ及び降下エッジでデータバッファ１０４がデータを受けるように、パイプラインからデータバッファ１０４へデータを転送可能である。データバッファ１０４は、プロセッサまたはディスクドライブのような他のデバイスまたはシステムへデータを出力可能である。別の実施例では、パイプラインは、データをデータバッファ１０４へ転送することなく、プロセッサ、メモリデバイス及びハードドライブのような他のシステムまたはドライブへ直接転送する。第１のパイプライン１０２は、第２のパイプライン１０３の前にデータを出力可能であり、または第２のパイプライン１０３は、第１のパイプラインの前にデータを出力することができる。一般的に、これはデータのレイテンシ及びアドレスに基づき決定される。
【００１９】
図１Ｂは、本発明の１つの実施例によるメモリデバイスである。メモリデバイスは、記憶ユニット１０１と、複数のパイプライン１０５とを有する。別の実施例において、図１Ａの第１のパイプライン及び第２のパイプライン１０３と同様な複数のパイプラインを使用することができる。複数のパイプライン１０５は、記憶ユニット１０１に接続されている。記憶ユニット１０１から複数のパイプラインの各々へのデータの転送は、実質的に同時に行われる。クロックはその後、異なるクロック、クロックの異なるエッジ及び異なる相のような異なる事象または信号で複数の各パイプラインからデータバッファ１０４へ転送される。例えば、４つのパイプライン１０５を有するメモリデバイスでは、各パイプラインはクロックの９０°毎の位相でデータをデータバッファ１０４へ転送することが可能であり、各パイプラインはデータを９０°位相が離れる度にデータを転送する。
【００２０】
図２Ａは、本発明の１つの実施例によるメモリデバイスである。このメモリデバイスは、記憶ユニット１０１、第１のパイプライン１０２、第２のパイプライン１０３及びマルチプレクサ制御２１１を有する。用語「マルチプレクサ」は、マルチプレクサのことである。第１のパイプライン１０２は、第１のマルチプレクサ２１５と、少なくとも１つの第１のラッチ２１２とを有する。第２のパイプライン１０３は、第２のマルチプレクサ２１３と、少なくとも１つの第２のラッチ２１４とを有する。
【００２１】
記憶ユニット１０１は、メモリセルのアレイまたはメモリ場所のアレイである。記憶ユニット１０１は、単一のアレイまたは第１及び第２のアレイの場合がある。記憶ユニット１０１は、物理的に同一のアレイの２またはそれ以上のサブアレイを含むことができる。記憶ユニット１０１は、物理的に２個またはそれ以上のサブアレイを含む場合がある。任意の数のアレイまたはサブアレイを用いることが可能である。
【００２２】
第１のマルチプレクサ２１５は、記憶ユニット１０１、マルチプレクサコントロール２１１、及び少なくとも１つの第１のラッチ２１２に接続されている。第１のマルチプレクサ２１５は、記憶ユニット１０１から少なくとも１つの第１のラッチ２１２へデータを差し向ける。少なくとも１つの第１のラッチ２１２は、第１の事象でデータを転送する。第１の事象は、信号、クロックの立ち上がりエッジまたはクロックの降下エッジでよい。データは、出力バッファまたは、プロセッサまたはディスクドライブのような他のシステムデバイスへ転送可能である。
【００２３】
第２のマルチプレクサ２１３は、記憶ユニット１０１、マルチプレクサコントロール２１１及び少なくとも１つの第２のラッチ２１４に接続されている。第２のマルチプレクサ２１３は、マルチプレクサコントロール２１１からの信号に応答して記憶ユニット１０１から少なくとも第２のラッチ２１４へデータを差し向ける。少なくとも１つの第２のラッチ２１４は、第２の事象でデータを転送する。第２の事象は、信号、クロックの立ち上がり位置またはクロックの降下位置でよい。
【００２４】
図２Ｂは、本発明の実施例によるメモリデバイスである。メモリデバイスは、記憶ユニット１０１、第１のパイプライン１０２、第２のパイプライン１０３、マルチプレクサコントロール２１１、第１のマルチプレクサ２０３、少なくとも１つの第１のストロボラッチ２０４、第１のＤＬＬラッチ２１５、第２のマルチプレクサ２１７、少なくとも１つの第２のストロボラッチ２０８、第２のＤＬＬラッチ２０９、第１の出力バッファ２０６及び第２の出力バッファ２１０を有する。
【００２５】
第１のパイプラインは第１のマルチプレクサ２０３、少なくとも１つの第１のストロボラッチ２０４、第１のＤＬＬラッチ２０５及び第１の出力バッファ２０６を有する。第１のマルチプレクサ２０３は、記憶ユニット１０１に接続されている。別の実施例では、第１のマルチプレクサ２０３を記憶ユニット１０１の第１のアレイに接続することができる。第１のマルチプレクサ２０３は、マルチプレクサコントロール２１１からの信号に応答して記憶ユニット１０１からの入来データを少なくとも１つの第１のストロボラッチ２０４へ差し向ける。第１のマルチプレクサ２０３はマルチプレクサコントロール２１１により制御可能であり、マルチプレクサコントロール２１１は、第１のマルチプレクサ２０３が第１のパイプライン１０２上に入力させる記憶ユニット１０１からの入来データをいかにして且ついつ差し向けるかを制御する。
【００２６】
少なくとも第１のストロボラッチ２０４は、第１のマルチプレクサ２０３と、第１のＤＬＬラッチ２０５に接続されている。少なくとも１つの第１のストロボラッチ２０４は、記憶ユニット１０１から第１のマルチプレクサ２０４を介して第１のＤＬＬラッチ２０５へデータを転送する。少なくとも１つの第１のストロボラッチ２０４が２以上のラッチを含む場合、これらのラッチは互いに直列に接続される。記憶ユニット１０１からストロボラッチへのデータの転送時間をサイクル時間より長くすることが可能である。サイクル時間は、外部クロックの立ち上がりエッジ間の時間である。データ転送時間は、データアクセス（ＤＡＴ）とも呼ばれる。少なくとも１つのストロボラッチ２０４の各々は、外部クロックの立ち上がりエッジでまたは外部クロックの立ち上がりエッジから所定の時間オフセットした時点でデータを次のラッチへ転送する。このオフセットは、次のラッチへのデータの転送が、その次のラッチがそのデータを後続のラッチまたはデバイスへ転送完了するまでは起こらないように調整される。一部の実施例では、信号各ラッチに接続して各ラッチがデータを転送するようにすることが可能である。
【００２７】
第２のＤＬＬラッチ２０９は、少なくとも１つの第２のストロボラッチ２０８と、第２の出力バッファ２１０に接続されている。第２のＤＬＬラッチ２０５は、少なくとも第２のストロボラッチ２００から第２の出力バッファ２１０へデータを転送する。データの転送は、そのデータが適当な時点で第２の出力バッファ２１０から出力または読み出されるようにされる。例えば、第２のＤＬＬラッチは外部クロックの降下エッジより進んでデータを転送することにより、データが外部クロックの降下エッジで第２の出力バッファ２１０から出力または読み出されるようにすることが可能である。他の実施例では、第１の出力バッファ２０６及び第２の出力バッファ２１０は１つの出力バッファに統合される。
【００２８】
マルチプレクサコントロール２１１は、第１及び第２のマルチプレクサ２０３、２０７に接続されている。マルチプレクサコントロール２１１は、記憶ユニット１０１からのデータが如何にして選択されパイプラインに入力されるかを制御する。マルチプレクサコントロール２１１は、何れのパイプラインにデータを最初に入力するかを決定できる。
【００２９】
図３は、本発明の実施例によるシステムを示す。このシステムは、記憶ユニット１０１、第１のパイプライン１０２、第２のパイプライン１０３、マルチプレクサコントロール２１１、第１のマルチプレクサ２０３、少なくとも１つの第１のストロボラッチ２０４、第１のＤＬＬラッチ２０５、第２のマルチプレクサ２０７、少なくとも１つのストロボラッチ２０８、第２のＤＬＬラッチ２０９及び制御ユニット３０１を有する。
【００３０】
制御ユニット３０１は、遅延ロックループラッチ（ＤＬＬ）クロックまたは内部クロックを発生できる。ＤＬＬクロックは、外部クロックと同一周波数で動作するが、外部クロックより進んで動作する。制御ユニット３０１は、ＤＬＬクロックが外部のクロックより進む量を決定する。ＤＬＬクロックにより、パイプラインの最後のラッチまたはステージが、パイプラインにデータを転送する際の遅延を補償するように外部クロックより進んで作動できるため、パイプラインからのデータが外部クロックのエッジで出力バッファへ転送するかあるいはそのデータを読み出すことができる。ＤＬＬクロックがＤＬＬラッチ２０５及び２０９に接続可能である。制御ユニット３０１は、パイプラインとパイプラインの構成要素に接続される。制御ユニット３０１は、データが外部クロックに同期して出力されるように種々のステージまたはラッチを制御する。制御ユニット３０１は、外部クロックをストロボラッチ２０４、２０８に接続できる。
【００３１】
一部の実施例では、制御ユニット３０１は１またはそれ以上の信号をパイプラインの個々のラッチへ送って転送してパイプラインに沿うデータの転送を制御する。制御ユニット３０１は、レイテンシ及びクロックサイクル時間を考慮してデータの出力タイミングを調整するようにプログラムすることが可能である。レイテンシはデバイスの外部で与えられるようにしてもよい。クロックサイクル時間の伝播遅延は、制御ユニット３０１により検出可能である。
【００３２】
図４Ａは、制御ユニット３０１の可能な実施例を示す。制御ユニット３０１は、ストロボラッチドライバ４０１、ＤＬＬラッチドライバ４０２及びＤＬＬクロック発生器４０３を備えることができる。ストロボラッチドライバ４０１はストロボラッチに接続されている。ストロボラッチドライバ４０１はストロボラッチへいつデータを転送すべきかを伝える信号を発生できる。ストロボラッチドライバ４０１を用いて、個々のストロボラッチに対しいつ次のラッチへデータを転送すべきかを伝えるかもしくは信号を伝送可能である。ストロボラッチドライバ４０１は、ストロボラッチの制御またはラッチへの信号伝送を行うにあたりレイテンシ及びクロック時間を考慮する。ストロボラッチドライバ４０１は、パイプラインのレイテンシ、クロックサイクル時間及び伝播時間に応じて外部クロックからの種々のオフセット時点でストロボラッチの信号を発生する。
【００３３】
ＤＬＬクロック発生器４０３は、ＤＬＬクロックを発生する。ＤＬＬクロックは、外部クロックから進んで動作する。
【００３４】
ＤＬＬラッチドライバ４０２は、ＤＬＬラッチに接続されている。ＤＬＬラッチドライバ４０１は、ＤＬＬラッチに対して次のラッチまたはバッファへいつデータを転送すべきかを伝えるまたは指示する。ＤＬＬラッチドライバ４０１は、ＤＬＬラッチを制御するにあたりレイテンシを与える。ＤＬＬラッチドライバ４０２は、ＤＬＬクロックを用いてデータの転送タイミングを調整し、データが適正に且つ外部クロックと同期して出力されるようにする。ＤＬＬラッチドライバ４０２は、データがパイプラインからＤＬＬラッチの立ち上がりエッジと降下エッジで交互に出力され、データが外部クロックに同期して得られるようにする。ＤＬＬラッチドライバは、ＤＬＬラッチを制御する信号を発生可能である。
【００３５】
図４Ｂは、本発明の１つの実施例によるシステムを示す。このシステムはアドレスコマンドコントロール４０４、マルチプレクサコントロール４１１及び本発明に従って使用される記憶ユニット１０１を有する。アドレスコマンドコントロール４０４は、マルチプレクサコントロール４１１と記憶ユニット１０１に接続されている。アドレスコマンドコントロール４０４は、このシステムから出力される記憶ユニット１０１のデータを選択する。アドレスコマンドコントロール４０４は、読み出し命令に応答してデータを選択できる。アドレスコマンドコントロール４０４はマルチプレクサコントロール４１１と通信して、データを記憶ユニット１０１から差し向けることにより、データの第１のユニットがクロックの第１の立ち上がりエッジまたは降下エッジのような所望の事象またはクロックのエッジで出力されるようにすることが可能である。
【００３６】
図５は、記録ユニット、第１のパイプライン及び第２のパイプラインを有する本発明の１実施例によるメモリデバイスのデータを読み出す方法を示す。
【００３７】
５０１において、何れのパイプラインのデータを入力すべきかの決定を行う。場合によっては、外部クロックの立ち上がりエッジでデータを出力できる第１のパイプラインへデータを入力する。その他の場合、外部クロックの降下エッジでデータを出力できる第２のパイプラインにデータを入力する。この決定は、データ及びレイテンシのアドレスにより行うことができる。データは記憶ユニットからパイプライン５０２に転送される。データは第１及び第２のパイプラインに同時にまたは交互に転送可能である。例えば、データの第１の部分を第１のパイプラインに入力する場合、データの第２の部分は第２のパイプラインに入力され、データの第３の部分は第３のパイプラインに入力される。これらのパイプラインはデータを出力バッファ５０３に転送して、外部クロックの立ち上がりエッジ及び降下エッジで読み出すことができるようにする。別の実施例では、パイプラインによりデータを転送し、サイクル時間及びレイテンシを用いてデータの出力タイミングを調整する。他の実施例では、パイプラインによりデータを出力バッファ５０３に転送して、第１及び第２の事象で読み出しできるようにする。
【００３８】
図６は、本発明の実施例によるデータの読み出し方法を示す。
【００３９】
６０１において読み出し命令が発生される。例えば、プロセッサは、ある特定のメモリ場所のデータを読み出すリクエストを行う。データは記憶ユニットに存在できる。例えば、データは、データのビット、バイトまたは任意の量のものでよい。記憶ユニットはアレイまたはメモリセルである。データの各部分は、マルチプレクサを介してパイプライン６０２のストロボラッチへ送られる。このパイプラインは複数のパイプラインのうちの１つである。データの各部分は、ストロボラッチからパイプライン６０３の遅延ラッチへ送られる。このデータは外部クロックのエッジまたは他の何らかの事象または信号で転送可能である。データの各部分は遅延ラッチからシステムデバイス６０４へ送られる。データは、大部クロックのエッジまたは外部クロックから進んだクロックに応答して転送可能である。システムデバイスはプロセッサまたはメモリデバイスである。データの各部分は転送可能なデータの量である。かかるデータの部分の例には、ビット、バイトまたはワードがある。
【００４０】
別の実施例において、ＤＬＬクロックを用いてパイプラインからのデータを転送することによりパイプラインを送られるデータの遅延を補償する。
【００４１】
第７Ａ及び７Ｂは、メモリデバイスを示す。このメモリデバイスは、アドレスコマンドコントロール７０１、第１のアレイ７０２、第２のアレイ７０３、マルチプレクサコントロール２１１、第１のパイプライン１０２、第２のパイプライン１０３データバッファ１０４及び制御回路３０１を有する。アドレスコマンドコントロール７０１は、第１のアレイ７０２、第２のアレイ７０３及びマルチプレクサコントロール２１１に接続されている。アドレスコマンドコントロール７０１は、読み出し命令に応答して作動し、第１のアレイ７０２及び第２のアレイ７０３から読み出されるデータを選択する。アドレスコマンドコントロール７０１はまた、マルチプレクサコントロール２１１に対して、何れのパイプラインに読み出すデータを入力するかを伝える。マルチプレクサコントロール２１１は、第１のマルチプレクサ２０３、第２のマルチプレクサ２０７及びアドレスコマンドコントロール７０１に接続されている。マルチプレクサコントロール２１１は、第１のアレイ７０２及び第２のアレイ７０３から第１のパイプライン１０２の第１のマルチプレクサ２０３または第２のパイプライン２０３の第２のマルチプレクサ２０７へデータを差し向ける。マルチプレクサコントロールは、マルチプレクサコントロール信号（ＣＴＬ）及びその反転信号（ＣＴＬｉ）を第１のマルチプレクサ２０３及び第２のマルチプレクサ２０７に転送して、データを第１のパイプライン１０２及び第２のパイプライン１０３にそれぞれ差し向けることができる。例えば、ＣＴＬが高レベルでＣＴＬｉが低レベルである場合、第１のデータまたはデータの第１の部分は第１のパイプラインに送られ、第２のデータまたはデータの第２の部分は第２のパイプラインに送られ、またＣＴＬが低レベルでＣＴＬｉが高レベルの場合、第１のデータまたはデータの第１の部分を第２のパイプラインへ、第２のデータまたはデータの第２の部分を第１のパイプラインに送られる。
【００４２】
第１のパイプライン１０２は、第１のマルチプレクサ２０３、第１のラッチ７０５、第２のラッチ７０７、第３のラッチ７０９及び第１のＤＬＬラッチ２０５を直列に接続したものである。ＳＴＬＡＴ及びその補数（ＳＴＬＡＴｉは、第１のラッチ７０５を介するデータの転送を調時するために使用される。ＳＴＬＡＴが高レベルで、ＳＴＬＡＴｉが低レベルの場合、第１のラッチ７０５を介して転送される。ＳＴＬＡＴ１及びその補数ＳＴＬＡＴｉは、第２のラッチ７０７を介するデータの転送を調時するために使用される。ＳＴＬＡＴ１が高レベルでＳＴＬＡＴ１ｉが低レベルの場合、データは第２のラッチ７０７を介して転送される。ＤＬＬＡＴ及びＤＬＬＡＴｉは、第３のラッチ７０９を介して第１のＤＬＬラッチ２０５へのデータの転送を調時するために使用される。ＤＬＬＴが高レベルでＤＬＬＴｉが低レベルの場合、データは第３のラッチ７０９を介して転送される。ＤＬＬＲ０及びその補数ＤＬＬＲ０ｉは、第１のＤＬＬラッチ２０５を介するデータの転送を調時するために使用される。ＤＬＬＲ０が高レベルで、ＤＬＬＲ０ｉが低レベルの場合、データは第１のＤＬＬラッチ２０５を介して転送され、クロックの立ち上がりエッジでデータを出力できるようにする。
【００４３】
第２のパイプライン１０３は、第２のマルチプレクサ２０７、第１のラッチ７０６、第２のラッチ７０８、第３のラッチ７１０及び第２のＤＬＬラッチ２０９が直列に接続されたものである。ＳＴＬＡＴが高レベルで、ＳＴＬＡＴｉが低レベルの場合、データは第１のラッチ７０６を介して転送される。ＳＴＬＡＴが高レベルで、ＳＴＬＡＴｉが低レベルの場合、データは第２のラッチ７０８を介して転送される。ＤＬＬＴが高レベルで、ＤＬＬＴｉが低レベルの場合、データは第３のラッチ７１０を介して第２のＤＬＬラッチ２０９へ送られる。ＤＬＬＦ０とその補数ＤＬＬＦ０ｉは、第２のＤＬＬラッチ２０９を介するデータの転送を調時するために用いられ使用され、クロックの降下エッジでデータが出力されるようにするための制御信号である。
【００４４】
ＳＴＬＡＴとＳＴＬＡＴ１信号は、クロックの立ち上がりエッジから固定オフセット時点で生じる。メモリ回路のレイテンシ、サイクル時間及び伝播遅延が考慮され、これらの信号は、次のラッチがそのデータを後続のラッチまたは他のデバイスに転送した後に限りデータが次のラッチに転送されるように生じる。
【００４５】
ＤＬＬＲ０信号及びＤＬＬＦ０信号は、それぞれＤＬＬクロックの立ち上がりエッジ及び降下エッジから発生される。ＤＬＬクロックは、クロックと同じ周波数で動作するが、クロックよりも進んで作動されることにより、データがクロックの立ち上がりエッジ及び降下エッジで利用できるようにする。ＤＬＬＡＴ信号は、レイテンシに応じてＤＬＬＲ０信号またはＤＬＬＦ０信号の降下エッジで生じる。
【００４６】
図８は、レイテンシが３ナノ秒、クロックサイクルが３０ナノ秒のシステムにおける２データ速度メモリデバイスの図７Ａ、７Ｂに示す実施例のタイミング図である。同じタイミングを、５ナノ秒のような他のクロックサイクルに使用可能である。ＤＬＬラインはＤＬＬクロックである。ＸＣＬＫは外部クロックである。ＤＲは、選択されたデータが第１及び第２のアレイ（７０２、７０２）から第１のラッチ（７０５、７０６）へ転送されるに要する時間を示し、図７Ｂ上の基準点７０４により識別される。外部クロック（ＸＣＬＫ）サイクルの第１の立ち上がりエッジで読み出しコマンドが発生した後、アレイからデータ（Ａ、Ｂ）がフェッチされ、ポイント７０４でパイプラインに入力されるまで約１１ナノ秒かかりこれを図８の基準ポイント８０１に示す。この時間周期はデータアクセス時間（ＤＡＴ）であり、この実施例では１１ナノ秒である。ＸＬＣＫの第２の立ち上がりエッジの後データは基準点８０２で示すＳＴＬＡＴ信号に応答して第１のラッチ（７０５、７０６）へ送られそこで記憶される。第３の立ち上がりエッジの後、次のデータ（Ｃ、Ｄ）がＳＴＬＡＴ信号に応答して第１のラッチ（７０５、７０６）へ送られる前に、データは基準ポイント８０３に示すＳＴＬＡＴ１信号に応答して第１のラッチ（７０５、７０６）から第２のラッチ（７０７、７０８）へ送られる。その後、データ（Ａ、Ｂ）は第２のラッチ（７０７、７０８）からラッチ（７０９、７１０）へ、基準ポイント８０４に示すＤＬＬＡＴ信号に応答して転送される。ＤＬＬＡＴ信号はＤＬＬＦ０の降下エッジで作動されるが、その理由はレイテンシが全レイテンシ３であるからです。他の実施例では、ＤＬＬＡＴ信号は、一般的に、１／２、１ １／２及び １／２のような半レイテンシでＤＬＬＲ０の降下エッジで作動される。ＤＬＬクロックの立ち上がりエッジで起こるＤＬＬＲ０信号に応答して第１のＤＬＬラッチ２０５はデータ「Ａ」を転送し、それが、基準ポイント８０５で示すＸＣＬＫの立ち上がりエッジで読み出しのために利用できるようにする。ＤＬＬクロックの降下エッジで起こるＤＬＬＦ０信号に応答して、第２のＤＬＬラッチ２０９はデータＢを転送し、基準ポイント８０６に示すＸＣＬＫの降下エッジで読み出しのために利用できるようにする。
【００４７】
図９は、レイテンシが２ナノ秒、クロックサイクル時間が１０ナノ秒であるシステムの二データ速度メモリデバイスの図７Ａ、７Ｂに示す実施例のタイミング図である。ＤＬＬラインはＤＬＬクロックである。ＸＣＬＫは外部クロックである。ＤＲは、選択されたデータが第１及び第２のアレイ（７０２、７０３）から第１のラッチ（７０５、７０６）へ伝播するに要する時間を示し、図７Ｂの基準ポイント７０４により識別される。ＸＣＬＫサイクルの第１の立ち上がりエッジで読み出しコマンドが発生した後、データ（Ａ、Ｂ）がアレイからフェッチされて基準ポイント９０１に示すパイプライン上に入力されるまでに約１１ナノ秒かかる。この時間周期時間がデータアクセス時間（ＤＡＴ）であり、この実施例では１１ナノ秒である。ＸＣＬＫの第２の立ち上がりエッジの後、データは基準ポイント９０２で示すＳＴＬＡＴ信号に応答して第１のラッチ（７０５、７０６）へ送られ、そこに記憶される。ここでは、サイクル時間は、ＳＴＬＡＴ１信号がＳＴＬＡＴと同じ時間に近いところで生じるがその前ではなく、データが第１のラッチ（７０５、７０６）から基準ポイント９０３に示すように第２のラッチ（７０７、７０８）へ転送されるように短いものである。ＤＬＬＦ０の降下エッジで、短時間の後、ＤＬＬＡＴ信号が作動され、基準点９０４で示すようにデータが第２のラッチ（７０７、７０８）から第３のラッチ（７０９、７１０）へ転送される。基準ポイント９０６に示すＤＬＬＲ０信号に応答して、Ａが第１のＤＬＬラッチ２０５へ送られ、ＸＣＬＫの次の立ち上がりエッジで読み出すことができる。ＤＬＬＦ０信号に応答して、Ｄは第２のＤＬＬラッチ２０９へ転送され、基準ポイント９０６に示すＸＣＬＫの降下エッジで読み出しまたは出力するために利用可能となる。
【００４８】
本発明は、二データ速度メモリデバイス及び方法を包含する。これらによりデータを２つの速度またはそれ以上で転送することが可能となる。
【００４９】
本発明を特定の実施例につき図示説明したが、当業者は、同一目的を達成するように設計された任意の構成を、図示した特定の実施例の代わりに用いることができることがわかるであろう。本願は、種々の変形例または設計変更を包含するものと意図されている。従って、本発明は、頭書の特許請求の範囲及びその均等物のみで限定されることが明らかである。
【図面の簡単な説明】
【図１Ａ】  図１Ａは、二データ速度メモリデバイスの１つの実施例を示すブロック図である。
【図１Ｂ】  図１Ｂは、二データ速度メモリデバイスの１つの実施例を示すブロック図である。
【図２Ａ】  図２Ａ、二データ速度メモリデバイスの１つの実施例を示すブロック図である。
【図２Ｂ】  図２Ｂは、二データ速度メモリデバイスの１つの実施例を示すブロック図である。
【図３】  図３は、制御回路を備えたメモリデバイスの１つの実施例を示すブロック図である。
【図４Ａ】  図４Ａ、制御回路の１つの実施例を示すブロック図である。
【図４Ｂ】  図４Ｂは、制御回路の１つの実施例を示すブロック図である。
【図５】  図５は、データ読み出し方法の１実施例のフローチャートである。
【図６】  図６は、データ読み出し方法の１つの実施例のフローチャートである。
【図７Ａ】  図７Ａは、メモリデバイスの１つの実施例のブロック図である。
【図７Ｂ】  図７Ｂは、パイプラインの１つの可能な実施例のブロック図である。
【図８】  図８は、レイテンシが３ナノ秒、クロックサイクルが３０ナノ秒のメモリデバイスのタイミング図である。
【図９】  図９は、レイテンシが２ナノ秒及びクロックサイクルが１０ナノ秒のメモリデバイスのタイミングである。
【図１Ａ】
0004495381.tif 000002
【図１Ｂ】
0004495381.tif 000003
【図２Ａ】
0004495381.tif 000004
【図２Ｂ】
0004495381.tif 000005
【図３】
0004495381.tif 000006
【図４Ａ】
0004495381.tif 000007
【図４Ｂ】
0004495381.tif 000008
【図５】
0004495381.tif 000009
【図６】
0004495381.tif 000010
【図７Ａ】
0004495381.tif 000011
【図７Ｂ】
0004495381.tif 000012
【図８】
0004495381.tif 000013
【図９】
0004495381.tif 000014