JP5129023B2 - キャッシュメモリ装置 - Google Patents

キャッシュメモリ装置 Download PDF

Info

Publication number
JP5129023B2
JP5129023B2 JP2008137005A JP2008137005A JP5129023B2 JP 5129023 B2 JP5129023 B2 JP 5129023B2 JP 2008137005 A JP2008137005 A JP 2008137005A JP 2008137005 A JP2008137005 A JP 2008137005A JP 5129023 B2 JP5129023 B2 JP 5129023B2
Authority
JP
Japan
Prior art keywords
entry
address
invalidated
invalidation
line
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
Application number
JP2008137005A
Other languages
English (en)
Other versions
JP2009282920A (ja
Inventor
辺 淳 田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008137005A priority Critical patent/JP5129023B2/ja
Priority to US12/390,599 priority patent/US20090292857A1/en
Publication of JP2009282920A publication Critical patent/JP2009282920A/ja
Application granted granted Critical
Publication of JP5129023B2 publication Critical patent/JP5129023B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means

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)

Description

本発明は、データを記憶するキャッシュメモリ装置に関する。
従来、大容量の連続する主記憶領域に対してキャッシュの無効化(初期化)をする場合、一般的には以下のような方法を実施することになる。
(方法A)
無効化したい領域のデータが入っているかについて、順次、タグアクセスを行って、ヒット/ミスをチェックする。ヒットした場合はそのエントリを無効化する。この方法Aでは、無効化したい領域がPラインあるとし、無効化チェックにMサイクル掛かるとすると、P×Mサイクルの時間が必要となる。
(方法B)
すべてのキャッシュエントリのタグをチェックし、無効化したい領域のデータがキャッシュに格納されていた場合は、そのエントリを無効化する。この方法Bでは、1つのエントリのチェックにNサイクル掛かるとすると、エントリ数×Nサイクルの時間が掛かることになる。
無効化したい領域が小さい場合、すなわち、P×M<エントリ数×Nの場合には、方法Aが適用される。
一方、無効化したい領域が大きい場合は、方法Bが適用される。
このような従来の初期化方法において、無効化したい領域が大きい場合にはキャッシュのエントリ数の増加に伴い、かなりのサイクルが掛かるという問題があった。
これを解決するために、キャッシュの全エントリを無差別に無効化するという方法もある。タグをチェックする必要がないため、高速に無効化を行える。しかし、無効化したい領域以外の部分も無効化されてしまう。これにより、使用できる条件が非常に厳しいという問題がある。
また、他の従来のキャッシュメモリ装置では、ある無効化したい領域の開始アドレス、要素間距離、処理用素数などを設定する。これにより、該キャッシュメモリ装置は、自動的に順次タグ読み出しを行い、無効化したい領域だった場合はそのエントリを無効化する(例えば、特許文献1参照。)。
このキャッシュメモリ装置では、プロセッサなどが1エントリずつタグ読み出しを行って無効化を行う場合に対して、高速な処理が期待できる。しかし、このキャッシュメモリ装置では、キャッシュのエントリ数が多かったり無効化したい領域が大きかったりすると、ある程度の時間が掛かってしまうという問題があった。
特開平08−335189号公報
本発明は、無効化処理の高速化を図ることが可能なキャッシュメモリ装置を提供することを目的とする。
本発明の一態様に係る実施例に従ったキャッシュメモリ装置は、
本体メモリに記憶されたデータを一時的に記憶するキャッシュメモリ装置であって、
前記本体メモリに記憶された前記データを一時的に記憶するデータメモリと、前記データの前記本体メモリにおけるアドレスであるタグアドレスを記憶するタグメモリと、有効ビットを記憶するフラグメモリと、を含むラインを複数個含むエントリを有するキャッシュメモリ回路と、
前記本体メモリのうち無効化される予定の無効化予定領域のアドレスである無効化予定アドレス範囲を記憶するとともに、無効化予定の前記エントリの前記ラインのエントリアドレスを記憶するアドレス監視設定レジスタと、
前記タグアドレスと、前記アドレス監視設定レジスタに記憶された前記無効化予定アドレス範囲とを比較し、前記タグアドレスが前記無効化予定アドレス範囲に含まれる場合には、前記無効化予定アドレス範囲に含まれる前記タグアドレスを記憶する前記タグメモリに対応する前記ラインのエントリアドレスである無効化予定エントリアドレスを前記アドレス監視設定レジスタに記憶させるアドレス判定回路と、を備え、
前記無効化予定エントリアドレスの前記エントリの前記ラインに対応する前記フラグメモリの前記有効ビットを、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する旨を示すように、書き換えることにより、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する
ことを特徴とする。
本発明のキャッシュメモリ装置によれば、無効化処理の高速化を図ることができる。
本発明に係るキャッシュメモリ装置は、エントリを無効化する際に、CAM(Content Addressable Memory)などの特殊なタグメモリを使用せずに、該当するラインのデータだけを高速に無効化する。
以下、本発明に係る各実施例について図面に基づいて説明する。
図1は、本発明の一態様である実施例1に係るキャッシュメモリ装置100を含むシステム構成を示す図である。また、図2は、図1に示すキャッシュメモリ装置100のキャッシュメモリ回路1の要部構成の一例を示す図である。また、図3は、図1に示すキャッシュメモリ装置100のアドレス監視設定レジスタ2の要部構成の一例を示す図である。
図1に示すように、キャッシュメモリ装置100は、キャッシュメモリ回路1と、アドレス監視設定レジスタ2と、アドレス判定回路3と、無効化回路4と、を備える。
このキャッシュメモリ装置100は、本体メモリ200に記憶されたデータを一時的に記憶するようになっている。また、キャッシュメモリ装置100は、プロセッサ300からの指示に基づいて制御されるようになっている。
また、図1、図2に示すように、キャッシュメモリ回路1は、エントリ10を有する。このエントリ10は、フラグメモリ1aと、タグメモリ1bと、データメモリ1cと、を含むラインを複数個含む。
図2に示すように、エントリ10のラインは、エントリアドレス(エントリ番号)により特定される。
データメモリ1cは、本体メモリ200に記憶されたデータを一時的に記憶するようになっている。
タグメモリ1bは、該データの本体メモリ200におけるアドレスであるタグアドレスを記憶するようになっている。
フラグメモリ1aは、有効ビット(valid bit)およびダーティビットを記憶するようになっている。このフラグメモリ1aは、例えば、フリップフロップで構成されている。この有効ビットに基づいて、例えば、外部回路(プロセッサ300等)等は、この有効ビットが記憶されたフラグメモリ1aに対応するエントリ10のラインを読み出すか否かを判断する。
例えば、有効ビットが“0”の時は、該外部回路が該当するラインのデータを読み出さず、本体メモリ200からデータを読み出すように設定(ラインを無効化に設定)される。この時、キャッシュメモリ装置100に該データが格納される。
一方、有効ビットが“1”の時は、該外部回路が該当するラインのデータを読み出すように設定(ラインを有効化に設定)される。
なお、キャッシュメモリ回路1は、例えば、命令キャッシュであれば、有効ビットを、フラグメモリ1aに記憶する。一方、キャッシュメモリ回路1は、データキャッシュであれば、有効ビットとダーティビットを、フラグメモリ1aに記憶する。本実施例では、既述のように、キャッシュメモリ回路1は、有効ビットとダーティビットとを、フラグメモリ1aに記憶する。
アドレス監視設定レジスタ2は、図3に示すように、無効化予定情報メモリ2aを有する。この無効化予定情報メモリ2aは、キャッシュメモリ回路1のエントリ10のラインのエントリアドレスに対応したビットを記憶する。
例えば、エントリアドレス2、4、・・・、62に対応するビットは、“1”であり、その他のエントリアドレスに対応するビットは、“0”である。ここで、ビットが“1”のとき、対応するエントリアドレスのラインのデータメモリ1cには、無効化予定のデータが記憶されていることを示す。一方、ビットが“0”のとき、対応するエントリアドレスのラインのデータメモリ1cには、無効化予定ではないデータが記憶されていることを示す。すなわち、これらのビットは、エントリアドレス2、4、・・・、62に対応するエントリ10のラインが無効化予定であり、他のラインが無効化予定ではないことを示す。言い換えると、これらのビットは、本体メモリ200の無効化予定領域のデータが、エントリ10の該当するラインのデータメモリ1cに格納されているか否かを示す。
すなわち、アドレス監視設定レジスタ2は、これらのビットの情報を記憶することにより、無効化予定のエントリ10のラインのエントリアドレスである無効化予定エントリアドレスを記憶するようになっている。
また、アドレス監視設定レジスタ2は、設定ビット2bを記憶するようになっている。例えば、アドレス監視設定レジスタ2が、例えばプロセッサ300から制御信号を受けて、この設定ビット2bが、“0”から“1”に書き換えられ、停止状態から動作状態になる。
また、アドレス監視設定レジスタ2は、本体メモリ200のうちデータが無効化される予定の無効化予定領域のアドレスである無効化予定アドレス範囲を記憶するようになっている。アドレス監視設定レジスタ2は、該無効化予定アドレス範囲として、例えば、本体メモリ200のうち無効化される予定の無効化予定領域の開始アドレス2cと終了アドレス2dを記憶する。すなわち、該無効化予定アドレスは、開始アドレス2cと終了アドレス2dにより特定される。
なお、例えば、無効化予定アドレス範囲は、本体メモリ200のうち無効化される予定の無効化予定領域の開始アドレスと該領域のサイズなど、一意にアドレス領域を指定できればよい。
なお、このアドレス監視設定レジスタ2は、キャッシュメモリ装置100に複数固設けられてもよい。
また、アドレス判定回路3は、タグアドレスと、アドレス監視設定レジスタに記憶された無効化予定アドレス範囲とを比較する。そして、アドレス判定回路3は、該タグアドレスが該無効化予定アドレス範囲に含まれる場合には、該タグアドレスを記憶するタグメモリ1aに対応するエントリ10のラインのエントリアドレスである無効化予定エントリアドレスをアドレス監視設定レジスタ2に記憶させる。言い換えれば、アドレス判定回路3は、比較結果に応じた情報を出力し、この情報をアドレス監視設定レジスタ2に記憶させる。
すなわち、アドレス判定回路3は、キャッシュデータの入れ替え時に、新しくキャッシュ回路1に記憶されるデータのアドレスが、アドレス監視設定レジスタ2によって指定された領域に含まれるかを判定する。そして、その判定結果に応じて、アドレス判定回路3は、アドレス監視設定レジスタ2の無効化予定情報メモリ2aを更新する。
無効化回路4は、エントリの無効化を指示する指令が、外部のプロセッサ300から入力されるようになっている。この無効化回路4は、該指令が入力された場合、アドレス監視設定レジスタ2に記憶された無効化予定エントリアドレスを読み出す。そして、無効化予定4は、この読み出された無効化予定エントリアドレスのエントリ10のラインに対応するフラグメモリ1aの有効ビットを、無効化予定エントリアドレスのエントリ10の該ラインを無効化する旨を示すように、書き換える。ここでは、有効ビットを、例えば、“1”から“0”に、書き換える。
このように、有効ビットが“0”に設定されることにより、エントリ10の該当するラインが無効化される。すなわち、有効ビットが“0”に設定されることにより、該有効ビットに対応するエントリ10のラインに対応するデータメモリ1cに記憶されたデータが、外部回路(プロセッサ300等)等に読み出されないように設定される。
このように、無効化回路4は、無効化予定情報メモリ2aに記憶された情報に基づいて、キャッシュ回路1の任意のエントリ10の該当するラインを無効化する。
ここで、以上のような構成を有するキャッシュメモリ装置100がエントリ10の該当するラインを無効化する動作の一例について説明する。
まず、プロセッサ300は、使用する本体メモリ200のメモリ領域が後に無効化する予定の領域か否かを判断する。
そして、プロセッサ300は、無効化する予定の領域にアクセスする場合には、アドレス監視設定レジスタ2の開始アドレス2c及び終了アドレス2dを設定する。一般的に、使用するメモリ領域が無効化する予定の領域か否かは、プログラムのモデルで決められており、キャッシュメモリ回路1にアクセスする前に認識されていることが多い。
さらに、プロセッサ300は、設定ビット2bを例えば“1”(有効)に設定して、このアドレス監視設定レジスタ2のチェック動作を開始させる。
なお、設定ビット2bを“1”に設定することにより、本体メモリ200の無効化する予定の領域のデータがキャッシュメモリ回路1に入っていることを示す無効化予定情報メモリ2aのすべてのビットが“0”に初期化される。
そして、設定ビット2bが“1”に設定された後、キャッシュメモリ回路1の或るエントリについてデータの入れ替えが行われる際に、アドレス判定回路3は、タグアドレスと、アドレス監視設定レジスタに記憶された無効化予定アドレス範囲とを比較する。
これにより、アドレス判定回路3により、新しくキャッシュ回路1に記憶されるデータの本体メモリ200のアドレス(タグアドレス)が、アドレス監視設定レジスタ2に記憶された無効化予定アドレス範囲に含まれるか否かチェックされる。
そして、アドレス判定回路3は、該タグアドレスが該無効化予定アドレス範囲に含まれる場合には、該タグアドレスを記憶するタグメモリ1aに対応するエントリ10のラインのエントリアドレスである無効化予定エントリアドレスをアドレス監視設定レジスタ2に記憶させる。言い換えれば、アドレス判定回路3は、比較結果に応じた情報を出力し、この情報をアドレス監視設定レジスタ2に記憶させる。
すなわち、アドレス判定回路3は、キャッシュデータの入れ替え時に、新しくキャッシュ回路1に記憶されるデータのアドレスが、アドレス監視設定レジスタ2に記憶された該無効化予定アドレス範囲に含まれるかを判定する。そして、その判定結果に応じて、アドレス判定回路3は、アドレス監視設定レジスタ2の無効化予定情報メモリ2aを更新する。例えば、含まれる場合は、無効化予定情報メモリ2aの、対応するエントリのビットが“1”になる。
ここまでのキャッシュメモリ装置100のチェック動作は、本体メモリ200にアクセスしこの本体メモリ200から読み出されたデータをキャッシュメモリ回路1のデータメモリ1cに記憶させる動作と並行して、実施される。
このチェック動作が完了することにより、キャッシュメモリ回路1のエントリの該当するラインを無効化するための準備が完了する。
次に、プロセッサ300が無効化予定のエントリ10のラインへのアクセスを終え、このエントリのラインを無効化する場合には、プロセッサ300は無効化回路4に指令を出す。
無効化回路4は、該指令が入力された場合、無効化予定メモリ2aに記憶されたビットをすべて読み出す。すなわち、無効化回路4は、該指令が入力された場合、アドレス監視設定レジスタ2に記憶された無効化予定エントリアドレスを読み出す。そして、そして、無効化回路4は、この読み出された無効化予定エントリアドレスのエントリ10のラインに対応するフラグメモリ1aの有効ビットを、無効化予定エントリアドレスのエントリ10の該ラインを無効化する旨を示すように、書き換える。ここでは、有効ビットを、例えば、“1”から“0”に、書き換える。
このように、有効ビットが“0”に設定されることにより、エントリ10の該当するラインが無効化される。すなわち、有効ビットが“0”に設定されることにより、該有効ビットに対応するエントリ10のラインに対応するデータメモリ1cに記憶されたデータが、外部回路(プロセッサ300等)等に読み出されないように設定される。
このように、無効化回路4は、アドレス監視設定レジスタ2に記憶された情報に基づいて、キャッシュ回路1の任意のエントリ10の該当するラインを無効化する。
このとき、無効化回路4は、アドレス監視設定レジスタ2の設定ビット2bを“0”(無効)にする。これにより、アドレス監視設定レジスタ2の動作が停止する。
本実施例では、既述のように、フラグメモリ1aはフリップフロップで構成されている。したがって、すべての有効ビットに対して同時に書き込みが可能である。このため、1サイクルで無効化処理は終了する。
以上の動作により、キャッシュメモリ装置100がエントリ10の該当するラインを無効化する。
本発明に係るキャッシュメモリ装置100によれば、無効化を行うときには、無効化すべきキャッシュ回路1のエントリ10は認識されているので、キャッシュ回路の対応するエントリだけを無効化処理することができる。
これにより、既述の従来技術のようなタグ読み出しなどに掛かる時間を、削減することができる。すなわち、該従来技術と比較して、高速な無効化処理を行うことが可能となる。
特に、本発明に係るキャッシュメモリ装置では、キャッシュ回路の有効ビットメモリをフリップフロップで構成している。これにより、無効化したい領域についてのキャッシュ回路の無効化処理を1サイクルで実施することが可能になる。
なお、フラグメモリ1aはフリップフロップで構成されていなくてもよい。この場合、1サイクルで有効ビットの書き込みはできない。しかし、予め無効化すべきエントリは、アドレス監視設定レジスタ2のビットを読み出すことで判別できる。このため、無効化時にタグメモリ1bを順次読み出す必要はない。
無効化回路4は、無効化すべきエントリ10のラインに対して順次、有効ビットを0(無効)にしていくことで、同等の処理が実現できる。この場合は、無効化すべきエントリ数分のサイクルが掛かることになる。しかし、既述の従来のキャッシュメモリ装置と比較すると高速に実行が可能となる。
一般的に、キャッシュの入れ替えは、かなりの時間が掛かる。したがって、キャッシュの入れ替えの間に、複数のアドレス監視設定レジスタに対してチェックを行っても、性能的に不利になることはない。また、この場合は、実際に無効化処理を行いたいときには、必要に応じて、アドレス監視設定レジスタを選択することになる。
以上のように、本実施例に係るキャッシュメモリ装置によれば、無効化処理の高速化を図ることができる。
実施例1では、無効化回路によりエントリのラインを無効化する構成の一例について述べた。
本実施例2では、ソフトウェアによりエントリのラインを無効化する構成の一例について述べる。
図4は、本発明の一態様である実施例2に係るキャッシュメモリ装置100aを含むシステム構成を示す図である。
図4に示すように、キャッシュメモリ装置100aは、実施例1のキャッシュメモリ装置100と比較して、無効化回路4が省略されている。
また、アドレス監視設定レジスタ2は、本体メモリ200のうちデータが無効化される予定の無効化予定領域のアドレスである無効化予定アドレス範囲を記憶するようになっている。アドレス監視設定レジスタ2は、該無効化予定アドレス範囲として、例えば、本体メモリ200のうち無効化される予定の無効化予定領域の開始アドレス2cと該領域のサイズ22dを記憶する。すなわち、該無効化予定アドレスは、開始アドレス2cと該領域のサイズにより特定される。
プロセッサ300は、アドレス監視設定レジスタ2に記憶された無効化予定エントリアドレスに基づいて、無効化予定エントリアドレスのエントリ10のラインに対応するフラグメモリ1aの有効ビットを、無効化予定エントリアドレスのエントリ10の該ラインを無効化する旨を示すように、書き換える。これにより、無効化予定エントリアドレスのエントリ10の該ラインを無効化する。
なお、キャッシュメモリ装置100aのその他の構成は、実施例1のキャッシュメモリ装置100と同様である。すなわち、アドレス監視設定レジスタ2の設定、及び、キャッシュの入れ替えが起こった場合の動作は、基本的には、実施例1と同様である。
本実施例2では、無効化処理を行う場合の無効化回路4の動作を、プロセッサ300が実行する。
すなわち、無効化処理を行う場合には、プロセッサ300が、アドレス監視設定レジスタ2に記憶された無効化予定エントリアドレスを読み出して、このプロセッサ300に格納されたソフトウェアによりエントリ10の該当するラインを無効化する。
この場合、実施例1と比較して、専用の無効化回路を持つ必要はないため、構成は単純になる。
この場合も、予め無効化すべきエントリ10のラインは、プロセッサ300が無効化予定情報メモリ2aを読み出すことで判別できる。このため、従来技術のキャッシュメモリ装置のように、無効化処理時に、タグメモリを順次読み出す必要はない。このため、キャッシュメモリ装置100aは、従来のキャッシュメモリ装置と比較すると高速に実行が可能となる。
以上のように、本実施例に係るキャッシュメモリ装置によれば、無効化処理の高速化を図ることができる。
なお、既述のように、実施例1、2では、キャッシュメモリ装置として、単純なダイレクトマップ方式について述べた。
しかし、本発明は、2ウェイ(way)や4ウェイなどのセットアソシアティブ方式のキャッシュメモリ装置にも、適応可能である。その場合は、アドレス監視設定レジスタの無効化予定情報メモリのビットをウェイ数分用意しておけばよい。
また、実施例1、2では、アドレス監視設定レジスタ2が1つの場合について説明した。
しかし、このアドレス監視設定レジスタ2は、複数個設けられていてもよい。その場合は、キャッシュの入れ替えが起こったときには、有効なアドレス監視設定レジスタ2のすべてが作動することになる。
本発明の一態様である実施例1に係るキャッシュメモリ装置100を含むシステム構成を示す図である。 図1に示すキャッシュメモリ装置100のキャッシュメモリ回路1の要部構成の一例を示す図である。 図1に示すキャッシュメモリ装置100のアドレス監視設定レジスタ2の要部構成の一例を示す図である。 本発明の一態様である実施例2に係るキャッシュメモリ装置100aを含むシステム構成を示す図である。
符号の説明
1、21 キャッシュメモリ回路
1a フラグメモリ
1b タグメモリ
1c データメモリ
2 アドレス監視設定レジスタ
2a 無効化予定情報メモリ
2b 設定ビット
2c 開始アドレス
2d 終了アドレス
22d サイズ
3 アドレス判定回路
4 無効化回路
100、100a キャッシュメモリ装置
200 本体メモリ
300 プロセッサ

Claims (5)

  1. 本体メモリに記憶されたデータを一時的に記憶するキャッシュメモリ装置であって、
    前記本体メモリに記憶された前記データを一時的に記憶するデータメモリと、前記データの前記本体メモリにおけるアドレスであるタグアドレスを記憶するタグメモリと、有効ビットを記憶するフラグメモリと、を含むラインを複数個含むエントリを有するキャッシュメモリ回路と、
    前記本体メモリのうち無効化される予定の無効化予定領域のアドレスである無効化予定アドレス範囲を記憶するとともに、無効化予定の前記エントリの前記ラインのエントリアドレスを記憶するアドレス監視設定レジスタと、
    前記タグアドレスと、前記アドレス監視設定レジスタに記憶された前記無効化予定アドレス範囲とを比較し、前記タグアドレスが前記無効化予定アドレス範囲に含まれる場合には、前記無効化予定アドレス範囲に含まれる前記タグアドレスを記憶する前記タグメモリに対応する前記ラインのエントリアドレスである無効化予定エントリアドレスを前記アドレス監視設定レジスタに記憶させるアドレス判定回路と、を備え、
    前記無効化予定エントリアドレスの前記エントリの前記ラインに対応する前記フラグメモリの前記有効ビットを、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する旨を示すように、書き換えることにより、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する
    ことを特徴とするキャッシュメモリ装置。
  2. 前記フラグメモリは、フリップフロップであることを特徴とする請求項1に記載のキャッシュメモリ装置。
  3. 前記エントリの無効化を指示する指令が入力される無効化回路を、さらに備え、
    前記無効化回路は、
    前記指令が入力された場合、前記アドレス監視設定レジスタに記憶された前記無効化予定エントリアドレスに基づいて、前記無効化予定エントリアドレスの前記エントリの前記ラインに対応する前記フラグメモリの前記有効ビットを、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する旨を示すように、書き換えることにより、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する
    ことを特徴とする請求項1または2に記載のキャッシュメモリ装置。
  4. プロセッサが、前記アドレス監視設定レジスタに記憶された前記無効化予定エントリアドレスに基づいて、前記無効化予定エントリアドレスの前記エントリの前記ラインに対応する前記フラグメモリの前記有効ビットを、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する旨を示すように、書き換えることにより、前記無効化予定エントリアドレスの前記エントリの前記ラインを無効化する
    ことを特徴とする請求項1または2に記載のキャッシュメモリ装置。
  5. 前記無効化予定アドレス範囲は、前記本体メモリのうち無効化される予定の無効化予定領域の開始アドレスと終了アドレスにより特定される
    ことを特徴とする請求項1ないし4の何れかに記載のキャッシュメモリ装置。
JP2008137005A 2008-05-26 2008-05-26 キャッシュメモリ装置 Expired - Fee Related JP5129023B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008137005A JP5129023B2 (ja) 2008-05-26 2008-05-26 キャッシュメモリ装置
US12/390,599 US20090292857A1 (en) 2008-05-26 2009-02-23 Cache memory unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008137005A JP5129023B2 (ja) 2008-05-26 2008-05-26 キャッシュメモリ装置

Publications (2)

Publication Number Publication Date
JP2009282920A JP2009282920A (ja) 2009-12-03
JP5129023B2 true JP5129023B2 (ja) 2013-01-23

Family

ID=41342914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008137005A Expired - Fee Related JP5129023B2 (ja) 2008-05-26 2008-05-26 キャッシュメモリ装置

Country Status (2)

Country Link
US (1) US20090292857A1 (ja)
JP (1) JP5129023B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9740613B2 (en) 2013-09-20 2017-08-22 Kabushiki Kaisha Toshiba Cache memory system and processor system
US10360151B2 (en) 2015-09-16 2019-07-23 Kabushiki Kaisha Toshiba Cache memory system including first cache memory and second cache memory having multiple regions with different access speed and processor system

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10509725B2 (en) 2013-03-08 2019-12-17 Oracle International Corporation Flushing by copying entries in a non-coherent cache to main memory
US20140258635A1 (en) * 2013-03-08 2014-09-11 Oracle International Corporation Invalidating entries in a non-coherent cache
US10846230B2 (en) * 2016-12-12 2020-11-24 Intel Corporation Methods and systems for invalidating memory ranges in fabric-based architectures
US11868204B1 (en) * 2021-12-10 2024-01-09 Amazon Technologies, Inc. Cache memory error analysis and management thereof

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57195375A (en) * 1981-05-27 1982-12-01 Mitsubishi Electric Corp Channel controller
JPH077356B2 (ja) * 1989-05-19 1995-01-30 株式会社東芝 パイプライン方式のマイクロプロセッサ
JP2641319B2 (ja) * 1990-08-20 1997-08-13 日本電気株式会社 アドレス変換バッファクリア方式
JPH06139149A (ja) * 1992-10-29 1994-05-20 Mitsubishi Electric Corp 多重仮想空間制御装置
JPH07105091A (ja) * 1993-10-01 1995-04-21 Hitachi Ltd キャッシュの制御装置および制御方法
JPH08185358A (ja) * 1994-12-28 1996-07-16 Fujitsu Ltd マイクロプロセッサ
JP3176255B2 (ja) * 1995-06-09 2001-06-11 日本電気株式会社 キャッシュメモリ装置
US5809280A (en) * 1995-10-13 1998-09-15 Compaq Computer Corporation Adaptive ahead FIFO with LRU replacement
JP2003044358A (ja) * 2001-07-31 2003-02-14 Mitsubishi Electric Corp キャッシュメモリ制御装置
JP2004038422A (ja) * 2002-07-02 2004-02-05 Matsushita Electric Ind Co Ltd 半導体装置
JP2004102825A (ja) * 2002-09-11 2004-04-02 Renesas Technology Corp キャッシュメモリ制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9740613B2 (en) 2013-09-20 2017-08-22 Kabushiki Kaisha Toshiba Cache memory system and processor system
US10360151B2 (en) 2015-09-16 2019-07-23 Kabushiki Kaisha Toshiba Cache memory system including first cache memory and second cache memory having multiple regions with different access speed and processor system

Also Published As

Publication number Publication date
JP2009282920A (ja) 2009-12-03
US20090292857A1 (en) 2009-11-26

Similar Documents

Publication Publication Date Title
US10019369B2 (en) Apparatuses and methods for pre-fetching and write-back for a segmented cache memory
US7290081B2 (en) Apparatus and method for implementing a ROM patch using a lockable cache
KR102421311B1 (ko) 태그 매칭 명령에 응답하는 저장회로
CN109952567B (zh) 用于旁通高级dram存储器控制器的内部高速缓存的方法和装置
JP5030796B2 (ja) データ転送中にキャッシュへのアクセスを制限するシステムおよびその方法
US8117395B1 (en) Multi-stage pipeline for cache access
CN105144120B (zh) 基于存储器地址将来自高速缓存行的数据存储到主存储器
US10719448B2 (en) Cache devices with configurable access policies and control methods thereof
JP5129023B2 (ja) キャッシュメモリ装置
JP5536655B2 (ja) キャッシュメモリ、メモリシステム及びデータコピー方法
JP2007048296A (ja) 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム
CN111201518A (zh) 用于管理能力元数据的设备和方法
KR100505695B1 (ko) 동적으로 할당 또는 해제되는 버퍼를 가지는 캐쉬 메모리장치, 이를 구비한 디지털 데이터 처리 시스템 및 그 방법
JP2004151962A (ja) キャッシュメモリ、プロセッサ及びキャッシュ制御方法
US6976130B2 (en) Cache controller unit architecture and applied method
KR101502827B1 (ko) 컴퓨터 시스템에서의 캐시 무효화 방법
JP4037806B2 (ja) キャッシュメモリ装置
CN103810116A (zh) 用于嵌入式***的指令存储装置
CN103810117A (zh) 处理器用指令存储***
JP4765249B2 (ja) 情報処理装置およびキャッシュメモリ制御方法
JP2003058420A (ja) Nand型フラッシュメモリからのデータ読み出し方法
CN116955224A (zh) 一种eeprom存储器中存储数据的方法
JP2019164491A (ja) 情報処理装置及びキャッシュ制御装置
CN117882056A (zh) 信息处理设备和信息处理方法
CN103810122A (zh) 用于嵌入式***的高速缓存器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120920

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: 20121005

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: 20121101

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees