JP4062095B2 - キャッシュメモリ - Google Patents
キャッシュメモリ Download PDFInfo
- Publication number
- JP4062095B2 JP4062095B2 JP2002380647A JP2002380647A JP4062095B2 JP 4062095 B2 JP4062095 B2 JP 4062095B2 JP 2002380647 A JP2002380647 A JP 2002380647A JP 2002380647 A JP2002380647 A JP 2002380647A JP 4062095 B2 JP4062095 B2 JP 4062095B2
- Authority
- JP
- Japan
- Prior art keywords
- cache memory
- way
- ways
- reference history
- leakage current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Static Random-Access Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の属する技術分野】
本発明は、キャッシュメモリに関するものである。
【0002】
【従来の技術】
キャッシュメモリは、主記憶とCPUとの間に設けられた小容量のメモリであり、CPUから主記憶へのアクセス速度を高速化する目的で使用される。したがって、キャッシュメモリはCPUの動作速度と同程度の高速性が要求される。キャッシュメモリに用いられる現在の主流である半導体回路は、CMOS回路であるが、一般に高速な半導体回路は消費電力が大きい。ここで、CMOS回路の消費電力は、充放電による電力消費、短絡電流による電力消費、そしてリーク電流による電力消費の3つに分類される。近年、CMOS回路に供給する電源電圧の低下に伴うMOSトランジスタの閾値電圧の低下によって、CMOS回路のリーク電流による電力消費が急増し、この電力消費量を削減することが大きな課題となっている。CMOS回路のリーク電流は、MOSトランジスタの閾値電圧を高く保持することによって抑制できるが、閾値電圧を高く保持するとCMOS回路の動作速度が低下してしまう。このようなリーク電流の抑制とキャッシュメモリの動作の高速性を維持するという相反する課題を解決する為、従来は、キャッシュメモリにおいて、近い将来に参照されると予測される領域に含まれるMOSトランジスタの閾値電圧を低くし、残りの領域に含まれるMOSトランジスタの閾値電圧を高く保持する方式が提案されている(例えば、非特許文献1または非特許文献2)。
【0003】
【非特許文献1】
Tohru Ishihara, Kunihiro Asada, Asia South Pacific Design Automation Conference 2002,IEEE, "An Architectural Level Energy Reduction Technique For Deep-Submicron Cache Memories", p282,2002年1月7日
【0004】
【非特許文献2】
Ryo Fujioka 他, Proceedings of the 2002 international symposium on Low power electronics and design 2002, "A Preactivating Mechanism for a VT-CMOS Cache using Address Prediction", p247-p250, 2002年8月
【0005】
【発明が解決しようとする課題】
しかしながら、上述したように閾値電圧を制御する従来の方式を採用するキャッシュメモリには以下のような問題点がある。すなわち、上述した従来の方式を採用するキャッシュメモリにおいては、近い将来に参照される領域を予測するために新たなテーブルを備える必要がある。このテーブルは回路的にはキャッシュメモリと同様のものであるためリーク電流によって電力が消費される。したがって、キャッシュメモリにおいてMOSトランジスタの閾値電圧を制御することによって、リーク電流による電力消費を削減しても、結果として上記のテーブルにおける電力消費と相殺されてしまうという問題点がある。
【0006】
本発明は上記問題点を解決するためになされたもので、新たなテーブルを必要とすることなく、動作の高速性の維持と、リーク電流による電力消費の削減を可能としたキャッシュメモリを提供することを課題とする。
【0007】
【課題を解決するための手段】
上記課題を解決するため、本発明のキャッシュメモリは、複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、当該キャッシュメモリにおけるメモリ領域への参照履歴を保持する参照履歴保持手段と、上記参照履歴保持手段に保持された上記参照履歴に基づいて、過去所定回数の間にアクセスされたメモリ領域を構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、上記過去所定回数の間にアクセスされたメモリ領域を除く他のメモリ領域を構成するMOSトランジスタの閾値電圧を上記第1の電圧より高い第2の所定電圧とするリーク電流制御回路とを備えることを特徴としている。
【0008】
この発明によれば、キャッシュメモリには、参照履歴を保持する参照履歴保持手段が備えられている。また、このキャッシュメモリにはリーク電流制御回路が備えられている。このリーク電流制御回路は、上記の参照履歴保持手段に保持された参照履歴に基づいて、過去所定回数の間にアクセスされた領域を構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、残りの領域を第1の電圧より高い第2の所定電圧とする。すなわち、参照履歴保持手段に保持された参照履歴に基づいて過去所定回数の間に参照された領域を近い将来参照される領域であると予測し、予測された領域を構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、その他の領域を構成するMOSトランジスタの閾値電圧をリーク電流の抑制を可能とする第1の所定電圧より高い第2の所定電圧とする。ここで、参照履歴保持手段としては、従来のキャッシュメモリにも搭載されるものであって、主記憶とのデータブロックの置き換えのために参照履歴を保持するメモリをそのまま用いることもでき、あるいは過去の参照履歴を保持する小容量のメモリを用いることもできる。したがって、新たなテーブルを追加することなく、その動作の高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0009】
また、本発明のキャッシュメモリにおいては、上上記参照履歴保持手段は、上記複数のウェイへの過去所定回数の参照履歴を保持し、上記リーク電流制御回路は、上記参照履歴保持手段に保持された上記参照履歴に基づいて、上記過去所定回数の間にアクセスされた上記ウェイを構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、上記過去所定回数の間にアクセスされた上記ウェイを除く他のウェイを構成するMOSトランジスタの閾値電圧を上記第1の電圧より高い第2の所定電圧とすることを特徴としても良い。
【0010】
この発明によれば、上記の参照履歴保持手段には、キャッシュメモリを構成する複数のウェイへの過去所定回数の参照履歴が保持される。そしてリーク電流制御回路は、この参照履歴保持手段に保持された参照履歴に基づいて、過去所定回数の間にアクセスされたウェイ、すなわち近い将来参照されると予想されるウェイを構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、その他のウェイを構成するMOSトランジスタの閾値電圧をリーク電流の抑制を可能とする第1の所定電圧より高い第2の所定電圧とする。上記の参照履歴保持手段としては、過去所定回数のウェイ単位での参照履歴を保持する小容量のメモリをキャッシュメモリに追加すれば良い。したがって、新たなテーブルを追加することなく、その動作の高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0011】
また、本発明のキャッシュメモリにおいては、上記参照履歴保持手段は、上記複数のウェイによって構成される複数のセットそれぞれにおける過去所定回数の参照履歴を保持し、上記リーク電流制御回路は、上記参照履歴保持手段に保持された上記参照履歴に基づいて、上記過去所定回数の間にアクセスされた上記複数のセットそれぞれのラインを構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、上記過去所定回数の間にアクセスされた上記複数のセットそれぞれの上記ラインを除く他のラインを構成するMOSトランジスタの閾値電圧を上記第1の電圧より高い第2の所定電圧とすることを特徴としても良い。
【0012】
この発明によれば、上記の参照履歴保持手段には、上述した複数のウェイによって構成される複数のセットそれぞれにおける参照履歴が保持される。そして、リーク電流制御回路は、この参照履歴保持手段に保持された参照履歴に基づいて、上記の複数のセットそれぞれにおいて過去所定回数の間にアクセスされたライン、すなわち近い将来参照されると予想されるラインを構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、その他のラインを構成するMOSトランジスタの閾値電圧をリーク電流の抑制を可能とする第1の所定電圧より高い第2の所定電圧とする。上記の参照履歴保持手段には、従来のキャッシュメモリにも搭載されるものであって、主記憶とのデータブロックの置き換えのために参照履歴を保持するメモリをそのまま用いることができる。したがって、キャッシュメモリに新たなテーブルを追加することなく、高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0013】
また、上記課題を解決するため、本発明のキャッシュメモリは、複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、当該キャッシュメモリにおけるメモリ領域への参照履歴を保持する参照履歴保持手段と、上記参照履歴保持手段に保持された上記参照履歴に基づいて、過去所定回数の間にアクセスされたメモリ領域を除く他のメモリ領域を構成するCMOS回路への電源電圧の供給を断つリーク電流制御回路とを備えることを特徴としている。
【0014】
この発明によれば、キャッシュメモリには、参照履歴を保持する参照履歴保持手段が備えられている。また、このキャッシュメモリには、リーク電流制御回路が備えられている。このリーク電流制御回路は、上記の参照履歴保持手段に保持された参照履歴に基づいて、過去所定回数の間にアクセスされた領域を除く他の領域を構成するCMOS回路への電源電圧の供給を断つ。すなわち、参照履歴保持手段に保持された参照履歴に基づいて過去所定回数の間に参照された領域を近い将来参照される領域であると予測し、近い将来に参照される可能性の少ない領域を構成するCMOS回路への電源電圧の供給を断つことによって、リーク電流を抑制する。ここで、参照履歴保持手段としては、従来のキャッシュメモリにも搭載されるものであって、主記憶とのデータブロックの置き換えのために参照履歴を保持するメモリをそのまま用いることもでき、あるいは過去の参照履歴を保持する小容量のメモリを用いることもできる。したがって、新たなテーブルを追加することなく、その動作の高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0015】
また、本発明のキャッシュメモリにおいては、上記参照履歴保持手段は、上記複数のウェイへの過去所定回数の参照履歴を保持し、上記リーク電流制御回路は、上記参照履歴保持手段に保持された上記参照履歴に基づいて、過去所定回数の間にアクセスされた上記ウェイを除く他のウェイを構成するCMOS回路への電源電圧の供給を断つことを特徴としても良い。
【0016】
この発明によれば、上記の参照履歴保持手段には、キャッシュメモリを構成する複数のウェイへの過去所定回数の参照履歴が保持される。そしてリーク電流制御回路は、この参照履歴保持手段に保持された参照履歴に基づいて、過去所定回数の間にアクセスされたウェイ、すなわち近い将来参照されると予想されるウェイを除く他のウェイを構成するCMOS回路への電源電圧の供給を断つことによって、リーク電流を抑制する。上記の参照履歴保持手段としては、過去所定回数のウェイ単位での参照履歴を保持する小容量のメモリをキャッシュメモリに追加すれば良い。したがって、新たなテーブルを追加することなく、その動作の高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0017】
また、本発明のキャッシュメモリにおいては、上記参照履歴保持手段は、上記複数のウェイによって構成される複数のセットそれぞれにおける過去所定回数の参照履歴を保持し、上記リーク電流制御回路は、上記参照履歴保持手段に保持された上記参照履歴に基づいて、過去所定回数の間にアクセスされた上記複数のセットそれぞれのラインを除く他のラインを構成するCMOS回路への電源電圧の供給を断つことを特徴としても良い。
【0018】
この発明によれば、上記の参照履歴保持手段には、上述した複数のウェイによって構成される複数のセットそれぞれにおける参照履歴が保持される。そして、リーク電流制御回路は、この参照履歴保持手段に保持された参照履歴に基づいて、上記の複数のセットそれぞれにおいて過去所定回数の間にアクセスされたライン、すなわち近い将来参照されると予想されるラインを除くその他のラインを構成するCMOS回路への電源電圧の供給を断つことによって、リーク電流を抑制する。上記の参照履歴保持手段には、従来のキャッシュメモリにも搭載されるものであって、主記憶とのデータブロックの置き換えのために参照履歴を保持するメモリをそのまま用いることができる。したがって、キャッシュメモリに新たなテーブルを追加することなく、高速性を維持しつつ、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0019】
また、上記課題を解決するため、本発明のキャッシュメモリは、複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、上記複数のウェイのうち一つの所定のウェイを構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、上記所定のウェイを除く他のウェイを構成するMOSトランジスタの閾値電圧を上記第1の所定電圧より高い第2の所定電圧とすることを特徴としている。
【0020】
この発明によれば、複数のウェイのうち一つの所定のウェイの閾値電圧が、他のウェイに設定された閾値電圧の第2の所定電圧より低い第1の所定電圧とされている。第1の所定電圧はMOSトランジスタの動作の高速性を維持可能とするよう予め低く設定されており、第2の所定電圧はMOSトランジスタのリーク電流を抑制可能とするよう予め高く設定されているので、閾値電圧を制御するためのリーク電流防止回路を備えなくても、この所定のウェイに保持されたデータへのアクセス動作の高速性が維持されると共に、他のウェイにおいてはリーク電流が抑制される。
【0021】
また、本発明のキャッシュメモリにおいては、上記アクセス制御回路は、上記複数のウェイのうち最後にアクセスされたウェイに保持されているデータと、上記所定のウェイに保持されたデータとを入れ替えることを特徴とすることが好適である。
【0022】
この発明によれば、アクセス制御回路は、最後にアクセスされたウェイ保持されたデータと上記の所定のウェイに保持されたデータと入れ替える。すなわち、近い将来参照される可能性の高いデータは予め閾値電圧が低く設定された高速動作可能なウェイに置かれるので、キャッシュメモリの動作の高速性が更に高められる。これと共に、他のウェイの閾値電圧は予め高くされているので、閾値電圧を制御するためのリーク電流防止回路を備えなくとも、リーク電流による電力消費も抑制可能である。
【0023】
また、上記課題を解決するため、本発明のキャッシュメモリは、複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、上記複数のウェイのうち所定数のウェイを構成するMOSトランジスタの閾値電圧を第1の電圧とし、上記所定数のウェイを除く他のウェイを構成するMOSトランジスタの閾値電圧を上記第1の所定電圧より高い第2の所定電圧とすることを特徴としている。
【0024】
この発明によれば、複数のウェイのうち所定数のウェイの閾値電圧が、他のウェイに設定された閾値電圧の第2の所定電圧より低い第1の所定電圧とされている。第1の所定電圧はMOSトランジスタの動作の高速性を維持可能とするよう予め低く設定されており、第2の所定電圧はMOSトランジスタのリーク電流を抑制可能とするよう予め高く設定されているので、閾値電圧を制御するためのリーク電流防止回路を備えなくても、この所定数のウェイに保持されたデータへのアクセス動作の高速性が維持されると共に、他のウェイにおいてはリーク電流が抑制される。
【0025】
また、本発明のキャッシュメモリにおいては、上記キャッシュメモリにおけるメモリ領域への参照履歴を保持する参照履歴保持手段を更に備え、上記アクセス制御回路は、上記参照履歴保持手段に保持された上記参照履歴に基づいて、最後にアクセスされた上記ウェイに保持されたデータと、上記所定数のウェイのうち最も過去にアクセスされたウェイに保持されたデータとを入れ替えることを特徴とすることが好適である。
【0026】
この発明によれば、アクセス制御回路は、参照履歴保持手段に保持された参照履歴に基づいて、最後にアクセスされたウェイに保持されたデータと上記の所定数のウェイのうち最も過去にアクセスされたウェイに保持されたデータとを入れ替える。すなわち、近い将来参照される可能性の高いデータは予め閾値電圧が低く設定された高速動作可能なウェイに置かれ、近い将来参照される可能性の低いデータは予め閾値電圧が高く設定されたリーク電流を抑制可能なウェイに置かれるので、閾値電圧を制御するためのリーク電流防止回路を備えなくても、キャッシュメモリの動作の高速性を損なうことなくリーク電流による電力消費を抑制することができる。しかも、参照履歴保持手段は、従来のキャッシュメモリにも搭載されるものであって、主記憶とのデータブロックの置き換えのために参照履歴を保持するメモリをそのまま用いることもでき、あるいは過去の参照履歴を保持する小容量のメモリを用いることもできる。したがって、このキャッシュメモリは新たなテーブルを必要とすることもない。
【0027】
【発明の実施の形態】
本発明の実施形態にかかるキャッシュメモリについて説明する。なお、以下の実施形態に関する説明においては、説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を附し、重複する説明は省略する。
【0028】
(第1実施形態)
まず、本発明の第1実施形態にかかるキャッシュメモリについて、添付の図面を参照して説明する。図1は、第1実施形態にかかるキャッシュメモリ1の構成を示すブロック図である。キャッシュメモリ1は、コントローラ10(アクセス制御回路)と、ウェイ20及び25と、比較器41及び42と、LRUビット表50と、LRUビットレジスタ(参照履歴保持手段)52と、セレクタ60と、マルチプレクサ62と、リーク電流制御回路71及び72とを備えて構成される。このキャッシュメモリ1は、説明を簡単にするため2ウェイのキャッシュメモリとしているが、これに代えて、例えば4ウェイトいったキャッシュメモリとすることもできる。
【0029】
ウェイ20は、複数のタグ21と、複数のタグ21にそれぞれ対応付けられた複数のライン22を備える。また、ウェイ25は、複数のタグ26と、複数のタグ26にそれぞれ対応付けられた複数のライン27を備える。ウェイ20及び25に備えられる複数のラインはそれぞれ、CMOS回路を用いたメモリ素子によって構成される。ここで、ラインとは、主記憶からコピーされたデータブロックが格納される領域であり、例えば16バイトのデータブロックが格納される。また、タグとは、各ラインが主記憶のどの部分が格納されているかを示すタグアドレスが格納される領域である。また、各ウェイにおける同一のインデックスを有するタグとラインの集合はセットと呼ばれる。
【0030】
ここで、CPUからキャッシュメモリにアクセスがあった場合の動作を簡単に説明する。キャッシュメモリ1にCPUから参照アドレス90を指定してアクセスがあると、参照アドレスの下位ビット92によって特定されるインデックスを有するセットが選ばれる。そして、選ばれたセットのタグアドレスは、ウェイ20に含まれるものが比較器41に、ウェイ25に含まれるものが比較器42にそれぞれ出力される。出力されたタグアドレスは比較器41及び42によって、参照アドレスの上位ビット91によって特定されるタグアドレスと比較される。比較器41または42によって、タグアドレスの一致が検出されると、そのタグアドレスと対応付けられたラインが選択される。そして、参照アドレスのオフセット部93によって特定されるオフセット値によって、上記のように選択されたラインから、必要なデータが取り出されてCPUに出力される。
【0031】
比較器41及び42は、上述したように、ウェイ20及び21によって構成される複数のセットのうち、参照アドレス90の下位ビット92と同じインデックスをもつセットからタグアドレスが出力され、これらのタグアドレスと、参照アドレス90の上位ビット91によって特定されるタグアドレスとの比較結果をコントローラ10に出力する。
【0032】
LRU(Least Recently Used)ビット表50は、各セットに含まれる複数のラインへの参照履歴を保持する。すなわち、LRUビット表50は、各セットに対応付けられる複数のビットセットを備え、各セット毎にそのセットに含まれる複数のラインのうち、どのラインが過去所定回数の間にアクセスされたかを示す参照履歴を上記のビットセットに含まれるビットのON・OFFの組み合わせによって保持する。LRUビット表50は、例えば、主記憶から読み込まれるデータブロックをキャッシュメモリへ書き込む場合に利用される。すなわち、主記憶から読み込まれたデータブロックを、キャッシュメモリ1に格納する場合に、そのデータブロックのアドレスと同一のインデックスを有するセットにおいて、LRUビット表50に保持された参照履歴によって特定される最も古く参照されたラインに、そのデータブロックが格納される。
【0033】
LRUビットレジスタ52は、キャッシュメモリ1への参照履歴をウェイ単位で保持する。すなわち、LRUビットレジスタ52はビットセットからなり、複数のウェイのうち、どのウェイが過去所定回数の間に参照されたかを示す参照履歴を、上記のビットセットに含まれるビットのON・OFFの組み合わせによって保持する。本実施形態のLRUビットレジスタ52は、ウェイ20及び25のうち最近参照されたウェイを示す参照履歴を、上記のビットセットのON・OFFの組み合わせによって保持する。
【0034】
セレクタ60は、比較器41及び42によって出力される比較結果によって、参照アドレス90の上位ビット91によって特定されるタグアドレスに一致すると判断されたタグアドレスに対応付けられたラインからデータブロックを取得して、マルチプレクサ62に出力する。
【0035】
マルチプレクサ62は、セレクタ60によって出力されたデータブロックのうち、参照アドレス90に含まれるオフセット部93に格納されたオフセット値によって特定されるデータを出力する。
【0036】
コントローラ10は、CPU(中央処理装置)から、キャッシュメモリ1へのアクセスを制御する。より具体的には、コントローラ10は、CPUから参照アドレス90を指定してキャッシュメモリ1へアクセスがあった場合に、その参照アドレス90によって特定されるラインに格納されたデータブロックの選択をセレクタ60に指示する。また、ウェイ20及び25に、CPUからアクセスを要求されたデータがない場合には、LRUビット表50に格納された参照履歴を参照して、主記憶から読み込まれるデータブロックを格納すべきセットにおいて最も古くアクセスされたラインに、そのデータブロックを格納する。
【0037】
リーク電流制御回路71は、ウェイ20のリーク電流を、リーク電流制御回路72は、ウェイ25のリーク電流を、それぞれ制御する。より具体的には、LRUビットレジスタ52に保持された参照履歴を参照することによって、リーク電流制御回路71はウェイ20を構成するMOSトランジスタの閾値電圧を、リーク電流制御回路72はウェイ25を構成するMOSトランジスタの閾値電圧をウェイ単位で制御する。すなわち、上記の参照履歴から最近参照されたウェイを特定して、そのウェイを構成するMOSトランジスタの閾値電圧を、その動作の高速性を維持可能な第1の所定電圧とする。一方、上記の最近参照されたウェイを除くその他のウェイを構成するMOSトランジスタの閾値電圧を、リーク電流を抑制可能な第2の所定電圧とする。この第2の所定電圧は、第1の所定電圧よりその絶対値が大きい。なお、閾値電圧は、MOSトランジスタのソースと基板間に印加する逆バイアスによって、その絶対値を制御できる。
【0038】
以下、本実施形態にかかるキャッシュメモリ1の動作について説明する。リーク電流制御回路71及び72が、それぞれLRUビットレジスタ52に格納されたウェイ単位の参照履歴を取得する。ウェイ20が最近参照されたウェイである場合には、リーク電流制御回路71が、ウェイ20を構成するMOSトランジスタの閾値電圧を第1の所定電圧とする。一方、ウェイ20が最近参照されたウェイでない場合には、リーク電流制御回路71が、ウェイ20を構成するMOSトランジスタの閾値電圧を第2の所定電圧とする。また、ウェイ25が最近参照されたウェイである場合には、リーク電流制御回路72が、ウェイ25を構成するMOSトランジスタの閾値電圧を第1の所定電圧とする。一方、ウェイ25が最近参照されたウェイでない場合には、リーク電流制御回路72が、ウェイ25を構成するMOSトランジスタの閾値電圧を第2の所定電圧とする。このようにLRUビットレジスタ52に格納された参照履歴から最近参照されたウェイを特定し、このウェイを将来参照される可能性の高いウェイとして推定する。そして、このように推定されたウェイを構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、その他の将来参照される可能性の低いウェイを構成するMOSトランジスタの閾値電圧をリーク電流を抑制可能な第1の所定電圧より高い第2の所定電圧とする。その結果、キャッシュメモリの動作の高速性を維持しつつ、その電力消費を削減できる。更に、このような閾値電圧の制御に用いるための参照履歴は、ウェイ単位でのアクセス履歴を管理する小容量のLRUビットレジスタ52であるので、将来参照されるウェイを予測する為に新たなテーブルを設ける必要がない。
【0039】
なお、本発明は上記した本実施形態に限定されることなく種々の変形が可能である。例えば、キャッシュメモリ1は、ウェイを2個備えていたが、ウェイが2個以上複数ある場合には、参照履歴に基づいて閾値電圧を制御するウェイは、LRUビットレジスタ52に格納された参照履歴から特定される過去所定回数の間にアクセスされた複数のウェイとすることができる。
【0040】
また、キャッシュメモリ1においては、ウェイを構成するMOSトランジスタの閾値電圧を制御することによって、リーク電流の抑制を図っているが、これに代えて、LRUビットレジスタ52に格納されている参照履歴から過去所定回数の間に参照されていないウェイを特定し、特定したウェイを構成するCMOS回路への電源電圧の供給を断つことによっても、リーク電流は防止できる。
【0041】
(第2実施形態)
次に、本発明の第2実施形態にかかるキャッシュメモリ2について、添付の図面を参照して説明する。図2は、第2実施形態にかかるキャッシュメモリ2の構成を示すブロック図である。キャッシュメモリ2は、コントローラ10(アクセス制御回路)と、ウェイ20及び25と、比較器41及び42と、LRUビット表(参照履歴保持手段)50と、セレクタ60と、マルチプレクサ62と、複数のリーク電流制御回路75及び複数のリーク電流制御回路72とを備えて構成される。このキャッシュメモリ2は、説明を簡単にするため2ウェイのキャッシュメモリとしているが、これに代えて、例えば4ウェイトいったキャッシュメモリとすることもできる。なお、キャッシュメモリ2に備えられるコントローラ10、ウェイ20及び25と、比較器41及び42と、LRUビット表50と、セレクタ60と、マルチプレクサ62とは、第1実施形態のキャッシュメモリ1に備えられるコントローラ10、ウェイ20及び25と、比較器41及び42と、LRUビット表50と、セレクタ60と、マルチプレクサ62と同様の構成を有するので、これらの説明は省略する。
【0042】
リーク電流制御回路75は、ウェイ20を構成する複数のライン22それぞれに対応して複数設けられている。同様に、リーク電流制御回路76も、ウェイ25を構成する複数のライン27それぞれに対応して複数設けられている。リーク電流制御回路75及び76は、LRUビット表50に格納された各セット毎の参照履歴を参照して、各セットに含まれるラインの閾値電圧を制御する。すなわち、各セットにおいて、ウェイ20に含まれるラインが最近参照されたものである場合は、リーク電流制御回路75がそのラインを構成するMOSトランジスタの閾値電圧を、その動作の高速性を維持可能な第1の所定電圧に設定する。一方、ウェイ25に含まれるラインが最近参照されたものである場合は、リーク電流制御回路76が、そのラインを構成するMOSトランジスタの閾値電圧を第1の所定電圧に設定する。また、ウェイ20に含まれるラインが最近参照されたものでない場合は、リーク電流制御回路75がそのラインを構成するMOSトランジスタの閾値電圧を、リーク電流を抑制可能な第1の所定電圧より高い第2の所定電圧に設定する。また、ウェイ25に含まれるラインが最近参照されたものでない場合は、リーク電流制御回路76が、そのラインを構成するMOSトランジスタの閾値電圧を第2の所定電圧に設定する。なお、閾値電圧は、MOSトランジスタのソースと基板間に印加する逆バイアスによって、その絶対値を制御できる。
【0043】
以下、本実施形態にかかるキャッシュメモリ2の動作について説明する。リーク電流制御回路75及び76が、それぞれLRUビット表50に格納された各セットごとの参照履歴を取得する。このLRUビット表50には、各セット毎にそのセットに含まれる複数のラインのうち過去所定回数の間にどのラインがアクセスされたかを示す参照履歴が格納されている。したがって、リーク電流制御回路75及び76は、最近参照されたラインを特定することができる。そして、各セットごとに、ウェイ20に含まれるラインが最近参照されたラインである場合には、リーク電流制御回路75が、そのラインを構成するMOSトランジスタの閾値電圧を第1の所定電圧とする。一方、ウェイ20に含まれるラインが最近参照されたラインでない場合には、リーク電流制御回路75が、そのラインを構成するMOSトランジスタの閾値電圧を第2の所定電圧とする。また、各セットごとに、ウェイ25に含まれるラインが最近参照されたラインである場合には、リーク電流制御回路76が、そのラインを構成するMOSトランジスタの閾値電圧を第1の所定電圧とする。一方、ウェイ25に含まれるラインが最近参照されたラインでない場合には、リーク電流制御回路76が、そのラインを構成するMOSトランジスタの閾値電圧を第2の所定電圧とする。このようにLRUビット表50に格納された参照履歴に基づいて、最近参照されたラインを各セット毎に特定し、特定されたラインを将来参照される可能性の高いラインとして推定する。そして、推定されたラインを構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、将来参照される可能性の低いその他のウェイを構成するMOSトランジスタの閾値電圧を、リーク電流を抑制可能な第1の所定電圧より高い第2の所定電圧とする。その結果、キャッシュメモリの動作の高速性を維持しつつ、その電力消費を削減できる。更に、このような閾値電圧の制御に用いるための参照履歴は、一般的なキャッシュメモリには備えられているLRUビット表50であるので、新たなテーブルを設ける必要がない。
【0044】
なお、本発明は上記した本実施形態に限定されることなく種々の変形が可能である。例えば、キャッシュメモリ2は、ウェイを2個備えていたが、ウェイが2個以上複数ある場合には、各セットごとにLRUビット表50に格納された参照履歴に基づいて閾値電圧を制御するラインは、過去所定回数の間にアクセスされた複数のラインとすることができる。
【0045】
また、キャッシュメモリ2においては、各ラインを構成するMOSトランジスタの閾値電圧を制御することによって、リーク電流の抑制を図っているが、これに代えて、LRUビット表50に格納されている参照履歴から過去所定回数の間に参照されていないラインを特定し、特定したラインを構成するCMOS回路への電源電圧の供給を断つことによっても、リーク電流は防止できる。
【0046】
(第3実施形態)
次に、本発明の第3実施形態にかかるキャッシュメモリについて、添付の図面を参照して説明する。図3は、第3実施形態にかかるキャッシュメモリ3の構成を示すブロック図である。キャッシュメモリ3は、コントローラ10(アクセス制御回路)と、ウェイ20及び25と、比較器41及び42と、LRUビット表50と、LRUビットレジスタ(参照履歴保持手段)52と、セレクタ60と、マルチプレクサ62とを備えて構成される。なお、比較器41及び42、LRUビット表50、LRUビットレジスタ52、セレクタ60、マルチプレクサ62はそれぞれ、第1実施形態と同様の構成を有するので説明を省略する。
【0047】
ウェイ20は、第1実施形態のキャッシュメモリ1のウェイ20と同様に、複数のタグ21と、複数のタグ21にそれぞれ対応付けられた複数のライン22を備える。また、ウェイ25は、第1実施形態のキャッシュメモリ1のウェイ25と同様に、複数のタグ26と、複数のタグ26にそれぞれ対応付けられた複数のライン27を備える。ウェイ20及び25に備えられる複数のラインはそれぞれ、CMOS回路を用いたメモリ素子によって構成される。
【0048】
ウェイ20は、これを構成するMOSトランジスタの閾値電圧を、その動作の高速性を維持可能な第1の所定電圧に設定されている。また、ウェイ25は、これを構成するMOSトランジスタの閾値電圧を、リーク電流を抑制可能な第2の所定電圧とされている。この第2の所定電圧は、第1の所定電圧よりその絶対値が大きい。なお、閾値電圧は、MOSトランジスタのソースと基板間に印加する逆バイアスによって、その絶対値を制御できるものであり、キャッシュメモリ3の出荷時に予め設定しておくことができる。
【0049】
コントローラ10は、第1実施形態のキャッシュメモリ10と同様に、CPU(中央処理装置)からのキャッシュメモリ1へのアクセスを制御する。これに加えて、コントローラ10は、CPUからアクセスを要求されたデータがウェイ25に存在する場合に、ウェイ20に保持されているラインのデータとウェイ25に保持されているラインのデータを入れ替える。また、コントローラ10は、CPUからアクセスを要求されたデータがウェイ20及びウェイ25にない場合には、主記憶からそのデータを読み込むと共に、ウェイ20に格納する。このとき、ウェイ20がLRUビット表50に格納された参照履歴を参照して、主記憶から読み込まれるデータブロックを格納すべきセットにおいて最も過去にアクセスされたラインでない場合には、コントローラ10はウェイ20に保持されているラインのデータとウェイ25に保持されているラインのデータとを入れ替える。
【0050】
次に、本実施形態にかかるキャッシュメモリ3の動作について説明する。CPUからアクセスを要求されたデータがウェイ25にある場合、そのデータを含むウェイ25のラインのデータは、コントローラ10によってウェイ20のラインのデータと入れ替えられる。また、CPUからアクセスを要求されたデータがウェイ20及びウェイ25にない場合には、コントローラ10によってそのデータが主記憶から読み込まれると共にウェイ20に格納される。このとき、ウェイ20がLRUビット表50に格納された参照履歴を参照して、主記憶から読み込まれるデータブロックを格納すべきセットにおいて最も過去にアクセスされたラインでない場合には、コントローラ10によってウェイ20に保持されているラインのデータがウェイ25に保持されているラインのデータに入れ替えられる。このように、将来参照される可能性の高いラインのデータは、動作の高速性を維持可能な第1の所定電圧に予め設定されたウェイ20に入れ替えられる。一方、参照された時点が古いため将来参照される可能性の低いラインのデータは、閾値電圧がリーク電流を抑制可能な第2の所定電圧とされたウェイ25に入れ替えられるので、キャッシュメモリ3の動作の高速性を損なうことなく、リーク電流を抑制することができる。したがって、このキャッシュメモリ3は消費電力が抑制されている。また、キャッシュメモリ3は、リーク電流抑制回路を備えなくても、その動作の高速性を損なうことなく、リーク電流を抑制することができる。したがって、キャッシュメモリ3は、リーク電流制御回路の動作に必要な電力も削減することができる。
【0051】
なお、本発明は上記した本実施形態に限定されることなく種々の変形が可能である。例えば、上記のキャッシュメモリ3においては、説明を簡単にするため2ウェイのキャッシュメモリとしているが、これに代えて、例えば4ウェイトいったように複数のウェイによって構成されたキャッシュメモリとすることもできる。この場合には、複数のウェイのうち所定数のウェイの閾値電圧を第1の所定電圧とし、この所定数のウェイを除いた他のウェイの閾値電圧を第1の所定電圧より高い第2の所定電圧とする。かかる構成のキャッシュメモリでは、LRUビット表50に格納された参照履歴を参照することによって、最後にアクセスされたため将来参照される可能性の高いデータブロックを含むラインのデータを、上記の所定数のウェイにおけるラインのうち最も過去にアクセスされたラインのデータと入れ替えることができる。
【0052】
【発明の効果】
本発明によれば、リーク電流制御回路が、参照履歴保持手段に保持された参照履歴に基づいて、過去所定回数の間にアクセスされたキャッシュメモリの領域を構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧とし、残りの領域を高いリーク電流を抑制可能な第1の所定電圧より高い第2の所定電圧とする。また、上記の参照履歴保持手段は、一般のキャッシュメモリに備えられるものと同様の構成または小容量のメモリを用いることができる。したがって、キャッシュメモリに新たなテーブルを追加することなく、その動作の高速性を維持でき、また、リーク電流による電力消費を削減可能なキャッシュメモリを提供できる。
【0053】
また、本発明によれば、キャッシュメモリの複数のウェイのうち所定数のウェイを構成するMOSトランジスタの閾値電圧をその動作の高速性を維持可能な第1の所定電圧に予め設定し、他のウェイの閾値電圧をリーク電流を抑制可能な第2の所定電圧に予め設定することによって、リーク電流制御回路を備えなくても、その動作の高速性が維持されると共に、リーク電流による電力消費も抑制されたキャッシュメモリを提供することができる。
【図面の簡単な説明】
【図1】図1は、第1実施形態にかかるキャッシュメモリの構成を示す図である。
【図2】図2は、第2実施形態にかかるキャッシュメモリの構成を示す図である。
【図3】図3は、第3実施形態にかかるキャッシュメモリの構成を示す図である。
【符号の説明】
1,2,3…キャッシュメモリ、10…コントローラ、20,25…ウェイ、21,26…タグ、22,27…ライン、41,42…比較器、50…LRUビット表、52…LRUビットレジスタ、60…セレクタ、62…マルチプレクサ、71,72,75,76…リーク電流制御回路
Claims (2)
- 複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、
前記複数のウェイのうち一つの所定のウェイを構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、前記所定のウェイを除く他のウェイを構成するMOSトランジスタの閾値電圧を前記第1の所定電圧より高い第2の所定電圧とし、
前記アクセス制御回路は、前記複数のウェイのうち最後にアクセスされたウェイに保持されているデータと、前記所定のウェイに保持されたデータとを入れ替える、
ことを特徴とするキャッシュメモリ。 - 複数のウェイと、当該複数のウェイへのアクセス動作を制御するアクセス制御回路とを備えるキャッシュメモリにおいて、
前記複数のウェイのうち所定数のウェイを構成するMOSトランジスタの閾値電圧を第1の所定電圧とし、前記所定数のウェイを除く他のウェイを構成するMOSトランジスタの閾値電圧を前記第1の所定電圧より高い第2の所定電圧とすることを特徴とし、
更に、該キャッシュメモリは、該キャッシュメモリにおけるメモリ領域への参照履歴を保持する参照履歴保持手段を更に備え、
前記アクセス制御回路は、前記参照履歴保持手段に保持された前記参照履歴に基づいて、最後にアクセスされた前記ウェイに保持されたデータと、前記所定数のウェイのうち最も過去にアクセスされたウェイに保持されたデータとを入れ替える、
ことを特徴とするキャッシュメモリ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002380647A JP4062095B2 (ja) | 2002-10-08 | 2002-12-27 | キャッシュメモリ |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002295239 | 2002-10-08 | ||
JP2002380647A JP4062095B2 (ja) | 2002-10-08 | 2002-12-27 | キャッシュメモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004185576A JP2004185576A (ja) | 2004-07-02 |
JP4062095B2 true JP4062095B2 (ja) | 2008-03-19 |
Family
ID=32774299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002380647A Expired - Fee Related JP4062095B2 (ja) | 2002-10-08 | 2002-12-27 | キャッシュメモリ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4062095B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1866771B1 (en) | 2005-03-31 | 2012-10-24 | Semiconductor Energy Laboratory Co., Ltd. | Arithmetic processing device and electronic appliance using arithmetic processing device |
US20070043965A1 (en) * | 2005-08-22 | 2007-02-22 | Intel Corporation | Dynamic memory sizing for power reduction |
US7953994B2 (en) * | 2007-03-26 | 2011-05-31 | Stmicroelectronics Pvt. Ltd. | Architecture incorporating configurable controller for reducing on chip power leakage |
AU2009273748A1 (en) | 2008-07-21 | 2010-01-28 | Sato Holdings Corporation | A device having data storage |
WO2012169142A1 (en) | 2011-06-09 | 2012-12-13 | Semiconductor Energy Laboratory Co., Ltd. | Cache memory and method for driving the same |
JP6012263B2 (ja) | 2011-06-09 | 2016-10-25 | 株式会社半導体エネルギー研究所 | 半導体記憶装置 |
JP5458132B2 (ja) * | 2012-03-13 | 2014-04-02 | 株式会社東芝 | キャッシュ装置 |
-
2002
- 2002-12-27 JP JP2002380647A patent/JP4062095B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004185576A (ja) | 2004-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3806131B2 (ja) | アドレス変換バッファの電力制御方法及びその装置 | |
KR100504969B1 (ko) | 메모리용대기제어부를가진집적회로 | |
KR101121698B1 (ko) | 반도체 기억 장치 및 기억 제어 방법 | |
US7412613B2 (en) | Integrated circuit devices that support dynamic voltage scaling of power supply voltages | |
US10539997B2 (en) | Ultra-low-power design memory power reduction scheme | |
Zhan et al. | Hybrid drowsy SRAM and STT-RAM buffer designs for dark-silicon-aware NoC | |
US9557801B2 (en) | Cache device, cache system and control method | |
JP2006107507A (ja) | 命令語キャッシュと命令語変換参照バッファの制御器、及びその制御方法 | |
JP4062095B2 (ja) | キャッシュメモリ | |
Calimera et al. | Partitioned cache architectures for reduced NBTI-induced aging | |
EP1849082B1 (en) | Data processing system and method of cache replacement | |
KR20160125887A (ko) | 메모리 관리 | |
JP2005157620A (ja) | 半導体集積回路 | |
JP3895760B2 (ja) | アドレス変換バッファの電力制御方法及びその装置 | |
US9529718B2 (en) | Batching modified blocks to the same dram page | |
US10216644B2 (en) | Memory system and method | |
US7356647B1 (en) | Cache with integrated capability to write out entire cache | |
Lee et al. | Static Leakage Reduction through Simulteneous VTT/T OX and State Assignment | |
US20030236948A1 (en) | Cache way replacement technique | |
JP6039772B1 (ja) | メモリシステム | |
JP3893463B2 (ja) | キャッシュメモリ、及びキャッシュメモリの電力削減方法 | |
JP5477384B2 (ja) | 半導体集積回路装置および半導体集積回路装置の制御方法、ならびに、キャッシュ装置 | |
Ferrerón et al. | Block disabling characterization and improvements in CMPs operating at ultra-low voltages | |
JP5045334B2 (ja) | キャッシュシステム | |
US10423540B2 (en) | Apparatus, system, and method to determine a cache line in a first memory device to be evicted for an incoming cache line from a second memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20040303 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050920 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070925 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071120 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071217 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110111 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |