JP2010026716A - キャッシュメモリ制御回路及びプロセッサ - Google Patents
キャッシュメモリ制御回路及びプロセッサ Download PDFInfo
- Publication number
- JP2010026716A JP2010026716A JP2008186304A JP2008186304A JP2010026716A JP 2010026716 A JP2010026716 A JP 2010026716A JP 2008186304 A JP2008186304 A JP 2008186304A JP 2008186304 A JP2008186304 A JP 2008186304A JP 2010026716 A JP2010026716 A JP 2010026716A
- Authority
- JP
- Japan
- Prior art keywords
- data
- output
- mhz
- cache memory
- mode
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】キャッシュメモリ制御回路は、複数のウェイを所定の分割数で分割したキャッシュメモリの各ウェイあるいは2以上のウェイを、所定の順番で選択可能な選択部42と、各ウェイにおけるキャッシュヒットを検出する比較部33と、キャッシュヒットを検出すると、選択部42における各ウェイの選択を停止させる制御部41と、キャッシュメモリからのリードデータを二つのパスに伝播させて、一方が他方に対して所定の遅延量を有する2つのリードデータを比較する比較部61,62を有し、比較部61,62における2つのリードデータの一致あるいは不一致に応じて、所定の分割数を変更する分割数変更部16bとを有する。
【選択図】図3
Description
(第1の実施の形態)
1.構成
まず図1に基づき、本実施の形態に係わるキャッシュメモリを含むプロセッサの構成を説明する。図1は、本実施の形態に係わるプロセッサの構成を示す構成図である。
また、キャッシュメモリ16の動作周波数は、CPUコア15の動作周波数F以上の動作周波数で動作する。ここでは、キャッシュメモリ16の動作周波数は、400MHzであるとする。
キャッシュメモリ16は、データを記憶する小容量記憶部31を有する。さらに、キャッシュメモリ16は、アドレスデコーダ32と、比較部33と、ワードセレクタ部34と、ウェイセレクタ部35と、キャッシュアクセスコントローラ16aと、分割数変更部16bとを含むキャッシュメモリ制御回路を有している。キャッシュアクセスコントローラ16aは、制御部41と、選択部42と、分割数指定部43とを含む。小容量記憶部31は、N個(Nは2以上の整数)のウェイ、ここでは4つのウェイ、からなるメモリであり、キャッシュメモリ16は、4ウェイセットアソシアティブ方式のキャッシュメモリである。比較部33とワードセレクタ部34は、それぞれ、各ウェイにおいて選択されたラインLs(ここでは4つのライン)に対応して、複数の比較器(ここでは4つの比較器)と複数のワードセレクタ(ここでは4つのワードセレクタ)を有している。
各ラインは、16個のワードデータを含むデータ部と、フレームアドレスデータを含むタグ部を有する。16個のワードデータのうちどのワードデータを読み出すかは、入力された実アドレスRA中の、4ビットのワードアドレスWAによって指定される。
従って、キャッシュメモリ16の複数のウェイは、指定された分割数で分割されて、分割された各ウェイあるいは2以上のウェイは、選択部42において、所定の順番で選択される。
よって、比較器において、不一致と判定されると、分割数を減少させる分割数変更信号が出力される。
よって、比較器において、一致と判定されると、分割数を増加させる分割数変更信号が出力される。
制御部41は、一致信号が入力されると、選択部42に制御信号CSを出力し、ウェイイネーブル信号WEの出力を停止させる。従って、制御信号CSは、キャッシュヒットを検出すると、選択部42によるウェイの選択を途中で停止させる停止指示信号である。
図4は、分割数テーブルDTの例を示す図である。図4に示すように、分割数テーブルDTは、各動作周波数、ここでは400MHz、200MHz及び100MHzのそれぞれについて、1以上の分割数が設定され記憶されたテーブルである。さらに、分割数テーブルDTにおいて、分割数データは、動作周波数毎に優先度データと共に、設定されている。
次に、上述したプロセッサ1のキャッシュメモリ16の動作を説明する。
2.1 モード変更がないときの動作
図5は、プロセッサ1の動作を説明するためのタイミングチャートである。キャッシュメモリ16は、上述したように400MHzで動作する。以下、CPUコア15の動作周波数Fが、100MHzで設定された場合で説明する。
ユーザがCPUコア15の動作周波数Fを100MHzに設定すると、その設定された動作周波数データFは、周波数設定レジスタ17にストアされ、CPUコア15を介して分割数指定部43に出力される。分割数指定部43は、分割テーブルDTを参照して、最高優先度に対応する分割数データを選択部42に出力する。選択部42は、入力された分割数で1CPUサイクルを分割するように、各ウェイに対して、ウェイイネーブル信号WEを出力する。
具体的には、図4の場合、CPUコア15の動作周波数Fが100MHzで、優先度2に対応する分割数2をユーザが指定した場合、あるいは、CPUコア15の動作周波数Fを200MHzに設定し、優先度1の分割数2が指定された場合、キャッシュメモリ16は、中間モードで動作する(後述する200MHzモード)。
通常アクセスモードNMでは、図7に示すように、4つのウェイが同時に有効にされるので、従来に比べて消費電力の低減はない。
通常アクセスモードNMは、分割テーブルDTにおいて、分割数が1の場合である。上述した例であれば、CPUコア15が100MHzで動作し、優先度3に対応する分割数1が指定されている場合と、CPUコア15が200MHzで動作し、優先度2に対応する分割数1が指定されている場合と、CPUコア15が400MHzで動作し、優先度1に対応する分割数1が指定されている場合である。
本実施の形態では、ウェイは4つあるので、順次アクセスモードSMは、分割テーブルDTにおいて、分割数が4の場合である。上述した例であれば、CPUコア15が100MHzで動作し、優先度1に対応する分割数4が指定されている場合である。
本実施の形態では、ウェイは4つあるので、中間モードIMは、分割テーブルDTにおいて、分割数が2の場合である。上述した例であれば、CPUコア15が100MHzで動作し、優先度2に対応する分割数2が指定されている場合と、CPUコア15が200MHzで動作し、優先度1に対応する分割数2が指定されている場合である。
次にアクセスモード変更、すなわち分割数変更があるときの動作について説明する。
始めに、キャッシュメモリ16の複数のウェイを1つずつ、ここでは4分割して、アクセスするアクセスモードで動作している場合に、動作マージンが大きいとき、すなわちタイミングにおける余裕があるとき、の動作を説明する。なお、複数のウェイを1つずつアクセスするときは、400MHzのクロックタイミングでアクセスが行われるため、このアクセスモードを、以下、400MHzモードという。同様に、200MHz及び100MHzのクロックタイミングでアクセスが行われるアクセスモードを、それぞれ、以下、200MHzモード及び100MHzモードという。さらに、以下の説明において、4つのウェイ#0から#3のデータを、それぞれW0からW3とする。また、データ取り込みタイミングは、各期間の立ち上がりエッジの時であり、例えば、期間t1,t2,t3,t4の立ち上がりエッジの時は、T1,T2,T3,T4とする。
次に、キャッシュメモリ16が400MHzモード(分割数が4)で動作している場合に、動作マージンが小さくタイミング違反があるときの動作を説明する。
次に、キャッシュメモリ16が200MHzモード(分割数が2)で動作している場合に、400MHzモードの動作マージンが小さく、かつ200MHzモードの動作マージンが大きいときの動作を説明する。
一方、FF51と52にも、ウェイセレクタ35の出力であるリードデータが、矢印A2で示すように、FF51に遅れて入力され、FF52にはバッファ回路52aの遅れ分だけ遅れて入力される。FF52の入力データは、FF52のデータ取り込みタイミングである期間t2の立ち上がりエッジの時T2において、不定値である。その結果、期間t2において、FF51の出力データとFF52の出力データは、不一致となり、比較器61の出力は「1」になる。
期間t4に続く次の期間t5は、期間t3の場合と同様であり、比較器61の出力は「0」になる。
次に、キャッシュメモリ16が200MHzモード(分割数が2)で動作している場合に、200MHzモードの動作マージンが小さいときの動作を説明する。
期間t5の立ち上がりエッジの時T5では、FF53の入力データはウェイ#2のデータW2かウェイ#3のデータW3のいずれかで確定しているが、FF54の入力データは、まだウェイ#0のデータW0かウェイ#1のデータW1のいずれかであるため、比較器62の出力は、「1」となる。
次に、キャッシュメモリ16が200MHzモード(分割数が2)で動作している場合に、200MHzモードと400MHzモードの動作マージンが共に大きいときの動作を説明する。
期間t3に続く次の期間以降も、期間t2,t3の場合と同様であり、比較器61の出力は「0」になる。
次に、キャッシュメモリ16が100MHzモード(分割数が1)で動作している場合に、200MHzモードの動作マージンが小さいときの動作を説明する。
そして、期間t3,t4に続く期間t5及びそれに続く期間においても同様の動作となる。
期間t4に続く次の期間t5とその次の期間でも、FF51の出力データとFF52の出力データは一致しているので、比較器61の出力は「0」になる。
次に、キャッシュメモリ16が100MHzモード(分割数が1)で動作している場合に、200MHzモードの動作マージンが大きいときの動作を説明する。
期間t4に続く次の期間t5とその次の期間でも、FF51の出力データとFF52の出力データは一致しているので、比較器61の出力は「0」になる。
次に、本発明の第2の実施の形態を説明する。
1.構成
第1の実施の形態では、キャッシュメモリ16は、分割数変更部16bには、複数の、例としては2つの、比較器を有して、複数の、例としては2つの、アクセスモードのタイミング違反を検出していた。本実施の形態では、複数のアクセスモードのタイミング違反を検出するための複数の比較器を設ける代わりに、1つのアクセスモードのタイミング違反を検出するための比較器の出力パターンに基づいて、分割数の変更をするようにした。
始めに、キャッシュアクセスコントローラが400MHzモードで動作し、400MHzの動作マージンが大きいことは、上述した図8における比較器61の出力パターンの期間t2において、信号が「0」になっていることから判断される。
なお、このパターンデータでは、「*」は、いずれの値でもよいことを示し、期間t1,t2,t3,t4の順番の値が示されている(以下、同じ)。
400MHzモードで動作している時に、400MHzの動作マージンが小さいことは、上述した図9における比較器61の出力が、期間t2において、「1」になっていることから判断される。
Pa:* 1 * *
すなわち、パターンデータ記憶部64aに、400MHzモード時に、期間t2におけるデータ「1」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、この出力パターンの場合、400MHzの動作マージンが小さいので、順序回路64は、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを400MHzモードから200MHzモードに移行する。
200MHzモード動作時に、400MHzの動作マージンは小さい(すなわち400MHzのタイミング違反がある)が、200MHz動作の動作マージンが大きいことは、上述した図10の比較器61の出力が、期間t2において「1」で、期間t3において「0」になっていることから判断される。
Pb:* 1 0 *
すなわち、パターンデータ記憶部64aに、400MHzモード時に、期間t2におけるデータが「1」で、期間t3におけるデータ「0」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、ここの出力パターンの場合、400MHzの動作マージンが小さく、かつ200MHzモードの動作マージンが大きいので、順序回路64は、分割数変更信号DNCを出力しない。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードに維持する。
200MHzモード動作時に、200MHz動作の動作マージンが小さいことは、上述した図11の比較器61の出力が、期間t2において「1」で、期間t3において「1」になっていることから判断される。
Pc:* 1 1 *
すなわち、パターンデータ記憶部64aに、200MHzモード時に、期間t2におけるデータが「1」で、期間t3におけるデータ「1」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、この出力パターンの場合、200MHzの動作マージンが小さいので、順序回路64は、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードから100MHzモードに移行する。
200MHzモード動作時に、400MHzの動作マージンが大きいことは、上述した図12の比較器61の出力が、期間t2において「0」になっていることから判断される。
Pd:* 0 * *
すなわち、パターンデータ記憶部64aに、200MHzモード時に、期間t2におけるデータ「0」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、この出力パターンの場合、200MHzモードと400MHzモードの動作マージンが共に大きいので、順序回路64は、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードから400MHzモードに移行する。
100MHzモード動作時に、200MHzの動作マージンが小さいことは、上述した図13の比較器61の出力が、期間t3において「1」になっていることから判断される。
Pe:* * 1 *
すなわち、パターンデータ記憶部64aに、100MHzモード時に、期間t3におけるデータ「1」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、この出力パターンの場合、200MHzモードの動作マージンが小さいので、順序回路64は、分割数変更信号DNCを出力しない。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを100MHzモードに維持する。
100MHzモード動作時に、200MHzの動作マージンが大きいことは、上述した図14の比較器61の出力が、期間t3において「0」になっていることから判断される。
Pf:* * 0 *
すなわち、パターンデータ記憶部64aに、100MHzモード時に、期間t3におけるデータ「0」が記憶され、その記憶されたパターンデータと比較器61の出力パターンが比較される。そして、この出力パターンの場合、200MHzモードの動作マージンが大きいので、順序回路64は、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを100MHzモードから200MHzモードに移行する。
次に、本発明の第3の実施の形態を説明する。
1.構成
上述した2つの実施の形態では、400MHzのタイミング違反と200MHzのタイミング違反を検出するために、2つのFFのうち一方の入力段に、遅延用のバッファ回路を設け、2つのFFの出力データの比較を行っている。これに対して、本実施の形態では、比較器の代わりに、データの誤りを検出する回路、例えば、パリティ検査回路、CRC回路等を利用して、動作マージンの大小が判断される。これは、タイミング違反が発生したFFが保持する値は不定値となり、偶奇パリティ、CRC等を含むデータの整合性が取れなくなるということを利用している。
始めに、キャッシュアクセスコントローラが400MHzモードで動作し、400MHzの動作マージンが大きい場合について説明する。
図17は、キャッシュアクセスコントローラが400MHzモードで動作し、400MHzの動作マージンが大きいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
a)400MHzモードで、400MHzの動作マージンが小さいとき
図18は、400MHzモードで動作している時に、400MHzの動作マージンが小さいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pa:* 1 * *
すなわち、パターンデータ記憶部65aに、400MHzモード時に、期間t2におけるデータとして「1」が予め記憶され、その記憶されたパターンデータとパリティ検査回路71の出力パターンが比較される。このとき、順序回路65は、400MHzの動作マージンが小さいので、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを400MHzモードから200MHzモードに移行する。
図19は、200MHzモードで動作している時に、400MHzの動作マージンが小さく、かつ200MHzモードの動作マージンが大きいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pb:* 1 0 *
すなわち、パターンデータ記憶部65aに、200MHzモード時に、期間t2におけるデータとして「1」が、期間t3におけるデータとして「0」が予め記憶され、その記憶されたパターンデータとパリティ検査回路71の出力パターンが比較される。このとき、順序回路65は、200MHzの動作マージンが大きいので、分割数変更信号DNCを出力しない。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードに維持する。
図21は、200MHzモードで動作している時に、200MHzの動作マージンが小さいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pc:* * 1 *
すなわち、パターンデータ記憶部65aに、200MHzモード時に、期間t3におけるデータとして「1」が予め記憶され、その記憶されたパターンデータとパリティ検査回路71の出力パターンが比較される。このとき、順序回路65は、200MHzの動作マージンが小さいので、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードから100MHzモードに移行する。
図22は、200MHzモードで動作している時に、400MHzの動作マージンが大きく、かつ200MHzモードの動作マージンが大きいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pd:* 0 * *
すなわち、パターンデータ記憶部65aに、200MHzモード時に、期間t2におけるデータが「0」が記憶され、パリティ検査回路71の出力が、キャッシュアクセスコントローラ16aが200MHzモードで動作していて、期間t2において「0」のときに、400MHzの動作マージンが大きいので、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを200MHzモードから400MHzモードに移行する。
図23は、100MHzモードで動作している時に、200MHzの動作マージンが小さいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pe:* * 1 *
すなわち、パターンデータ記憶部65aに、100MHzモード時に、期間t3におけるデータとして「1」が記憶され、その記憶されたパターンデータとパリティ検査回路71の出力パターンが比較される。このとき、順序回路65は、200MHzの動作マージンが小さいので、分割数変更信号DNCを出力しない。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを100MHzモードに維持する。
図24は、100MHzモードで動作している時に、200MHzモードの動作マージンが大きいときの、CPUコア15のリードデータと、FF52の入力データと出力データ、及びパリティ検査回路71の出力の状態を示すタイミングチャートである。
Pf:* * 0 *
すなわち、パターンデータ記憶部65aに、100MHzモード時に、期間t3におけるデータとして「0」が記憶され、その記憶されたパターンデータとパリティ検査回路71の出力パターンが比較される。このとき、順序回路65は、200MHzの動作マージンが大きいので、分割数変更信号DNCを出力する。その結果、キャッシュアクセスコントローラ16aは、アクセスモードを100MHzモードから200MHzモードに移行する。
Claims (5)
- 複数のウェイを所定の分割数で分割したキャッシュメモリの各ウェイあるいは2以上のウェイを、所定の順番で選択可能な選択部と、
前記各ウェイにおけるキャッシュヒットを検出するキャッシュヒット検出部と、
前記キャッシュヒットを検出すると、前記選択部における前記各ウェイあるいは2以上のウェイの選択を停止させる制御部と、
前記キャッシュメモリからのリードデータを、一方が他方に対して所定の遅延量を有する2つのリードデータバスに伝播させた後にそれぞれの値を比較する比較部を有し、該比較部における前記2つのリードデータの一致あるいは不一致に応じて、前記所定の分割数を変更する分割数変更部と、
を有することを特徴とするキャッシュメモリ制御回路。 - 前記比較部は、それぞれが前記所定の分割数に応じた周波数のタイミングで前記2つのリードデータを比較する複数の比較器を有し、
前記分割数変更部は、前記複数の比較器における、前記2つのリードデータの一致あるいは不一致に応じて、分割する前記所定の分割数を変更する請求項1に記載のキャッシュメモリ制御回路。 - 前記分割数変更部は、前記一致あるいは不一致のタイミングのパターン情報と、前記比較部における前記2つのリードデータの一致あるいは不一致のタイミングの情報とに基づいて、前記所定の分割数を変更することを特徴とする請求項1に記載のキャッシュメモリ制御回路。
- 複数のウェイを所定の分割数で分割したキャッシュメモリの各ウェイあるいは2以上のウェイを、所定の順番で選択可能な選択部と、
前記各ウェイにおけるキャッシュヒットを検出するキャッシュヒット検出部と、
前記キャッシュヒットを検出すると、前記選択部における前記各ウェイあるいは2以上のウェイの選択を停止させる制御部と、
前記キャッシュメモリからのリードデータの誤りを検出する誤り検出部を有し、該誤り検出部において検出されたデータの誤りの情報に基づいて、前記所定の分割数を変更する分割数変更部と、
を有することを特徴とするキャッシュメモリ制御回路。 - 複数のウェイを所定の分割数で分割したキャッシュメモリの各ウェイあるいは2以上のウェイを、所定の順番で選択可能な選択部と、前記各ウェイにおけるキャッシュヒットを検出するキャッシュヒット検出部と、前記キャッシュヒットを検出すると、前記選択部における前記各ウェイあるいは2以上のウェイの選択を停止させる制御部と、前記キャッシュメモリからのリードデータを、一方が他方に対して所定の遅延量を有する2つのリードデータバスに伝播させた後にそれぞれの値を比較する比較部を有し、該比較部における前記2つのリードデータの一致あるいは不一致に応じて、前記所定の分割数を変更する分割数変更部とを有するキャッシュメモリ制御回路と、
前記キャッシュメモリに接続されたCPUと、
を有することを特徴とするプロセッサ。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008186304A JP5142868B2 (ja) | 2008-07-17 | 2008-07-17 | キャッシュメモリ制御回路及びプロセッサ |
US12/483,445 US8312232B2 (en) | 2008-07-17 | 2009-06-12 | Cache memory control circuit and processor for selecting ways in which a cache memory in which the ways have been divided by a predeterminded division number |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008186304A JP5142868B2 (ja) | 2008-07-17 | 2008-07-17 | キャッシュメモリ制御回路及びプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010026716A true JP2010026716A (ja) | 2010-02-04 |
JP5142868B2 JP5142868B2 (ja) | 2013-02-13 |
Family
ID=41531278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008186304A Expired - Fee Related JP5142868B2 (ja) | 2008-07-17 | 2008-07-17 | キャッシュメモリ制御回路及びプロセッサ |
Country Status (2)
Country | Link |
---|---|
US (1) | US8312232B2 (ja) |
JP (1) | JP5142868B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013016157A (ja) * | 2011-06-09 | 2013-01-24 | Semiconductor Energy Lab Co Ltd | キャッシュメモリ、及びキャッシュメモリの駆動方法 |
JP2013089171A (ja) * | 2011-10-21 | 2013-05-13 | Fujitsu Ltd | 演算処理装置 |
WO2013098919A1 (ja) | 2011-12-26 | 2013-07-04 | ルネサスエレクトロニクス株式会社 | データ処理装置 |
JP2017527883A (ja) * | 2014-07-17 | 2017-09-21 | クアルコム,インコーポレイテッド | 動的パーティショニングを用いる共有されるキャッシュのための方法および装置 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011100213A (ja) * | 2009-11-04 | 2011-05-19 | Renesas Electronics Corp | キャッシュ装置 |
CN102591799B (zh) * | 2011-12-30 | 2015-04-15 | 华为技术有限公司 | 一种存放数据的方法和装置 |
US9058070B2 (en) * | 2012-05-30 | 2015-06-16 | Utah State University | Predicting timing violations |
GB2537357A (en) * | 2015-04-09 | 2016-10-19 | Imagination Tech Ltd | Cache operation in a multi-threaded processor |
US11176051B2 (en) | 2020-03-13 | 2021-11-16 | Shenzhen GOODIX Technology Co., Ltd. | Multi-way cache memory access |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0421045A (ja) * | 1990-05-14 | 1992-01-24 | Mitsubishi Electric Corp | キャッシュメモリ |
JPH0950403A (ja) * | 1995-06-01 | 1997-02-18 | Hitachi Ltd | キャッシュメモリおよびそれを用いたマイクロプロセッサ |
JPH09223068A (ja) * | 1996-02-15 | 1997-08-26 | Toshiba Microelectron Corp | キャッシュメモリ |
JP2002236616A (ja) * | 2001-02-13 | 2002-08-23 | Fujitsu Ltd | キャッシュメモリシステム |
JP2003242029A (ja) * | 2002-02-15 | 2003-08-29 | Hitachi Ltd | 半導体集積回路 |
JP2004171177A (ja) * | 2002-11-19 | 2004-06-17 | Renesas Technology Corp | キャッシュシステムおよびキャッシュメモリ制御装置 |
JP2008009647A (ja) * | 2006-06-28 | 2008-01-17 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5402389A (en) * | 1994-03-08 | 1995-03-28 | Motorola, Inc. | Synchronous memory having parallel output data paths |
US5860127A (en) * | 1995-06-01 | 1999-01-12 | Hitachi, Ltd. | Cache memory employing dynamically controlled data array start timing and a microcomputer using the same |
US20060090034A1 (en) * | 2004-10-22 | 2006-04-27 | Fujitsu Limited | System and method for providing a way memoization in a processing environment |
JP4635063B2 (ja) * | 2008-03-11 | 2011-02-16 | 株式会社東芝 | キャッシュメモリ制御回路及びプロセッサ |
-
2008
- 2008-07-17 JP JP2008186304A patent/JP5142868B2/ja not_active Expired - Fee Related
-
2009
- 2009-06-12 US US12/483,445 patent/US8312232B2/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0421045A (ja) * | 1990-05-14 | 1992-01-24 | Mitsubishi Electric Corp | キャッシュメモリ |
JPH0950403A (ja) * | 1995-06-01 | 1997-02-18 | Hitachi Ltd | キャッシュメモリおよびそれを用いたマイクロプロセッサ |
JPH09223068A (ja) * | 1996-02-15 | 1997-08-26 | Toshiba Microelectron Corp | キャッシュメモリ |
JP2002236616A (ja) * | 2001-02-13 | 2002-08-23 | Fujitsu Ltd | キャッシュメモリシステム |
JP2003242029A (ja) * | 2002-02-15 | 2003-08-29 | Hitachi Ltd | 半導体集積回路 |
JP2004171177A (ja) * | 2002-11-19 | 2004-06-17 | Renesas Technology Corp | キャッシュシステムおよびキャッシュメモリ制御装置 |
JP2008009647A (ja) * | 2006-06-28 | 2008-01-17 | Matsushita Electric Ind Co Ltd | 情報処理装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013016157A (ja) * | 2011-06-09 | 2013-01-24 | Semiconductor Energy Lab Co Ltd | キャッシュメモリ、及びキャッシュメモリの駆動方法 |
JP2013089171A (ja) * | 2011-10-21 | 2013-05-13 | Fujitsu Ltd | 演算処理装置 |
WO2013098919A1 (ja) | 2011-12-26 | 2013-07-04 | ルネサスエレクトロニクス株式会社 | データ処理装置 |
US9495299B2 (en) | 2011-12-26 | 2016-11-15 | Renesas Electronics Corporation | Data processing device utilizing way selection of set associative cache memory based on select data such as parity data |
JP2017527883A (ja) * | 2014-07-17 | 2017-09-21 | クアルコム,インコーポレイテッド | 動的パーティショニングを用いる共有されるキャッシュのための方法および装置 |
US10089238B2 (en) | 2014-07-17 | 2018-10-02 | Qualcomm Incorporated | Method and apparatus for a shared cache with dynamic partitioning |
Also Published As
Publication number | Publication date |
---|---|
US8312232B2 (en) | 2012-11-13 |
JP5142868B2 (ja) | 2013-02-13 |
US20100017567A1 (en) | 2010-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5142868B2 (ja) | キャッシュメモリ制御回路及びプロセッサ | |
US8589763B2 (en) | Cache memory system | |
US9063907B2 (en) | Comparison for redundant threads | |
US7836253B2 (en) | Cache memory having pipeline structure and method for controlling the same | |
JP4635063B2 (ja) | キャッシュメモリ制御回路及びプロセッサ | |
JP2011513843A (ja) | 実行装置内のデータ転送のシステムおよび方法 | |
US8707014B2 (en) | Arithmetic processing unit and control method for cache hit check instruction execution | |
US6701484B1 (en) | Register file with delayed parity check | |
US7836277B2 (en) | Pre-tracing instructions for CGA coupled processor in inactive mode for execution upon switch to active mode and continuing pre-fetching cache miss instructions | |
US7702860B2 (en) | Memory access apparatus | |
WO2016063667A1 (ja) | 再構成可能デバイス | |
JP5902208B2 (ja) | データ処理装置 | |
KR100457478B1 (ko) | 메모리액세스방법및데이터처리시스템 | |
JP2002367397A (ja) | メモリテスト兼初期化回路 | |
US7275199B2 (en) | Method and apparatus for a modified parity check | |
JP2014186664A (ja) | 演算装置およびエラー処理方法 | |
KR20040007343A (ko) | 캐시 메모리 및 그 제어 방법 | |
US10303483B2 (en) | Arithmetic processing unit and control method for arithmetic processing unit | |
JP5414323B2 (ja) | 半導体集積回路装置 | |
JP4498705B2 (ja) | キャッシュシステム | |
JP6569347B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JP2004185060A (ja) | マイクロコンピュータ | |
JP2001034474A (ja) | データ処理装置及びデータ処理方法 | |
JPH11194969A (ja) | メモリ制御回路およびメモリ装置 | |
JP2005228142A (ja) | メモリ制御回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120918 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120927 |
|
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: 20121023 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121120 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151130 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |