JP2001075866A - 記憶装置を動作する方法および記憶装置 - Google Patents
記憶装置を動作する方法および記憶装置Info
- Publication number
- JP2001075866A JP2001075866A JP2000246733A JP2000246733A JP2001075866A JP 2001075866 A JP2001075866 A JP 2001075866A JP 2000246733 A JP2000246733 A JP 2000246733A JP 2000246733 A JP2000246733 A JP 2000246733A JP 2001075866 A JP2001075866 A JP 2001075866A
- Authority
- JP
- Japan
- Prior art keywords
- line
- address
- prefetch
- cache memory
- data
- 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
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/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- 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と、アドレスに関連させられ
たラインで構成され、かつ主メモリに割り当てられてい
るキャッシュ・メモリ3とを備え、そのキャッシュ・メ
モリでは要求に応じてプロセッサ5によってデータを、
主メモリからロードでき、かつ読出すことができ、キャ
ッシュ・メモリ内のあるアドレスに、そのアドレスに対
応するアドレスを有する主メモリからのあるデータが記
憶され、キャッシュ・メモリの前記あるアドレスのデー
タをプロセッサがアクセスしている最中に、逐次データ
がキャッシュ・メモリ内の次のアドレスに記憶されてい
るかどうかがテストされ、それらの逐次データは、もし
利用できなければ、主メモリからプリフェッチを介して
キャッシュ・メモリにロードでき、プロセッサがライン
内にある所定のライン部分をアクセスする時にプリフェ
ッチは行われるのみである。
Description
させられているラインで構成されて割り当てられている
いるキャッシュ・メモリとを備え、そのキャッシュ・メ
モリでは要求に応じてプロセッサによってデータを、主
メモリからロードでき、かつ読出すことができ、キャッ
シュ・メモリ内のあるアドレスに対応するアドレスを有
する主メモリからのあるデータが記憶されている、キャ
ッシュ・メモリの上記あるアドレスのデータをプロセッ
サがアクセスしている最中に、逐次データがキャッシュ
・メモリ内の次のアドレスに記憶されているかどうかが
テストされ、それらの逐次データは、もし利用できなけ
れば、主メモリからプリフェッチを介してキャッシュ・
メモリにロードできる、記憶装置を動作する方法に関す
るものである。
れている複数のデータが、それぞれのプログラムを実行
している割り当てられたプロセッサにより呼び出される
前に、既にキャッシュ・メモリにロードされている。キ
ャッシュ・メモリというのは、必要なデータを主メモリ
からよりもかなり速いやり方でそのキャッシュ・メモリ
からプロセッサが利用できるような高速バッファメモリ
である。主メモリは明らかにより遅く動作する。またほ
とんどの場合に、プロセッサにより求められているデー
タをキャッシュ・メモリにおいても利用できるようにす
るために、プリフェッチが使用されるようになってき
た。プリフェッチ動作の場合には、しばらくはまだプロ
セッサにより求められていないが、プロセッサがキャッ
シュ・メモリをアクセスするためにおそらく間もなく求
められるであろうデータが既に主メモリから前もってキ
ャッシュ・メモリまたはそれぞれのレジスタにロードさ
れており、したがって、それらのデータはプロセッサが
それらのデータを必要とする時にまた使用できる。キャ
ッシュ・メモリは複数のラインに分割され、それらのラ
インはまたほとんど行で構成され、各メモリ・ラインに
はあるアドレス・ラインが割り当てられる。キャッシュ
・メモリの各ラインでは主メモリのラインが書かれ、キ
ャッシュ・メモリのライン・アドレスは主メモリのそれ
に対応する。したがって、各ラインはデータを書くこと
ができるある長さを持つ。そのような記憶装置の動作態
様は、アドレスAのデータを含んでいるキャッシュ・ラ
インNでヒットが行われると、それと同時にそのアドレ
スAのデータにライン長さを足したものがキャッシュ・
ラインN+1で利用できるかどうかのテストが行われる
ようなものである。したがって、キャッシュ・ラインN
でヒットが行われると、プロセッサがおそらくまもなく
必要とする逐次データを次のラインが含んでいるかどう
かの検査が常に行われる。もし含んでなければ、プリフ
ェッチ動作においてアドレスAのデータにライン長さを
足したものがキャッシュ・メモリまたはそれぞれの割り
当てられたレジスタにロードされる。
プリフェッチを使用するとキャッシュ・メモリにおける
ヒット率が高くなる。それはプロセッサによって達成さ
れる。高いヒット率によって装置の性能が高くなる。そ
の理由は、ヒットの場合にメモリ・アクセスを遅延なし
に行うことができるが、ミスの場合にはより遅い主メモ
リをアクセスすることになって装置が減速するからであ
る。
生ずる。すなわち、一方では、データは主メモリからキ
ャッシュ・メモリにロードされるが、そのデータは全く
必要とされないことさえあるが、その場合にはプリフェ
ッチ動作中に非常に多くのデータがキャッシュ・メモリ
へ送られるために、そのような危険は長いライン長さで
特に存在する。各データ転送は電力消費量を増加するの
で、電力損失が増加する。他方、プリフェッチ動作の実
行中に衝突が起きると、プロセッサが所望のデータをキ
ャッシュ・メモリ内で見出さない時にミスがキャッシュ
・メモリ内で起きることがある。そうすると、必要なデ
ータをロードできる前にプリフェッチ動作が中断される
か、終了させられる。両方の場合に、更に遅延が生じ、
それによって装置の効率が低下する。
目的は、プリフェッチ手法が用いられた時に装置の効率
が高くなって、電力消費量を減少する記憶装置を動作す
る方法を得ることである。
に、最初の節で述べた種類の方法において、ライン内に
ある所定のライン部分をプロセッサがアクセスする時に
プリフェッチのみが行われるようにされる。
ン部分にあるデータをプロセッサがアクセスするまでプ
リフェッチ動作が開始されないので、有利である。逐次
データを使用できるかどうかのテスト中に、それらが欠
けている場合にのみプリフェッチは実行される。プリフ
ェッチは、処理されているラインに順次続くラインのデ
ータがプロセッサにより必要とされる確率が非常に高
い、ヒットが存在するラインNでは一層高い、またはプ
ロセッサがデータを読出す、という認識をそれぞれ基に
している。そうすると、あるプログラムを実行している
プロセッサはラインNのデータを更に読出し、主メモリ
に記憶されている次のラインN+1の逐次データを間も
なく必要とするであろうと仮定できる。あるライン部分
の定義であって、プリフェッチ動作の可能性が実際に存
在するようにプロセッサがアクセスすべきラインの部分
を定める定義の結果として、上記を考慮に入れることが
できる。所定のライン部分の外にあるラインのアドレス
をプロセッサがアクセスするものとすると、プリフェッ
チを(まだ)開始できない。
ータも実際に使用される可能性が高くなるまではプリフ
ェッチ動作は開始されないので、装置の効率を高くでき
る。したがって、逐次データを利用できないことが確立
するたびにプリフェッチは強制されるやり方では実行さ
れないが、好適な場合のみは実行される。こうするとプ
ログラムの実行中に実行されるプリフェッチ動作の数は
減少するので、電力消費量が減少することにもなる。電
力消費量減少は、キャッシュ・メモリまたはそれに関連
するレジスタへのデータのローディングによって引き起
こされる。従来のプリフェッチ手法とは対照的に、デー
タ転送のための電力消費は30%以上減少でき、それに
よって装置の効率が向上する。このプリフェッチ手法の
特に好適な応用は携帯電話の分野、更に詳しくいえばこ
の記憶装置が携帯電話端末に使用される場合の携帯電話
の分野である。
に、本発明に従って所定のライン部分アドレスによりこ
のライン部分を定めることができ、かつ、そのライン部
分アドレスより大きいか、それに等しいラインの全ての
アドレスを含み、プロセッサがアクセスするライン内の
アドレスそのライン部分アドレスとが比較されて、その
プロセッサが所定のライン部分内で、または所定のライ
ン部分外で今動作するかどうかをその比較を通じて確か
めるようにし、それによってプリフェッチを開始できる
か否かを決定できる。終りにおけるライン部分アドレス
の場所または選択は本質的にはプロセッサ、更に詳しく
言えばプロセッサ・クロック、の電力パラメータと、主
メモリからのデータの伝送速度とに依存するが、プロセ
ッサにより実行されるプログラムの構造にも依存する。
その理由は、プロセッサがデータを、本質的には、ライ
ン部分アドレスごとにまたはラインごとに絶えず処理し
ているかどうか、またはプログラムの実行中に多くのラ
イン飛び越しがあるかどうか、がそのプログラムを介し
て予め決定されるからである。基本的には、ケースの大
部分においてデータがプロセッサによりアクセスされる
前にプリフェッチ動作が終了されているように、ライン
部分アドレスを配置すべきである。
の複数のライン領域に細分できる。各ライン領域にはそ
れ自身のライン領域アドレスが割り当てられ、その後で
そのライン領域アドレスはライン部分アドレスと比較さ
れる。これはキャッシュ・メモリを種々の形態に構成す
る可能性を考慮に入れ、本質的には、複数の行への各キ
ャッシュ・メモリ・ラインまたはキャッシュ・メモリ全
体の細分に関するものである。それらの行はキャッシュ
・メモリの構成に応じて種々の長さを持つことができ
る。ある数のデータを各ライン領域に書込むことができ
る。それらのデータはライン領域アドレスの支援により
後で見出すことができる。ライン内のプロセッサの「ジ
ョブのタイプ」をテストするためにそのライン領域アド
レスはライン部分アドレスと比較される。そうするとラ
イン部分アドレスはある数値の形で与えることができ、
比較する数値は、ライン内のアドレスを基にして、また
はプロセッサがアクセスしたばかりのライン部分アドレ
スを基にして、決定される。本発明の考えの有利な別の
実施の形態に従って、種々の長さの複数のライン部分が
決定され、求めに応じて実行すべきプリフェッチを決定
するために考慮すべきライン部分が、プログラムのプロ
セッサにより実行されるプログラム部分に依存して選択
され、そのプリフェッチが実行されている間はそのプロ
グラム部分でプロセッサが動作するようにできる。ライ
ン部分またはライン部分アドレスは、プロセッサが実行
すべきプログラムの実行時間中にプログラム自体によっ
て変更される。本発明のこの実施の形態によれば、ライ
ン部分の動的な変更がこのようにして実現されているの
で、種々の構造をおのおの有する種々のプログラム部分
が別々のライン部分を定めることが可能であり、かつ各
プログラム部分がプリフェッチのための開始条件を別々
に定めることが可能である。このようにして、種々のプ
ログラム構造に対して応じることができる。プリフェッ
チ動作をソフトウエアによって構成できるように、プリ
フェッチ動作の開始についての判定が実現されるものと
すると、このパラメータの動的な変更が可能である。
と、複数のラインで構成されているキャッシュ・メモリ
と、プリフェッチ手段とを備え、キャッシュ・メモリに
は主メモリから読出されたデータを要求に応じて書込む
ことができ、かつ読出すことができ、プリフェッチ手段
はキャッシュ・メモリへ伝送するための主メモリからの
データのプリフェッチを行うかどうかを決定し、かつプ
リフェッチを実行する、データ記憶装置にも関する。プ
リフェッチ手段において、キャッシュ・メモリのライン
の長さに関連する少なくとも1つのライン部分アドレス
が決定され、またはそのライン部分アドレスを決定で
き、その手段によってキャッシュ・メモリのラインにお
けるライン部分が定められ、ライン部分アドレスをプロ
セッサがアクセスするラインのアドレスと比較するた
め、ライン部分内でアクセスを行うかどうかを決定する
ため、および比較の結果に依存してプリフェッチを実行
するためにプリフェッチ手段が設けられるので、この記
憶装置は極めて適する。
部分アドレスに共通する別々のライン領域アドレスをお
のおの有する複数のライン領域に分割できる。そのライ
ン部分アドレスはプロセッサがアクセスする場所を示
し、したがって、プリフェッチが全く可能であったかど
うかを見出すために、それはプリフェッチ手段によって
ライン部分アドレスと比較される。
ライン部分アドレスが決定される時、または決定できる
時、比較のために使用すべきライン部分アドレスが、プ
ロセッサにより実行すべきプログラムのプログラム部分
に依存して選択され、そのプログラム部分は、キャッシ
ュ・メモリをアクセスしている間にプロセッサにより実
行されることが有利であることが更に判明している。
された可能なデータをキャッシュ・メモリに直接書込め
ることを避けるために、プリフェッチ手段によりプリフ
ェッチ・データを書込むことができるレジスタ・メモリ
をキャッシュ・メモリが含むことが有利であることが判
明している。キャッシュ・メモリのレジスタ・メモリに
記憶されているプリフェッチ・データが必要である時
は、それらのデータはレジスタ・メモリによってプロセ
ッサへ転送され、また以後のアクセスのためにキャッシ
ュ・メモリに記憶される。
場合には、プリフェッチ・データがレジスタ・メモリに
書込まれた後で、新たなプリフェッチが必要となる別の
キャッシュ・メモリ・ラインへプログラムは飛び越す。
レジスタ・メモリ内の古いプリフェッチ・データはその
時まではまだ読出されていないが、プログラムが戻って
まもなく再使用できる。利用できるレジスタ・メモリは
ただ1つであるので、それらの古いプリフェッチ・デー
タは新たなプリフェッチにより重ね書きされる。プログ
ラムが再び戻ったとすると、更新されたプリフェッチが
必要である。ここで支援するために、種々のプリフェッ
チ動作のそれぞれのプリフェッチ・データを書込むこと
ができる複数のレジスタ・メモリが設けられると有利で
あることが判明している。最初に書込むべきプリフェッ
チ・データは、最も古いプリフェッチ・データが存在す
るレジスタ・メモリに書込むべきであり、その後でそれ
らは重ね書きされる。
施の形態を詳細に説明する。
比較的遅い主メモリ2を備えている本発明の記憶装置1
を示す。その主メモリ2にはキャッシュ・メモリ3が割
り当てられている。そのキャッシュ・メモリはかなり速
く動作するバッファ・メモリである。キャッシュ・メモ
リ3と主メモリ2にはプリフェッチ手段4が割り当てら
れ、かつ接続されている。そのプリフェッチ手段によっ
て、一方では、プリフェッチを全く実行すべきかどう
か、他方では、プリフェッチを確かに実行すべきかどう
かが判定される。記憶装置1にはプロセッサ5も割り当
てられている。図示の実施の形態ではそのプロセッサは
通信リンクによりキャッシュ・メモリ3とプリフェッチ
手段4とに接続されている。プログラムを実行し、記憶
装置1のそれぞれのデータをアクセスするプロセッサ5
は、主メモリに記憶されているデータの大部分が前もっ
て書込まれている非常に速いキャッシュ・メモリ3も主
としてアクセスする。データをキャッシュ・メモリ3に
転送することにより、必要があればそれらのデータをプ
ロセッサが十分な速さで利用できるようにされる。しか
し、プロセッサ5がアクセスしようとする或るアドレス
・ラインがキャッシュ・メモリ3で利用できないとする
と、それは主メモリ2からキャッシュ・メモリ3へロー
ドされ、そこからプロセッサ5へ転送される。
る、共通のチップ上に設けることが好ましい、図1に示
されている全体の構成は、上記のように、プリフェッチ
を実行するためにも構成される。プリフェッチの枠組み
内で、プロセッサがキャッシュ・メモリ・ラインをアク
セスし、そこでそのラインにおけるあるアドレスをアク
セスすると、逐次データを含んでいる次のラインもキャ
ッシュ・メモリ3に既に存在しているかどうかについて
判定される。もし存在していなければ、それぞれの失わ
れているラインが主メモリ2からプリフェッチ手段4を
介してキャッシュ・メモリ3へ送られ、またはその伝送
が開始される。
本的な図の形で示すもので、取り得るプリフェッチを開
始するために用いられる。プロセッサ5はアドレス6を
キャッシュ・メモリに供給する。それはどのデータがプ
ロセッサにより必要とされているかを示す。アドレス6
は全部で6つのアドレス部I、IIおよびIIIで構成
されている。最初のアドレス部Iは、キャッシュ・メモ
リ・ラインのデータが割り当てられる主メモリのページ
アドレスを示す。キャッシュ・メモリ3は、主メモリの
ページ・アドレスに対応するページ・アドレス8が格納
されているそれぞれのキャッシュ・アドレス・ディレク
トリ7を含んでいる。キャッシュ・アドレス・ディレク
トリ7は今はアドレス部IIによりアドレスされてお
り、アドレス部Iはキャッシュ・アドレス・ディレクト
リの内容と比較される。この場合にはページ・アドレス
は「0×01」である。
は、アドレス部Iに記憶されているデータをキャッシュ
・メモリ3のどのラインで利用できるかを示す。したが
ってこの情報はキャッシュ・アドレス・ディレクトリと
キャッシュ・メモリとの間のリンクを表す。図示の例で
はこのアドレス情報は「Z5」である。最後に、アドレ
ス部IIIはそのラインで読出すべきそれぞれのデータ
のアドレスを示す。図2に示すように、キャッシュ・メ
モリ3は複数のラインZ1、Z2、...ZNに分割さ
れ、かつ複数の列S1、S2、...SNに分割され
る。アドレス部IIIにおける情報は「S6」と読め、
したがって列ブロックS6における情報を読出すべきデ
ータとして決定する。
インZ5に記憶されているデータはアクセスされ、した
がってそのデータは列ブロックS6に配置されている。
読出すべき情報は図示の例では「17」と読まれる。
レス6を受けるとすると、主メモリのそれぞれの次のラ
インに記憶されている次のデータも、キャッシュ・メモ
リ3で既に使用可能であるかどうかについて自動的に判
定される。したがって、アドレス「0×01/Z5」の
後のデータ・ライン、すなわち、ライン「0×01/Z
6」もキャッシュ・メモリ3において既に利用できるか
どうかについての判定が行われる。これは、ステップ9
でキャッシュ・ディレクトリ7をテストすることにより
行われる。ラインが存在することが確定するとそれらの
データを使用でき、そのラインがなければそのラインを
主メモリからロードするためにおそらくプリフェッチが
必要である。
に、探されているラインが存在しないばかりでなく、別
の条件も満たさなければならない。この別の条件は、キ
ャッシュ・メモリ3内の所定のライン部分内にあるアド
レスをプロセッサがアクセスすることである。図示の例
では、このライン部分はライン部分アドレス「X」を基
にして決定される。これによって定められるライン部分
は、そのライン部分アドレスに等しいか、それより大き
いラインZ1、Z2、...ZNの1つのアドレスの全
てを有する。たとえば、ライン部分アドレスがX=S5
と読めたとすると、ライン部分は全ての列S5、S
6、...SMを有する。プロセッサによりただちに呼
ばれたアドレスS6がこのライン部分の外側にあるもの
とすると、プリフェッチは実行されない。それがもしそ
のライン部分の内側にあるとすると、プリフェッチが実
行される。これはステップ10で判定される。ステップ
9と10における条件が両方とも満たされたならば、そ
れはステップ11で判定される、プリフェッチが実行さ
れて、それぞれのデータが主メモリから読出されてキャ
ッシュ・メモリ3へ転送される。ステップ9、10およ
び11はプリフェッチ手段4で行われる。そのためにプ
リフェッチ手段はそれぞれの論理およびソフトウエアを
有する。ライン部分値Xは最後にセットすることを選択
できる。すなわち、任意の値を持つようにそれぞれのラ
イン部分をセットできる。たとえば、従来技術で知られ
ているように、各プロセッサ・アクセスにプリフェッチ
の可能性が与えられるとすると、ライン部分値XはS1
にセットされ、そうするとそのライン部分は全ての列部
分を備えることになる。任意の時刻にプリフェッチを実
行しないのとすると、ライン部分値Xはたとえば0にセ
ットされる。
モリの構成を示す。しかしここでは複数のレジスタ・メ
モリ12′、12″、12′″、12″″がキャッシュ
・メモリ3に割り当てられている。それらのレジスタ・
メモリには、プリフェッチの枠組み内で主メモリからロ
ードされたデータが書込まれる。レジスタ・メモリ1
2′、...、12″″にはそれぞれのレジスタ・アド
レス・ディレクトリ13が割り当てられる。その後でそ
のレジスタ・アドレス・ディレクトリには、主メモリ・
アドレスに対応するそれぞれのアドレスが書込まれる。
複数のレジスタ・メモリを用いることによって、ただ1
つのレジスタ・メモリを使用できる場合に行われるよう
な、新しいプリフェッチ中に重ね書きされる、というこ
とが行われずにプリフェッチ・データをある時間保持す
ることが可能である。書込みのやり方は、新しいプリフ
ェッチ・データの場合には最も古いプリフェッチ・デー
タを含んでいるレジスタ・メモリに重ね書きされる、と
いうようのものとすることができる。その結果、ライン
飛び越しがしばしば起きるようなプログラムが実行され
る場合に、書込まれているが、ライン飛び越しのために
必要とされなかった、読出されないプリフェッチ・デー
タが、プログラムが元のラインへ再び飛び越してデータ
がいぜんとして必要とされる可能性が存在するために、
そのデータが重ね書きされるまである時間保持される、
という条件が考慮に入れられる。それらのデータは他の
レジスタ・メモリに書込まれるであろうから、次のプリ
フェッチによる重ね書きは不可能である。最後に、キャ
ッシュ・メモリの図示の構成は例として単に示したもの
であることを指摘できる。キャッシュ・メモリの構造は
任意の物にできる。たとえば、キャッシュ・メモリは直
接マッピング・キャッシュ・メモリとして、または両方
向セット連想キャッシュ・メモリ構成できる。
本的な図を示す。
実施の形態のキャッシュ・メモリの構造の基本的な図を
示す。
ジスタ・メモリを有する図1のキャッシュ・メモリの構
造を示す。
リ S1、S2、...、SM 列 Z1、Z2、...、ZN 行
Claims (11)
- 【請求項1】主メモリと、アドレスに関連させられてい
るラインで構成されているキャッシュ・メモリとを備
え、そのキャッシュ・メモリでは要求に応じてプロセッ
サによってデータを、主メモリからロードでき、かつ読
出すことができ、キャッシュ・メモリ内のあるアドレス
に対応するアドレスを有する主メモリからのあるデータ
が記憶されている、キャッシュ・メモリの前記あるアド
レスのデータをプロセッサがアクセスしている最中に、
逐次データがキャッシュ・メモリ内の次のアドレスに記
憶されているかどうかがテストされ、それらの逐次デー
タは、もし利用できなければ、主メモリからプリフェッ
チを介してキャッシュ・メモリにロードできる、記憶装
置を動作する方法において、 ラインの上または内部にある所定のライン部分をプロセ
ッサがアクセスする時にのみプリフェッチが行われるこ
とを特徴とする記憶装置を動作する方法。 - 【請求項2】ライン部分は、所定のライン部分アドレス
により定められ、かつライン部分アドレスより大きい
か、それに等しいラインのアドレスの全てを含み、プロ
セッサがアクセスするライン内のアドレスがライン部分
アドレスと比較されることを特徴とする請求項1記載の
方法。 - 【請求項3】各ラインがある長さの複数のライン領域に
分割され、各ライン領域にはそれ自身のライン領域アド
レスが割り当てられ、そのライン領域アドレスはライン
部分アドレスと比較されることを特徴とする請求項2記
載の方法。 - 【請求項4】ライン部分アドレスは数値の形で与えら
れ、匹敵する数値がライン内のアドレスを基にして、ま
たはライン領域アドレスを基にして決定されることを特
徴とする請求項2または3記載の方法。 - 【請求項5】異なる長さの複数のライン部分が決定さ
れ、要求に応じて実行すべきプリフェッチを決定するた
めに考慮すべきライン部分がプロセッサにより実行すべ
きプログラムのプログラム部分に依存して選択され、そ
のプログラム部分においてはプロセッサはプリフェッチ
が決定されている間に機能する請求項1乃至4のいずれ
かに記載の方法。 - 【請求項6】主メモリと、複数のラインで構成されてい
るキャッシュ・メモリと、プリフェッチ手段とを備え、
キャッシュ・メモリには主メモリから読出されたデータ
を要求に応じて書込むことと読出すことができ、プリフ
ェッチ手段はキャッシュ・メモリへ伝送するための主メ
モリからのデータのプリフェッチを行うかどうかを決定
し、かつプリフェッチを実行する、データ記憶装置にお
いて、 プリフェッチ手段において、キャッシュ・メモリのライ
ンの長さに関連する少なくとも1つのライン部分アドレ
スが決定され、またはそのライン部分アドレスを決定で
き、それによってキャッシュ・メモリのラインにおける
ライン部分が定められ、ライン部分アドレスをプロセッ
サがアクセスするラインのアドレスと比較するため、ラ
イン部分内でアクセスを行うかどうかを決定するため、
および比較の結果に依存してプリフェッチを実行するた
めにプリフェッチ手段が設けられることを特徴とするデ
ータ記憶装置。 - 【請求項7】キャッシュ・メモリの各ラインは、ライン
部分アドレスに匹敵する別々のライン領域アドレスをお
のおの有する複数のライン領域に分割される請求項6記
載の記憶装置。 - 【請求項8】複数のライン部分を決定するために複数の
ライン部分アドレスを決定でき、比較のために使用すべ
きライン部分アドレスが、プロセッサにより実行すべき
プログラムのプログラム部分に依存して選択され、その
プログラム部分は、キャッシュ・メモリをアクセスして
いる間にプロセッサにより実行されることを特徴とする
請求項6または7のいずれかに記載の記憶装置。 - 【請求項9】キャッシュ・メモリは、プリフェッチ手段
によりプリフェッチデータを書込むことができるレジス
タ・メモリを含むことを特徴とする請求項6乃至8のい
ずれかに記載の記憶装置。 - 【請求項10】種々のプリフェッチ動作のそれぞれのプ
リフェッチ・データを書込むことができる複数のレジス
タ・メモリが設けられていることを特徴とする請求項9
記載の記憶装置。 - 【請求項11】最初に書込むべきプリフェッチ・データ
をレジスタ・メモリに書込むことができ、最も古いプリ
フェッチ・データが重ね書きされている間に最も新しい
プリフェッチ・データを利用できることを特徴とする請
求項10記載の記憶装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19939764A DE19939764A1 (de) | 1999-08-21 | 1999-08-21 | Verfahren zum Betrieb eines Speichersystems sowie Speichersystem |
DE19939764.3 | 1999-08-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001075866A true JP2001075866A (ja) | 2001-03-23 |
JP4210024B2 JP4210024B2 (ja) | 2009-01-14 |
Family
ID=7919203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000246733A Expired - Fee Related JP4210024B2 (ja) | 1999-08-21 | 2000-08-16 | 記憶装置を動作する方法および記憶装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6594731B1 (ja) |
EP (1) | EP1079307B1 (ja) |
JP (1) | JP4210024B2 (ja) |
DE (1) | DE19939764A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005536798A (ja) * | 2002-08-23 | 2005-12-02 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | メモリバスのプロトコル特性に適合するプロセッサのプリフェッチ |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4093741B2 (ja) * | 2001-10-03 | 2008-06-04 | シャープ株式会社 | 外部メモリ制御装置およびそれを含んだデータ駆動型情報処理装置 |
US7260704B2 (en) * | 2001-11-30 | 2007-08-21 | Intel Corporation | Method and apparatus for reinforcing a prefetch chain |
JP2005322110A (ja) * | 2004-05-11 | 2005-11-17 | Matsushita Electric Ind Co Ltd | プログラム変換装置及びプロセッサ |
US7634585B2 (en) * | 2005-11-04 | 2009-12-15 | Sandisk Corporation | In-line cache using nonvolatile memory between host and disk device |
DE102010027287A1 (de) * | 2010-07-16 | 2012-01-19 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zum prüfen eines Hauptspeichers eines Prozessors |
US9135157B2 (en) * | 2010-11-22 | 2015-09-15 | Freescale Semiconductor, Inc. | Integrated circuit device, signal processing system and method for prefetching lines of data therefor |
CN104951340B (zh) * | 2015-06-12 | 2018-07-06 | 联想(北京)有限公司 | 一种信息处理方法及装置 |
US9542290B1 (en) | 2016-01-29 | 2017-01-10 | International Business Machines Corporation | Replicating test case data into a cache with non-naturally aligned data boundaries |
US10169180B2 (en) | 2016-05-11 | 2019-01-01 | International Business Machines Corporation | Replicating test code and test data into a cache with non-naturally aligned data boundaries |
US10055320B2 (en) * | 2016-07-12 | 2018-08-21 | International Business Machines Corporation | Replicating test case data into a cache and cache inhibited memory |
US10223225B2 (en) | 2016-11-07 | 2019-03-05 | International Business Machines Corporation | Testing speculative instruction execution with test cases placed in memory segments with non-naturally aligned data boundaries |
US10261878B2 (en) | 2017-03-14 | 2019-04-16 | International Business Machines Corporation | Stress testing a processor memory with a link stack |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4980823A (en) * | 1987-06-22 | 1990-12-25 | International Business Machines Corporation | Sequential prefetching with deconfirmation |
JPH06222990A (ja) * | 1992-10-16 | 1994-08-12 | Fujitsu Ltd | データ処理装置 |
-
1999
- 1999-08-21 DE DE19939764A patent/DE19939764A1/de not_active Withdrawn
-
2000
- 2000-08-14 EP EP00202908.0A patent/EP1079307B1/de not_active Expired - Lifetime
- 2000-08-16 JP JP2000246733A patent/JP4210024B2/ja not_active Expired - Fee Related
- 2000-08-17 US US09/640,728 patent/US6594731B1/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005536798A (ja) * | 2002-08-23 | 2005-12-02 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | メモリバスのプロトコル特性に適合するプロセッサのプリフェッチ |
Also Published As
Publication number | Publication date |
---|---|
EP1079307A1 (de) | 2001-02-28 |
EP1079307B1 (de) | 2014-10-01 |
JP4210024B2 (ja) | 2009-01-14 |
DE19939764A1 (de) | 2001-02-22 |
US6594731B1 (en) | 2003-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6782454B1 (en) | System and method for pre-fetching for pointer linked data structures | |
JP2003504757A (ja) | 外部メモリアクセス用バッファリングシステムバス | |
US20150143045A1 (en) | Cache control apparatus and method | |
JPH06243039A (ja) | キャッシュメモリシステムおよびマイクロプロセッサ内の命令を操作するための方法 | |
JP4210024B2 (ja) | 記憶装置を動作する方法および記憶装置 | |
CN112506823B (zh) | 一种fpga数据读写方法、装置、设备及可读存储介质 | |
US7162588B2 (en) | Processor prefetch to match memory bus protocol characteristics | |
US5829010A (en) | Apparatus and method to efficiently abort and restart a primary memory access | |
JP4173858B2 (ja) | 命令キャッシュ、及びメモリ競合を低減する方法 | |
US5761718A (en) | Conditional data pre-fetching in a device controller | |
JP2002149491A (ja) | プロセッサメモリシステム | |
KR100532417B1 (ko) | 디지털 신호 처리장치의 저전력 소비형 캐시 메모리 장치및 이에 대한 제어방법 | |
JP4459641B2 (ja) | シーケンシャルバッファを内蔵してdspのデータアクセス性能を向上させるコンピュータシステム及びそのコンピュータシステムのアクセス方法 | |
US6374344B1 (en) | Methods and apparatus for processing load instructions in the presence of RAM array and data bus conflicts | |
US5490262A (en) | Dual cache memory device with cache monitoring | |
US5933856A (en) | System and method for processing of memory data and communication system comprising such system | |
US6625697B1 (en) | Cache-storage device with a buffer storing prefetch data | |
JP3039391B2 (ja) | メモリシステム | |
US7103705B2 (en) | Computing system, and method for enabling a digital signal processor to access parameter tables through a central processing unit | |
JPH1063574A (ja) | キャッシュメモリ付プロセッサ | |
US7136965B2 (en) | Microcomputer | |
JP3161422B2 (ja) | マイクロコンピュータ | |
JP2002259209A (ja) | 演算処理システム | |
JPS63208144A (ja) | キヤツシユ・メモリ制御装置 | |
JPH1055308A (ja) | キャッシュメモリ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070815 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080205 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080502 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080520 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080522 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080805 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080910 |
|
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: 20080924 |
|
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: 20081024 |
|
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: 20111031 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111031 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121031 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121031 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131031 Year of fee payment: 5 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |