(57)【特許請求の範囲】
【請求項１】
キャッシュデータを記憶するデータメモリセルアレイと、
前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイと、
キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードするワード線デコーダと、
前記データメモリセルアレイと前記タグメモリセルアレイに共用のデータ入出力回路と、
前記データメモリセルアレイを構成するメモリセルに対するデータの入出力と、前記タグメモリセルアレイを構成するメモリセルに対するデータの入出力とを切り替える手段とを備え、
前記ワード線デコーダは、前記データメモリセルアレイと前記タグメモリセルアレイとに共用で、前記データメモリセルアレイと前記タグメモリセルアレイのそれぞれのワード線を選択し活性化し、前記データメモリセルアレイのデータの入出力と前記タグメモリセルアレイのデータの入出力は、前記共用のデータ入出力回路により行うことを特徴とするキャッシュメモリ。
【請求項２】
キャッシュデータを記憶するデータメモリセルアレイと、前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイとを有するキャッシュメモリにおいて、
前記キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードして、前記データメモリセルアレイと前記タグメモリセルアレイに共通のワード線を活性化するワード線デコーダを、前記データメモリセルアレイと前記タグメモリセルアレイに共用に設け、
前記データメモリセルアレイは、前記インデックスアドレスにより選択されたエントリ内の入出力ワードを選択するオフセットアドレスにより選択されるｎビットのキャッシュ入出力データの、入出力１ビットにそれぞれ対応する複数（ｎ個）のセクタから構成され、
前記複数のセクタの各々は、前記オフセットアドレスによりカラム選択される前記データメモリセルアレイ用の複数のビット線対により構成されるキャッシュ入出力データの入出力１ビットに対応し、
前記インデックスアドレスにより選択されるｔビットのタグデータ（ｎ＞ｔ）の入出力１ビットに対応する前記ダグメモリセルアレイ用の１対のビット線対は、前記ｎ個の各セクタに分散させて配置されることを特徴とするキャッシュメモリ。
【請求項３】
前記キャッシュメモリは、
前記各セクタ内において、前記データメモリセルアレイ用のビット線対に対するデータの入出力と、前記タグメモリセルアレイ用のビット線対に対するデータの入出力とを切り替える手段と、
前記データメモリセルアレイ用のビット線対に対するデータの入出力と、前記タグメモリセルアレイ用のビット線対に対するデータの入出力とを行うために、前記各セクタ単位に設けられた共用のデータ入出力回路とを備えた請求項２記載のキャッシュメモリ。
【請求項４】
キャッシュデータを記憶するデータメモリセルアレイと、
前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイと、
キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードして、前記データメモリセルアレイと前記タグメモリセルアレイに共通の主ワード線を選択する主ワード線デコーダと、
前記主ワード線に対応して前記データメモリセルアレイを構成するメモリセルを選択するデータ副ワード線を活性化するデータ副ワード線ドライバと、
前記主ワード線に対応して前記タグメモリセルアレイを構成するメモリセルを選択するタグ副ワード線を活性化するタグ副ワード線ドライバと、
前記データメモリセルアレイと前記タグメモリセルアレイに共用のデータ入出力回路と、
前記データメモリセルアレイを構成するメモリセルに対するデータの入出力と、前記タグメモリセルアレイを構成するメモリセルに対するデータの入出力とを切り替える手段とを備え、
前記データメモリセルアレイのデータの入出力と前記タグメモリセルアレイのデータの入出力は、前記共用のデータ入出力回路により行うことを特徴とするキャッシュメモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロプロセッサに搭載されるキャッシュメモリに関する。
【０００２】
【従来の技術】
近年、マイクロプロセッサは、全体の性能向上のために、ＣＰＵと低速大容量の主記憶装置との間に高速のキッシュメモリを設ける方策が多くとられている。
【０００３】
キャッシュメモリに関しては、例えば、John L. Hennessy, David A. Patterson著、“Computer Architecture : A Quantitative Approach”、Morgan Knafmann Publishers, Inc. (1990) 等で詳しく説明されている。
【０００４】
以下に、従来のキャッシュメモリについて説明する。
【０００５】
図５は、このようなキャッシュメモリの一構成例を示したブロック図である。
【０００６】
図５において、１１はキャッシュデータを記憶するデータアレイ、２１はデータアレイのデータを特定する情報（タグ）を記憶するタグアレイである。デーアレイ１１、タグアレイ２１は、それぞれ、メモリセルアレイ１０１、２０１、ワード線デコーダ＆ドライバ１１１、２１１、カラムスイッチ１２１、２２１、データ入出力回路１２２、２２２の基本構成を有する。制御回路、アドレスバッファ等の回路は簡素化のために省略してある。また、タグアレイ２１にはコンパレータ２２２が含まれ、タグアレイ２１からのヒット信号ＨＩＴでデータアレイ１１の入出力を制御する点を除くと、データアレイ１１、タグアレイ２１のそれぞれは、通常のスタティック型メモリ（ＳＲＡＭ）と同様の構成であり、同様に動作する。
【０００７】
以上のように構成されたキャッシュメモリについて、以下、その動作を説明する。
【０００８】
データアレイ１１、タグアレイ２１とも、そのデータ読み出し基本動作は、ワード線デコーダ＆ドライバ１１１、２１１によりワード線ＷＬが選択され、メモリセルデータがビット線対ＢＬに出力され、カラムスイッチ１２１、２２１で選択されたビット線対ＢＬのデータがセンスアンプ（簡素化のために、図５では省略してある）で増幅され、データ入出力回路１２２、２２２によって出力データＤＯ、ＴＤＯとして読み出される。
【０００９】
データ書き込み基本動作は、データ入出力回路１２２、２２２より入力された入力データＤＩ、ＴＤＩをカラムスイッチ１２１、２２１で選択されたビット線対ＢＬに伝達し、ワード線デコーダ＆ドライバ１１１、２１１により選択されたワード線ＷＬ上のメモリセルにデータを書き込む。これらの基本の読み出し／書き込み動作は通常のＳＲＡＭと同様である。
【００１０】
キャッシュメモリとして、タグアレイ２１は、アドレス３０の内の下位ビットの一部であるインデックスアドレス３０２をアドレスとして、アドレス３０の内の上位ビット（タグアドレス３０３）をデータとして格納し、データアレイ１１は、アドレス３０の内の下位ビットの一部であるインデックスアドレス３０２とオフセットアドレス３０１をアドレスとしてキャッシュデータを格納する。
【００１１】
インデックスアドレス３０２は、キャッシュメモリと主記憶装置とで送受されるデータの最小単位であるライン（エントリ）を選択し、オフセットアドレス３０１は、ライン（エントリ）内の中からワードデータ（入出力データのビット幅に等しい）を選択するものである。
【００１２】
データアレイ１１は、インデックスアドレス３０２とオフセットアドレス３０１をアドレスとするため、一般には、インデックスアドレス３０２でワード線選択を行い、オフセットアドレス３０１でカラム選択を行う。
【００１３】
タグアレイ２１は、インデックスアドレス３０２をアドレスとするため、インデックスアドレス３０２をワード線選択とカラム選択に振り分け、入出力データ幅はタグアドレス３０３の幅（本例ではｔビット）である。
【００１４】
キャッシュ動作の場合、ｔビット幅のタグアレイの出力データとタグアドレス３０３をコンパレータ２２２で比較し、その結果（一致／不一致）をヒット信号ＨＩＴとして出力する。そのヒット信号ＨＩＴによって、データアレイ１１の入出力が制御、つまりヒット（データ一致）の場合のみデータが入出力される、というように制御される。
【００１５】
なお、この従来例において、通常、タグアレイに格納されているステータスフラグ等の特別な情報ビット等に関しては、本発明と関係しないため省略している。
【００１６】
【発明が解決しようとする課題】
しかしながら、前記従来の構成では、データアレイ１１とタグアレイ２１をアクセスするアドレス数が異なるために、データアレイ１１とタグアレイ２１のワード線ＷＬの数が異なり、ワード線デコーダ＆ドライバ１１１、２１１を異なるものとする必要が有る。このために、データアレイ１１とタグアレイ２１を完全に分離した別のアレイとして構成する必要がある。
【００１７】
この理由としては、一般にキャッシュメモリ、ＳＲＡＭのメモリセルは高集積化のために非常に面積の小さいメモリセルで構成されており、ビット線対ＢＬ１対ごとにセンスアンプ、データ入出力回路を配置することが不可能であるために、カラムスイッチ１２１、２２１を設け、複数のビット線対ＢＬに１つのセンスアンプ、データ入出力回路を配置する必要があるからである。
【００１８】
このように、データアレイ１１とタグアレイ２１が別のアレイとして構成されるために、ワード線デコーダ＆ドライバ１１１、２１１、データ入出力回路１２２，２２２といった同様の回路をデータアレイ１１とダグアレイ２１に別々に設ける必要があり、面積ロスが非常に大きくなってしまい、キャッシュメモリを搭載したＬＳＩの高集積化にとって大きな問題である。
【００１９】
さらに、タグアレイ２１からデータアレイ１１へのヒット信号ＨＩＴにおいても、距離が離れた２つのアレイ間を信号伝達するために伝搬遅延が生じ、キャッシュメモリの高速化にとって大きな問題である。
【００２０】
よって、本発明は、上記従来の課題を解決するもので、その目的は、小面積化と高速動作を実現できるキャッシュメモリを提供することにある。
【００２１】
【課題を解決するための手段】
前記の目的を達成するため、本発明に係る第１のキャッシュメモリは、キャッシュデータを記憶するデータメモリセルアレイと、前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイと、キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードするワード線デコーダと、前記データメモリセルアレイと前記タグメモリセルアレイに共用のデータ入出力回路と、前記データメモリセルアレイを構成するメモリセルに対するデータの入出力と、前記タグメモリセルアレイを構成するメモリセルに対するデータの入出力とを切り替える手段とを備え、前記ワード線デコーダは、前記データメモリセルアレイと前記タグメモリセルアレイとに共用で、前記データメモリセルアレイと前記タグメモリセルアレイのそれぞれのワード線を選択し活性化し、前記データメモリセルアレイのデータの入出力と前記タグメモリセルアレイのデータの入出力は、前記共用のデータ入出力回路により行うことを特徴とする。
【００２３】
このような構成によれば、データメモリセルアレイとタグメモリセルアレイのワード線デコーダ＆ドライバを兼用して、インデックスアドレスにより両アレイのワード線を選択し、データメモリセルアレイのデータ入出力とタグメモリセルアレイのデータ入出力とを切り替えて、共用のデータ入出力回路によりデータ入出力を行う構成にすることで、従来ではデータアレイとタグアレイとに個別に存在していたワード線デコーダ＆ドライバとデータ入出力回路を兼用することができるので、小面積化を実現することができる。
【００２４】
さらに、データメモリセルアレイとタグメモリセルアレイとを一体で構成できるため、伝搬遅延の影響を低減することができ、ヒット信号の高速化、つまりキャッシュメモリの高速化を実現することができる。
【００２５】
前記の目的を達成するため、本発明に係る第２のキャッシュメモリは、キャッシュデータを記憶するデータメモリセルアレイと、前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイとを有するキャッシュメモリであって、前記キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードして、前記データメモリセルアレイと前記タグメモリセルアレイに共通のワード線を活性化するワード線デコーダを、前記データメモリセルアレイと前記タグメモリセルアレイに共用に設け、前記データメモリセルアレイは、前記インデックスアドレスにより選択されたエントリ内の入出力ワードを選択するオフセットアドレスにより選択されるｎビットのキャッシュ入出力データの、入出力１ビットにそれぞれ対応する複数（ｎ個）のセクタから構成され、前記複数のセクタの各々は、前記オフセットアドレスによりカラム選択される前記データメモリセルアレイ用の複数のビット線対により構成されるキャッシュ入出力データの入出力１ビットに対応し、前記インデックスアドレスにより選択されるｔビットのタグデータ（ｎ＞ｔ）の入出力１ビットに対応する前記ダグメモリセルアレイ用の１対のビット線対は、前記ｎ個の各セクタに分散させて配置されることを特徴とする。
【００２６】
前記第２のキャッシュメモリは、前記各セクタ内において、前記データメモリセルアレイ用のビット線対に対するデータの入出力と、前記タグメモリセルアレイ用のビット線対に対するデータの入出力とを切り替える手段と、前記データメモリセルアレイ用のビット線対に対するデータの入出力と、前記タグメモリセルアレイ用のビット線対に対するデータの入出力とを行うために、前記各セクタ単位に設けられた共用のデータ入出力回路とを備えることが好ましい。
【００２７】
このような構成によれば、データメモリセルアレイとタグメモリセルアレイのワード線を選択するワード線デコーダ＆ドライバを共用に設け、キャッシュ入出力データ１ビットに対応しオフセットアドレスによりカラム選択される複数のデータメモリセルアレイのビット線対と、タグメモリセルデータの入出力１ビットに対応する１対のビット線対とを１つのセクタに配置し、各セクタにおいて、データメモリセルアレイ用のビット線対に対するデータの入出力と、タグメモリセルアレイ用のビット線対に対するデータの入出力とを切り替えて、共用のデータ入出力回路によりデータ入出力を行う構成にすることで、前記第１のキャッシュメモリと同等の作用効果を奏する。
【００２８】
前記の目的を達成するため、本発明に係る第３のキャッシュメモリは、キャッシュデータを記憶するデータメモリセルアレイと、前記データメモリセルアレイのデータを特定するタグを記憶するタグメモリセルアレイと、キャッシュメモリのエントリを選択するインデックスアドレスの全部もしくは一部をデコードして、前記データメモリセルアレイと前記タグメモリセルアレイに共通の主ワード線を選択する主ワード線デコーダと、前記主ワード線に対応して前記データメモリセルアレイを構成するメモリセルを選択するデータ副ワード線を活性化するデータ副ワード線ドライバと、前記主ワード線に対応して前記タグメモリセルアレイを構成するメモリセルを選択するタグ副ワード線を活性化するタグ副ワード線ドライバと、前記データメモリセルアレイと前記タグメモリセルアレイに共用のデータ入出力回路と、前記データメモリセルアレイを構成するメモリセルに対するデータの入出力と、前記タグメモリセルアレイを構成するメモリセルに対するデータの入出力とを切り替える手段とを備え、前記データメモリセルアレイのデータの入出力と前記タグメモリセルアレイのデータの入出力は、前記共用のデータ入出力回路により行うことを特徴とする。
【００２９】
前記第３のキャッシュメモリは、前記データメモリセルアレイと前記タグメモリセルアレイに共用のデータ入出力回路と、前記データメモリセルアレイを構成するメモリセルに対するデータの入出力と前記タグメモリセルアレイを構成するメモリセルに対するデータの入出力とを切り替える手段とを備え、前記データメモリセルアレイのデータの入出力と前記タグメモリセルアレイのデータの入出力は、前記共用のデータ入出力回路により行うことが好ましい。
【００３０】
このような構成によれば、データメモリセルアレイとタグメモリセルアレイとに共通の主ワード線を選択する主ワード線デコード回路を共用に設け、データメモリセルアレイとタグメモリセルアレイのそれぞれのワード線ドライバ回路でそれぞれの副ワード線を活性化し、データメモリセルアレイのデータ入出力とタグメモリセルアレイのデータ入出力とを切り替えて、共用のデータ入出力回路によりデータ入出力を行う構成にすることで、前記第１および第２のキャッシュメモリと同様の作用効果を奏すると共に、ワード線を階層化することで、ワード線の高速化、つまりさらなるキャッシュメモリの高速化と、低消費電力化を実現することができる。
【００３１】
【発明の実施の形態】
以下、本発明の実施の形態について、図面に基づいて説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態によるキャッシュメモリの構成例を示すブロック図である。
【００３２】
図１において、１０は、キャッシュデータを記憶するデータメモリセルアレイ１０１と、データメモリセルアレイ１０１のデータを特定する情報（タグ）を記憶するタグメモリセルアレイ２０１とを合成して１つのアレイとしたキャッシュメモリであり、データメモリセルアレイ１０１およびタグメモリセルアレイ２０１に加えて、ワード線デコーダ＆ドライバ１１１、カラムスイッチ１２１、およびデータ入出力回路１２３からなる基本構成を有する。なお、図１において、制御回路、アドレスバッファ等の回路は簡素化のために省略してある。また、１２３はデータ入出力回路に加え、タグ／データ入出力切替回路とコンパレータを合わせて１つのブロックとしてある。なお、以下の説明では、データ入出力回路、タグ／データ入出力切替回路、およびコンパレータに同一の符号１２３を付す。
【００３３】
キャッシュメモリ１０は、アドレス３０によってアクセスされる。キャッシュメモリ１０の動作を説明する前に、図２を用いて、アドレス３０がキャッシュメモリ１０でどのように使われるかを説明する。
【００３４】
キャッシュメモリ１０と主記憶装置（不図示）とはライン（エントリ）を最小単位としてデータを送受し、そのライン（エントリ）を示す（選択する）のが、図２に示すインデックスアドレス（ｉビット）である。
【００３５】
また、キャッシュメモリのデータ入出力幅（ｎビット）はライン（エントリ）幅より小さく、そのライン（エントリ）内の中からワードデータ（入出力データのビット幅に等しい）を選択するのが、図２に示すオフセットアドレス（ｂビット）である。
【００３６】
また、アドレスの上位ビットはタグアドレス（ｔビット）であり、タグメモリセルアレイ２０１に書き込まれているのは、このタグアドレス（ｔビット）である。
【００３７】
具体的に説明すると、キャッシュメモリのデータメモリセルアレイ１０１は、インデックスアドレス（ｉビット）とオフセットアドレス（ｂビット）でアクセスされ、ｎビット幅のデータを入出力する。
【００３８】
一方、タグメモリセルアレイ２０１は、インデックスアドレス（ｉビット）でアクセスされ、ｔビット幅のデータ（＝タグアドレス）を入出力する。さらに、タグメモリセルアレイ２０１の出力データは、コンパレータ１２３によりタグアドレスと比較され、一致／不一致が検出されてヒット信号がデータメモリセルアレイ１０１に出力される。ヒット（データ一致）の場合のみデータメモリセルアレイ１０１のデータを入出力するように、このヒット信号によりデータメモリセルアレイ１０１が制御される。
【００３９】
これがキャッシュメモリの基本動作である。ただし、ステータスフラグ等の特別な情報ビット等に関しては、本発明とは関係せず、説明の明確化のために省略している。なお、その詳細は前述の参考文献に詳しく記載されている。
【００４０】
ここで、再び図１に戻り、本実施の形態のキャッシュメモリに関し、以下、その動作を説明する。
【００４１】
インデックスアドレス３０２によりアクセスされるワード線デコーダ＆ドライバ１１１が、データメモリセルアレイ１０１とタグメモリセルアレイ２０１に共通のワード線ＷＬを選択する。タグメモリセルアレイ２０１は、インデックスアドレス３０２のみによってアクセスされるので、ｔビット幅の各入出力データに対応するｔ対のビット線対ＢＬから構成される。一方、データメモリセルアレイ１０１は、インデックスアドレス３０２とオフセットアドレス３０１によりアクセスされるので、オフセットアドレス３０１が入力されるカラムスイッチ１２１により複数のビット線対ＢＬをカラム選択し、ｎビットのデータを入出力する。
【００４２】
タグメモリセルアレイ２０１は、ｔ対のビット線対ＢＬから構成されているので、ｔビット幅の各入出力データを入出力する回路を各ビット線対の配置ピッチで配置することが出来ないのは従来例で述べた通りである。
【００４３】
しかしながら、本実施形態では、タグ／データ入出力切替回路１２３によりデータメモリセルアレイ１０１とタグメモリセルアレイ２０１からのデータを切り替えて、共通のデータ入出力回路１２３でデータメモリセルアレイ１０１とタグメモリセルアレイ２０１の両方のデータを入出力する。
【００４４】
このように、共通のデータ入出力回路１２３を用いることで、タグメモリセルアレイ２０１のビット線対と同じ配置ピッチでタグデータ入出力回路を配置すること無く、１入出力ビットに１対のビット線対のデータを出力することができる。
【００４５】
なお、図１ではタグ／データ入出力切替回路、コンパレータ、およびデータ入出力回路を１つのブロック１２３として示しているが、この具体的回路構成は任意であり、通常の論理回路で構成することができる。このようにして、データメモリセルアレイ１０１とタグメモリセルアレイ２０１とを合成して１つのアレイとしてキャッシュメモリ１０を構成することができる。
【００４６】
以上のように、本実施形態によれば、データメモリセルアレイ１０１とタグメモリセルアレイ２０１のワード線デコーダ＆ドライバ１１１を兼用して、インデックスアドレス３０２により両アレイのワード線ＷＬを選択し、データメモリセルアレイ１０１のデータ入出力とタグメモリセルアレイ２０１のデータ入出力を切り替えて、共用のデータ入出力回路１２３によりデータ入出力を行う構成にすることで、従来ではデータアレイとタグアレイとに個別に存在していた、ワード線デコーダ＆ドライバとデータ入出力回路を兼用できるので、小面積化を実現することができる。
【００４７】
さらに、データメモリセルアレイ１０１とタグメモリセルアレイ２０１とを一体で構成できるため、伝搬遅延の影響を低減することができ、ヒット信号の高速化、つまりキャッシュメモリの高速化を実現することができる。
【００４８】
（第２の実施形態）
図３は、本発明の第２の実施形態によるキャッシュメモリの構成例を示すブロック図である。
【００４９】
図３において、１０は、キャッシュデータを記憶するデータメモリセルアレイとデータメモリセルアレイのデータを特定する情報（タグ）を記憶するタグアレイとを合成して１つのデータ＆タグメモリセルアレイ１５１として構成したキャッシュメモリであり、データ＆タグメモリセルアレイ１５１に加えて、ワード線デコーダ＆ドライバ１１１、カラムスイッチ１２１、データ入出力回路１２３の基本構成を有する。なお、制御回路、アドレスバッファ等の回路は簡素化のために省略してある。また、１２３はデータ入出力回路に加え、タグ／データ入出力切替回路、コンパレータを合わせて１つのブロックとしてある。なお、以下の説明では、データ入出力回路、タグ／データ入出力切替回路、およびコンパレータに同一の符号１２３を付す。
【００５０】
次に、以上のように構成された本実施形態によるキャッシュメモリ１０の動作について説明する。
【００５１】
キャッシュメモリ１０の動作として、アドレス３０によるアクセスの仕方は第１の実施形態で示した通りである。インデックスアドレス３０２によりアクセスされるワード線デコーダ＆ドライバ１１１が、データメモリセルアレイとタグメモリセルアレイに共通のワード線ＷＬを選択する。データ＆タグメモリセルアレイ１５１は、データメモリセルアレイの入出力ビット数ｎに等しいセクタに分割されており、各セクタに配置されたデータメモリセルアレイ用のビット線対ＤＢＬは、オフセットアドレス３０１によりアクセスされるカラムスイッチ１２１によって選択される。一方、タグメモリセルアレイ用には、入出力ビット数に等しいｔ対のビット線対が必要であり、このタグメモリセルアレイ用ビット線対ＴＢＬを１対ずつ各セクタに配置する。
【００５２】
一般に、ｎ＞ｔであるので、タグメモリセルアレイ用ビット線対ＴＢＬ（ｔ対）をｎ個のセクタに１対ずつ配置することが可能である。そして、タグ／データ入出力切替回路１２３により、各セクタにおけるデータメモリセルアレイ用ビット線対ＤＢＬのデータ入出力と、タグメモリセルアレイ用ビット線対ＴＢＬのデータ入出力とを切り替えて、共通のデータ入出力回路１２３でデータメモリセルアレイとタグメモリセルアレイの両方のデータを入出力する。
【００５３】
なお、図３において、タグ／データ入出力切替回路、コンパレータ、およびデータ入出力回路を１つのブロック１２３として示しているが、この具体的回路構成は任意であり、通常の論理回路で構成することができる。
【００５４】
また、データアメモリセルレイ用ビット線対ＤＢＬを選択するカラムスイッチに、タグメモリセルアレイ用ビット線対ＴＢＬを選択する論理を加えることでタグ／データ入出力切り替えを実現することも可能である。
【００５５】
このようにして、データメモリセルアレイとタグメモリセルアレイとを一体化して、１つのデータ＆タグメモリセルアレイ１５１としてキャッシュメモリ１０を構成することができる。
【００５６】
以上のように、本実施形態によれば、データメモリセルアレイとタグメモリセルアレイのワード線ＷＬを共に選択するワード線デコーダ＆ドライバ１１１を設け、キャッシュ入出力データ１ビットに対応しオフセットアドレスによりカラム選択される複数のデータメモリセルアレイ用のビット線対ＤＢＬと、タグデータの入出力１ビットに対応するビット線対ＴＢＬとを１つのセクタに配置し、各セクタでデータメモリセルアレイ用のビット線対ＤＢＬのデータの入出力と、タグメモリセルアレイ用の１対のビット線対ＴＢＬのデータの入出力とを切り替えて、共用のデータ入出力回路１２３によりデータ入出力を行う構成にすることで、従来ではデータアレイとタグアレイとに個別に存在していたワード線デコーダ＆ドライバおよびデータ入出力回路を兼用することができるので、小面積化を実現することができる。
【００５７】
さらに、データメモリセルアレイとタグメモリセルアレイとをデータ＆タグメモリセルアレイ１５１として一体で構成できるため、伝搬遅延の影響を低減することができ、ヒット信号の高速化、つまりキャッシュメモリの高速化を実現することができる。
【００５８】
（第３の実施形態）
図４は、本発明の第３の実施形態によるキャッシュメモリの構成例を示すブロック図である。
【００５９】
図４において、１１２は主ワード線ＭＷＬを選択する主ワード線デコーダ、１１３、１１４は、それぞれ、データ副ワード線ＤＷＬ、タグ副ワード線ＴＷＬを活性化するデータ副ワード線ドライバ、タグ副ワード線ドライバである。その他の構成は、第１の実施形態で示した図１と同じである。
【００６０】
次に、以上のように構成された本実施形態によるキャッシュメモリ１０の動作について説明する。
【００６１】
インデックスアドレス３０２によりアクセスされる主ワード線デコーダ１１２が主ワード線ＭＷＬを選択する。タグメモリセルアレイ２０１の副ワード線ＴＷＬは、選択された主ワード線ＭＷＬに対応してタグ副ワード線ドライバ１１４により活性化される。同じく、データメモリセルアレイ１０１の副ワード線ＤＷＬは、選択された主ワード線ＭＷＬに対応してデータ副ワード線ドライバ１１３により活性化される。
【００６２】
ワード線は、主ワード線ＭＷＬとタグ副ワード線ＴＷＬ、データ副ワード線ＤＷＬに階層化されるので、ワード線の遅延時間を低減することができる。
【００６３】
さらに、データメモリセルアレイ１０１とタグメモリセルアレイ２０１のそれぞれのワード線は、それぞれのワード線ドライバ１１３、１１４により独立して制御することができるので、必要に応じて一方のみ活性化することで低消費電力化も同時に実現することができる。
【００６４】
それ以外の動作は、図１を用いて示した第１の実施形態と全く同じである。
【００６５】
以上のように、本実施形態によれば、データメモリセルアレイ１０１とタグメモリセルアレイ２０１とに共通の主ワード線ＭＷＬを選択する主ワード線デコーダ１１２を設け、データメモリセルアレイ１０１とタグメモリセルアレイ２０１のそれぞれのワード線ドライバ回路１１３、１１４でそれぞれの副ワード線ＤＷＬ、ＴＷＬを活性化し、データアメモリセルレイ１０１のデータ入出力と、タグメモリセルアレイ２０１のデータ入出力とを切り替えて、共用のデータ入出力回路１２３によりデータ入出力を行う構成にすることで、従来ではデータアレイとタグアレイとに個別に存在していたワード線デコーダおよびデータ入出力回路を兼用できるので、小面積化を実現することができる。
【００６６】
また、データメモリセルアレイとタグメモリセルアレイとを一体で構成できるため、伝搬遅延の影響を低減することができ、ヒット信号の高速化、つまりキャッシュメモリの高速化を実現することができる。
【００６７】
さらに、ワード線を階層化することで、ワード線の高速化、つまりさらなるキャッシュメモリの高速化と、低消費電力化を実現することができる。
【００６８】
なお、本発明の上記実施形態のいずれにおいても、インデックスアドレス３０２の全部をデコードする場合を示したが、ライン（エントリ）数が多い場合は、全体のアレイを複数のブロック分割して、インデックスアドレス３０２の一部のビットをそのブロック選択に使用するという通常用いられるブロック分割手法を用いれば良いことは言うまでもない。
【００６９】
【発明の効果】
以上説明したように、本発明のキャッシュメモリによれば、従来ではデータメモリセルアレイとタグメモリセルアレイとに個別に存在していたワード線デコーダ＆ドライバとデータ入出力回路を兼用することができるので、小面積化を実現することができる。
【００７０】
また、伝搬遅延の影響を低減することができるので、ヒット信号の高速化、つまりキャッシュメモリの高速化を実現することができる。
【００７１】
さらに、ワード線を階層化することで、ワード線の高速化、つまりさらなるキャッシュメモリの高速化と、低消費電力化を実現することができる。
【図面の簡単な説明】
【図１】  本発明の第１の実施形態によるキャッシュメモリの構成例を示すブロック図
【図２】  本発明のアドレスの構成を示す図
【図３】  本発明の第２の実施形態によるキャッシュメモリの構成例を示すブロック図
【図４】  本発明の第３の実施形態によるキャッシュメモリの構成例を示すブロック図
【図５】  従来のキャッシュメモリの構成例を示すブロック図
【符号の説明】
１０  キャッシュメモリアレイ
１１  データアレイ
２１  タグアレイ
１０１  データメモリセルアレイ
１１１  ワード線デコーダ＆ドライバ
１１２  主ワード線デコーダ
１１３  データ副ワード線ドライバ
１１４  タグ副ワード線ドライバ
１２１  カラムスイッチ
１２２  データ入出力回路
１２３  タグ／データ入出力切替回路、データ入出力回路、コンパレータ
１５１  データ＆タグメモリセルアレイ
２０１  タグメモリセルアレイ
３０  アドレス
３０１  オフセットアドレス
３０２  インデックスアドレス
３０３  タグアドレス
ＢＬ  ビット線対
ＤＢＬ  データメモリセルアレイ用ビット線対
ＤＷＬ  データメモリセルアレイ用ワード線
ＨＩＴ  ヒット信号
ＴＢＬ  タグメモリセルアレイ用ビット線対
ＴＷＬ  タグメモリセルアレイ用ワード線
ＷＬ  ワード線
【図１】
0003838537.tif 000002
【図２】
0003838537.tif 000003
【図３】
0003838537.tif 000004
【図４】
0003838537.tif 000005
【図５】
0003838537.tif 000006