(57)【特許請求の範囲】
【請求項１】
データ・ランダムアクセスメモリ（ＲＡＭ）と、
上記データＲＡＭに結合されたタグＲＡＭと、
上記データＲＡＭ及び上記タグＲＡＭに結合された制御器と、
上記データＲＡＭ、上記タグＲＡＭ及び上記制御器に結合されたパッド・ロジックと、
アドレスを受けるために上記パッド・ロジックに結合された第１のマルチプレクサと、
アドレスを復号するために上記タグＲＡＭと結合されたデコーダと、
入力が上記第１のマルチプレクサの出力に結合された、入力及び出力をもつ第１のラッチであって、デジタルクロックの第１位相の間にアドレスを記憶し、該デジタルクロックの第２位相の間にアドレスを上記デコーダに供給する第１のラッチと、
入力が上記第１のラッチの出力に結合され、出力が上記第１のマルチプレクサの入力に結合された、入力及び出力をもつ第２のラッチであって、上記デジタルクロックの第２位相の間にアドレスを記憶し、該デジタルクロックの第１位相の間にアドレスを上記第１のマルチプレクサに供給する第２のラッチと
を具え、
上記第１のマルチプレクサは、上記制御器より選択入力を受けるよう結合され、上記デジタルクロックの第１位相の間に、上記パッド・ロジックからのアドレスと上記第２ラッチからのアドレスのどちらかを選択し、
上記デコーダは、供給されたアドレスを、上記デジタルクロックの第１位相の間に復号するキャッシュメモリ。
【請求項２】
上記データＲＡＭは少なくとも２つのセクションを含み、上記キャッシュメモリは更に、
少なくとも２つのデータ入力をもち、各データ入力が上記データＲＡＭの異なるセクションに結合された第３のマルチプレクサであって、上記制御器からの選択入力を受けるよう結合され、上記データＲＡＭの上記第１セクションより供給されるデータと、上記データＲＡＭの上記第２セクションより供給されるデータのどちらかを選択するようにされた第３のマルチプレクサを含む請求項２のキャッシュメモリ。
【請求項３】
データ・ランダムアクセスメモリ（ＲＡＭ）と、
上記データＲＡＭに結合されたタグＲＡＭと、
上記データＲＡＭ及び上記タグＲＡＭに結合された制御器と、
上記データＲＡＭ、上記タグＲＡＭ及び上記制御器に結合されたパッド・ロジックと、
アドレスを受けるために上記パッド・ロジックに結合された第１のマルチプレクサと、
アドレスを復号するために上記タグＲＡＭと結合されたデコーダと、
入力が上記第１のマルチプレクサの出力に結合され、出力が第２のマルチプレクサの入力に結合された、入力及び出力をもつ第１のラッチと、
入力が上記第１のラッチの出力に結合され、出力が上記第１のマルチプレクサの入力に結合された、入力及び出力をもつ第２のラッチと、
を具えるキャッシュメモリにおけるアドレス供給方法において、
上記第１のラッチが、デジタルクロックの第１位相の間にアドレスを記憶し、該デジタルクロックの第２位相の間にアドレスを上記デコーダに供給し、
上記第２のラッチが、上記デジタルクロックの第２位相の間にアドレスを記憶し、該デジタルクロックの第１位相の間にアドレスを上記第１のマルチプレクサに供給し、
上記第１のマルチプレクサが、上記制御器より選択入力を受けて、上記デジタルクロックの第１位相の間に、上記パッド・ロジックからのアドレスと上記第２ラッチからのアドレスのどちらかを選択し、
上記デコーダが、供給されたアドレスを、上記デジタルクロックの第１位相の間に復号するアドレス供給方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルメモリ装置、もっと具体的には集積されたキャッシュ・ランダムアクセスメモリ（ＲＡＭ）に関するものである。
【０００２】
【従来の技術】
ランダムアクセス主メモリ内のデータに頻繁にアクセスする中央処理ユニット（ＣＰＵ）を含むデジタルシステムは、データにより早くアクセスするためにキャッシュメモリを具えることが多い。キャッシュメモリは、ＣＰＵの比較的近くに置かれて一般に高速論理回路を実現している。キャッシュメモリは、主（メイン）メモリ内にあるデータのサブセット（一部）を記憶している。ＣＰＵは、主メモリからデータを読取ろうとするとき、キャッシュメモリを調べ、アクセスされるデータがキャッシュメモリ内にあるかどうかを決める。もしあれば、主メモリにアクセスするより早いキャッシュメモリからデータを読取る。
【０００３】
キャッシュメモリは、ＣＰＵにより最も多くアクセスされそうなデータを格納している。このデータは大抵、ＣＰＵによって現に読取られているデータのアドレスに隣接するアドレスに位置する。したがって、ＣＰＵは、現在キャッシュメモリ内にないデータを読取る場合、現にアクセスされているデータに隣接するデータを主メモリからキャッシュメモリに書込んでキャッシュメモリを更新する。こうすれば、キャッシュメモリは、ＣＰＵが最も多くアクセスする可能性のあるデータを含むようになり、キャッシュメモリからのアクセスが主メモリからのアセクスより早いため、これによってコンピュータシステムの性能が向上する。
【０００４】
【発明が解決しようとする課題】
従来のキャッシュメモリは大抵、３つの異なる集積回路の上に作られている。１つの集積回路でなく３つの集積回路を使用することによって、キャッシュメモリのサイズが増大している。更に、３つの集積回路は、ただ１つの集積回路より多くの電力を消費する。本発明の課題は、単一の集積回路（ＩＣ）チップ上に実現しうる新規なアーキテクチュア
（構成）をもつキャッシュメモリ及びメモリ速度を増加させうるアドレス供給方法を提供することである。
【０００５】
【課題を解決するための手段】
本発明に係るキャッシュメモリは、データ・ランダムアクセスメモリ（ＲＡＭ）と、上記データＲＡＭに結合されたタグＲＡＭと、上記データＲＡＭ及び上記タグＲＡＭに結合された制御器と、上記データＲＡＭ、上記タグＲＡＭ及び上記制御器に結合されたパッド・ロジックと、アドレスを受けるために上記パッド・ロジックに結合された第１のマルチプレクサと、アドレスを復号するために上記タグＲＡＭと結合されたデコーダと、入力が上記第１のマルチプレクサの出力に結合され、出力が第２のマルチプレクサの入力に結合された、入力及び出力をもつ第１のラッチであって、デジタルクロックの第１位相の間にアドレスを記憶し、該デジタルクロックの第２位相の間にアドレスを上記デコーダに供給する第１のラッチと、入力が上記第１のラッチの出力に結合され、出力が上記第１のマルチプレクサの入力に結合された、入力及び出力をもつ第２のラッチであって、上記デジタルクロックの第２位相の間にアドレスを記憶し、該デジタルクロックの第１位相の間にアドレスを上記第１のマルチプレクサに供給する第２のラッチとを具え、上記第１のマルチプレクサは、上記制御器より選択入力を受けるよう結合され、上記デジタルクロックの第１位相の間に、上記パッド・ロジックからのアドレスと上記第２ラッチからのアドレスのどちらかを選択し、上記デコーダは、供給されたアドレスを、上記デジタルクロックの第１位相の間に復号する。
本発明に係るアドレス供給方法は、データ・ランダムアクセスメモリ（ＲＡＭ）と、上記データＲＡＭに結合されたタグＲＡＭと、上記データＲＡＭ及び上記タグＲＡＭに結合された制御器と、上記データＲＡＭ、上記タグＲＡＭ及び上記制御器に結合されたパッド・ロジックと、アドレスを受けるために上記パッド・ロジックに結合された第１のマルチプレクサと、アドレスを復号するために上記タグＲＡＭと結合されたデコーダと、入力が上記第１のマルチプレクサの出力に結合され、出力が第２のマルチプレクサの入力に結合された、入力及び出力をもつ第１のラッチと、入力が上記第１のラッチの出力に結合され、出力が上記第１のマルチプレクサの入力に結合された、入力及び出力をもつ第２のラッチと、具えるキャッシュメモリにおけるアドレス供給方法において、上記第１のラッチが、デジタルクロックの第１位相の間にアドレスを記憶し、該デジタルクロックの第２位相の間にアドレスを上記デコーダに供給し、上記第２のラッチが、上記デジタルクロックの第２位相の間にアドレスを記憶し、該デジタルクロックの第１位相の間にアドレスを上記第１のマルチプレクサに供給し、上記第１のマルチプレクサが、上記制御器より選択入力を受けて、上記デジタルクロックの第１位相の間に、上記パッド・ロジックからのアドレスと上記第２ラッチからのアドレスのどちらかを選択し、上記デコーダが、供給されたアドレスを、上記デジタルクロックの第１位相の間に復号する。
【０００６】
本発明は、キャッシュメモリの回路要素をデジタルクロックの両方の位相の間に動作させることにより、メモリ速度を増加させている。マルチプレクサ及びラッチで実現した新規な構成により、デジタルクロックが低状態の間にキャッシュメモリのデコーダにアドレスを供給することができる。この構成によってまた、メモリアドレスを幾つかのクロックサイクルにわたって該メモリデコーダに供給することができる。本発明のこれら及び他の利点は、以下の詳細な説明から明らかとなるであろう。
【０００７】
【発明の実施の形態】
本発明は、集積されたキャッシュメモリを開示するものである。本発明を特定の回路、ブロック図及び信号等を参照して説明するが、当業者には、かような細部が単に本発明をよりよく理解するために開示したものにすぎないことが認められよう。したがって、当業者には、これらの具体的な細目がなくても本発明を実施できることが明らかであろう。本発明を不必要に不明瞭にしないために、周知の回路はブロック図で示した。
【０００８】
本発明は、次の特許出願に関連するものである。本明細書にこれらを参照する。
１９９４年１１月９日提出の特願第０８／３３６，５４３号「高性能動的比較回路」、
１９９４年１１月４日提出の特願第０８／３３４，６８７号「デューティサイクルを独立に調整可能なクロック」、
１９９４年１１月９日提出の特願第０８／３３６，５５０号「キャッシュメモリデバイスのカスケード接続方法及び装置」、
１９９４年１１月３０日提出の特願第０８／３４６，７３９号「ＲＡＭメモリに対する単一サイクルフラッシュ」、
１９９４年１１月３０日提出の特願第０８／３４６，７４０号「試験／修理マルチプルＲＡＭ大ブロック方式」、
１９９４年１１月９日提出の特願第０８／３３６，５２４号「比較出力遅延を減らすための電荷共用予充電方式」、
１９９４年１１月９日提出の特願第０８／３３６，５２３号「誤動作を防止するための検知増幅器同相モード・ディップフィルタ回路」。
【０００９】
図１は、キャッシュメモリを含むデジタルシステムのブロック図である。図示のように、中央処理ユニット（ＣＰＵ）１０は、ホストバス１６を介してメモリバス制御器１４に結合される。ホストバス１６は、制御ライン１５、アドレスライン１７及びデータライン１９を含む。メモリバス制御器１４は、システムバス２０を介して主メモリ１８に結合される。キャッシュメモリ１２は、バス２２を介してバス１６に結合される。キャッシュメモリ１２は、主メモリ１８に記憶されたデータのサブセットを記憶し、ＣＰＵ１０は、主メモリ１８内のデータにアクセスするよりも早くキャッシュメモリ１２内のデータにアクセスすることができる。キャッシュメモリ１２は大抵、ＣＰＵ１０が最も多くアクセスしそうなデータを記憶していて、それにより計算速度を上げている。
【００１０】
キャッシュメモリ１２は、主メモリ１８内のデータのサブセットのみを記憶しているので、キャッシュメモリ１２を調べて、その中に特定のアドレスをもつデータがあるかどうかを決めなければならない。ＣＰＵ１０がキャッシュメモリ１２内にあるデータを読取ろうとする場合、該データはキャッシュメモリ１２からＣＰＵ１０に供給されるであろう。ＣＰＵ１０がキャッシュメモリ１２内にないデータを読取ろうとする場合、該データは、キャッシュメモリ１２がメモリバス制御器１４に該データがキャッシュメモリ１２内にないことを知らせた後に、主メモリ１８からＣＰＵ１０に供給される。メモリバス制御器１４は、バス２０を介して主メモリ１８からの読取り動作を開始し、バス１６を介して該データをＣＰＵ１０に供給する。
【００１１】
ＣＰＵ１０がキャッシュメモリ１２内にあるアドレスにデータを書込もうとする場合、該データはキャッシュメモリ１２及び主メモリ１８に書込まれ、キャッシュメモリ１２及び主メモリ１８内のデータが確実に一致するようにする。ＣＰＵ１０がキャッシュメモリ１２内にないアドレスにデータを書込もうとする場合、主メモリ１８のみが更新される。
【００１２】
デジタルシステムは、各キャッシュメモリが主メモリの異なるサブセットを格納する複数のキャッシュメモリを含むことがある。１９９４年１１月９日提出の関連特許出願第０８／３３６，５５０号「キャッシュメモリデバイスのカスケード接続方法及び装置」（対応日本出願：特願平７−２８８８４２号）は、キャッシュメモリと、複数のキャッシュメモリをカスケード（縦続）接続できるＣＰＵとの間の改良されたインタフェースを開示している。本発明のキャッシュメモリ１２は、上記の関連出願の教示に従って他のキャッシュメモリとカスケード接続してもよいことが認められよう。
【００１３】
従来のシステムでは、キャッシュメモリ１２は一般に複数の集積回路（ＩＣ）チップを含んでいる。本発明のキャッシュメモリ１２は、データＲＡＭ、タグＲＡＭ及び制御器を含む。データＲＡＭはデータを記憶し、タグＲＡＭは、データＲＡＭ内のデータに対応する上位アドレスを記憶し、制御器は、タグＲＡＭ及びデータＲＡＭ間のデータ転送を調整すると共に他の機能を行う。従来技術では、データＲＡＭ、タグＲＡＭ及び制御器は大抵、別々の集積回路上に作られている。本発明では、キャッシュメモリ１２はただ１つのＩＣチップより成り、それにより、キャッシュメモリ１２のサイズを減らし、システムの性能を改善している。
【００１４】
図２は、本発明の集積キャッシュメモリ１２の概略ブロック図である。集積キャッシュメモリ１２は、タグＲＡＭ４０、データＲＡＭ５６、制御器３０及びパッド・ロジック５７を含む。読取り又は書込み動作のためのデータのアドレスは、図１に示すホストバス１６から図２に示すパッド・ロジック５７に供給される。読取り及び書込みデータは、パッド・ロジック５７によってキャッシュメモリ１２及びホストバス１６間で転送される。キャッシュメモリ１２がＣＰＵ１０によってアクセスされるデータを含むかどうかを示す信号は、図１に示すように、キャッシュメモリ１２によってメモリバス制御器１４に供給される。
【００１５】
動作時、パッド・ロジック５７は、外部インタフェースを介してメモリ要求（リクエスト）を受取る。図２に示す如く、メモリ要求に関するアドレスは、タグＲＡＭ４０と結合される。該アドレスがタグＲＡＭ内で見付かった（ヒットした）場合、タグＲＡＭ４０は、内部アドレスを発生してこれをデータＲＡＭ５６に結合する。データＲＡＭ５６は、アドレス要求に対応するデータを検索し、該データをパッド・ロジック５７に供給する。これは、外部インタフェースを介して外部に伝えられる。図示のとおり、タグＲＡＭ４０は、制御器３０と結合され、制御器３０から読取り／書込み（Ｒ／Ｗ）制御信号を受ける。タグＲＡＭに結合された上記アドレスがヒットしないで存在しなかった（ミスした）場合、その存在しなかった事象が制御器３０に伝えられ、制御器３０は、要求されたデータがキャッシュメモリ１２内に記憶されていないことを示す信号をパッド・ロジック５７に供給する。
【００１６】
図３は、本発明の集積キャッシュメモリ１２をもっと詳細に示すブロック図である。図２に示したパッド・ロジック５７は、図３では、本発明を機能的に説明するためパッド・ロジック３２，４４及び６０として示した。
【００１７】
タグＲＡＭ４０及びデータＲＡＭ５６は、マルチプレクサ（Ｍ１  ）３４及びマルチプレクサ（Ｍ２  ）３８、ラッチ３６及び４６並びにフリップフロップ４８を共有するので、タグＲＡＭ４０及びデータＲＡＭ５６を別個のＩＣチップ上に作る場合に比べ、キャッシュメモリ１２は小さくなっている。
【００１８】
先に述べたとおり、ＣＰＵ１０がメモリにアクセスする場合、４つの可能性が考えられる。ＣＰＵ１０は、図１に示す如く、キャッシュメモリ１２にあるか又は主メモリ１８だけにあるデータを読取ることができる。ＣＰＵ１０は、キャッシュメモリ１２及び主メモリ１８にあるか又は主メモリ１８だけにあるアドレスに、データを書込むことができる。これより、図３に示す集積キャッシュメモリ１２の動作について、これら４つの動作を別々に説明する。終わりに、本発明のキャッシュメモリの２相動作について述べる。
【００１９】
キャッシュメモリ１２内にあるデータの読取り
図３に示すように、読取ろうとするデータのアドレスは、バス６２を介してキャッシュメモリ１２に供給される。パッド・ロジック３２は、該アドレスを受取り、これをマルチプレクサ（選択装置）３４に供給する。バス６６を介して読取り動作が開始されたことを示す信号を受けるパッド・ロジック４４によって、読取り動作が開始されたことを示すデータが制御器３０に供給される。制御器３０は、アクセスされるデータのアドレスを複数のデコーダ３９及び５２並びに遅延回路５０に供給させる信号を、マルチプレクサ３４及び３８に供給する。マルチプレクサ３４及び３８、ラッチ３６及び４６並びにフリップフロップ４８の動作は、あとでもっと詳細に述べる。
【００２０】
制御器３０はまた、タグＲＡＭ４０及びデータＲＡＭ５６に対する読取り要求を同時に開始する。読取るデータのアドレスは、デコーダ３９によりタグＲＡＭ４０に、デコーダ５２によりデータＲＡＭ５６に供給される。
【００２１】
好適な実施形態では、タグＲＡＭ４０及びデータＲＡＭ５６は、双方向結合メモリ（ｔｗｏ  ｗａｙ  ｓｅｔ  ａｓｓｏｃｉａｔｉｖｅ  ｍｅｍｏｒｉｅｓ）  である。したがって、タグＲＡＭ４０及びデータＲＡＭ５６は共に２つのセクションに分けられ、タグＲＡＭ４０内の各セクションは、データＲＡＭ５６の１つのセクションに対応している。データＲＡＭ５６は、アクセスされるデータのアドレスに対応する２ビットを有する。タグＲＡＭ４０は、上位のアドレスをデータとして記憶する。アクセスされるデータの上位アドレスが、タグＲＡＭ４０に記憶された上位アドレスと一致すれば、データＲＡＭ５６の対応セクション内のデータが所望のデータである。
【００２２】
タグＲＡＭ４０内の両セクションがデコーダ３９より供給されるアドレスと比較され、データＲＡＭ５６内の対応セクションが所望のデータを含むかどうかが決められる。この比較は、読取るデータのアドレスを遅延回路５０から受ける比較回路４２によって行われる。１９９４年１１月９日提出の関連特許出願第０８／３３６，５４３号「高性能動的比較回路」（対応日本出願：特願平７−２８８８４１号）は、改良された比較回路４２のための方法及び装置を開示しており、１９９４年１１月９日提出の関連特許出願第０８／３３６，５２４号「比較出力遅延を減らすための電荷共用予充電方式」（対応日本出願：特願平７−２８８８４１号）は、比較回路４２の出力遅延を減らすための方法及び装置を開示している。比較の結果は、制御器３０に供給される。
【００２３】
データＲＡＭ５６の両セクションは、読取られるデータの下位アドレスに一致するアドレスからデータを供給する。制御器３０は、タグＲＡＭ４０のどちらのセクションが読取られるデータの上位アドレスと一致したかを示す信号をマルチプレクサ５８に供給する。マルチプレクサ５８はそれから、読取られるデータの上位アドレスと一致した、タグＲＡＭ４０のセクションに対応するデータを、データＲＡＭ５６から選択する。該データは、マルチプレクサ５８からパッド・ロジック６０に供給され、該ロジックは、バス６４を介してホストバス１６に上記データを供給する。読取り動作は、図１に示す如く、アクセスされるデータがキャッシュメモリ１２内にあるとの信号を、制御器３０及びパッド・ロジック４４がバス６６を介してメモリバス制御器１４に供給すると完了する。
【００２４】
キャッシュメモリ１２内にないデータの読取り
データがキャッシュメモリ１２内にない場合、最初の動作は、データがキャッシュメモリ１２内にある場合と全く同じである。読取られるデータのアドレスは、バス６２を介してキャッシュメモリ１２に供給される。パッド・ロジック３２は、アクセスされるデータのアドレスを受け、これをマルチプレクサ３４に送る。読取り動作が開始されたことを示すデータが、パッド・ロジック４４によって制御器３０に供給される。制御器３０は、上記アドレスをデコーダ３９及び５２並びに遅延回路５０に供給させる信号を、マルチプレクサ３４及び３８に供給する。制御器３０はまた、タグＲＡＭ４０及びデータＲＡＭ５６への読取り要求を同時に開始する。
【００２５】
読取られるデータのアドレスは、デコーダ３９によってタグＲＡＭ４０に、デコーダ５２によってデータＲＡＭ５６に供給される。タグＲＡＭ４０の両セクションは、前述の如くデコーダ３９によって供給されたアドレスと比較され、その比較結果が制御器３０に送られる。データＲＡＭ５６の両セクションは、前述の如くマルチプレクサ５８にデータを送る。制御器３０は、タグＲＡＭ４０のどちらのセクションも読取られるデータの上位アドレスと一致しなかったことを示す信号を、マルチプレクサ５８に送る。
【００２６】
読取られるデータがキャッシュメモリ１２内にないので、制御器３０は、主メモリ１８から隣接するデータを読取るようメモリバス制御器１４に信号を送る。主メモリ１８からの隣接データは、ＣＰＵ１０により続いてアクセスされる可能性が最も高いという仮定の下に、キャッシュメモリ１２に書込まれる。主メモリ１８からキャッシュメモリ１２に適正なデータを書込むために、タグＲＡＭ４０に、図３に示す如く制御器３０によってラインフィル（行末余白）が用意される。主メモリ１８からのデータは、バス６４を介してデータを受取るパッド・ロジック６０により、データＲＡＭ５６に供給される。タグＲＡＭ４０はそれから、データＲＡＭ５６に書込まれるデータの適正なアドレスが供給される。キャッシュメモリ１２は、こうして主メモリ１８からのデータで更新される。
【００２７】
キャッシュメモリ１２内にあるアドレスへの書込み
ＣＰＵ１０がキャッシュメモリ１２内にあるアドレスにデータを書込もうとする場合、キャッシュメモリ１２及び主メモリ１８が、キャッシュメモリ１２内に記憶されているアドレスに対して確実に同一のデータをもつように、書込むデータをキャッシュメモリ１２及び主メモリ１８の両方に供給しなければならない。
【００２８】
書込み動作の最初のステップは、先に述べたのと全く同じである。具体的にいえば、アクセスされるデータのアドレスがタグＲＡＭ４０の両セクションに供給され、該データがデータＲＡＭ５６の２セクションの一方の中にあるかどうかが決定される。比較回路４２が、タグＲＡＭ４０に一致するアドレスが含まれることを示すと、制御器３０は、一致を示す信号をパッド・ロジック４４に送り、該ロジックは順に、バス６６を介してバス２２（図１）に信号を送る。書込むデータはそれから、パッド・ロジック６０を介してデータＲＡＭ５６に送られ、タグＲＡＭ４０内の対応するアドレスが更新される。好適な実施形態では、データは同時にデータＲＡＭ５６及び主メモリ１８に書込まれる。
【００２９】
キャッシュメモリ１２内にないアドレスへの書込み
アドレスがキャッシュメモリ１２内にない場合の書込み動作については、最初のステップは、アドレスがキャッシュメモリ１２内にある場合の書込み動作について前述したのと全く同じである。具体的にいえば、アクセスされるデータのアドレスがタグＲＡＭ４０の両セクションに供給され、該データがデータＲＡＭ５６の２セクションの一方の中にあるかどうかが決定される。比較回路４２が、タグＲＡＭ４０に一致するアドレスが含まれないことを示すと、制御器３０は、ないことを示す信号をパッド・ロジック４４に送り、該ロジックは順に、バス６６を介して図１に示す如くバス２２に信号を送る。データはそれから、主メモリ１８にのみ書込まれる。
【００３０】
２相動作
図３に示すキャッシュメモリは、メモリ速度を増すため２つの位相で動作する。図４は、デジタルクロックによって供給される２種類の波形８０及び８２を示す。波形８０は、外部のシステムクロックのサンプル出力を示し、サイクルの周期は期間８４及び８８の和である。幾つかの従来メモリでは、メモリ内の回路要素は、デジタルクロックより供給される信号が高状態にある時のみ、アクティブである（動作する）。即ち、図４の波形８０を参照すると、メモリ動作はすべて位相１（φ１  ）の期間８４及び８６内で行われねばならない。例えば、デコーダには期間８４にて１つのアドレスが供給されるが、デコーダは、その信号を位相２（φ２  ）期間８８では処理せず、期間８６になって始めて該信号を復号している。
【００３１】
これに対し、本発明のキャッシュメモリは、２相動作を行う。図４の波形８２（これは、内部クロックである。）を参照すると、本発明のメモリ要素は、位相１期間９０及び９４並びに位相２期間９２の両方において動作し、これによりパイプライン的回路動作が可能となる。例えば、位相２期間９２にてアドレスがデコーダに供給され、位相１期間９４にてデコーダが該アドレスを処理することになる。２相動作は、クロックにより供給される信号が低状態にある間にメモリ要素がデータを処理するので、メモリの速度を高めるものである。
【００３２】
図３において、ラッチ３６及び４６は、２相アドレス指定構成を実現している。具体的にいえば、データは、後述のようにクロック信号の位相２の間にデコーダ３９及び５２に供給される。ラッチ３６は、位相２（φ２  ）の間信号を通し、位相１の間アドレスデータを蓄積する。反対に、ラッチ４６は、位相１（φ１  ）の間信号を通し、位相２の間アドレスデータを蓄積する。
【００３３】
メモリアクセス動作は、多くのサイクルを要することが多い、その場合、同じアドレスがデコーダ３９及び５２に供給されねばならない。ラッチ３６及び４６は、同じアドレスを多くのクロックサイクルにわたってデコーダ３９及び５２に供給すると共に、並列アクセスサイクルが進行していないとき、新しいアドレスをデコーダ３９及び５２に供給することを可能にしている。マルチプレクサ３４は、位相１の間に新しいデータのアドレス（これは、前述の如くパッド・ロジック３２より供給される。）と、前にアクセスされたデータのアドレス（これは、ラッチ４６に蓄積され、位相１の間にマルチプレクサ３４に送られる。）とのどちらかを選択する。
【００３４】
アドレスデータは、位相２の間にデコーダ３９及び５２に供給される。マルチプレクサ３４は、位相１の間に、制御器３０から送られる選択信号に基いて新しいアドレスか又は古いアドレスを選択する。新しいアドレスが選択された場合、これは位相１の間にラッチ３６に蓄積される。ラッチ３６内の該アドレスは、位相２の間にマルチプレクサ３８を介してデコーダ３９及び５２に供給される。これについては、あとでもっと詳しく述べる。ラッチ３６内の上記アドレスはまた、位相２の間にラッチ４６に送られ、該ラッチはこのアドレスを位相２の間に蓄積する。前述のとおり、位相１の間に、前のメモリアクセスデータのアドレスが再び要求されると、マルチプレクサ３４は、位相１の間にラッチ４６から供給されたアドレスを選択する。このようにすれば、アドレスを任意の数のクロックサイクルの間にデコーダ３９及び５２に供給できる。更に、アドレスを位相２の間にデコーダ３９及び５２に供給することにより、メモリ速度が上がる。
【００３５】
フリップフロップ４８は、追加のアドレスを記憶するためのものである。フリップフロップ４８に、パッド・ロジック３２からデータアドレスが供給される。フリップフロップ４８は、このアドレスを記憶し、これをマルチプレクサ３８に送る。制御器３０は、制御信号をマルチプレクサ３８に送り、フリップフロップ４８及びラッチ３６から送られたアドレスのどちらかを選択させる。
【００３６】
１９９４年１１月４日提出の同時係属出願第０８／３３４，６８７号「デューティサイクルを独立に調整可能なクロック」（対応日本出願：特願平７−２７５７６２号）は、システムクロックと無関係の調整可能なデューティサイクルをもつ内部クロックを実現する方法及び装置を提供している。この「デューティサイクルを独立に調整可能なクロック」により供給される内部クロック信号を本発明に使用して、本発明のキャッシュメモリ１２のタイミング要求を満たす第１及び第２の位相をもつ２相クロック信号を供給することができる。
【００３７】
以上、本発明を好適な実施形態と共に説明してきたが、当業者には上述の説明から多くの変形、変更及び用途が明らかであろう。
【００３８】
【発明の効果】
本発明によれば、キャッシュメモリを単一のＩＣチップ上に形成しうるので、キャッシュメモリのサイズ及び消費電力を小さくすることができる。また、キャッシュメモリの回路要素をデジタルクロックの両位相の間に動作させることにより、メモリ速度が増す利点がある。
【図面の簡単な説明】
【図１】キャッシュメモリを含むデジタルシステムを示すブロック図。
【図２】本発明の集積キャッシュメモリの概略を示すブロック図。
【図３】図２のキャッシュメモリの詳細を示すブロック図。
【図４】２つのクロック信号の２つの位相を示す波形図。
【符号の説明】
１２  キャッシュメモリ
４０  タグＲＡＭ
５６  データＲＡＭ
３０  制御器
５７（３２，４４，６０）  パッド・ロジック
３４（Ｍ１  ）  第１のマルチプレクサ（選択装置）
３９，５２  デコーダ
３６  第１のラッチ（第１の記憶要素）
４６  第２のラッチ（第２の記憶要素）
３８（Ｍ２  ）  第２のマルチプレクサ（選択装置）
４８  フリップフロップ
５０  遅延回路
４２  比較回路
５８（Ｍ３  ）  第３のマルチプレクサ（選択装置）
【図１】
0003583844.tif 000002
【図２】
0003583844.tif 000003
【図３】
0003583844.tif 000004
【図４】
0003583844.tif 000005