[go: up one dir, main page]

JP2002514819A - キャッシュメモリを有するデータ処理回路。 - Google Patents

キャッシュメモリを有するデータ処理回路。

Info

Publication number
JP2002514819A
JP2002514819A JP2000548812A JP2000548812A JP2002514819A JP 2002514819 A JP2002514819 A JP 2002514819A JP 2000548812 A JP2000548812 A JP 2000548812A JP 2000548812 A JP2000548812 A JP 2000548812A JP 2002514819 A JP2002514819 A JP 2002514819A
Authority
JP
Japan
Prior art keywords
data
address
stream
management unit
cache
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
Application number
JP2000548812A
Other languages
English (en)
Other versions
JP4427187B2 (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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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 Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2002514819A publication Critical patent/JP2002514819A/ja
Application granted granted Critical
Publication of JP4427187B2 publication Critical patent/JP4427187B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms

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

(57)【要約】 【課題】プロセッサがより能率的にキャッシュメモリを使用することができるプリアンブル記載のデータ処理回路を提供すること。 【解決手段】本処理回路は、プロセッサによってアクセスされるアドレス中のアドレスのストリームについての情報を保持するキャッシュ管理ユニットを含む。キャッシュ管理ユニットは、プログラムの実行の進捗に応答してストリームに対する現在のアドレスを更新する。キャッシュ管理ユニットは、キャッシュメモリ内の選択された記憶位置(現在のアドレスに対する特定アドレスの位置に応じて再使用可能とされる特定アドレスに対応するデータに使用されるキャッシュメモリ内の記憶位置)を再利用可能とさせる。

Description

【発明の詳細な説明】
【0001】
【発明が属する技術分野】
本発明は、請求項1のプリアンブルに記載のデータ処理回路に関する。このよ
うなデータ処理回路は、米国特許第5,649,144号により既知である。
【0002】
【従来の技術】
キャッシュメモリは、プロセッサ速度とメインメモリ速度間のギャップを橋渡
しする装置として知られている。メインメモリからのデータのコピーが、キャッ
シュメモリに保たれているので、プロセッサは、このようなコピーにアクセスす
るために、遅いメインメモリではなく速いキャッシュメモリにのみアクセスすれ
ば良い。
【0003】 米国特許第5,649,144号は、プロセッサによってこのデータが実際に読み込ま
れる前に、データのコピーをキャッシュに先取りするキャッシュ管理ユニットを
開示している。このキャッシュ管理ユニットは、アドレスストリームの概念を用
い、そしてストリームのアドレスから、個別にまたは先取りされたデータブロッ
クの一部としてデータを先取りする。各ストリームは、例えば、ベースアドレス
とストライド値によって記載されていて、これらは、ベースアドレスで開始させ
そしてストライド値でそれを繰り返しインクリメントさせることにより得られる
アドレスのシリーズを定義する。ベースアドレスとストライドは、両者とも調整
可能で、ストライドは、1をプラスあるいはマイナスした値、またはより大きい
値をプラスあるいはマイナスした値を取ることができる。
【0004】 アドレスストリームを使用することの背後にある観念は、プロセッサによって
実行される典型的プログラムが、ストリームによって定義されるアドレスから読
みこまれる命令を含むであろうと言うことである。一旦データがストリームから
の1アドレスでアクセスされると、近い将来、プログラムが、多分そのストリー
ムに属していない他のアドレスからの読み込みの後、そのアドレスにストライド
値を加えることによって得られる新たなアドレスでデータにアクセスすることが
必要になるであろう。データに対する必要性を新たなアドレスから予期するため
に、キャッシュ管理ユニットは、新たなアドレスからデータをキャッシュメモリ
に先取りする。この結果、プロセッサは、それが必要となると、新たなアドレス
で格納されているデータを即座にフェッチすることができる。
【0005】 1つのアドレスとそのストリームからの新たなアドレスとを読み込む間、プロ
セッサは、異なったストリームの一部またはいかなるストリームにも関係ない、
異なったアドレスから読み込むことが出来る。キャッシュ管理ユニットは、プロ
セッサによってプログラムの実行の進行をフォロウし、プロセッサによって実行
されるプログラムが、短い通知で特定ストリームからの新たなアドレスにそれが
期待されるまで進むたびに、特定ストリームから、データを先取りする。
【0006】 キャッシュ管理ユニットは、また、プロセッサが必要とするいかなるデータも
格納するキャッシュ位置を選択しなければならない。そのデータには、ストリー
ムに属しているアドレスに格納されているデータと他のデータの両方が含まれる
。キャッシュは、再使用を可能とするキャッシュ位置を選択する置換戦略を使用
する。良く使用される置換戦略の一例は、最低使用頻度データ項目(またはデー
タブロック)によって占められるキャッシュメモリ位置を選択する、LRU(最低
使用頻度)戦略である。
【0007】 特定キャッシュメモリ位置が再使用可能にされると、その特定キャッシュメモ
リに以前に格納されていたデータは、低速メモリからしかフェッチ出来ない。し
たがって、置換戦略は、プログラムの実行効率とプロセッサをメインメモリに接
続するバスの使用効率に影響を与えるであろう。LRU戦略は、例えば、このよう
な方法でプロセッサとバス使用の効率を減小させることもできる。
【0008】
【課題を解決するための手段】
本発明の目的は、とりわけ、プロセッサがより能率的にキャッシュメモリを使
用することができるプリアンブルに記載のデータ処理回路を提供することである
【0009】 本発明のデータ処理回路は、請求項1の特徴部を特徴とする。本発明によると
、アドレスストリームは、再使用可能となるキャッシュメモリ位置を選択するた
めに使用される。プロセッサがストリームに沿ってストライドを進めることをキ
ャッシュ管理ユニットが検知すると、そのストリームに対応するキャッシュの「
古い」データは、再使用のために犠牲にされる。キャッシュメモリ位置は、個々
に、または一度にブロックで再使用可能にさせることができる。
【0010】 従って、再使用可能にされるキャッシュメモリ位置は、必ずしも最低使用頻度
キャッシュメモリ位置にはならない。例えば、あるストリームが、速い遷移で膨
大なデータ量にアクセスする時、そのデータに対して使用されるキャッシュメモ
リ位置は、このストリームの一部ではなくかつこのストリームが進む周波数より
はるかに低い周波数で使用される他のデータに対して使用されるキャッシュメモ
リ位置より、より速く再使用可能とさせることができる。そのキャッシュメモリ
位置が再使用可能とされた後に、ストリームからのデータがアクセスされないな
らば、これはキャッシュ失敗の数を減らす。
【0011】 一般に、キャッシュ内に分布する位置は、使用可能にさせることができる。例
えば、ストライドが、プラスまたはマイナス1でない場合、このようにして使用
可能とされる連続した位置は、隣接していない。原理的には、再使用可能にされ
るキャッシュメモリ位置は、通常、使用可能となるであろう:それは、同じスト
リーム、他のストリーム、またはいかなるストリームにも属しないデータに対し
て使用することができる。
【0012】 (例えば、本発明のテクニックが、特定プログラムに対し再使用可能となるキ
ャッシュメモリ位置を充分提供しない場合には)、キャッシュメモリ位置を再使
用可能にさせる本発明のテクニックを、それらの位置を再使用可能にさせるキャ
ッシュメモリ位置を選択するいかなる全体置換戦略とも、組み合わせて使用する
ことができる。本発明のテクニックを使用すれば、より多くのキャッシュメモリ
位置が使用可能となるので、このような全体置換戦略を使用する必要性は減少す
るであろう。
【0013】 本発明は、プログラムにおけるそのデータの必要性に応じてデータをキャッシ
ュ内に保存する。ストリームに対するデータを指定された時間保持することによ
って、プログラムが再びそのデータを必要とするときにすでにそのデータがキャ
ッシュから除去されてしまっていると言うことがないようにすることができる。
また、そのデータがもはや必要でなくなったときに、データを適切な時期にスト
リームから棄てることにより、キャッシュの再使用に対して充分なスペースを生
成することができるので、プロセッサがまだ使用することができるキャッシュか
ら他のデータを取り除く必要性はより少なくさせることができる。
【0014】 それが、ストリーム内で最も最近に使用された新たなアドレスの後から一定の
ストライド数を超えるまで、キャッシュ管理ユニットは、キャッシュ内にストリ
ームに対応するデータを保つことが好ましい。これにより、再使用可能にさせる
キャッシュメモリ位置と多様なメモリー位置へのアクセスとの間の関係を、容易
に調整可能にすることが出来る。
【0015】 ストライドが相対的に大きい場合、非常に離れているアドレスはキャッシュに
保持されるが、ストライドが相対的に小さい場合、最も最近に使用されたアドレ
スに非常に近接しているアドレスは、再利用させることができる。同様に、プロ
セッサが、そのストリームに対応しているアドレスからストリームデータに沿っ
て相対的に頻繁には進まない場合には、それを、プロセッサが相対的に頻繁に進
むストリームに対応するアドレスからのデータに比較してより長く保持すること
が出来る。
【0016】 ストリームが、データを先取りするためにも使用される場合、これは、データ
が、アドレスの各「スライドするウィンドウ」(各ウィンドウは各ストリームに
属する)からキャッシュ内に保持される結果をもたらす。
【0017】 本発明の一実施例の場合、プロセッサは、データが各ストリームに対して独立
してキャッシュに保持される距離をプログラムする命令を有する。これは、例え
ば、次のように使用することができる。所定のプログラムに対し、ストリーム内
の局所的位置の環境が計算に対してどの程度大きい必要があるかと言う点は、既
知であるので、各ストリームに対し、どれだけ多くのデータをプログラム用にキ
ャッシュに保持しておかなければならないのか、かつデータをどれだけの距離で
キャッシュから除去することができるかと言う点を、決定することが可能となる
。したがって、プログラムによりこの距離をそれらの必要性に適応させることが
できる。この距離は、さまざまな方法、例えば、ストライドの数として、または
アドレスの差として、特定することが出来る(1つの命令が、1つのストリームに
対するまたはいくつかのストリームに対する距離を特定するかもしれない)。
【0018】 ストリームに沿ったプログラムの前進は、プロセッサがストリームの次のアド
レスに対応するアドレスを有する読み込み命令を発行するか否かの検知、または
プログラムの明確な命令、または指定された命令アドレスにより決められる任意
の命令の実行の検知等の、いくつかの方法により検知することができる。読み込
み命令のアドレスを使用する場合、プロセッサの部分を取り扱っている命令とデ
ータの先取りは独立して設計することができる(プログラムカウンタ値のような
情報は、データ先取りには不必要である)。
【0019】
【発明を実施するための形態】
本発明のデータ処理回路のこれらのそして他の有利な観点は、以下の説明と図
の使用により詳細に示される。
【0020】 処理回路は、プロセッサ10、キャッシュメモリ12、メインメモリ14およびキャ
ッシュ管理ユニット16を含む。プロセッサ10は、キャッシュメモリ12とキャッシ
ュ管理ユニット16に結合されているアドレス出力端を有する。キャッシュメモリ
12は、メインメモリ14に結合されているアドレス出力端を有する。プロセッサ10
とキャッシュメモリ12は、データ接続を有する。キャッシュメモリ12とメインメ
モリ14も、データ接続を有する。
【0021】 プロセッサ10は、また、命令を格納する命令メモリ(図示せず)と命令キャッ
シュ(図示せず)を使用することが好ましいが、命令を、メインメモリ14および
/またはキャッシュメモリ12にフェッチしそして格納することも可能である。本
発明は、一般に、データキャッシュに関するもので、命令キャッシュに関するも
のではないので、一般に、このことは本発明に影響を及ぼさない。しかし、命令
がキャッシュメモリ12にも格納される場合、本発明により、命令のフェッチに対
しキャッシュメモリー空間をより効率的に使用することが可能になる。
【0022】 動作中、プロセッサ10は、プロセッサにデータをメモリから読み込みおよび/
またはメモリに書込ませう命令を含むプログラムを実行する。プロセッサ10が、
読み込み命令を実行すると、それはキャッシュメモリ12に読み込みアドレスを発
行する。そのアドレスに対応するデータがキャッシュメモリ12に格納されている
場合、キャッシュメモリ12は、そのデータをプロセッサ10へのデータ接続上に出
力する。読み込みアドレスに対応するデータがキャッシュメモリ12に格納されて
いない場合、キャッシュメモリは、データの、またはその読み込みアドレスを含
む(例えば、64バイトの)データブロックの読み込みアドレスをメインメモリ14
に出力する。これに応答して、メインメモリ14は、そのデータ(またはそのデー
タを含むデータブロック)をそのデータ(またはデータブロック)を格納するキ
ャッシュメモリ12に渡し、かつそのデータをプロセッサ10に渡す。
【0023】 プロセッサ10が書込み命令を実行する場合、コピーバックまたはライトスルー
のような多様なテクニックを使用することができる。使用されるテクニックによ
り書込み命令からのデータがキャッシュメモリ12に格納される場合、書込みは、
その書込まれたデータが属するデータブロックをコピーするためのメインメモリ
14からの読み込みにも関係する。それゆえ、メモリからのフェッチは、プロセッ
サ10から命令を読み込むことには限定されない。
【0024】 キャッシュメモリ12は、メインメモリ14より速いが、容量は小さい。したがっ
て、キャッシュメモリ12は、通常、メインメモリ14に格納することができる全て
のデータを同時に格納することはできない。これに対処するために、キャッシュ
メモリ12内の各記憶場所は、メインメモリ14の異なった位置からのデータを格納
するために択一的に使用することができる。フルアソシアイティブキャッシュ、
セットアソシエイティブキャッシュ等のような、これを実現させる多様なテクニ
ックは、周知である。(このようなテクニックは、如何なるものでも本発明と組
み合わせて使用することができる)。
【0025】 データが、以前に他のデータが格納されていたキャッシュメモリ12内の位置に
格納されている場合、この位置は再利用されていると言える。再利用された位置
で以前に格納されていたデータは、上書きされているので、再使用の後、キャッ
シュメモリ12から得ることは出来ない。上書きされたデータは、プロセッサ10が
それを新たに読み込むことが可能となる前に、メインメモリ14から検索されなけ
ればならない。
【0026】 キャッシュ管理ユニット16は、上書きされたデータが再び使用される可能性が
最も低いデータとなる、再使用に対するキャッシュメモリ位置を選択する戦略を
使用する。キャッシュ管理ユニット16は、プロセッサが再び必要とする可能性の
あるキャッシュからのデータが再使用により除去されてしまう確率を減らすよう
に、再使用可能となるキャッシュメモリ12の位置を選択する。
【0027】 本発明によると、キャッシュ管理ユニット16は、キャッシュ位置の再使用を管
理するストリームの概念を使用する。この背後にある観念は、プロセッサ10によ
り発行されるアドレスの中には、変更アドレスの予測可能なパターンを有するア
ドレスの一つまたは複数のストリームが存在すると言うことである。プロセッサ
10がこれらのストリームに沿って進むとき、このストリーム内のより古いアドレ
スからのデータを、もはや不必要とすることができるので、キャッシュ管理ユニ
ットは、キャッシュメモリ12内のこのデータに使用される記憶位置を、再使用可
能にさせることができる。これらのキャッシュメモリ位置を再使用可能にさせる
ことによって、キャッシュ管理ユニット16が、プロセッサ10がいまなお必要とす
るデータを含む他のキャッシュメモリ位置を、再使用可能としなければならない
状況を避けることができる。
【0028】 図2は、メモリーアドレス空間20とこのような多くのストリームの一具体例を
示す。第一ストリームは、連続したアドレス20a-dを含む。第二ストリームは連
続したアドレス23a-cを含み、第三ストリームは連続したアドレス25a-dを含む。
第一ストリーム20a-dの連続した位置は、連続したアドレスの各対間に大きいス
トライドで増大していくアドレスを有する。第二ストリーム23a-cの連続した位
置も、増大していくアドレスを有するが、ストライドはより小さい。第三ストリ
ーム25a-dの連続した位置は、減少していくアドレスを有する。
【0029】 アドレスのこのような遷移は、例えば、数のマトリックス内のアドレスに対応
させることができる。このようなマトリックスは、連続したメモリー位置内の一
行の連続した要素により、行順でメモリ内に格納させることができる。このよう
なマトリックスを使用するプログラムは、行ごとまたは列ごとにこのようなマト
リックスにアクセスすることができる。第一の場合、アドレスのストリームは、
次のアドレスにいたるごとに1増大し、第二の場合、アドレスのストリームは、1
行を格納するために必要な格納空間に対応するストライド分増大する。プログラ
ムが、いくつかのマトリックス中を同時に進むか、または1つのマトリックスに
いくつかの方向でアクセスする場合、これは多重ストリームを生じるであろう。
【0030】 例えば、マトリックス中の数を空間的にフィルタリングする実際的なプログラ
ムは、このようなストリームからの最も最近のアドレスからフェッチされた数を
将来使用する必要が、さらにストリームにおける以前のいくつかのアドレスから
フェッチされた以前の数を使用する必要があろう。しかし、ストリーム内のそれ
以上に戻る数は、もはや必要ではない。したがって、このようないくつかの以前
の数は、キャッシュメモリ内に保持することが好ましく、そしてより古い数「更
にオン(further on)」に対するキャッシュメモリ位置を再使用可能にすることが
できる。
【0031】 プログラマは、以前の数がどれだけ多く必要であるかを示す文をプログラムに
含ませることができる。また、コンパイラが、プログラムからこのような以前の
数がどの程度必要であるかを決定することも出来る。これから、ストリームのア
ドレスから先取りされた数を保持しなければならない、最も最近にアクセスされ
たアドレスからの距離を示すために、キャッシュ管理ユニット16に対する命令を
、生成させることができる。
【0032】 本発明の一実施例の場合、キャッシュ管理ユニット16は、多くのストリームを
使用し、そして各ストリームに対して各エントリ(CURRENT_ADDRESS、STRIDE、D
ISTANCE)を有するテーブルと実効的に同一なものを維持する。キャッシュ管理
ユニット16は、プロセッサ10がキャッシュメモリ12に発行するデータアドレスを
監視する。各データアドレスは、ストリームのCURRENT_ADDRESSエントリと比較
される。プロセッサ10が発行したデータアドレスが、特定ストリームのCURRENT_
ADDRESSエントリに等しい場合、その特定ストリームに対してストリームヒット
が発生したと言える。この場合、この特定ストリームに対するCURRENT_ADDRESS
エントリはSTRIDEエントリ内の値分増大し、そしてキャッシュ管理ユニット16は
、アドレスCURRENT_ADDRESSDISTANCE*STRIDEに対応するデータを格納するキャッ
シュメモリ位置を再使用可能にする。
【0033】 テーブルエントリ(CURRENT_ADDRESS、STRIDE、DISTANCE)は、(CURRENT_ADD
RESS、STRIDE、DISTANCE、OLDEST_ADDRESS)に拡大させることができる(ここで
、OLDEST_ADDRESSエントリは、いまなお使用可能であるストリームからの最も古
いアドレスを示す)。
【0034】 最初、ストリームが始まるとき、OLDEST_ADDRESSは、CURRENT_ADDRESSとなる
ように設定される。OLDEST_ADDRESSが、CURRENT_ADDRESSとCURRENT_ADDRESSDIST
ANCE*STRIDEの間には無いようになるまでCURRENT_ADDRESSが変化すると、キャッ
シュ管理ユニット16は、OLDEST_ADDRESSに対応するキャッシュメモリー位置を再
使用可能にし、OLDEST_ADDRESSをOLDEST_ADDRESS +STRIDEに変更する。
【0035】 プロセッサ10によって実行されるプログラムは、キャッシュ管理ユニット16に
ストリームのプロパティを送ることが好ましい。この目的に対し、プロセッサ10
の命令セットは、テーブルにエントリを入れる命令を含むことが好ましい。この
ような命令は、ストリーム数、STRIDE、DISTANCEおよびCURRENT_ADDRESSの初期
値を特定することができる。
【0036】 キャッシュ管理ユニット16は、キャッシュメモリー位置が再使用可能となった
事実を多様な方法で記録することができる。好適な一実施例の場合、キャッシュ
管理ユニット16は、有効ビットのテーブル、キャッシュメモリ12の各ブロック(
例えば、64バイト)ごとのテーブルを維持する。ブロックの有効ビットは、その
ブロックが「有効である」か否か、すなわち、そのブロックが、プロセッサ10か
らの読み込みに応答して復帰することができるデータを含むか否かを示す。最初
、有効ビットは、どのブロックも有効でないことを示し、そしてブロックが(プ
レ)フェッチされるたびに、そのブロックに対して有効ビットが設定される。メ
モリーブロックからのデータが、メインメモリ14からキャッシュメモリ12にフェ
ッチされる場合、キャッシュ管理ユニット16は、有効ビットが設定されていない
適切なブロックを検索しそしてフェッチされたデータをそのブロックに配置する
。有効ビットが設定されていない適切なブロックが得られない場合、キャッシュ
管理ユニット16は、その置換戦略によりブロックを選択し、そしてフェッチされ
たデータをそのブロックにロードする。
【0037】 この好適な実施例の場合、キャッシュ管理ユニット16は、再使用可能とされる
ブロックに対する有効ビットをクリアする。何故ならば、そのブロックが、そこ
に格納されているデータを越えて、定義距離よりはるかに進んだストリームから
のデータを含むからである。したがって、後に、キャッシュ管理ユニット16は、
その通常の置換戦略に頼ることなくフェッチされたデータを格納するそのブロッ
クを選択することが出来る。
【0038】 しかしながら、本発明は、キャッシュメモリー位置を再使用可能とするこのテ
クニックに限られない。例えば、代替として、キャッシュ管理ユニットが、その
関連したキャッシュメモリー位置またはブロックが、再使用可能であることを示
すために、そのキャッシュメモリー位置またはブロックに対して「再使用可能」
ビットを保持することができる。この「再使用可能ビット」は、最初に設定され
る。データがキャッシュメモリー位置に格納されている場合、その「再使用可能
」ビットはクリアされ、そしてストリームが進むと、キャッシュ管理ユニット16
は、そのアドレスが、CURRENT ADDRESSから指定されたDISTANCE離れているキャ
ッシュメモリー位置に対して「再使用可能」ビットを再び設定する。キャッシュ
管理ユニット16が、メインメモリ14からフェッチされたデータを格納する使用可
能であるキャッシュメモリー位置を検索する場合、それは「再使用可能」ビット
が設定されているキャッシュメモリー位置を選択するのが好ましい。このような
位置が使用可能でない場合しか、通常の置換戦略は、使用する必要はない。
【0039】 もちろん、本発明は、他の多くの方法により実施することができる。ほんの少
しの例を挙げれば:例えば、DISTANCEを、ストライドの数ではなくCURRENT_ADDR
ESSと使用可能にされるアドレスとの間の距離として表示する;DISTANCEの代わ
りに、(CURRENT-ADDRESSDISTANCE*STR.IDEに等しい)別個のDISTANT_ADDRESSを
使用しかつキャッシュ管理ユニット16によって維持する;DISTANCEによって特定
されるキャッシュメモリの再使用を可能とする前か後に、CURRENT_ADDRESSを変
更する等々。ストリーム内のアドレスのより複雑な予測を使用することもできる
。例えば、1行が全て先取りされた時、マトリックスの次の行に移動するために
、例えば、CURRENT_ADDRESSをストライドの指定された数の後に指定された値分
戻るように設定することが出来る。プロセッサは、このようなより複雑な予測を
特定する命令を提供することができる。キャッシュ管理ユニット16に(例えば、
指定されたストライドの数の後に)ストリームの終端を検知させるメカニズムを
使用して、キャッシュ管理ユニット16が、先取りがストリームの終端に到達する
時、先取りを停止させ、そしてその後ストリームの終端が再使用可能にされるま
で全てのキャッシュメモリ位置を再使用させることを停止させることが出来る。
ストリームを特定する命令は、ストリームがいつ終わるべきかを特定するパラメ
ータを含むことができ、またストリームを終了させる明確な命令を使用すること
ができる。
【0040】 データアドレスの発行は、発行されたデータアドレスからではなく命令カウン
タから検知することができる。この場合、キャッシュ管理ユニット16には、プロ
セッサ10がストリームに沿って進む時実行される命令の命令位置が知らされる。
プロセッサの命令ポインタがその位置に至ると、キャッシュ管理ユニット16は、
CURRENT_ADDRESSの発行が検知される時点まで進む。
【0041】 加えて、ストリームを、データをキャッシュに先取りするために使用すること
ができる。ストリームヒットがCURRENT_ADDRESSのアドレスで発生する時、キャ
ッシュ管理ユニット16は、キャッシュメモリ12にCURRENT_ADDRESS +STRIDEで格
納されているデータを先取りさせる。したがって、この位置に格納されているデ
ータは、それがプロセッサ12によって実際にアクセスされる前に先取りされるで
あろう。別の実施例の場合、先のストライドのより大きい数Nでのデータ(アド
レス:CURRENT_ADDRESS +N*STRIDE)を、それがプロセッサによって実際に必要
となる前に、低速メモリ14がこのデータを生成するのに充分な時間を有するよう
に、事前に先取りさせることができる。Nの値はプログラムの必要性に適応させ
ることができるので、プロセッサで必要となる前にデータがキャッシュメモリ内
にあるように、先取りははるか前に発生する。
【0042】 このような先取り自体は、従来技術から既知である。本発明は、キャッシュの
再使用に関するが、ストリームについての情報を維持するいかなる既知の従来技
術メカニズムも本発明と組み合わせて使用することができる。
【0043】 図3は、キャッシュ管理ユニット16の動作を記載するフローチャートを示す。
第一ステップ30において、プロセッサ10が発行したデータアドレスが受信される
。第二ステップ32において、このアドレスが、あるストリームのCURRENT_ADDRES
S値と比較される。発行されたアドレスがストリームのCURRENT_ADDRESSに等しく
ない場合、キャッシュ管理ユニット16は、プロセッサにより発行された次のデー
タアドレスに対するフローチャートを繰り返す。発行されたアドレスがCURRENT
ADDRESSに等しい場合、キャッシュ管理ユニット16は、第三ステップ34を実行し
、CURRENT ADDRESSをインクリメントする。次いで、メインメモリーアドレスCUR
RENT_ADDRESS-DISTANCE*STRIDEに使用されるキャッシュ記憶位置を使用可能にし
、かつオプションとして新たなCURRENT_ADDRESSの内容の先取りを行わせる第四
と第五のステップ36、38が実行される。その後、フローチャートは第一ステップ
から繰り返す。キャッシュ管理ユニット16は、異なったストリームに対してまた
はシーケンシャルに異なったストリームに対して、並列にこれらのステップを実
行することができる。
【0044】 「OLDEST ADDRESS」が使用される場合、OLDEST ADDRESSが、CURRENT_ADDRESS
とCURRENT_ADDRESS-DISTANCE*STRIDEとの間にあると、第四ステップ36は、OLDES
T_ADDRESSを再使用可能にし、かつOLDEST_ADDRESSをOLDEST_ADDRESS+STRIDEに変
更する。必要に応じ、これは、OLDEST_ADDRESSが、CURRENT_ADDRESSとCURRENT A
DDRESS-DISTANCE*STRIDEとの間に来るまで繰り返される。
【0045】 データがプロセッサ10からキャッシュメモリ12に書き込まれている時、そのデ
ータを格納するキャッシュメモリ位置が、他のメインメモリ位置からのデータを
格納するために再利用される場合には、そのデータをメインメモリ14にコピーバ
ックする必要があるかもしれない。この目的に対して、キャッシュ管理ユニット
16は、各キャッシュメモリー位置またはキャッシュメモリー位置のブロックに対
する「汚れた(dirty)」ビットの表を維持することができる。通常、これらのビ
ットはクリアされるが、プロセッサ10がキャッシュメモリー位置にデータを書き
込むと、その関連した汚れたビットが設定される。キャッシュメモリー位置が再
利用されかつその汚れたビットが設定されている場合、キャッシュメモリー位置
のデータは、それが上書きされる前にメインメモリにコピーされる。
【0046】 ここまで、どの程度のキャッシュメモリー位置が、アドレスのストリームを使
用して、再使用可能とすることができるかと言う点を述べた。加えて、ストリー
ムは、キャッシュメモリ12からメインメモリ14へのデータのライトバックを防ぐ
ことにも使用できる。これは、プロセッサ10によってキャッシュメモリ12に書き
込まれた、書込みデータと呼ばれるデータに関する。通常、書込みデータは、こ
のような書込みデータに対して使用されるキャッシュメモリ12の記憶場所が再利
用可能となる前に、メインメモリ14にライトバックされなければならない。
【0047】 しかしながら、特定書込みデータが、プロセッサ10によって実行されるプログ
ラムにおいて一時的にしか使用されず、それ以後二度と使用されない場合も有り
得る。この場合、キャッシュ管理ユニット16が、このデータに「ライトバック不
要」ステータスを与えるべきである、すなわち、ストリームが、そのメモリー位
置を再使用可能とするこのデータから十分に進んだら、メインメモリ14にそのデ
ータをライトバックする必要が無いことを示す情報をキャッシュ管理ユニット16
が、保持すべきであることを、プログラムは知らせることが出来る。
【0048】 「ライトバック不要」データに対して使用されるキャッシュメモリ12内の記憶
位置が再利用される場合、キャッシュメモリ12からの書込みデータはライトバッ
クされない。しかしながら、例えば、キャッシュメモリー位置が再使用可能とさ
れる前に、進行中のストリームの理由により、実行されないプログラムの他の部
分においてその書込みデータが必要であると言う理由から、または書込みデータ
に対して使用されるキャッシュメモリー位置が再利用されなければならない時に
、そのストリームがまだ十分に進んでいないという理由から、書込みデータに「
ライトバック不要」ステータスが与えられていない場合、書込みデータは、ライ
トバックされる。
【0049】 「ライトバック不要」ステータスを実現させるために、ストリームの現在のア
ドレスがデータのアドレスを越えて十分に進んでいるので、キャッシュ管理ユニ
ット16が、望ましくは、そのデータに対しキャッシュメモリー位置を再使用可能
とする時に、キャッシュ管理ユニット16が、プログラムによるこのデータの最後
の使用後に、例えば、「汚れた」ビットをクリアすることができる。
【0050】 したがって、キャッシュ管理ユニット16は、その特定ストリームからのデータ
に「ライトバック不要」ステータスが与えらているか否かを示す各特定ストリー
ムに対する情報も保持していることが好ましい。そして、プロセッサ10の命令セ
ットは、そのストリームに対応しているデータに「ライトバック不要」ステータ
スが与えられているか否かを各ストリームごとに示す命令を含むことが好ましい
く、これに対しては、様々な形の命令を使用することができる。例えば、ライト
バックステータスを、ストリームを定義するまたは開始させる命令または別個の
命令に含ませることができる。デフォルトステータス(ライトバックまたはライ
トバック不要)を、このような命令が存在しない状態で使用することもできる。
【図面の簡単な説明】
【図1】処理回路を示す。
【図2】メモリーアドレス空間を示す。
【図3】キャッシュ管理ユニットの動作を記載するフローチャートを示す。
【符号の説明】
10 プロセッサ 12 キャッシュメモリ 14 メインメモリ 16 キャッシュ管理ユニット 20 メモリアドレス空間
───────────────────────────────────────────────────── フロントページの続き (71)出願人 Groenewoudseweg 1, 5621 BA Eindhoven, Th e Netherlands Fターム(参考) 5B005 JJ13 MM01 NN22 PP01

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 ‐プログラムを実行するプロセッサと、 ‐前記プロセッサによるアクセスに対するキャッシュデータのためのキャッシュ
    メモリと、 ‐前記プロセッサによってアクセスされるアドレス中のアドレスのストリームに
    ついての情報を保持し、かつそのデータが前記ストリームからの特定アドレスに
    対応しているか否かに依存して、前記キャッシュメモリ内のデータの格納を管理
    するように構成されているキャッシュ管理ユニットとを有し、 前記キャッシュ管理ユニットが、前記プログラムの実行の進捗に応じて前記スト
    リームに対する現在のアドレスを更新する、データ処理回路において、 前記キャッシュ管理ユニットが、前記キャッシュメモリ内の選択された格納位
    置を再使用可能とするように構成されていて、 前記特定アドレスに対応する前記データに対して使用されている前記キャッシ
    ュメモリの格納位置が、前記現在のアドレスに対する前記特定アドレスの位置に
    依存して、再使用可能にされることを特徴とするデータ処理回路。
  2. 【請求項2】 前記キャッシュ管理ユニットが、前記ストリームに対する距離パ
    ラメータを保持し、前記特定アドレスが、前記現在のアドレスから当該距離分よ
    り大きく離れているときに、前記キャッシュ管理ユニットが、当該格納位置を再
    使用可能にする請求項1のデータ処理回路。
  3. 【請求項3】 前記プロセッサが、当該距離パラメータを設定する一つまたは複
    数の命令を含む命令セットを有している請求項2のデータ処理回路。
  4. 【請求項4】 前記キャッシュ管理ユニットが、前記プロセッサによって前記キ
    ャッシュメモリに書き込まれた書込みデータを識別し、前記プロセッサが、書込
    みデータが格納されている前記キャッシュメモリ位置を再利用する前に、前記キ
    ャッシュ管理ユニットが、あるアドレスで書き込まれた書込みデータを前記スト
    リームからメインメモリに書き戻すべきか否かを前記ストリームに知らせる命令
    を含む命令セットを有している請求項1のデータ処理回路。
  5. 【請求項5】 前記キャッシュ管理ユニットが、前記プロセッサによって発行さ
    れたデータアドレスが前記ストリームの次に期待されるデータアドレスに等しく
    なる時を検知し、かつ当該検知に応じて前記現在のアドレスを更新するように構
    成されている請求項1のデータ処理回路。
  6. 【請求項6】 前記キャッシュ管理ユニットが、また、当該ストリームを使用し
    て、前記ストリームに属している前記データアドレスから前記キャッシュメモリ
    にデータを先取りする請求項1のデータ処理回路。
  7. 【請求項7】 前記キャッシュ管理ユニットが、前記プロセッサによってアクセ
    スされる前記アドレスの中のアドレスの複数のストリームについての情報を保持
    するように構成されていて、前記キャッシュ管理ユニットが、前記プログラムの
    実行の進捗に応じて、各特定ストリームの各現在のアドレスを独立に更新し、特
    定ストリーム内の特定アドレスに対応する前記データに使用される前記キャッシ
    ュメモリ内の格納位置が、その特定ストリームの前記現在のアドレスに対する前
    記特定アドレスの位置に応じて、再使用可能にされる請求項1〜6の何れかのデー
    タ処理回路。
JP2000548812A 1998-05-08 1999-04-29 キャッシュメモリを有するデータ処理回路。 Expired - Lifetime JP4427187B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP98201513 1998-05-08
EP98201513.3 1998-05-08
PCT/IB1999/000785 WO1999059070A2 (en) 1998-05-08 1999-04-29 Data processing circuit with cache memory

Publications (2)

Publication Number Publication Date
JP2002514819A true JP2002514819A (ja) 2002-05-21
JP4427187B2 JP4427187B2 (ja) 2010-03-03

Family

ID=8233700

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000548812A Expired - Lifetime JP4427187B2 (ja) 1998-05-08 1999-04-29 キャッシュメモリを有するデータ処理回路。

Country Status (6)

Country Link
US (1) US6226715B1 (ja)
EP (1) EP0996891B1 (ja)
JP (1) JP4427187B2 (ja)
DE (1) DE69906006T2 (ja)
TW (1) TW501011B (ja)
WO (1) WO1999059070A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010257237A (ja) * 2009-04-24 2010-11-11 Yamaha Corp 画像処理装置
WO2023162219A1 (ja) * 2022-02-28 2023-08-31 三菱電機株式会社 キャッシュメモリ制御装置およびキャッシュメモリ制御方法

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2201909C (fr) 1994-10-12 2006-05-02 Technical Maintenance Corporation Systeme de reproduction audiovisuelle numerique intelligent
US7188352B2 (en) 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
US8028318B2 (en) 1999-07-21 2011-09-27 Touchtunes Music Corporation Remote control unit for activating and deactivating means for payment and for displaying payment status
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US6886091B1 (en) 2001-06-29 2005-04-26 Koninklijke Philips Electronics N.V. Replacing VLIW operation with equivalent operation requiring fewer issue slots
US6889242B1 (en) 2001-06-29 2005-05-03 Koninklijke Philips Electronics N.V. Rounding operations in computer processor
US6851010B1 (en) 2001-06-29 2005-02-01 Koninklijke Philips Electronics N.V. Cache management instructions
JP4067293B2 (ja) * 2001-10-17 2008-03-26 富士通株式会社 キャッシュ制御プログラムおよびキャッシュ処理を行うコンピュータ
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US12100258B2 (en) 2002-09-16 2024-09-24 Touchtunes Music Company, Llc Digital downloading jukebox with enhanced communication features
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US7051175B2 (en) * 2003-01-17 2006-05-23 Hewlett-Packard Development Company, L.P. Techniques for improved transaction processing
EP1604285A2 (en) * 2003-03-06 2005-12-14 Koninklijke Philips Electronics N.V. Data processing system with prefetching means
KR20050116811A (ko) * 2003-03-06 2005-12-13 코닌클리즈케 필립스 일렉트로닉스 엔.브이. 데이터 처리 시스템, 반도체 장치 및 캐시 메모리 인덱싱방법
US7594081B2 (en) * 2004-09-10 2009-09-22 Cavium Networks, Inc. Direct access to low-latency memory
US7941585B2 (en) 2004-09-10 2011-05-10 Cavium Networks, Inc. Local scratchpad and data caching system
EP1794979B1 (en) * 2004-09-10 2017-04-12 Cavium, Inc. Selective replication of data structure
US7380065B2 (en) * 2005-03-30 2008-05-27 International Business Machines Corporation Performance of a cache by detecting cache lines that have been reused
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
US8108614B2 (en) * 2007-12-31 2012-01-31 Eric Sprangle Mechanism for effectively caching streaming and non-streaming data patterns
US8849435B2 (en) 2008-07-09 2014-09-30 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
WO2010055494A1 (en) 2008-11-17 2010-05-20 Nxp B.V. A cache management policy and corresponding device
US20100217937A1 (en) * 2009-02-20 2010-08-26 Arm Limited Data processing apparatus and method
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
CN102449658A (zh) 2009-03-18 2012-05-09 踏途音乐公司 娱乐服务器及相关的社交网络系统
US10719149B2 (en) 2009-03-18 2020-07-21 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US12112093B2 (en) 2009-03-18 2024-10-08 Touchtunes Music Company, Llc Entertainment server and associated social networking services
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
EP2597608A1 (en) 2010-01-26 2013-05-29 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
EP2759126B8 (en) 2011-09-18 2021-03-31 Touchtunes Music Corporation Digital jukebox device with karaoke and/or photo booth features, and associated methods
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
US9921717B2 (en) 2013-11-07 2018-03-20 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
US9933980B2 (en) * 2014-02-24 2018-04-03 Toshiba Memory Corporation NAND raid controller for connection between an SSD controller and multiple non-volatile storage units
KR102378718B1 (ko) 2014-03-25 2022-03-24 터치튠즈 뮤직 코포레이션 향상된 사용자 인터페이스를 가지는 디지털 주크박스 장치 및 관련 방법
KR20160028680A (ko) * 2014-09-04 2016-03-14 삼성전자주식회사 데이터 저장 장치와 이의 작동 방법
US9697129B2 (en) * 2015-06-29 2017-07-04 International Business Machines Corporation Multiple window based segment prefetching
US11106588B2 (en) * 2017-11-28 2021-08-31 International Business Machines Corporation Deferred method of allocating disk space for lightning segments
DE102018126546A1 (de) * 2017-12-22 2019-06-27 Odass Gbr Verfahren zur Reduzierung der Rechenzeit einer Datenverarbeitungseinrichtung
US11010067B2 (en) * 2018-12-28 2021-05-18 Intel Corporation Defense against speculative side-channel analysis of a computer system
CN111831327A (zh) * 2019-04-17 2020-10-27 瑞昱半导体股份有限公司 可执行指令的电子装置以及指令执行方法
WO2021035551A1 (en) * 2019-08-27 2021-03-04 Micron Technology, Inc. Write buffer control in managed memory system
TWI820883B (zh) * 2022-08-30 2023-11-01 新唐科技股份有限公司 積體電路及其快取記憶體有效位元清除方法
US12346261B2 (en) * 2022-11-01 2025-07-01 SanDisk Technologies, Inc. Write buffer linking for easy cache reads

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE469402B (sv) * 1991-05-02 1993-06-28 Swedish Inst Of Computer Scien Foerfarande foer att haemta data till ett cache-minne
US5870599A (en) * 1994-03-01 1999-02-09 Intel Corporation Computer system employing streaming buffer for instruction preetching
US5649144A (en) * 1994-06-13 1997-07-15 Hewlett-Packard Co. Apparatus, systems and methods for improving data cache hit rates
US5761706A (en) * 1994-11-01 1998-06-02 Cray Research, Inc. Stream buffers for high-performance computer memory system
US5737565A (en) * 1995-08-24 1998-04-07 International Business Machines Corporation System and method for diallocating stream from a stream buffer
US5958040A (en) * 1997-05-28 1999-09-28 Digital Equipment Corporation Adaptive stream buffers
US5941981A (en) * 1997-11-03 1999-08-24 Advanced Micro Devices, Inc. System for using a data history table to select among multiple data prefetch algorithms
US6105111A (en) * 1998-03-31 2000-08-15 Intel Corporation Method and apparatus for providing a cache management technique

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010257237A (ja) * 2009-04-24 2010-11-11 Yamaha Corp 画像処理装置
WO2023162219A1 (ja) * 2022-02-28 2023-08-31 三菱電機株式会社 キャッシュメモリ制御装置およびキャッシュメモリ制御方法
JPWO2023162219A1 (ja) * 2022-02-28 2023-08-31

Also Published As

Publication number Publication date
US6226715B1 (en) 2001-05-01
WO1999059070A3 (en) 2000-03-09
EP0996891A2 (en) 2000-05-03
JP4427187B2 (ja) 2010-03-03
TW501011B (en) 2002-09-01
DE69906006D1 (de) 2003-04-24
EP0996891B1 (en) 2003-03-19
WO1999059070A2 (en) 1999-11-18
DE69906006T2 (de) 2003-11-27

Similar Documents

Publication Publication Date Title
JP2002514819A (ja) キャッシュメモリを有するデータ処理回路。
US5546559A (en) Cache reuse control system having reuse information field in each cache entry to indicate whether data in the particular entry has higher or lower probability of reuse
US6701414B2 (en) System and method for prefetching data into a cache based on miss distance
US20100217937A1 (en) Data processing apparatus and method
JP2906315B2 (ja) キャッシュメモリ中でインストラクションを保管する方法及び回路
EP1149342A1 (en) Method and apparatus for managing temporal and non-temporal data in a single cache structure
JP3236287B2 (ja) マルチプロセッサシステム
JP4008947B2 (ja) キャッシュメモリ及びその制御方法
JP2006516168A (ja) ストライド予測テーブルにアドレスするためにキャッシュミスパターンを使用する方法
JP4219647B2 (ja) 適応的キャッシュフレームのロッキング及びアンロッキングのための方法及び装置
US7555610B2 (en) Cache memory and control method thereof
KR100505695B1 (ko) 동적으로 할당 또는 해제되는 버퍼를 가지는 캐쉬 메모리장치, 이를 구비한 디지털 데이터 처리 시스템 및 그 방법
KR20070040340A (ko) 소형 캐시 시스템에서 원자적 보존 라인에 라이트백하는것을 배제하는 방법 및 시스템
US6412050B1 (en) Memory record update filtering
JPH0743671B2 (ja) キャッシュ・メモリ制御方式
US20110179227A1 (en) Cache memory and method for cache entry replacement based on modified access order
JP2006350633A (ja) データ管理方法及びデータ管理システム
JPH0784886A (ja) キャッシュメモリ制御方法およびキャッシュメモリ制御装置
JP2010231701A (ja) システムの起動高速化装置
JP2972451B2 (ja) ハードウェア制御ソフトウェアによるキャッシュメモリ制御方式
JPH06266623A (ja) キャッシュメモリ及びキャッシュメモリ制御方法
JPH06110787A (ja) 半導体記憶装置およびその記憶制御方法
JPH06309225A (ja) 情報処理装置

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060327

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060428

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070323

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080424

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091118

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term